
This word probably brings to mind ancient civilizations, when deities communicated with the earthly world through messages known as oracles.
However, in the Blockchain environment, this word takes on a somewhat different meaning, although it is closely related.
Just as oracles enabled communication between two worlds in ancient times, a blockchain oracle establishes communication between a blockchain network (and the smart contracts hosted on it) and the world outside this network.

Well, in order to answer this question, it is necessary to understand, in broad terms, how smart contracts operate on blockchain networks.
A blockchain network, in simple terms, is a database shared by a group of users who store the information contained in it on a hardware device.
The only way this database can introduce new information is through majority consensus and a series of protocols that ensure it remains uncorrupted.
On the other hand, a smart contract is nothing more than a set of computer instructions stored in this database. The smart contract is designed to generate a result (output or output data) from information (input or input data).
For example, we can program a smart contract on the Ethereum blockchain to make a purchase of 5 ethers once block number X is mined.
However, smart contracts have a problem: on their own, they can only interact with the information contained in the network in which they are programmed (they only understand the digital world).
And this is where oracles become relevant.
An oracle is a piece of code that acts as a bridge between a blockchain network and the outside world. By the outside world, we mean any data source, i.e., any information that can be shared. These oracles connect the blockchain to platforms, databases, other blockchains with different languages, and any data source we can think of.
For example, thanks to an oracle, we can program a smart contract to purchase ether when its price reaches $1,500. The oracle will access a data source that tells it the price of ether and inform the smart contract, which will then make the programmed purchase.
Oracle services are involved in most use cases of smart contracts developed today, so it can be said that they are an essential part of the development of this technology.
However, oracles are not without problems. If the source of information they draw on is corrupted, or if communication between the oracle itself and the blockchain network is manipulated, the smart contract will also be corrupted because the information on which it is acting is incorrect.
This means that the smart contract will generate a response based on this information that probably does not correspond to what it should have generated with the actual data.
Let's imagine that we program a smart contract on the Ethereum network. In it, two participants, Alice and Bob, place a bet.
Both lock up a certain amount of money (represented by cryptocurrencies) and agree to send it all to whoever guesses the price of Bitcoin on January 1, 2023. If it exceeds $50,000 per bitcoin, it will be sent to Alice. Otherwise, it will be sent to Bob.
Thanks to the oracle, our smart contract can access a database that will tell us the price of bitcoin when the time comes (let's say, for example, that our oracle connects us to the Coinmarketcap platform, a well-known website for finding out the prices of crypto assets).
Or, rather, the oracle will access this database and inform our smart contract of the results it obtains.
In this case, if the Coinmarketcap platform were to suffer a hack that modified the price it indicates for bitcoin, the oracle would give our SMART contract erroneous information, which could result in the loser of the bet obtaining the funds illegally.
On the other hand, it should be noted that oracles are also susceptible to what are known as man-in-the-middle attacks, in which data is modified in the flow between oracles and smart contracts.
One solution to this problem is to decentralize the oracles.
This does not solve the problem of trust, but it does diversify the risk.
An example of a decentralized oracle that is widely used today is Chainlink, a service that runs on the Ethereum blockchain and other EVM-compatible networks.
Chainlink allows users who request its services to use its oracles, which it incentivizes to behave honestly. To do this, once Chainlink receives a request, it assigns the task of verifying the required information to one or more of its oracles based on certain characteristics that go beyond the scope of this article. But, in a nutshell, the more reputation an oracle wants to gain within Chainlink, the more different sources it must consult when reporting a certain piece of data.
Another example is the platform Augurplatform, which serves as a prediction market for betting. In it, its own participants are encouraged to share information about real events with the aim of acting as a decentralized oracle.
Finally, it should be noted that oracles can not only connect to shared data sources in the cloud (software oracles), but also to physical devices that have built-in technology capable of sending information via an API.
For example, in the food supply chain, food can be monitored by a sensor that indicates the temperature at all times and communicates it to a smart contract through this oracle, so that it can act accordingly.

Oracles are also born with the philosophy and values of blockchain technology, empowering people and giving them the opportunity to offer information about a specific event with the aim of being rewarded or offering a greater degree of decentralization and security to the entire data network (oracle network).
Anyone can be an oracle and earn rewards for it. Decisions will no longer necessarily be in the hands of centralized organizations with great decision-making power.
In this regard, and as you can imagine, if we want to unlock the full potential of blockchain technology in any industry or sector, we will need reliable sources of information that allow us to link the analog world with the digital world. Otherwise, we would be faced with extremely limited processes and applications based on blockchain technology, since the vast majority of events or activities take place in the physical world.
In short, oracles are tools without which Blockchain networks and smart contracts would see their functions greatly limited due to the impossibility of interacting with the outside world, and are considered one of the key elements for the optimal functioning of applications developed on decentralized networks.
.png)
Funded:
-
-
Objective:
742.418,00 €