Third-party software or devices that allow blockchain and smart contracts to interact with data outside the network are called oracles. Serving as a bridge between blockchain networks and external data, oracles have the power to expand the usage areas of smart contracts.
As is known, traditional blockchain structures are similar to closed circuit networks. Smart contracts running on the chain cannot interact with data outside of the network. Oracle structures integrate off-chain and on-chain data.
Closed circuit structure of blockchain networks
Using distributed ledger technology, blockchain networks are based on the principle that every node (node) can find the same result with the same input. Otherwise, as a result of the calculation, each node will get different results and the verification process cannot be completed. This has been done specifically for security purposes.
Ek okuma: What is a Bitcoin Node? How does it work?
At this point, oracles come into play. They can verify external data sources and create a second layer containing the processed data. With data transmitted through Oracle, many metrics can trigger smart contracts in the blockchain network. For example, external data such as the completion of a payment transaction, air temperature, or delivery confirmation can enable the smart contract in the blockchain network to come into play.
Oracle; It not only receives off-chain data, it can also export data pertaining to on-chain activity.
Blockchain oracle types:
Data from any software via the Internet is transmitted to the blockchain network. This oracle; It enables data such as commodity prices, voyage information of public transport vehicles, the amount of goods in the warehouse to be processed and smart contracts running on the blockchain network.
You may be interested in: What is Automated Market Maker? How does AMM work?
Some smart contracts need information that will come directly from the physical world. For example, data from motion detection devices may need to be sent directly to the smart contract. It may be desirable to include product details leaving the production line in the real-time blockchain network. Hardware oracles can transfer every step in the supply chain to smart contracts using digital sensors.
This oracle model uses multiple market data on which users agree. Using only one data source is often risky and the results are unreliable. In order to prevent market manipulation, oracles can implement a rating system. In fact, by increasing the security level even more, the data collected over different oracles can be interpreted in common.
You may be interested in: What is a decentralized exchange (DEX)? How does it work?
It only transfers data from the outside world to the blockchain network. Data obtained from any software or physical sensor can be sent to the smart contract to be triggered.
This oracle type has the power to transfer the steps in the smart contract to off-chain software or hardware. For example, the payment confirmation made in cryptocurrency can be sent off-chain via the smart contract. In this way, a full version of a software can be activated or a digital lock of a physical safe can be automatically unlocked.
Centralized oracle (Merkezi oracle)
It is the model in which only one data source is transferred to the smart contract. Although transferring data from only one source to Oracle is not a correct application in terms of security, they may be preferred in some corporate structures or when sensitive data is processed. It is possible for malicious people to attack cyber attacks on the oracle and damage the blockchain network.
Decentralized oracle (Merkeziyetsiz oracle)
It is an oracle model that has more than one source and is sent to the smart contract by agreeing on the data. Decentralized oracles aim to minimize counterparty risk. Sometimes the structure that provides decentralized oracle service can be another blockchain network.
You may be interested in: How to track Bitcoin transactions? TXID query
It is an oracle model that can only be used by a single smart contract. If more than one smart contract is running on the network, separate oracle must be running for each one. This will be both inefficient and costly. However, in some special projects, this method can be chosen to process sensitive data.
Human oracle (İnsan oracle)
It is an oracle model that experts in their field support on data. People can check the accuracy of the data to be processed and filter them using different sources. When necessary, it can translate between languages and transfer data to the smart contract appropriately.
You may be interested in: What is margin trading, how is it done?