1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/sys/random
Benjamin Valentin 39b8cdf760 sys/random: default to musl LCG
In [0] the paper concludes with

> The Knuth LCG is the most efficient general purpose generator that
> provides decent statistical quality.
> It is simple and lean enough to run on very constrained devices.

So let's select `prng_musl_lcg` to be the default PRNG instead of
`prng_tinymt32`.

This gives a good chunk of memory on e.g. `samr21-xpro`:

prng_tinymt32
-------------

   text	   data	    bss	    dec	    hex	filename
  26452	    136	   2824	  29412	   72e4	tests/rng/bin/samr21-xpro/tests_rng.elf

prng_musl_lcg
-------------

   text	   data	    bss	    dec	    hex	filename
  26208	    136	   2808	  29152	   71e0	tests/rng/bin/samr21-xpro/tests_rng.elf

[0] https://sci-hub.se/10.1145/3453159
2021-11-11 19:59:26 +01:00
..
fortuna sys/fortuna: remove need for now64 2021-09-27 17:30:05 +02:00
tinymt32 sys/random: add modules to Kconfig 2021-01-26 17:40:53 +01:00
doc.txt sys/random: improve documentation on SHA based generator 2020-07-22 12:25:09 +02:00
fortuna.c sys/fortuna: remove need for now64 2021-09-27 17:30:05 +02:00
hwrng.c sys/random: add option to use HWRNG as source of randomness 2020-07-08 18:23:18 +02:00
Kconfig sys/random: default to musl LCG 2021-11-11 19:59:26 +01:00
Makefile sys: random: add fortuna PRNG 2018-05-29 18:40:58 +02:00
Makefile.include pkg/tinydtls: enforce the selection of a crypto secure PRNG 2020-08-21 08:39:34 +02:00
mersenne.c treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
minstd.c sys/random/minstd: remove vague description 2020-05-01 17:30:36 +02:00
musl_lcg.c sys: random: rename genrand_* to random_* 2016-02-29 21:33:17 +01:00
random.c sys/*: realign ENABLE_DEBUG 2020-10-23 11:27:48 +02:00
shaxprng.c sys/random: shaxprng init use digest not state 2020-07-22 12:25:09 +02:00
tinymt32.c sys/random/tinymt32: remove unused static function 2018-03-16 16:24:05 +01:00
xorshift.c add copyrights from IOTPUSH project 2019-05-02 12:09:37 +02:00