In short, smart contracts will send a seed to a Chainlink oracle which will generate a random number using Chainlink’s VRF. The resulting number, broadcast back to the application, can be verified as random based on the oracle’s public key and application’s seed, Chainlink said in a blog post.
Similarly, Chainlink is rolling out its Verifiable Random Function (VRF) service, where subscribers can gain access to provably random values needed for demonstrating the integrity of smart-contract-based projects such as online games. With Chainlink VRF, you know an application hasn’t been tampered with – all via the blockchain.
Chainlink may be solving part of the problem that first drove Ethereum co-founder Vitalik Buterin’s interest in decentralized applications.
“One day ‘World of Warcraft’ game maker Blizzard removed the damage component from my beloved warlock’s Siphon Life spell. I cried myself to sleep, and on that day I realized what horrors centralized services can bring. I soon decided to quit”, Buterin wrote.
Chainlink co-founder Sergey Nazarov announced the new product Monday at Consensus: Distributed.
“A lot of applications can’t exist in a trustless way without randomness”, Nazarov said in an interview.
Oracles partaking in the system will be paid in user fees, Nazarov said, in an attempt to create an internal token economy for data information and security.
Verifiably randomness is novel service because of the difficulties of getting it right, Nazarov said. Many applications – particularly for gaming – need sources of randomness to create fair systems of play. Proving that the vehicle for selecting randomness has not been manipulated by the originator or an outside adversary is no easy task, however.
Decentralized finance (DeFi) lottery PoolTogether is the first subscriber to Chainlink’s VRF. The savings tool pools interest accrued on dai stablecoin holdings into one pot, and picks a lucky winner every week.
PoolTogether will now switch from its centralized randomness selection method to Chainlink’s VRF for decentralized randomness.
“Even seemingly random values, such as a blockhash, can be manipulated by malicious miners attempting to extract value from applications like PoolTogether”, the project’s co-founder, Leighton Cusack, said in a blog post. “This is why we’re excited about a verifiable form of randomness that can be verified using a blockchain’s highly trustworthy signature verification capabilities.”
Chainlink’s Nazarov said the randomness question for protocols is truly a computer science conundrum, one that is most easily addressed through a third-party solution such as Chainlink.
“What we are trying to address is people building applications, not just tokens”, Nazarov said.