I wrote a python script that will plot the output of /dev/random in a few ways so you can see just how random it is.
Make a line plot:
Make a histogram:
Do be careful when using the dd command. It can wipe out your filesystem if you set the outfile incorrectly. I’d recommend not changing the option of=”./randfile”.
Edit the block size and/or block count in *.sh to change the output resolution:
You may need root privileges to use the dd command.
Remember that on OSX, /dev/random and /dev/urandom are identical. On linux, to get 100 blocks as I have, you may have to use /dev/urandom (unlimited random). The linux case is probably more interesting as the outputs are different. How exactly DO they differ?
OSX is known to use Yarrow-160 a cryptographic algorithm that makes use of hash functions (specifically SHA1) to create “unlimited” seemingly-random bits from a finite entropy pool.
As far as I know, linux does not. Linux will wait for more entropy when /dev/random is used as opposed to /dev/urandom.