Generators · randomnessRandom number generator and draw

A random number, a draw from a list, splitting into teams, a random running order, dice and a coin. Cryptographic randomness, a verifiable result — and all of it in the browser.

The participant list, the seed and the results never leave your browser
01Draw02Fairness03About randomness04Questions05Related
01

Draw

five modes, one result
a range, N values, no repeats

with a single number there is nothing to repeat or to sort — both switches wake up once you ask for more

Quick range
Result
Press «Draw» — the result will appear here
A note

This is a tool for draws, games and teaching. It is not meant for gambling or money lotteries.

Session history

Empty so far — press «Draw». The history lives in this tab only.

02

A verifiable draw

promise → draw → verification
Draw seed

The field is empty: the draw will use the cryptographic source. That is honest, but such a draw cannot be verified — nobody can reproduce it, you included.

SHA-256 fingerprint · seed + input
No draw yet — the fingerprint can be announced right now.
How to verify
01Before the draw

Announce the fingerprint: post this line in the chat or under the post. It depends on the seed and the participant list, so neither can be swapped unnoticed afterwards.

02The draw

Press «Draw». The draw number is appended to the seed, so every press gives a new result — and every one of them is reproducible.

03After

Publish the draw seed together with its number, plus the protocol. The protocol holds everything: mode, input, fingerprint and result.

04Verification

Anyone opens this page, enters the same seed, the same list and the same number — and gets the same result. A match means the draw was not replayed.

03

About randomness

Cryptographic randomness

Basics
crypto.getRandomValues
Numbers come from the browser's cryptographic source rather than Math.random(), whose sequence is predictable once the generator state is known.

No skew

Fairness
rejection sampling
A naive remainder favours the start of the range slightly — in a draw that means the first names win more often. Unsuitable values are discarded so the odds stay strictly equal.

Seed and repeatability

Verification
seed#3 = same result
A draw runs from the seed and the attempt number. Knowing them and the list, anyone repeats the draw and gets the same outcome — verified without trusting us.

A promise before the draw

Protocol
SHA-256 fingerprint
Announce the fingerprint beforehand and the seed afterwards. That shows neither list nor seed was swapped later; competitors need a server for this, here it is the browser.

No repeats

Modes
5 of 36
Already drawn values can be excluded: for lottery sets, a running order, or prizes where one person wins only once.

Privacy

Local
no server
Participants, seed and results stay in the tab. Nothing is sent or stored — the draw history disappears when the page reloads.
04

Frequently asked questions

Set «from» and «to», say how many numbers you need, and switch on «no repeats» if the same number must not come up twice. Bounds may be negative, and the arrows next to a field change the value by one, or by ten with Shift held. The numbers come from the browser's cryptographic source rather than from `Math.random()`.

Updated

«» added to favorites