🔒 Provably Fair
Every game on CyberDice uses cryptographic commit-reveal randomness. You don't need to trust us — verify every roll below.
Interactive Verification Tool
How It Works
Commit Phase
Before the game starts, the server generates a random secret seed and publishes its SHA-256 hash. This hash is your guarantee — the server can't change the seed after committing.
serverSeed = randomBytes(32) committedHash = SHA256(serverSeed) → shown to player before bet
Player Input
You provide your own client seed (editable on each game page). This ensures neither party alone can determine the outcome.
clientSeed = your_input (e.g. "player")
Outcome Derivation
The crash point or mine positions are derived deterministically from serverSeed + clientSeed + nonce using a fast hash mixer. Same inputs always produce same outputs.
crashPoint = f(serverSeed, clientSeed, nonce) where f uses 3% house-edge formula: r = hash(serverSeed:clientSeed:nonce) if r < 0.03: return 1.00x else: return max(1.01, floor(0.97/(1-r)*100)/100)
Reveal & Verify
After the game, the server seed is displayed. Paste it into the tool above and confirm SHA-256(serverSeed) matches what was shown before your bet.
✅ SHA256(serverSeed) == committedHash ✅ deriveCrashPoint(serverSeed, clientSeed, nonce) == actual crash
Why This Matters
The commitment is published before you play. Changing the seed changes the hash — instantly detectable.
Even if the server knows its own seed, it can't predict your client seed, so it can't target outcomes.
You trust SHA-256 math, not CyberDice. The same hash function secures Bitcoin.
The derivation code is open source. The tool above runs entirely client-side — no server involved.