Transparency
Check any draw yourself
What we publish, and when
1.When a draw opens
A commitment: the SHA-256 hash of a secret 32-byte seed. The seed cannot change later without the hash failing to match.
2.When entries close
The pool file, listing every valid entry number and its random reference, and the SHA-256 hash of that file.
3.At the same moment
The number of the future drand round that will choose the winner. It is always a round produced after the freeze.
4.When the draw runs
The revealed seed, the drand randomness and signature, the version of the random number generator and the fingerprint of its code, the winning entries, and the full manifest with its hash.
5.If a technical failure stops a draw
What failed and when, the original commitment and round, and the new ones. Two members of staff record it, the entries do not change, and nothing is drawn twice.
The calculation
- The generator is HMAC_DRBG with SHA-256, defined in NIST SP 800-90A. It starts from the 32-byte server seed, the 32-byte drand randomness, and the draw reference with the 32-byte pool hash.
- Each number is 8 bytes from the generator. A number is used only if it is below the largest multiple of the number of entries that fits in 8 bytes, so every entry has exactly the same chance. Otherwise the next number is taken.
- The remainder after dividing that number by the number of entries picks a position in the pool file. Further winners, if any, are picked from the entries that remain.
drand is a public randomness service run by the League of Entropy, a group of independent organisations. Each round is signed, and anyone can check the signature.
Two ways to check
In your browser. Open any finished draw and press Check this draw. Your browser downloads the pool file and the manifest and repeats every step. Nothing is sent back to us.
With an independent script. We publish a separate verifier written only with Node.js built-in modules. It fetches the randomness straight from drand.
node orvetta-verify.mjs D1234ABCA recorded result is never edited. If a winner turns out not to be eligible, we publish a separate correction record that points to the original result.
Recent draw records
All draw resultsNo draw has closed yet. Records appear here as soon as a draw's entries are frozen.