Blockchain oracle
A blockchain oracle is a third-party service that provides smart contracts with information from the outside world.[1][2] It is the layer that queries, verifies, and authenticates external data sources, usually via trusted APIs and then relays that information.
Examples
Examples of data transmitted by oracles to smart contracts include price information, the successful completion of a payment, the temperature measured by a sensor, election outcomes etc. Data can be supplied by other software (databases, servers, or essentially any online data source), or by hardware (sensors, barcode scanners etc.). A hardware oracle can be seen as relaying real-world events into digital values that can be understood by smart contracts. Both types are inbound oracles. Human oracles are individuals with specialized knowledge who can verify the authenticity of information before relaying it to smart contracts, and who prove their identity cryptographically.
Outbound oracles send information from smart contracts to the external world. For example, a smart contract receiving a payment could send information through an outbound oracle to a mechanism that unlocks a smart lock.
Concerns
If an oracle relies on a single source of truth (centralized), that can lead to issues: the data source can be hacked in a man-in-the-middle attack, or altered by its owner, in order to sway smart contracts. Decentralized oracles (consensus oracles) increase the reliability of the information provided to smart contracts by querying multiple data sources, thus distributing trust between participants. However, this does not achieve trustlessness, since oracles are not part of the main blockchain consensus, and thus not part of the security mechanisms of public blockchains.
Usage
Many Ethereum applications use oracles. For example, prediction market Augur would use election data to settle corresponding bets. Projects like Chainlink provide oracle services to other blockchains.[2]
References
- ^ "Blockchain Oracles Explained". Binance Academy. Binance.
- ^ a b "What Is an Oracle?". CoinDesk. 22 December 2020.