What is an Oracle
The word oracle originates from ancient Greece; referring to a female priest who served as a medium for relaying advice from a God. In ancient times, an oracle was consulted to gain information beyond peoples understanding. A blockchain oracles function isn’t all that different. Blockchains and smart contracts cant access off-chain data. However, it may be necessary for a smart contract to access off-chain data to execute the agreement.
For example, some farmers invest in agricultural derivatives to act as insurance in case a drought affects their crop yield. If there is an extended period of poor weather that lasts a season and affects their yield, the derivative will pay out a sum to cover the losses incurred. This process could be carried out on a blockchain automatically through the use of a smart contract and an oracle that can access weather data. The smart contract could communicate with the weather oracle at the end of a season to determine if the farmer should be paid or not.
The Oracle Problem
Oracles are not part of the main blockchain, therefore they are not subject to the same security and decentralisation as the blockchain. This means a centralised oracle can hold the power over your smart contract. Even if the centralised oracle has good intentions it is still vulnerable to hacks and man-in-the-middle attacks. A man in the middle attack could target the information source that the oracle gathers data from to make its decision and alter it to their benefit.
Therefore the oracle problem is defined by these two factors combined:
1. Blockchains cant access any data outside of the blockchain.
2. The use of centralized oracles nullify the advantages of smart contracts and present a major security risk.
In summary, if the oracle becomes compromised then so does the smart contract linked to it.
The Solution
Decentralised oracles are the solution to this problem. Chainlink is the industry-leading decentralised oracle solution so lets take a more in depth look into it.
Chainlink
Chainlink is a decentralised oracle network that launched in 2019. It provides off-chain data to smart contracts and serves as a bridge between blockchains and the outside world.
Decentralisation of the Chainlink network is achieved in three ways:
1. Having multiple different node operators to source and retrieve data, in order to prevent one oracle from being a single point of failure.
2. Gathering data from multiple independent sources. This avoids a single API being the only source of truth.
3. Using data providers who specialise in compiling data from multiple sources to create a single correct data point to be consumed by the smart contract.
Chainlink also makes use of a reputation system
to track the performance of each node operator. This allows future users to reference this data and choose a node operator they can rely on for oracle services. This system alongside the tokenomics helps incentivise trustworthy data provision by the node operators.
Tokenomics
The tokenomics of Chainlink are aimed at incentivising nodes to exhibit correct behaviour and provide reliable data. This behaviour is promoted by means of economic incentives, by giving the LINK token value and uses within the network.
One such use case for the LINK token is as a means of payment. Smart contract operators need LINK to pay node operators for reliable off-chain data. The more smart contract operators using the Chainlink network will result in more demand for LINK which, in turn, increases the value of the token.
Node operators can stake LINK as collateral which is locked for as long as the agreement remains. These staked LINK tokens are subject to ‘slashing’ if the node operator misbehaves or provides incorrect data. This allows smart contract creators with lower value use cases to choose to use a node operator with less staked LINK compared to smart contract creator with a high value use case. A smart contract with a high value use case will want the most reliable data available and therefore will opt to choose a node operator with a lot more LINK collateral. This staked LINK is taken out of the circulating supply for the period of time that the node operator is supplying the smart contract with data. This lowers the circulating supply of LINK and will increase demand for the token, especially as more users begin to use the network.
The Chainlink whitepaper outlines another incentive that they call Future Fee Opportunity (FFO). An oracle node operator with strong performance will have a good reputation which in turn will attract fees from users. If this operator decides to misbehave their reputation will be negatively affected, they will suffer loses from the slashing of their staked tokens and they will lose out on future fee payments as a result. This in combination with the other incentives aims to minimise misbehaviour from node operators.
The LINK tokens were initially distributed through an ICO on 17th September 2017. A total of 1,000,000,000 LINK were minted and distributed as follows:
– 35% available for public sale.
– 35% allocated for node operator incentives.
– 30% allocated to the company to support development of the Chainlink protocol.
Initially, there was a circulating supply of 350,000,000 tokens. The current circulating supply is 432,509,553 LINK according to coinmarketcap. If all of this additional LINK in supply was sold by the team that would equate to roughly 27% of their 300,000,000 LINK allocation. This has sparked the conversation that LINK is too centralised as initially 30% of the tokens were allocated to the team.
Concluding Thoughts
There is a massive demand for a decentralised oracle network to support smart contracts and increase their functionality. Chainlink is currently the most used blockchain oracle network and has the first mover advantage on its side. The arguments of centralisation due to the token distribution are somewhat valid but as the team sell these tokens to fund the project the centralisation will dramatically reduce. The multiple big name partnerships with the likes of Google Cloud and Ethereum are another reason for the team to act responsibly as the opportunity for future gains outweighs the short term returns of dumping the token and severely affecting the price. While in the short term there may be suppressed price action when the team sell pieces of their allocation, the long term benefits will be a much more even distribution of the token and a constantly improving network.
This review is a short summary of the protocol and doesn’t go deep into the technical analysis but if you want to read more on that side of things check out some of the links provided below.
https://academy.binance.com/en/articles/blockchain-oracles-explained
https://www.coindesk.com/what-is-an-oracle
https://betterprogramming.pub/what-is-a-blockchain-oracle-f5ccab8dbd72
https://medium.com/fabric-ventures/decentralised-oracles-a-comprehensive-overview-d3168b9a8841
https://link.smartcontract.com/whitepaper
https://research.chain.link/whitepaper-v2.pdf
If you enjoyed this article, sign up to our mailing list or check out more articles in our new Crypto and Blockchain section! If you want to look into the price of Chainlink you can check it out on one of the following exchanges: