Tool for generation of data from cryptoprimitives (block and stream ciphers, hash functions). Cryptoprimitives are round-reduced and the data can be configured for multiple testing scenarios.
There are few interesting PRNGs (over 40) implemented in the TestU01 test suite. It can be also found on GitHub.
They can be used for testing or benchmarking of the baseline or directly for experiments. Moreover parameters can be tweaked so be obtain stronger or weaker PRNGs.
For example there are:
LSFR generators
Linear congruential generators, also with instantiations used in the wild (e.g., C stdlib, MS Excel, Maple, VisualBasic, VAX, Fortran, ...),
Multiplicative congruential generators
Add-with-carry generators
Generalized feedback shift register (GFSR)
Twisted GFSR
Tempered TGFSR (Mersenne Twister family)
Inversive generators
Cubic congruential generators
Xorshift
And many others proposed in an academic literature (e.g., by Knuth, Marsaglia, L’Ecuyer, Brent, ...)
Some of they are little bit tricky to seed - one has to pick some parameters while the parameters domains differ and some are better than others (e.g., primes vs. smooth numbers). I personally used GFSR, TGFSR, TTGFSR generators which are easy to seed and it worked well.
We may also add TinyMersenneTwister with only 127 bit state - recommended for small embedded devices.
Migrated from https://github.com/crocs-muni/eacirc/issues/217
There are few interesting PRNGs (over 40) implemented in the TestU01 test suite. It can be also found on GitHub.
They can be used for testing or benchmarking of the baseline or directly for experiments. Moreover parameters can be tweaked so be obtain stronger or weaker PRNGs.
For example there are:
Some of they are little bit tricky to seed - one has to pick some parameters while the parameters domains differ and some are better than others (e.g., primes vs. smooth numbers). I personally used GFSR, TGFSR, TTGFSR generators which are easy to seed and it worked well.
We may also add TinyMersenneTwister with only 127 bit state - recommended for small embedded devices.