SkillClassics

Fair Randomness

When a match involves dice or a shuffle, the outcome isn't something you have to take our word for. It's locked in before play starts, and you can check it for yourself once the match is over.

Cryptographic Commitment Scheme · In-Browser Verification · Patent pending (AP 2026 17028)

Where Randomness Matters

Only two of our four games involve any randomness inside the game. Backgammon rolls dice and Gin Rummy shuffles a deck — both use the fairness system described on this page. In Chess and Go, every game outcome comes entirely from the moves players choose. In tournaments of three or more players, byes and first-round pairings are drawn at random: that decides who plays whom, never the result of a game.

Backgammon

Dice rolls
Verifiable after the match

Gin Rummy

Card shuffle
Verifiable after the match

Chess

None inside the game

Go

None inside the game

What Verifiably Fair Means

Before a single die is rolled or a card is dealt, the platform publishes a cryptographic commitment that locks in the randomness for the entire match. Think of it as a sealed envelope handed to both players at the start: its contents are fixed from that moment on, but nobody can peek inside until the match is finished.

That commitment can't be changed once play begins — not by us, and not by your opponent. When the match completes, the values behind the commitment are revealed, so anyone can go back and recheck every roll or every shuffle after the fact.

Commit → Play → Verify

Every randomized match follows the same five-step lifecycle:

Commitment Published
Before play
Match Plays Out
Rolls / shuffle
Result Recorded
Match ends
Values Revealed
Commitment opened
Anyone Can Verify
In your browser

How to Verify a Match

Checking a completed Backgammon or Gin Rummy match takes one click:

  1. Open a completed match — from the game-over screen, your match history on your profile, or any public replay page.
  2. Click “Verify fairness.”
  3. The app rechecks every dice roll or every card position for that match, right there in your browser, and shows a green verified state when everything checks out.

This works for any completed match — including ones you weren't even a player in. Fairness here isn't something you have to trust; it's something anyone can go check.

Scope & Honesty

What's covered

In-browser verification is live today for Backgammon dice rolls and Gin Rummy shuffles. Chess and Go use no randomness inside the game, so there's nothing for them to verify — their integrity comes from server-side move validation instead.

When it's available

Verification unlocks once a match is complete — never mid-game. That's by design: hidden information (like an opponent's hand in Gin Rummy) has to stay hidden until the match is over, commitment or not.

What a commitment proves, and what it doesn't

Worth being precise about, because it's the part most sites gloss over. A commitment published before play proves we didn't change the outcome afterwards. On its own it does not prove we picked our secret honestly in the first place — if every other input were something we already knew, we could have searched for a secret we liked before publishing it.

That's why your own browser generates a random value and sends it to us after we've published our commitment, and why each match is also tied to a blockchain block that didn't exist when we committed. We can't predict either one, and we only need one of them to be genuine — so your seed protects you even if your opponent contributes nothing at all.

The limit we haven't closed yet

The commitment is stored on our servers. A verification page can't rule out a server rewriting its own records after the fact, so your browser keeps a private copy of the commitment it saw before you played and warns you if the published one doesn't match. Putting the commitment on-chain would remove the need to take our word for that step too; it's designed and not yet built, and we'd rather say so than imply otherwise.

Related Pages