10 ms·
True hardware random number generator for $50
- RyanRies 11y agoOn one hand, this is very cool. On the other hand, why can't Intel/AMD just put this sort of thing on their CPU dyes and be done with it?
- daniel-cussen 11y agoI know Intel has, it's called RDRAND.
- JoachimS 11y agoIntel includes a TRNG in their CPUs (on die) since Ivy Bridge. It used to be called Bull Mountain. Now it is known as RdRand after the instruction. Here is a good article about it: http://spectrum.ieee.org/computing/hardware/behind-intels-new-randomnumber-generator http://spectrum.ieee.org/computing/hardware/behind-intels-ne... The problem is that it is a black box. Intel has added the ability to seed the generator (rdseed), but it does not really reduce the issue of trust.
- jacquesm 11y agoIf you can seed it then it is not a true random number generator but a pseudo random number generator. Also the rdseed instruction does not allow you to seed the generator but instead allows you to generate seeds for other (pseudo random) generators.
- mcpherrinm 11y agoThat's true. There is both a CSPRNG and a TRNG: https://software.intel.com/en-us/blogs/2012/11/17/the-difference-between-rdrand-and-rdseed https://software.intel.com/en-us/blogs/2012/11/17/the-differ...
- stephencanon 11y agoRDSEED does not let you seed the RDRAND generator. It provides random data intended for seeding a software PRNG. https://software.intel.com/en-us/blogs/2012/11/17/the-difference-between-rdrand-and-rdseed https://software.intel.com/en-us/blogs/2012/11/17/the-differ...
- caf 11y agoRDSEED is not for seeding the generator, it also reads a random number. The difference is that RDSEED reads directly from the hardware random bit generator whereas RDRAND reads from a CSPRNG itself seeded by that random source.
- paulmd 11y agoQuick summary of dopant-mask trojans: small alterations to the chip's masks can "pin" bits of the internal PRNG state high or low. Because the output of the PRNG go through a cryptographically secure hashing algorithm the output appears to have good entropy but assuming you know which bits are pinned the actual keyspace you need to search is catastrophically smaller. Intel includes checksums that run at system startup to verify the functionality of the PRNG but these are aimed at catching manufacturing errors, so they used CRC32. Thus, all you need to do to break this is be sure that the internal state of your pinned PRNG and the fair PRNG produce a CRC32 collision after running the test pattern. http://sharps.org/wp-content/uploads/BECKER-CHES.pdf http://sharps.org/wp-content/uploads/BECKER-CHES.pdf If RDSEED doesn't run through the hash, would that give you enough of a window into the PRNG's internal state to be able to catch that attack? It sounds promising but it looks like RDSEED came out in 2012, so that would predate the paper...
- userbinator 11y agoThe problem is that it is a black box. So is this one... it's also closed-source hardware.
- deleted 11y ago[deleted]
- DanBC 11y agoThey have. https://software.intel.com/en-us/articles/intel-digital-random-number-generator-drng-software-implementation-guide https://software.intel.com/en-us/articles/intel-digital-rand... Some people were against it; others not so much. http://en.wikipedia.org/wiki/RdRand http://en.wikipedia.org/wiki/RdRand http://arstechnica.com/security/2013/12/we-cannot-trust-intel-and-vias-chip-based-crypto-freebsd-developers-say/ http://arstechnica.com/security/2013/12/we-cannot-trust-inte...
- throwaway7767 11y agoI don't think anyone was really against intel bundling an RNG on-chip. The issue was that they really wanted the OSs to use the entropy gained there directly, rather than just using it as one more source of entropy mixed into the pool. By doing that, all the security of the system is dependent on Intel's RNG. There's not really any downside to mixing this in with other sources of entropy, even if RDRAND were backdoored, rdrand XOR other_entropy should be equally secure as other_entropy.
- qrmn 11y agoIt may surprise you that the order matters - in the hands of a potential attacker, combining random sources is not commutative! If your last random source comes from an attacker who can read your state, then they can manipulate your state freely (XOR) or partially (any PRF), which could lead to trouble. Source: http://blog.cr.yp.to/20140205-entropy.html http://blog.cr.yp.to/20140205-entropy.html Combining with a proper PRF limits the damage a bit compared to plain XOR, which is why Linux's /dev/random was changed to feed in RDSEED/RDRAND like any other entropy source. On the other hand, there's the school of thought which says: if the CPU you're running on has been trojaned in hardware, you're probably buggered no matter what!
- spydum 11y agoit's not something that is easy to generate mathematically, so it's an illogical thing to solve for on a cpu, which wants to follow instructions. randomness shouldnt have a "rule" to follow, that ends up being pseudorandom. See here for a simpler explanation of building a random sequence generator using avalanche effect (sort of the precursor to this device I'd guess): http://holdenc.altervista.org/avalanche/ http://holdenc.altervista.org/avalanche/
- pjc50 11y agoa) Chip designers prefer to keep analog and digital very separate. Analog takes up comparatively much more space. Putting it on the same die may make side-channel attacks easier. b) How do you verify that it's really random and not a CSPRNG with a key known to the NSA?
- late2part 11y agoI used this before and it worked great - but it is more pricy than tindie.... https://ssl.araneus.fi/products/alea2/order/en/ https://ssl.araneus.fi/products/alea2/order/en/
- blkhawk 11y agothat american flag on the label makes the whole device suspect to me.
- acqq 11y agoIf you go that route, the state in which the company is situated is even more interesting. The site of the producers, though: http://ubld.it/ http://ubld.it/ Looks like somebody who actually honestly likes to make his own hardware, and not only RNGs.
- TranceMan 11y ago[As a non American] Why?
- acqq 11y agoMD stands for Maryland: http://en.wikipedia.org/wiki/Maryland#Economy http://en.wikipedia.org/wiki/Maryland#Economy
- TranceMan 11y agoSo relevant is: Maryland's economy takes advantage of the close location of the center of government in Washington, D.C. and emphasizes technical and administrative tasks for the defense/aerospace industry and bio-research laboratories, as well as staffing of satellite government headquarters in the suburban or exurban Baltimore/Washington area. Ft. Meade serves as the headquarters of the Defense Information Systems Agency, United States Cyber Command, and the National Security Agency/Central Security Service. In addition, a number of educational and medical research institutions are located in the state. In fact, the various components of The Johns Hopkins University and its medical research facilities are now the largest single employer in the Baltimore area. Altogether, white collar technical and administrative workers comprise 25 percent of Maryland's labor force, attributable in part to nearby Maryland being a part of the Washington Metro Area where the federal government office employment is relatively high.
- 11y ago
- jameskozart 11y agoto expensive for only random number generator for $50
- danbruc 11y agoA random number generator with US flag on it. Yes, it is kind of silly, it is just a sticker, but it subconsciously evokes negative associations, at least for me.
- JonFish85 11y agoWhat sticker would make you feel better? China? Hungary? Designed in USA, made in China?
- smcl 11y agoNo flag whatsoever, really. Though exploring that tangent a little, I wonder if there is a any sort of study on flags\countries and their association with quality (specifically engineering\tech). Off the top of my head I'd guess people associate places like Sweden, Germany, Switzerland, Austria - I'm not sure why.
- blkhawk 11y agoAs a german i can tell you having the german flag on anything is a bit weird.
- Lawtonfogle 11y agoI wouldn't go with Sweden. A pirate flag might work.
- xrstf 11y ago
- ableal 11y agoNicely documented. I wanted to be reminded of what a bitmap picture for a PRNG bitstream looks like, and found this example: https://www.random.org/analysis/randbitmap-wamp.png https://www.random.org/analysis/randbitmap-wamp.png (bad due to visible patterns, compared to the shown picture for their hardware generator: http://ubld.it/wp-content/uploads/2014/02/random_bitmap.png http://ubld.it/wp-content/uploads/2014/02/random_bitmap.png ) Curiously, the shop shows sales data: 376 orders / 22 reviews Since Mar 04, 2014 (as of about 14h WEST, 2015.05.22, let's see if it budges ;-)
- CHY872 11y agoBe aware that a decent prng will look just like the true one. That one's particularly crap. The Mersenne Twisters have incredibly long periods (2^19937 - 1 common) and you won't see anything. These are not at all cryptographically secure.
- mbq 11y agoPretty auditable alternative for $35 https://www.tindie.com/products/WaywardGeek/infinite-noise https://www.tindie.com/products/WaywardGeek/infinite-noise
- benmanns 11y agoIf this pool is depleted then the kernel will block causing a delay until the kernel can provide the requested random numbers. Is there a way to measure how often this happens and what kind of improvements would be expected after buying a hardware RNG?
- kseistrup 11y agoWhat happened to EntropyKey? http://www.entropykey.co.uk/ http://www.entropykey.co.uk/
- msisk6 11y agoNot sure. I got an Entropy Key from Simtec about 4 years ago. The case of the TrueRNG looks identical to the Entropy Key, but for all I know that could just be a common part.
- kseistrup 11y agoYeah, me too. So I was surpirsed that their website no longer seems to be available.
- hga 11y agoThey used up the devices they'd had manufactured, were saying they had no idea if and when they'd have more ... and I guess they've completely given up, now.
- Arjuna 11y agoIf you enjoy this topic, you might be interested in HotBits. It uses a Caesium-137 check source and a radiation monitor to generate non-deterministic values. https://www.fourmilab.ch/hotbits/hardware3.html https://www.fourmilab.ch/hotbits/hardware3.html
- JustSomeNobody 11y agoSlightly OT but, didn't, back in the day, some PC sound cards have a white noise generator that one could use for random numbers?
- linker3000 11y agoHeck, the Commodore 64 had one in the SID chip - I used to use it for random numbers. http://www.atarimagazines.com/compute/issue72/random_numbers.php http://www.atarimagazines.com/compute/issue72/random_numbers...
- qrmn 11y agoJust to be clear, the SID's noise generator is NOT a TRNG - it's a XOR shift register, basically an LFSR with no 1-tap. It's predictable.
- feld 11y agoDo these work on FreeBSD?
- yuvadam 11y agoSounds pretty fucking expensive. You can get a $10 RTL-SDR [1] dongle that happily churns out over 2MSp/s and feed random radio noise to your entropy pool using rtl_entropy [2]. Also what's up with the flag, 'murica? [1] - http://sdr.osmocom.org/trac/wiki/rtl-sdr http://sdr.osmocom.org/trac/wiki/rtl-sdr [2] - https://github.com/pwarren/rtl-entropy https://github.com/pwarren/rtl-entropy
- nutate 11y agoThat's kinda neat thanks!
- acqq 11y agoVery nice, on [2] are the instructions: "If you're serious about the cryptographic security of your entropy source, you should probably short, or put a 50 Ohm load on the antenna port, and put the whole assembly in a shielded box. Then you're getting entropy from the thermal noise of the amplifiers which is much harder to interfere with than atmospheric radio." But where do you find $10 dongles? I've found just NooElec NESDR XTR for $50? Edit: OK, there are cheaper dongles with RTL2832U, just not with E4000
- Someone1234 11y agoThey're selling a $50 "product." You've linked to a $10 experiment. Just the fact that theirs comes with a signed Windows driver and software Linux support out of the box, justifies every cent of the $40. This complaint is akin to people who complain "a $700 iPhone only has $150 of parts." It might be true, but it ignores the entire development cost, value add, and ease of use relative to buying a box of bolts and building an iPhone (or in this case a RND source). Their price is very reasonable, and your $10 alternative is not a realistic alternative.
- __sbrk 11y agoI hope they've run DIEHARD or similar against this source to check for deterministic flaws: http://csrc.nist.gov/groups/ST/toolkit/rng/batteries_stats_test.html http://csrc.nist.gov/groups/ST/toolkit/rng/batteries_stats_t...
- drewhk 11y ago... or TestU01 Big Crush (https://en.wikipedia.org/wiki/TestU01 https://en.wikipedia.org/wiki/TestU01)
- Titanous 11y agoOneRNG is basically the same thing, except it's open hardware: http://onerng.info/ http://onerng.info/
- jimhefferon 11y agoThey will be ready by April 2015. I can't wait!
- benjarrell 11y agoSo, a month ago?
- blacksmith_tb 11y agoNot the first Kickstarter product to have that problem. But there is more info about it here: http://moonbaseotago.com/onerng/ http://moonbaseotago.com/onerng/
- jacquesm 11y agoBeware of single junction devices, if that should ever fail and not be detected then you're in a world of trouble.
- mistercow 11y ago>Showing the random stream as a bitmap shows no visible patterns like a pseudo random number generator will Huh? Some PRNGs sure, but I don't really know what this is trying to prove. The output of any decent stream cipher will appear just as random.
- jacquesm 11y agoSometimes if you start varying the output width of such a process dynamically you can pick out patterns. Not saying this is the case here but it's an interesting trick to allow your visual cortex to do some pretty heavy numerical lifting.
- kozak 11y agoThe "random bitmap" got somehow compressed by the PNG format by 50% :)
- joshguthrie 11y agoLast I heard, there was a free Quantum Random Number Generator with an API out there: http://photonics.anu.edu.au/qoptics/Research/qrng.php http://photonics.anu.edu.au/qoptics/Research/qrng.php Shameless self-insert: https://github.com/joshleaves/node-qrand https://github.com/joshleaves/node-qrand
- ubldit 11y agoThank you all for the feedback and also the entertainment. Here's a memorial weekend coupon code for $10 off your purchase of a TrueRNG from Amazon: MERICA10 http://www.amazon.com/TrueRNG-Hardware-Random-Number-Generator/dp/B00T0XKAQM/ http://www.amazon.com/TrueRNG-Hardware-Random-Number-Generat...