[Cryptography] TRNG review: Arduino based TRNGs

Jerry Leichter leichter at lrw.com
Sat Jan 16 18:42:58 EST 2016


> Even with a simple circuit and PWM feedback to ensure that the noise voltage will cause the input voltage to cross boundaries between 2mV ranges, and be recorded as one of the values randomly, this circuit remains highly sensitive, in that any injected signal on the order of the noise amplitude (24uV in my example) can control the output, overriding any real randomness.  We can design around this constraint, with reasonable shielding, supply regulation, bypass caps, and such, as appropriate for the application.  It just takes good engineering.
If you really want to get stuff through the shielding, you use Terahertz radiation.  At these frequencies, it's the pins and lines inside the chips that act as antennas.

In principle, not hard to shield against - but small holes in the shield, openings around any through-holes, etc., can ruin all the careful work.  Not the kind of noise you run into in normal operation, and I doubt most people will have the equipment needed to do appropriate tests.

(I don't know if anyone has explicitly tried to bias a hardware RNG this way, but this is the way modern "bug detectors" work:  They're actually non-linear-junction detectors that emit Terahertz radiation and look for the harmonics generated when the radiation leaks into chips and is transmitted through any PN junction.  Note that this works just as well on power-off devices as on active ones.  A full test also includes a metal detector:  A shield good enough to block the Terahertz scanner will have enough conductive material to set off the metal detector.  I'm sure there's some counter to this - the battle between those hiding the devices and those trying to detect them is never ending.  I suppose vacuum tubes would work....)

                                                       -- Jerry



More information about the cryptography mailing list