Crypto VIP.casino

Provably Fair Explained

Updated 15 Sept 2026 · 7 min read

Provably fair is a commit-reveal scheme. Before you bet, the casino publishes a hash of a secret server seed. Your result is calculated from that server seed, a client seed you can see or set, and a nonce that counts your bets. When the server seed is later revealed, you can hash it to confirm it matches the earlier commitment and recalculate every result yourself.

Done properly, this proves a specific result was not changed after you placed your bet. It does not prove the casino is solvent, licensed, or will pay you. And it only covers the casino's own games, not slots or live tables from third-party providers.

The three ingredients

Most crypto casino in-house games, such as dice, crash, plinko, mines and limbo, use the same basic structure.

  • Server seed: a random value generated by the casino and kept secret while it is in use. Before any bets, the casino shows you its hash, typically SHA-256. A hash is a one-way fingerprint: it reveals nothing about the seed, but the casino cannot later swap in a different seed without the hash changing.
  • Client seed: a value on your side. Good implementations let you change it at any time. Because the casino has already committed to its server seed, it cannot choose a server seed that works against a client seed it has not yet seen.
  • Nonce: a counter that increases by one with each bet under the same seed pair, so every bet produces a different result from the same seeds.

How a result is generated

A common pattern is to compute HMAC-SHA256 with the server seed as the key and the client seed and nonce as the message. The output is a long string of bytes. The game converts part of that output into a number, for example a dice roll between 0 and 100, or a crash multiplier, using a published formula.

Because the calculation is deterministic, anyone with the same three inputs and the formula gets the same result. That is what makes the result reproducible. Exact formulas differ between casinos and between games, so a verifier has to use the casino's published method for that specific game.

How to verify a result yourself

You do not need to trust the casino's own verifier page. Independent open-source verifiers exist, or you can run the calculation in a few lines of code.

  1. 1Before playing, open the fairness or seed settings and record the hashed server seed shown to you. Take a dated screenshot.
  2. 2Set your own client seed, ideally a random string you generate yourself.
  3. 3Play, and note the nonce and result of the bets you want to check.
  4. 4Rotate the seed pair. The casino then reveals the previous server seed in plain text.
  5. 5Hash the revealed server seed with SHA-256 and confirm it exactly matches the hash you recorded before playing.
  6. 6Recompute each result from the server seed, client seed and nonce using the casino's published formula, and confirm it matches what the game showed.

What a correct implementation needs

The security comes from ordering. The casino must commit to its randomness before it knows your input, and your input must be something the casino cannot predict or control. If either condition fails, the word 'provably' no longer applies.

  • The server seed hash is shown before the first bet it applies to.
  • You can set or change the client seed, and the casino cannot override it.
  • The nonce increments with every bet.
  • The server seed is revealed after rotation, and it hashes to the published commitment.
  • The result formula is published in enough detail to reproduce.

How an implementation can be flawed: the Winna allegation

The following is an unconfirmed allegation, included to show what to look for, not as a finding against the operator. A post on the Bitcointalk forum, accompanied by a public code repository, alleged that a private game build on Winna was not provably fair. According to the allegation, the value meant to be unpredictable was fixed to a Bitcoin block hash from 2023 chosen by the casino rather than by the player, and the per-bet counter was pinned to zero. If true, the outcome would have depended on a single value the operator controlled, which it could in principle have generated and inspected before publishing.

We have not independently verified the claim and found no operator response. In our data it is marked as unconfirmed and does not affect Winna's score. The lesson is general: a 'provably fair' label and a verifier page are not enough. Check that you control the client seed, that the nonce changes, and that the commitment is shown before you bet.

Limitations: what provably fair does not tell you

Provably fair is useful and narrow. It is often presented as a general trust signal, which it is not.

  • In-house games only. Slots, live dealer tables and most games from studios such as Pragmatic Play, Evolution or Hacksaw Gaming do not use the casino's seed system. For those, fairness depends on the provider and on independent testing labs such as GLI, BMM, iTech Labs or eCOGRA, whose certificates should be checked on the lab's own website.
  • Not a statement of solvency. A casino can run perfectly fair dice and still be unable or unwilling to process withdrawals. We are not aware of any major crypto casino that publishes a verifiable proof of reserves covering player liabilities.
  • Not a statement about terms. Win caps, withdrawal limits, KYC demands at withdrawal and 'irregular play' clauses operate entirely outside the game maths.
  • No protection against hacks. Stake's September 2023 hot-wallet theft of about $41 million, which the FBI attributed to the Lazarus Group, had nothing to do with game fairness.
  • House edge still applies. A fair game still has a built-in house edge, so the expected result over time is a loss.

How we use it in our methodology

In our Trust Score, working provably fair that we can verify ourselves counts towards the Verifiability component, alongside certified third-party providers and proof of reserves. That component is worth 10 of 100 points. Licence status, complaints and the fairness of terms carry far more weight, because those are what decide whether players actually get paid.

Gambling is for adults 18+ or the legal age where you live. Verifiable fairness does not change the odds, and offshore sites are not covered by national self-exclusion schemes like GamStop or CRUKS. Free help is available from BeGambleAware, GamCare and Gambling Therapy.

Frequently asked questions

Can provably fair games be rigged?

A correct implementation prevents the casino from changing a result after you bet, which you can confirm by checking the revealed server seed against its earlier hash. A flawed implementation, for example one where the player cannot control the client seed or the nonce does not change, can undermine that guarantee.

How do I verify a provably fair bet?

Record the hashed server seed before playing, set your own client seed, rotate the seeds afterwards to reveal the server seed, confirm its SHA-256 hash matches, and recompute the result from the server seed, client seed and nonce using the casino's published formula.

Are slots on crypto casinos provably fair?

Usually not. Provably fair normally covers only the casino's in-house games such as dice, crash and plinko. Third-party slots and live games rely on the game provider and independent testing labs instead.

Does provably fair mean a casino is safe?

No. It only shows individual game results were not altered. It says nothing about the licence, the casino's ability to pay, withdrawal terms or security against hacks.

Why should I change my client seed?

Setting your own client seed ensures the casino's committed server seed was chosen before it knew your input. If you never change the default seed, you rely more on the casino's own honesty.

18+Gambling can be addictive, and national self-exclusion schemes do not cover offshore crypto casinos. If you need support, see our responsible gambling resources.

Related guides