Computers and Randomness
Creating a random number is a fairly trivial task for a human, but actually quite challenging for a computer. With the ability of independent and free thought, we can easily pick up number given a certain range. But a computer can only follow the code it has been programmed with, and can’t come up with a truly random number out of thin air. Programmers can emulate randomness by giving a computer a “seed” number and running it through an algorithm to produce an apparent random number. But cryptographers will tell you that such an answer can be guessed and therefore is unreliable for securing data. To ameliorate this challenge, some random generators will use natural phenomena as the seed, like radioactive material or solar activity. This is a fascinating subject and you can learn more by reading this article from MIT or this video from Numberphile.