Tools/kernel-patches for /dev/[u]random

  • get_i82802_rng-1.0.tgz
    This little program reads data from the 'Intel 82802 Firmware Hub' which is integrated in 815-motherboards. This program reads data until a buffer of 4KB is filled with values. When that point is reached, all those values are send to the entropy-buffer of the /dev/[u]random-device.
    For the paranoid: the buffer is actually locked into physical-memory. Because of that (and because I'm addressing hardware directly), this program must run as root.
    This daemon is obsolete: since 2.4.0, the Linux-kernel has a driver which does the same job.
    Have a look at: security - contains a pointer to "audio-randomd" which is another attempt on retrieving random values.

  • RNGTEST.tgz
    With this tool/library one can test the output of a random-number-generator. One needs a little experience with C-programming to get this thing to work since no Makefile is included :o)
    Compare the output of cat /vmlinuz | ./a.out with the output of dd if=/dev/urandom bs=1 count=2501 | ./a.out and be amazed :o).
    This code was written with the FIPS140-1 documentation in mind.
    Note: this code is also (in already) included in the i82802 firmware hub driver of Linux-kernel 2.4.0

    Look here: http://www.cs.berkeley.edu/~daw/rnd/ for a zillion links to resources for collecting and processing crypto-strength randomness.

    Also have a look at these two: