Fairness tools
Provably fair casino verifier
Paste a revealed server seed, the hash shown before the round, a client seed, and nonce to check the commitment locally. The tool also calculates HMAC-SHA256 and a documented Stake-style Dice result.
If you provide the pre-bet SHA-256 value, a match confirms that the revealed server seed was committed before the bet. The HMAC calculation is computed entirely in your browser, and the self-test confirms our engine matches the published RFC 4231 reference vector. The Dice resultuses Stake's documented byte-to-float mapping (floor(float × 10001) ÷ 100). Other games (Limbo, Crash, Mines, Plinko) and some operators use different result mappings or nonce/cursor order, so this tool does not decode every game or prove a displayed result unless the operator's published method matches the inputs above.
How verification works
- Before the bet, the operator generates a secret server seed and shows you only its SHA-256 hash. That hash is a commitment: it cannot be reversed to reveal the seed, but the seed can later be checked against it.
- You contribute a client seed, which the operator cannot predict. Because your input is mixed in, the operator cannot know the outcome in advance even though it chose its own seed.
- Each bet adds a nonce, an incrementing counter, so the same pair of seeds produces a different result every round.
- Afterwards the server seed is revealed.Hash it and compare with the original commitment; then combine the inputs with HMAC-SHA256 according to the operator's published method.
Every term above is defined in the glossary. This tool checks the commitment and computes the HMAC; it only maps a final result for the documented Stake-style Dice method.
Why this is worth doing at least once
Checking a single result tells you whether the operator's published commitment and calculation method reconcile. If they do not, save the values and raise the issue with the operator before making another bet.
Questions
What does a matching result actually prove?
If you enter the hash shown before the bet and it matches the revealed server seed, it confirms that seed was committed in advance. The HMAC output then lets you check the operator’s published calculation method. A matching HMAC alone does not prove a displayed game result unless its message format and result mapping match the operator’s method.
What does it not prove?
That the game is worth playing. Provable fairness says nothing about the house edge, which applies exactly as advertised, and nothing about whether the operator will pay a withdrawal. A perfectly verifiable game can still take your money at a steady, predictable rate — and an operator with flawless fairness proofs can still be slow to pay.
Is my seed sent anywhere?
No. The verification runs in your browser using the Web Crypto API built into the platform. Nothing is uploaded, logged, or stored — you can confirm this by disconnecting from the network and using the tool anyway, which will work perfectly.
My result doesn't match. What now?
Check the mechanical causes first, because they account for nearly every mismatch: a trailing space in a pasted seed, the wrong nonce, or a cursor value the operator handles differently. Different operators also derive game outcomes from the hash in different ways. If everything is correct and it still fails to match, raise it with the operator and keep your records — that is precisely the situation this system exists to surface.
Fair is not the same as favourable.18+ only. A matching commitment and documented calculation method are evidence that the checked result was not changed after the bet. They do not reduce the house edge, improve your odds, or make gambling profitable.