video_entropydFor security reasons (when doing network traffic or generating secure keys for example) one wants as much entropy-data in the kernel random-driver as possible. The random-driver takes partially care for this. But in situations in where there's a lot of demand for entropy-data, it might not be able to gather enough entropy-data by itself.
That's where this program is for: adding entropy-data to the kernel-driver. It does that by fetching 2 images from a video4linux-device (with a random delay in between), calculating the difference between those two and then calculating the number of information-bits in that data. After that, the data with the number-of-entropy-bits is submitted to the kernel-random-driver.
After that, the program exits (when run from crontab) or sleeps a random time before redoing the same process.
ChangesChanges in version 2.0:
- now works with video4linux2 devices as well (e.g. recent linux kernels)
Changes in version 1.0:
- would sometimes fail with error that it could not access the video device
Changes in version 0.8:
- now checks the quality of the random data
Changes in version 0.7:
- no longer needs fvhlib
Changes in version 0.6:
- every time video_entropyd is started, it will now loop until the kernel entropy-spool is totally filled up
- some code was moved to a library
Changes in version 0.5:
- added logging; video_entropyd now tells through syslogd how much bits are added
Changes in version 0.4:
- added makefile
- data is now unbiased before send to the kernel entropy-spool (this is important!)
Changes in version 0.3:
- the program now uses the structures as defined in the kernel-include-files
- fixed bug that made it submit data that was not so random as expected :-)
Changes in version 0.2:
- the program would add 0 bits when a device has only 1 capture-buffer. that is now fixed