What is Quorum?

What is Quorum?

Built by JP Morgan & supported by Microsoft, Quorum is a permissioned version of Ethereum for enterprise needs.

What is Quorum?

Description

Quorum is an open-source permissioned blockchain platform, built as a fork of the public version of Ethereum ("go-ethereum"). It was launched in 2017 by J.P. Morgan and has been actively developed since then.

Built by J.P. Morgan, one of the largest financial institutions in the world (and early member of the Ethereum Enterprise Alliance), its mission is to foster the adoption of blockchain technology in a "seamless" process by providing a complete white-label solution, featuring a dedicated full-service support service.

Quorum relies on the support of the vast Ethereum community for the core infrastructure, yet, by added enhancements to cater to distinct enterprise needs. For instance, it allows the implementation of privacy features, and features a permissioned infrastructure, offering clients the opportunity to choose and implement one amongst several Proof-of-Authority ("PoA") algorithms.

Despite its nascency, it has received broad interest from many enterprises, with the most notable being Microsoft and ConsenSys. Since its launch, Quorum has not only been tested by multiple financial institutions (e.g., MUFG) but also a more extensive range of enterprises, notably including Starbucks, Shell, and BP.

What problems does Quorum attempt to solve?

Quorum attempts to solve the privacy issue of Ethereum to make it usable for enterprise solutions while fostering the existing development resources from Ethereum, the world's largest programmable blockchain by market capitalization.

Quorum initially focused on use cases within the financial industry before expanding to a broader set of industries (like supply chain management). Yet, for instance, Quorum can tackle problems with payment and settlement of business operations, which are often a succession of bilateral transfers that sometimes result in information loss.

To do so, it relies on the use of additional cryptographic techniques to prevent all except those parties to the transaction from seeing sensitive data. These changes apply at the protocol scope, through the introduction of private transactions. At the nature of the network, Quorum is permissioned for nodes participating in the consensus.

Core components of Quorum

Privacy features and private smart contracts

Similar to Ethereum, Quorum is a fully EVM-compatible distributed ledger and supports smart contracts to create all sorts of programmable applications and related units of value.

To cater to business needs, Quorum supports privacy features to allow hidden transactions, including transfers and smart contracts. Built as a "consortium chain", Quorum expands the Ethereum Transaction Model to account for additional privacy parameters for transactions.

In Quorum, a dichotomy between public and private status is established at the transaction level:

  • Public transactions are defined as similar to regular Ethereum transactions. Any node can read them, including the payload and other information, from them.
  • Private transactions allow parties to hide the content of the transactions from the rest of the network, through the use of a dedicated parameter to include the list of public addresses that can see the payload.

To support this distinction of privacy status, Quorum requires the use of a privacy manager.

Privacy managers

Quorum supports the choice amongst two privacy managers for participants to exchange with private transactions: Tessera (in development) and Constellation (its reference but being deprecated).

Tessara is built as a stateless Java system and is used to encrypt/decrypt and distribute private transactions for Quorum. Constellation is a self-managing, peer-to-peer system, built as a Haskell library.

Both systems allow nodes to:

  • Host and generate sets of public/private key pairs
  • Discover other nodes
  • Provide public API for other nodes to transact with them (for public transactions)
  • Provide private API
  • A TLS authentication system
  • Connect to databases (e.g., JDBC for Tessara) and other backend storage solutions
  • Support IP whitelists

Proof-of-Authority ("PoA") consensus algorithms

Unlike Ethereum, Quorum relies on a Proof-of-Authority algorithm.

Quorum supports the choice of three algorithms:

  1. Raft-based – A consensus model for faster block times, transaction finality, and on-demand block creation.
  2. Istanbul BFT (Byzantine Fault Tolerance) – A PBFT-inspired consensus algorithm with immediate transaction finality.
  3. Clique POA Consensus – A default POA consensus algorithm supported natively with the go-ethereum library.
ConsensusDescriptionFault toleranceForkable
RaftLeader/Follower process: nodes follow the block leader. Only mint blocks if at least 1 transaction in a block. Fast block times. Best if no concern about any malicious behavior from parties.Raft can tolerate up to 2f +1 nodes with f: number of faulty nodes.Not possible
Istanbul BFTLeaderless: multiple rounds of voting by the set of validators to arrive at a mutual agreement. Empty blocks can be produced. Best if there is any threat of malicious behavior from other parties.Istanbul BFT can tolerate up to 2f +1 nodes with f: number of faulty nodes.Not possible
Clique POASigners ("approved accounts") validate transactions and blocks. Signers take turns to create the next block. Empty blocks can be produced. Best if there is any concern about malicious behavior from a party (however, it may lead to forks)Clique POA can tolerate up to 2f + 1 nodes with f: number of faulty nodes.Possible

Regardless of the selected consensus, each of them is designed to support multiple permissioning models, with different features.

A permissioning system

Quorum also offers the choice of two permissioning systems:

  • Basic Network Permissioning Model – At each node level, a whitelist of nodes is defined to control who can connect to it.
  • Enhanced Network Permissioning Model – It features a smart-contract permissioning model and allows the definition of organizations being defined part of the network, with sub-organizations.

In the Enhanced Network Model, each of the organizations features accounts (similar to EOA in Ethereum), nodes (a network node), and roles (a dedicated job for each party). This model is defined in a library of smart contracts written in Solidity.

Should I use Quorum?

Quorum is a one-stop infrastructure, built on a fork of Ethereum source code, allowing it to integrate updates and feedback from the Ethereum open-source developer community. With only minimal changes to the core source code of Ethereum (e.g., the separation between public and private transactions does not conflict with it), any future upgrade on the Ethereum open-source code will continue to be added to Quorum.

Unlike competitors, Quorum is designed as a stand-alone solution, built for use cases mostly within an enterprise. As a result, its use as a white-label solution does not cater to the interoperability of processes across companies.

Quorum is built on solid foundations, supported by J.P. Morgan, one of the largest financial institutions with strong roots in technological advancement, and Microsoft, a leading multinational technology company. While J.P. Morgan's ability to pioneer new technology and foster development in the financial industry is well known, it is once again illustrated by one of the Quorum's initial pilots: J.P. Morgan's Interbank Information Network (IIN). As of July 2020, over 400 institutions worldwide supported this project.

However, J.P. Morgan is currently in discussion with ConsenSys on whether to spin-off Quorum from its operations, either by establishing a joint venture or setting up an open-source foundation. Hence, it remains to be seen what the long-term implications of such a strategic choice on its competitive positioning are.

Read more about similar topics