Subject: Hardware random number generator
Summary: Very high frequency oscillator sampled by a low frequency oscillator
From: battle@cs.utk.edu (David Battle @ University of Tennessee CS Department)
I had the following idea for a hardware random number generator. It works
something like this:
+-------------------------------------+
| High frequency oscillator (~ 10 MHz)>------+
+-------------------------------------+ |
|
+------------------------------------------------+
|
| +----------------------------+
+---> DATA Serial in parallel |
| out shift register |
+---> SHIFT OUTPUTS |
| +---------v-v-v-v-v-v-v-v----+
| outputs go to LED bank or
| parallel port input
|
|
| low frequency oscillator could be replaced
| with output from parallel port for easy
| synchronization
+------------------------------------------+
|
+-----------------------------------+ |
|Low frequency oscillator (~ 10 KHz)>--+
+-----------------------------------+
Presumably the randomness comes from slight fluctuations in the frequency
of both the high and low frequency oscillators. Obviously the low frequency
oscillator must shift 8 times for a whole byte's worth of bits to be
generated.
I built one of these and although I haven't conducted any statistical
tests, the the output bits *seem* random. I used a crystal oscillator
for the high frequency oscillator and a 555 timer for the low frequency one.
Does anyone have any comments about the usefulness/practicality/reliability
of such a random number generator?
-David L. Battle
battle@cs.utk.edu