Gateways is the oracle service from RSK, the platform for intelligent Bitcoin contracts.
ChainLink is an Oracle network based on Ethereum to connect different blockchains.
The idea of the oracle is very old. In the West, we keep those mysterious visionaries of the Greek world in the imaginary, fortune tellers who served as a bridge between the world of mortals and immortals and who revealed their fate to the heroes in a cryptic, metaphorical language.
Today the idea lives on in the field of intelligent contracts, albeit for technical rather than mystical purposes. According to the CryptoNews glossary, Oracle is “software that acts as a” bridge “for smart contracts to interact with real data. In this way, a contract can check an outcome from outside to automatically execute its terms. “
We see that the bridging function remains at the core of the oracle concept, but with intelligent contracts, heroes or gods don’t ask. The entire question-answer process is automated in algorithms.
What are the oracles for?
Blockchain networks and smart contracts cannot, by themselves, access information outside the network. However, there are many contractual agreements – such as betting on the outcome of a football game – that require access to such information. This is where oracles come into play in the blockchain.
Theoretically, an oracle is a layer in the infrastructure that is responsible for the search, verification and authentication of various external data sources and then transfers this information to the relevant contract so that it can be executed in accordance with the previously agreed agreements.
So in the hypothetical case mentioned above, suppose Pedro and José – two complete strangers who have no reason to trust each other – bet on Twitter who will win them classic, if Real Madrid or Barça. They decide to block funds for an intelligent contract.
The contract alone cannot access external information, so an oracle is used. At the end of the game, the latter uses a trusted API to find out the result and, after confirmation, automatically passes the money to the winner’s wallet address.
Types of oracles
There are different types of oracle blockchain depending on the purpose. Depending on whether the information source comes from the physical or digital world, a hardware or software oracle is used.
A Oracle software It works like the previous example: It gets your information from sources on the Internet, which can be databases, servers or websites. For its part a Oracle hardwareYou need a special device that translates information from the physical world into digital, e.g. B. a barcode reader. This type of oracle is used in cases where the supply chain of a product is tracked using smart contracts.
Depending on the direction of the information, the oracle can go in or out. A incoming oracle it receives external information, be it physical or digital, and introduces it into the oracle. A outgoing oracle Uses existing information in the smart contract, e.g. B. a warehouse, and transfers them abroad (e.g. opening a door configured with Smart Lock).
Finally, they are divided into according to the level of trust required in the process centralized or decentralized. As the name suggests, centralized oracles are controlled by a single entity, which is the only source of information for the treaty. This is a single source of error. Decentralized oracles try to minimize counterparty risk by consulting multiple sources to ensure the validity of the information.
This last type of oracle, also called Consensus, The need for trust is not eliminated, but should be reduced. This is the oracle dilemma: while oracles can expand blockchain use cases, by reintroducing a certain amount of trust and mediation in the process, they risk character. trustworthy that gives value to certain public blockchains.
To reduce the risks associated with the trusted third party, projects turn to multiple data sources. However, a single oracle can also compromise the integrity of the data, so multiple oracles can be used. There is also the option to implement incentive mechanisms that promote honest work and prevent attacking the contract.
Nevertheless, there are several projects that have done this Exchange to examine the use cases opened by the oracles. In this article we will look at three suggestions for oracles.
GatewaysAs the name suggests, it is a gateway that was created in RSK Infrastructure Framework (RIF), which provides interoperability protocols for interacting with the outside world for this intelligent contract side chain through Bitcoin.
In short, it is RSK’s oracle service (an intelligent contract platform) that allows information to be sent and received both outside of blockchain networks and between different chains. The aim of this service is to develop user-friendly tools and technologies that enable companies to design applications that interact with the outside world. It is agnostic and can therefore be implemented in various protocols.
Gateways provides an interface for interacting with three types of service providers: data services for the consumption of information from outside towards blockchain; Activation services that consume data from the blockchain and communicate abroad, as well as transaction planning services to carry out future actions in the blockchain.
RIF data services allow consumers to choose between different types of oracle services. They then interact with the relevant provider and receive the required information. To comply with the protocol, providers must implement a specific interface in their smart contracts that defines a specific set of data consumption, subscription and payment models.
As for them triggers or RIF activation services, these can be used, for example, in video game applications that need to process smart contract events to show subscribers certain updates. RIF defines a standard method of using this data for every application without the risks and costs of implementing a new solution. The user can configure the event processing service, provide information that needs to be known, what actions to take when the event occurs, and even subscribe to predefined templates.
Finally, that Scheduler or RIF planning services, handles periodic and recurring transactions by scheduling them according to predefined temporary conditions.
In summary, RIF Gateways’ goal is to provide users with a simple interface for interacting with providers of these three services, reducing the complexity of dealing with different technologies.
From the MIT Digital Currency Initiative
The MIT Digital Currency Initiative’s oracle proposal called Lit doesn’t just run on Bitcoin, but is based on an implementation of the second layer, the Lightning Network.
Lit was developed by researcher Tadge Dryja and developer Gert-Jaap Glasbergen and enables intelligent contracts to be written in Bitcoin. So far, his tests have focused on conditional payments, where Bitcoin distributed information from abroad to the payment channels.
The implementation uses the called schema discrete protocol contracts spread the data on smart contracts. One of the advantages of this scheme is scalability, since most of the data would not need to be stored in the base chain when running on the Lightning network. In addition, privacy is improved because oracles cannot know who is using the data they distribute.
While there is a Lit GitHub repository that can run, the tested proposal has not been in production since 2018, but the code can be taken for free. In the first tests of the system, the researchers built a test oracle to distribute the price of the US dollar in satoshis. This information could be used by anyone for smart bitcoin contracts that also make this prototype easier. As early as 2018, researchers announced that they were in discussions with companies to adopt the code and improve the user experience for their own companies.
The tests were carried out in 2018. At that time, the Lightning Network was in a very rudimentary state. Today’s use of this code is likely to reduce the risk of losing money, but it does not eliminate it – it should be noted that LN is still in beta.
Finally, we have ChainLink, an oracle network based on Ethereum. It is intended to serve as intermediate software that connects various intelligent contracts between different blockchains and records data from abroad and transmits it to these networks.
The company behind ChainLink is called SmartContract and launched its network in May 2019 after raising $ 32 million in an ICO. His most recent work has focused on creating a network of oracles compatible with Bitcoin, Hyperledger and Ethereum.
ChainLink uses components both inside and outside the chain. Within the chain, it filters the oracles based on metrics requested by one of the parties to an intelligent contract. It also collects oracles that match searches and sorts them according to reputation criteria. From there it delivers a final collective search result.
Out-of-chain nodes are used that are connected to the Ethereum network and meet certain and predetermined requirements for collecting information requested by contracts. ChainLink intervenes in this part as an intermediary who redirects and assigns the data. Finally, nodes are rewarded for their services with the native ChainLink token LINK.
The oracles also present some challenges that need to be faced, despite the benefits they can bring to broaden the potential uses of smart contracts. The most important one is called literally The problem of the oracle: If the oracle is affected, this also applies to the smart contract on which it is executed. Since they are not part of the main network consensus, they do not enjoy the security mechanisms that they can provide.
There are also problems of trust that remain unsolved on a theoretical and practical level, such as the problem of the connection between oracles of third parties and the execution of the intelligent contract. So-called man-in-the-middle attacks can also pose a threat in which malicious actors can access the data flow between the oracle and the contract and manage to change the data.
However, these are problems that must be faced if the use of intelligent contracts outside the network is to be expanded, as these systems are essential for the interoperability between the blockchain network and external data.