As the first project of the Hyperledger greenhouse in 2016, Fabric introduced its v1.0 release in July, 2017. Since then, a number of enhancements and new features have been implemented based on the feedback from industry and community.
To celebrate the 4th birthday of Hyperledger Fabric, what can be a better gift than the major release of v2.0? Before we jump into the new additions and features in this release, we think this major milestone is a good time to reflect on some of the key design objectives behind Hyperledger Fabric and how it has evolved to this point.
An open, proven, enterprise-grade blockchain framework
Echoing the Distributed Ledger Technology (DLT) trends and requirements in finance, supply chain and other industries, Hyperledger Fabric was initiated by tens of leading companies globally in early 2016. Since then, under the support of the Linux Foundation, hundreds of open source developers have been working together to design and implement a practical DLT framework to meet these real demands by integrating the advanced techniques of databases, networking, distributed consensus, and cryptography.
Hyperledger Fabric has quickly become one of the most popular open source DLT projects, with hundreds of deployments worldwide. In 2019, 30 companies in the “Forbes Blockchain 50” were using it.
Due to its open source model and popularity, Hyperledger Fabric has been adopted by major Cloud Service Providers including Alibaba, AWS, Azure, Baidu, Google, Huawei, IBM, Oracle, SAP, and Tencent.
What is Hyperledger Fabric?
Hyperledger Fabric is an enterprise-grade, distributed ledger platform that offers modularity and versatility for a broad set of industry use cases. Rather than a permission-less system where anyone can transact and access data, Fabric offers a permissioned, secure, and scalable platform that supports smart contracts and data privacy. This architecture allows for solutions developed with Fabric to be adapted for any industry, thus ushering in a new era of trust, transparency, and accountability for businesses.
While members of a network work together, businesses still often need to maintain separate relationships within their networks to keep certain interactions private. For example, a purchaser might be selling the same product to different sellers at different prices.
Fabric provides a spectrum of options to support transaction and data privacy. You can use separate “channels” if you need total transaction isolation between member organizations. And you can use “private data” within a channel if you’d like to keep data private while writing hashes on a shared ledger as transaction evidence. Private data can be shared on a need-to-know basis and then verified against the on-chain hash evidence.
Why Hyperledger Fabric?
Because Hyperledger Fabric has matured in the open source community with a focus on enterprise use cases, it has evolved to support the features and production operations that enterprises demand. Here’s a few of the features that make Fabric unique relative to other distributed ledger technologies:
- Permissioned and modular architecture
- Flexible endorsement model for achieving consensus among transacting organizations
- Pluggable consensus for transaction ordering and block distribution
- Open smart contract model – flexibility to support various solution and data models (account model, UTXO model, structured data, unstructured data, etc)
- Data privacy – complete transaction isolation using “channels”, or share private data on a need-to-know basis using private data “collections”
- Low latency of finality/confirmation
- Multi-language smart contract support: Go, Java, Javascript
- Support for EVM and Solidity
- Governance and versioning of smart contracts
- Queryable data – keyed queries, range queries, and JSON queries on-chain, and event hooks to integrate data into your preferred database or analytics engine
- Designed for continuous enterprise operations, including rolling upgrades and asymmetric version support
Hyperledger Fabric 2.0: The Latest Evolution
The evolution continues and we are excited to see the next generation! Let’s welcome Hyperledger Fabric v2.0 by taking a quick glance at the highlighted features compared to the v1.0 release:
- New chaincode lifecycle management. The totally redesigned chaincode lifecycle management process introduces decentralized governance for smart contracts, with a new process for installing a chaincode on the peers and starting it on a channel. The new Fabric chaincode lifecycle allows multiple organizations to come to agreement on the parameters of a chaincode, such as the chaincode endorsement policy, before it can be used to interact with the ledger.
- New chaincode application patterns for collaboration and consensus. The same decentralized methods of coming to agreement that underpin the new chaincode lifecycle management can also be used in your own chaincode applications to ensure organizations consent to data transactions before they are committed to the ledger. Additionally, organizations can now extend their copy of a chaincode to meet their individual requirements. For example, an organization can add its own chaincode validations to better protect the organization’s specific interests before agreeing to endorse a transaction. As long as there is consensus on the chaincode execution results among the required endorsers for a given transaction, the transaction will be committed to the ledger as in prior releases.
- Data privacy on a need-to-know basis. In addition to the traditional use of channels and private data collections to share data among a subset of network members, the new implicit organization-specific private data collection feature in v2.0 allows organizations to privately share data with other organizations in the channel on a need-to-know basis, eliminating the need to define channels or private data collections for many combinations of members. Hashes on the channel ledger serve as transaction evidence to ensure that private data can be verified when shared, or later audited as needed.
- New external chaincode launcher. The external chaincode launcher feature empowers operators to build and launch chaincode with the technology of their choice, removing the requirement to give the peer access to a Docker daemon. For example, an operator may decide to deploy chaincode as an external service in a Kubernetes pod.
- New consensus type of Raft. The new Raft consensus for ordering service introduced in v1.4.1 is now the recommended consensus service, eliminating the dependency on an external Kafka cluster. This makes the ordering service a decentralized governing model that can be provided by multiple ordering organizations. Additionally, an ordering node can now choose which channels it will serve instead of the legacy requirement of serving all channels. This brings an important scalability improvement to better support a large number of channels and transactions, not to mention the obvious privacy improvement.
- Performance improvements. A number of performance improvements have been added throughout the v1.x releases and in v2.0. A new cache has been added to the peer to improve performance when using CouchDB as the state database. Additionally, transaction validation is parallelized in the commit phase. The ordering node message processing flow has been optimized to remove redundant checks, and the write block processing is now asynchronous. Chaincode queries can be paginated, making it feasible to support large result sets with high performance. It’s now possible to achieve thousands of TPS in practice.
Hyperledger Fabric 2.0 is already getting strong interest within the blockchain community:
“The release of Hyperledger Fabric 2.0 is an important step forward in the on-going evolution of DLT, and was developed based on feedback from real-world use, including improved chaincode management capabilities and performance enhancements. DTCC’s work with Hyperledger enables us to bring DLT expertise and knowledge in-house while contributing our learnings and progress on enterprise-scale projects with the DLT community. We look forward to our continued efforts around Fabric 2.0 and in working with Hyperledger.” – Rob Palatnick, Managing Director and Global Head of Technology Research and Innovation at The Depository Trust & Clearing Corporation (DTCC) and Governing Board Chair at Hyperledger
“The release of Hyperledger Fabric 1.0 was an enormous accomplishment and provided the enterprise blockchain community with an extensible framework upon which HACERA has built products that accelerate the building of business networks. HACERA has been part of the Hyperledger Fabric development team since the beginning and after working as the release manager for Fabric 1.0 in 2017, HACERA’s main contributions to Fabric have focused on two of our core strengths – identity and privacy (based on Zero-Knowledge Proofs). With Fabric 2.0, we are now able to offer HACERA Kore (for managing and governing decentralized networks), HACERA’s DAML-on-Fabric Enterprise 2.0 as well as seamless integration of a secure and decentralized data availability layer (The Unbounded Network). What a way to start the new decade!” – Jonathan Levi, CEO of HACERA, The Unbounded Network and Vice Chair of the Token Taxonomy Initiative/Framework
“I am delighted to see Hyperledger Fabric v2.0 released. Hitachi has contributed to the social innovation through the development of superior, original technology and products since its foundation in 1910. Hitachi believes that Hyperledger Fabric v2.0 and related blockchain technologies will further expand the possibility to merge sustainability and business and to resolve social issues through the contribution to the initiatives like Society 5.0 and Sustainable Development Goals (SDGs). Hitachi continues to contribute to the Hyperledger community and to provide blockchain solutions for various industries.” – Nao Nishijima, Researcher, Hitachi, Ltd
“IBM is excited about this key milestone in Hyperledger Fabric’s development life cycle. We are proud to have been part of the community that has collaborated on its development, and we are eager to upgrade the IBM Blockchain Platform — industry’s first multi-cloud implementation of Hyperledger Fabric — to leverage the new capabilities and improved performance in this milestone release.” – Jerry Cuomo, IBM Fellow and VP of Blockchain Platform, IBM
“IntellectEU is grateful to have been a part of the Hyperledger community since the very beginning. The release of Hyperledger Fabric 1.0 was a breakthrough for enterprise blockchain. Today we are excited about the Hyperledger Fabric 2.0 release. More specifically the private data enhancements that will drive adoption for our clients in the financial services industry. Our engineering team will be applying decentralised governance for chaincode when helping our clients migrating to Fabric 2.0.” – Thomas Bohner, VP of Blockchain at IntellectEU
“Oracle is excited about the Fabric 2.0 GA release. Hyperledger Fabric underpins Oracle Blockchain Platform, which is used by numerous customers in production, and a number approaching production deployments. The new capabilities in this release will directly benefit these customers who are looking for greater data privacy capabilities, increased performance, and decentralized consensus mechanism. I also think the new decentralized governance model for chaincode updates and organization-specific extensions will enable broader flexibility and help with the chaincode update process in consortia environments. These practical improvements will help to accelerate adoption of Fabric across our enterprise customers and government organizations. Oracle is very committed to Hyperledger Fabric, and we’d like to congratulate the Fabric community on this important milestone.” – Mark Rakhmilevich, Senior Director, Blockchain Production Management at Oracle
“We’re excited to stand alongside our friends as they launch Hyperledger Fabric 2.0. This release demonstrates a mature project with enhanced performance and deployment features that will allow for innovative identity projects to come to fruition, like our Verified.Me service. Hyperledger’s projects – such as Fabric and Aries – provide important open source components for building ecosystem services like Verified.Me, and we’re happy to contribute to such an excellent and dedicated community.” – Troy Ronda, Chief Scientist for SecureKey Technologies Inc.
To try out the new version of Hyperledger Fabric, see the Getting Started documentation. A new test network in the fabric-samples repository makes it easier than ever to start using Hyperledger Fabric within minutes!
For more details of the new features in Fabric v2.0, see the What’s New documentation.