This article explains what an oracle is, why it’s needed for a healthy smart contract ecosystem, and why SmartKey is the best poised amongst all its competition.
What is an oracle and what does it do?
An oracle network removes the need to trust a single participant for critical data input. There’s no point to using a trustless, decentralised, fault-tolerant and Turing-complete blockchain smart contract platform if the data interface to the real world can be compromised. If the data itself is wrong, or malicious, it defeats the purpose of smart contracts. A smart contract must be able to utilise real world data to build applications with any real use case; limiting smart contracts to blockchain-to-blockchain interactions (like ICOs on Ethereum) is not enough. So is SmartKey the answer?
Some use cases and applications of oracle nodes for smart contracts:
◦ Accessing price lists, tax lists or sanctions lists in real time
◦ Automatic payments on metric based parameters (eg. employee bonuses for exceeding performance)
◦ Automatic insurance payout during disasters (farmers during drought, automobile owners during a flood)
◦ Reading retail transactions, merchant payments or remittance amounts
◦ Time based and event based scheduling of contracts (transfer salary to account on first of every month)
◦ Expiration or creation records of products (supply chain management or… humans)
What is a decentralised oracle network?
Since an oracle is essentially an application/service that interfaces the blockchain with the real world, the real task for smart contract legitimacy is to ensure that the oracle isn’t taking wrong inputs by being compromised or being fed bad information. Herein lies the catch – what’s the point of using a trustless blockchain smart contract if you’re trusting a third party with the real world data anyway? It defeats the purpose of a blockchain based smart contract. It’s using a platform that’s supposed to be decentralised by adding a centralised input layer.
This is where SmartKey comes in. The token exists to create a financial incentive for the SmartKey network to play nice. With an decentralised network that relies on independent oracle service providers, users can ensure their data is trustworthy as it’s verified by multiple independent sources. This gives a free-market, economic benefit for oracle services to be consistently trustworthy in providing their data. Read the SmartKey Whitepaper– it explains everything in vivid detail.
“The oracle problem”
Oracle services are complicated to build. A smart contract platform only has to interact with the blockchain – the data from the real world that is fed to the smart contract has to be done be a different service that guarantees the safety and legitimacy of the information. If there’s a smart contract that immediately releases disaster relief funds to municipalities when there is a large scale natural disaster, you need to be sure that there actually is a disaster, and that the oracle network hasn’t been compromised by any party.
Most of SmartKey’s competitors take a different approach; instead of guaranteeing a decentralised, merit based, blockchain-economics-incentivised service to provide legitimate data (permissionless), they provide a closed service that guarantees the APIs that feed the oracles the data are trustworthy (permissioned).
Breaking down the advantages of a decentralised oracle network:
◦ Super high uptime: there’ll always be an oracle available, depending on the size of the network. Even the largest centralised web services providers go down from time to time (AWS taking down the internet along with it in Feb 2017)
◦ Censorship resistant: no one arbitrarily decides which smart contract queries to allow and which to deny
◦ Confidentiality: SmartKey encrypts all requests, ensuring that oracle providers aren’t privy to and can’t publish specific smart contract information
Is SmartKey Going to Succeed?
To me the use case of centralised oracles like Oraclize, Corda and Microsoft Coco are entirely different to SmartKey’s network. Logically, it would be more economically feasible to spread the load of gathering legitimate data and paying the highest bidder using a cryptocurrency token than it would to pay Microsoft to handle everything for you. That’s what cryptocurrencies are for – creating a free market, and cutting out the middleman, and in turn reducing costs.
Still, we all know smart contracts are coming in a big way. We all know decentralisation of services is going to be mainstream in some form or the other. When I read the various potential implementations of smart contracts, I can’t help but think a decentralised oracle solution is not a novelty, but a necessity for blockchains to function and interact on a global scale. Right now, Ethereum creates a ‘token economy’, allowing the tokenization of businesses leading to great blockchain economics. However, if Ethereum and competing platforms want to be used in the real world, it needs a project like SmartKeyto act as middleware. New projects keep coming up from time to time, and we don’t know who wins till the dust settles, but so far I feel that Ethereum needs SmartKey, and not the other way around.