We are excited to announce that Chainlink VRF (Verifiable Random Function) is now live on the Ethereum mainnet, generating a highly secure and provably fair source of on-chain randomness for blockchain applications. Several projects are already using Chainlink VRF live in production to secure critical smart contract functions: PoolTogether for randomly selecting prize pool winners in its v3 release, Centaur and UniLend for fair randomized selection of public sale participants, and numerous other projects already committed to launching in the near future like Aavegotchi, Polyient, Get Protocol, and much more.

This launch of Chainlink VRF showcases the power of secure and reliable oracles as not only a means of providing accurate price feeds for the DeFi ecosystem, but generating and delivering provably fair randomness on-chain for gaming, Non-Fungible Tokens (NFTs), and various other applications requiring unpredictability. It’s yet another example of the Chainlink Network continually expanding the types of data and computation users can receive through its oracle networks, greatly increasing the number and variety of applications that smart contract developers can build.

If you are a new or existing smart contract developer and want to build with Chainlink VRF, check out our documentation to deploy a testnet contract in Remix or integrate Chainlink VRF into your dApp on mainnet. If you want to discuss the integration in greater depth, reach out to us and schedule a call.

If you want a more in-depth look into the academic research and formal proofs backing the development, refer to our Chainlink VRF blog post about on-chain verifiable randomness.

The Importance of Verifiable Randomness

Random Number Generation (RNG) is critical to the development of many software applications because it serves as a mechanism for creating unpredictability. Not only does unpredictability protect against malicious entities trying to reverse-engineer a system, but it can also introduce an element of surprise into applications, determine the outcome of processes, and authenticate the creation of original objects and events. However, obtaining a reliable source of RNG that can’t be tampered with or predicted is an incredibly difficult problem.

Prior to Chainlink VRF, developers had two primary methods of RNG: on-chain RNG through the use of a Blockhash or off-chain RNG using single source of failure RNG providers. These randomness solutions introduce several security vulnerabilities, namely that on-chain RNG is subject to miner attacks, while off-chain RNG gives complete control over the RNG output to a centralized RNG provider.

As the value secured by smart contracts relying on randomness increases, so does the incentive to exploit them. This is especially important considering that smart contracts are data-driven applications with no human intermediaries or chargebacks. As such, they necessitate much higher security and reliability guarantees on the RNG used to secure large asset pools of user funds.

Chainlink VRF is designed specifically to support the needs of smart contracts, providing them with an open-source and easily integratable RNG solution that is directly auditable on-chain by any user via cryptographic proofs. This provides increased levels of trust and transparency in randomness-based processes, which not even the oracle or project developers can tamper with.

RNG for blockchains and smart contracts

Opening Up a Whole New Set of Blockchain Use Cases

The ability to access a fair and unbiased source of randomness in a provably secure manner allows blockchain developers to begin building a whole new set of on-chain functions, such as:

  • Generating non-fungible tokens (NFT) - seeding specific collectible traits, original loot boxes, rare in-game artifacts, and various other unique digital assets
  • Introducing random elements within gameplay - map generation, critical hits (battling games), matchmaking (multiplayer games), card draw order, and random encounters/events
  • Ordering for processes - distributing tickets to high-demand events, selecting participants in a popular public sale, and choosing presale winners for luxury items like rare shoes
  • Random selection of someone - picking a juror for a case, selecting a validator for consensus, drawing a regulated lottery winner, or numerous other selection processes within a protocol or DAO
Types of randomness for smart contracts

These are just a few of the many ways in which provable randomness will expand the addressable market of universally connected smart contracts. We’re excited to see what is developed using Chainlink VRF and look forward to hearing from the wider smart contract community on their randomness needs.

If you are interested in learning about Chainlink VRF within gaming and NFTs, check out some of our other blog posts:  Chainlink VRF: On-chain Verifiable Randomness, The Economic Impact of Random Rewards in Blockchain Video Games, and 16 Ways to Create Dynamic Non-Fungible Tokens (NFT) Using Chainlink Oracles.

If you are a dApp developer and want to test or integrate Chainlink VRF on mainnet, check out our documentation or schedule a call with us.