Challenge
Decentralized applications (dApps) and smart contracts often require unbiased, tamper-proof randomness to ensure fairness in critical use cases such as gaming, lotteries, NFT minting, and governance. Existing solutions on EVM networks (e.g., Chainlink VRF) provide randomness but are often limited to Solidity-based ecosystems. The goal was to design and implement a native chain-level VRF in Move language, ensuring both scalability and trustworthiness for applications built on this network.
Solution
We developed a Verifiable Random Function (VRF) module directly at the protocol level. The system ensures that randomness can be requested by any smart contract, and the results are cryptographically verifiable on-chain. This implementation provides: