18+ only · Gambling involves risk of loss · We earn commissions from some links · Disclosure

Provably Fair Verifier (Dice, Limbo, Crash)

Updated By the CryptoPlay Guide Editorial Team

18+ only. Contains affiliate links — we may earn a commission. Not for residents of the US, UK, France, Germany, Netherlands, Spain, Austria, Australia, Ontario or Vietnam. Not legal or financial advice.

Paste the revealed server seed, the hash you were shown before betting, your client seed and the nonce. The tool checks the commitment and recomputes the result with publicly documented formulas.

⚠ Example values (made up for this demo, not from any casino): replace them with your own revealed seeds.

Result

SHA-256(server seed)1c7bc4411405303e0f84ab57dea9691c6376ee6891b289a65edac408519e6009
Commitment matches the supplied hash✅ yes
HMAC-SHA2566d1e1f338f1fdebd53787f1a0149cf4db00e3ee20a292c692ea92ef45364ce5b
First 4 bytes109, 30, 31, 51
float0.42624087329
Dice roll (0.00–100.00)42.62

Dice/Limbo: Stake's published formulas (HMAC-SHA256 key = server seed, message = client seed:nonce:0, first 4 bytes → float). Crash: bustabit's open-source formula. Other casinos may use different formulas: if your numbers differ, compare with that casino's own documentation.

18+ only. Educational tool. Runs entirely in your browser: seeds are never sent anywhere. A match only confirms the commitment matches the supplied hash. Compare the recomputed outcome with your recorded round and the operator’s documented formula; this does not prove payout reliability or remove the house edge.

The pre-filled seeds are made-up example values. With them, nonce 3 gives Dice 42.62 and Limbo 2.32×; the Crash example gives 1.44×. Each casino can use its own formula, so a different number is not proof of cheating until you compare with that casino's documentation.

How it is calculated

  • Commitment check: SHA-256(revealed server seed) must equal the hash shown before you bet.
  • Dice & Limbo (Stake docs): bytes = HMAC-SHA256(key = server seed, message = "client seed:nonce:0"); float = b0/256 + b1/256² + b2/256³ + b3/256⁴.
  • Dice roll = floor(float × 10001) / 100. Limbo = max(1, floor(1e8 / (float × 1e8) × 0.99 × 100) / 100).
  • Crash (bustabit): h = HMAC-SHA256(key = salt, message = game hash); X = first 52 bits / 2⁵²; result = max(1, floor(99 / (1 − X)) / 100). Chain check: SHA-256(game hash) = previous game hash.

Sources Stake: provably fair implementation · Stake: game events (Dice, Limbo) · bustabit open-source verifier

Related reading

Frequently asked questions

Does a matching hash mean the game is fair?

It only confirms the commitment matches the supplied hash. You must compare the recomputed outcome with your recorded round and the operator’s documented formula. It does not prove the commitment was supplied before betting, remove the house edge or prove payouts.

Why does my result differ from the casino's?

Casinos use different formulas, byte orders, house edges and rounding. Use the formula published by that casino. This tool uses Stake's and bustabit's public formulas.

Are my seeds sent to your server?

No. Hashing runs in your browser with the Web Crypto API.

Ready to try Mint.io?

Read our full Mint.io review, set a budget, and play responsibly.

Mint.io: the stablecoin casino we review
  • Deposit & withdraw in USDT or USDC: no price swings
  • No code needed: rewards in $MNTD token: rakeback, daily rewards, MINT Status staking
  • Casino, sportsbook & predictions in one account
View Mint.io ↗

18+ · Sponsored · T&Cs apply · Not available in restricted regions

CryptoPlay Guide Editorial Team
CryptoPlay Guide Editorial Team

A small independent team that reads operator help pages, terms and third-party reviews, and links sources for every claim. We are not lawyers or financial advisers. We may earn affiliate commissions. About us & how we rate