Research Summary - A Study of Blockchain Oracles

Citation

  • Beniiche, A., “A study of blockchain oracles,” arXiv preprint arXiv:2004.07140 (2020)

Link

Core Research Question

  • What are a blockchain oracles? How do oracles work? And why we need oracles?

Summary

  • This paper study and describe the widely used blockchain oracles. Then, it elaborates on his potential role, technical architecture, design patterns, and use cases. Further, it discusses the human oracle and its role in solving the truth problem by reaching a consensus about a certain inquiry. To identify primary studies where this relationship occurs, the research objective of investigating the relationship between the oracles and blockchain is decomposed into a set of research questions (RQ).

  • RQ1: What types of information do oracles provide to blockchain?

  • RQ2: What are the necessary properties of oracles for use in blockchain solutions?

  • RQ3: How do oracles verify the data they provide to blockchain solutions?

  • RQ4: How can oracles be integrated with blockchain platforms?

  • RQ5: How are oracles used in blockchain solutions?

  • RQ6: In which industries/Dapp are oracles proposed to be used?

Method

  • The overall search method is to find a body of relevant studies. For this paper, two search strategies were used to secure the identification of relevant studies.
  • Accordingly, in the first step, called primary search, search strings were used to identify an initial set of research works and blockchain oracles related white papers. Also, several electronic databases were used for this step.
  • In the second step, a secondary search was performed by means of technical books and research thesis projects.

Results

  • The results obtained from this study in relation to each research question aforementioned in the summary.
  • RQ1. In order to describe the nature of information oracles provide to blockchains and to set a basis of the relationship between oracles and blockchain, the paper explores various information or data types that oracles communicate to the blockchain.
  • RQ2. It’s important to map out the properties, oracles need to possess to be used in blockchain implementations since this is what defines a blockchain oracle. This paper explores these properties to ensures an understanding of the characteristics the entities need to possess to inject information into blockchain, and for them to be named oracles. These properties include the oracle type: centralized (Provable), decentralized (ChainLink), blockchain type, encryption, and authentication methods used in blockchain oracles. Fig. 3 and Fig. 4 depicts the two discussed structure of blockchain oracles: the automated oracle (hardware and software) and the human oracle [1].


Fig. 3. Automated blockchain oracle structure.


Fig. 4. Human blockchain oracle structure.

  • RQ3. Data verification is the bread and butter of blockchain oracles, since information recorded in blockchain can’t be deleted, which makes this topic vastly critical for the use of oracles in blockchain networks. Mapping the landscape of possible data verification mechanisms employed in blockchain oracles is crucial for their real-world implementation. This paper explains how data is defined to ensure that information that is collected from external to blockchain sources matches data that is passed to the blockchain and is truthful and correct.
  • RQ4. Oracle integration into blockchain platforms contributes to blockchain wide-spread implementation since oracles help solve the issue of bringing external data into the network. This paper investigates various ways oracles could be integrated provides a good basis for planning possible implementations allowing implementors to make necessary decisions when developing blockchain solutions.
  • RQ5. and RQ6. Blockchain projects (e.g., Dapps) utilize oracles for different purposes and in various industries. The paper explains the last pair of research questions set out to describe a current landscape of possibilities for use of oracles in blockchain implementations. They aim to uncover the various purposes and use cases for which blockchain oracles are implemented, along with associated industries. By use case, the paper describes scenarios where oracles are integral to the success of the blockchain project. As such RQ5 aims to explore blockchain oracle usage scenarios (use cases), while RQ6 investigates the industries where these use cases take place.

Discussion & Key Takeaways

  • Blockchain has become a technological enabler for many industries and innovative solutions. The majority of blockchain projects today operate in the domain of the virtual environment, due to limited exposure of the blockchain to the external to the network data sources. Oracles are entities that enable the collection, verification, and transmission of this data to the blockchain.
  • The key takeaways of this paper were to explore the relationship between the oracles and the blockchain. As part of this, the author explored various types of information and blockchain oracles that interact with as well the types of oracles involved in these interactions.
  • Blockchain oracle interaction aspect such as encryption, authentication, data verification, and integration was explored to understand the existing landscape of the relationship blockchain and oracles have. As a result, the paper enabled to present an overarching study to support blockchain researcher, project decision-makers, and developers in their efforts.

Implications & Follow-ups

  • The author conducted an exhaustive search and present a detailed review and comparison of state-of-the-art blockchain oracle platforms and early implementations/proposals.
  • The paper categorized existing blockchain oracles that employ centralized and decentralized with respect to data sources, trust models, design patterns, and data interactions to enable inbound and outbound interactions between smart contracts and various types of oracles.

Applicability

  • Blockchain oracles are a relatively new research topic in academia and industry. This work can be useful for many purposes.
  • Performing a comprehensive survey or research tutorial on blockchain oracles by scientists and researchers in both academia and industry.
  • A guidelines to support blockchain developers, project managers, and/or blockchain project decision-makers in their efforts to bring external data into their new or existing networks.
  • Enable any scientific/technical teams to better understand the existing landscape of blockchain oracle offerings, but also be able to design new oracle solutions that would fit their specific needs.

[1] Alexander Egberts, “The Oracle Problem: An Analysis of how Blockchain Oracles Undermine The Advantages of Decentralized Ledger Systems,” Master Thesis, EBS, December 2017.

2 Likes

Jalil, thanks for the detailed overview of your work.

It’s been a big year for oracles in general as DeFi has become more ubiquitous. We’ve seen rapid expansion and iteration in use cases specifically relating to price feeds, and we’ve seen firsthand what can happen to protocols that don’t have robust oracle infrastructure, especially concerning flash loan exploits.

You identify a fairly lengthy list of use cases for oracles in your paper (parametric insurance, geolocation data, oracles as an abstraction layer). Which use case do you see as the next major area of development? Who do you think is doing high impact research or work in that space?

In my opinion, the next major area of development will be focused on human input, specifically human intelligence given that currently, we see how artificial intelligence (AI) is/will dominate the majority of human tasks. The next will be a crowd-based oracle that enables the on-chaining of blockchain-external off-chain information (e.g., correct answers, dispute resolution, decisions, inputs) stemming from human users (crowdsourcing).

Up to now, there exist some emerging crowd-based oracles such as Realitio [1] and Kleros [2]. Crowd-based oracle could servers in many areas that cannot be solved by machines, e.g., small claims, E-commerce, freelancing, and content moderation.

[1] https://reality.eth.link/
[2] https://kleros.io/

1 Like

What is the rationale behind using human input as the oracle itself? It seems like that may be a challenging problem to scale. What would the benefit be as opposed to, say, an on-chain reputation system or prediction market (something using human input), and just exporting the result as data to an oracle network? An off-chain API could contribute to that as well. For example, polls or survey data that’s weighted according to quality of sample.

Then you could just use an oracle to call the data API and inform the smart contract. Similar to the AI process as most of those are already off-chain.

2 Likes