DeRand: Decentralized, Chain-agnostic Verifiable Random Number Generator

mohammad reza yazdani
3 min readJan 27, 2024

--

Random numbers have always been a challenge in web3. They play a pivotal role. From raffle draws to the selection of nodes for block validation, the need for randomness is ubiquitous.

However, existing solutions, such as Chainlink VRF and QRNG by API3, come with their own set of limitations, including limited network support and centralization concerns. This is where DeRand steps in.

DeRand:

DeRand is a decentralized and chain-agnostic verifiable random number generator. It leverages Muon’s decentralized TSS network to provide verifiable random numbers for smart contracts on any blockchain.

Understanding Muon: The Backbone of DeRand:

Muon is a decentralized stateless network that enables you, to decentralize off-chain components of your dApps. Anyone can build their own Muon app, and then a random rotating subnet of Muon nodes runs that.

Core Features of DeRand:

  1. Chain-Agnostic Design:
    DeRand is built atop the Muon network. It generates random seeds in a decentralized manner off-chain, using Muon’s TSS network. This unique approach allows DeRand to function seamlessly across both EVM and non-EVM blockchains.
  2. Easy Implementation:
    DeRand ensures an effortless transition for developers with smart contract libraries and a protocol structure that aligns with existing VRF platforms, requiring minimal code alterations.
  3. Cost Efficient:
    DeRand is free, you only need to pay the blockchain gas fee and the Muon network fee which is very low.
  4. Decentralized and Censorship-Resistant:
    With over 1,000 unique nodes in the Muon network, DeRand epitomizes decentralization. The random seed is produced and authenticated by a randomly rotating subset of these nodes, ensuring robust resistance to censorship.
  5. Permissionless, Modular & Flexible:
    DeRand’s modular design empowers various entities to operate different protocol segments, eliminating any central point of control.

DeRand Components:

  • DeRand MuonApp:
    The MuonApp generates a secure and verifiable random seed for each request. The random seed is a TSS signature of a unique message signed by the Muon’s TSS network.
  • DeRand Coordinator contract:
    Dapps should call a function on the Coordinator contract to request random numbers.
  • Executors:
    These nodes monitor the Coordinator contracts across various chains, triggering requests to the Muon network for random number generation and fulfilling these requests.

Note: DeRand deploys its Coordinator contracts and runs Executor nodes for some blockchains. For the blockchains that DeRand does not officially support, users can deploy their own Coordinator contracts and run their own Executor nodes.

DeRand’s Workflow:

  1. A Dapp Contract calls a function on the Coordinator contract to request random numbers.
  2. Executor nodes continually scan for new requests, with the fastest node responding first.
  3. The chosen executor node requests a random seed from Muon’s TSS network.
  4. This node then relays the seed and Muon signatures to the Coordinator contract.
  5. The Coordinator contract validates these signatures, generates the random numbers using the seed, and fulfills the request by interacting with the dApp contract.

Implementing DeRand:

DeRand is 100% compatible with ChainLink VRF contracts. The only thing that needs to be changed is the Coordinator’s address. You can find DeRand’s Coordinator address on each chain here:

--

--

mohammad reza yazdani

Marketing and content creation at BrightID , Monetary reform at IdealMoney