🦙
Llamabet
Games▾
More·Articles▾
Sui Mainnet
Llamabet/Articles/Provably-Fair Slots: How to Verify a Spin Yourself
← Back to articlesSlots · Provably fair on Sui · Aug 5, 2026

Provably-Fair Slots: How to Verify a Spin Yourself

Every slot machine ever built asks you to trust that the reels stopped where the RNG said they should. Provably-fair slots replace that trust with arithmetic: the seed is committed on-chain before you spin, revealed after, and you can re-derive the exact five symbols and re-price them against the paytable in your own browser. If the operator changed anything, the check fails — and you do not have to ask permission to run it.

Spin and verify →

Commit, mix, draw, reveal

A rotating server seed is generated and its SHA-256 hash is published on the Sui blockchain before anyone spins. The seed itself stays secret — publishing it early would let anyone precompute every upcoming spin. When you play, we hash your client seed, the secret server seed, your bet's on-chain transaction digest and its timestamp together into a spin hash. That hash keys an HMAC-SHA256 keystream, five values are drawn from it, and each is mapped onto the 40-position reel strip. Once the seed rotates out of service we publish it, and every step above becomes reproducible by anyone. Because the outcome depends on both seeds, neither side can steer it: we cannot pick reels to beat you because we do not know your seed until you bet, and you cannot pick reels to beat us because the server seed is fixed and its hash is already on-chain.

Why the sampling method matters more than it sounds

Turning a 32-bit random number into a position from 0 to 39 looks like a job for the modulo operator, and doing it that way would be a real, quiet bias: 40 does not divide 2^32 evenly, so the first 16 strip positions would come up slightly more often than the last 24. On this strip that shifts the house edge in our favour by a fraction of a percent, invisibly, forever. Instead we use rejection sampling — discard any draw landing in the short unusable tail and draw again — which costs a redraw with vanishing probability and buys exact uniformity. It is the same sampler our card shoes use, so there is one implementation in the codebase to audit rather than two lookalikes that can drift apart.

Verification that re-prices, not just re-hashes

Most fairness widgets confirm that a hash matches a seed and stop there. That proves the seed was not swapped; it does not prove the recorded outcome was the outcome that seed produces. Our verifier goes further: it rebuilds the keystream with Web Crypto, re-derives the five symbols, and then re-prices them against the paytable to confirm the payout you were sent is the payout those symbols earn. Four separate legs are reported independently — commitment, spin hash, reels, payout — so you can see which part of the claim holds rather than a single green tick. A record whose symbols were edited after the fact fails the reels check even though every hash in it still agrees.

What provable fairness does not cover

Being able to verify a spin is not the same as the game being cheap, and it is worth being blunt about that. Slot Machine carries a 6.00% house edge whether or not you check the maths, and verification does nothing to change your expected result. Provable fairness answers exactly one question — did the operator deal honestly — and leaves the others to you: is the price fair, is the volatility one you can stomach, is the stake one you can afford to lose. It also does not cover solvency, which is a separate guarantee: before the reels are drawn, the table reserves the full 100x grand prize against the house balance and refuses the spin if it cannot cover it, so a jackpot is never dealt that could not be paid.

Frequently asked questions

How do I verify one of my own spins?

Open History on the slots table, pick a spin, and press Verify. Everything runs locally in your browser using Web Crypto — no call back to us — and it reports four separate results: the seed commitment, the spin hash, the five reel symbols, and the payout re-priced from those symbols.

Why can I not verify my most recent spin immediately?

Because the server seed is still in service. Releasing a live seed would let anyone precompute upcoming spins at every table on the site, since the seed is shared casino-wide. Verification unlocks on a spin once its seed has rotated out and aged past the reveal delay.

Can I change my client seed?

Yes, at any time from the fairness panel. Your client seed is one of the four inputs to the spin hash, so changing it changes every subsequent outcome. It is what makes the guarantee two-sided rather than a promise from us — with your own seed in the mix, we could not target you even if we wanted to.

Sources

  • Sui documentation — cryptography and on-chain verification
Found this useful? Share it with the timeline.
Help a fellow degen play provably fair. GM.
𝕏 Share on X

Keep exploring

How to Play Slots: Five Reels, Eight Animals, One Grand PrizeHow to Verify a Casino Game Was FairServer Seed, Client Seed, Nonce: Provably-Fair Mechanics Explained
← All articlesAll gamesDocsProvable fairnessPlay responsibly