TesseraDocs

Provably fair draws

How Tessera locks the seed before a draw and how you can check any result yourself.

Every raffle created from 25 October 2026 uses a commit-reveal draw. You do not have to trust Tessera or the host: you can check the result yourself.

How it works

  1. Seed locked. When the raffle is created, Tessera picks a secret 32-byte seed and publishes only its fingerprint, sha256(seed).
  2. Winners drawn. The draw shuffles the entry pool with a random generator seeded by that seed and by a digest of the entries. The same seed and the same entries always give the same winners.
  3. Seed revealed. Once the winners are public, the seed itself is published. If sha256(seed) equals the fingerprint published at creation, the seed was not changed after people entered.

Check a raffle

Open the raffle and click Provably fair · check the draw proof under the winners, or go to /raffle/<slug>/proof.

  • Verify it yourself hashes the revealed seed in your browser and compares it with the fingerprint.
  • To re-run the whole draw (seed, entry pool and winner order), use the open-source checker. It needs only Python 3:
git clone https://github.com/Hugg1337/raffle-platform
cd raffle-platform
python3 backend/scripts/verify_draw.py https://api.tesserapp.org/raffles/<raffle-id>/draw-proof

What stays private

  • Before the winners are announced, only the fingerprint is public. The seed is hidden so nobody can predict the result.
  • If a host marks entries as private, the proof shows the digests but not the entry list.
  • Raffles created before commit-reveal shipped have no locked seed. Their proof page says so.

On this page