[Full-disclosure] how i stopped worrying and loved the backdoor
decoder at own-hero.net
Sat Dec 25 23:56:13 GMT 2010
On 12/25/2010 08:10 AM, BMF wrote:
> On Fri, Dec 24, 2010 at 5:08 PM, Dan Kaminsky <dan at doxpara.com> wrote:
>> Don't we have hardware RNG in most motherboard chipsets nowadays?
> Do we? By what mechanism do they operate?
There are several external (USB/PCI) devices which operate either on
analogous effects (using for example a PLL) or even digital effects such
as circuit jitter. I've implemented this on an FPGA before using
repeated open/close of a short circuit that contains several inverters.
The result is based on the underlying logic blocks which contain jitter
due to the production process. There are several papers available on
that topic (search for "true hardware RNG FPGA" for example).
As for internal (on-board) RNGs, there is for example the TPM. If you
have a TPM on your mainboard, then you can use it as an RNG. The TPM
specification recommends using clock jitter and thermal noise in the
chip to seed a state machine that will perform the actual random number
generation through hashing/mixing (so it's not a direct source of
hardware randomness but rather a seeded PRNG).
To find out about the quality of such an RNG, one can collect a
sufficiently large sample and then run RNG tests on it, such as NIST's
tests (http://csrc.nist.gov/groups/ST/toolkit/rng/index.html) or
external tools like "dieharder"
Full-Disclosure is hosted and sponsored by Secunia.