Smaller than milliseconds?
Nelson Zink
zink at newmex.com
Thu Jul 10 18:17:10 EDT 2003
Microseconds? Now we're talkin'.
OK, here's the deal:
A high quality Random Number Generator (RNG) needs two things: a good seed
and a clever algorithm to turn the seed into pattern-less numbers. A good
seed is one that's unpredictable. And for good security RNGs, the seed often
comes from some real world event--quantum stuff like radioactive decay or
chaos stuff like lava lamps. (see the current WIRED, p. 88) For low-level
security or something with no security concerns one can use computer clock
time and be done with it.
My idea is this: the time it takes to run some little bit of code isn't
predictable (temperature of the processor and about a zillion other factors)
and changes from moment to moment, and is specific to every local machine
and circumstance. So it might be possible to write a very secure RNG that
uses the unpredictability of run time for the seed.
So, compute something meaningless like deriving God's last name (about a
half second) and use the run time as a good unpredictable seed for the rest
of the RNG. Thus it would be possible to have a high quality RNG based in
software alone.
Also:
set the numberformat to "0.00000000000000000000"
put the long seconds
Punches up the fraction with digits other than zeros, where they come from I
don't know.
Nelson
More information about the metacard
mailing list