Draw Verification
Knight Household Lance
Draw Result
- Winner
- Rackham, Essex
- Winning ticket
- #197
- Entries in pool
- 34 (all entrants)
- Winner index
- 19 (0-based)
- Draw executed
- 11 Aug 2026, 8:35 PM
- Entropy source
- secrets.SystemRandom (instant-win positions at setup)
- Fairness mechanism
- SHA-256 commit-reveal — selection by sha256(draw_secret:pool_hash:counter) with rejection sampling
How This Result Was Produced
4 steps, each one checkable against the values published below. Nothing here depends on trusting us — every input is shown.
Verify commitment was published before the draw
This sha256 hash was published when the competition was created. It proves the draw_secret could not have been changed after tickets were sold.
d4bc1e8b7eb758bc79e2b117e586ba6f2947ad75dbc2d999b70f8019674cd414
Verify draw_secret matches commitment_hash
The draw_secret is revealed below. sha256(draw_secret) is shown — it must equal the commitment_hash in step 1.
draw_secret (input)
5f939f56fd06a04c00f627d4a081c275b3b54cc9ace0584c9db5ff5671364227
sha256(draw_secret) must equal step 1
d4bc1e8b7eb758bc79e2b117e586ba6f2947ad75dbc2d999b70f8019674cd414
Verify the entry pool hash
sha256 of every ticket number in the draw pool, in ascending numeric order, joined with commas and no spaces.
e4fa5621f8a060d3f36f62b435e14ada74e79f6b48c0885e519d42e5ba17397c
Reproduce the winner selection (rejection sampling)
Starting at counter=0, compute sha256(draw_secret:pool_hash:counter) as a 256-bit integer. Let limit be the largest multiple of N below 2^256. If the value is >= limit, increment counter and retry. Otherwise winner_index = value mod N.
counter=0, winner_index=19
Check It Yourself
Run every check in your own browser. It recomputes the hashes and the winner selection locally from the values published on this page — nothing is sent to our servers, so a pass cannot depend on trusting us.
- Confirm sha256(draw_secret) equals the commitment hash in step 1.
-
Confirm the sha256 of the entry pool below equals the pool hash in step 3. Hash the text
exactly as shown — ticket numbers in ascending numeric order, separated by commas, with no
spaces and no trailing newline.
Entry pool — ticket numbers in ascending numeric order
6,8,40,49,64,84,94,95,109,135,138,139,144,147,169,173,180,183,196,197,198,201,204,205,211,212,221,248,255,259,260,271,279,294 -
Run the pre-filled command below to reproduce the rejection-sampling winner index
(counter=?, expected
winner_index=19).
python3 - <<'PY' import hashlib draw_secret = '5f939f56fd06a04c00f627d4a081c275b3b54cc9ace0584c9db5ff5671364227' pool_hash = 'e4fa5621f8a060d3f36f62b435e14ada74e79f6b48c0885e519d42e5ba17397c' total_entries = 34 counter = 0 limit = (1 << 256) - ((1 << 256) % total_entries) while True: seed = hashlib.sha256(f'{draw_secret}:{pool_hash}:{counter}'.encode()).digest() candidate = int.from_bytes(seed[:32], 'big') if candidate < limit: print(f'counter={counter} winner_index={candidate % total_entries}') break counter += 1 PY
Full Entry List
All sold tickets with entry method and optional-question answer status (no personal names). Download it to cross-reference ticket numbers against the draw pool; the "In Main Draw" column marks which rows formed it.
Download entry list CSVIndependent Timestamp Proof
Each commitment hash is anchored to the Bitcoin blockchain via
OpenTimestamps. A confirmed
proof establishes the hash existed before the Bitcoin block that attests it —
checkable without trusting our records. Save the commitment hash to a file and check the proof
with the free ots tool:
printf '%s' 'COMMITMENT_HASH' > commitment.txt && ots verify -f commitment.txt proof.ots
Draw commitment — anchored in Bitcoin 5 Aug 2026 02:05 UTC
d4bc1e8b7eb758bc79e2b117e586ba6f2947ad75dbc2d999b70f8019674cd414
Download OTS proof
Instant win commitment — anchored in Bitcoin 5 Aug 2026 02:05 UTC
0c9cf10a7d4670d59e2865e12055bc8fb3cba4057d1b5538f7567eea161b32fd
Download OTS proof