This is actually not as simple as I first thought.
In the absence of a hardware RNG, what is the best way to seed a Mersenne Twister?
Or should I say, what is an acceptable way to seed a a Mersenne Twister RNG that is used to generate UUID's?
There is a nice discussion of pseudo-random number generators here including a section on the proper seeding of PRNGs (see rule 3), which uses md5sum
and /dev/random
or /dev/urandom
to generate seeds.
This also includes a number of PRNG alogrithms which are a lot easier to code up (< 10 lines of code) than the MT but are arguably just as good (long periods and pass all of the Dieharder tests for randomness).
Further Reading:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With