5 releases (3 breaking)

0.4.0 Jan 27, 2025
0.3.0 Dec 18, 2020
0.2.0 Jun 12, 2019
0.1.2 Jun 6, 2019
0.1.0 Oct 17, 2018

#1193 in Algorithms

Download history 79067/week @ 2024-12-19 54795/week @ 2024-12-26 91288/week @ 2025-01-02 122640/week @ 2025-01-09 119002/week @ 2025-01-16 103280/week @ 2025-01-23 147606/week @ 2025-01-30 205833/week @ 2025-02-06 129235/week @ 2025-02-13 153033/week @ 2025-02-20 148116/week @ 2025-02-27 163261/week @ 2025-03-06 174681/week @ 2025-03-13 195368/week @ 2025-03-20 205091/week @ 2025-03-27 150919/week @ 2025-04-03

763,700 downloads per month
Used in 3,405 crates (34 directly)

MIT/Apache

50KB
877 lines

rand_isaac

Test Status Latest version Book API API

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 serde 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

~215KB