3 stable releases
Uses new Rust 2024
| 4.0.0 | Sep 21, 2025 |
|---|---|
| 3.0.1 | Jul 20, 2023 |
| 3.0.0 | Dec 12, 2022 |
| 2.0.1 |
|
| 1.0.1 |
|
#1942 in Algorithms
32KB
380 lines
ACORN Pseudo-random Number Generator
This pseudo-random number generator is based on the ACORN algorithm.
It is a #![no_std] crate that does not require alloc and
has no dependencies.
The numbers generated from this prng are not considered cryptographically secure.
Usage
Create a generator by specifying both the Order and the Seed.
Allowing the user of this library to specify the starting data makes reproducability possible.
If you do not require reproducable pseudo-random numbers then using the current time converted into
a u128 for the Seed should provide
sufficient randomness.
Then you can generate either a number of a fixed digit length or a number bewteen a specified range (inclusive).
Please see the Acorn struct documentation for examples.
acorn_prng
A no_std, 0 dependency, pseudo-random number generator library based on the ACORN algorithm. Not cryptographically secure.
Using this library
Add the following to the [dependencies] section of your Config.toml:
acorn_prng = "4.0.0"
Documentation
Documentation can be found here: https://docs.rs/acorn_prng
Acknowledgements
The ACORN algorithm is described here: http://acorn.wikramaratna.org/concept.html