Generating Random Bits with Avalanche Noise

They chose to design a device that produces random bits over a USB connection provided by an ATmega32U4. There was a time when US export restrictions covered random bit generators and so some security hardware was shipped with a set of dice so users could generate random keys reliably! See also this ars technica piece from 2013 “We cannot trust” Intel and Via’s chip-based crypto, FreeBSD developers say.  See also this Hackaday article Towards The Perfect Coin Flip: The NIST Randomness Beacon and this wired 2003 story about the Lava Lite RNGs.

See RAVA: An Open Hardware True Random Number Generator Based on Avalanche Noise by Gabriel Guerrer.

The essential elements are a boost convertor to get a 24 V reverse bias voltage

Then it uses a pair of reverse-biased diodes to generate two signals which are compared against each other:


This produces around six VCMP  transitions per microsecond:
 
If you want faster random bit-rates you could consider adding more of these modules together and XORing the outputs. This would have the advantage of also removing the bias introduced by the "health tests". According to the paper
 
In addition, continuous tests are conducted for every generated byte while the noise source is operational. The firmware implements two recommended tests: repetition count and adaptive proportion. The first detects catastrophic failures that may cause the noise source to become “stuck” on a single output value for a long period. The second detects a loss of entropy that might occur due to some physical failure or external factors affecting the noise source. Continuous tests’ errors do not disable the randomness generation. Instead, the user is informed of the errors, allowing them to take appropriate action based on the failure rate. 

The problem with this is that the "random" bits could never include sequences such as 11111111111 because this would cause the "health test" to fail, even though it is in fact a perfectly healthy random string. A better idea is to use two independent generators and XOR the outputs so that even though neither "random" bit stream is "biased", the result could still produce a "biased" string of all ones.

I don't know what effects all this randomness might have on the Unified Quantum Field  though, ...  It's amazing that Google doesn't show up a page of the statistics of David Lynch's "Today's Number is, ...". See David Lynch has your number. But does it add up? 
 
December 16, 2022. Today's number is, ...


Subscribe to David Lynch Theater.

Tomorrows Number?


Subscribe to Benjamin Altermatt.

See David Lynch's Weather Report for December 12, 2022.


Subscribe to Angelo Badalamenti.

Comments

Popular posts from this blog

Steven Johnson - So You Think You Know How to Take Derivatives?

Welsh Republic Podcast Talking With Kars Collective on Armenia Azerbaijan Conflict

Hitachi HD44780U LCD Display Fonts