RTL-SDR as a Hardware Random Number Generator with rtl_entropy

Over on his blog, Aaron Toponce has posted a tutorial that shows how to use the RTL-SDR app rtl_entropy.  This app uses the RTL-SDR to create random numbers from the atmospheric noise that it receives from the antenna. Aaron writes:

The theory behind the RNG is by taking advantage of atmospheric noise, which is caused by natural occurrences, such as weak galactic radiation from the center of our Milky Way Galaxy to the stronger local and remote lightning strikes. It’s estimated that roughly 40 lightning strikes are hitting the Earth every second, which equates to about 3.5 million strikes per 24 hour period. Interestingly enough, this provides a great deal of entropy for a random number generator.

In the post Aaron also shows how to put the rtl_entropy generated data through some standardized randomness tests, how to visualize the random output and also shows how to use rtl_entropy to generate 80-bit entropy passwords.

Visualizing the random noise output of rtl_entropy.
Visualizing the random noise output of rtl_entropy.


  1. Truth

    Sounds interesting, I wonder if they have generated 2GiB of data yet and run the full batch of dieharder tests on it yet. At 2.8 Mbps it should take less than 2 hours to generate the test data, as for testing it with dieharder, that might take a while.

Post a comment

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>