Oracles are a critical middleware for smart contracts. We evaluate the need for decentralised oracles and how Chainlink is poised to accrue value as the oracles space grows.
Humans have relied on collaboration for the progress they have made. Our collaboration has often relied on trust. We devised various means of ensuring that counterparty keeps their end of the deal. Smart contracts, contracts that execute themselves after a pre-decided condition is met, are among the latest developments in human collaboration. Inputs to these contracts should be provided by a trustless system that cannot be manipulated by either party entering a contract. In mythology, oracles offered wise and insightful counsel; in the world of smart contracts, decentralised oracles are intended to bring information in a trustless manner.
Oracle investment thesis
Blockchains cannot interact with the digital world residing outside them due to restrictions emerging from consensus. (Read our article on oracles – the Internet of blockchains for an introduction to oracles). Several teams are building protocols on Ethereum and other blockchains with an end goal of sufficient decentralisation so that a single party does not control critical elements of the system. Decentralised Finance (DeFi) protocols have billions of dollars locked in protocols that are not controlled by a single entity. As on-chain protocols grow their capabilities, we want to ensure that they are not isolated from the digital world outside of blockchains. Changes in conditions outside of blockchains – recorded on the internet – should trigger smart contracts.
A decentralised system cannot have any centralisation vector. It also applies to how smart contracts fetch the data they need as input. Therefore, decentralised oracles are vital for the growth of smart contracts. As we stated in The Bridge, multiple oracle solutions are aiming to be decentralised oracles. Chainlink is the first mover among the decentralised oracle space. We have repeatedly observed that network effects are an essential aspect of open-sourced systems. Therefore, we think that Chainlink is likely to benefit from network effects as we explain later in this report.
How Chainlink works
Chainlink’s objective is to merge on-chain and off-chain worlds. Its architecture gets divided into two workflows – on-chain and off-chain.
- Oracle selection – The oracle service purchaser defines several parameters that make up the service level agreement (SLA). Oracle/s is/are selected based on this SLA.
- Data reporting – The off-chain oracles execute the agreement and report on-chain.
- Results aggregation – Once the oracles reveal their results to the main contract, they get fed to the aggregating contract. The validity of each answer is reported to the reputation contract. The aggregation contract also calculates the weighted answer and passes the response to the user.
Chainlink consists of a network of nodes connected to Ethereum network (also different blockchains later). These nodes perform requests independently.
- Chainlink Core – Nodes run the core software responsible for blockchain interfacing, scheduling and balancing work across different external services.
- External Adapters – External adapters allow customising the functionality of the Chainlink oracle network. It is like the open-sourced package for Chainlink nodes. The most significant advantage of this design is that smart contract developers can focus on the business logic without running the node; instead, they can have one of the node operators host the external adapter for them.
- Substack Schemas – Many adapters are open-sourced and developed by different developers. In this case, adapter inputs and outputs must be standardised.
Source: Chainlink Whitepaper
- User makes an on-chain data request. They specify many parameters such as the price they wish to pay, query parameter, the number of oracles (redundancy) required frequency, etc. User’s requests form an SLA.
- Chainlink’s on-chain interface contract, Chainlink-SC, logs an event for the oracles.
- Chainlink core picks up the event and shares the assignment across all nodes/adapters.
- Adapters/Nodes process the response off-chain through external APIs
- And share the data with the core.
- Core reports the data to the on-chain contract Chainlink-SC.
- Chainlink-SC aggregates all the responses and shares with the user.
Before diving into how the value accrues, it is essential to examine whether the token needs to exist. Chainlink is a middleware protocol which is intended to be compatible with multiple blockchains and non-blockchain systems as well. When it is just functioning on Ethereum, a token may not be needed, but Chainlink is built with modularity and scalability in mind. For internal accounting purposes, LINK token becomes crucial when oracles are connected to several other blockchains.
Node operators keep track of requests, process those, and get paid in LINK tokens for their efforts. The reputation system keeps the behaviour in check.
Node operator dynamics
Node operators are at the heart of Chainlink network. These entities run the hardware and software to power and secure the Chainlink network. Node operators observe the blockchain for new incoming data requests, fetch the data from the desired source (or sources, often multiple sources to maintain redundancies), and deliver it to the smart contracts in the requested form to trigger intended execution.
For Chainlink to keep delivering reliable data in a decentralised form, node operators must behave honestly. Once staking is live, node operators will have to put up a stake to have skin in the game. If the system detects misbehaviour on node operators’ part, their stake will get slashed.
As the staking is not yet live, node operators are not compelled to keep their LINK locked. So, how does Chainlink ensure that node operators keep their end of the bargain? Reputation.link keeps a log of all the nodes and their performance parameters such as average response time, response ratio, LINK earned, etc. Node operators’ income depends on whether users choose them for providing data and users’ choice of node operator can be influenced by the reputation score. Therefore, this reputation system forces node operators to behave honestly. It is not as strong a system as slashing node operators’ stake when they misbehave, but there is evidence that it works. For example, as per Reputation.link in the last seven days, out of 252,180 requests, Chainlink node operators have successfully responded 251,250 requests at 99.63% ratio.
There is good reason to believe that if the node operators have invested a lot to run their node operations, it matters what they earn from data requests. Running a Chainlink node is easy but running it well to keep consistently earning requires a lot of effort. Node operators need to maintain redundancies at several levels. First of all, they need to run a full node of whichever blockchain they are connected to. For example, they cannot just host their Ethereum node using Infura1 as it adds dependency. They need to run a full node on Ethereum (which is not cheap). They have to make sure that they have multiple data subscriptions with enough redundancies. They also need to ensure that they have enough ETH for transactions. In an environment where the gas fee is exorbitant, node operators’ costs increase (they have to spend on gas to push requested data on time). They cannot wait to service data requests until gas prices to come down because the reputation system keeps track of the time taken to deliver the request as well.
Why should LINK have non-zero value? Chainlink is a powerhouse that provides data to almost every DeFi smart contract. Without accurate data, smart contracts would be crippled. The market capitalisation of DeFi protocols is approximately $30 bn at the time of writing. If LINK has no value, the node operators will have no incentive to provide data with desired accuracy and frequency.
One can argue that LINK is just a payment token and therefore, as per John Pfeffer’s paper, it is likely that its price appreciation is capped. However, we think that LINK is not just a payment token. Apart from using LINK for paying the node operators, it also acts as a coordination mechanism for the Chainlink ecosystem. When staking goes live, LINK will serve not only as a payment token but also as an instrument for maintaining the security and integrity of the network.
Open-source protocols are easy to fork and deploy. Keeping the value of the protocol takes a lot more than good code. We have seen several fork attempts in open source systems – Bitcoin Cash was forked from Bitcoin, many automated yield aggregators were spun from Yearn and Swerve was cloned from Curve. However, in almost every instance, the original protocol retained the value. A common denominator across the board is the team and the community they built over the years. As is the case with most of the large protocols, Chainlink has a vibrant community. The founders have a deep understanding of the problems and trade-offs in the decentralised oracles space. The team also has strong ties with the leading academicians to help them drive the research forward.
Network effects are often a form of defence for open-source protocols. Chainlink is the first most used decentralised oracle protocol. Almost every DeFi protocol uses Chainlink oracle, and this has reflexivity. As more and more protocols use Chainlink, the reputation of Chainlink oracle gets better. This reputation forces market participants to use Chainlink.
Chainlink in Numbers
Figure 2 shows that growing activity supports the price rise.
Another metric that suggests an increase in usage is the percentage of value transferred via contracts. Until mid-2020 this number barely touched 25%. After DeFi took off, we witnessed growth in the use of different contracts to settle value. The percentage of value transferred via contracts hovers around 45% now. Readers must note that value transferred through contract includes all the contracts (lending protocols, contracts that pay node operators, etc.)
Figures 3 shows how LINK distribution has changed since 2018. The number of addresses containing between 1 to 10 LINK and 10 to 100 LINK saw significant growth in 2020-21. This growth in addresses is encouraging, as it suggests broad market participation.
Figure 4 shows how value is controlled by different addresses based on their concentration.
LINK only has a few years of history. More than 80% of the tokens are in 65 addresses and prima facie, it seems the distribution is skewed towards a few players. However, we must note that some of these addresses are controlled by exchanges or smart contracts. As identified by Etherscan contracts and exchanges hold over 602 million LINK.
Figure 5 shows the distribution after we make the adjustment mentioned above. Though we cannot identify addresses associated with all the exchanges and contracts, the distribution already looks far better. For example, the value concentrated in addresses controlling more than 1M LINK reduces from 81% to 50% on 02 February 2021.
It stands to reason that some of these large addresses include contract addresses where tokens for ecosystem growth and node operators are stored.
In the past year, we have seen a significant uptick in addresses containing 1 to 100 LINK. This suggests increasing participation which is positive for the network.
We do not know what the staking parameters are and when staking will go live. Staking is crucial because it incentivises node operators to behave honestly. LINK’s utility remains limited to payment mechanism until staking goes live.
Despite adjusting for exchange and contract balances, LINK token is not very widely distributed. Price action is at the whim on large token holders’ decisions.
Chainlink is one of the most crucial middleware protocols in digital assets industry. We think that the use of Chainlink will grow with growth in various on-chain and off-chain protocols. It is reasonable to expect that increasing use will be favourable for price growth. Recent price run-up is supported by on-chain activity.
Distribution of LINK is a cause of concern for us currently, and we would like to see better distribution over time.
1Infura provides tools and infrastructure that allows developers to connect to Ethereum blockchain ↵