Public utilities

Verify Hookedin rounds offline

This standalone Node.js script lets partners and players reproduce the winning ticket calculation from the ticket digits and closing block hash. It uses only Node.js built-in modules.

verify-winning-ticket.cjsReproduce the deterministic winning ticket calculation.

Recommended workflow

  1. Open a settled round in the Hookedin website or choose a round number from /rounds.
  2. Copy the closing block hash from the round proof panel.
  3. Run verify-winning-ticket.cjs with that hash and the configured ticket digit count.
  4. Compare the utility output with the website's displayed winning ticket.
node verify-winning-ticket.cjs --closing-block-hash <hash> --ticket-digits 8

Command examples

Calculate the winning ticketnode verify-winning-ticket.cjs --closing-block-hash <hash> --ticket-digits 8
Useful when a partner wants to reproduce the draw math from the closing block hash and ticket digits.

Utility output fields

closingBlockHashThe Bitcoin block hash used as the deterministic draw input.
ticketDigitsThe configured ticket number width used by the draw.
hashesPerDigitThe configured SHA-256 chain length used for each decimal digit.
drawDigitsThe configured-width decimal string produced by the draw.
winningTicketThe zero-based ticket number represented by drawDigits.
finalSha256The final digest after all configured hash work completes.

What is verified

  • the closing block hash format
  • the configured-width Bitcoin hash draw
  • the ticket digit count used by the draw
  • the draw digits and zero-based winning ticket
  • the final SHA-256 digest after the configured hash work

What is not verified

  • whether a partner's player IDs map to a real account
  • whether a partner credited that user correctly
  • whether a payout transaction has been confirmed
  • whether a public payout address belongs to the partner
  • whether the displayed round page copied the correct block hash