#random #rng #isaac

no-std rand_isaac

ISAAC random number generator

2 releases

0.1.1 Nov 26, 2018
0.1.0 Oct 17, 2018

#11 in Algorithms

Download history 39055/week @ 2018-11-29 46830/week @ 2018-12-06 47891/week @ 2018-12-13 21336/week @ 2018-12-20 38790/week @ 2018-12-27 53491/week @ 2019-01-03 54280/week @ 2019-01-10 59016/week @ 2019-01-17 58419/week @ 2019-01-24 58866/week @ 2019-01-31 64551/week @ 2019-02-07 67203/week @ 2019-02-14 71805/week @ 2019-02-21 73459/week @ 2019-02-28 71814/week @ 2019-03-07

92,162 downloads per month
Used in 4,101 crates (5 directly)

MIT/Apache

79KB
1K SLoC

rand_isaac

Build Status Build Status Latest version Book API API Minimum rustc version

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

Crate Features

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.

License

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.

Dependencies

~204KB