How our Prize Draws work

We want everyone who enters our prize draws to feel confident that they are fair, transparent, and properly run.
This page explains how our draws work β€” first in plain English, and then (optionally) in full technical detail for anyone who wishes to verify the process themselves.

The simple idea

  • 🎟️ Every valid entry has one equal chance
  • πŸ”’ No one involved in the band can influence the result
  • πŸ“‹ The same rules are used every time

To make this easy to explain and easy to stand over, we use: public randomness, a pre-agreed time, and a fully automatic process.


β€œWhy make it so complicated?”

This is a fair question.

For most draws, a simple random button would work.
But if a draw result is ever questioned, a button-based draw is hard to:

  • explain clearly
  • demonstrate after the fact
  • independently verify

There’s nothing visible to point to β€” only reassurance.
We chose a slightly more careful approach so that, if anyone ever asks, we can clearly show how the winner was chosen, using public data and fixed rules.


Where the randomness comes from

The randomness we use is published by the National Institute of Standards and Technology (NIST).

NIST is a scientific organisation run by the US government.
It publishes random data that is used worldwide in security and science.

The randomness comes from outside the band. We don’t create it, choose it, or control it.

You can see the data yourself

NIST publishes this randomness publicly here:

πŸ‘‰ NIST Randomness Beacon
https://beacon.nist.gov/

Example of the actual random data used for this draw (31/12/2025 at 18:01 UTC):
https://beacon.nist.gov/beacon/2.0/chain/2/pulse/1594646

You don’t need to understand the numbers.
What matters is that the data is:

  • public
  • independent
  • published after the draw closes
  • published before the winner is selected

How it works: simple timeline

This timeline shows what happens from the moment a competition is created to the moment winners are calculated.

1️⃣ Competition is created

  • The competition is published
  • The closing date and time are clearly shown in advance
  • The rules for the draw are fixed and documented

Nothing about the draw process changes once the competition is live.


2️⃣ Tickets are purchased

  • Tickets are numbered automatically in the order they are bought
  • Each purchase gets a unique ticket number
  • If a payment later fails or is refunded, that ticket is marked invalid

Important:

  • Ticket numbers are never reused
  • Some numbers may become gaps if a ticket is refunded

3️⃣ Competition closes

At the published closing time:

  • Ticket sales stop
  • The entry list is locked
  • No changes can be made

From this point on, no new entries are possible.


4️⃣ Randomness is fixed β€” no cherry-picking possible

Exactly 60 seconds after the competition closes, we use the random value published by National Institute of Standards and Technology (NIST).
This rule is fixed in advance for every competition:

NIST value used = competition closing time + 60 seconds

Why this matters

Because the time is fixed in advance:

  • ❌ We cannot try different times
  • ❌ We cannot check multiple NIST values
  • ❌ We cannot wait for a β€œbetter” result
  • ❌ We cannot cherry-pick

The exact random value is locked in automatically the moment the competition closes.
Anyone can see it on the NIST website immediately after closing.


5️⃣ Winners are calculated (fully automatic)

At any time after the competition closes:

  • The software uses the fixed NIST value
  • A predefined cryptographic method is applied
  • No new randomness is introduced
  • No human decisions are made

If a result points to an invalid (refunded) ticket:

  • The system moves to the next predefined attempt
  • The same NIST value is used
  • The first valid result always wins

Ticket numbers are never renumbered or filled in.


6️⃣ Results are announced

  • Winners are confirmed
  • Results are published
  • The draw can be explained or checked if needed

The timing of the announcement does not affect the outcome β€”
the result was already determined by the public data.


No human intervention

Once the competition closes, the draw process is fully automatic.
There are no manual steps, no judgement calls, and no decisions made by any person.

Humans do:

  • define the rules in advance
  • publish and explain the process

Humans do not:

  • choose the random value
  • choose the timing
  • choose the number of attempts
  • influence winners
  • override results

The software simply follows the rules.


Why this works for a community band

As a small community band, many supporters are:

  • members
  • friends
  • family

Excluding them would not be realistic.

Instead, we remove the ability to influence the result.

Because the draw uses:

  • independent public randomness
  • a pre-agreed time
  • fixed cryptographic rules
  • and no human intervention

Every valid ticket has exactly the same chance, regardless of who buys it.


In short

  • 🎟️ Every valid ticket has an equal chance
  • πŸ”’ Randomness comes from a public, independent source
  • πŸ• The exact time used is fixed in advance β€” no cherry-picking
  • πŸ” Invalid tickets trigger the next predefined attempt
  • πŸ€– The process is fully automatic
  • πŸ‘€ The result can be explained and verified


Frequently Asked Questions

Why entries are online only

All entries are taken through our online store.

This is a deliberate choice to keep the draw fair, consistent, and auditable.

By using a single online system:

  • entries are recorded automatically
  • ticket numbers are assigned consistently
  • timestamps are clear and verifiable
  • there is no manual handling of entries

This removes the risk of human error and ensures the same process is applied to everyone.

The only exception is free postal entries, which are required by law and are entered into the same system so they are treated identically in the draw.

Using the online store also allows ticket sales and milestone progress to update automatically in real time, so everyone sees the same information at the same time.

Can you change the result after the competition closes?

No.
Once the competition closes, the random value used for the draw is fixed automatically at a pre-agreed time.
From that moment on, the outcome is fully determined by public data and fixed rules.


Does the time you announce the winner matter?

No.
The result is already fixed by the public randomness.
Announcing it later does not and cannot change the outcome.


Can band members, friends, or family enter the draw?

Yes.
As a small community band, many of our supporters fall into these categories.

Instead of excluding people, we remove the ability to influence the result.
Every valid ticket has exactly the same chance of winning.


What happens if a ticket is refunded or cancelled?

Refunded or failed tickets are marked invalid and cannot win.

If a calculated result points to an invalid ticket, the system automatically moves to the next predefined attempt, using the same public randomness.
Ticket numbers are never reused or renumbered.


What if the winning numbers look unusual or close together?

True randomness can sometimes produce results that look unusual or clustered.
This is normal and expected.

Because our draw uses public randomness and a fixed process, the result is still fair and verifiable.


Do I need to understand the technical details below?

No.
The technical section is provided for transparency and verification only.
The fairness guarantees are exactly the same whether or not you read it.


Can anyone check the result themselves?

Yes.
The randomness used is public, and the method is fixed.
Anyone who wishes to can independently verify the calculation.


Want the full detail?

The section below explains the exact technical steps, including real examples and calculations, for anyone who would like to examine or verify the process in depth.


Technical Details

The section below is more detailed and technical, and is provided for completeness and verification.

This section explains the technical process used to calculate winners.

You do not need to read or understand this section to trust the draw.
It exists so the process can be fully examined, verified, and audited by anyone who wishes to do so.


How multiple prizes and retries work

For maximum transparency, we deliberately use:

  • one single NIST random value
  • fixed at a pre-agreed time
  • for the entire competition

However, competitions may require:

  • multiple prizes (1st, 2nd, etc.)
  • retries if a selected ticket is invalid (e.g. refunded)

We must generate multiple independent results without fetching new randomness or making choices.


Deterministic cryptographic derivation

To do this, we use SHA-512 cryptographic hashing.

SHA-512 is a standard, widely used cryptographic hash function.

For each prize and attempt, we derive a new value from the same NIST pulse using a predefined derivation label.

SHA-512( NIST_PULSE || DERIVATION_LABEL )

Each derivation:

  • is deterministic
  • is independent
  • introduces no new randomness
  • is fully reproducible

Derivation labels

Each prize and attempt has a fixed label, for example:

competition_1056_prize_1_attempt_1
competition_1056_prize_1_attempt_2
competition_1056_prize_2_attempt_1

These labels are defined in advance and simply ensure each derivation is unique.


Handling invalid tickets (retries)

If a derived result points to an invalid ticket:

  1. That result is discarded
  2. The next predefined attempt is used
  3. The same NIST pulse remains in use

The process stops at the first valid result.

Ticket numbers are never renumbered, filled, or skipped manually.


Worked Example – Real Competition (Verifiable)

Competition details

  • Competition ID: 1056
  • Total valid entries: 565
  • Prizes: Prize 1 and Prize 2
  • Closing Time: 31/12/2025 18:00:00
  • Randomness time: closing time + 60 seconds

Randomness source

NIST pulse:
https://beacon.nist.gov/beacon/2.0/chain/2/pulse/1594646
Source: National Institute of Standards and Technology

Prize 1 – Worked Example (Explicit Steps)

Step 0 β€” NIST pulse (public source)

NIST Pulse Verification:
https://beacon.nist.gov/beacon/2.0/chain/2/pulse/1594646

Step 1 β€” NIST output value
5436CCA0AD97DF9CB50C46B56A8EFC5D26D997398BF6F271A3791DA49A63C696D
6EFEE9D8927A0BD4B3B8B7D6DB8E4AB9B3BD6635E51EE2BE2E43722A8BF1F93
Step 2 β€” Derivation input (fixed label)
competition_1056_prize_1_attempt_1
Step 3 β€” Combined hash input

(Shown conceptually as β€œvalue + label”)

NIST_Output | competition_1056_prize_1_attempt_1
Step 4 β€” SHA-512 hash output
d3984db62dc4709878777b472c75a6ee9f9ee37d018d5c671764b9a4183baeef
14dcb80b098d5edc556d74713309c8180b4de9d4992e496888275381be3a6bd2
Step 5 β€” Extract first 48 bits (first 12 hex characters)
d3984db62dc4
Step 6 β€” Convert to decimal
232,651,092,274,628
Step 7 β€” Map to entry range [1–565]
1 + (232,651,092,274,628 mod 565) = 484

βœ… Prize 1 winner: Entry #484

Prize 2 – Worked Example (Explicit Steps)

Step 0 β€” NIST pulse (same public source)

NIST Pulse Verification:
https://beacon.nist.gov/beacon/2.0/chain/2/pulse/1594646

The same NIST value is reused for all prizes. Only the derivation label changes.

Step 1 β€” NIST output value
5436CCA0AD97DF9CB50C46B56A8EFC5D26D997398BF6F271A3791DA49A63C696D
6EFEE9D8927A0BD4B3B8B7D6DB8E4AB9B3BD6635E51EE2BE2E43722A8BF1F93
Step 2 β€” Derivation input (fixed label)
competition_1056_prize_2_attempt_1
Step 3 β€” Combined hash input
NIST_Output | competition_1056_prize_2_attempt_1
Step 4 β€” SHA-512 hash output
4c833093c7006dc40250b608487b323a1a4f7cfa5fa575ebffccc33d1595ba14
32b1a711462de3eacbb450aae2c877a905f136471b8b1a1bab1c25d094747dd6
Step 5 β€” Extract first 48 bits (first 12 hex characters)
4c833093c700
Step 6 β€” Convert to decimal
84,126,339,417,856
Step 7 β€” Map to entry range [1–565]
1 + (84,126,339,417,856 mod 565) = 457

βœ… Prize 2 winner: Entry #457


What does β€œmod” mean?

β€œMod” means divide and take the remainder.
It’s a simple way to turn a very large number into a number that fits within the ticket range.

Simple example

If there are 10 tickets and the random number is 37:

37 Γ· 10 = 3 remainder 7
  • The remainder is 7
  • We add 1 (because tickets start at 1)
Winning ticket = 7 + 1 = 8