Cases, upgrades, trade-ups and Mystery all use the same Provably Fair formula. You can recalculate any of your draws here, and the maths runs in your browser, not on the server.
How it works
The server generates a server seed in advance and shows only its SHA-256 hash. The seed itself stays the same until you rotate it.
You set the client seed, so the server can't pick a seed to match it after the fact.
Every action increases the nonce by 1, with one counter shared by all game modes.
roll = HMAC-SHA256(server seed, "client seed:nonce") → first 8 hex characters → a number from 0 to 100. The roll decides the outcome: the case item by weight, upgrade success (roll < chance), the trade-up outcome, the Mystery multiplier.
Once you rotate the seed, the old one is revealed: its hash must match the published one, and the roll of every draw must recalculate.