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 · 18b4fda07b1937fecbe4d8fde84b831b

Watch the replayThe handsThe rulesCheck it is fair

gbbagainst the house
Hands played
200
Wagered
2,240 play
Returned
2,285 play
Bettor's net
+45 play
Return
102.01%

Results by hand

Final
Hands
200
played
Pace
19.8/min
overall 20.0/min
Biggest swing
-30
Seat 1 · hand 10

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

SeatNetRateStreak
gbb+45+22.5 play/100won 3

Last hands

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

The hands

Newest first
#BetDealerHandsPaidChecked
5010J♥Q♠ 2010♦6♦ 16 surrendered50.5× the bet
4910A♦8♣ 199♠7♠ 16 surrendered50.5× the bet
4810Q♦7♣ 178♥2♠K♥ 20202× the bet
47106♠K♦J♣ 263♦Q♣ 13202× the bet
46106♥4♠5♦4♠ 197♥K♦ 1700× the bet
45106♥J♠2♦ 182♣8♠2♥ 12 doubled00× the bet
44104♥K♠5♣ 199♦A♥ 20202× the bet
4310J♣3♥7♥ 208♦A♥ 1900× the bet
4210K♥4♠J♦ 248♥5♦5♦ 18202× the bet
41106♦Q♦J♦ 264♠A♥8♣ 13 doubled404× the bet
4010K♦6♥ 165♣J♦ 15 surrendered50.5× the bet
3910J♦J♣ 206♠5♠J♦ 21 doubled404× the bet
38104♥2♣A♦ 172♥8♠4♥ 14 doubled00× the bet
3710Q♦10♠ 207♥9♦ 16 surrendered50.5× the bet
36109♦J♠ 194♥Q♠A♠10♠ 25 bust00× the bet
35107♥K♠ 1710♦Q♥ 20202× the bet
34102♠3♥3♠7♠5♠ 20Q♦8♠ 1800× the bet
3310K♥A♠ 21A♦10♦ 21 blackjack101× the bet
3210A♣9♠ 204♠4♥8♣9♠ 25 bust00× the bet
3110A♣3♥7♣ 21J♠3♣4♦ 1700× the bet
3010J♣9♥ 1910♣K♥ 20202× the bet
29107♠5♥8♥ 203♣9♠7♦ 1900× the bet
28103♦A♦K♥10♦ 245♥Q♦ 15202× the bet
2710J♠5♠J♣ 254♠7♠3♠ 14 doubled404× the bet
26105♣Q♥10♥ 254♣5♥J♣ 19 doubled404× the bet
25109♣K♦ 199♥3♠6♦ 1800× the bet
24109♣5♣J♥ 247♦8♠5♠ 20202× the bet
23104♥Q♦K♠ 249♦K♥ 19202× the bet
22109♣8♥ 173♦10♣J♥ 23 bust00× the bet
2110Q♠7♥ 177♠9♦ 16 surrendered50.5× the bet
20109♠3♠6♣ 187♠6♠6♥ 19202× the bet
19102♥5♣Q♠ 178♣10♣ 18202× the bet
1810J♥4♣9♠ 238♥J♦ 18202× the bet
17103♦6♥9♣ 182♣7♥7♦ 16 doubled00× the bet
16107♠5♥10♥ 2210♦9♣ 19202× the bet
15102♥3♦8♠5♠ 183♣Q♥ 133♠5♠8♥ 1600× the bet
14106♠A♠ 176♠J♣ 1600× the bet
13102♠6♦5♠6♥ 197♠10♥ 1700× the bet
1210Q♥3♠4♥ 1710♦10♦ 20202× the bet
1110J♣9♥ 194♦2♣3♣3♥K♦ 22 bust00× the bet
10104♥9♦A♠6♠ 202♣7♠4♥ 13 doubled2♥K♥ 1200× the bet
910J♠4♠ 146♥Q♣ 16 surrendered50.5× the bet
810K♥8♥ 188♥3♦8♠ 19 doubled404× the bet
710Q♦3♥9♠ 223♦8♠2♦ 13 doubled404× the bet
61010♣9♠ 19J♥2♥6♦ 1800× the bet
5107♠4♠ 116♥8♥10♦ 24 bust00× the bet
410K♠Q♥ 20J♠6♥ 16 surrendered50.5× the bet
3109♦Q♣ 19K♥A♠ 21 blackjack252.5945× the bet
2106♦A♦ 172♠4♦5♦2♦ 1300× the bet
110A♠Q♦ 216♥7♠ 1300× 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
dc6e2904424e3948f3c0e0f8d16bec9985ec18f363dcbf2f85aa9746533843cb
Seed
749481e26d1328dc7a326b2c6d047c23d0be8c36aa98807b745f1e6548933102 SHA-256 of "degen.match.seed.v1", a zero byte and the 32 seed bytes is the seed hash.
Bettor's seed
24b10d3de0995e7162a2c1533a59088b
Commitment
Batch 64,668, Merkle root 3ff8a8af1ae715981f9d4211a7d4ea2d33130610db6d23df9e715604341c3f81. Recorded by Degen Protocol, not on a chain. See this batch and its Merkle tree
Merkle path
  1. b485a820a036575bcfb8f0299a711452eb55e8bfdf05c4acf75e9ee3443962b4
  2. 9f57575a13501f3b08ab5985895be5a03e6557e171673467666c285d2e1f7145
  3. fc3a08cbc7df66d8495f3fd81bd3415b0989ae4e293cfbc460a254cbd37664ab
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.