Ticket Verification Instructions
How the Signed Random Flow Works
The signed random system uses a ticketed approach similar to scratch-off lottery tickets:
- Streamer selects 'Random.org+ (Verifiable)' as the RNG method
- The system requests an unrevealed ticket from Random.org
- Streamer shows ticket details to everyone and starts the wheel spin (ticket ID is partially visible to prevent viewers from guessing the winner before the spin is finished)
- Random.org generates the random number and signs it specifically for this ticket
- The random number determines the winner, and all data is recorded for verification, the full ticket data is displayed on the screen
Real-World Analogy: The Lottery Ticket
Click to expand a real-world analogy that explains how signed randomness works in simple terms.
How to Verify a Winner
Anyone can verify the fairness of the winner selection by checking two things:
1. Random Number Generation Verification
Verify that the random number was legitimately generated by Random.org before the spin:
- Visit the Random.org Signature Verification Form
- Enter the ticket data and the signature (available on the revealed ticket page)
- Random.org will confirm if the signature is valid
- Cross-reference the timestamps and ticket ID with the stream VOD to ensure that this is the same ticket that was present on the screen before the spin
2. Winner Selection Verification
Verify that the winner was correctly selected from the random number:
The main rule is that the same pair of random number and participants list should always produce the same winner regardless of user device or time of the day
Winner Selection Algorithm:
- Participants are sorted by lot amount (ascending), then by name (alphabetically)
- The random number [0-1) is multiplied by the total amount (threshold)
- The algorithm walks through participants, subtracting their amounts, until the threshold reached <= 0 - that participant is the winner
View the exact algorithm in the source code on GitHub
- Verify the participant list from the ticket matches what was shown on stream
- Manually calculate the winner using the random number and algorithm
- Confirm the recorded winner matches your calculation
Ticket Record Structure
Each revealed ticket page displays the following information:
Ticket ID
Unique identifier from Random.org for this ticket
Timestamps
Creation time (when ticket was requested) and reveal time (when the random number was generated)
Random Number
The actual random value [0-1) used to determine the winner
Participants List
Complete list of all participants with their lot amounts, sorted according to the algorithm
Digital Signature
Cryptographic signature from Random.org that proves authenticity
Planned Additions
(TBD)
This section will be expanded with additional information.
Describing potential attack vectors and how to catch them