How it works

Fixed first. Random from outside. Proven forever.

A fair draw needs three things: the entries can't change once the draw is underway, nobody can know or steer the outcome, and anyone can check afterwards that both were true. Here's how Veritrus does each, using a prize draw as the example.

1. Commit: lock everything in

When the organizer starts the draw, their platform sends Veritrus the entries: each taken row and an anonymous ID for whoever holds it. Veritrus then:

  • fingerprints the entries (a SHA-256 hash), so any later change, even one character, would show;
  • makes a secret random seed and publishes only its fingerprint, so the seed can't be swapped later;
  • picks the moment of the draw, and the public randomness round it will use, which doesn't exist yet;
  • signs all of this and writes it to the public log.

From here on, nothing about the draw can change. If the organizer cancels, they can only do it before the draw time, and the cancellation is signed and logged too: nobody can quietly redraw until they like the result.

2. Execute: add randomness nobody controls

At the draw time, Veritrus fetches the next value from drand, a public randomness beacon run by the League of Entropy, an independent group of universities and companies. A new value appears every 3 seconds, signed by the group, and nobody can predict it.

The winner is computed from Veritrus's sealed seed, the entry fingerprint and that public value, mixed with HMAC-SHA256 and picked with a method that gives every row exactly the same chance. Because the seed was sealed before the public value existed, and the public value was unknowable when the entries were locked, no one, not the organizer, not the players, not Veritrus, could know or choose the winner in advance.

3. Prove: let anyone re-check it

Veritrus reveals its seed, signs the result, and adds it to the public log. Anyone can then check, with open tools and without asking us:

  1. both records were signed by Veritrus's published key;
  2. the entries match the fingerprint locked at the start;
  3. the revealed seed matches its sealed fingerprint;
  4. the randomness is the drand round chosen at the start, genuinely signed by the League of Entropy;
  5. recomputing the draw gives the same winner;
  6. both records sit in the public log, which can only ever grow.

The public log

Every commit, result and cancellation is chained into an append-only log: each entry includes a fingerprint of the one before, so history can't be edited without breaking every later entry. Next, its latest state will be witnessed by others and anchored on public blockchains, so even Veritrus couldn't rewrite it unnoticed.

Privacy

Veritrus never receives names, emails or payment details. Entries carry anonymous IDs that only the platform can match to its members, so the public proof shows that a holder won, while the platform shows its own members who. One thing to know: the same ID is used for a person within one group, so the public log shows that an anonymous holder played or won there more than once.

Exactly what is proven, and what isn't

Proven

These entries were locked before the outcome could be known; the result was computed exactly as published, from randomness nobody controlled; and the record hasn't changed since.

Not claimed

That the entries themselves were fair or complete (that's the platform's job), that a game is legal where you are, or that an organizer is honest in everything else they do.