Proof of Fairness
This page explains how PlayKami makes opening packs verifiable.
The Goal
When you open a pack, you should be able to trust that:
- The pool was real
- The odds and EV shown were accurate
- The reveal wasn't manipulated after purchase
How PlayKami Approaches This
PlayKami uses a lock → open → prove method so draws are fair.
The Process
- We lock the drop settings - Before a drop starts, we lock in the exact card pool + odds for that drop
- You lock your pack to that drop - When you buy, your pack is tied to that specific drop version so it can't be swapped
- The result is generated fairly using a mix of:
- A PlayKami "locked" secret (we can't change it after locking)
- Your info (so it isn't predictable in advance)
- A counter (so every open is unique)
- After the open, we reveal what we locked earlier (the proof)
- Everything is recorded on-chain so users and third parties can independently verify outcomes
Verifier
We built a verifier for users to verify that their pack is fair — this verifier acts as a receipt + replay button for every pack opening.
🔗 https://verifier.playkami.io/
Anyone can take on-chain data from their pack opening and re-run the exact same draw logic to confirm they got the right card.
What We Prove
1. PlayKami can't "change the outcome" after you click buy
When you open a pack, the randomness comes from two sides:
- Client seed = generated on your side (your device/browser)
- Server seed = generated by PlayKami, but committed first as a hash (a one-way fingerprint) before the opening
After the pack opens, the server seed is revealed. The verifier checks:
hash(revealed server seed) = hash that was committed earlier on-chain
In simple terms: We write a number on paper, seal it in an envelope (the hash), and only open the envelope after you pick — so we can't swap the number later.
2. The "deck + odds" were frozen at the time you opened
The verifier also checks a snapshot hash: a fingerprint of the card pool + odds used for that pack at that exact time.
So PlayKami can't do things like:
- Change the odds midway
- Remove certain chase cards right before opening
If the snapshot hash matches, it means the "game board" (available cards + probabilities) was locked when you opened.
3. It replays the draw and confirms your exact card(s)
Once the seeds + snapshot are verified, the verifier recomputes the randomness and replays the selection algorithm to see what card(s) should come out.
If the replay output matches the card IDs minted/recorded on-chain for your pack, then:
✅ The randomness was used correctly ✅ The odds were applied correctly ✅ You got the exact cards you were supposed to get