Every round on a Haddzy original locks its outcome to a server seed published before play and a client seed you control. After the round, both seeds are revealed — anyone can re-derive the result and confirm we didn't move it.
A provably-fair system lets you verify the operator didn’t tamper with a game outcome — without trusting the operator. It uses cryptographic commitments and inputs from both sides (server + client) so neither party can pre-compute or change the result mid-round.
Every Haddzy original (Coinflip, Roulette, Plinko, Mines, Crash, Keno, Blackjack) runs on the same scheme — the same one used by Stake, BC.Game and other crypto casinos. Nothing bespoke, nothing magical.
Server generates a random server seed (64 hex chars) and publishes its SHA-256 hash before the round starts.
You set or accept a client seed. The server can't see it before you commit, so it can't pre-tune the outcome.
The round plays out using a deterministic function of (server seed, client seed, nonce). The outcome is locked in.
After play, the server reveals the original server seed. Hash it yourself — if it matches the committed hash, the round is verifiable.
A random hex string created server-side before any round can start. Held privately until the round closes; only its SHA-256 hash is public during play.
SHA-256 is one-way: the same input always hashes to the same output, but you can’t reverse the hash to recover the input. That’s what lets us commit to a result without revealing it.
Your half of the entropy. Set it to anything — a username, a memorable phrase, the previous round’s hash. A random default is generated for you, but you’re always free to change it.
Rotate it whenever you want. The active client seed is part of every round you play until you change it.
Commitment verifier
Paste a revealed server seed, the hash we committed before the round, plus the client seed, nonce and game. Your browser hashes the seed (SHA-256) to confirm we couldn’t have swapped it, then re-derives the raw provably-fair float stream the game’s own mapping turns into its outcome. Nothing is sent to us.