Plinko uses a Provably Fair system to ensure that every ball drop is transparent, independently verifiable, and cannot be altered after betting begins.
Each Plinko round is generated using three values:
Server seed — generated by the server and committed before the round by displaying its SHA-256 hash.
Client seed — your unique client seed.
Nonce — an incrementing value that ensures every round generates a unique result.
Because you receive the hashed server seed before placing your bet, the server cannot change the outcome afterward without invalidating the previously displayed hash.
The ball's path is generated using HMAC-SHA256 outputs. For each row of the board, the system performs the following calculation:
hmac = HMAC_SHA256(serverSeed, clientSeed:nonce:i)
direction = parseInt(hmac[0..3], 16) % 2
Where:
i represents the current row, starting from 0 up to rows - 1.
A result of 0 moves the ball left.
A result of 1 moves the ball right.
After processing every row, the total number of right movements determines the bucket where the ball lands:
bucket = sum of all directions
The resulting bucket corresponds to the payout multiplier displayed on the game board.
After the server seed is revealed (when the seed pair is rotated), you can verify previous Plinko drops in the Verify tab. By using the revealed server seed, client seed, and nonce, you can reproduce the ball's path and confirm that the result was generated fairly.
This system ensures that every Plinko drop is random, transparent, and cannot be manipulated by either the player or the casino after the server seed has been committed.
