PoolTogether使用Chainlink VRF,以公平的方式打造个人储蓄游戏

"集成Chainlink VRF和RNG完全颠覆了PoolTogether的发展,为我们省下了大量开发时间,并为我们提供了完全可靠的随机数来源。"
Brendan Asselstine

CTO and Co-founder, PoolTogether

Key results

in prizes in the last 6 months
1 week
to integrate Chainlink VRF

PoolTogether is a protocol for creating, running, and managing no loss prize savings games. Deposit for a chance to win prizes, and even if you don't win, you keep all your money.


PoolTogether developed a novel blockchain-based game around saving money via no-loss prize pools, which accrue interest that’s awarded to a lucky winner at the end while everyone else can withdraw their original deposit.


Accessing a source of randomness to select winners that users could verify as truly fair and tamper-proof was difficult given the state of existing RNG solutions.


Chainlink VRF provided an easy-to-integrate RNG solution that is secure and publicly auditable, resulting in provably fair and unbiased no-loss game outcomes.

Business Outcomes

Use tamper-proof, unbiased randomness in your prize savings games



Using No-Loss Games to Make Saving Money Fun

According to the latest data from Statista, around 45% of Americans have no personal savings. Similarly, over 1.7 billion people worldwide are unbanked, meaning they can’t protect their money from loss or theft via a savings account. While there are many contributing factors to people’s inability to save, one proven method to incentivize individual saving is prize-linked savings accounts (PLSAs). PSLAs are gamified savings vehicles that offer individuals the chance to earn rewards in excess of their original deposit through raffles or other luck-based games. One of the major benefits of PLSAs is that users retain their initial deposits regardless of whether or not they win prizes, hence the term “no-loss”.

The PoolTogether team recognized an opportunity to utilize the permissionless, reliable, and transparent nature of blockchains to gamify personal savings through PSLAs built using smart contracts. With PoolTogether, users across various blockchain networks like Ethereum, Binance Smart Chain, Polygon, and Celo can deposit their crypto-assets in no-loss savings games, which are deployed in DeFi lending markets to earn interest. At the end of each week,  the cumulative interest is awarded to a lucky winner while everyone else can withdraw their original deposit. The entire PoolTogether protocol is managed through a decentralized autonomous organization (DAO) and anyone in the world can build their own no-loss prize pool.

PoolTogether is unique in that users can retain exposure to underlying assets while also saving money and participating in exciting and potentially rewarding games. However, in order to attract users in the competitive DeFi market, their no-loss games needed to be verifiably fair. Thus, PoolTogether identified early on the need for a secure and transparent source of randomness used to select winners.


Encountering Challenges When Generating Randomness

  • PoolTogether’s initial in-house RNG solution relied on unverifiable trust—a trust assumption not in alignment with blockchain technology
  • Off-chain randomness providers are a single point of failure and provide no proof of RNG integrity
  • Many RNG solutions derived from blockchains are not scalable as they can be manipulated by miners

Fairness is a long-sought-after component of every competition—no one wants to play a game manipulated to their detriment. Yet, most games do not provide definitive proof that the game is truly fair for all users. Initially, PoolTogether was similar in that it managed its randomness solution internally. While the PoolTogether team acted with honesty, users still had no way of verifying their integrity. For PoolTogether to scale to a global, permissionless, and provably fair no-loss savings platform, it needed a verifiable source of tamper-proof randomness.

The PoolTogether team explored RNG solutions derived from both off-chain and on-chain processes. However, many problems were identified with existing RNG solutions. For instance, off-chain RNG providers were centralized and opaque, resulting in PoolTogether users being unable to verify the integrity of the randomness process. This makes it susceptible to manipulation from a third party.

On-chain solutions suffered a similar fate. For instance, many forms of randomness derived from the blockchain itself were predictable, including solutions using block hash data. Since block hashes are determined before a mined block is published, a miner can generate a block, see that it has an favorable block hash, and then discard the block if it’s unfavorable. Effectively, miners have the potential to re-roll to get a new random number, increasing the chances they win the draw. The exploit becomes more attractive too as the prize value grows, eliminating the ability for no-loss prize savings games to scale.

“Even seemingly random on-chain values such as a block hash can be manipulated by malicious miners attempting to extract value from applications like PoolTogether.”

Brendan Asselstine
CTO and Co-founder, PoolTogether


Integrating Chainlink VRF For Provably Fair and Tamper-Proof Randomness

PoolTogether integrated Chainlink VRF for a publicly auditable RNG solution available directly on-chain, overcoming the limitations of other randomness solutions. Chainlink VRF is unique because it combines block data with the oracle node’s pre-committed private key to generate a random number and cryptographic proof for each request. PoolTogether’s smart contract will only accept the random number input if it has valid cryptographic proof, and the cryptographic proof can only be generated if the VRF process is tamper-proof.

PoolTogether realized several key benefits by integrating Chainlink VRF. For one, PoolTogether could now rely on an independent RNG solution to eliminate any notion of the team tampering with game results. Second, blockchain miners could no longer influence Chainlink VRF since it uses block data that’s unknown at the time of request, making it unpredictable. Finally, Chainlink VRF is auditable through its generation of a cryptographic proof, allowing anyone to verify that the RNG process was deterministic and ran exactly according to its code.

As a result, PoolTogether has an automated way to generate randomness on-chain that is provably fair to all participants, creating a truly unpredictable and unbiased gamified savings experience for all users.

“PoolTogether uses the Chainlink VRF service to select our winners. The transparency and provable security increase trust in our no-loss prize savings games.”

Brendan Asselstine
CTO and Co-founder, PoolTogether

Business Outcomes

No-Loss, Gamified Savings Pools That Users Trust

Chainlink VRF is now a fundamental component of the PoolTogether protocol, enabling fair and transparent no-loss prize savings games backed by cryptographic truth. Since integrating Chainlink VRF, PoolTogether has experienced increased adoption and growth due to greater levels of trust in the winner selection process. Moreover, by removing their manual, centralized RNG solution, the PoolTogether team has saved countless engineering hours and resources. Even more, the cryptographic security provided by Chainlink VRF, along with PoolTogether’s DAO governance structure, contributes to its goal of making no-loss games trust-minimized end-to-end.

After integrating Chainlink VRF, the PoolTogether team is able to prove on-chain that all winners have been selected unbiasedly. This has resulted in more than 20,000 users participating in PoolTogether’s no-loss games and receiving over $5M in prizes. With Chainlink VRF and blockchain technology, PoolTogether is now improving upon existing PSLAs to enable more fair, transparent, reliable, and fun ways to save money.

Chart showing $5 million in no-loss prizes have been awarded by the protocol in the last ~6 months.
Over $5 million in no-loss prizes have been awarded by the protocol in the last ~6 months. Source: dune.xyz/sarfang/pooltogetherv3

Get the latest Chainlink content straight to your inbox.