In a computer, 'random' numbers are usually obtained from a pseudo-random number generator – this follows a fixed deterministic algorithm to generate each number, but is so convoluted that the numbers are for most practical purposes random. However, because it is underneath a fixed algorithm, every time you restart a program you get the same series of 'random' numbers as the last time. To deal with this the random number generator is seeded, that is some data is fed in to start the generator off so that it creates a new series of numbers. The 'seed' may include detailed system timings that depend on the momentary load of the machine, or other things that are hard to predict. However, for certain security applications that need large random numbers, this seeding process can be the weak point.

Used on page 6