How FairLock cryptographic verification works
FairLock is Basecomp's system for proving that every draw is fair. It uses a cryptographic commitment scheme — the same technique used in blockchain and secure voting systems — to prove that winning positions were decided before any tickets were sold.
The commitment phase
When you publish a raffle, Basecomp automatically:
- Generates a set of random winning positions using a cryptographically secure random number generator
- Encrypts those positions so they cannot be read by anyone (including Basecomp admins)
- Calculates a SHA-256 hash of the positions plus a unique salt
- Publishes that hash publicly on the raffle page with a timestamp
At this point, the winning positions are permanently locked. Changing them would produce a different hash, and the tampering would be immediately detectable.
During ticket sales
As tickets are sold and instant wins are checked, the system never needs to decrypt the main prize positions. Instant win detection uses a separate HMAC lookup that can verify a ticket position in under 100 milliseconds without revealing any other winning positions.
The reveal phase
When the draw runs, the winning position is decrypted and matched to the corresponding ticket number. The full verification data — positions, salt, and hash — is then published on the raffle page for anyone to inspect.
Independent verification
Any customer, journalist, or third party can verify a draw by copying the published data and running a SHA-256 calculation themselves using any online tool. If the hash matches the one published before ticket sales opened, the draw is proven fair.