Expand description

Simple and fast counter based non-crypto random generator.

The algorithm is based on Middle Square Weyl Sequence RNG. See paper for details.

NOTE: Not cryptographically secure.

There are several note-worthy properties to the algorithm:

  • State is represented by counter, which is incremented to produce new value, hence making it easy to predict how state would change.
  • The code is short and simple, only taking minimum amount of operations to produce uniform output.
  • key must have close to equal number of zeroes and ones for optimal output. This crate provides single key for use, to have more download key file gist


Stateful representation of algorithm.


Default key to be used with algorithm


Generates random u32

Generates random u64