rngtest - Check the randomness of data using FIPS 140-2 tests
Contents
Description
rngtest works on blocks of 20000 bits at a time, using the FIPS 140-2 (errata of 2001-10-10) tests to
verify the randomness of the block of data.
It takes input from stdin, and outputs statistics to stderr, optionally echoing blocks that passed the
FIPS tests to stdout (when operating in pipemode). Errors are sent to stderr.
At startup, rngtest will trow away the first 32 bits of data when operating in pipemode. It will use
the next 32 bits of data to bootstrap the FIPS tests (even when not operating in pipemode). These bits
are not tested for randomness.
Statistics are dumped to stderr when the program exits.
Exit Status
0 if no errors happen, and no blocks fail the FIPS tests.
1 if no errors happen, but at least one block fails the FIPS tests.
10 if there are problems with the parameters.
11 if an input/output error happens.
12 if an operating system or resource starvation error happens.
Name
rngtest - Check the randomness of data using FIPS 140-2 tests
Options
-p, --pipe
Enable pipemode. All data blocks that pass the FIPS tests are echoed to stdout, and rngtest
operates in silent mode.
-cn, --blockcount=n (default: 0)
Exit after processing n input blocks, if n is not zero.
-bn, --blockstats=n (default: 0)
Dump statistics every n blocks, if n is not zero.
-tn, --timedstats=n (default: 0)
Dump statistics every n seconds, if n is not zero.
-?, --help
Give a short summary of all program options.
-V, --version
Print program version
See Also
random(4), rngd(8) FIPS PUB 140-2 Security Requirements for Cryptographic Modules, NIST, http://csrc.nist.gov/cryptval/140-2.htm
Statistics
rngtest will dump statistics to stderr when it exits, and when told to by blockstats or timedstats.
FIPS140-2successes and FIPS140-2failures counts the number of 20000-bit blocks either accepted or
rejected by the FIPS 140-2 tests. The other statistics show a breakdown of the FIPS 140-2 failures by
FIPS 140-2 test. See the FIPS 140-2 document for more information (note that these tests are defined on
FIPS 140-1 and FIPS 140-2 errata of 2001-10-10. They were removed in FIPS 140-2 errata of 2002-12-03).
The speed statistics are taken for every 20000-bit block transferred or processed.
Synopsis
rngtest [-cn | --blockcount=n] [-bn | --blockstats=n] [-tn | --timedstats=n] [-p | --pipe] [-?]
[--help] [-V] [--version]
