This is how desktop and server computers manage their security-sensitive pseudo-random number generation. This means that if you have a hardware randomness source, you can exclusive-or it to the Xorshift state (as long as the result is nonzero!), adding entropy from the HW source to the generated sequence. Xorshift and other linear feedback shift register type generators are also nice in that they typically work fine with any state except all-zeros. It does not test for cryptographic security, it is more about whether patterns can be detected in the generated sequences or not.) ( TestU01's BigCrush is a library for testing randomness, and at least in some sense represents the "state of the art" in randomness tests. For Teensy 3.x and 4.x, Xorshift64* is ridiculously fast, just a handful of cycles per 32-bit pseudorandom number generated, and it is random enough for even scientific simulations and statistical work. In fact, my preferred one, using only the 32 high bits of Xorshift64*, passes all BigCrush tests, and has a 64-bit state and period of 2 64-1 (zero initial state is the only invalid one) making it in a real sinse even more random than Mersenne Twister. For non-cryptographic work, I recommend using one of the Xorshift variants many of them are as random as Mersenne Twister, but much faster.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |