cricket
00 A field note on fairness

Randomness nobody can rig.

A crowd of independent servers signs a new random number every 3 seconds. Cricket checks that signature on Robinhood Chain, so any contract can draw winners, shuffle or roll dice without trusting anyone. Us included.

Round, right now--
Its random number--
Signaturechecking...

44 seconds, with sound. The checks shown are real captures of this site.

01 The problem

A contract cannot flip its own coin.

Everything a contract can see is also seen, and often shaped, by someone else. So "random" built from the chain itself is a bet that nobody is looking. We asked Robinhood Chain what its random field says.

SourceWho can bend it
block.prevrandaoNobody needs to: on this chain it is the constant 1.
block hash, timestampWhoever orders the blocks.
A paid oracleThe company that holds the key.
drand + CricketNobody alone: it takes a majority of independent operators.
1what block.prevrandao returned on Robinhood Chain, three eth_calls in a row, 15 Oct 2026

Reproduce it: eth_call with the code 0x445f5260205ff3 (PREVRANDAO, store, return) as a state override on rpc.mainnet.chain.robinhood.com.

02 The chirp

A cricket that no single hand can silence or script.

A

A crowd signs

drand is run by the League of Entropy, independent organisations spread over the world. Every 3 seconds enough of them must sign the next round number together.

B

Nobody sees it early

The signature only exists once enough operators contribute. Before that moment there is nothing to peek at, bribe or retry. The random number is the hash of that signature.

C

Anyone checks it

One pairing equation on the BLS12-381 curve proves the signature is the network's. Robinhood Chain has the precompiles for it. So does your browser, below.

03 Check a chirp yourself

Don't trust the page. Run the maths.

This fetches a real round from the public drand relays and verifies it right here, with the same code the tests use. Then try to cheat and watch it refuse.

    04 What it is for

    A draw you can re-run at home.

    Pick a future round before anyone knows its value, publish your list, and let the chirp choose. Whoever has the list and the proof gets the same winners. Raffles, airdrops, fair queues, loot, game turns.

    1. commit   list hash + a round 2 or more rounds ahead
                (round 33,091,500 is not signed yet; nobody knows it)
    2. wait     the network signs round 33,091,500
    3. reveal   anyone posts the 48-byte signature
                valid  ->  seed = sha256("cricket.v1", random, list)
    4. winners  rejection sampling on the seed: no modulo bias
    5. proof    {entries, round, signature, winners}
                anyone re-checks it in the browser or on chain
    05 On Robinhood Chain

    The chain already has the maths.

    The BLS12-381 precompiles are live on chain 4663: the contract only has to hash the round to the curve and ask the pairing precompile one question. No oracle, no operator, no owner key, nothing to pay per request.

    We probed the precompiles at 0x0b (G1 add) and 0x0f (pairing): both answer, an empty call returns "invalid input length", not "no code".

    $ node scripts/real-chain-check.mjs chain 4663 (Robinhood Chain, live BLS12-381 precompiles 0x0b 0x0f 0x10) the chain checks a real drand round with its own precompiles OK round 33091443: e(sig, G2) == e(H(round), key) forgeries refused a forged signature (the real one plus the curve generator) refused the same signature claimed for round + 1 refused a real signature from another round $ forge test (fork of chain 4663) 20 passed, 0 failed verify one round 157,643 gas reveal a draw 208,689 gas
    06 Honest limits

    What a chirp cannot do.

    It is public at once

    The moment a round is signed, everyone can see it. So you must commit to the round BEFORE it exists. A draw whose round was chosen afterwards proves nothing.

    It trusts a majority

    If enough drand operators collude, they could predict a round. That is a much higher bar than one company or one sequencer, but it is not zero.

    It is not audited

    The contracts are tested on a fork of the real chain with real rounds. They have not been audited. Do not put serious money behind them yet.

    07 The coin

    $CRICKET funds the build. Using Cricket does not need it.

    $CRICKET page
    ROUND --
    next --
    $CRICKET 0xb11e...bb13 X