One topic that is often discussed are Oracles on Blockchains. The Waves Platform provides a nice framework for the implementation of Oracles and this story will shortly introduce you to how and why to use Oracles.
The major problem that is solved by the usage of Oracles is the very point that Blockchains can only access data that is stored on the blockchain. This is often referred to as the Oracle Problem. Here, the point is that it is important that Smart Contracts can only access data that is stored on the blockchain, so that every execution of the contract leads to the same result at a given point in time. Therefore, Smart Contracts are not able to access data from outside the blockchain, e.g., provided by Web Services or other external sources of data. Nevertheless, a couple of interesting applications needs access to real world data, e.g., Smart Contracts for insurances, decentralized betting systems and so forth.
Here, the solution is quite straightforward: if external data is necessary for the execution of a Smart Contract, this data needs to be stored on the blockchain. In order to achieve this, there are usually small programs implemented that access the necessary data and write it to the blockchain. Those little programs are called Oracles.
The Waves Platform provides some nice infrastructure that allows to implement Oracles in a standardized way.
Waves Oracle infrastructure
Here, you can find the main landing page of the Oracle infrastructure of the Waves Platform. It provides an overview about existing Oracles on the Waves Platform, together with the possibility to create new Oracles, see Figure 1.Figure 1 — Landing page for the Oracle infrastructure on the Waves Platform
An introduction to this infrastructure can be found here.
Example of an Oracle
As a small example, the following use case should be considered now: imagine you want to access data of players from the ...