Understanding Blockchain Oracles

Blockchain oracles connect blockchains to external systems, allowing smart contracts to work with all facets of the real world.

As you continue delving deeper into the world of blockchain technologies, you will hear about “blockchain oracles.” These oracles have no relation to the cloud application company Oracle, but they provide a way by which the decentralized Web3 ecosystem can access existing data, legacy systems, new data, and advanced computations. 

When blockchain oracles and decentralized networks are combined, they can create hybrid smart contracts, allowing for on-chain and off-chain infrastructure to support decentralized applications or DApps, that can react to real-world events and interact with traditional systems. Oracles connect a blockchain to an input or an output.

Image courtesy of chain.link

Take, for example, a sports bet between Ann and Bill. Ann bets Bill $50 that the Cardinals will beat the Steelers. Ann and Bill put $50 (total $100) in a smart contract escrow. At the game’s finale, how does the smart contract know to whom it should release the funds?  This answer requires an oracle that will obtain accurate data about the game’s outcome from an off-chain source and provide it to the blockchain securely and reliably.  

Blockchain Oracles Defined

Blockchain oracles are entities connecting blockchains to external systems, allowing smart contracts to execute based upon the inputs and outputs the oracles transfer to and from the real world.

The Oracle Problem

In general, blockchains are closed systems. The “oracle problem” blockchains have is a fundamental limitation on smart contracts. Smart contracts cannot interact inherently with data systems outside their native blockchain. Any resources that are not on the native blockchain (on-chain) are designated as “off-chain.” 

Blockchains obtain their most valuable properties by being purposely isolated from external systems.  Their properties include robust consensus of user transaction validity, the prevention of double spending, and the mitigation of network downtime. If a chain is to securely interoperate with any off-chain data or systems, an additional piece of infrastructure known as an oracle is required to bridge the two environments. 

The oracle problem must be solved because most smart contracts, especially those related to DeFi, require the knowledge of real-world data and events that happen off-chain. Oracles, therefore, expand the types of digital arrangements that blockchains can support by offering a gateway to the many off-chain real-world resources while upholding the blockchain’s valuable attribute of security. 

Many industries can benefit from combining oracles and smart contracts. This includes asset prices in finance, weather information for the insurance industry, randomness for gaming needs, IoT sensors for shipping, ID verification for governments and others, and much more.

Because the data supplied to a blockchain from an oracle will determine the outcome of any related smart contracts, it is vital that the oracle mechanism is correct and the data that the oracle is pulling from is accurate.

Decentralized Oracles

Suppose a blockchain’s oracle mechanism uses a centralized entity to deliver the data to the smart contract. In that case, this introduces a single point of failure, which defeats the entire purpose of utilizing a decentralized blockchain. Additionally, if the oracle goes offline, then the smart contract will not have access to the required data for its execution, or it may execute incorrectly due to stale data. 

Worse still, if the single oracle were to be corrupted, the data that was being delivered to the smart contract could be incorrect and may result in improper execution and bad outcomes, the epitome of garbage in, garbage out. Also, because a blockchain’s transactions are executed automatically and are immutable, a smart contract supplied with faulty data could not be reversed, and the escrow funds could be lost permanently. This single point of failure is why centralized oracles cannot be utilized for smart contract applications.  

Overcoming the oracle problem and a single point of failure requires using decentralized oracles, which prevent data manipulation, data inaccuracy, and downtime. Decentralized Oracle Networks (DONs) extend the decentralized nature beyond the blockchain from end to end. 

What’s more, some DONs, like Chainlink’s Price Feeds, have a three-layer decentralized system:

1.    From the data source

2.   The node operator

3.   Oracle network levels

This system further ensures the elimination of any single point of failure. It has been successfully used to secure tens of billions of dollars across smart contract ecosystems, using the multi-layered decentralized approach, resulting in smart contracts that can safely rely on the data inputs provided to execute.   

Courtesy of pricefeeds

Blockchain Oracle Types

Because there is an extensive range of off-chain data sources, blockchain oracles come in several varieties. Hybrid smart contracts not only need various types of off-chain data and computations, but they also require different delivery mechanisms and security levels. Each oracle will conduct a combination of the following four tasks required of the off-chain data:

·       Fetching

·       Validating

·       Computing 

·       Delivering

Input Oracles

The most common and widely recognized oracles utilized today are known as “input oracles,” which fetch data offline from the real world, then deliver it to the on-chain network for use by smart contracts.  Input oracles are used to provide off-chain financial market data to on-chain DeFi smart contracts to execute correctly.  

Output Oracles

Working in the opposite direction to input oracles are output oracles. These oracles allow smart contracts to send commands to various off-chain systems, which will cause the execution of certain actions. 

Such actions include informing a banking network to make or release a payment, informing a storage provider that items can be released, or that supplied items or data can be stored. At a slightly more complex level, an IoT system could be informed to unlock a rented vehicle that was paid for using an on-chain car rental service. 

Cross-Chain Oracles

The third type of oracle is a cross-chain oracle, which can read and write information carrying it between different blockchains. Cross-chain oracles are the key to enabling interoperability, allowing for the movement of data and assets between separate blockchains. 

Moving such data from one blockchain can trigger an action on the other, or assets can be bridged across the chains so that they can be used outside of the native blockchain where they were issued.  These oracles may be the bridge to wider crypto acceptance.

Compute-Enabled Oracles

The newest type of oracles, becoming more widely utilized for smart contract applications, are computer-enabled oracles. These oracles secure off-chain computations to provide decentralized services that are unworkable on-chain due to technical, legal, or financial constraints. 

Services such as off-chain computation on Aglorand and Keepers on Chainlink can automate running smart contracts when predefined events occur, such as Zero-Knowledge Proofs (ZKPs) where one party can prove to another that they have the knowledge about a piece of information without having to reveal that information, or by running a verifiable randomness function which provides a provably fair tamper-proof source of randomness beyond the control of a smart contract.  

Hybrid smart contracts can be constructed with advanced capabilities by using multiple oracles.

Hybrid smart contract construction courtesy of link education

Oracle Reputations

Because there are so many choices, finding an oracle service with a strong reputation is critical when deciding which one to use. Blockchain oracle reputation systems allow users and developers to monitor and filter through oracles, based on the parameters they believe are essential. An oracle’s reputation is aided by the fact that oracles sign and deliver data to a blockchain’s immutable public ledger, allowing for the historical performance to be reviewed and provided to blockchain users through interactive dashboards like reputation.link and market.link.

Such reputation frameworks provide each oracle network and node (oracle) operators accuracy and reliability. Developers can then make an informed decision as to which oracle they want for their smart contracts. 

Oracle Use Cases

Smart contract developers can build more advanced Dapps using oracles, giving them a more comprehensive range of use cases for on-chain applications. There are potentially an infinite number of use cases with each new oracle added, but the following are the most common:

Decentralized Finance (DeFi)

A large swath of the decentralized finance (DeFi) ecosystem requires the use of oracles to access financial data (markets and assets). Decentralized money markets, for example, use price oracles to determine a user’s borrowing capacity and check if the user’s positions are undercollateralized and require liquidation. Likewise, synthetic asset platforms will use price oracles to peg the value of their tokens to real-world assets, while automated market makerswill use price oracles to concentrate liquidity at the current market price improving capital efficiency.  

Gaming and Dynamic NFTs

Non-financial use cases can be enabled through oracles such as on-chain gaming, which can use verifiable randomness to create unpredictable and more engaging gameplay for users, like the appearance of prizes or a randomized bracket during a tournament. 

Oracles can also be applied to smart contracts such as dynamic NFTs (Non-Fungible Tokens) that can change their appearance, value, or distribution, depending on external events like the time of day, the weather, or by completing a task in gaming. What’s more, computer oracles can be used to generate verifiable randomness that is then used by a project to assign random traits to an NFT or for selecting the lucky winner when a high-demand NFT is dropped.  

Insurance

Insurance smart contracts use inputs from oracles to verify the occurrence of an insurable event during the claims processing period by accessing physical sensors, APIs, satellite images, and legal data. Insurance smart contracts also use output oracles to make payouts for claims using other blockchains or for linking to a traditional payment service.  

Enterprises

The use of cross-chain oracles provides enterprises with a secure bridge between chains, a blockchain middleware that allows them to connect backend systems to any blockchain network. This structure allows enterprise systems to read and write on any blockchain and perform complex logic operations deciding how best to deploy assets and data for recipients on the same oracle network. 

The result: enterprises work quickly, joining blockchains in high demand and swiftly creating support for any smart contract services desired by users. 

Sustainability

Oracles play a critical role with sustainability by supplying smart contracts with environmental data from IoT and similar sensors, satellite images, and machine learning computations. This data enables smart contracts to dispense rewards to those that conduct reforestation initiatives or participate in conscious consumption. By extension, oracles also support the carbon credit process that is intended to offset a company’s climate change impact. 

Closing Thoughts

Oracles extend the capabilities of blockchain networks and the smart contracts running on them, providing access to several off-chain data stores and resources. These can be harnessed to create advanced, hybrid smart contracts whose use cases can now go far beyond simple tokenization and transfer of value. 

Much like how the original Internet brought forth monumental change, democratizing data and how it is exchanged, hybrid contracts powered by oracles are redefining how the world economy should function. 

Disclaimer: The information provided in this article is solely the author’s opinion and not investment advice – it is provided for educational purposes only. By using this, you agree that the information does not constitute any investment or financial instructions. Do conduct your own research and reach out to financial advisors before making any investment decisions.

The author of this text, Jean Chalopin, is a global business leader with a background encompassing banking, biotech, and entertainment. Mr. Chalopin is Chairman of Deltec International Group, www.deltecbank.com.

The co-author of this text, Robin Trehan, has a bachelor’s degree in economics, a master’s in international business and finance, and an MBA in electronic business. Mr. Trehan is a Senior VP at Deltec International Group, www.deltecbank.com.

The views, thoughts, and opinions expressed in this text are solely the views of the authors, and do not necessarily reflect those of Deltec International Group, its subsidiaries, and/or its employees.

One thought on “Understanding Blockchain Oracles

Comments are closed.

design and development by covio.fr