Oracles for Blockchain and an Overview of the Exorum Platform

in #opensource6 years ago

Cyber•Fund is introducing a series of publications that provide an overview of some of the best speaker topics we’ve hosted at our meetups. Alexey Sidorov—the core developer of Exonum—spoke about Oracles in blockchain, as well as the Exonum platform itself.

Public versus Private Blockchains

private.png
Image via Shuttershock

Sidorov began by describing the difference between public and private blockchains. A public blockchain is a network where all nodes can participate in the creation of blocks, and is generated via mining activities. Private blockchains are networks with sets of predefined nodes that can sign blocks. Exonum is the framework used to develop a private blockchain written in Rust.

Rust

This programming language is similar to C++ and written by Mozilla. It is compiled into native code and shares similar syntax as C++. It maintains certain features including borrowing and ownership concepts that open up the possibility for one to forget about minute errors like hanging pointers. Currently only one entity can own the data.

Exonum’s Consensus and Anchoring

Exonum uses a consensus algorithm resistant to Byzantine behavior. This algorithm guarantees the integrity of data and ensures the correct execution of transactions. This includes cases of failure to a third of nodes due to malfunctions or other possible problems unrelated to block mining. Anchoring, on the other hand, is a procedure that sends block hashes to the public Bitcoin blockchain. This process verifies the data, regardless of whether or not the Exonum blockchain is actually functioning.

Exonum also supports the writing of thin clients, or what actually reads the headers of blocks, interacts with the pre-commit set and validates. Unlike the Bitcoin network, you can build a proof of Merkl for data that does not pertain to transactions. The user can request data from Exonum through the API and further validate that everything has been correctly recorded in the blockchain.

Blockchain Oracles

priests.png
Image via Shuttershock

The word Oracle traces its’ roots as far back as ancient Greece, where the priests were assigned the term due to their ability to communicate with the Gods and relay their will to ordinary mortals. The word of a priest was always considered to be true and never questioned. In contemporary times we see Oracles of blockchain technology, which are the source of external data for the network; they communicate with the inner world.

The Oracles of our current era must be:

  • A consistent source of data
  • Reliable
  • Decentralized

symbols.png

There is an Oracle BTC relay in the Ethereum network that allows the user to see the current state of bitcoin from smart network contracts. Since the header bitcoin block is protected by Proof of Work, it is almost impossible to forge data. It is necessary to take 51% of the capacity, and therefore the Oracle BTC relay is able to receive data from any source and still be considered reliable.

Augur is the market of predictions. The service hinges upon the main idea that if the users’ predictions come true, they receive the Ether and additional reputation points. In such a system Oracles create a multisig transaction with data. If the majority of the network’s participants agree with the transaction, then the transaction is executed and data accordingly falls into Augur. Likewise, The Hyperledger Fabric network uses an oracle that takes data from an external source and translates it into Fabric.

Oracles in Exonum

Since Exonum is a private Blockchain, a number of validators are logical to use as a network of oracles. This means that each validator accesses external data and creates transactions with them. The corresponding transactions are then moved to the memorial and confirmed as blocks. A subsequent, common-vision is formed; a status that other Exonum services can utilize.

For more information please contact: [email protected]

The above references an opinion and is for information purposes only. It is not intended to be investment advice. Seek a duly licensed professional for investment advice.

Coin Marketplace

STEEM 0.26
TRX 0.11
JST 0.033
BTC 63851.10
ETH 3059.36
USDT 1.00
SBD 3.85