🔐

Provably Fair System

Every bet outcome on CryptoBet is cryptographically verifiable. You can prove any result is fair without trusting us.

🔑 How It Works

1
Server Seed: Before each bet, our server generates a random seed. We show you the SHA-256 hash — this commits us to the result without revealing it.
2
Client Seed: You provide a client seed (we generate a random one by default, but you can change it). This ensures you influence the outcome.
3
Nonce: An incrementing counter for each bet so every bet produces a different result even with the same seeds.
4
Result Formula: HMAC-SHA256(clientSeed:nonce, serverSeed) → float [0,1) → scaled to game outcome.

📋 Verification Formula

# Generate result float:

hash = HMAC-SHA256(serverSeed, clientSeed + ":" + nonce)

int = parseInt(hash.substring(0, 8), 16)

float = int / 0xFFFFFFFF # [0, 1)

# Verify server seed commitment:

SHA256(serverSeed) == serverSeedHash

🔍 Verify a Bet