Chainlink — A Visual Summary
Sergey Nazarov, the CEO of Chainlink, recently gave an excellent presentation at the Virtual Ready Layer One conference on May 5th 2020 featuring some newly designed slides that introduced more information about the Chainlink framework overall. You can find a recording of the original presentation here and the full slideset here.
This article is a compilation of info from a thread I made on Twitter that provides context into each of these slides in more detail. This article in particular provides the same information but in a more easily shareable format that will be archived on my blog forever for all future LINK Marines to dig into. Let’s begin shall we?
ALL blockchains suffer from the “Oracle Problem.” From Ethereum to Bitcoin to Hyperledger to Tezos to Cosmos to Harmony to Kava to Conflux to Polkadot to Zilliqa to Icon to Hedera Hashgraph to Ontology to Solana and beyond. They all require oracles for external data.
Smart Contracts (SCs) on their own have zero access to the external real world data they need to execute including market data, events data, retail payments, bank payments, and more.
The Smart Contract space is currently largely defined by creating tokens (e.g. 2017 ICO boom, 2019 DEX growth), not because tokens were the goal, but because tokens are a native “out of the box” functionality of Smart Contract platforms like Ethereum.
The vast majority of contractual agreements require external information beyond just ownership (tokenization). Once SCs have secure access to external data, growth will explode and distribution of tokenization vs real world events related contracts will look very different.
Smart Contracts originally started out very simple as multi-signature “wallets” on Bitcoin $BTC which required multiple parties to sign off on a transaction. Later the $NXT blockchain introduced specialized low level protocol opcode smart contracts for more functionality.
These low level opcode-based smart contracts were extremely limited as new opcodes had to be added to the L1 protocol itself through a hard fork! Ethereum $ETH introduced programmable smart contracts which could be written in solidity and required no hard fork to deploy.
Scriptable Smart Contracts were much easier to write and could be deployed by anyone, but it was like a computer without an internet connection. Chainlink $LINK introduced decentralized oracles enabling these same scriptable smart contracts to access any and all external data.
Decentralized Finance #DeFi has been absolutely exploding in growth to now ~$1B in total value locked. 90%+ of DeFi including MakerDAO, Synthetix, Compound, Aave, bZx, Nexus Mutual, and more REQUIRE external oracles to exist.
Smart Contracts are actually are two separate different parts. First is the on-chain code that runs the predefined business logic (rules of the dApp). Second is the off-chain oracles for connecting to external data, enterprise systems, and traditional fiat payments.
External data includes Bloomberg, Reuters, NYSE, CoinMarketCap, Kaiko, Alpha Vantage, Easypost, Google BigQuery, etc. Enterprise systems includes Salesforce, Oracle, SAP, Microsoft, Docusign, etc. Traditional payments includes Citi, Visa, Mastercard, HSBC, SWIFT, Paypal, etc.
In order for Smart Contract to be fully trustworthy, it needs to be secured end-to-end from inputs to outputs (I/O). If just the on-chain code is secure but the I/O isn’t, then the entire contract is worthless, insecure, and not useful to anybody.
Smart Contracts require I/O of varying types and functionalities. Inputs can range from traditional market data, crypto prices, ANY Web API, and more. Outputs can range from enterprise systems, traditional payments, crypto payments, and more.
Chainlink’s approach to reliable and secure oracles includes
- Provably Secure Nodes
- High Quality Data
- Cryptoeconomic Security
- Defense in Depth
- A Large Open Source Community
- Connecting any blockchain environment to all inputs and outputs
This hopefully isn’t news to you, but centralized oracles are a single point of failure that defeats the whole purpose of using smart contracts that run on a decentralized blockchain in the first place. Centralized oracles are not a legitimate solution to the oracle problem.
A Decentralized Oracle Network requires many independent sybil resistant nodes who need to come to consensus. Anybody can build their own Chainlink network using any nodes they desire and deem trustworthy, but this trust barrier will lower with new features and more data.
The Chainlink Market is a permissionless community marketplace where any node operator or data provider (sometimes the same entity) can list their services offered and developers can use this information to build their own Chainlink oracle network.
Binding Service Agreements are on-chain commitments signed by each oracle node in a network enforcing high security and high quality data standards. Both the commitment and final performance of such commitment are immutably stored on-chain and are fully verifiable.
A cryptographically provable performance history enables requesters to use this on-chain information about nodes to determine which are reliable and which are not. Unreliable nodes will no longer be selected due to their poor performance and they will lose all future revenue.
Binding Service Agreements also enable cryptoeconomic security through staking $LINK. Slashing conditions for this stake are agreed to beforehand by all parties ensuring there is an economic punishment for misbehavior, data inaccuracy, or any other predefined condition.
The “Web of Trust” model provides context on a node’s reliability and includes information aggregated across many chains. Usage by multiple real dApps is a signal of trust and having many highly used and reputation sensitive nodes makes for a stronger network overall.
Decentralization at the node operator level is incredibly important but so is the decentralization at the data source level. Pulling from a single data source, even from many nodes, is still a single point of failure so data should be aggregated across many data source APIs.
Putting this all together creates a decentralized oracle framework that enables truly Decentralized Finance apps that contains no single point of failure. many Exchanges -> many Data Providers -> many Chainlink Nodes -> many Reference Contracts -> many DeFi Applications
Not only does Chainlink support a multitude of different blockchains for off-chain data to be sold to, but Data Providers can either run their own Chainlink node directly and/or they can sell their APIs, business as usual, to other Chainlink node operators.
There are currently 31+ Reference Data Networks #PoweredByChainlink live on Ethereum mainnet today! This includes USD and ETH base pairing for assets including cryptocurrencies, stablecoins, commodities, indices, and more. Check them out at feeds.chain.link.
What this all means is that Chainlink is a framework for building decentralized oracle networks to connect any blockchain to all inputs and outputs required by smart contracts. Flexibility and diversity is key here, data providers can now sell data to every blockchain.
A great example of what is now possible is a Smart Crop Insurance Contract. Multiple weather data sources are read by a decentralized oracle network and fed into a smart contract on any blockchain, afterwards off-chain payments can be triggered in widely accepted formats.
Chainlink is an idea meritocracy where the best ideas win. The team has been growing rapidly but they’re always looking for talented folks to join them on the mission to solving the oracle problem practically once and for all. You Just Win.
Hope you enjoyed reading this brain dump, these are some incredibly informative slides overall, so you can derive your own conclusions. The great part is that this is just a tiny fraction of what Chainlink can and will be leveraged for! :)
Follow me on Twitter @ChainLinkGod where I fight the information asymmetry surrounding DeFi, Oracles, and Chainlink.