BEAM VRF · new
Randomness. With receipts.
Ask for a random number with any seed. The next round's hash fixes the input, every validator signs it with its own key, and the random value is the hash of those signatures. Nobody, BEAM included, knows the value before the round closes, and anyone can recompute it. BeamVRF.sol checks the same signatures on Robinhood Chain.
—requests
—fulfilled
—pending
—round
01
Request
Send a seed: a game id, a block hash, any text. You get a request id right away.
02
Validators sign
After the next round, each validator signs keccak256("BEAMvrf", chainId, id, seed, roundHash).
03
Verify anywhere
Randomness = keccak256(sig₁‖sig₂‖…). Check it here, in your code, or on-chain with BeamVRF.
Request randomness
Recent requests
Request a number, or pick a recent request to verify it.