Oracles take off-chain data and make it usable on a blockchain. This enables smart contracts to automatically settle when their conditions are met.
Right now, blockchains grow up in their own little nest of data. Data from the outside world has to be manually entered for it to interact with a blockchain. But this is slow and subject to user error, or bias. Oracles offer the potential for blockchains to interact in real time with everyday objects, including smart devices, and other digital information. It’s time for them to spread their wings and fly.
Smart contracts can work with data on the blockchain, such as Bitcoin transactions or manually entered data. But off-chain data, like football results, temperature readings and barcode scans, aren’t naturally compatible. Smart contracts and off-chain data are like oil and water.
Oracles take off-chain, real-world data and make it usable on a blockchain. Imagine if you used a smart contract to bet that France would win the 2018 World Cup. An oracle could take the digital data from sports websites, of FIFA itself, and confirm that they did indeed win. The contract would execute and you would receive your winnings.
Did you know?
The very first smart contract concept was designed by Nick Szabo, a computer scientist who has been involved with Bitcoin since in its early days.
Take the betting example. If the person you bet against disputed the result, you would still get your money. This is called a trustless system, one of the principles Bitcoin was created on. Oracles also open smart contracts up to a much wider array of information. Otherwise, they would be very limited. Oracles can let smart contracts access a wider array of information They can allow for smart contracts to connect to APIs
Oracles open smart contracts up to a wide variety of uses: Stock inventory - When product numbers drop, a smart contract could know to order more. Prediction markets - When the right conditions are met, the payout can be executed. Carbon tax - Carbon emissions could be monitored and if they go too high, companies would then be automatically fined. Supply chain - Sensors can be used to tell a smart contract that a product has arrived.
Did you know?
Computing giant IBM offers a global supply chain platform called TradeLens which uses blockchain technology.
A user makes a data request on a blockchain platform. Nodes are then selected to carry out the task of getting this data. Off-chain they get the required data, then they feed it back into the blockchain.
London-based Oraclize has been working on oracles since 2015 and its platform connects to Bitcoin, Ethereum and EOS. It’s platform is blockchain-agnostic so can be applied to many more blockchains. Part of Microsoft Azure’s platform, Coco is an enterprise-level blockchain framework which wants to bring blockchains together. It supports oracles but they are not Byzantine fault tolerant. Oracles are also part of the Corda platform, which is also an enterprise-level platform. It is designed by blockchain consortium R3.
Oracles are designed to connect trustless blockchains to real-world data sources without the need for a middleman. However, they are often connected to one data source which means they are centralized and have a single point of failure. One company creating decentralized oracles is Chainlink. By using multiple data feeds it is able to create oracles that are trustless. This also means they should have no downtime.
Did you know?
Chainlink owns the website www.SmartContracts.com but has recently rebranded to www.Chain.link.
Smart contracts have the potential to redefine business transactions and legal documents by providing a trustless environment for them to operate. Oracles can bring real-world data to these documents and re-shape the face of business as we know it. Next time you run out of milk, your fridge might just order it for you and pay using cryptocurrency. Once real-world data is connected to blockchains, anything is possible.