Checking out the RT-AC68U's /dev/urandom and running some tests on it.
I collected a few large chunks of entropy from the AC68U's /dev/urandom:
To repeat these tests, be sure to use ssh's "-T" flag, otherwise NL (0xa) characters will be converted into CR-NL (0xd, 0xa). That will cause a lot of dieharder's tests to indicate failure. That was something I overlooked when I wanted to "just check it out real quick", and ultimately led me to a more in-depth analysis, documented here.
The quality of the entropy was checked using dieharder and ent. Testing was done on four files, each between 18GB and 22GB, totalling 75GB. Only one of the dieharder test runs resulted in a "rewind" mid-test, after a "weak" result was found; during the follow-up test which invoked the rewind, it passed.
Here's the dieharder command used for testing.
nb, the "-Y 1" option repeats ambiguous "weak" tests until they pass or fail. During testing on four large chunks of entropy from /dev/urandom there were zero failures. The "-s 1" "rewinds" the file to the beginning when each test is started; this makes it possible to do meaningful tests with files closer to 20GB, rather than 250GB.
Output from the worst of four runs of dieharder.
* Too big to post here - See comments *
Here's the ent command used for testing:
Here's the summary from the worst of three runs of ent. The table of the number of occurrences of each possible byte (the "-c" option) is too big to include here, so I'll leave that as a comment.
Tested with RT-AC68U, Merlin 384.13
I collected a few large chunks of entropy from the AC68U's /dev/urandom:
Code:
ssh -T sh.ac68u.lan 'dd if=/dev/urandom bs=64k count=350000' > dev-urandom-ac68u-dd-xxxx
To repeat these tests, be sure to use ssh's "-T" flag, otherwise NL (0xa) characters will be converted into CR-NL (0xd, 0xa). That will cause a lot of dieharder's tests to indicate failure. That was something I overlooked when I wanted to "just check it out real quick", and ultimately led me to a more in-depth analysis, documented here.
The quality of the entropy was checked using dieharder and ent. Testing was done on four files, each between 18GB and 22GB, totalling 75GB. Only one of the dieharder test runs resulted in a "rewind" mid-test, after a "weak" result was found; during the follow-up test which invoked the rewind, it passed.
Here's the dieharder command used for testing.
Code:
dieharder -g 201 -s 1 -Y 1 -a -f dev-urandom-ac68u-dd-xxxx
Output from the worst of four runs of dieharder.
* Too big to post here - See comments *
Here's the ent command used for testing:
Code:
ent -c dev-urandom-ac68u-dd-xxxx
Code:
Total: 18264666112 1.000000
Entropy = 8.000000 bits per byte.
Optimum compression would reduce the size
of this 18264666112 byte file by 0 percent.
Chi square distribution for 18264666112 samples is 237.59, and randomly
would exceed this value 77.62 percent of the times.
Arithmetic mean value of data bytes is 127.4995 (127.5 = random).
Monte Carlo value for Pi is 3.141616357 (error 0.00 percent).
Serial correlation coefficient is 0.000010 (totally uncorrelated = 0.0).
Tested with RT-AC68U, Merlin 384.13