wen.poker
Fairness

Fair dealing you can check yourself.

Every hand on wen.poker is dealt in a way that nobody, including the people who run the site, can steer. This page explains how, shows what is live today and what is still being built, and lets you check the public log of every deal in your own browser.

Where things stand

We would rather tell you exactly what is protected than overpromise. Here it is, item by item.

ProtectionWhat it does
Commit before the dealThe server locks in a secret seed and publishes its fingerprint (a SHA-256 hash) before anyone's cards are decided. It can't swap the seed afterwards.Live
Players add randomnessEach player's browser answers with a fresh random seed of its own, mixed into the shuffle. The server picked its seed before it could know yours.Live
Check every handWhen the game is over the server seed is revealed. Anyone can re-deal the hand and confirm the cards. Seeds stay locked during the game so folded cards can't be worked out.Live
Public deal logEvery commitment, deal and hand end is written to a hash chain. Changing or deleting an entry breaks every hash after it. Re-check it below.Live
Independent copy of the logA mirror of the log kept somewhere we don't control, so the log can't be quietly rewritten.Next
Public randomnessA value from the public drand beacon, published after the commitment, mixed into the shuffle.Next
Sealed dealerThe dealing moves into a sealed environment with a hardware-signed proof of the exact code running, so that nobody, including us, can see a hand in progress.Next
Outside reviewAn independent developer reads the design and the code and publishes what they found.Next

How a hand is dealt

  1. Commit. While the current hand is being played, the server picks the seed for the next hand and publishes sha256(seed). Think of it as a sealed envelope.
  2. Add yours. Every seated browser sends back a fresh random seed. The server can no longer change its own, and it can't know yours in advance.
  3. Shuffle. The deck is shuffled from the server seed, all the players' seeds combined, and the hand number, with a standard unbiased shuffle.
  4. Reveal. When the game ends the envelope is opened. Anyone can re-run the shuffle and see that it gives the same cards.

The full plain-language walkthrough, the exact algorithm with test numbers, the list of ways someone could still cheat and what stops each one, and a step-by-step verification guide are all in the fairness documentation. The code is the same code that runs the game.

The public deal log

Each table has its own chain. An entry holds the hash of the one before it, so nothing can be changed, removed or reordered without every later hash failing. The log contains no cards, no live seeds and no player ids. Paste a table id to download its whole chain and check every hash in your browser.

Latest entries, all tables

Loading…

Click a table id to load it above. You can also run the same check with no browser at all: node scripts/verify-fair.mjs log <tableId>. This log is stored by wen.poker. Until an independent copy is published (see the table above), treat it as strong evidence of consistency, not as a promise nobody could ever rewrite it.