Dice uses a Provably Fair system to ensure that every roll is transparent, independently verifiable, and cannot be altered after betting begins.
Each Dice result is generated using three values:
Server seed — generated by the server and committed before the roll by displaying its SHA-256 hash.
Client seed — your unique client seed.
Nonce — an incrementing number that ensures every roll generates a unique result.
Because you receive the hashed server seed before placing your bet, the server cannot change the outcome after the fact without invalidating the previously displayed hash.
The Dice roll result is determined using the following calculation:
hmac = HMAC_SHA256(serverSeed, clientSeed:nonce)
roll = floor((parseInt(hmac[0..8], 16) % 1e6) / 100) / 100
The generated value is then used as the Dice roll result within the 1–100 range.
After the server seed is revealed (when the seed pair is rotated), you can verify previous Dice rolls in the Verify tab. Simply compare the revealed server seed with the previously displayed hash and repeat the calculation to confirm that the roll result was generated fairly.
This system ensures that every Dice roll is random, transparent, and cannot be manipulated by either the player or the casino after the server seed has been committed.
