Provably Fair
Provably fair is a system that lets you prove game results haven't been rigged. It combines two ideas: a client seed you control and a commitment scheme built on cryptographic hashing. Your client seed guarantees that your own input shapes every result, while the commitment locks us into a server seed chosen before you played, so we can't change it afterwards. Together they remove the need to take our word for anything.
Every outcome is locked in before a round starts. We commit to our secret server seed by showing you its hash up front, and we even commit to the seed after it: the one that takes over on your next rotation is generated ahead of time, with its hash visible in your Fairness settings before you choose a new client seed, so it can't be picked in reaction to yours. After each game, you can verify the result yourself to confirm it was fair. The sections below break down exactly how each game generates its outcome.
Every case opening on BloxCash is determined by three inputs: a nonce, a client seed, and a server seed. Because these values are locked in before each round, neither you nor we can influence the result after the game starts.
You can independently verify any past round to confirm that nothing was tampered with. Below is a breakdown of each component and how they work together.
Nonce
The nonce is a counter that starts at 0 and goes up by 1 with every single-player round you play across cases, dice, mines, and plinko (blackjack consumes one nonce per hand). Claiming a level reward case uses the same counter, and a multi-case open consumes one nonce per case, so a 4x open advances the nonce by 4. It guarantees that even with the same seeds, every round produces a different outcome. Your current nonce is always visible in your Fairness settings before a game begins.
Client Seed
This is a value you control. You can change it from your Fairness settings whenever you have no mines or blackjack game in progress. A client seed can be 1 to 64 printable characters, not all whitespace, and must differ from your current one. The fairness guarantee works because the server seed is committed (its SHA-256 hash is shown to you) before any round is played. Since the server seed can't be changed after it's been committed, BloxCash can't manipulate outcomes regardless of knowing your client seed.
Changing your client seed triggers a seed rotation: the old server seed is revealed so you can verify all rounds played under that seed pair, the pre-committed next seed becomes your active server seed, and the nonce resets to 0. A new next seed is committed at the same time, so there is always one lined up whose hash you can see before you choose a client seed. You can also rotate the server seed on its own from the same page without changing your client seed, and rotations are rate limited.
Server Seed
Your first server seed is generated when your account is created; every one after that is generated and committed in advance, becoming active when you rotate. The active seed is reused across many rounds with an incrementing nonce. You can see its SHA-256 hash at any time in your Fairness settings, along with the hash of the next seed already committed for your upcoming rotation. The actual seeds stay hidden until they are rotated out.
To verify past rounds, rotate your seeds in your Fairness settings. This reveals the old server seed, letting you confirm it matches the hash you were shown. Hash the revealed seed with SHA-256 yourself. If it matches, the seed was never changed and all rounds played under it were fair.
You can do this with any SHA-256 tool, for example sha256-hash-generator.vercel.app: paste the revealed server seed into the input box and the published hash into the verify box, and confirm they match.
How the Result Is Determined
The winning item is computed in four steps:
- Compute
HMAC-SHA256using the server seed as the key andclient_seed:nonce:0as the message (the trailing 0 is a round counter, which increments only when a game needs more random data). This produces a 64-character hex string. - Take the first 8 characters of that hex string and convert them to an integer.
- Divide by
4,294,967,296(232) to get a roll between 0 and 1. - Walk through the case's items in the order shown by the verification endpoint (sorted by item ID), adding up each item's probability as you go. The first item whose running total exceeds the roll is the item you unbox.
Every item's exact probability is public, so you can recompute both the roll and the item it lands on. The same inputs always produce the same result.
Verification Tool
Loading verification tool...
Manage your seeds, view your current nonce, and rotate your server seed.
Fairness settings →How Provably Fair Gaming Works
Most gaming sites ask you to trust that their results are random. A provably fair system replaces that trust with arithmetic you can run yourself. Every round on BloxCash is computed from values that are fixed and published before you play, so a result can be reproduced afterwards by anyone holding the same inputs, and any tampering shows up immediately as a hash that no longer matches.
The idea rests on a commitment scheme. We generate a secret server seed and publish its SHA-256 hash up front. A hash is one way, so the published value tells you nothing about the seed itself, but it does pin us to that exact seed: reveal a different one later and the hash will not match. Your own client seed enters the same calculation, so no outcome can be shaped around you either.
Where the Randomness Comes From
Single player rounds draw on three inputs. The server seed is ours and stays hidden until it is rotated out, the client seed is yours and can be changed at any time, and the nonce is a counter that increases with every round so the same seed pair never repeats a result. Those three are combined with HMAC-SHA256, and the resulting bytes are mapped to whatever the game needs, a roll between 0.00 and 99.99, a set of mine positions, a shuffled shoe, or a walk through a case's item probabilities.
Case battles add a fourth input, because a shared round has to be unpredictable to every player at once. The server commits to an upcoming EOS block before it exists and announces its number, and that block's ID becomes the public seed once the network produces it. Nobody at BloxCash chooses it, and nobody playing can influence it.
Verifying a Result Yourself
Verification is a two step check. First confirm the seed was never swapped: rotate your seeds, take the revealed server seed, hash it with any SHA-256 tool, and compare that against the hash you were shown before you played. Then reproduce the round itself by feeding the revealed server seed, your client seed, and the round nonce into the verification tool on this page, which runs the same calculation the site ran.
Everything the check needs is visible while you play. Your Fairness settings show the hash of the active server seed, the hash of the seed already committed for your next rotation, and your current nonce, and a battle shows its EOS block number from the moment it is committed. Nothing is revealed only after the fact except the server seed itself, which is the one value that has to stay secret for the round to mean anything.
Frequently Asked Questions
What does provably fair mean on BloxCash?
It means you can prove a result was not rigged instead of taking our word for it. Every round combines a server seed we commit to in advance by publishing its SHA-256 hash, a client seed you control, and a nonce that rises with each round. Because the server seed is locked in before you bet, it cannot be swapped afterwards, and because your own seed feeds the same calculation, no outcome can be tailored to you.
How do I verify a game result?
Rotate your seeds in your Fairness settings, which reveals the server seed that was active. Hash that revealed seed with SHA-256 and compare it to the hash you were shown before you played. If the two match, the seed was never changed, and you can then reproduce any individual round in the verification tool on this page using that server seed, your client seed, and the round nonce.
What are the server seed, client seed, and nonce?
The server seed is our secret value, published as a hash before play and revealed when you rotate. The client seed is yours, and you can change it whenever no mines or blackjack game is in progress. The nonce is a counter that starts at 0 and goes up by one every round, so the same pair of seeds still produces a different outcome each time.
Can BloxCash change an outcome after I place a bet?
No. The active server seed is committed before the round, and the seed that replaces it on your next rotation is committed at the same time, so neither can be picked in reaction to your client seed. Changing either one would break the published hash, which you can check for yourself at any point.
How do I change my client seed or rotate my server seed?
Both live in your Fairness settings. Changing your client seed rotates the pair: the old server seed is revealed so you can verify past rounds, the pre-committed next seed becomes active, and your nonce resets to 0. You can also rotate the server seed on its own without changing your client seed. Rotations are rate limited.
Why do case battles use the EOS blockchain?
A battle needs randomness that no player and no operator can predict, so the server commits to a specific upcoming EOS block, head block plus three, and announces its number before that block has been mined. The block ID becomes the public seed, combined with the server seed as HMAC-SHA256, and you can look the block up on a public explorer to confirm it matches. If the EOS network cannot be reached the battle fails and every player is refunded, with no fallback to server-only randomness.
Does provably fair mean I am more likely to win?
No. Provable fairness shows that a result came from inputs committed in advance and was not manipulated. It does not remove the house edge built into each game, and every round is independent of the ones before it.