Computers are Lousy Random Number Generators

There’s also quantum random:

And the latest is, I guess, the RDRAND opcode which is on x86 processors starting in 2015 and later?

Reading more closely, you have to trust the source of randomness, because if you don’t… that’s a whole other level of security violations.

1 Like

One of the things to check with all pseudo random number generators is the number of different random sequences. If you use a 16-bit seed for random number generator, you are limited to having only 65 thousand random sequences. If I collect a few of your “random” numbers, I can compare your sequence to my database of random number sequences to determine what number you used to seed it, and determine what the entire sequence will be. 32-bit is of course about 4 billion possible seeds, but the same theory applies. You seed it and generate a sequence, I can compare your sequence against my database of 4 billion random sequences and quickly determine what seed you used, and predict your next random numbers.

2 Likes

Not having a computer, let alone a calculator is going to make it very difficult. Even just writing down 1000 digits is going to take a long time.

Perhaps assign a bit to each of the 10 digits, counting in prime increments, do bitwise AND on the input digits, sum up the resulting digits, use the last digit of the sum. So, given: 0123456789 as input, and counting in prime 7 the random numbers would be:
111 → 789 → 4
1110 → 678 → 3
10101 → 579 → 3
11100 → 567 → 8
100011 → 489 → 1

2 Likes

That’s a fantastic mental exercise. People are also terrible random number generators! I’d probably use dice to generate the randomness. But what if you don’t have access to dice… what can you make to help you be more… er… random? Did I link the “what people do in prison” article yet? It’s a good one:

1 Like