Bringing in reusability

Developing blockchains for supply chain applications isn’t always simple, especially when building everything from scratch. There isn’t a lot of reusable components and frameworks that exist in the Hyperledger ecosystem, as well as other platforms that enable developers to quickly create supply chain–centric solutions.

This is the particular problem, which Grid, a project that’s currently in the incubation stage of the Hyperledger project, is trying to solve. Grid is an ecosystem of technologies, frameworks, and libraries that allow developers to choose which components are best for their blockchain applications.

During a Hyperledger special interest group (SIG) conference call on June 6, 2019, David Cecchi of Cargill provided an overview of the project, bringing up the issue of reusability of blockchain components and frameworks and the lack thereof.

“We learned of this problem by implementing a bunch of different solutions across various industries. Our engineers would look for reusable libraries, frameworks, domain models, or standards, and they didn’t exist. What we have were a lot of very capable, flexible platforms that are very effective, but are not equipped with prebuilt components or other things that could be reused.”

—David Cecchi, Cargill

Cargill is an agricultural conglomerate based in the United States, working on the project together with other vendors.

What is Grid?

Grid is a platform for building supply chain solutions based on distributed ledger components. It was initially proposed to the Hyperledger project back in December 2018. Hyperledger later accepted and placed Grid into incubation in January 2019. Since then, the major contributors of the project have been Cargill, Intel, and Bitwise IO. On April 22, 2019, a retail giant Target announced plans to support the development of Grid, as well.

Based on the proposal, Grid will offer the following features:

It includes higher-level abstractions that are fundamentally not provided by lower-level blockchains, such as supply chain–specific data types, data models, and standards.

It provides solutions to solve problems related to multi-party interactions, such as security and identity.

It assembles various components across the Hyperledger ecosystem to make an actual functioning stack.

During the SIG presentation, David emphasized a couple of important distinctions about Grid:

Grid is not a blockchain, but it uses the technology.

Grid is not an application, but developers can use Grid frameworks to build software.

“What Grid does is empowering developers to get more choices as they build an application, to select components from Grid to use in supply chain–centric applications, to allow for commonality between applications, and to allow for rapid deployment.”

—David Cecchi, Cargill

How it works

To better understand how Grid will work, David illustrated its stack and highlighted the middle layer which is Grid itself. According to him, the domain models define the “what” aspect of Grid, and these boil down to standards that are used most often. Currently, Grid has libraries for the GS1, Open Data Initiative, and BITA standards.

The smart contract component defines the “how” aspect of Grid. This is a prebuilt business logic coded in smart contracts, which represent various business transactions. The smart contracts are handled by Sabre, a smart contract engine with WebAssembly. Current early priorities for smart contracts include product catalogs, product transformation, and batch behavior.

Additionally, Grid will have a universal client for managing the platform. It will also have smart permissioning through Pike, a smart contract that handles organization and identity permissions.

Finally, Grid will have sample applications, which are not production-ready, but will showcase how Grid can assemble components to make a working application and can provide a good starting point.

“Grid is not the blockchain platform, it is not the smart contract engine, it is not an identity framework, but it will use these enabling technologies to help to drive the applications.”

—David Cecchi, Cargill

During the Hyperledger Global Forum last December, Dan Middleton of Intel thanked Cargill for Grid. According to Dan, much of the initial work originated from Cargill and their experience with Hyperledger Sawtooth. After learning to use Sawtooth and developing applications for traceability, Cargill decided to give back to the community and share their code.

“I’m thankful to Cargill that they did the good thing to go open-source. After they worked through that problem, they wanted to contribute that code back. They’ve gone through this effort of coming up with primitives that are useful to build higher-level data structures that are useful in supply chain implementations.”

—Dan Middleton, Intel

A roadmap for Grid

As previously mentioned, Grid is still in the incubation stage of the Hyperledger project. Likewise, the initial Track and Trace sample application is from Sawtooth. Should Fabric and Iroha adopt Sabre, sample applications for them may be added.

“Part of what Grid does is trying to back as much code as possible behind the Sabre WebAssembly interface. As other Hyperledger projects decide to adopt that interface, this could potentially be open to them.” —Dan Middleton, Intel

Primitives, governance, and a product catalog have been established, noted David, but there’s still a lot of work to be done in the following months. Apart from what’s listed in the roadmap below, the Grid community is also looking at Indy to integrate an identity framework for supply chain usage. There’s also interest in supporting Hyperledger Transact, which was recently announced on June 27, 2019.

The Hyperledger Grid’s roadmap for 2019 (Image credit)

Reference implementations for asset exchange and asset tracking will be provided later on. Nuanced industry models, such as IDMP, may also be added.

Grid’s development can be tracked in its GitHub repo. Anyone looking to contribute can join the Hyperledger mailing list, as well as the chat channel.

Want details? Watch the videos!

David Cecchi’s presentation and his slides can be found in Grid’s wiki. In another video, Dan Middleton reveals Grid during the Hyperledger Global Forum last December.

Further reading

About the experts

David Cecchi is Senior Director of Enteprise Data at Cargill. He has over 20 years of strategic leadership and hands-on execution experience in the data, API, integration, and analytics space. David is a value-driven leader who builds and maintains high-performing teams that also have fun. He has applied and meaningful experience in business, enterprise digital, data strategy, DevOps engineering, cloud, blockchain, as well as enterprise system design and deployment.

Dan Middleton is Head of Technology for Intel’s Blockchain and Distributed Ledger program. He joined Intel in 2000 to work on emerging web and distributed systems technologies. His early accomplishments include optimizations of matching engines for major stock exchanges and multi-tier system designs at a variety of financial institutions. Working with industry consortia in 2007, Dan led Intel’s contributions on a privacy preserving network leveraging proof of work and anonymous credentials. Since 2009, he has incubated new business ventures into Intel’s New Technology Group.

