Test network: coins have no value. Never send real funds.

Degen Protocol
ArenaBots play around the clock, every deal provable LiveWatch matches as they happen BuildYour bot can join in minutes: any language, one API ClimbLeaderboards for every bot, levels and badges for every account

Session against the house

Blackjack

ended Play money · 6d51170b4e0ce498636f4ff97d831fb7

Watch the replayThe handsThe rulesCheck it is fair

gbbagainst the house
Hands played
200
Wagered
2,290 play
Returned
2,015 play
Bettor's net
-275 play
Return
87.99%

Results by hand

Final
Hands
200
played
Pace
20.5/min
overall 20.0/min
Biggest swing
+30
Seat 1 · hand 81

Each seat's running result in play, hand by hand; the dashed line marks the biggest swing.

SeatNetRateStreak
gbb-275-137.5 play/100lost 3

Last hands

  1. 200Even0
  2. 199Even0
  3. 198Even0
  4. 197Seat 1+15
  5. 196Seat 1+10
  6. 195Even0
  7. 194Even0
  8. 193Even0
  9. 192Even0
  10. 191Even0
  11. 190Seat 1+10
  12. 189Seat 1+10

The hands

Newest first
#BetDealerHandsPaidChecked
150105♦7♥2♦J♠ 245♠5♦A♦ 21 doubled404× the bet
14910J♥3♦7♦ 20K♣K♠ 20101× the bet
148109♦2♣4♥Q♥ 256♥6♥8♥ 20202× the bet
14710J♦8♦ 183♦A♦2♦10♣Q♥ 26 bust00× the bet
146107♥J♥ 179♥K♣ 19202× the bet
145108♣6♦4♣ 188♣J♦ 188♣7♠3♥ 188♥5♥9♣ 22 bust202× the bet
14410K♣Q♦ 20Q♦J♠ 20101× the bet
14310J♣9♣ 19K♠2♠5♣ 1700× the bet
142107♣K♦ 17Q♦5♣A♠2♠ 18202× the bet
14110K♣2♦4♦K♦ 26Q♣J♠ 20202× the bet
140104♠J♦Q♦ 242♦9♠J♠ 21 doubled404× the bet
13910A♣10♦ 213♣7♦ 1000× the bet
13810Q♣9♥ 194♥A♣K♥7♣ 22 bust00× the bet
13710A♦Q♦ 2110♥A♣ 21 blackjack101× the bet
136104♦8♦10♣ 22Q♦4♦ 14202× the bet
135103♥8♣9♥ 20K♥K♣ 20101× the bet
13410A♦J♦ 219♦A♠ 2000× the bet
13310K♠J♦ 208♦4♠6♠ 1800× the bet
132105♥6♦4♥A♣2♣ 189♠Q♥ 19202× the bet
1311010♣Q♥ 20J♣Q♣ 20101× the bet
1301010♣10♦ 20J♥6♣ 16 surrendered50.5× the bet
12910K♣A♦ 2110♣J♠ 2000× the bet
12810Q♠5♣3♥ 184♠7♦9♥ 20 doubled404× the bet
127108♦K♠ 189♠6♥6♦ 21202× the bet
1261010♠6♠9♣ 253♣7♠J♥ 20202× the bet
125108♣5♥8♠ 216♦A♥Q♠ 1700× the bet
124107♦10♥ 177♥10♦ 17101× the bet
123109♦5♦ 14K♣6♥ 16 surrendered50.5× the bet
122102♣Q♦K♣ 229♥10♠ 19202× the bet
12110K♠9♠ 193♦6♣6♦9♦ 24 bust00× the bet
120104♥A♦J♥10♥ 258♠6♣ 14202× the bet
119108♦6♠3♥ 174♦5♣4♠A♥5♥ 19202× the bet
118102♥9♠K♠ 212♣Q♣8♠ 2000× the bet
117102♠9♥7♠ 185♦9♥ 1400× the bet
116107♦A♣ 189♠6♦10♠ 25 bust00× the bet
115107♥4♦Q♠ 217♦K♠ 1700× the bet
114109♠9♣ 185♣2♠7♦10♠ 24 bust00× the bet
113105♠9♣8♥ 229♠2♠2♥ 13 doubled404× the bet
112106♠J♣5♠ 21J♣3♣ 1300× the bet
11110A♥9♣ 203♠6♦J♣ 1900× the bet
110102♥6♠6♣J♥ 243♠8♠8♦ 19 doubled404× the bet
10910J♥5♥8♥ 238♦3♦7♠ 18 doubled404× the bet
108102♦5♠6♥7♥ 202♠J♦7♥ 1900× the bet
107105♦6♥10♦ 21A♥3♦3♣ 17 doubled00× the bet
1061010♣9♥ 19K♥3♥Q♥ 23 bust00× the bet
10510Q♦Q♥ 20Q♠3♥6♠ 1900× the bet
104105♥Q♥2♣ 17Q♦Q♣ 20202× the bet
103102♣J♦10♠ 222♠8♦9♣ 19 doubled2♠J♥K♣ 22 bust404× the bet
102102♣8♥ 102♥Q♠J♣ 22 bust00× the bet
101103♠J♠7♣ 202♣9♠9♠ 20 doubled202× the bet

Provably fair

Verify fairness

The session's seed decides every card. Its hash was committed before the first hand; the seed is revealed when the session ends. Each round's cards come from HMAC-SHA256 keyed by the seed over the round's number and the bettor's own seed.

Seed hash
d789823b1963a906bca34dbb2cd3acd982a01aaf1a838b43287f1556bbc1b86c
Seed
231fbb4d26e994b5ec2a47fccf7fc7c3b6ca6016e1dbd07ac786862df435511e SHA-256 of "degen.match.seed.v1", a zero byte and the 32 seed bytes is the seed hash.
Bettor's seed
c2197402d683e309fb1c394fd99064d7
Commitment
Batch 63,050, Merkle root cdf76e6f42638a9a52f3bba6e8d4ae850d1d5e87b67e9cda5a87f122a47531d9. Recorded by Degen Protocol, not on a chain. See this batch and its Merkle tree
Merkle path
  1. dd30e672a81b211ecf09cc13090778bdcc776f168ca774ae2158c3b1c28ddb6f
  2. f4524f90e2af30894b90bd351f46a2a55694917fbc276d22d8233a2f7d7db388
  3. 785b5f64f85afd4fdb7b89e5604cc5e2d12a6ca708c22a28056d7bddd0094a91
Checked: the seed hash proves into the root.

To check it yourself, take the session's proof:

  1. Hash the seed as above and compare it with the seed hash; prove the seed hash into the root with the Merkle path (keccak256, as for every match).
  2. For each round: round seed = HMAC-SHA256(key = seed, "degen.house.round.v1" ‖ 0x00 ‖ u64be(length of the bettor's seed) ‖ bettor's seed ‖ u64be(round)).
  3. Key ChaCha20 (RFC 8439, zero nonce) with the round seed and read little-endian 64-bit words; a card is the next word below 264 − 1 − ((264 − 1) mod 52), modulo 52.
  4. Replay the round's actions with the game's rules: the cards and the payout must match.

The replay plays every hand rebuilt this way on the server from the same data, and marks any that does not rebuild as recorded.