In the past few months, we've seen an explosion of oracle tokens, in particular, Chainlink and Band Protocol. Just in the past 90 days, Chainlink has grown from a low of $3.68 to $19.85, while Band has grown from a low of just $0.99 to a high of $17.69. Now that the prices have come back down from their all-time highs, let's take a closer look at what each one offers.
First, what are oracles?
Smart contracts are designed to be deterministic; meaning the code should produce the same result every time it is run. This is to enforce the thought that anyone should be able to start from the beginning of a blockchain and come to the same result at the end. Therefore, contracts do not have the ability to retrieve values from off-chain sources.
Blockchain oracles solve this problem as intermediaries between the real world and smart contracts. Oracles do not contain data themselves; they reach out to external sources to provide data on-chain. This has a variety of use cases, to include using sporting event data for betting applications, using cryptocurrency or stock market pricing for finance applications, and weather forecasts for transportation applications. Chainlink and Band each have their own way of supplying off-chain data to smart contracts.
What is Chainlink?
"Chainlink (LINK) is a decentralized oracle network which aims to connect smart contracts with data from the real world" . Chainlink aims to connect smart contracts to off-chain APIs and data references. Chainlink's LINK token is an ERC-20 token on the Ethereum blockchain, but can integrate supplied API data into any blockchain.
Nodes, the blue Chainlink icons in the above image, are at the heart of the transactions. Node operators create feeds inside their node to allow consumers to easily retrieve external data. Once these feeds are created, and the node operator verifies their account, consumers can view all available jobs and feeds for each node at market.link. To interact with the node, a consuming smart contract would request a data feed using the jobID of the feed and pay a fee to the node (on average 0.1 LINK). This cost covers hosting the node, transaction fees, and other various expenses for the node operator. The node would then reach out the data provider to retrieve the price quote, weather data, or whatever data point was requested, followed by the node sending the data back to the consumer.
Running a node is not an an easy, passive job. It requires maintaining data feeds and jobs across a Testnet and Mainnet node to allow new consumers to test their contracts before integrating them on Mainnet. After the node is running, it is then the responsibility of the node operator to market their node and find consumers of their jobs; trying to incentivize new consumers to use their services instead of another node. This can be quite challenging as the existing nodes have proven their reliability, up-time, and variety of data feeds. As of mid-September 2020, there are 88 nodes verified on market.link, and only 45 of those have been active in the past 7 days . It is advantageous to become a reputable node, however, as those 45 active nodes have received over 48,000 LINK from payments in the same 7 days.
What is Band?
"Band Protocol is a cross-chain data oracle network that aggregates and connects real-world data and APIs to smart contracts" . Similar to Chainlink, Band's oracles are used to connect on-chain smart contracts to real world data. However, unlike Chainlink, Band runs on its own blockchain: BandChain. BandChain was created to accomplish three goals: speed and scalability, cross-chain compatibility, and data flexibility .
- Speed and scalability: BandChain is designed to serve a large quantity of data requests over multiple different blockchains. The whitepaper states the goal should be in the order of seconds and has shown results of responses in 3-6 seconds.
- Cross-chain compatibility: As mentioned above, Band oracles must be able to work across multiple different blockchains. Verification of the data on each blockchain must be efficient and trusted to be accurate.
- Data flexibility: Band oracles need to be generic enough to be able to provide multiple formats of data. They also must be able to retrieve data from both publicly available APIs as well as data only available through API keys and other barriers.
Similar to Chainlink's nodes, BandChain's validators are built to allow dApps to leverage traditional web-based data without having to rely on a centralized party. Instead of having each node create jobs, Band requires an oracle script that describes the data request to be published. This script includes the data requested and sources, along with the aggregation and formatting of the final result. When a contract requires data from the oracle, BandChain randomly selects multiple validators to fetch the data and return it to the chain. The data can then be accessed and used by the contract. This is not the only job the validator, however, as they are also responsible for proposing and committing new blocks on the blockchain. Like other blockchains built on top of the Cosmos SDK, BandChain is a delegated proof-of-stake blockchain. Validators collect fees from responding to oracle requests along with transaction fees. These profits are shared with users who delegate Band to the validator.
Both Chainlink and Band have been targets of FUD (fear, uncertainty, and doubt) campaigns. Zeus Capital LLP, "an asset management firm focused on alternative investments, market infrastructure inefficiencies, and event-driven opportunities" , published several articles over the months of July and August 2020 claiming Chainlink was built as a pump-and-dump scheme. Zeus Capital argued Chainlink's founders were getting rich off vaporware, Chainlink was nothing more than a Ponzi scheme, and Chainlink's "Link Marines" played on the human need to belong to a closed community to drive prices up. Speculation arose that Zeus Capital was a phony company created by Nexo, which was believed to have shorted LINK and couldn't pay back its investors if the price continued to go up .
Recently, the founder of SushiSwap, Chef Nomi, allegedly pulled an exit scam on the exchange and converted over 2.5 million Sushi tokens to 38,000 Ethereum worth around $14 million . Quickly the DeFi world was looking for the person behind the Chef Nomi alias, and one of the names highlighted was Band's CTO, Sorawit Suriyakarn. Users pointed to similarities between the two applications, to include having websites hosted at the same IP address, the SSL certificates were issued by the same authority (Let's Encrypt), and the frontend code had similar naming styles . According to Band, all of these allegations had an explanation, as they are commonalities that could overlap several projects .
Blockchain oracles are only in their infancy, and the requirement for real-world data will only grow as DeFi and other capabilities are built on top of smart contracts. Although each have their strengths and weaknesses, both Chainlink and Band provide oracle services that can span almost any use case. Chainlink, with its expansive data feeds and reputable node operators, provides unparalleled data support for on-chain consumers requiring any level of custom data requests. Band, with the ability to create one oracle script to use across oracles, provides an additional level of decentralization that abstracts the need for consumers to care which validator they interact with for each data request. When looking for an oracle service, there is no wrong choice between Chainlink and Band as these projects will continue to push forward in improving the oracle space for years to come.