Oracles are a crucial component that enables smart contracts to communicate with the real world.
Blockchain Oracles Explained
Oracles act as a bridge between blockchains and external systems, allowing decentralized applications (DApps) to access and execute off-chain data based on real-world events.
In short, blockchain oracles provide external data to on-chain smart contracts. This data can include weather data, random numbers, price feeds, event results, web APIs, business backends, and much more.
Without oracles, blockchains and smart contracts would not be able to interact with anything happening outside their networks. An example of a blockchain oracle would be that decentralized exchanges are unable to determine the fair price for an asset based on centralized funding price feeds.
Oracles essentially solve one of the biggest limitations of smart contracts: their inability to communicate directly with off-chain systems. By delivering data to on-chain applications or moving it cross-chain, oracles significantly expand the functionality and use cases possible with blockchain technology.
What is an oracle network?
While an individual oracle can offer data to smart contracts, oracle networks go one step further. An oracle network brings together multiple independent oracle nodes, merging their data to provide smart contracts with access to off-chain computation and data.
Oracle networks enable end-to-end decentralization of data delivery by combining multiple data sources, multiple Oracle operators, and advanced aggregation technology. This aims to eliminate every single point of failure and allows smart contracts to leverage real-world data in execution.
How do blockchain oracles work?
Oracles work through a series of retrieving, validating, and broadcasting data from external sources to smart contracts on the chain. The main steps usually include:
- Smart contract creates an oracle request
- Oracle nodes monitor the blockchain for requests
- Oracle nodes retrieve data from off-chain sources
- Nodes collect data to arrive at a single result
- The end result is signed and delivered on-chain
- Smart contract consumes the result and executes logic
For example, a defi lending platform’s smart contract can create a request for the price feed of a specific asset. Oracle nodes would see this request, retrieve price data from exchanges, merge it into one price, sign the price blob, and send the result back to the smart contract. The defi platform would then use this price data to calculate interest rates or liquidation penalties.
This suite allows smart contracts to incorporate real-time data into their execution while retaining the benefits of blockchain networks.
Types of Blockchain Oracles
Different types of oracles provide different data and services to blockchain networks:
- Enter oracles — Retrieve and deliver data into smart contracts from external sources such as web APIs, enterprise systems, IoT devices, etc.
- Output oracles — Allow smart contracts to perform actions on external systems, such as making payments or storing data.
- Calculate oracles — Perform intensive off-chain computations, such as generating randomness or running ML models.
- Multi-chain oracles — Retrieve data across different blockchain networks, enabling interoperability between chains.
These all expand the use cases possible for smart contract developers. Input oracles like price feeds are essential for defi, while computational oracles enable verifiable randomness in blockchain gaming. Cross-chain oracles allow assets to move across networks, and output oracles can trigger payment transactions in the real world.
Together they provide the remote connectivity needed for hybrid smart contracts to respond to real-world events and interoperate with traditional infrastructure.
Blockchain Oracle Use Cases
With data provided by oracles, smart contracts can enable various decentralized applications, including:
- Decentralized finance – Access data on asset prices, market events, sentiment analysis, etc., to power automated defi protocols for trading, lending, derivatives and more.
- Insurance — Payout claims are automatically paid out when IoT devices and data feeds verify natural disasters, flight delays, supply chain issues, etc.
- Gaming — Incorporate verified external events into games and generate provably fair randomness to distribute rewards, assets, etc.
- Supply chain — Track shipping locations, terms, trade status processes and more using IoT and external data.
- Enterprise — Enable legacy enterprise systems to interoperate with smart contract platforms to access new markets and use cases.
- Metaverse — Bridge metaverse environments with external data streams, off-chain computations and blockchain networks.
- Sustainability — Access and verify data such as carbon emissions, renewable energy use, waste levels, etc., to manage environmental initiatives.
Blockchain oracle service list
The blockchain oracle landscape is constantly evolving, with numerous offerings ranking among the best blockchain oracle services. Here is a list of some of the best blockchain oracles:
Popular oracle networks such as Chain link (LINK) integrates multiple measures intended to increase reliability and security, such as retrieving data from multiple sources, using multiple oracle operators, and aggregating using technology such as threshold signatures, with the aim of achieving high accuracy and reliability to guarantee. The end result is hybrid smart contracts – combining on-chain and off-chain infrastructure for advanced functionality.
Band protocol (BAND) is a remarkably decentralized oracle within the Cosmos ecosystem. It stands out for its tamper-resistant data feeds and custom oracle scripts, supported by a Delegated Proof of Stake mechanism. Validators stake the native BAND token to participate in data retrieval and verification.
Another important player is Decentralized information asset (DIA), an open-source oracle platform designed for the defi space. DIA’s strength lies in its community-driven approach to data verification and scalability, making it adaptable to the rapidly changing defi environment. It supports multiple blockchains, including Ethereum (ETH), Fantom (FTM), Solana (SOL), Avalanche (AXAX), Polygon (MATIC), and Arbitrum (ARB).
Universal market access (UMA) is an Ethereum-based oracle that enables the creation of synthetic financial contracts. These contracts represent real-world assets and track their performance, democratizing access to markets that traditionally have high barriers to entry. The decentralized, open-source nature of UMA aims to ensure data integrity and bridge the gap between defi markets and real financial products.
Counter (TRB) comes into the picture as a permissionless oracle targeting various industries. Coming from Daxia, a derivatives platform, Tellor emphasizes a system of reporters that ensure data integrity. The two main data feeds, spot prices and custom prices, meet the different needs of customers.
The DOS network (DOS), a decentralized oracle at layer 2, is known for its fast delivery of data feeds, which is crucial for urgent smart contract applications. However, performance is somewhat dependent on the capabilities of layer 1 protocols.
Nest protocol (NEST) stands out as a truly decentralized Ethereum-based oracle. It uses quote mining for accurate data and includes quote calls, miners and verifiers. The Nest protocol also includes a Probabilistic Virtual Machine for additional functionality.
iExec RLC (RLC) is diverging from traditional oracles by offering a marketplace for cloud computing services, bridging the gap between web2 applications and web3. Thanks to the easy-to-use APIs, custom oracles can be created.
Finally, API3 is a decentralized oracle that links web3 applications to off-chain data. The approach includes decentralized APIs for direct data feeds and the Airnode middleware for seamless API blockchain integration. API3 supports several blockchain networks, including Polygon and Fantom, demonstrating its versatility.
The oracle problem
It’s important to understand why oracles are critical to unlocking the potential of smart contracts. Isolating data within a blockchain network provides this security, but limiting external connectivity leads to the oracle problem. This means that while oracles are a solution, they are also a compromise between convenience and security.
Oracles partially solve this problem by safely expanding connectivity while retaining many blockchain benefits. Nevertheless, retrieving, validating, and delivering external data introduces some centralization into activities that are otherwise completely decentralized on public blockchains.
Using decentralized oracle solutions aligns with blockchain principles by not putting all eggs in one basket. Such networks provide end-to-end decentralization, allowing radically different use cases to be built using hybrid smart contracts.
The bottom line
Oracles fill a critical gap in smart contract functionality: lack of connectivity to the ‘real world’. By giving blockchain networks access to off-chain computation and external data entry, they expand the possibilities for web3 developers.
Decentralized oracle networks can provide speed, security, and reliability to data sources and services for dApps in defi, gaming, insurance, supply chains, enterprise systems, and more. The functionality unlocked by blockchain oracles and hybrid smart contracts enables decentralized approaches across industries. They provide the core data infrastructure for enabling many web3 applications.