Wednesday, February 16, 2011

ent - pseudorandom number sequence test program

$ sudo aptitude show ent
Package: ent
New: yes
State: not installed
Version: 1.1debian-1.1
Priority: optional
Section: science
Maintainer: Wesley J. Landaker
Uncompressed Size: 65.5 k
Depends: libc6 (>= 2.3)
Description: pseudorandom number sequence test program
This program applies various tests to sequences of bytes stored in files and reports the results of those tests. The program
is useful for those evaluating pseudorandom number generators for encryption and statistical sampling applications,
compression algorithms, and other applications where the information density of a file is of interest.

Original Homepage: http://www.fourmilab.ch/random/ (Now maintained primarily in Debian.)

$ sudo aptitude install ent

$ dd if=/dev/urandom of=random bs=1024 count=10
10+0 records in
10+0 records out
10240 bytes (10 kB) copied, 0.00161141 s, 6.4 MB/s

$ ent random
Entropy = 7.982257 bits per byte.

Optimum compression would reduce the size
of this 10240 byte file by 0 percent.

Chi square distribution for 10240 samples is 249.40, and randomly
would exceed this value 50.00 percent of the times.

Arithmetic mean value of data bytes is 128.6578 (127.5 = random).
Monte Carlo value for Pi is 3.158264947 (error 0.53 percent).
Serial correlation coefficient is 0.003585 (totally uncorrelated = 0.0).

$ dd if=/dev/zero of=zero bs=1024 count=10
10+0 records in
10+0 records out
10240 bytes (10 kB) copied, 8.6661e-05 s, 118 MB/s

$ ent zero
Entropy = 0.000000 bits per byte.

Optimum compression would reduce the size
of this 10240 byte file by 100 percent.

Chi square distribution for 10240 samples is 2611200.00, and randomly
would exceed this value 0.01 percent of the times.

Arithmetic mean value of data bytes is 0.0000 (127.5 = random).
Monte Carlo value for Pi is 4.000000000 (error 27.32 percent).
Serial correlation coefficient is undefined (all values equal!).

No comments:

Post a Comment