Provably fair, checked in your browser
Don't trust us.
Check us.
Every card, roll and spin at Degen Den is locked in before you bet. Paste a game code and your own browser replays the game from its seeds, with the same code the bot plays with. If a single card had been changed, you would see it.
Every game shows its code under the result in Discord, and /game looks one up there too.
- 19games, every one checkable
- HMAC-SHA256the standard crypto casinos use
- 100%worked out on your device
- 0trust needed in us
No game code needed
Seed checker
Put in any seeds and see exactly what they deal, for every game. Your server seed is revealed in Discord with /fair (change seeds) and for live tables the moment a round ends.
The method
How provably fair works
The same scheme the big crypto casinos use. Here is the whole of it, nothing left out.
-
1
We lock it in
Before you play, the bot picks a secret server seed and shows you its SHA-256 hash. The hash is a fingerprint: it pins down the seed without giving it away, and no other seed has the same one.
-
2
You mix in your own
Your client seed goes in too, and you can change it whenever you like with
/fair, so we can never line results up in advance. The nonce counts your games: 0, 1, 2 and on. -
3
The numbers come out
Every game's random numbers are HMAC-SHA256(server seed,
client seed:nonce:round). They decide every card, roll and spin, and nothing else does. -
4
We reveal, you check
Change seeds with
/fairand the old server seed is revealed. Paste any game code above: your browser checks the seed against its hash and replays the game.
From seeds to numbers
bytes = HMAC_SHA256(key = server seed,
message = "client seed:nonce:round")
number = b0/256 + b1/256² + b2/256³ + b3/256⁴
Each round of HMAC gives 32 bytes, so 8 numbers from 0 to 1. Round 0 gives numbers 1 to 8, round 1 the next 8, and so on, for as many as a game needs.
A card is floor(number × 52): rank = floor(card ÷ 4) from 2 up to ace, suit = card mod 4 in the order ♦ ♥ ♠ ♣. Every card is a fresh draw, an endless deck.
Live tables
Every round at a live table gets its own server seed. Its hash is on the table before anyone bets, and the seed is revealed the moment the round ends, so every live game can be checked straight away.
The client seed is every betting player's own client seed, joined together (1:yours|2:theirs), so no single player and not the house can steer a round. The nonce is 0.
Your bets never change the cards: everyone at the table gets the same draw.
How each game turns numbers into a result
Ready to play?
Live blackjack, baccarat, roulette, craps, dragon tiger and horse racing with the whole server, plus crash, mines, plinko, dice, keno and more right in Discord. Deposit and withdraw in SOL, LTC or ETH.
Join Degen Den on Discord