common.appName

Ticket Verification Instructions

How the Signed Random Flow Works

The signed random system uses a ticketed approach similar to scratch-off lottery tickets:

  1. Streamer selects 'Random.org+ (Verifiable)' as the RNG method
  2. The system requests an unrevealed ticket from Random.org
  3. 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)
  4. Random.org generates the random number and signs it specifically for this ticket
  5. The random number determines the winner, and all data is recorded for verification, the full ticket data is displayed on the screen

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:

  • 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