The Oracle problem in the Smart Contracts’ revolution: Chainlink made simple

Davide Bottazzi
4 min readJan 7, 2021

The following article aims to introduce the readers to Smart Contracts’ world focusing on Oracles. The target of this article are people who heard about blockchain but are unsure about its possible real world use cases.

What are Smart Contracts?

Before introducing the concept of Smart Contracts (from now on we will refer to the term Smart Contracts with the acronym “SC”) we need to understand what a contract is:

The dictionary definition is:

“A written or spoken agreement, especially one concerning employment, sales, or tenancy, that is intended to be enforceable by law.”

Contracts define terms and obligations of two or more parties involved in an exchange of value (typically goods, service or money). The parties involved, in order to get the contract executed correctly, usually require a centralized trusted third-party. So, what are SC and how do they differ from regular contracts?

Nick Szabo defined (1996) SC as computerized transaction protocols that execute terms of a contract. The main goal of SC is to render transactions traceable, transparent, and irreversible. SC work on an ‘If-Then’ principle, here is a basic example:

The real evolution of SC came in 2013 when Vitalik Buterin published the Ethereum’s White Paper causing a paradigm shift in the blockchain world: the most prominent framework for smart contracts came to life, the Ethereum Virtual Machine (EVM) can execute Turing-complete scripts and run decentralized applications. Ethereum’s SC can rely on a trustless third-party.

Here is a summary on how traditional contracts differs from SC:

The Oracle problem

SC running on a blockchain could revolutionize how multiple parties interact in an exchange of value; down here you can find an infographic with some use cases examples of SC.

Even if it is a revolutionary technology is not so simple to integrate in the real world and one of the main causes is the Oracle problem. First, we need to say that blockchains have one major limitation: in order to be so secure and reliable they must be isolated systems, so they cannot pull in/out data from/to an off-chain system. But if they are isolated, how can SC running on blockchains be used in the real world?

Imagine an insurance Smart Contract offering a 50% refund of the total loss in case of drought or flood events, this could be very helpful if you have a crop and want to protect your investment. Flood event happens, IoT devices register the event and then? How can the Smart Contract implement the data in a reliable manner? This is the Oracle problem.

How does Chainlink work?

Chainlink has developed a decentralized Oracle network (“DON” from now on) capable to bridge the connection between on-chain and off-chain data. Courtesy of Chainlink blog we have an infographic that shows us how a DON acts in a situation like the one described above.

Source: blog.chain.link

Without diving deep in the subject (many people covered how Oracles works, this article attempts to make the subject accessible to the less tech-savvy), one can see an Oracle essentially works as a middleman between real world and the blockchains’ ecosystem. But once again, a question arises: how can an Oracle determine if the data is correct?

Well, to be honest it cannot be 100% sure that the given data is correct and real, but a DON validates data from different sources by averaging it into a single piece of data. I think an illustration can best convey the concept:

The Link token is used in the Chainlink ecosystem to pay node operators for their work, to better understand the Tokenomics of the project and for further explanations you can find below here several useful links.

Do not forget to comment with your opinions on the article; if you have doubts, questions or any criticisms you can contact me on twitter: @davidebottazzi_

--

--

Davide Bottazzi

22 y/o, italian, psychology student, blockchain and cryptocurrencies enthusiast. Interested in finance, artificial intelligence and philosophy.