Verifiable random function — deterministic, publicly verifiable randomness bound to your seed and signed by the 2s key. proof = deterministic EIP-191 signature over the seed (same seed always yields the same proof, so the outcome cannot be re-rolled or cherry-picked); random = keccak256(proof), a uniform 32-byte value. Returns the seed, signed message, proof, signer address, random (hex + uint + float in [0,1)). Verify offline: recover the signer from (message, proof) and confirm keccak256(proof) == random. For provably-fair draws, lotteries, sortition, and tie-breaks between agents.