Getting to know the Hyperledger Projects

In December 2015, The Linux Foundation announced the launch of a collaborative effort to develop enterprise-grade blockchain tools and platforms. Its goal is to help bring about the mainstream adoption of distributed ledger technologies.

The Linux Foundation is the largest non-profit organization devoted to supporting sustainable open-source ecosystems, and the greater open-source community. The intent of the Hyperledger Foundation is to enable developers “to focus on building robust, industry-specific applications, platforms and hardware systems to support business transactions.” Hyperledger is the fastest growing open source organization that the Linux Foundation has launched.

The Linux Foundation—Host of the Hyperledger Project

The Linux Foundation—Host of the Hyperledger Project

The Hyperledger Foundation is a a global effort with leaders in banking, finance, IoT, manufacturing, supply chains, and tech; with considerable software contributions coming from IBM, Intel, Digital Asset, R3, the Sovrin Foundation, and many others. Among the Hyperledger Foundation’s earliest commitments came from Accenture, Cisco, Fujitsu Limited, IC3, IBM, Intel, J.P. Morgan, London Stock Exchange Group, Mitsubishi (MUFG), R3, SWIFT, VMware, and Wells Fargo.

hyperledger Umbrella

There are currently ten projects under the Hyperledger umbrella: five distributed ledger frameworks, and five tools. Among its frameworks are Fabric, Sawtooth, Indy, Burrow, and Iroha. Its tools include Caliper, Cello, Composer, Explorer, and Quilt.

5 Frameworks

Hyperledger’s five frameworks consist of the major building blocks for creating a variety of distributed ledgers and their components.

Fabric

hyperledger-fabric.png

Fabric was one of Hyperledger’s first proposals, its codebase combining work from Digital Asset, Blockstream, and IBM. It was the first Hyperledger project to graduate from incubation phase. Fabric was written in Go and is Hyperledger’s most popular framework, featuring pluggable components and a customizable architecture.

Fabric has a permissioned infrastructure, with a distributed operating system, executing smart contracts written in a general-purpose programming language. Fabric employs modularized consensus mechanisms, trust levels, and permissions. The modular nature of fabric makes it easier to integrate with existing architectures; and makes upgrading individual components easy, as your needs change.

Sawtooth

hyperledger-sawtooth.png

Sawtooth is the second project to graduate from Hyperledger’s incubation phase. Sawtooth is Intel’s approach to a permissioned blockchain protocol. Sawtooth-core is primarily Python while Sawtooth-raft and Sawtooth-sabre are in Rust; it also has components employing JavaScript and Go. Sawtooth uses Proof of Elapsed Time (PoET) Consensus. Sawtooth has pluggable consensus algorithms, offers the possibility of parallel transaction processing, and private transactions.

Sawtooth can be deployed as a Public, Private, or Consortium network. In a public network, any client can sign a transaction. However, such use is beyond the scope of its current design and would require an incentives system. A consortium network has a permissioned consensus layer, while the transaction layer is open. On a private network, every layer is specifically permissioned.

Burrow

hyperledger-burrow.png

Hyperledger Burrow is a permissioned Ethereum node capable of running Ethereum EVM smart contracts on a permissioned virtual machine. Some of Burrow’s core capabilities include transaction finality and high throughput. Burrow was built in Go, uses Tendermint PoS, and Application BlockChain Interface (ABCI).

Originally developed by Monax, the Hyperledger foundation has made considerable progress towards integrating Burrow with Fabric.

Indy

hyperledger-indy.png

Hyperledger Indy was designed to provide decentralized identity for people, organizations, and things. Indy-node was written in Python, and Indy-SDK in Rust. Indy’s codebase was originally developed by Evernym, submitted to the Sovrin foundation, to support its open-source basis. Being introduced to the Hyperledger Foundation for the same purpose.

Hyperledger is a member of the Decentralized Identity Foundation (DIF) along with Accenture, Microsoft, The Rockefeller Foundation, IBM, Blockstack, R3, Civic, Evernym, Sovrin, ID2020, Mastercard, and others sharing the goal of creating a decentralized identity ecosystem.

Indy is the first distributed ledger using Decentralized Identifiers (DIDs) as its primary keys. DID specs are being developed in collaboration with the W3C’s Credentials Community Group to enable cryptographically verifiable digital identities without requiring a centralized registry. Indy supports zero-knowledge proofs (ZKP), enabling its users to prove their individuality while revealing only the information absolutely necessary for the interaction. For example, this technology could prove to a store clerk that you are old enough to purchase alcohol, without revealing your name, exact age, or any other personal information.

Iroha

hyperledger-iroha.png

Iroha was initially contributed to the Hyperledger project by Soramitsu, Hitachi, NTT Dat, and Colu; inspired by Fabric. Iroha was created in C++, comes with the YAC consensus algorithm, and was designed to be easy to incorporate into existing infrastructure projects.

Iroha is being made to facilitate the creation of end-user applications, specifically mobile and web apps. Interoperable with other Hyperledger projects, Iroha’s libraries for iOS, Android, and JavaScript allow developers to create functions for performing common operations.

5 Tools

Hyperledger Symbol

Hyperledger Symbol

In addition to its 5 blockchain components, Hyperledger is also building out 5 tools to accompany those components.

Caliper

hyperledger-caliper.png

Caliper was built in JavaScript and is a tool that allowing users to measure the performance of a particular blockchain implementation with a set of predefined trials. Caliper displays blockchain performance metrics like TPS (Transactions Per Second), latency, and resource usage.

The intent is for Caliper results to be used by other Hyperledger projects, and to support the choice of a blockchain implementation suitable for a user’s specific needs. Caliper currently supports Fabric, Iroha, and Sawtooth; initially contributed by Huawei, Hyperchain, Oracle, Bitwise, Soramitsu, IBM and the Budapest University of Technology and Economics.

Cello

hyperledger-cello.png

Mainly written in Go, Cello was made to reduce the effort required to create, manage and terminate blockchains; bringing the “on-demand” business model to blockchain, and offers a dashboard for various performance metrics. Hyperledger Cello was initially contributed by IBM and currently supports Fabric.

Composer

hyperledger-composer.png

Hyperledger Composer is a development toolset and framework to make developing blockchain applications easier. Composer was written in JavaScript; leveraging node.js, npm, CLI, and popular editors. Composer is Hyperledger’s most active development tool. Composer currently supports Fabric, and can be used to model your business network, integrating existing systems\data with your blockchain applications.

Explorer

hyperledger-explorer.png

Explorer provides a browser for viewing activity on the Fabric blockchain. Mainly written in JavaScipt, Explorer can view, invoke, deploy, or query blocks, transactions and associated data including network information, chaincode and transaction families.

Quilt

hyperledger-quilt.png

Quilt is being created to support cross-platform interoperability. Quilt implements the Interledger Protocol (ILP) that was designed to transfer value across both distributed and non-distributed ledgers.

Interledger’s standards and specifications are being defined by the open source community via the World Wide Web Consortium. With the addition of Quilt to Hyperledger, the Linux Foundation now hosts both the Java (Quilt) and JavaScript (Interledger.js) Interledger implementations. Eventually, it should enable interoperability between all of the Hyperledger Projects.

Conclusion

The Hyperledger Project includes the largest collection of open-source software in the enterprise blockchain ecosystem. Developing with open source solutions allows you to focus on creating the features you need, rather than their core protocols. As blockchain technology grows and new techniques are tested across the ecosystem, a selection of the best will continue working their way into the Hyperledger family of products.

At only three years old, it’s already an impressive collection and community. I’m looking forward to learning the many ways these frameworks and tools are being put to use.

Infominer

Resources