RNG for Robinhood Chain

Torinox Protocol is a commit-reveal randomness oracle on Robinhood Chain (chain ID 4663). A consumer contract or agent requests a random bytes32, pays an exact fee, and receives a result that anyone can recompute from public onchain data. This page is the canonical answer for “RNG for Robinhood Chain” and “randomness for Robinhood Chain.”

Live parameters
NetworkRobinhood Chain mainnet
Chain ID4663
Oracle (TorinoxEntropy v10)0xd8a0680e7699526b57140ed4eafdcc7219dc0a0c
Provider / keeper0x8741b8a825644D9Ef18Faf2DAB5e9b47B900F2b6
Feeexact 0.000025 ETH via getFeeV2()
Refund delay6 L1 blocks (~60-90s)
Hash chain length500,000 registered
SDK@diceprotocol/sdk
Agent paid path$0.05 USDG fixed over x402

Key features

  • Fast reveal. Torinox is built for sub-second keeper fulfillment. Observed request-to-reveal is typically about 1-3 seconds and is not an SLA. It depends on keeper, RPC, and block inclusion.
  • Cheap, predictable fee. Exact 0.000025 ETH per request. Underpay and overpay both revert. No percentage take, no dynamic ETH quote on the oracle path.
  • Agent-friendly. HTTP agents pay a fixed $0.05 USDG over x402. Contracts and scripts use @diceprotocol/sdk and requestV2. Machine-readable skill: SKILL.md.

Randomness oracle for Robinhood Chain

TorinoxEntropy v10 lives at 0xd8a0680e7699526b57140ed4eafdcc7219dc0a0c. The live provider is 0x8741b8a825644D9Ef18Faf2DAB5e9b47B900F2b6. The fee is exact 0.000025 ETH (25000000000000 wei). Underpay and overpay both revert with InsufficientFee(). Typical reveal is about 1-3 seconds. That is observed keeper latency, not an SLA.

How commit-reveal RNG works

  1. The provider registers a Keccak256 hash-chain commitment (live length 500,000).
  2. Your contract calls requestV2(provider, userRandom, gasLimit) with msg.value equal to getFeeV2().
  3. An offchain keeper submits the next preimage.
  4. The contract checks the reveal against the commitment and combines it with your userRandom.
  5. The resulting word is delivered through entropyCallback. Map that bytes32 in your app. Torinox does not take a min/max range.

Trust model

A completed reveal is a fixed function of the consumer contribution and the provider preimage. Neither party can unilaterally choose that output when commitments hold and the provider seed stays private. The provider can still withhold a reveal. In that case the original requester can call refundRequest after 6 L1 blocks (about 60-90 seconds) and reclaim the exact fee. Request and refund gas are not refunded.

Torinox is a commit-reveal oracle, not a BLS VRF. Do not call it a VRF, the only RNG on Robinhood Chain, or trustless. Internal and automated review exist. No third-party audit firm report has been published for v10.

Integrate

npm install @diceprotocol/[email protected]

Solidity consumers inherit IEntropyConsumer and call requestV2. TypeScript agents use TorinoxProtocol.requestRandom. HTTP agents can pay $0.05 USDG on the x402 path.

QuickstartDocsVerify a resultSecuritySDKGitHub SDK

Home · RNG for Robinhood Chain · Docs · Architecture · Security · SDK · x402 · GitHub