Skip to main content

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

  1. We lock the drop settings - Before a drop starts, we lock in the exact card pool + odds for that drop
  2. 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
  3. 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)
  4. After the open, we reveal what we locked earlier (the proof)
  5. 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