Open the app

Trust and safety

How results are checked

Math proofs check the counts and prizes before anyone can claim.

Why proofs#

Highroll stores lines in batches, not one by one. A proof is a piece of math that shows those batches were counted and paid out correctly. Anyone can check it on the blockchain.

Players never need to make a proof. The technology is called ZK, and Highroll uses SP1.

Three checks#

  1. Count the lines. Every batch in the round is in the final queue (materializeQueue, then proveQueue).
  2. Check the prizes. The number of winners at each level and the amounts owed are right for the winning numbers.
  3. Check the claim list. The list of who can claim what (publishClaimTree) matches the verified result.

Each proof must match the right round, its rules, its full list of lines and its winning numbers. A proof for another round proves nothing about yours.

Early reports#

A trusted operator can report results before the proof is checked. That moves the pool’s accounting forward. Players still can’t claim until the checks pass.

For developers

reportSettlement is settlementOperator-only. publishClaimTree still needs verified settlement and a valid claim-tree proof. SETTLED alone isn’t enough. requestNumbers can run after the close, before the queue proof finishes.

Where it stands today#

The 19 September test record lists a real SP1 Groth16 verifier, the contract that checks proofs. Its full end-to-end test is marked “not run”. The newest code still needs its own full test and an audit.

Updated 27 Sep 2026. Pages about money show the launch settings agreed on 24 Sep. The test network runs older code from 19 Sep. Nothing here is live with real money.