🔒 Provably Fair Gaming
Every contest uses cryptographic randomness that you can independently verify.
How It Works
Before any contest, we generate a secret server seed and publish its SHA-256 hash. This commits us to that seed.
We also generate a client seed with public randomness. Both seeds determine the grid numbers.
After the contest, we reveal the server seed so you can verify:
- The server seed hashes to the pre-committed hash
- The grid numbers match the algorithm output
The Algorithm
Grid numbers (0-9 for columns and rows) are generated using HMAC-SHA256 with Fisher-Yates shuffle:
combined = HMAC-SHA256(server_seed, client_seed + ":" + nonce)
columns = fisher_yates_shuffle([0,1,2,3,4,5,6,7,8,9], combined)
rows = fisher_yates_shuffle([0,1,2,3,4,5,6,7,8,9], combined)