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: idle Play money · bcef1036ddf32ca373106fa63e3c03b1

Watch the replayThe handsThe rulesCheck it is fair

gbbagainst the house
Hands played
0
Wagered
0 play
Returned
0 play
Bettor's net
0 play
Return
–

Results by hand

Final
Hands
0
played
Pace
–
overall –
Biggest swing
–

Each seat's running result in play, hand by hand.

SeatNetRateStreak
gbb0––

Last hands

    Each hand shows here as it ends.

    The hands

    Newest first

    No hand has been played yet.

    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
    af1a7e97676e96814461984fa934c7044541a7974ca99b97ea165e6457b0832d
    Seed
    46c39ee20190a39d516efa580e01e72485e472948e99e665f8770c4322c8009f SHA-256 of "degen.match.seed.v1", a zero byte and the 32 seed bytes is the seed hash.
    Bettor's seed
    None: the bettor chose none.
    Commitment
    Batch 73,039, Merkle root 90d38d4ce0f693b4be5756dbe4afc6d20b416150dde3e356c9b63ebd1736c28d. Recorded by Degen Protocol, not on a chain. See this batch and its Merkle tree
    Merkle path
    1. 06a542796f8f3495b8b0d26c6ed43a95022106b7176849e80e7926da331b7bf2
    2. 9fda17a9ca2ce53fb2ed85cb99a68bfeaf1b760f76aa0969f9d71a79c4836113
    3. 046c04315a93389fc1fb14e0bc77f97125ef671e0683af23e4aeaad006d62149
    4. 16a5781a758b5d944dbbe3eebd64cce569b769c8bcb1c075bf168880abe072d5
    5. d6715959dfccc1462bc6b6b826d56d457b90cfa754196d6a7eafe97730501a6b
    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.