Hardware Random Number Generators
-
I think I have a solution. The old dot-matrix printers used wire solenoids to spank the ribbon where a black spot was required on the page, but very few people use them anymore. We still know how to make them, though, so it shouldn't be hard to find the parts... Line up an array of 16 9-pin printheads, with eight levers attached to each printhead wire (one wire would be kept as a spare). On the other end of each lever balance a penny. Above the assembly suspend a digital camera attached to a processor with a good image recognition program to distinguish between heads and tails. When a random number is required, print 0xffffffffffffffffffffffffffffffff to the contraption, then read the pattern of heads and tails using the camera. Set heads=1, tails=0, and there you have a truly random 128-bit number. Use as many bits of it as are needed for your application. I believe Okidata is still making the venerable ML390, so check with them for pricing.
"A Journey of a Thousand Rest Stops Begins with a Single Movement"
Well, something kinda like that already exists.
-
Need custom software developed? I do custom programming based primarily on MS tools with an emphasis on C# development and consulting. A man said to the universe: "Sir I exist!" "However," replied the universe, "The fact has not created in me A sense of obligation." --Stephen Crane
ROFL... Random Corporate Memo generator... Here's my random output! To: All Employees From: Executive Management Date: Wed Jan 27 20:41:12 2010 Subject: Important Announcement Having a shared tangent that is interactive, it follows that a corporation time frame will ramp up progress on a progressive big win. Having first verified that paradigm shifts give rise to (take a surf on our World Wide Web site for more on this) a web site, a careful examination of the high-impact key player reveals that an interdependent antidisintermediation strategy engenders the standards in price point. As our company President states in a recent memo about the geography, " leading eye candy continually gets up to speed on visual computing." On a company-wide basis, the vision provides an indication of the object-oriented objectives. Customers need the eye candy, and we fulfill that need with a high-performance customer partnership. The established standard initiates the supercomputers. This leaves Strategic Initiative uniquely poised to provide 3-D. -------------------------------------------------------------------------------- Disclaimer: We cannot be heald responsible for any advice or direction that may be generated by LavaRnd. Any resemblance to actual memos produced by your own management could be a very bad sign. :-)
I don't have ADHD, I have ADOS... Attention Deficit oooh SHINY!! Booger Mobile (n) - A bright green 1964 Ford Falcon - our entry into the Camp Quality esCarpade!! Do something wonderful - make a donation to Camp Quality today!!
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
In a previous life (20+ years ago) when I was designing cryptographic devices for Electronic Funds Transfer, someone (an offshoot of a large US telco, from memory) sold a "secure random generator" chip which IIRC was based on semiconductor noise. In those days, US export restrictions made it a pain to even think about designing it into gear for export (from Australia!), so we settled on a pseudo-random setup with an effective key length in the region of 650-700 bits. Since it was used to generate magic numbers for use in a triple-DES world (key length about 110 bits), we figured that was strong enough.
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
-
Here's a fun one: USB HourGlass Random Number Generator http://boingboing.net/2009/12/23/usb-hourglass-random.html[^]
"I made this letter longer than usual because I lack the time to make it shorter." — Blaise Pascal
I kinda want one, although I think I'll resist as I probably shouldn't acquire any more devices I don't use.
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
-
Meh. It's been implemented on some CPUs for years. Maybe it's time for Intel/AMD to follow VIA's lead for a change.
3x12=36 2x12=24 1x12=12 0x12=18
Directly on the CPU!? Not sure I like that... I mean, wouldn't that potentially slow the CPU down a bit? Seems like this would be an operation more appropriate for another chip on the motherboard. Than again, I'm a software guy, so I can't really claim what's best when it comes to hardware. Also, that's neat.
-
Directly on the CPU!? Not sure I like that... I mean, wouldn't that potentially slow the CPU down a bit? Seems like this would be an operation more appropriate for another chip on the motherboard. Than again, I'm a software guy, so I can't really claim what's best when it comes to hardware. Also, that's neat.
I don't see why it would. From the wiki article it's not a complex device; so space related penalties shouldn't be a factor; and if the device is only able to generate 10m words per second the 100 cycle wait state caused by calling GetRandomWord would still be less than the 100 + bus latency cycle penalty from putting the same device on a separate chip. There's also the fact that putting the module on the CPU (or in the chipset) makes it effectively free to OEMs; while putting it in a seperate chip will raise the cost of the board several dollars and consume connectivity resources from the chipset: Either a PCIe lane, or one of the PCI bus slots. The former would be cheaper to implement because of the lesser number of traces needed; but on more full featured boards would run into the problem that the total number of lanes is rather limited on mainstream chipsets. The PCI bus is increasingly moving towards something used to attach legacy IO devices on board (eg PATA/firewire) but the extra number of traces make it more expensive to implement, being a dead end bus fewer new devices are being made for it; and eventually the chipset makers will start cutting the number of supported devices towards zero.
3x12=36 2x12=24 1x12=12 0x12=18
-
Meh. It's been implemented on some CPUs for years. Maybe it's time for Intel/AMD to follow VIA's lead for a change.
3x12=36 2x12=24 1x12=12 0x12=18
Some link, or guide to instructions how to use it?
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
There's already a highly functional random number generator available through the Win32 API. It's used to calculate the amount of time left when you copy files.
Matt Dockerty
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
Well, if you need a *lot* of random numbers: Dice-o-Matic
Currently reading: "The Prince", by Nicolo Machiavelli
-
Well, if you need a *lot* of random numbers: Dice-o-Matic
Currently reading: "The Prince", by Nicolo Machiavelli
I was hoping for something a little more compact, but that is still very cool (and a little funny). :thumbsup:
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
While I understand the coolness factor of having a hardware random number generator, really providers like the RNGCryptoServiceProvider .Net class (for example) or the CryptoLib C++ library is more than adequate for almost all uses. Both are valid RNGs that can be used even for security purposes. I have to say though that I would be very happy to see a dedicated hardware RNG on all motherboards.
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
We already have it based on CPU clock. It is random really.
-
I was just thinking it would be useful to have some sort of hardware connected to your computer to generate numbers more randomly than the pseudo random algorithms out there already that are seeded based on the time of day and so on. I was envisioning some sort of clear ball filled with various types of liquid (think of a magic 8-ball) that you can shake every now and then and some sensors on it would produce random numbers (by detecting fluid velocity, transparency, temperature, and so on). However, I did a Google search and it seems that this concept has already been implemented, albiet not quite exactly how I imagined it: Wikipedia: Hardware Random Number Generator With the ever increasing interest in data security, perhaps it's time motherboard manufacturers started including devices like this on all motherboards. What do you think?
it would be handy to be able to retrieve a Random as a system function, and not have to keep the memory allocated for the class data. With gaming becoming such a large part of computer(and console) sales, I am surprised that there isn't a super small RNG chip, to get around using the conventional random deviate block, or at least shunt that "work" off memory because there really are A LOT of places that use it.
I'd blame it on the Brain farts.. But lets be honest, it really is more like a Methane factory between my ears some days then it is anything else...
-
We already have it based on CPU clock. It is random really.