Egad, I don’t know where to start. It’s like putting a jet engine on a golf cart for use only on a golf course. You don’t remotely need a quantum computer for this. People have been using radioactive decay and thermal sources to generate intrinsically random numbers for some time.
And they “checked” their random numbers using regular computers to verify they are truly random. No such computer to check for randomness exists or will ever exist. I can deterministically generate fake “random” numbers that will pass a randomness test.
And the description of passing numbers back and forth … what on Earth could that have to do with anything?
My guess, some researchers made some incremental progress in some subfield of a subfield, like happens every day, and the suits in marketing somehow caught wind of it and decided that they needed to make it the Biggest Thing Evar.
Perhaps to show they didn’t need access to the quantum computer or to know anything about it’s internal workings to verify the randomness of the numbers?
I would like to understand how exactly you certify the numbers are random.
Thanks, all. Sounds like this might be marketing stuff, on top of the quantum computer buzzword. Two years ago, it would be an article about how they generated true randomness on the blockchain.
Also, @ftg, I finally expanded your avatar to see the F. That has bugged me for a while.
There’s a website named random.org that specializes in producing truly random numbers.
As I recall it, they used to have a page describing how they picked up random data from an external detector (I’m not finding it at the moment, so maybe it’s no longer applicable). That data, while random, wasn’t necessarily uniformly distributed. They were using some formulas to convert the random data to uniformly distributed random data.
I could imagine that this could be true with any detector that’s sampling a random source. I don’t know whether it is.
Looks like they used radio noise (static). It has evolved over time although the whole thing was pretty small (like, a PC in your mom’s basement setup). Willing to bet that is a lot less expensive than the JPMorgan quantum computer thing (although that might be a better marketing tool than a 1990’s PC sitting in a basement).
The first version of the random number generator was based on a $10 radio receiver from Radio Shack. We had a lot of fun buying that receiver. We knew that many radios, even the cheaper ones, came with noise filters and would only let you listen when you were actually tuned into a station. So when we got to the shop, we explained to the sales guy that we needed the cheapest radio he had, because we wanted our computer to listen to static.
Almost all modern computers (desktops, laptops, phones, tablets) have hardware entropy sources. They’re as good as any other source of randomness. Sometimes you need random bits faster than the hardware can generate them, so the computer uses the limited true random bits to continually re-seed a pseudorandom source, and this is pretty much as good as the real thing as well. Anything else is basically a stunt (though sometimes fun, like the Lava Lamp wall).
I think most of them stockpile random bits, too, so even if you briefly outpace the rate at which they’re produced, it just dips into its reserve.
And of course, there are some applications for which pseudorandom is actually more useful than true randomness, where you want things to be reproducible. For instance, in many games, the layout of some level is “random”, but if two players both use the same seed, they’ll get the same layout. This can be good if you want to compete on an equal footing, or if you find some seed that has a particularly interesting feature, or whatever. It can also be used to prevent some kinds of “save scumming”, where you save the game just before some random event, and then keep on restoring that save until the event comes out optimal for you.
But it can enable other forms! XCOM 2 did this. But it meant that you could save-scum by “gerrymandering” your rolls. If you needed a 30%/50%/70% and rolled a 20%/40%/60%, you could lose all 3 or change the order and win 2.
The first Vampire The Masquerade PC game was like this.You could save right before you opened a chest. Every time you opened the chest, you got a different result-from a worthless bottle of poisoned blood to enchanted armor or weapons.
Back To The OP
Back in college (somewhere between 93 and 95) the statistics professor told us to look at the pages in the back of our textbooks. He said the long lists of numbers were “true randomness”. I questioned this claim. He was unable to explain just how computers generated the numbers or prove they were random. I suggested using a few ten-sided dice to generate random numbers. He asked where I would find such dice. I explained that I had many at home and if he gave me a minute to run over to the desk of the school’s gaming club I could come back with some. He never explained why rolling ten-sided dice wasn’t true randomness. So-
Were computers capable of generating “true randomness” back then?
Why isn’t rolling a ten-sided die on a walled surface (possibly requiring it to strke the back wall as in craps at a casino) not “true randomness”?
Rolling a 10-sided die is definitely random. However, it may be biased. Biased is still random (well, aside from a 2-headed coin), but usually you don’t want bias.
You can debias a coin by flipping it twice, counting heads-tails as heads and tails-heads as tails, and reflipping if it’s neither. I haven’t thought about debiasing a 10-sided die but I’m sure there are techniques.
Yes. One common technique is to use keyboard input as an entropy source. Just normal typing has enough variation that you can use it for randomness. You need to debias that too, which cuts down on the already low bitrate, but it can be done. It’s not awful if you’re just generating encryption keys or the like.
You need some kind of non-computational input, though. Hardware entropy sources use a diode or something for the thermal noise. You could also use a webcam feed, or a geiger counter, or anything… but it can’t just be deterministic computation.
Those tables might even have been generated by someone rolling d10s. And they probably were completely random, or as close to it as could be achieved… if they were used only once. Which, if they were printed in a mass-published statistics book, they weren’t.
I came up with one:
Roll the 10-sided die twice and take the sum. Subtract 11 if you can (i.e., it’s 12 or higher), otherwise subtract 1. That’s your number.
This is not a perfect debiasing like the coin flip method, but it’s a substantial improvement. And you can do it recursively if you like (roll 4 times to get 2 rolls, and then combine those rolls with the same method).
You can use this method with any N-sided die, actually. Roll it twice and take the sum; subtract N+1 if you can, otherwise subtract 1.
IIRC when you see those Cloudflare, “Are you Human” challenges and have to tick a box and then it lets you in it is using the little random wiggles a human has when using a mouse to decide that you are a human. Presumably a computer program can’t be that random and gets rejected.
Not sure why someone can’t program a little random movement into getting the cursor to the box but apparently it works to some extent to be worth them having that challenge.
If you’re talking about Google’s ReCaptcha, it actually knows your own habits of moving the mouse. If you open that same page up in an incognito window, you’ll probably have to find all the traffic lights or whatever.