Oracles
Oracles are systems that transfer external transaction data to the Blockchain via smart contracts [2]. A Blockchain is a network that runs without a central or further entity and verifies itself via the decentralized peer-to-peer system. However, if external data or solutions are required, oracles are needed [1].
There are three ways to set up an oracle: [1]
-
Immediate-read: This oracle is used when information is needed immediately and only for a single decision. The Blockchain gets the data "just in time" (e.g. age verification).
-
Publish-subscribe: This oracle is used when information is needed that changes over time and therefore needs to be updated regularly. The oracle acts as a broadcast service (e.g. weather, traffic information).
-
Request-response: This oracle is used when the amount of data is too large to be stored on a smart contract. Then a request must be made, and the data must be retrieved from an off-chain source.
[1] Antonopoulos, A. (2018): Mastering Ethereum Implementing Digital Contracts