Specifically,Another suitable physical phenomenon is atmospheric noise, which is quite easy to pick up with a normal radio. This is the approach used by RANDOM.ORG. You could also use background noise from an office or laboratory, but you'll have to watch out for patterns. The fan from your computer might contribute to the background noise, and since the fan is a rotating device, chances are the noise it produces won't be as random as atmospheric noise.
Is this what "entropy" everyone talks about? You just take some source of chaos, i.e. lava lamps, atmospheric noise, and "feed" it into the computer?In comparison with PRNGs, TRNGs extract randomness from physical phenomena and introduce it into a computer.
My questions are:
- How does one "feed" this into the computer?
- What do I use with the entropy once I add it into the entropy pool?
I assume that the entropy pool is just some byte array, i.e.Q1.2: Is the source code for the generator available?
Not currently, no. Maybe we'll make it available as open source some day.
Code: Select all
uint8_t entropy_pool[65535];
Finally, I read in the Wikipedia entry for entropy that
How would I access hardware sources from userland (assume Linux), (to then add to the entropy pool)?[...] entropy is the randomness collected by an operating system or application for use in cryptography or other uses that require random data. This randomness is often collected from hardware sources (variance in fan noise or HDD), either pre-existing ones such as mouse movements or specially provided randomness generators.
Thanks in advance! (: