Hyperledger Technical F2F Meeting Draws Crowd, Gets Some Work Done
Let’s get started
IBM Distinguished Engineer and CTO of Open Technology Christopher Ferris heads the Hyperledger Project’s Technical Steering Committee (TSC), which helped organize the F2F in New York. He led a TSC meeting at the conclusion of the F2F.
Once all participants had an opportunity to introduce themselves, the proceedings then began with Tamás Blummer, Chief Ledger Architect at DAH, making a presentation of their code base. This was followed by Binh Nguyen Senior Technical Staff Member, IBM who presented the IBM Open Blockchain (OBC) code base. Sheehan Anderson, Advisory Software Engineer for the Hyperledger Project at IBM, then introduced a few chaincode examples. With the introductions out of the way, Chris Ferris then presented a set of suggested experiments that the group might engage.
Engineers and non-engineers
There were two class of participant at the hackathon: engineers and non-engineers. The engineers were clearly interested in pursuing one or more of the suggested experiments. The non-engineers were much more interested in participating in the development of the use cases and requirements or the white paper.
A few memorable areas of discussion emerged during the first day:
- Unified API. This would be some kind of wrapper for different Hyperledger implementations. The most important fact is that engineers from IBM and DAH had a chance to work closely together. Over the first three days they managed to find a way how to adapt their products with this new API implementation.
- Unit-tests for HyperLedger project. Nobody selected this project.
- Sample apps development. Engineers without experience in Hyperledger selected this team and were interested in basic use cases for how to work with blockchain. They decided to develop an example of a “stock app”. with the ability to move stocks between accounts.
- Benchmarks. Two developers decided to run benchmarks for Hyperledger.
- This group came from many different companies and would like to understand how this technology can affect their business and what should they do in order to “catch the wave”. Representatives of this group decided to join the use case discussion activity.
Accenture had a team there interested in the use of Hyperledger in tracking clinical results.
Four working groups were formed during the week:
- Requirements and use cases. Led by Patrick Holmes, Senior Principle Engineer, Intel
- White paper. Led by David Voell, Executive Director, JP Morgan
- Chain code (aka “chain gang”). Led by Stan Liberman, Director of Software Engineering at CME Technology Labs
- Combined technical workgroup. Focused on the integration of API workgroup, and a script interpreter and integration group. Led by Robert Fajta, Senior Developer at DAH.
Requirements and use cases
Led by Patrick Holmes (Intel)
For the first day this group was divided into two sub-groups. One focused on financial use cases, the other on non-financial.
The Financial group was more than twice the size of the other, and came up with 18 use cases; the Non-Financial group came up with 11.
Members of the two working groups also included:
- Financial – Stefan Teis (Deutsche Boerse), Hart Montgomery (Fujitsu), Ram Jagadeesan (Cisco), Frank Lu (IBM), and Renat Khasanshyn (Altoros)
- Non-financial – Judy Priest (Cisco), Daniel Ford (Keoja), Ari Mutanen (Altoros), and Sergey Balashevich (Altoros).
All of the use cases need to be fleshed out to some degree, as pointed out by Renat Khasanshyn. Some simply list a title at this point.
Patrick Holmes noted that “we have to understand use cases that are of interest for real companies, create a requirements product based on them, and then adopt their blockchain project to these needs.” He said Intel’s implementation will be released to open source in two weeks.
Financial use cases to date include asset financing, commodities, credit default swaps, microlending, letters of credit, and others. Among the non-financial use cases we find clinical trial results, music publishing, property ownership, supply chain logistics, voting, and others.
The list of use cases to date can be found at here.
Specific requirements for Hyperledger implementation can be derived from detailed use cases. All agreed it’s now a priority to build upon the current work and develop them.
Led by David Voell (JP Morgan)
A fairly lengthy white paper that’s been repurposed from existing work by IBM on its Open Blockchain (OBC) technology was also presented in this context, and there is also a priority to make this paper uniquely describe what’s going on with Hyperledger.
One big question that the current version answers—and which will continue to be developed—is to answer why there is a need for a new fabric.
One important point is that “there are a lot of use cases where existing fabrics are not appropriate,” according to Dave. “[Today], we’re going to require a permissioned network,” he said, adding that “maybe this could evolve to include non-permissioned.”
The current working version of White Paper can be found here.
Led by Stan Liberman (CME Technology Labs)
Stan with his group demonstrated a real share exchange mechanism emulating transfers between registered users. Stan outlined a basic secure transfer case, showing how to specify roles, create a simple security registry, and find a specific chaincode address.
This team spent a good part of its first two days on environment configuration. For newcomers it can be a challenging task to deploy the environment without mistakes. But the end-result of this group’s efforts is an example of an application that will be helpful for new developers.
During his presentation on Day 4, Stan outlined the sample application:
He also showed some of the initial code:
Combined technical committee
Led by Robert Fajta (DAH)
The focus of Robert’s team was to integrate some redundant pieces found in the combination of all of the contributions, and how cutting the server-side of DAH’s contribution led to a more elegant solution. He first presented the combined structure, with its redundancy:
He then showed the updated product, which cut out front-end Blockstream code, and connected DAH front-end and IBM (OBC) back-end contributions:
Robert then took the audience through a sample transaction. He showed the transaction being created…
…then completed “with all the money wired and all the balances correct.”
It was noted that the two working groups’ effort is just a POC at this point. Not all functions were implemented, and transactions in a final product must be not only performant but also prunable, as one of blockchain’s primary promises and advantages is that you can audit what’s on it.
After note: team members ended up realizing that this work would have taken months instead of days if they had had to work remotely without face-to-face communication. The prototype is implemented in Java and it’s highly possible that some of modules will be rewritten in Go and included into project’s source code. Chris Ferris did note a high “pain in the [neck]” factor in rewriting to Go.
For engineers and managers who are new to Hyperledger, the backdrop to this group’s work comes from proposed contributions to Hyperledger from IBM, DAH, and Blockstream:
Open Blockchain (OBC) is IBM’s contribution to the Hyperledger project. IBM describes it as “a low-level blockchain fabric that has been designed to meet the requirements of a variety of industry-focused use cases. It extends the learning of the pioneers in this field by addressing additional requirements needed to satisfy those broader industry use cases.”
So-called “smart contracts” (what IBM calls “chain code”), digital assets, record repositories, a decentralized network providing consensus, and cryptographic security are the central elements to the company’s approach.
Digital Asset Holdings (DAH) and Blockstream are the other two key Hyperledger contributors at this early stage. The latter two companies have made contributions similar to that of IBM, and were prominent at the F2F.
DAH describes its candidate contribution as “an enterprise ready blockchain server with a client API. HLP-Candidate has a modular architecture and configurable network architecture particularly designed to meet the needs of our financial services clients. HLP-Candidate implements an append-only log of financial transactions designed to be replicated at multiple organizations without centralized control. The goal of HLP-Candidate is to allow expansion of the data backbone concept to the multi-organization level.“
Blockstream is contributing the Elements Project, which it describes as “a modularized fork of the Bitcoin codebase that adds several major improvements. Elements are composable features that allow a blockchain’s attributes to be customized, including Confidential Transactions, Segregated Witnesses, and Deterministic Pegs. Sidechains are interoperable blockchains implementing atomic, cross-chain transactions using a choice of federated, permissioned, or decentralized consensus models.”
The week’s proceedings concluded with a Hyperledger Technical Steering Committee (TSC) meeting, chaired by Christopher Ferris.
There was a seeming consensus during this meeting that blockchain within the Hyperledger Project will be incubated with a combination of contributions that have been made by IBM, Blockstream, and Digital Asset Holdings (DAH), as outlined by Robert in his presentation.
Mic Bowman of Intel voiced an objection to approving this at the meeting. Chris noted, “this is open source, so (people) can proceed however they want,” but he also stressed that he favored complete agreement before formalizing the path forward for this particular incubation.
F2F participants are encouraging as many companies and people as possible to participate in the Hyperledger Project.
A few key links: