Overnight.Bet
Provably fair, in one round
Play a single play-money dice round without an account, then verify the result yourself with nothing but a hash function.
Play-money only 18+ No account needed
This is play money. Overnight.Bet is a free, play-money product. There are no deposits, no payouts and no real-money wagering. Nothing on this page is a purchase, a stake or a prize, no balance is created and nothing is credited to anyone. The numbers below are an illustration of a single round.
18+. This demonstration of a gambling mechanic is intended for adults only. If play stops being entertainment, see responsible play.
No account, nothing stored. This page needs no registration and no login. It writes nothing: no account row, no bet row and no counter. It sets no cookie, and the process serving it never receives your IP address. The ordinary web-server and reverse-proxy logging described in the privacy notice applies here as on every page.
Step 1 — the server has already committed
A server seed for this round was generated before you choose anything, and only its SHA-256 hash is shown. The server cannot change the seed afterwards without breaking that hash, so it cannot pick a result once it knows your input.
- Round id
- 58702404a6a4641a1b0eb3f8da2e4aac
- Server seed hash (the commitment) — sha256(server_seed)
- d2029d1d19d8797039a9acaacd88cacf91df3801c9ea8130e00705a09769a526
- Server seed
- hidden until the round is played
Copy the commitment now if you like — step 3 reveals the seed and you can check that its SHA-256 is exactly this string.
A commitment belongs to the running demo process. If this small service is restarted, an older round id is refused by name rather than answered with a seed that would not match the commitment you were shown — just start a fresh round.
Step 2 — your input
Step 3 — the scheme you will be checking
This is the same HMAC scheme the real games use, and the same code path:
the demo imports byte-identical copies of the casino's own fair.js and
games/dice.js.
server_seed = 64 hex characters, committed in advance as sha256(server_seed) client_seed = whatever you type below nonce = the round counter you choose digest = HMAC_SHA256(key = server_seed, message = "<client_seed>:<nonce>:0") float = first 4 bytes of digest, big-endian, divided by 2**32 roll = floor(float * 10001) / 100 -> 0.00 .. 100.00
The house edge on dice is 1%: the payout multiplier is 99 / win-chance-in-percent.
In this demo that multiplier is shown for illustration only — there is no stake and no payout.
Machine-readable
Add ?format=json to either route to drive this from a script.
curl -s "https://overnight.bet/demo/provably-fair?format=json" curl -s "https://overnight.bet/demo/provably-fair/play?round=58702404a6a4641a1b0eb3f8da2e4aac&clientSeed=2d95e6667d0c54fe&nonce=0&mode=over&target=50.50&format=json"