Have you ever heard about Blockchain Oracles? If the terminology feels very foreign, this article will help you understand more clearly what blockchain oracle is.
What is oracle blockchain?
Blockchain oracle is a third-party service that provides smart contracts with external information. Its function is to connect the blockchain with the outside world.
Blockchain and smart contracts cannot access data outside the chain. However, to enforce many contractual agreements, it is essential to have relevant information from the outside world.
To connect data on and off-chain, blockchain oracles are essential. By expanding the scope of smart contracts, Oracle is becoming an important part of the blockchain ecosystem.
Since smart contracts can only access data from within their network in the absence of a blockchain oracle, smart contracts would be pretty much useless. However, the blockchain oracle is the layer that interrogates, verifies, and authenticates external data sources before delivering that data.
Smart contracts and network resources are required to obtain data from external sources. Some oracles can also send information to smart contracts and send it back to external sources.
Example of Oracle Blockchain
Let's make an analogy with the Blockchain Oracle concept more easily. For example, Andi and Budi place a bet on a soccer league match. Andi bets on team A while Budi is sure team B will win.
Once the terms are agreed, the funds will be locked in the smart contract. This is where the smart contract works, which will release funds to the winner based on the results of the match.
However, smart contracts have limitations in that they cannot interact with internal data, this is when oracles are needed to provide the necessary information. In this context, the blockchain oracle will inform which team won the match.
Once the match is over, the oracle interrogates a trusted API to find out which team won and passes this information to the smart contract. The contract then sends funds to the betting participant, depending on the result.
Without an oracle relaying the data, there would be no way to settle these bets in a way that could not be manipulated by one of the participants.
Different Types of Oracle Blockchains
There are several qualities that can be used to classify blockchain Oracles:
- Source—Does this data come from hardware or software?
- Focus on information: in or out?
- Trust: is it centralized or ubiquitous?
- Oracles fall into several categories. See further explanation below.
Software Oracle
Oracle software interacts with online information sources and sends that information to the blockchain. The information typically provided by software oracles can include values, but can also be sent in real-time because software oracles are connected to the Internet, which allows them to provide information to smart contracts instantly.
Hardware Oracle
Some smart contracts have to be used in real life. The hardware developed by Oracle is intended to collect information from the physical world and then make it available to smart contracts. Electronic sensors, barcode scanners, and other data reading devices can transmit data.
Essentially, Oracle hardware “translates” real-world events into digital values that smart contracts can understand.
One example is a sensor that knows whether a truck carrying goods has arrived at the loading point. If that's true, the sensor relays the information to the smart contract, which can then make a decision based on the information.
Oracle In and Out
Inbound oracles transmit information from external sources to smart contracts, while outbound oracles transmit information from smart contracts to the external world.
An example of an incoming oracle is one that tells a smart contract the temperature measured by a sensor. An example of an exit oracle can be considered with a smart lock. If funds are deposited to the address, the smart contract sends this information via an outbound oracle to the mechanism that unlocks the smart lock.
Centralized and Decentralized Oracles
The only provider of smart contract information is Oracle, which is controlled by a single entity. Since contract performance depends entirely on the entity controlling the oracle, using only one source of information poses risks.
Additionally, smart contracts will be directly affected by malicious interference from bad actors. One of the main problems with centralized oracle blockchains is that there are weak points, which make contracts more vulnerable to failure.
Decentralized oracle blockchains have goals similar to those of public blockchains: avoiding counterfeit risks and increasing the reliability of information provided to smart contracts by not relying on a single source of truth. Because smart contracts interrogate multiple oracles to ensure that the data is accurate and valid, decentralized Oracles are also known as consensus oracles.
Decentralized oracles are available for certain blockchain projects for other blockchains. Although decentralized oracles aim to create trustless trust, they can be useful in prediction markets, where social consensus can verify the validity of an outcome.
Contract-Specific Oracle
Contract-specific oracles are created for use by a single smart contract, so if someone wants to use more than one smart contract, they must create a comparable number of contract-specific oracles.
This type of Oracle blockchain is considered expensive and time consuming. Using this method in a business that wants to extract data from multiple sources may be inefficient. In contrast, developers have great flexibility to adapt contract-specific oracles to specific requirements because they can be designed from the ground up to meet specific situations.
Human Oracle
Sometimes individuals with specialized knowledge in a field can also serve as blockchain oracles. They can conduct research and verify the authenticity of information from various sources, then translate that information into smart contracts.
Because human oracles can verify their identity using cryptography, the likelihood of fraudsters faking identities and providing corrupt data is relatively low .
Problems with the Oracle Blockchain
Smart contracts are critical to maintaining a healthy blockchain ecosystem because they use oracle data to make decisions. The main challenge in designing oracles is that if the oracle is affected, the smart contracts that depend on it will also be affected. They often call it the Oracle problem.
Unfortunately, oracles are not included in the security mechanisms that public blockchains can offer because they are not included in the main consensus of the blockchain. Trustless smart contract execution and trust conflicts between third-party oracles are still unsolved problems.
Man-in-the-middle attacks can also be a threat; this occurs when malicious actors gain access to the data flow between the contract and the oracle, and then modify or falsify the data.
Conclusion
For the global adoption of blockchain, blockchain oracles are essential because smart contracts must rely on information that already exists in their networks, which will greatly limit their capabilities.
For the blockchain ecosystem to grow, the Oracle blockchain remains one of the critical building blocks that must be implemented in a secure, reliable, and trustless manner.
Also read:
A Brief History of Blockchain Technology from the Beginning to Today
What is the Blockchain Consensus Algorithm?
What is a Block and How it Works in Blockchain
DISCLAIMER: This article is informational in nature and is not an offer or invitation to sell or buy any crypto assets. Trading crypto assets is a high-risk activity. Crypto asset prices are volatile, where prices can change significantly from time to time and Bittime is not responsible for changes in fluctuations in crypto asset exchange rates.
Comments
0 comments
Please sign in to leave a comment.