The advent of Ethereum began the exploration of blockchain technology for more than just currency purposes. The fact that smart contracts and decentralized applications can be built gives blockchain projects like Ethereum a unique utility value.
However, making the solutions offered by smart contract platforms apply to the present state of real-world industries requires a connection with data and information that are off the blockchain.
At this present time, most real-world systems do not use the blockchain. In the near future, many of these systems could be making the transition to functioning with blockchain technology. Integrating accurate data or information into a smart contract from outside of the blockchain will require a special effect if it is to be achieved conveniently.
ChainLink is a blockchain project that creates this special effect.
ChainLink aims to connect blockchain to an off-chain infrastructure. The project intends to bridge the gap between blockchain infrastructure and non-blockchain infrastructure, giving smart contracts access to data feeds, APIs, and payments.
What Does ChainLink Do?
ChainLink is basically a decentralized oracle network.
An oracle is an “agent” that finds and verifies real-world data and brings this data to the blockchain to be used in smart contracts. Existing oracles are centralized and have a single point of failure, whereas a decentralized oracle would be without a single point of failure. This is what ChainLink is designed to achieve.
The objective of ChainLink is to create a bridge between the off-chain and on-chain ecosystems. Therefore, the ChainLink architecture consists of the on-chain component and the off-chain component.
The On-Chain Component
The on-chain component consists of on-chain contracts deployed on the Ethereum blockchain. They consist of 3 main contracts: a reputation contract, order-matching contract, and aggregating contract. They process the requests of users who want access to data that is not on the blockchain.
If a user or entity wants to access information from off the blockchain, they submit a requesting contract to ChainLink. The ChainLink network processes the requesting contract into its own contracts. The ChainLink on-chain contracts are responsible for matching the requesting contract with the appropriate oracle.
The reputation contract checks an oracle provider’s track record to verify its authenticity. The order-matching contract logs the user’s requesting contract agreement on the network and takes bids from verified oracle providers. The aggregating contract compiles data from the chosen oracles and calculates the final and accurate result for the query.
The ChainLink system is designed to be upgradable, such that when better techniques and technologies arise, the system can transition into it. ChainLink’s on-chain workflow has 3 steps.
- Oracle Selection: When a user submits a requesting contract, certain requirements and parameters are specified that make up a Service Level Agreement (SLA) proposal. These include oracle reputation, data specification, number of oracle resources needed, and so on. Users can use filters and search manually for oracles. ChainLink provides an automated matching engine when manual searching is not possible. In this automated search, oracles bid based on the requesting contract’s SLA. Once a requesting contract has received enough quality bids, the oracles are selected.
- Data Reporting: Chosen off-chain oracles execute the service agreement and report back on-chain.
- Result Aggregation: The aggregating contract collects the data submitted by all the oracles that pertain to the requesting contract. The aggregating contract then averages all the data to provide the requesting contract an accurate answer. This is to ensure data integrity.
Requesting contracts by users can implement a penalty fee for misbehavior by oracles.
The Off-Chain Component
The ChainLink off-chain component consists of a network of oracle nodes connected to the Ethereum network (and will in time support all leading smart contract networks).
These collect the requested data from off-chain sources and process the relevant data through ChainLink Core, the core node software that allows interaction between off-chain infrastructure and ChainLink’s blockchain.
Off-chain oracle operators are compensated in LINK, ChainLink’s ERC-20 token, for their contribution to harvesting and transmitting data. Off-chain nodes also allow developers to integrate plugins that operators use to accommodate other programs to streamline data collection.
ChainLink uses multiple oracles to collect data for a single requesting contract. The oracles are expected to use multiple resources for their data collection. This ensures the distributed nature of the platform and the accuracy of data collected.
The ChainLink Team
The ChainLink team consists of engineers and business developers. Their mailing address shows the project is based in the Cayman Islands. Key members of the team include Daniel Kochis (Director of Global Business Development), Mark Oblad (Head of Operations), Dimitri Roche (Software Engineer), Alex Kwiatkowski (Software Engineer), Thomas Hodges (Technical Community Manager).
Roadmap and Achievements
ChainLink is currently live on the Ethereum testnet known as Ropsten. Unlike some cryptocurrency projects that laud every one of their activities, ChainLink seems to follow the path of less hype, perhaps to keep users and developers focused on what really matters, which is building the network.
The development of the project can be monitored here.
ZeppelinOS announced a partnership with ChainLink in December 2017 to make use of ChainLink’s secure oracle services. Also, a partnership is confirmed with Factom and Request Network has indicated interest in partnering with ChainLink.
Challenges and Competitors
Despite the fact that ChainLink has been around for a long time, the progress it has experienced is short of what many other blockchain projects have. This is because of the complexity of the project. The mainnet launch is still anticipated by the community.
ChainLink is working on a unique area of the blockchain industry. Its competitors are primarily centralized projects (although some blockchain projects come close), including Microsoft Coco, Corda, Oraclize, Hivemind, and Mobius.
The standout feature of ChainLink is its decentralized nature, making it trustless and verifiable.
The LINK Token
The LINK Token is the native token of the ChainLink ecosystem.
The token is used to pay node operators for the retrieval of data from off-chain data feeds, formatting data into blockchain readable formats, off-chain computation, and uptime guarantees. It has a total supply of 1 billion tokens with 350 million tokens already in circulation, currently priced at $0.30.
The LINK token can be purchased on Binance with Bitcoin and Ether, on Bithumb with the South Korean Won, on Bkex with Ether and USDT, on Huobi with Bitcoin and Ether, and a few other exchanges.
The LINK token is an ERC-20 token. It can be stored in any ERC-20 compatible wallet such as Metamask, Myetherwallet, Jaxx. It can also be stored in hardware wallets that are compatible with the ERC-20 token standard, such as the Nano Ledger S and Trezor.
A decentralized oracle system is a necessity for the future of smart contracts. For smart contracts to function on a global scale, it needs a middleware like ChainLink. Ethereum and other blockchain platforms need this middleware to function seamlessly with real-world data that currently exist off of the blockchain.
While oracle systems with centralized models may be more relevant at this present time, the success and scaling of blockchain platforms will create a need that ChainLink is already well positioned to meet.
There is still a lot to be done by the ChainLink team to bring the project’s vision to life, and their progress will determine the eventual success of ChainLink.