Everything you need to know about blockchain oracles, their importance and benefit for blockchain, the structure of oracles which consists of different components as well as their types and the list of oracle developers
You know everything about blockchain and its types from our previous articles. You also may have heard about blockchain oracles, and today we want to provide you with the detailed explanation of them. What they are, how they work, why they are important and how to distinguish them by components and types.
Blockchains, due to their decentralized governance and distributed maintenance, are a great place to host smart contracts. Smart contracts are digital agreements that execute themselves once specified conditions are met. Sometimes these conditions are based on information from the physical world. Oracles are third-party software that collects real-world data and processes it in a way that blockchains and smart contracts can understand and act upon.
Let’s say Peter and Jane want to make a bet on tomorrow’s temperature. Peter says it is going to be 20°C or higher, Jane thinks it will be 19°C or lower. They design an appropriate smart contract that will turn to the specified oracle for information on tomorrow’s temperature. Peter and Jane both send money to the contract and wait. Next day the oracle takes data from meteorological websites and converts into blockchain-readable format. The smart contract then sees that today’s temperature is 21°C. According to its code, the smart contract decides that Peter wins and send both Peter and Jane’s money to him.
Oracles are essential for any smart-contract platform as they connect real and digital worlds. Blockchain technologies will not see mass adoption if they exist in a closed or restricted environment. Though there is still a lot of research that needs to be done in this area, oracles are already helping blockchains find real-world use and applications.
Oracles consist of three components: data source, query, and data processing. First of all, an oracle needs a source of information, such as meteorological resources or stock markets. To collect data, an oracle submits a query, a request for information. After receiving it, the oracle uses its algorithms to process it so that smart contract can read it.
According to their operation, oracles can be software or hardware. Software oracles interact with data accessible online. For example, weather, stock prices, plane schedules, dates of events, and so on. Software oracles gather data from websites and send it to smart contracts. Hardware oracles get their information from various physical sensors and RFID tags. They will let a smart contract know if a cargo truck is in the range of a sensor. Hardware oracles are usually used in logistics or supply chain management.
Oracles can also be incoming or outgoing. Incoming oracles receive data from an off-chain source and transmit it to a smart contract. Outgoing oracles, as you may have guessed, gather on-chain data and send it to the outside world.
Oraclize offers an honest extraction of data by providing cryptographic evidence, which corresponds to the received data. Chainlink is working on creating a network of oracles, thus facilitating the practical use of smart contracts. Blocksense is a company that renders many services including the development of smart contracts that support oracle archives.