Implements the ISAAC and ISAAC-64 random number generators.
ISAAC stands for “Indirection, Shift, Accumulate, Add, and Count” which are the principal bitwise operations employed. It is the most advanced of a series of array based random number generator designed by Robert Jenkins in 1996[^1][^2].
ISAAC is notably fast and produces excellent quality random numbers for non-cryptographic applications.
Links:
[^1]: Bob Jenkins, ISAAC: A fast cryptographic random number generator [^2]: Bob Jenkins, ISAAC and RC4
rand_isaac
is no_std
compatible. It does not require any functionality outside of the core
lib, thus there are no features to configure.
The serde1
feature includes implementations of Serialize
and Deserialize
for the included RNGs.
rand_isaac
is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT, and COPYRIGHT for details.