Blockchain Oracles Explained: The Basics, Types And The Oracle Problem
Without any doubt, blockchain technology is currently having a moment in the world. We have seen several successful applications over the past decade. Bitcoin came and gave rise to other cryptocurrencies. Since 2021, NFTs have been a major talking point reaching trading volumes of billions of dollars. Similarly, the world is paying more attention to DAOs and DeFi.
However, even with the current popularity blockchain enjoys, many aspects of the technology are not well understood. Blockchain oracles are an apt example of this. Oracles are critical to several applications of Bitcoin. Thus, in this article, we will break down what Bitcoin Oracles are, the types and the problem with them.
What Are Bitcoin Oracles?
Blockchain oracles are third-party services that let smart contracts interact with external information. Thus, you can think of oracles as the bridges between the blockchain and the real world. Generally, blockchains and smart contracts cannot access data outside their network. However, this limits the execution capabilities of smart contracts. Thus, blockchain oracles serve as a way for smart contracts to access real-world data in order to execute contractual agreements.
As you can imagine, the real-world link provided by blockchain applications is vital to the advanced and broad applications of blockchain technology. It essentially allows on-chain and off-chain infrastructures to interoperate. Without oracles, blockchain and smart contracts would have limited use cases.
Types of Blockchain Oracles
There is a broad range of off-chain resources required by blockchain applications. As such, blockchain oracles come in various forms to meet different needs. Here are the major types of blockchain oracles:
- Input Oracles: These are the most recognizable type of blockchain oracles. Input oracles fetch data from traditional systems and deliver it onto a blockchain for use by smart contracts. These oracles are popularly used to provide DeFi smart contracts with access to financial market data.
- Output Oracles: Unlike input oracles that send data onto a blockchain network, output oracles are used to transfer on-chain data to the real world. These oracles enable smart contracts to send commands that trigger specific actions in off-chain systems. In essence, it allows a smart contract to execute a contract even beyond the blockchain network. For example, with output oracles, a smart contract can tell a banking network to make a payment.
- Cross-Chain Oracles: These oracles are essential for interoperability among different blockchain networks. Put simply, cross-chain oracles can read, write and interpret information from different blockchain networks. It acts as a translator that allows one blockchain to trigger an action on another. With cross-chain oracles, data and assets can be moved across blockchains.
The Oracle Problem
The Oracle Problem revolves around the inability of blockchains to interact with real-world data. This is a problem because smart contracts must connect to the outside world to realize 90% of their potential use cases. Bridging the gap between the blockchain and the outside world, however, requires the additional infrastructure of an oracle. The issue is that this additional infrastructure introduces a level of vulnerability since it is not subject to the security mechanisms of blockchains. Generally, blockchains are yet to solve the oracle problem.
Blockchain oracles are a crucial element in any meaningful and impactful blockchain application. These oracles enable the use of blockchain in insurance, asset pricing, gaming, and ID verification. By improving the security of blockchain oracles, we might unlock even more possibilities with blockchain technology.