Hyperledger Fabric v1.2: What’s New and the Roadmap for 2018

by Carlo GutierrezAugust 1, 2018
Hyperledger Fabric is putting more focus on privacy and confidentiality. IBM's Arnaud Le Hors discusses the new update, as well as plans for the rest of the year.

The development of Hyperledger Fabric began in 2016 with the idea of creating an open-source implementation of a private and permissioned blockchain system for the enterprise. In July 2017, Hyperledger Fabric v1.0 was released.

Arnaud Le Hors at the meetup in Amsterdam on June 28, 2018

Since then, Hyperledger Fabric has been through two major version updates. At a recent Hyperledger meetup, IBM’s Senior Technical Staff Member Arnaud Le Hors, summarized what was included in the v1.1 update last March, as well as what’s to be expected with the v1.2 release.

 

What was added in v1.1?

On March 15, 2018, v1.1 of Hyperledger Fabric was released, including improvements to performance, scaling, and user experience. “In v1.0, we introduced the notion of channels, so you can create subgroups of the network who have access,” said Arnaud at the meetup. “In v1.1, we’ve kept increasing the level of control over access to information.” Other business values which were enhanced include:

  • Confidentiality. Advanced confidentiality and permissioning ensure participants only see network features based on their role.
  • Development. Expanded developer capabilities through JavaScript support and transaction encryption libraries grow the Fabric ecosystem.
  • Data query. Faster and simpler data query to deliver value of a shared ledger at scale.
  • Performance and serviceability. Performance and scale improvements, as well as rolling upgrades via configured capabilities to ensure networks don’t need to be taken down while updates are made.

“In v1.1, the system is much more resilient. You can upgrade the system dynamically and update different peers at different times and it won’t crash.” —Arnaud Le Hors, IBM

Christopher Ferris, CTO of Open Technology at IBM and Chair of the Hyperledger Technical Steering Committee, was also present at the meetup and answered questions in the Q&A. In the release announcement of Fabric v1.1, Christopher noted the following new key features:

  • Node.js chaincode support for developers
  • Channel-based event service to enable clients to subscribe to block-and-block transaction events on a per-channel basis.
  • Ability to package CouchDB indexes with chaincode
  • Ability to generate certificate revocation lists (CRLs)
  • Ability to dynamically update client identities and affiliations
  • Node.js SDK connection profiles to simplify connections to Fabric nodes
  • Mutual Transport Layer Security (TLS) between Fabric nodes, and also between clients and nodes
  • Ability to encrypt ledger data for confidentiality using the chaincode encryption library
  • Attribute-based Access Control in chaincode
  • Chaincode APIs to retrieve client identity for access control decisions
  • Performance improvements for transaction throughput and response time

Christopher Ferris at the meetup in Amsterdam on June 28, 2018

 

What’s new in v1.2?

On July 3, 2018, v1.2 of Hyperledger Fabric was released. According to Arnaud, this update saw further improvements to confidentiality. “The most important (part of the update) is the Side DB or private transaction,” he said. “One of the features of Fabric is the notion of channels, but the overall service actually sees everything, so it has access to the payload of a transaction even though in its function, it doesn’t care or doesn’t look at it. From a privacy point of view, there’s still access to it and so Side DB actually gives you more control in allowing transactions to be made private.”

In addition to confidentiality, there were also improvements to the development and data querying aspects of Fabric.

  • Confidentiality. Confidential and trusted transactions without exposing the transaction to the rest of the network.
  • Development. Support for Ethereum contracts. Developers gained new tools to verify certificates and simplify smart contract execution.
  • Data query. Continued modularity of endorsement to ensure granular access rights in a production network.

“We have a project to integrate the Ethereum Virtual Machine from Burrow with Fabric. As an alternative to writing your chaincode in Go, Java, or JavaScript, you can actually bring your smart contracts in Solidity and run it on Fabric.” —Arnaud Le Hors, IBM

Fabric’s GitHub lists the following new features for v1.2:

  • Channel private data. Chaincode data can be kept confidential among a subset of channel members.
  • Access control for peer functions. Configure which client identities can interact with peer functions, per channel.
  • Pluggable endorsement and validation. Utilize pluggable endorsement and validation logic per chaincode.
  • Service discovery. Discover network services dynamically, including orderers, peers, chaincode, and endorsement policies, to simplify client applications.
  • Hygiene and technical debt. Ginkgo-based integration tests have been added, and component code has been refactored for improved readability and maintainability.

 

What’s planned for the rest of the year?

Moving forward, Hyperledger Fabric will continue to focus on privacy and confidentiality. With v1.2 only being recently released and still being worked on, the planned update for v1.3 will include:

  • Zero-knowledge asset transfer
  • RAFT orderer
  • State-based ownership
  • Web3 proxy
  • Composer function integration

Anonymous user authentication using zero-knowledge proof (Image credit)

Meanwhile, v1.4 which is still further down the development cycle will include:

  • BFT orderer
  • Flexible policies for chaincode governance

“Looking forward, the most important parts are the privacy and confidentiality aspects. We have now have channels and private transactions. We’re going to keep moving in that direction.” —Arnaud Le Hors, IBM

Hyperledger Fabric roadmap for 2018 (Image credit)

Naturally, these goals will be expanded as the development of Fabric progresses. According to Arnaud, the Hyperledger community has agreed to keep a quarterly schedule for the release cycle of Fabric. As such, v1.3 and v1.4 are expected to be released in the third and fourth quarters of 2018, respectively. Incremental updates will be rolled in every month to address bugs.

 

Want details? Watch the videos!

Table of contents

  1. What is the Hyperledger Project? (00’12”)
  2. What is Hyperledger Fabric? (7’12”)
  3. What was added in v1.1? (16’26”)
  4. What was added in v1.2? (19’00”)
  5. What’s the current roadmap for Hyperledger Fabric? (21’20”)
  6. Q&A: How do updates work? (30’50”)
  7. Q&A: How does pluggable endorsement and verification work? (34’17”)

 

At the meetup, Yurry Hendriks of ABN AMRO also talked about building a hyperconnected world of ecosystems using the offerings of the Hyperledger Project. He mentioned the need to standardize protocols and revealed the challenges a real-estate company faces when adopting blockchain.

 

Related slides

 

Further reading

 

About the experts

Arnaud Le Hors STSM IBM bio
Arnaud Le Hors is Senior Technical Staff Member, Open Web Technologies at IBM. Arnaud has been working on open technologies for 20+ years, involving standards and open-source development, both as a staff member of standards development organizations (SDO)—such as W3C—and as a representative for IBM. He is involved in every aspect of the standards development process: the technical, strategic, political, and legal ones. Arnaud has also been involved in such open-source projects as Xerces, the Apache XML parser. Now he is focusing on the Hyperledger Project.
Christopher Ferris is the CTO of Open Technology at IBM. He is responsible for IBM’s overall open-source and open standards strategy and execution. Christopher also serves as Chair of the Hyperledger Technical Steering Commitee. Additionally, he is an IBM Distinguished Engineer and has been been involved in the architecture, design, and engineering of distributed systems for most of his 35+ year career.