18+Play responsibly. Independent research and comparisons.Get support

Only available after you rotate your seed pair — that's what makes it verifiable.
Paste the value the operator showed before the round. Without it, this tool can calculate the HMAC but cannot confirm a pre-bet commitment.
The bet number for this seed pair.
Usually 0. Used by games that need more than 32 bytes of output.

Checking HMAC engine…

Pre-bet server-seed commitmentNot checked — no pre-bet hash supplied
HMAC-SHA256 (hex)—
First float [0, 1)—
Dice result (Stake method)—

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 result uses 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

  1. Before the bet, the operator generates a secret server seed and shows you only its SHA-256 hash. That hash is a commitment: recovering a sufficiently random seed from its hash should be computationally infeasible, while a revealed seed can later be checked against it.
  2. You contribute a client seed. Choosing an unpredictable value after the server commitment reduces the operator's ability to select a server seed for that known input. The exact protection depends on the published protocol.
  3. Each bet adds a nonce, an incrementing counter, so the same pair of seeds can produce a new calculation for each round. Different calculations can still map to the same displayed game result.
  4. 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.

Step by step: commitment and Stake-style Dice checks

  1. Read the published method: Confirm the operator's seed encoding, HMAC message format, and result mapping. This tool uses clientSeed:nonce:cursorChunkas the message and supports a Stake-style Dice calculation. It does not decode outcomes for BC.Game, Mines, Limbo, or Crash.
  2. Save the pre-bet commitment: Record the active server-seed SHA-256 hash before the round. It is a commitment to a seed, not an encrypted game outcome.
  3. Record the client seed and nonce: Keep the exact input values and displayed result for the round. For the first Stake-style Dice result, use cursor chunk 0 here.
  4. Obtain the revealed seed: Follow the operator's documented seed-reveal process. A seed from a different pair cannot verify your saved round.
  5. Check the commitment: Enter the revealed seed and saved pre-bet hash. A SHA-256 match supports that the revealed seed is the one committed before the round. An absent pre-bet record leaves that timing unverified.
  6. Compare only a supported result: Compare the calculated Dice value with your recorded result only when the operator's method matches. A matching HMAC by itself does not establish that a displayed game outcome was correct.

Method references: Stake's published seed and HMAC implementation and game-specific result mappings. The tool's HMAC self-check uses a published RFC 4231 test vector; that checks the cryptographic calculation, not an operator's conduct.

Questions

How do I check a Stake-style Dice round?

Save the server-seed hash shown before the round, plus its client seed, nonce, and displayed result. Once the operator reveals the server seed, enter those values here and keep the cursor chunk at 0 for the first Dice result. A matching SHA-256 confirms that the revealed seed matches your saved commitment. The tool computes HMAC-SHA256 with the revealed server seed as key and clientSeed:nonce:cursorChunk as message, then shows a Stake-style Dice calculation. Compare it with the operator's published method and your recorded result. Other games and operators may use different message formats and result mappings.

Can an online casino change the server seed during a bet?

A revealed seed that differs from the seed committed before the bet should fail the SHA-256 commitment check. The check depends on retaining the actual pre-bet hash; a hash copied only after the round does not establish when the commitment was made. A matching commitment alone does not validate the game's outcome mapping or the operator's wider conduct.

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 for pasted spaces, the wrong seed pair or nonce, and differences in the operator's cursor convention, message format, or result mapping. This tool decodes only a Stake-style Dice result; a different game's result is outside that scope. If a supported calculation still disagrees with your saved record, preserve the inputs, commitment, published method, and displayed result, then raise the discrepancy with the operator.

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.