UA RU EN
🛡️ Cryptographic Fairness

Provably Fair — Verifiably Fair

CSFail uses Provably Fair, a system that lets any player independently verify the result of any game.

How Provably Fair Works

🔑

Server Seed

Before a session begins, the server generates a unique seed. It is hashed (SHA-256) and provided to the player — so the player can confirm the seed wasn't changed after the bet.

👤

Client Seed

The player also provides their own seed (or one is auto-generated). The client seed influences the result, so the server cannot rig outcomes for specific players.

🔢

Nonce (Counter)

Each game increments a counter (nonce). Together with the seeds, it ensures every result is unique and eliminates repetition.

📊

HMAC-SHA256 Hashing

The result is computed using the formula HMAC-SHA256(server_seed, client_seed + nonce). The result is converted to a number to determine the game outcome.

Post-game Verification

After the game ends, the server seed (unhashed) is revealed. Players can compare it against the hash they were given and independently calculate the result.

🔄

Seed Rotation

Players can change their client seed at any time. This reveals the previous server seed, ending the previous session.

📐 Verification Formula

You can independently verify the result of any game using this algorithm:

result = HMAC-SHA256(server_seed, client_seed + ":" + nonce)

The resulting hex string is converted to a number between 0 and 1, which determines the game outcome (multiplier in Crash, color in Double, etc.).

You can use any online HMAC-SHA256 calculator or write a Python/JavaScript script to verify results.

FAQ about Provably Fair

Can CSFail manipulate results?
No. The server seed is hashed and provided to the player BEFORE the bet. The server cannot change the seed after it's committed — any change would produce a different hash that the player would immediately detect.
Where do I find my seeds and results?
In your CSFail account there is a "Provably Fair" or "Verification" section. It shows your current client seed, server seed hash, and game history with all parameters for verification.
What is the Crash result probability?
The Crash game uses the formula: multiplier = 100 / (1 - r) * (1 - house_edge), where r is a pseudo-random number from 0 to 1. With a house edge of 1%. Average result — 2.41x.
Verify Fairness on CSFail →