Abstract

When we first set out to develop a staking platform for Chainlink way back in 2017, it went through a variety of iterations. The first initial PoC was more custodial, moving tokens to team owned wallets that’d be staked on our nodes. We didn’t want to settle for a custodian solution, so we worked with the Chainlink team to understand how we could become trustless resulting in our announcement in early 2018.

Now, we’re happy to announce that with substantial re-work, our staking contracts are completely trustless for any pooling or staking implementation. What does that mean exactly? Well, within the same parent contracts, we can now support staking & pooling for any network or any use-case. This isn’t bound to staking-as-a-service, rather providing audited contracts that can fairly distribute any form of revenue between a set of wallets.

Some examples:

ICO Pools: People receive a fair amount of a given token based on how much they contribute.

People receive a fair amount of a given token based on how much they contribute. On-Chain Companies: Distribute revenue to a set of individuals based on an amount of vested stake within the company.

Distribute revenue to a set of individuals based on an amount of vested stake within the company. DAOs: Allowing people to contribute money into a pool that’s invested elsewhere, with any return being then distributed to the people who’ve invested into it.

Additional examples regarding staking support for other networks:

ETH 2.0: With the move of PoS, we could deploy our contracts on the new chain and support their PoS.

With the move of PoS, we could deploy our contracts on the new chain and support their PoS. Cross-Chain Staking: With also leveraging Chainlink within the contracts, we can support cross-chain staking by using oracles to provide wrapped tokens within our contracts that are distributed amongst the stakers for any network.

Keep in mind that these pools are now not just managed by us (LinkPool) as a central entity. Anyone will be able to submit their pooling implementations to us for approval, then they can get added and be shown within our staking app UI like our own pools are.

This means that in the future, rather than our staking app being a central place to stake tokens on LinkPool for Chainlink, you’ll be able to browse many pools. Pools that could be for ETH, pools that can be for DAOs or ICOs like mentioned above. The staking app will become a hub of everything that is poolable, giving a catalogue of trustless implementations that any user can see as an opportunity.

Since anyone can submit their pools to LinkPool, we expect a lot of node operators to take our standard Chainlink implementation and then use it to allow others to stake on their node. Not only does this blow the door wide open for staking on the network in general, it will bolster the security of the Chainlink network for every contract creator who wants to use it. By allowing any Chainlink node to become a pool, we anticipate a significant increase in the amount of LINK collateral which will be locked up in the network. We see this as a win-win scenario for the community.

Open Source and Audited

Before I show an example implementation, it’s worth us commenting on our dedication to the open-source community. As we’ve always stated, our contracts will be made open-source at the time of our full release, and we’ll be providing audit reports to provide a strong level of security guarantee in their use.

This is a huge advantage to the use of our contracts, as anyone who creates a pool implementation has the guarantee that our main contracts they hook into are audited and tested, giving confidence to both developers and end-users while reducing additional expensive audits.