1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/tests/rng
2023-02-27 12:31:04 +01:00
..
tests tests: default to musl LCG 2021-11-29 13:46:26 +01:00
main.c treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
Makefile examples,tests: replace deprecated module names by new names 2022-09-16 13:15:46 +02:00
Makefile.ci examples,tests: Update Makefile.cis 2023-02-27 12:31:04 +01:00
README.md doc: cleanup some minor spelling error found by codespell 2021-09-03 13:02:08 +02:00
test.c picolibc: Use most NEWLIB code with picolibc 2020-08-24 08:26:16 -07:00
test.h tests/rng: add tests for random_uint32_range() 2018-06-26 14:08:46 +02:00

RNG

Test application for the RNG sources.

Supported commands

  • distributions [N] — Take N samples and print a bit distribution graph on the terminal.
  • dump [N][A B] — Take N samples and print them on the terminal. If A and B are set, the PRNG returns values in the [A,B)-interval.
  • fips — Run the FIPS 140-2 random number tests.
  • entropy [N] — Calculate Shannon's entropy from N samples.
  • seed [N] — Set the random seed to use.
  • source [N] — Select the RNG source, or list them all.
  • speed [N][A B] — Run a PRNG for N seconds and print the number of KiB/sec afterwards. If A and B are set, the PRNG returns values in the [A,B)-interval.

Sources

The following sources are supported:

  • PRNG
  • HW RNG (if available)
  • Constant number (uses the seed)

The PRNG is re-initialized before every test, using the given seed (default is 0).

A constant number source is useful to see if the test itself work, e.g. indicate failures.

Warning

The tools available in this test do not garruantee that a given RNG source is secure. It should, however, rule out basic failures using statistical tests.