Crypto and payments
Provably Fair Casino: What It Proves and Where the Cryptographic Guarantee Ends
US players, read this first. Online casino and sportsbook law is decided state by state, and the operators listed here are licensed offshore rather than by a US state regulator. Check what is legal where you live before you deposit. You must be 21 or older. Responsible gambling · 1-800-GAMBLER
On this page
A player verifying a provably fair casino wager can confirm that a completed game round derived exactly from a precommitted server seed, a player-selected client seed, and an incremental counter. That verification proves the casino did not alter the outcome after the bet was placed, but it provides no proof regarding operator solvency, balance custody, or the fairness of the underlying house edge.
The Three Inputs Behind Each Wager
Stake and Cloudbet documentation details the calculation structure. According to Stake Help Center records from September 2024, every outcome relies on three specific inputs: the server seed, the client seed, and a nonce.
The server seed is a secret random number generated directly by the casino platform, as outlined in Cloudbet Academy materials from February 2026. Before any wagering begins, the casino hashes this server seed using the SHA-256 algorithm and displays that hash string to the player.
The second input comes from the user side. Cloudbet states that the client seed is generated by the player's browser or device, though platforms often allow players to customize or manually type their own string.
The third component is the nonce. Stake and Cloudbet both document that the nonce functions as an integer counter, advancing upward by one with every bet placed under that active seed pair. Provenly Fair notes that the final game roll is derived directly from these three values combined.
How Round Recomputation Works After the Reveal
The verification workflow relies on a hash-then-reveal sequence. Cryptowisser explains that the initial server seed remains hidden behind the pre-bet SHA-256 hash, which acts as a mathematical commitment from the house.
When a bet executes, the software runs a deterministic algorithm. As Cryptowisser detailed in July 2026, the game result is computed using HMAC-SHA256, feeding the casino's secret server seed as the cryptographic key and combining the client seed with the current nonce as the message payload. Cryptowisser documents this exact HMAC-SHA256 formula.
Because the real server seed stays hidden during active play, the player cannot predict upcoming results. Because the hash was displayed prior to the wager, the casino cannot swap the seed behind the scenes without changing the hash.
Once a player finishes a session, the verification step unlocks. Stake notes that when a player rotates the active seed pair, the platform exposes the unhashed server seed in plain text. A bettor can paste that revealed server seed, their client seed, and the specific round nonce into a standard HMAC-SHA256 tool. If the calculated roll matches the recorded result, the game round is verified.
Operational Risks Untouched by Code Verification
Recomputing a round settles mathematics, not business practices. The mathematical check confirms only that the outcome matched the precommitted inputs and the specific algorithm.
First, the cryptographic check does not evaluate the game design. A provably fair dice or card game can produce fully verifiable rolls while retaining a mathematical house edge that heavily favours the operator.
Second, the code does not secure account balances or platform custody. Public records do not contain statutory standards or regulatory mandates governing provably fair implementations, and the computation cannot verify whether an operator holds customer funds in reserve.
Third, verification does not govern payouts. A player can verify every historical nonce computation on their screen while an operator delays or denies a withdrawal request. Verification confirms historical round math after the server seed is revealed, leaving commercial solvency and cashier execution outside the code.







