UnipickerDraw Whitepaper
Random · LESSON 4

Seed — the starting point of computer random

A computer needs a "starting number" to make random numbers. That is exactly what a seed is.

Concept

Why is a seed needed?

A computer is really a function (a calculator). Put in the same thing and you always get the same out. It cannot just "poof" any number out of nowhere.

f(seed) = random numberOnly after you feed in a seed (starting number) does a random number come out. With no seed, there is nothing to feed in, so nothing can be made.
Same seed → always the same random number. So anyone can recompute it later and verify.
Experiment

Try different seeds to make random numbers

Each time you enter a seed and press "Make random," the table below grows by one row. Try several seeds and watch who wins.

Suppose there are 5 entrants — A · B · C · D · E. To pick a winner, divide a random number by 5 and the remainder decides the winner (0→A, 1→B, 2→C, 3→D, 4→E). Why the "remainder" is used, you can learn in the Algorithms lesson "Picking a winner with a random number."
Seed
Enter a seed above and press the button.
Quiz

In the experiment above, what seed makes "D" win?

The same seed always makes the same random number, so the seed that makes "D" win is fixed. Enter a seed and press Check to find it yourself, or press Auto-find.

Seed
Loophole

This is unfair

If you can pick the seed freely, an organizer can choose the person they want (D) to win. Then this is not a fair draw.

Solution

That is why we use DRAND

A DRAND number is set by the whole world together, so nobody can choose it. The draw seed made from that number is the same, so an organizer cannot deliberately pick D.

What DRAND is and how it's fetched, you can learn in detail next in "Fetch DRAND."
In short — computer random always needs a seed (it is a function!). But if the organizer picks the seed, they can make anyone win, which is unfair. So we use a DRAND seed nobody can choose, keeping it fair.