A gentle introduction to The Hyperledger Project
I have noticed a great deal of confusion when people talk about “Hyperledger”. I recently gave a talk about this at a meetup hosted in Paypal’s offices in Singapore. This article summarises the talk.
Hyperledger is a project, not a technology, and you don’t build stuff on Hyperledger.
When people ask, “What is Hyperledger?”, the answer I give is usually “Do you mean the project called Hyperledger run by The Linux Foundation, or do you mean one of the ledger technologies incubated by that project which used to be confusingly called Hyperledger Fabric?”. The first is a group of people, the second other is a bunch of code.
Let’s start with The Linux Foundation
According to their website, The Linux Foundation is the organization of choice for the world’s top developers and companies to build ecosystems that accelerate open technology development and commercial adoption.
Projects. The Linux Foundation runs many projects, the most well-known of which is Linux, the open source operating system, with the iconic penguin logo. Currently the website lists 52 such projects. Projects run by the Linux Foundation use open source governance best practices, including license and contribution agreement choices, in keeping with the ideals of Linux. The Hyperledger Project is one such project.
The Linux Foundation’s Hyperledger Project (“Hyperledger”)
An “Umbrella” for Open Source Blockchain & Smart Contract Technologies
From the website, with my bold: The Hyperledger project is an open source collaborative effort created to advance cross-industry blockchain technologies. It is a global collaboration including leaders in finance, banking, IoT, supply chain, manufacturing and technology. The project aims to bring together a number of independent efforts to develop open protocols and standards, by providing a modular framework that supports different components for different uses. This would include a variety of blockchains with their own consensus and storage models, and services for identity, access control, and contracts.
Who funds the project? Project members.
There are three types of members who pay different fees: premier members, general members, and associate members. There are varying membership fees:
- $250k/year for premier members
- General members pay $5k-$50k/year based on the headcount of the organisation
- Associate members (pre-approved non-profits, open source projects, and government entities)
Membership to the Hyperledger project also requires companies to be a corporate member of The Linux Foundation.
[Source: https://www.hyperledger.org/about/join retrieved 9 Dec 2016]
Who are the members?
Premier members, who can have representation on the project’s governing board and the technical steering committee include: Accenture, Airbus, CME Group, Deutsche Bourse Group, Digital Asset, DTCC, Fujitsu, Hitachi, IBM, Intel, JP Morgan, R3, Wanda Group.
Who coordinates it?
Who writes the code?
Technologies that conform to the ideals of the project can be submitted for consideration to be incubated by the project. Who develops the code? It is not the responsibility of The Linux Foundation to directly develop any of the code bases.
There are several code contributions to the project: these are currently separate standalone distributed ledger technologies (DLTs) that all show promise, rather than “parts of a whole”. Currently, the main code contributions of distributed ledgers being incubated by the project are:
- IBM’s Fabric (initially contributed mainly by IBM*)
- This was earlier confusingly called “Hyperledger Fabric”, causing some people refer to it as “Hyperledger” for short. Usually when someone says “we tried to use Hyperledger”, they mean “we tried to use Fabric”, but sometimes they mean any of the DLTs incubated within project Hyperledger more broadly. It’s best to check!
- Soramitsu’s Iroha (contributed by Soramitsu, NTT Data, Colu)
- All together now, “eee-row-ha”
- Intel’s Sawtooth Lake (contributed mainly by Intel)
R3 open-sourced its distributed ledger technology (DLT) called Corda on 30 November 2016, and currently intends to submit it for consideration for incubation in Hyperledger. Corda is designed to meet the requirements of regulated financial institutions and as such is targeted for use firstly by the financial services industry. It can also be used elsewhere for other industries: solving for the requirements of finance makes is a good candidate for any industry. For more depth, it is well worth reading these accessible descriptions of Corda: business whitepaper and explanation in Richard Brown’s own words.
Interoperability, or chains working together
Although the project’s goal is to create interoperable ledgers suitable for a diverse range of industries, the individual contributions (Fabric, Sawtooth Lake, Iroha) are not yet interoperable. That is, assets or smart contracts on one of the ledgers can not immediately interact or work directly on another. Driving ledger interoperability at the most basic technical levels is one of the key aims and values of Hyperledger.
For clarity of communication, Hyperledger is a project run by The Linux Foundation, and the distributed ledger technologies under incubation by the project are IBM’s* Fabric, Intel’s Sawtooth Lake, Soramitsu’s Iroha, and perhaps soon R3’s Corda.
In the interests of clarity over confusion, talk about “The Hyperledger Project” if you mean the project or “Fabric/Sawtooth Lake/Iroha” or even “The Hyperledger technologies” if you mean the technologies in general, but you can’t build an app on “Hyperledger”.
* The history of the “Fabric” contribution is complex (I don’t understand it), and for simplicity’s sake I have described it as IBM’s Fabric. It appears to have been originally mainly contributed by IBM. Tim Swanson wrote about it here and at time of writing, Wikipedia says “One of the first proposals was for a codebase combining previous work by Digital Asset Holdings, Blockstream’s libconsensus, and IBM’s OpenBlockchain. This was later named Fabric.