Verity’s human solution to the Oracle Problem: enabling smarter smart contracts

Sam Baldwin

For some smart contracts there’s an API. For everything else, there’s Verity.

Smart contracts have been hailed as one of the areas of blockchain with most potential in the real world. The idea that you could streamline and automate many of today’s processes, cutting out meddling middlemen, saving time, saving money, and increasing trust, has been rightly hailed as a potential step change.

There are numerous examples of theoretical cases where smart contracts could be used to make current processes faster, cheaper and more secure. From voting systems, to wills, to real estate transactions, it’s an area with exciting potential.

The Oracle Problem

An essential component in the new smart contract ecosystem is the ‘oracle’. This is the part that connects real-world information to the smart contract, allowing it to be triggered (or not). Without the oracle, the smart contract cannot get the information it requires to execute, rendering it of little use in the real world.

For example, imagine a smart contract for an insurance policy for a farmer. He wants to insure his crop against frost damage. So he arranges a smart contract that states that if the temperature in his field falls below 0c, (thus damaging his crop) he automatically receives an insurance payout.

Photo by Benjamin Davies

But how does the smart contract know that the temperature has fallen below zero? This is where an oracle is used. The oracle is the ‘truth’ connector between the real-world data, and the smart contract.

In this case, the oracle could be one or more temperature APIs from nearby weather stations. Both the farmer and the insurance company have agreed that these are acceptable sources of information, and if at any point the stations report that the temperature has fallen below zero, the smart contract is automatically triggered.

Photo by Click and Learn Photography on Unsplash

The farmer receives compensation for his frost-damaged crop directly to his bank account, thus removing the need for lengthy insurance claims and reducing the overall cost of insurance to both the insurance company, and the farmer.

This isn’t a far future scenario; such ‘automated insurance’ policies already exist. Fizzy AXA has pioneered a blockchain flight insurance product that automatically pays out if your flight is delayed by two hours or more. There are no forms to fill in, no claims to make. (The author of this article has tested it personally, and can confirm it works, having suffered a 7 hour flight delay, the frustration of which was softened somewhat by receiving the payout a couple of days later without having to do anything).

But what if there’s no existing API?

In simple cases where trusted information is already available and can be connected via an API to the smart contract, the oracle problem is solved. Wherever there is an automated, trusted supply of data, it would in theory be possible to connect this directly to the smart contract using an oracle.

Photo by Chris Liverani

However, in the real world, many potential smart contract use cases would be more complex or require data which does not currently exist in a simple API feed. This is why many traditional contracts require real humans to examine them, because there is no quick and easy data source that you can just plug in. If the new era of smart contracts relied solely on existing APIs, the scope of their use would be very narrow.

This is the problem that the decentralized oracle Verity solves. Wherever real-world information needs to be collected and verified, then connected to a smart contract, Verity can be used.

By using a large number of real people, single points of failure are reduced and tasks which are currently impossible to automate, can be done quickly and efficiently by real people.

Verity’s decentralized oracle enables a consensus to be reached, and then that data can be automatically fed to a smart contract, enabling it to be executed. Working examples include the collection and verification of sports data, assisting AI in sentiment analysis or image recognition and providing hard to get data on eSports.

Going back to insurance claims — imagine an example of a car accident claim, where a driver has a dashcam that has recorded the incident. The footage can be uploaded to Verity, where any number of real humans are able to analyse, then confirm or deny who was at fault. The resulting consensus data can then be fed directly to the smart contract to trigger a payout (or not).

Photo by Matthew T Rader

Verity’s decentralized oracle massively widens the scope of smart contracts. Rather than being limited only to creating contracts that rely on data for which an API already exists — Verity allows almost any data to be collected, verified and fed directly to a smart contract.

This post was originally published on our Medium blog