Live data from Hacker News

The Raspberry Pi’s Hardware Random Number Generator

scruss.com

21–30 of 69 posts

Re: The Raspberry Pi’s Hardware Random Number Generator

#21
post #3

What barriers keep thermal random number generators from being widely available? Or are they actually?

Sometimes they're not very good. Sometimes they're just very expensive.

There are a range of different hardware devices available on various plugin boards. And processors have started to include them as well.

Here's a very old (1997?) examination of 3 hardware devices: (http://www.robertnz.net/true_rng.html) and he has some nice information here too: (http://www.robertnz.net/hwrng.htm)

Here's my list of recent reading, not all of it relevant.

(http://csrc.nist.gov/groups/ST/toolkit/rng/documents/nissc-p...)

(http://www.paulm.org/random.html)

(http://www.cryptography.com/public/pdf/IntelRNG.pdf)

Build one yourself: (http://www.labbookpages.co.uk/electronics/hwRNG.html)

Here's a list of devices:

(http://www.westphal-electronic.com/)

(http://www.trng98.se/shop/index.php)

(http://www.comscire.com/)

(http://www.idquantique.com/random-number-generators/products...)

(http://www.letech.jpn.com/)

And someone upthread posted a link to EntropyKey.

Re: The Raspberry Pi’s Hardware Random Number Generator

#22
post #20
post #11

Earlier quoted context omitted.

Intel's RDRAND is mentioned in the article as well, near the end. I suspect this article is doing so well because of the recent realization of Intel's involvement with the NSA, and the high potential for backdoors to be included in such a technology.

Broadcom is a similarly huge USA company in ARM computers & networking, are we sure they haven't been involved with the NSA either?

We can't be sure, but it should be much easier to audit a small system like Pi, rather than an Intel processor that, above all, can be remotely patched.

Re: The Raspberry Pi’s Hardware Random Number Generator

#23
post #8

Does anyone have a link for a spec for the RNG? Specifically, where does it get its entropy from? Couldn't find it in the source link. Only mention I could find is a vague mention of "thermal noise" which could mean anything.

A classic source of white noise is to reverse-bias a diode or the base-emitter junction of a transistor[1]. This produces shot noise[2] though, which is independent of temperature, so I guess it's not what they are using.

[1] http://darrenyates.com.au/electronics/archives/40 [2] http://en.wikipedia.org/wiki/Shot_noise

Re: The Raspberry Pi’s Hardware Random Number Generator

#24
post #12
post #8

Does anyone have a link for a spec for the RNG? Specifically, where does it get its entropy from? Couldn't find it in the source link. Only mention I could find is a vague mention of "thermal noise" which could mean anything.

I found the link on Reddit. They're asking similar questions. So far Reddit hasn't got any answers; someone posted a link to a mailing list. Here's a similar link. ( https://lkml.org/lkml/2013/3/24/144 ) > This adds a driver for random number generator present on Broadcom BCM2835 SoC, used in Raspberry Pi and Roku 2 devices. Here's a github for the blob source ( https://github.com/raspberrypi/linux/blob/rpi-3.6.y/dri…

Some of these comments are particularly worrying:

    /* double speed, less random mode */
    #define RNG_RBG2X               0x2
    /* the initial numbers generated are "less random" so will be discarded */
    #define RNG_WARMUP_COUNT      0x40000
A black box random number generator with some numbers being vaguely "less random"? That seems like an exceedingly poor idea.

Re: The Raspberry Pi’s Hardware Random Number Generator

#25
post #20

Earlier quoted context omitted.

Broadcom is a similarly huge USA company in ARM computers & networking, are we sure they haven't been involved with the NSA either?

We can't be sure, but it should be much easier to audit a small system like Pi, rather than an Intel processor that, above all, can be remotely patched.

Intel processor can be remotely patched?! Then why did Intel spend $475m to fix the FDIV bug?

Re: The Raspberry Pi’s Hardware Random Number Generator

#26
post #15
post #12

Earlier quoted context omitted.

I found the link on Reddit. They're asking similar questions. So far Reddit hasn't got any answers; someone posted a link to a mailing list. Here's a similar link. ( https://lkml.org/lkml/2013/3/24/144 ) > This adds a driver for random number generator present on Broadcom BCM2835 SoC, used in Raspberry Pi and Roku 2 devices. Here's a github for the blob source ( https://github.com/raspberrypi/linux/blob/rpi-3.6.y/dri…

The only use for a binary blob that purports to a be a secure RNG is to feed it to /dev/random.

It isn't a binary blob, it is a blob of hardware gates. The RNG is interfaced with simple MMIO and just four memory mapped registers.

Re: The Raspberry Pi’s Hardware Random Number Generator

#27
post #19
post #5

Earlier quoted context omitted.

Heh, there was a company that offered just such a beast, basically a network socket and an API to fetch a random number. I thought it was a really subtle joke (like that time I carried around a Diet Coke as my Halloween costume) but once people connected the dots between "Ok, you care so much about a cryptographically secure random number generator you buy an appliance that does nothing else, and then you talk to it…

Similar in spirit to SGI's Lavarand [1] [1] http://web.archive.org/web/19971210213248/http://lavarand.sg...

Awesome. Thank you for sharing that.

Re: The Raspberry Pi’s Hardware Random Number Generator

#28
post #25

Earlier quoted context omitted.

We can't be sure, but it should be much easier to audit a small system like Pi, rather than an Intel processor that, above all, can be remotely patched.

Intel processor can be remotely patched?! Then why did Intel spend $475m to fix the FDIV bug?

I'm going to go out on a limb and suggest that the FDIV bug - or heck, even the much more recent (1997!) F00F bug - might not be so contemporary or represent the state of the art of Intel processors.

Re: The Raspberry Pi’s Hardware Random Number Generator

#29
post #25

Earlier quoted context omitted.

We can't be sure, but it should be much easier to audit a small system like Pi, rather than an Intel processor that, above all, can be remotely patched.

Intel processor can be remotely patched?! Then why did Intel spend $475m to fix the FDIV bug?

Presumably they learnt from their mistake, the Pentium Pro was the first generation where the microcode could be updated.

(An ancient /. article, byte article it links to is dead: http://slashdot.org/story/00/10/27/126258/upgrade-your-penti...)

Re: The Raspberry Pi’s Hardware Random Number Generator

#30
post #9

Do hw rng's get a test suite certificate(NIST's?), like a Swiss watch, or like a optical sextant's `Certificate of Errors'? Tables of mean, standard deviation, etc, for expected physical dependent parameters(what: speed? temp? ...)?

Here are the NIST recommendations referenced in the FIPS 140-2 approved RNG appendix: http://csrc.nist.gov/publications/nistpubs/800-90A/SP800-90A...

Thank you. For the last few days, I've been looking for the The NIST Statistical Test Suite, not in C#, have you a link?
Post reply on HN