2016 was a big year for Blockchain. The hype around Blockchain was palpable, and you saw news from all around the world about various initiatives picking up steam. While this entry is not meant to provide a comprehensive state of *all* of the consortiums out there, I am attempting to capture the ones who seem to have the most momentum and news coverage.
If you are serious about following the enterprise Blockchain scene, the following players merit your attention:
- Digital Asset Holdings
- Ethereum Enterprise (This was the new entry on the block as this entry was being written).
HyperLedger – Hyperledger is an open source effort by Linux Foundation to develop a blockchain platform and to support blockchain-based distributed ledgers.The term Hyperledger itself doesn’t specifically point to one project; rather is a collection of various projects committed by different members. The projects themselves range from building blockchain based distributed ledgers to a Blockchain as a Service toolkit to a blockchain explorer.
Hyperledger ecosystem is built on the following tenets:
- Data/Decisions need to remain with project stakeholders
- Plug-ability to enable flexibility.
- Ability to trace transaction history
- Utilize native SDKs as much as possible
- Support for HSM (Hardware Security Module)
- Support for ACL
- Eliminate Single point of Failure
- Collaborate with projects within the Hyperledger ecosystem to pick the best design/architecture
Image Credit: Coin Desk Construct 2017
HyperLedger Fabric – An implementation of blockchain technology that is intended as a foundation for developing blockchain applications or solutions. Fabric offers modular design allowing plug-and-play components like consensus and membership services. It leverages container technology to host smart contracts called chaincode that comprise the application logic. Fabric was incubated with the contributions from IBM and Digital Assets Holding Group (DAH) based on the successful experiment implemented at the F2F hackathon hosted by JPMC in NYC week of March 21, 2016.
The fastest way to take Fabric for a test drive is to use IBM’s Bluemix Free Developer edition that can be found here. On the other hand, if you are a glutton for shell scripts and terminal, you can build your own Node.Js/Vagrant based Fabric client SDK development environment setup by following instructions here. A Java SDK version is apparently in the works.
Iroha – Iroha has an interesting background it comes from the land of rising sun – It is a distributed ledger project that was designed to support infrastructural projects that require the use of distributed ledger technology in a simple and easy way. Iroha was developed in C++ and emphasizes its use in mobile environments and application development.
Iroha specifies its goal to provide the following c++ components that can be used across all Hyperledger projects:
- Sumeragi consensus library
- Ed25519 digital signature library
- SHA-3 hashing library
- Iroha transaction serialization library
- P2P broadcast library
- API server library
- iOS library
- Android library
- Blockchain explorer/data visualization suite
Iroha was added to the Hyperledger family with contributions from Soramitsu, Hitachi, NTT Data and Colu. A full white paper explaining the design of Iroha can be found here. The client code can be found on Github here.
Sawtooth Lake – Sawtooth Lake is a blockchain ledger project from Intel. Its designed to be a modular platform for building and running distributed ledgers. By using a pluggable architecture for consensus, Sawtooth Lake provides the ability to run both permissioned and permissionless Blockchains. Sawtooth Lake comes out of the box with a consensus Algorithm called PoET (Proof of Elapsed Time), which is intended to run in a Trusted Execution Environment (TEE), such as Intel® Software Guard Extensions (SGX). PoET is a lottery protocol that follows the Nakamoto Consensus model to elect a leader in the voting process. However, unlike Bitcoin consensus that uses extensive Proof of Work based validation which wastes compute cycles and electricity, PoET uses a Trusted Execution Environment(TEE) to provide a guaranteed wait time for each validator(node).
Each validator in the network requests a wait time from a trust function within the TEE. The validator with the shortest wait time for a particular transaction block is elected the leader. The TEE’s provide trust services like CreateTimer() and CheckTimer() to ensure that a particular validator created a timer within a TEE and waited the specified amount of time to win the lottery. By utilizing Intel’s SGX enabled processors that can provide a TEE environment, PoET can scale by adding more validators without having to resort to extensive Proof of Work based mining.
Cello – Is a toolkit for deploying a Blockchain-as-a-Service, that reduces the effort required for creating, managing, and terminating Blockchains. Getting Hyperledger Fabric up and running requires on different nodes required configuring Docker scripts to get the environment up and running on various machines that can be time-consuming and error-prone.
Cello avoids these problems by providing pre-configured environments to get a Blockchain running similar to IBM Blumix or Microsoft Azure BaaS.
In summary, Hyperledger seems to have a vibrant ecosystem of various participants contributing to developing a vibrant open source Distributed Ledger technologies. The Hyperledger Technical Steering Committee ensures that the various efforts stay in sync with the core philosophies of open source contributions. You can find more information about Hyperledger at their wiki or in their slack channel.
R3CEV is a financial services/distributed ledger technology company responsible for creating R3, the most famous blockchain consortium that has managed to garner the attention of the financial industry. It has an impressive roster of 70+ members who are working with some of the sharpest minds in the DLT space like Richard Gendal Brown(CTO of R3) and Mike Hearn(former Bitcoin Core Developer) to create a new world of financial services infrastructure and applications using the ideas derived from Blockchain technology.
According to Clemens Wan, Associate Director of R3, they see their technology as one that requires broader buy-in from enterprises and corporates to achieve a strong network effect and important applications. According to Wan, R3’s open sourced DLT platform Corda is similar to XBox Live, in a sense it builds the ecosystem and the connectivity. By focusing on providing the platform and services, R3 will enable its members to innovate using DLT technologies to solve their business problems by building a variety of use cases.
The use cases that are being worked on my R3 members is quite comprehensive:
R3 believes that 2017 will be the year of Pilot and 2018 will be the year when DLT applications will hit mainstream production.
Image credit: R3 blog.
Corda platform has been open sourced as part of the Linux Foundation’s HyperLedger project. Corda attempts to not replicate the Bitcoin blockchain; rather it takes an enterprise point of view of creating a shared ledger that allows managing financial agreements. Corda was designed to address the pain points which stops enterprises from embracing DLT technologies fully. To facilitate this, Corda is designed with these goals in mind according to Richard Gendal Brown, CTO of R3CEV:
- Corda has no unnecessary global sharing of data: only those parties with a legitimate need to know can see the data within an agreement
- Corda choreographs workflow between firms without a central controller
- Corda achieves consensus between firms at the level of individual deals, not the level of the system
- Corda’s design directly enables regulatory and supervisory observer nodes
- Corda transactions are validated by parties to the transaction rather than a broader pool of unrelated validators
- Corda supports a variety of consensus mechanisms
- Corda records an explicit link between human language legal prose documents and smart contract code
- Corda is built on industry-standard tools (Kotlin, a JVM compatible language).
- Corda has no native cryptocurrency (it rather uses real world currencies).
By addressing these design goals, Corda is able to address the blockchain benefits like validity, uniqueness, immutability and authentication within the context of applications for financial services.
Recently R3 and Corda were in the news when they announced that their solution is “blockchain inspired” rather than a blockchain. An interesting analysis by Chris Skinner about this can topic can be found here.
DAH is a Distributed Ledger Technology startup founded by Blythe Masters and other industry veterans. DAH aims to use distributed ledger technologies to disrupt the legacy processes which slow down the financial industry. In their own words:
In theory, a shared, immutable ledger enables transparent, peer-to-peer, real-time settlement without the need for financial intermediaries. In reality, markets require known, reliable counterparties, rights of reversal and error correction, high levels of privacy and the operational benefits of net settlement in a system in which legal entities are responsible for the perfection of title to and legal standing of financial assets. Consequently, markets will continue to benefit from and require third party service providers to perform a variety of functions as they do today: from ensuring clean title, to enabling operational and balance sheet netting.
Assets are not currently issued solely into these distributed networks, and may never be. This necessitates careful on- and off-ramping procedures for keeping the two systems in sync as new technology is adopted. These needs can be met at the transaction layer, where Digital Asset software maps business logic and legal processes to cryptographic signature flows. As an example, our software constructs transactions that enjoy privacy and, when required, permit the ability for net settlement.
Digital Asset claims they select the right kind of distributed ledger for the problem at hand; they can work both on permissionless ledgers (like Bitcoin and Ethereum) as well as permissioned ledgers (Hyperledger) that provides better control. To enforce the right type of smart contract execution logic, DAH has modeled a new language called Digital Asset Modeling Language (DAML). DAML is similar to a smart contract language in many ways but it is designed with the needs of financial institutions in mind. According to DAH, it is optimized for usage in a private execution environment rather than in an open execution environment(in which it would be processed by all of the nodes in a network). DAML is designed to achieve many of the same benefits of Smart Contracts.
DAML does not support Turing Completeness. This allows it to specifically focus on financial services use cases where the potential outcomes are predictable (and hence avoid the halting problem). DAML focuses on verifiability – only by the stakeholders of that agreement rather than by everyone, and on certainty – being able to accurately predict all possible outcomes of the agreement rather than introducing doubt with unnecessary complexity.
Consensus in DAML: DAML ensures that all stakeholders can reach consensus by utilizing the shared log containing the complete provenance of the rights and obligations along with an off-chain execution environment for processing the workflows and the behaviors that are being modeled. DAML also ensures that not all nodes in the network need to know and process the contents of a contract; only the parties specified/relevant in the contract are involved in the execution. Contract data is revealed on a need to know basis and even the distributed ledger, which only contains references to the agreement, is encrypted so other entities cannot detect even its existence on the ledger, let alone the terms.
DAML Agreements and Hyperledger: The name Hyperledger used below can be easily mistaken for the Linux Foundation’s Hyperledger project. Tim Swanson from R3 explains the naming confusion between these two in his blog post here. Take a few minutes to read that before you proceed below. If you did not have the time, here is a brief blurb:
So when someone asks “what is Hyperledger technology?” the short answer is: it is currently the name of a collective set of different codebases managed by the Linux Foundation and is not related to the original distributed ledger product called Hyperledger created by a company called Hyper that was acquired by DAH. The only tenuous connection is the name.
The combination of the Digital Asset Modeling Language and Hyperledger allows for scale and privacy while maintaining a fully reconciled system across multiple parties. DAML serves as a logic and validation layer sitting above the ledger, providing an auditable way to prove the updates that occurred to the distributed ledger. An agreement modeled in DAML is only active if Hyperledger confirms it is valid and not referenced by any other transaction, creating an independently verifiable logical mapping between the original business intent all the way through to the relevant Hyperledger transactions.
Image Credit: Coin Desk Construct 2017
Nodes in the Hyperledger network that are not party to the agreement are still able to agree upon its outcome because they can independently verify that all of the required authorizations have been made without ever actually seeing the contents of the agreement itself. However, the contents of agreements can be provably revealed to authorized third parties such as regulators.
We will cover the last three (Chain, Ripple and Enterprise Ethereum in Part 2 of this series).