Blockchain Oracles
Know everything about the most important aspect of an enterprise blockchain solution.
Blockchain has definitely come a long way since Bitcoin and Ethereum. Decentralised Applications are not just a theory anymore. We’ve seen unprecedented adoption within crypto space and yet the industry is lagging far behind. As we go through many problems in the space, interest is surely not one of them. Blockchains as most decentralised networks work in silos of their own. They definitely should, by definition it’s a network. You wouldn’t want your home local network to start talking with the office network now. But you still go on the internet, which is connected to everything. The interoperability of a decentralised network with real world objects is a major downside to blockchain adoption. Blockchain oracles are a step towards solving some of that. How? Let’s take a look.
Blockchain interacts only with the smart contracts and the devices connected to the network. It wouldn’t know how to verify an information if it’s outside the network. For example, I can tell the blockchain network that I’ve bought 6 eggs from amazon, and that I want to pay ₹60 via a banking app for them. Of course amazon isn’t on the blockchain network, and neither is my banking app. So, the blockchain network has to rely on my information as the only source of truth and record the payment which is as well off the network. I could have said that 6 eggs cost me ₹1000 and the blockchain would have had to record that as well. Unless there was a way for the blockchain network to verify my information. Now say there’s was an honest man, named Bob. Let’s imagine Bob can verify any information that the blockchain puts out. So, every time we refer to some real world entity, the blockchain asks Bob about it. Bob does his own fact checking and gets back with the actual source of truth reference. Now, we really can’t have Bob at our disposal all the time, can we? Hence the existence of Blockchain Oracles.
Blockchain oracles connects the blockchain network and the real world entities. Any data that needs to be verified from a third party source beyond the limits of the blockchain can be reached out by the blockchain oracle and got back to build full-proof smart contracts on. Now, there’s absolutely no need for Bob to intervene at all. Our smart contracts can become truly self-executing.
We can classify these blockchain oracles based on how they connect and on the type of service they provide. Let’s take a look at some of the popular ones:
Software Oracles
The most common type of oracles and easiest to setup. Connect to an external database, website, APIs, etc and form a two-way communication channel to verify any data as per required. Because of a direct line of communication, these can be the best type of oracles to have. Of course, we need to figure out the security risks like man-in-the-middle attacks and so on.
Hardware Oracles
Living in a physical world, there’ll also be need to connect directly with the hardware that’s touching our lives on a daily basis. Scanning a code, matching a fingerprint, sensors used in warehouses and in security alike, can be connected directly to a decentralised network to support a robust infrastructure of safety and security.
Inbound Oracles
Oracles solely related around getting information and performing tasks on top of it. Alerts from a local fire department, SOS signal from your close friend, which can directly transpire to a valuable data source to trigger certain actions. Yes, we still need to rely on the source of the information but of course there are ways to secure the communication.
Outbound Oracles
There does the exact opposite of inbound oracles. Outbound oracles are tasked with sending the data to the real world entity. Say the conditions on the smart contract are met and that should trigger a ringing of bell, or triggering a fire alarm, disperse of funds, and so on. Just like inbound oracles, we need to make sure that the data coming through outbound oracles aren’t tampered with.
Consensus of Oracles
These a more secure in terms of data verifiability given that it relies of the consensus of a group of oracles to vet the information on. Instead of relying on only a single source of truth, say a group of oracles tries to fetch the data from multiple sources before taking any action on top of it. If 5 sensors on the same hotel floor says they’re heating up, there’s a good chance that there’s something wrong on the floor. Of course, creating a consensus of oracles get a little costly when it’s comes to actual implementation.
Given the pros and cons of oracles in it’s many forms, they do add a tremendous value to your smart contracts. Blockchain Oracles have surely expanded the reach of an isolated network to a limitless access of information exchange and made multiple use-cases viable. We’ve built our own blockchain oracle through which we integrate blockchain based smart contracts and payments to your product.
If you’re looking to build your next blockchain product or integrate smart contracts to an existing one, feel free to get in touch with us at hello@acycliclabs.com. We would be happy to answer any questions below if you’ve.