Blockchain, Ethereum, Quorum

Understanding how Quorum betters the blockchain, looking from blockchain basics via the Ethereum implementation…

Blockchain intro

  • The network consists of interconnected nodes
  • Node = machine with Blockchain software (”client”) (for the purposes of this discussion)
  • Public BC network = everyone can be a node in the Blockchain network via Internet
  • Private + Permissioned BC network = with permissions to access/operate – only BC clients with specific rights can view and operate on data

 

Blockchain records creation and keeping

  • Everything is a “transaction” between two accounts – for this discussion, there will be one account per node, one node per machine
  • => transaction is always between two nodes/machines
  • Transaction can be looked at as an array of data fields
  • A transaction: tx = [from, to, data1, data2, … datan]; from and to are account/node/machine “addresses”
  • t12 = [M1, M2, data1, data2, …. datan];
  • Multiple transactions are written together to the BC DB in one “Block”
  • Blocks are comparable to linked lists, each block points to the previous one

Block address = Hash (SHA256 + set of rules) of all transaction data inside the block

MINING: Creating a block of multiple transactions that were triggered within a specific time period. A Block is created and written (to DB) periodically.CONSENSUS: The nodes “calculate” the Block according to specific rules, then all nodes “decide” about the actual block creation by using a Consensus mechanism. Only if the consensus is achieved that the Block is calculated and it is OK, it can be written to DB.

IMMUTABILITY: Already written block and its transactions and their data – cannot be changed – the consensus will not be achieved on such write attempt and the linked list would brake if written (Block hash changes if so and subsequently, all links on later blocks).

TRANSPARENCY: all data can be visible to everyone within the network, data can be encrypted if needed.

DECENTRALIZATION: all nodes write to a distributed DB, there is SINGLE version of truth (data) which exists on all Nodes without a central DB server.

JP Morgan Quorum Blockchain

  • Is Private/Permissioned Blockchain technology solution
  • Transactions can be private – meaning: If set as private t12 and its data will only be fully visible to M1 and M2. The rest of the network cannot see details/data of a private transaction.
  • All basic and above mentioned Blockchain characteristics are still preserved and valid
  • All communications are Encrypted (TLS)
  • Private transaction are also encrypted with private/public key pairs