Explainer · 10 min read

How provably fair rips work and how to check them

We may earn a commission from links on this page. How we earn money

How provably fair rips work and how to check them
Quick answer

A provably fair rip locks in the result before you open. The site commits to a server seed by showing its hash, you add a client seed, and a nonce counts each opening. Afterwards the site reveals the seed so you can recompute the result. It proves the draw was not changed, not that the odds are good.

Provably fair is a way for a rip site to prove, with cryptography, that the result of your pack was fixed before you opened it and not changed afterwards. It matters because a digital pack is revealed on a screen run by the site that sold it to you. How do you know the site did not pick a worse card after seeing what you bought?

This guide explains how provably fair works, how to check a result yourself, what a good fairness page should show, which rip sites offer it and, just as important, what it cannot tell you.

What does “provably fair” actually mean?

A provably fair system lets you confirm, after the fact, that the result of a draw was locked in before you took part. It does this with math rather than trust. You do not need to believe the site’s word. You can recompute the result yourself from numbers the site gives you.

It is a narrow guarantee. It covers the draw, meaning which outcome your opening landed on. It does not cover what the outcomes are worth or how likely the good ones are. Among the rip sites we review, five offer it: Phygitals and PackDraw, which both serve a crypto-first audience, plus LastPack, PullBox and BOXED. GotYa claims it too, but we found no public verifier.

How does the commit-reveal system work?

Most provably fair systems use a pattern called commit-reveal. There are four ingredients:

  • Server seed. A secret random value the site generates before you open anything.
  • Server seed hash. A fingerprint of the server seed, made with a one-way hash function such as SHA-256. The site shows you the hash before you open. Anyone can check that a seed matches a hash, but nobody can work backwards from the hash to the seed.
  • Client seed. A value that comes from your side. Many sites let you set it yourself.
  • Nonce. A counter that goes up by one with each opening, so every result is different even when the seeds stay the same.

Here is how they fit together. First, the site commits to its server seed by showing you the hash. Because the hash is published before you open, the site cannot swap in a different server seed later without the hash failing to match. Second, you supply the client seed, so the site does not control every input. Third, the server seed, client seed and nonce are combined and run through a formula that turns them into a number. That number maps to a position in the pack’s list of possible outcomes, and that position is your pull.

Later, usually when you rotate to a new seed pair, the site reveals the old server seed. At that point you have everything you need to rerun the formula yourself.

What does a check look like in practice?

Here is a simplified, made-up example. It does not use any real site’s formula.

  • Before you open, the site shows a server seed hash. You copy it into a note.
  • You set your client seed to a random word, and your first opening uses nonce 1.
  • The formula turns those inputs into a number between 0 and 1, say 0.9731. The pack’s outcome list says anything above 0.95 is the chase tier, so you pull a chase card. Anything lower would have landed on a cheaper tier.
  • Later the site reveals the server seed. You hash it, and it matches the note you saved. You rerun the formula with your client seed and nonce 1, and you get 0.9731 again.

If the hash did not match, or the formula gave a different number, the result was not the one the site committed to.

How do you check a result yourself?

The exact screens differ from site to site, so check the site’s own fairness page for where each value lives. The general process looks like this:

  1. Before you open, note the server seed hash the site shows you, and save a copy somewhere outside the site.
  2. Set your own client seed if the site allows it, and note that too.
  3. Open your pack and note the nonce for that opening along with the result.
  4. When you are done with that seed pair, rotate to a new one so the site reveals the old server seed.
  5. Hash the revealed server seed with the same hash function the site names, and confirm it matches the hash you saved in step 1.
  6. Combine the server seed, your client seed and the nonce using the formula the site publishes, and confirm you get the same number the site used.
  7. Check that the number maps to the outcome you actually received, using the site’s published method for turning numbers into pack outcomes.

Some sites offer a built-in verifier. That is convenient, but checking with a tool the site does not control is the stronger test.

What should a good fairness page include?

Before you rely on a site’s provably fair claim, look for these on its fairness or help pages:

  • The server seed hash is shown before you open, not after.
  • You can set and change your own client seed.
  • Each opening shows its nonce.
  • The hash function and the full formula are published, including how numbers map to outcomes.
  • Past server seeds are revealed when you rotate, and you can see your history.
  • The pack’s full pool of outcomes is listed, ideally with odds and values.
  • An independent audit or an open-source verifier exists.

Treat it as a warning sign if you cannot set a client seed, if the hash appears only after you open, or if the formula is described but not published.

Which rip sites offer provably fair draws?

Among the sites we review, five describe a provably fair system you can check, GotYa claims one without a public verifier, and five do not publish one:

Site Provably fair Other transparency
Phygitals Yes, commit-reveal with server and client seeds Per-card odds not published in its FAQ
PackDraw Yes, with a nonce; no third-party audit Battles use a future EOS block as an input
LastPack Yes, committed server seed hash, client seed and counter, with a verifier page; no third-party audit Odds by rarity with value ranges, shown before you buy
PullBox Yes, HMAC-SHA512 with server seed, client seed, salt and counter; no third-party audit Odds shown for every prize in every box
BOXED Yes, client seed, server seed revealed after 24 hours, counter and salt; no third-party audit Full drop table with every item’s odds on every box
GotYa Claimed in its FAQ; its terms say only “may”, and no public verifier found Odds brackets and expected value on every pack
Courtyard None found Per-card odds not disclosed in its terms
Arena Club No Pack checklists with per-card hit rates and a live “Hit Feed”
Rip.fun None found “Regular Rip” opens a real sealed pack on video
ClutchPacks No seed check; every pull is recorded on Polygon Full checklist and tier odds for every pack, plus pull statistics from the blockchain record
MNSTR None published Odds and value ranges for every pack

Phygitals documents a commit-reveal system that uses a server seed and a client seed, and says each user can verify their own results.

PackDraw uses a client seed, server seed and nonce, according to BetterChecked. BetterChecked and PackSpy both note that there is no third-party audit of the system. See our PackDraw review for the legal and access issues that come with the site.

LastPack publishes a hash of its server seed before each pull. After the pull, the seed is revealed and combined with your client seed and a counter to pick the card from the pack’s weighted list. A verifier page lets you check the math, and you can rotate your seed on your fairness page. No third-party audit has been published. LastPack also shows each pack’s odds by rarity before you buy.

PullBox combines a server seed, which stays hidden until after the roll, with your client seed, a salt and a counter, using the HMAC-SHA512 hash function. A verify button lets you check the result, and every box lists each prize with its odds. No third-party audit has been published.

BOXED combines your client seed, which you can change, with a server seed whose hash is shown before you play, a counter and a per-account salt. The server seed is revealed 24 hours later so you can check the result, and the system covers boxes, battles and its other games. Every box also shows its full drop table with each item’s odds. We found no third-party audit.

GotYa says in its FAQ that it publishes a hash of a secret server seed before you buy and reveals the seed afterwards so you can check the draw. Its terms are weaker, saying only that it “may” use such a system, and we found no public verifier page or third-party audit, so we don’t count it as provably fair. Each pack page does show value brackets with their chances and an expected value.

Arena Club takes a different approach to transparency: a published checklist for each pack with per-card hit rates, and a live “Hit Feed” showing the grails still left, according to RipRanks and Fox Business.

Rip.fun opens a real sealed pack in its vault on video in its “Regular Rip”, while its “Instant Rip” uses results that were scanned in advance.

ClutchPacks does not offer a seed check. Its terms say draws use “cryptographically secure methods” with predetermined odds, and every pull is minted on the Polygon blockchain, so there is a public record of what was pulled. It also publishes a full checklist and tier odds for every pack, and pull statistics taken from that record. There is no third-party audit.

MNSTR publishes no provably fair system. It calls its draws fair and random within set odds, but offers no seeds, hashes or third-party audit to check a single pull. It does show the odds and value range for each rarity band on every pack.

What doesn’t provably fair prove?

This is the part that is easy to miss. A provably fair system proves that your draw was not changed. It does not prove any of the following:

  • That the odds are good. A pack can be perfectly provably fair and still be full of low-value items with a tiny chance at the chase card.
  • That the listed card values are accurate. The system proves which item you got, not what it is worth.
  • That the pool stays the same. It does not stop a site from changing the list of outcomes for future packs.
  • That the site will honor buyback, shipping or withdrawals. Those depend on the business, its terms and its track record.
  • That the system is built correctly. Without an independent audit, you are relying on the site’s own implementation.

In short, provably fair answers “was this result rigged after I bought?” It does not answer “is this pack worth buying?” For that, you need odds, card values and buyback terms. Our expected value guide covers how those fit together, and our buyback rates comparison covers the exit side.

Is a published checklist or video a good substitute?

They solve different problems. A published checklist with hit rates, like Arena Club’s or ClutchPacks’, tells you the odds before you buy, which is exactly what provably fair does not. But you are trusting the site that the draw follows the checklist.

A video of a physical pack being opened, like Rip.fun’s Regular Rip, is easy to follow, but it is only as strong as the video itself, and you cannot recompute anything from it.

The strongest setup combines published odds with a verifiable draw. Among the sites we review, LastPack, PullBox and BOXED offer both. When a site offers only one of the two, weigh which question matters more to you.

How should you use this when choosing a site?

Treat provably fair as one trust signal among several, not as a seal of approval. Check whether the site publishes odds or a checklist, whether its buyback terms are clear, what shipping costs, and what its review and legal history looks like. Transparency makes up 20% of each site’s score on how we rank, and our rip site rankings weigh all of these together. To see a pack reveal without spending anything, try the free demo pack in our Rip Room.

And remember that pack opening involves chance whether a draw is verifiable or not. A fair draw can still lose you money. Set a budget before you open anything and stop when you reach it. If opening packs stops feeling like fun, call 1-800-GAMBLER for free, confidential help, or visit our responsible play page.

FAQ

Does provably fair mean the odds are fair?

No. It only shows that the result of your draw was fixed before you opened the pack and was not changed afterwards. It says nothing about how valuable the cards in the pool are or how likely the good ones are.

Which rip sites use provably fair draws?

Among the sites we review, Phygitals, PackDraw, LastPack, PullBox and BOXED describe provably fair systems. GotYa's FAQ claims one, but its terms say only that it may use one and we found no public verifier. Courtyard, Arena Club, Rip.fun, ClutchPacks and MNSTR do not publish one, though Arena Club and ClutchPacks publish pack checklists, MNSTR shows odds for every pack and Rip.fun opens sealed packs on video.

What is a server seed hash?

It is a fingerprint of the site's secret seed, shown to you before you open. Once the seed is revealed, anyone can hash it again and check it matches, which proves the site did not swap the seed after you opened.

Do I need to change my client seed?

You do not have to, but setting your own client seed is what stops the site from choosing every input. If a site lets you set it, pick a random value and change it from time to time.

Can a site still cheat with a provably fair system?

The system makes it very hard to change a single result after the fact. It does not stop a site from setting poor odds, changing what is in a pack pool between openings or refusing to honor buyback, so those need other checks.

Is GotYa provably fair?

We could not confirm it. GotYa's FAQ says it publishes a hash of a secret server seed before you buy and reveals the seed afterwards, but its terms say only that it may use such a system, and we found no public verifier page or third-party audit. It does show odds brackets and expected value on every pack.

Sources

Related guides