|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
/dev/random hardware support
From: Scott Miller (scott
opentrac.org)
Date: Mon Jan 24 2005 - 18:14:35 CST
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
The current entry for random(4) still seems to indicate that /dev/random is
reserved for future hardware RNG support. Has there been any sort of
interface specified? Does any such hardware exist?
I have no particular use for such hardware myself, but I'm working on a
low-cost Geiger counter with a computer interface, and it'd be easy enough
add some code to provide random data. The first version will be a handheld
device with an RS-232 port, but I'm considering a USB-connected, bus-powered
device that'd be more appropriate for this sort of thing.
The simplest algorithm I've seen for producing de-skewed random data from a
Geiger counter is to compare the time between two successive pairs of events
to generate a single bit. Each bit, you swap the sense of the comparison -
one time it's a 1 if the first period is longer, next time it's a 0 if the
first period is longer. At 4 counts per bit, the hottest chunk of uranium
ore I've got on hand would generate about 125 bits/second. Not fast, but a
useful speed for high-quality randomness, I suppose. Beats keyboard input
any day.
I'd rather not get into writing kernel drivers, though. If an interface
spec already exists, let me know and I'll build the device to match. If
not, anyone want to volunteer to write it?
The firmware (for the Freescale HC08) will most likely released under the
BSD license, and schematics and drawings will be freely available for anyone
wanting to build one themselves. I intend to sell hardware kits for under
$100, if I can manage it. For a USB-only device with no LCD display that
shouldn't be a problem.
Thanks,
Scott
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]