Table of Contents |
---|
...
...
Ethereum Enterprise Blockchain implementations
EE Client | Modified From | Developer | Open Source License |
Quorum | go-ethereum | JPMorgan Chase | LGPL |
Besu | New implementation in Java | PegaSys | Apache 2.0 |
Autonity | go-ethereum | Clearmatics | LGPL |
Strato | Haskell Ethereum | BlockApps | Closed-source |
Consensus Models Compared
...
At a high level, a configurable number of organizations must come to consensus on the execution results, where the “endorsement policy” is defined at the chaincode level, private data collection level (starting in v2.0), or key level.
Corda consensus design is very similar to Fabric. First the nodes involved in the transaction coordinate among them to process the transaction by executing the target contract and signing the execution result. Once the required signatures are collected, the initiator node is responsible for sending the transaction to the notary service for consensus signature. The notary service maintains a full history of all the transactions that have been submitted and is able to determine if a double spending situation is happening. Once the notary service approves the transaction and signs of on the proposed result, the transaction is finalized and committed by all the parties. This makes it effectively the same execute-order-validate design that Fabric follows.
Transaction Execution | Ordering (double-spend detection) | |
Ethereum | Ethereum Node (all nodes) | Ethereum Node (block proposer) |
Fabric | Endorsing Peer | Orderer |
Corda | Corda Node | Notary |
Multiversion Concurrency Control for execute > order > commit flows
“execute first and order next” design implies that some kind of concurrency version control is necessary, otherwise when multiple transactions are trying to modify the same state value in parallel, the later one will overwrite the earlier one and wipe out the state transfer from the earlier transaction, instead of building on the result of the earlier transaction. Fabric employs a multiversion concurrency control (MVCC) technique borrowed from database design. Under the cover, the chaincode engine keeps track of what state values are being viewed (in readset) and updated (in writeset) when the smart contract is executed. During the validation phase, where each transaction contained inside a block is validated and state transfer is applied, if a transaction’s state value versions in its readset do not match the current versions, typically because they have been updated by an earlier transaction in the block, then the transaction is marked as invalid.
...
Quorum adds permissionless POS consensus
Quorum Control and presented by Quorum Control's Founder and CEO, Topper Bowers.
The title of their presentation is "Topper Talks Tupelo: Introducing the Future of DLT". In the presentation, Topper will give an overview of Tupelo. Tupelo is a permissionless proof of stake DLT platform purpose-built to model individual asset ownership and provenance as the base layer (rather than token exchange). Tupelo introduces a completely unique infrastructure to better support scalable adoption outside of currency-oriented blockchain circles and deliver concrete benefits to users, from enhanced data security to more accurate and transparent record-keeping.
About Topper Bowers:
Topper Bowers is an entrepreneur and engineer with 20+ years focused on building tech that betters people’s lives. Whether he’s designing user interfaces, managing world class teams, or
building high volume distributed systems for large nonprofits and Fortune 50 companies, he’s committed to making the kind of software that can change the world. He’s a former Y-Combinator founder (Summer 2012) with deep knowledge of distributed systems and distributed ledger technology.
...