top of page
Open Site Navigation

What are blockchain oracles?

Every single blockchain is a sort of standalone system.

Thanks to cross-chain bridges, we can link two different networks into relation and communication. But in order to obtain data, a blockchain should interact with external systems; for this reason, we need an oracle.

Let’s dive together into the world of blockchain oracles!

"What are blockchain oracles?" article cover


Definition of blockchain oracles

According to Chainlink:

A blockchain oracle is a secure piece of middleware that facilitates communication between blockchains and any off-chain system, including data providers, web APIs, enterprise backends, cloud providers, IoT devices, e-signatures, payment systems, other blockchains, and more.”

On-chain and off-chain components of a blockchain

What is an oracle for crypto?

Oracles are data feeds that bring off-chain data sources and put them on-chain for smart contracts.

An oracle is an entity/service that connects blockchains to external systems, enabling smart contracts to execute based on inputs and outputs from the real world. Is a sort of universal gateway to off-chain resources that can interact with external data. They act like an application programming interface (API) to the world outside of the blockchain.

The DONs -an acronym for Decentralized Oracle Networks- enable the creation of hybrid smart contracts, where on-chain code and off-chain infrastructure are combined to develop advanced dApps that interact with the traditional system and the real world.

An oracle performs several functions:

  • Listen – monitor the blockchain to check smart contract requests for off-chain data;

  • Extract – recover data from external systems (as off-chain APIs, for example);

  • Format – format data retrieved from external systems into a blockchain readable format;

  • Validate – generate a cryptographic proof attesting to the performance of an oracle service;

  • Compute – perform some secure off-chain computation for the smart contract;

  • Broadcast – sign a transaction on the blockchain to send data and any proof on-chain for consumption by the smart contract.

All these functions simultaneously perform on-chain and off-chain by the oracle.

This video explains in a detailed manner what a blockchain oracle is.


The oracle problem and Chainlink

Oracles thus become an essential aspect of Web3 and blockchain. However, when we use them, how can we be sure that the injected information has been extracted from the correct source, and has not been tampered with or updated regularly?

The so-called “oracle problem” demonstrates the issues of using oracles to send inputs to smart contracts, which could sometimes be incorrect or produce wrong outcomes. It is really important to use a “trust” oracle operator to receive accurate information, and it’s also advisable to use a decentralized one.

Chainlink is a decentralized oracle network built on Ethereum that provides real-world data to the blockchain. Smart contracts evaluate information and automatically execute when certain conditions are met. The native coin of Chainlink is called LINK and it is used to pay for all the services on the network.


Types of oracles

Blockchain oracles verify and authenticate external data that transmit to smart contracts.

There are many types of oracles that are used today:

  • Input/output

  • Software/hardware

  • Inbound/outbound

  • centralized/decentralized

  • Human oracles

  • Contract-specific oracles

  • Computation oracles


Final thoughts

Oracles play a crucial role in smart contract execution providing external data. Always remember that they operate on the web- as the entire industry and DeFi sector in general- so they could also be hacked. In general, when considering the employment of an oracle, you need to use a trusted one.

Tell us your opinion about oracles and Chainlink on Discord and Telegram. Stay in the loop!

Further readings

Subscribe to Our Mailing List

Thanks for subscribing!

bottom of page