The drand beacon
The randomness that decides every draw here. We consume it. We do not produce it, and we cannot influence it.
League of Entropy
Fixed public schedule
Unchained, sigs on G1
Who runs it
A round is only produced when enough independent nodes combine their partial signatures. No single participant can produce one alone, predict a future one, or withhold one unnoticed.
That is the property we are buying, and it is why the randomness comes from somewhere that has nothing to do with prize competitions. More about drand ↗
The chain we use
Chain hash
52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971Every receipt names this chain. If a draw ever cited a different one, that alone would be disqualifying — it would mean the randomness came from somewhere we had not declared.
How we read it
Relays queried
- https://api.drand.sh
- https://drand.cloudflare.com
- https://api2.drand.sh
- https://api3.drand.sh
Several, because a single relay is a single point of both failure and lying. A round is only accepted once its BLS signature verifies against the chain's public key — so a hostile relay returning an invented number is rejected by mathematics rather than by trust, and the relay list is a convenience rather than a dependency.
verifier: pure-php
Read it yourself
Nothing here is privileged access. The same round any of our draws used is one request away, from drand's own servers:
curl https://api.drand.sh/52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971/public/1234567
Substitute the round number printed on any draw page. What comes back is the randomness we used — fetched from them, not from us.