Understanding Blockchain Oracles: The Best Blockchain Oracles to Watch in 2023
Explore the power of blockchain oracles in our article, featuring the top 10 oracles of 2023. Learn how blockchain oracles bridge the gap between blockchains and the real world, ensuring secure, reliable data transmission.
What Are Oracles In Blockchain?
Blockchain oracles emerged as a solution to a significant challenge faced by blockchain-based applications: the need for external information. Similar to the role of ancient oracles who provided hard-to-obtain information, contemporary crypto oracles play a similar role by supplying up-to-date data, ensuring the smooth operation of systems.
These oracles are external services that furnish smart contracts with information from outside the blockchain. In essence, a blockchain oracle acts as a bridge between the blockchain and the external world, providing essential data that enables smart contracts to interact with and react to real-world events.
Without them, blockchains would be isolated systems, incapable of adapting or responding to external events. However, with the inclusion of oracles, blockchains become versatile tools that can be integrated into everyday life in numerous ways.This article will delve into various facets of blockchain oracles, exploring their operational mechanisms and the reasons behind their necessity.
Why Blockchain Oracles Are Needed?
Before exploring the nature of oracles, let’s try to understand their origin and the issues they address. Smart contracts inherently lack the ability to interact with data and systems outside their blockchain ecosystem. Data external to the blockchain is"off-chain", whereas data within the blockchain is "on-chain". Blockchains maintain their integrity and key features like transaction consensus, prevention of double-spending, and network stability by being isolated from external systems.
To securely link with off-chain systems, blockchains employ an intermediary infrastructure, known as an "oracle".This bridging enables smart contracts to carry out transactions based on external information, such as interest rates, temperature readings, or external databases, ensuring the data remains unaltered.
Oracles don't generate real-world data; rather, they source it from existing databases and communicate it reliably to the blockchain. The interaction between oracles and blockchains is mutual, with oracles also disseminating blockchain data to external platforms like banking applications.In simple words, oracles empower developers to integrate real-world data into blockchain applications. They pull information from external sources, such as IoT devices, online databases, or websites, and make it blockchain-accessible via smart contracts.
Oracles in DeFi
Given that most smart contract applications, like DeFi and GameFi, depend on real-world data, oracles are super important.
For example, popular decentralized exchanges (DEXs) such as Uniswap and Sushiswap rely on precise, real-time price information to facilitate smooth and efficient trading operations, minimizing the risk of slippage. Similarly, DeFi borrowing and lending platforms, like AAVE, depend on oracles for monitoring appropriate collateral levels and for determining when to liquidate loans that are under-collateralized.
Decentralized and algorithm-based stablecoin protocols, like MakerDAO and Frax Finance, require the use of price oracles to guarantee the stability and proper collateral backing of their respective stablecoins.
Other than DeFi, oracles cater to various sectors, including finance for asset pricing, government for identity verification, gaming for randomness, supply chain for tracking items, and much more.
How Do Blockchain Oracles Work
The core role of an oracle in the blockchain context is to source data from external environments. Oracles function through two main components: the on-chain smart contract and the off-chain nodes. The on-chain part listens for new data requests from connected smart contracts and relays these to the off-chain nodes. These nodes then seek out the required data from appropriate sources.
In a decentralized oracle service, a network of nodes obtains data from diverse off-chain services. This network verifies the accuracy of the data by comparing different sources and disregarding any anomalous data that could distort the overall picture.
After the off-chain nodes validate and convert the data into a blockchain-compatible format (a transaction), it is sent to the on-chain oracle contract. This contract then interacts with the initiating smart contract. Once the data is received, the smart contract executes automatically, and the transaction is validated by the blockchain nodes.
To maintain data integrity and reliability, oracle networks often implement crypto incentives. These incentives reward nodes for supplying accurate and clean data and penalize them for providing unreliable information.
Types of Blockchain Oracles
Blockchain oracles vary widely due to their diverse applications, and they are often categorized based on their operational methods. It's common for an oracle to fit into more than one category, such as being both outbound and software-based. A deeper understanding of the various types of blockchain oracles aids in selecting the appropriate one for specific needs.
Software Oracles
These are the most common type of oracle and are crucial for smart contracts that require real-time information from the internet. They search data from websites, databases, and servers, primarily accessing publicly available online data. Common uses include retrieving flight details, exchange rates, and market trends.
Hardware Oracles
These oracles interact with the physical world. They fetch data from electronic sensors, RFID tags, barcode scanners, or IoT devices. Hardware oracles are vital for integrating real-world physical data into the blockchain, like tracking shipments in a supply chain.
Inbound Oracles
These bring external, real-world data onto the blockchain, making them particularly useful for integrating real-world events and data with blockchain operations.
Outbound Oracles
Operating inversely, outbound oracles transmit data from the blockchain to external systems, enabling actions in other systems, like banking networks, based on blockchain data.
Centralized Oracles
These oracles are centralized if they are controlled by a single entity or source data from a singular point. While common, this centralization presents risks as any misinformation or malicious activity can impact the entire system.
Decentralized Oracles
By distributing control and data sources across multiple network participants, these oracles mitigate some risks associated with centralized systems. Achieving true decentralization often involves complex consensus mechanisms and multiple data sources, sometimes managed by an external blockchain.
Contract-Specific Oracles
Tailored for individual smart contracts, these oracles handle specific tasks or singular events rather than continuous data streams. They are useful for one-time applications but can be cumbersome for recurrent needs.
Human Oracles
Individuals with specialized expertise in fields like technology, finance, or mathematics can act as oracles, offering nuanced verification of information.
Best Blockchain Oracles in 2023
Here, we'll delve into the characteristics of some of the leading blockchain oracles as of 2023, to aid in making an informed choice.
Chainlink
Chainlink stands out as a leading blockchain oracle, providing off-chain data to various blockchain entities, including layer 1 and 2 solutions, dApps, side-chains etc. Projects like Compound, Avalanche, and Aave use Chainlink. Its reputation for high security and multi-platform functionality is bolstered by two key features: the Chainlink Verified Random Function (VRF), which generates random values with cryptographic proof for smart contracts requiring unpredictability, and Chainlink Automation, which manages maintenance tasks for smart contracts.
API3
API3 is a community-managed oracle, enabling both users and developers of blockchain applications or businesses to integrate their Web3 applications with the platform. API3 specializes in creating and distributing decentralized APIs (dAPI). Its primary goal is to make conventional APIs align with Web3 decentralization standards, ensuring a smooth process for developers. API3's approach involves direct data aggregation from first-party providers who operate their own nodes, enhancing transparency and reducing data tampering risks. Its unique Airnode technology allows for the easy conversion of traditional APIs into dAPIs.
Tellor
Tellor is a permissionless blockchain oracle service offering two primary data feeds: Spot Price feeds for live market data from existing APIs and Custom Price feeds tailored to specific client needs. Its network consists of nodes, known as reporters, that transmit data from Tellor’s oracles and earn TRB token rewards. Tellor distinguishes itself with an automated dispute resolution protocol, designed to swiftly address oracle data errors. This system charges a fee for dispute resolution, incentivizing reporters to provide prompt and accurate data for efficient dispute settlement.
Band Protocol
Band Protocol is a cross-chain oracle developed within the Cosmos ecosystem. It provides secure data feeds to smart contracts through BandChain, its public blockchain. Validators on BandChain request data from APIs or other web sources and then distribute this data to users and entities. This protocol can transmit data across various blockchain networks using Cosmos' Inter-Blockchain Communication (IBC) protocol. A key feature of Band Protocol is the ability for users to create custom oracle scripts, enabling the receipt of data from a variety of real-world sources. It operates on a Delegated Proof of Stake (DPoS) consensus mechanism, where validators stake the protocol's native BAND token to retrieve and validate data.
Nest Protocol
Nest Protocol is a decentralized oracle network that employs a process called “quotation mining” to relay off-chain data to on-chain smart contracts. Its network comprises three roles: price callers, miners, and verifiers. Price Callers, which include dApps and other protocols, pay a fee to access data from Nest. Miners, who stake the native NEST token, supply price information to Nest’s smart contracts. Verifiers, locking up larger amounts of NEST tokens, validate the provided data. Additionally, developers have access to Nest’s Probabilistic Virtual Machine (PVM), akin to an EVM but with a broader range of functions and tools for price feed-focused smart contracts.
UMA
Universal Market Access (UMA) is an Ethereum-based oracle offering smart contract templates for creating synthetic assets and financial contracts. These synthetic contracts are tokenized versions of real-world financial products, like derivatives, allowing broader market access. These synthetic assets track the performance and pricing of other underlying assets using smart contracts. UMA enables the digitization of various financial products, including Contracts for Difference (CFD), commodities, and cryptocurrencies, thereby expanding DeFi market access to real-world assets. For instance, users can create a tokenized version of Bitcoin without owning the actual coin.
Augur
Augur is a decentralized protocol enabling users to create and bet on outcomes in decentralized prediction markets. It utilizes a decentralized oracle service to verify real-world event outcomes, like sports games and elections, for these markets.
Augur's smart contracts facilitate betting using ETH and are fully open-source, allowing for public use, audit, and modification. The platform uses ETH and its native token, Reputation (REP), with REP employed by node operators, or reporters, for dispute resolution and outcome clarification. Reporters stake their REP tokens in Augur contracts, and the collective consensus determines the actual event outcomes and subsequent payouts.
DIA
DIA is an open-source oracle platform designed for the DeFi sector, leveraging crypto-economic incentives to provide, share, and use transparent, multi-participant verified price data. Its customizable data feeds allow users to tailor feeds by configuring methodologies and sources as per their requirements. DIA offers its oracle services at no cost, ensuring data authenticity through community-based price data verification for financial and digital assets. DIA supports multiple blockchains, including Ethereum, Fantom, Solana, Avalanche, Polygon, and Arbitrum.
XYO Network
XYO, an Ethereum-based oracle platform, uniquely focuses on verifying the physical location of people or objects using a vast, decentralized network of nodes. This capability is crucial for applications like supply chain management and insurance. XYO employs a "proof-of-origin" consensus algorithm to authenticate entity locations.
The XYO Network comprises four key components: Sentinels, Bridges, Archivists, and Diviners. Sentinels record location data, Bridges relay this data from Sentinels to Archivists, who then store and forward it to Diviners. Diviners analyze this data to answer specific queries and resolve problems.
Witnet
Witnet operates as a reputation-driven decentralized oracle network. In this system, nodes executing Witnet software gain or lose reputation based on their accuracy in fulfilling data requests, as determined by a consensus algorithm evaluating node responses. Nodes that deviate from the consensus, either by going offline or acting maliciously, lose reputation, which is then redistributed to nodes that were honest. In cases where the consensus is a timeout, nodes are not penalized as long as they align with the consensus.
In Witnet, oracles, also termed “witnesses”, are randomly selected based on their reputation score to process and complete data requests. Oracles that consistently act in good faith increase their reputation points, boosting their chances of being chosen for future tasks, which in turn rewards them with tokens upon successful completion.
Blockchain Oracles Risks
While oracles are vital for blockchain applications, they have notable limitations, sometimes leading to what are known as oracle exploits or attacks. These occur when oracles present false or manipulated data, either due to compromised sources or deliberate collusion within the oracle network.
Such exploits can cause substantial financial losses in DeFi. For instance, if a DeFi platform's oracle inaccurately reports a cryptocurrency's value, it could trigger unwarranted liquidations, leading to massive losses. The protocol functions correctly, but the reliance on incorrect data can have catastrophic outcomes.
Protocols involving assets with smaller market caps and limited liquidity are particularly vulnerable to oracle attacks, especially if the asset is traded on a few exchanges. Limited data sources for the oracle mean poor market coverage, making price manipulation much easier.
Beyond affecting DEX prices, oracle manipulations can also destabilize stablecoins, lead to protocol insolvency, and create problems in automated asset management protocols.
Oracle manipulation attacks are usually executed by bad actors who rapidly boost the trading volume of low-liquidity tokens in a targeted DeFi protocol using substantial amounts of cryptocurrency. This action can cause swift and substantial price surges that don't align with the broader market. Attackers often employ flash loans to obtain the initial capital if they lack sufficient funds. After artificially inflating an asset's price, they can either trade their inflated holdings for more liquid and stable tokens or use them as collateral to borrow assets, with no intention of repayment.
A notable case was the October 2022 attack on Mango Markets, a DEX on the Solana blockchain, resulting in a $117 million loss. The attacker, Avraham Eisenberg, manipulated $MNGO, Mango Markets’ governance token, using two accounts – one to short sell and the other to purchase the same token on leverage. This drastically inflated the price due to low liquidity. With artificial profits in one account, Eisenberg borrowed more $MNGO, effectively emptying the DEX’s assets.
We are currently investigating an incident where a hacker was able to drain funds from Mango via an oracle price manipulation.
— Mango (@mangomarkets) October 11, 2022
We are taking steps to have third parties freeze funds in flight. 1/
Some attackers have tried to argue that oracle manipulation attacks aren’t criminal in the same way a more straightforward hack is. In fact, Avraham Eisenberg claimed that his actions were perfectly legal and represented nothing more than a “profitable trading strategy”.
Final Words
Oracles play in important role in executing smart contracts as they integrate external data into the process. They serve as a dependable method for smart contracts to interact with the outside world, which is essential for widespread blockchain adoption. Without them, smart contracts would be confined to using only the information available within their own networks, significantly limiting their functionality.
However, oracles also present risks. If these trusted sources are compromised, they can potentially disrupt the smart contracts relying on them. Therefore, when implementing an oracle, it's important to thoroughly evaluate the trust model. Assuming an oracle is completely trustworthy might expose the smart contract to inaccurate inputs, compromising its security. Yet, with careful consideration of security assumptions, oracles can prove to be immensely beneficial.