Alternative Entropy Sources

2019-01-19 11:45发布

Okay, I guess this is entirely subjective and whatnot, but I was thinking about entropy sources for random number generators. It goes that most generators are seeded with the current time, correct? Well, I was curious as to what other sources could be used to generate perfectly valid, random (The loose definition) numbers.

Would using multiple sources (Such as time + current HDD seek time [We're being fantastical here]) together create a "more random" number than a single source? What are the logical limits of the amount of sources? How much is really enough? Is the time chosen simply because it is convenient?

Excuse me if this sort of thing is not allowed, but I'm curious as to the theory behind the sources.

15条回答
爷的心禁止访问
2楼-- · 2019-01-19 12:06

Noise on top of the Cosmic Microwave Background spectrum. Of course you must first remove some anisotropy, foreground objects, correlated detector noise, galaxy and local group velocities, polarizations etc. Many pitfalls remain.

查看更多
虎瘦雄心在
3楼-- · 2019-01-19 12:10

I found HotBits several years ago - the numbers are generated from radioactive decay, genuinely random numbers.

There are limits on how many numbers you can download a day, but it has always amused me to use these as really, really random seeds for RNG.

查看更多
【Aperson】
4楼-- · 2019-01-19 12:11

SGI once used photos of a lava lamp at various "glob phases" as the source for entropy, which eventually evolved into an open source random number generator called LavaRnd.

查看更多
虎瘦雄心在
5楼-- · 2019-01-19 12:12

The Wikipedia article on Hardware random number generator's lists a couple of interesting sources for random numbers using physical properties.

My favorites:

  • A nuclear decay radiation source detected by a Geiger counter attached to a PC.
  • Photons travelling through a semi-transparent mirror. The mutually exclusive events (reflection — transmission) are detected and associated to "0" or "1" bit values respectively.
  • Thermal noise from a resistor, amplified to provide a random voltage source.
  • Avalanche noise generated from an avalanche diode. (How cool is that?)
  • Atmospheric noise, detected by a radio receiver attached to a PC

The problems section of the Wikipedia article also describes the fragility of a lot of these sources/sensors. Sensors almost always produce decreasingly random numbers as they age/degrade. These physical sources should be constantly checked by statistical tests which can analyze the generated data, ensuring the instruments haven't broken silently.

查看更多
对你真心纯属浪费
6楼-- · 2019-01-19 12:14

Linux kernel uses device interrupt timing (mouse, keyboard, hard drives) to generate entropy. There's a nice article on Wikipedia on entropy.

查看更多
神经病院院长
7楼-- · 2019-01-19 12:14

Some use keyboard input (timeouts between keystrokes), I heard of I think in a novel that radio static reception can be used - but of course that requires other hardware and software...

查看更多
登录 后发表回答