Oracles are getting more and more important in blockchain ecosystems. They are helping to reach out beyond the blockchain itself. But how do they work and what do they have to offer?
Closing the Gap
A blockchain can be used for a lot of things. Most of these use cases are based on smart contracts. If you are not familiar with them, you might be interested in reading our article about smart contracts first.
While such a contract offers numerous use cases in throughout the industry, they all have a common issue. They are not capable to close the gap between the smart contract and real-world data. Let’s say you run supply chain management on a smart contract, the contract itself is immutable and once data about the products are written on the chain you have a reliable data set.
But how do you know how you can trust the data on the chain? For instance, who makes sure that the last delivery of 1000 apples were really a delivery of 1000 pieces and not 999?
This is were oracles come into play. They close the gap between the smart contracts and what is happening in the real world. There are different types of oracles:
- Software oracles
- Hardware oracles
- Human oracles
- Centralized oracles & decentralized oracles
- Inbound & outbound oracles
Problems that arise with Oracles
It is the nature of an oracle not to be part of the blockchain itself. It is more a type of interface that can come in different shapes as you can see in the list above. Therefore, oracles are still considered a single point of failure, because it is very difficult to assure that nobody manipulates the data.
One common feature is the ability to bridge existing and verified data into the blockchain, by simply connecting both data streams. This shows that they serve a very important purpose, but are still vulnerable.
It might just so happen that users and companies always have to trust a solution that isn’t perfect. But let’s just say a robot is counting the apples in our example and writes the data into an excel sheet that is bridged on the blockchain. At this way there is always the possibility that the robot fails or the excel sheet faces some sort of data corruption.
In both cases an oracle assures that this data comes with some sort of integrity. Even though it might be 999 apples in the end.