To verify a DiceCity bet, set your client seed, copy the hashed server seed that then shows, play, and rotate your seed pair to reveal the server seed. Paste the server seed, your client seed and the bet number into the free checker on our Fair play page: the seed must match the hash, and the result must match your bet.
Last checkedStep by step
Open the Fairness window
In any DiceCity game, open "Seeds and verification".Set your client seed
Type your own client seed and press Change. This starts a new seed pair: a new server seed is locked in, and your seed goes into every result from now on.Copy the hash
Now copy the "Active server seed (hashed)". This is the pair you are about to bet on. Copy it after you change your seed, never before.Play
Each bet on this seed pair gets the next bet number: 0, 1, 2 and so on.Rotate the seed pair
Press "Rotate seed pair". The server seed you bet on is now shown under "Previous seeds", and a new hashed one takes its place.Check it
Paste the server seed, your client seed and the bet number into the checker on our Fair play page, or use the game's own Verify tab. The SHA-256 of the server seed must equal the hash you copied, and the result must equal your bet's.
The checker is on the Fair play page. It needs no account and runs in your browser.
Where you find each value
| Field | Where you find it |
|---|---|
| Server seed hash | Fairness window, Seeds tab: "Active server seed (hashed)". You see it before you bet. Changing your client seed starts a new pair with a new hash. |
| Client seed | Fairness window, Seeds tab: "Client seed". It is yours: change it to anything you like. |
| Bet number (nonce) | Counts up by one with every bet on a seed pair. The Seeds tab shows how many bets the pair has had. |
| Server seed | Hidden while you play. Rotate the seed pair and it shows under "Previous seeds". |
How the result is made
DiceCity games are provably fair. Each result is the HMAC-SHA256 of our server seed, your client seed and the bet number. You see the hash of our server seed before you bet. When you change your seed, we show the old server seed, so anyone can recompute the result and check it.
Exactly: the result's bytes are HMAC-SHA256 with the server seed as the key and this message, for bet number 42 with the client seed “lucky-street-7”:
lucky-street-7:42:0
The last number is the round. It is 0, and goes up by one only when a game needs more than 32 bytes for one bet. Each 4 bytes are read as one whole number (big-endian) and divided by 232, which gives a number from 0 up to 1. Each game turns those numbers into its result with its own rules, so use our checker, which runs each game's own rules, for the final result.
The checker covers 24 games: every game that uses your seeds.
Crash and Slide: a hash chain
Crash and Slide do not use your seeds. Every round is one result for everyone, taken from a long chain of hashes made in advance. Hash a round's hash with SHA-256 and you get the round before it, so no round could be changed once the chain was made. Check a round inside the game, under Fairness.
Blackjack
Blackjack uses a seeded shuffle: the whole shoe is shuffled from the seeds before the hand. How to check a hand, with the exact algorithm, is on the Fair play page.
Questions
Do I need an account to use the checker?
No. The checker on the Fair play page is open to everyone and runs in your browser. You need the seeds and the bet number from your own bet.
Why do I have to rotate my seeds first?
While a server seed is in use it stays secret, or anyone could work out the next result. Rotating the seed pair retires it and shows it, so you can check every bet you made with it.
Can DiceCity change a result after I bet?
No. You see the hash of the server seed before you bet, so the seed cannot be swapped later. Your client seed is yours, so DiceCity cannot pick your result.
How do I check Crash and Slide?
Crash and Slide use a hash chain, not your seeds. Open the game's Fairness window and check a round there: its hash, hashed again, must give the round before it.