Category

Hyperledger Fabric

Developer Showcase Series: Luc Yriarte & Zinedine Hasni, ChainOrchestra

By | Blog, Hyperledger Composer, Hyperledger Fabric

Our Developer Showcase blog series serves to highlight the work and motivations of developers, users and researchers collaborating on Hyperledger’s incubated projects. Next up is Luc Yriarte and Zinedine Hasni  from ChainOrchestra. Let’s see what they have to say!

What advice would you offer other technologists or developers interested in getting started working on blockchain?

First things first. Blockchain is the buzzword of the day, before falling for the hype I would recommend taking a step back, and pondering what you are trying to achieve. Do you have a specific problem to solve that you feel that blockchain technology would help address, or do you want to provide a service based on the blockchain ?

If it’s the former, you might want to consider what blockchain has to offer regarding your specific need versus run of the mill encryption methods or just data replication. Some questions to ask yourself:

  1. Does your use-case involve several participants who don’t necessarily trust each other ?
  2. Is it something about transactions in the generalized acceptation of the term? For instance where a participant would transfer an asset to another, or provide some document, measure, or any other data that the other should read and acknowledge?
  3. Do you need to keep a record of these transactions ? Do all participants in your use-case want to know the transaction record is sound and unadulterated ?

Answering “no” to any of these questions means you are shooting yourself in the foot and should do something more straightforward. Otherwise… go for it!

Now what if you want to provide a service based on the blockchain ? There again, all hype and buzzword effect put aside, you need to consider if Hyperledger is right for you. The major existing blockchain instances Bitcoin and Ethereum are not going to disappear anytime soon, and it is very easy to deploy a solution on these systems – at least for now.

  1. Does your service need to be backed by a cryptocurrency, or is it more of a burden than anything else?
  2. Do you need to control membership access to your service?
  3. Will you need fine granularity and control on the transaction volume, speed, or size of the network?

If your service can be pegged to some cryptocurrency and you don’t need control over membership or network specifics, the legacy systems will do, otherwise… time to consider building your solution on Hyperledger.

Luc Yriarte and Zinedine Hasni of ChainOrchestra

Give a bit of background on what you’re working on, and let us know what was it that made you want to get into blockchain?

I’m the lead engineer for ChainOrchestra, a start-up focused on blockchain network deployment and operation.

About 18 months ago, late winter of 2016, I had an encounter with some people who wanted to build a secure network for the Internet of Things, based on a blockchain. The advantages of the blockchain in this area are many, most obviously protecting sensor measures from being tampered with, but also triggering automated procedures in a secure way, and so on. First we started reviewing Ethereum, but it didn’t seem able to cope with the potential huge volume of sensor data to manage, and the needs for quick response time. And over all, the whole proof-of-work rewarded by crypto-currency scheme seemed just overkill for what we were trying to achieve.

Then, spring of 2016, we got invited as part of the local tech ecosystem to the IBM Client Center in our hometown of Montpellier, France, for a conference on Hyperledger. A few things ensued:

  1. We decided to give Hyperledger a go for our first prototypes.
  2. We figured that since we’d be deploying and managing blockchain networks for the IoT, we might as well do the same for the other use-cases.
  3. I was hired to do networking and IoT, I ended-up being the blockchain engineer for lack of other options.

Right after that, we got Zinedine Hasni, our devops and systems engineer, on board. As of summer 2016, we started working on our first Hyperledger Fabric v0.6 network and a few use-case demos.

Zinedine: “When we started working on this, we added just PDF support from an IBM workshop. At the time Hyperledger was at version 0.5, and was powering IBM’s Open Blockchain.

While I was digging into this documentation I was surprised to see a lot virtualisation programs (docker inside vagrant)

so we had to figure out what was worth focusing on.

Also a lot of stuff was new to me (blockchain included), I only used docker once before, during my studies at the 42 Paris engineering school.

So we started by analyzing all the yaml files to understand how it works, and learned golang to write our chaincode. We had to figure out why our peers were crashing and fix them (had to update rocksdb in the docker images), which was quite painful.”

…But eventually we got things to work.

The web-based demos, revolving mainly around private data management and IoT device control, were rather well received. Now we are on the final steps of releasing a pre-production Hyperledger Fabric v1.0 network that will allow us to address the different segments we are aiming for. The features added for Fabric v1.0, especially channels and certificate authorities, bring a whole lot of flexibility to the blockchain. But also these features add a new layer of complexity, justifying the role of blockchain network operator that we are taking on in the ecosystem.

As Hyperledger’s incubated projects start maturing and hit 1.0s and beyond, what are the most interesting technologies, apps, or use cases coming out as a result from your perspective?

Hyperledger Fabric has come a long way between the last stable v0.6 and v1.0, and as I just mentioned, a lot of these features are very relevant from a blockchain network operator perspective. I already mentioned the separate channels and the certificate authority servers, but the most salient feature in my opinion, the one that enables the others, is the orderer network. By having an orderer network independent from the business networks you manage, you can truly allow different use-cases to co-exist in the same blockchain. Engaging several different user communities around a single blockchain infrastructure without having to duplicate a history of irrelevant transactions on each and every server becomes possible.

Then there are the other, user-related Hyperledger projects. Hyperledger Composer will most likely become the application framework of choice as app development for Hyperledger becomes more mainstream. On the same token, we are following with the Hyperledger Cello project with a lot of interest. Cello is aimed at blockchain network management, pretty much our core business. We are currently on an early evaluation phase, but we’d love to be able to participate at some point.

Zinedine: “Right now we are taking a bottom up approach to build our network with several organisations, channels, certificates authorities in addition to committer and endorser peers without forgetting orderers, kafka, zookeepers…(and SBFT coming soon).

The main goal for us is to get to the bare bones of all those components and build incrementally from there.”

We are also digging into the other Hyperledger implemenations besides Fabric, i.e. Sawtooth, Iroha and Indy. We consider the ability to have several implementations at hand, with different consensus mechanisms, very important. That’s a bit of a longer term perspective, but the flexibility that those implementation bring will be needed to address a wide range of areas, from the IoT to traditional businesses.

What technology could you not live without?

Running water. Like most people on this earth. And also electricity… and the internet. I’m old enough to have developed software when the internet didn’t exist, and I really wouldn’t want to go back. And when you look at it this way, Hyperledger being more of a protocol than an implementation of a blockchain, is the next layer of the internet, right after IP and the World Wide Web.

Developer Showcase Series: Todd Cooper & James Sloan, NuArca

By | Blog, Hyperledger Fabric

Jumping back to our Developer Showcase blog series, which serves to highlight the work and motivations of developers, users and researchers collaborating on Hyperledger’s incubated projects. Next up is Todd Cooper and James Sloan from NuArca. Let’s see what they have to say!

What advice would you offer other technologists or developers interested in getting started working on blockchain?

Dive right in.  The pace of change is so fast in this space that getting caught up can be a relatively quick process.  I think the term ‘blockchain’ still covers a lot of ground so it makes sense to narrow your focus a bit.  If you are interested in cryptocurrencies then dive into Bitcoin, Ethereum and token sales in that order. Go out and set up a wallet and buy a small amount of bitcoin just for the experience.  Then look it up on a bitcoin explorer to see the history of the transactions.

To start to get familiar with the underlying code the open source community is great in terms of being open to participation and providing resources for learning.  Start by downloading Hyperledger Fabric, writing your own Smart Contract and setting up a network of Docker nodes or develop your own token on Ethereum’s test network in Solidity. If you are looking to familiarize yourself with the innovation in this space, every ICO is publishing a new whitepaper exploring new concepts in blockchain and while the quality may vary, you can get a sense of what is happening.

Finally, there are lots of networks out there on Slack, Twitter, Telegram and Meetups that are occurring all around the world. Start talking to other people to find out what they are doing.

James Sloan, EVP Product Management, NuArca

Todd Cooper, CEO and Co-founder, NuArca

Give a bit of background on what you’re working on, and let us know what was it that made you want to get into blockchain?

NuArca is working with AST (American Stock and Transfer) to deliver a blockchain and machine learning enabled proxy voting solution. AST is one of the largest proxy voting solutions in the market, and the NuArca built system will be used by thousands of corporations and funds to define, manage, and record their proxy vote issuances and annual shareholder voting. This solution will facilitate greater transparency and confidence in data handling, allowing issuers to make more informed decisions and strategy adjustments.  It will also allow AST’s proxy solicitation experts to access advanced predictive analytics to guide complex proxy solicitations.

What project in Hyperledger are you working on? Any new developments to share? Can you sum up your experience with Hyperledger?

Our primary focus at this time is on deploying the Proxy voting solution using Hyperledger Fabric. We will be live by end of September with more than 2 million unique voters representing over 1 trillion shares. This first project stage is focused on parallel record keeping with existing proxy systems. When all goes well, the Fabric based system NuArca built will become the system of record for proxy voting. By Q2 2019, ~40% of all fund proxy voting will be using this system.

To date, Hyperledger has been great, but does require full time tracking of changes in both technology incorporation as well as deployment. It is new enough that this is completely understandable, but anyone getting involved should know that they are working in a fast moving and dynamic system in which time must be invested to understand and leverage.

What do you think is most important for Hyperledger to focus on in the next year?

Scalability and effectively getting the news out on the good enterprise class solutions that are starting to come out using Hyperledger. Much of the tech industry press and financial services press are focused on coins and tokens. Meanwhile, Hyperledger solutions are proving themselves scalable and practical. The Hyperledger community can do a better job of helping to make that knowledge resonate in the market.

From a specific technology gap standpoint, we are particularly looking to have support of Hyperledger on Red Hat rather than Debian as that is the OS of choice for much of the financial services industry. We anticipate needing ongoing improvements to performance and scalability as we grow the solution.  

As Hyperledger’s incubated projects start maturing and hit 1.0s and beyond, what are the most interesting technologies, apps, or use cases coming out as a result from your perspective?

In general, it is the practical use of the technology available today that is most interesting. Hyperledger is not a pie in the sky visage that may come into its own 5 – 10 years down the road. It is here today and can better solve specific types of problems better than yesterday’s technology base.

What’s the one issue or problem you hope blockchain can solve?

Confidence and accuracy in electoral voting.

Where do you hope to see Hyperledger and/or blockchain in 5 years?

Providing a backbone for strong, private blockchains to various industries that are being used to solve various business challenges. An accepted standard similar to Linux.

What is the best piece of developer advice you’ve ever received?

At some point in every project, it is time to shoot the developer and ship the software. Knowing where that point of time is requires decades of experience, and makes all the difference in the world.

What technology could you not live without?

Cloud service models. The convenience and cross platform synchronization is making a truly mobile life possible. One reason blockchain is needed is to ensure the ongoing security, privacy, and resiliency of these models that are increasingly pulling us towards full reliance on external and potentially vulnerable information management models.

Hyperledger Fabric 1.0 Release Process

By | Blog, Hyperledger Fabric

By David Huseby, Hyperledger Security Maven

As an open source project  that is part of the Linux Foundation, Hyperledger takes on a great deal of responsibility to deliver software using a process that is transparent, proactive, and uses the best security practices. This blog post is about the release process for Hyperledger projects reaching the version 1.0 milestone. It is the first in a series focused on the Hyperledger security regime. The next post in this series will focus on everything we do to make good on the promise of open source software being more secure.

When Hyperledger Fabric 1.0 was released on July 11th, 2017 several administrative initiatives were under way. The first of these was an audit of the source code to determine the open source licenses the software was under. Hyperledger uses the Apache 2.0 License for all of its original software and strives to only depend on other code licensed under the same or equally compatible licenses.

The second initiative was a cryptography export audit conducted by the Software Freedom Law Center. Despite a victory in the “crypto wars,” since blockchains require heavily on the latest cryptography, we still have a reporting requirement for all cryptography that we include in our software.

The third initiative was an outside security audit. The Hyperledger team contracted an outside firm named Nettitude to do an independent audit of the Fabric source code. The purpose was to get confirmation of the soundness of the software and to establish a baseline for its security.  The team at Nettitude did a great job going through the source code and attempting penetration tests and running fuzzing processes against Fabric.

Nettitude is delighted to have had the opportunity to work with The Linux Foundation to assess the security of their Hyperledger Fabric blockchain software. This was an exciting and timely piece of work, in a field which Nettitude had already identified as one of our security research priorities.

The end results of the audit showed only a couple medium grade security issues that have since been mitigated. One issue was a general lack of comments in the code that documented the expected behavior of the code. This is an important detail because programmers can look at the code and figure out what it does, but bugs lurk in the difference between what the original programmer intended and what the code actually does. Having thorough comments in the code helps reduce the risk of a security regression occurring during future software maintenance work.  

The other issue was focused on the general security of the Docker container used to execute chain code. The principle of least authority dictates that the Docker container should be restricted and isolated as much as possible. Today, we are finally publishing the Hyperledger Fabric 1.0 security audit report. We have published the technical report and the management report documents.

This process will be applied to all of the other Hyperledger projects as they reach the 1.0 milestone.. The next project to go through it is Hyperledger Sawtooth. The license, crypto, and security audits for Sawtooth have already been completed and readers should expect its 1.0 release in the very near future. Stay tuned for the follow up with the Sawtooth security audit report.If you would like to help us make great software, the Hyperledger community has organized meetups and hackfests all over the world. If you find a security issue please report it to [email protected]. You can find an upcoming event near you by visiting our events page here: https://hyperledger.org/events. We’ll also be talking at RSA this year in April in San Francisco. Director of Ecosystem, Marta Pierkarska and I will present “Blockchain-the new black. What about enterprise security?” We hope to see you there!

Developer Showcase Series: Rohit Aneja, Bristlecone Labs

By | Blog, Hyperledger Composer, Hyperledger Fabric

We’re back to our Developer Showcase blog series, which serves to highlight the work and motivations of developers, users and researchers collaborating on Hyperledger’s incubated projects. Next up is Rohit Aneja from Bristlecone Labs. Let’s see what he has to say!

What advice would you offer other technologists or developers interested in getting started working on blockchain?

One needs to be open minded – It is very new technology and many are interested in it due to its popularity. Many don’t know what it does. Also, there are many platforms claiming to be blockchain frameworks, but real frameworks that offer end to end blockchain needs ranging from membership service to smart contracts are rare, so developer needs to be well versed with knowledge and open minded for selecting a technology and implementing it.

Platform – Permissionless or permissioned – It is very important to identify which type of network is suitable for your needs. Like enterprise level networks where each member has some role and is known can leverage a permissioned network, also known as a private network.

Identify use case and problem solution – Identifying use case and finding a value prop for each participant on network is significant before making a solution. It may work for one party, but since the network needs participation from all members who are required on network, it is important to have use case which serve purpose to everyone.

Give back – contribute to open source – This is very important for every developer, consuming open source platforms or making solutions around it. Open source platforms rely on contributions and an active community. Answering questions, being active on forums is a must if you really want to explore, learn and master a framework.

Rohit Aneja, blockchain engineer, Bristlecone Labs

Give a bit of background on what you’re working on, and let us know what was it that made you want to get into blockchain?

At my organisation, Bristlecone Labs, I work as a blockchain engineer and prosper innovative solutions to serve supply chain specific use-cases. We have developed IOE + Blockchain solution based on Hyperledger Fabric 0.6 while 1.0 was still in its alpha phase. The solution is aimed at logging real time sensors data in its immutable ledgers and executing smart contracts on sensor data.

One of the use cases being smart contracts which execute on every sensor reading and checks if sensor crossed specific threshold, which may mean perishables are exposed to unsuitable conditions and have spoiled due to this. The system can help not only record such breach of contracts in immutable ledgers but can also identify responsible shipper and take corrective actions in real time. There is avoidance of any conflict with system in place and real time sensory data, optimisation and efficiency can be achieved by identifying rough routes and avoiding them, by having shock detecting sensors on shipping trucks transporting delicate or fragile shipments.

As blockchain is key to achieving the above scenarios where distributed participants can agree upon consensus, and benefit on big picture out of this system.

As there is a high interest from various big players as well as small players, plus the nature of blockchain platforms (being distributed, open source) also makes it available to everyone, by everyone, there is no “single owner” of these platforms and this technology but all of us working on blockchain are. This is one important fact which motivated me to jump into blockchain engineering and learn, contribute and innovate passionately for the better of the world.

What project in Hyperledger are you working on? Any new developments to share? Can you sum up your experience with Hyperledger?

Currently, I am developing a business network on Hyperledger Composer, although it’s in early stage of its development, it will be mostly a network of networks that will have suppliers identify an optimised supply path as well as have competitive advantage for being on a network than suppliers playing alone.

Hyperledger has been constantly evolving and has a very active community. Availability of production ready system that has high security and scalability in such early stages of blockchain technology is a bliss for developers. Availability of high quality documents and tutorials makes it easy for developers to jump into complex world of blockchain. As I started my Blockchain journey with Hyperlegder, after making some solutions, I have never felt short changed of features and possibilities that the framework offers. Having an active community with regular meetups and weekly updates keeps us flowing with recent changes and recommended coding guidelines.

What do you think is most important for Hyperledger to focus on in the next year?

I think, tools that make achieving end to end solutions faster and easier will definitely attract lots of audience and developers around the globe. Blockchain can be a complex topic for people from different backgrounds and giving tools for rapid development like Hyperledger Composer is a great value prop for people to adopt a simple and fast solution.

Keeping focus in improving such tools will really drive a large base towards Hyperledger framework. It is incredible what Hyperledger is doing and especially keeping it open source and public driven complements technology like blockchain, which at a core is – “there is no central authority.” Offering a framework which is contributed by the developer community around the globe, there is no way it can go wrong with great mediators and helpful, passionate organisers.

Blockchain is really going to have a big impact on how things function as of now (hence disruptive), and when business realizes true potentials of it, that’s when early adopters are going to really benefit.

 

Developer Showcase Series: Hrishikesh Nashikkar, Broadridge

By | Blog, Hyperledger Fabric

We return to our Developer Showcase blog series, which serves to highlight the work and motivations of developers, users and researchers collaborating on Hyperledger’s incubated projects. Next up is Hrishikesh Nashikkar, blockchain lead at Broadridge. Let’s see what he has to say!

What advice would you offer other technologists or developers interested in getting started working on blockchain?

Blockchain is emerging as a huge collaborative innovation that has powered a paradigm shift from centralized applications to decentralized/distributed applications.

Firstly, the important aspect is a change in the development mindset. As we move applications from centralized to decentralized/distributed world, the development mindset needs to be changed as well.  The solution to a problem may work perfectly in the centralized world, but may not work or even be suitable in the distributed world. For example, the matching logic in the current world business workflows will not be necessary and it can be completely re-designed in the distributed world by multi-party approval process where one party submits a transaction and other party approves/rejects, another example is, the existing data models will no longer be viable as we build granular data privacy requirements and require new data models.

Second, the technology is certainly not fully matured and still has several complex unsolved problems such as scalability, data archival and interoperability which need to be solved for before it can be productionized. Technologists should grab this opportunity to solve the problems and this brings with it immense learning, experience and a chance to innovate.

Third, we are seeing the technology rapidly evolving in both public and private blockchain space. As a developer, one should be open to both public or private blockchain implementations, both have subtle differences but it’s always helpful to be cognizant of pros and cons, design patterns, and application while implementing the use case.

Two years back, I started my journey with Hyperledger Fabric at Broadridge and we’ve always been at the forefront of experimenting with the latest version and testing Fabric for real-world use cases in the financial services. We believe some of the specific privacy, asset modeling requirements in the financial services are very critical to productionize the solution and we as technologists continue to provide the feedback or suggestions to the Fabric community. With this emerging technology, it is very important to share learning and best practices that mutually benefits the development community.

Hrishikesh Nashikkar, Blockchain Lead, Broadridge

Give a bit of background on what you’re working on, and let us know what was it that made you want to get into blockchain?

I am currently working in Broadridge Blockchain Centre of Excellence and leading our efforts on Hyperledger Fabric and post-trade blockchain based projects.

Broadridge is the global fintech leader and plays a crucial role at the center of the financial services industry. We have been driving innovation and adoption of new technologies like Machine learning, Blockchain, Robotic Process Automation to solve real-world problems. Blockchain is one of the key technologies in our innovation strategy. We believe, Blockchain offers a high level of transparency, auditability, data privacy and security and this will certainly bring significant value-add, cost-saving and operational efficiency to our clients.

Given my background of a developer and subsequent exposure to the financial markets as a Business Analyst, Blockchain seemed like the next best choice for me as a career, as I can combine both of my skills to deliver next-gen solutions in the financial markets.

What project in Hyperledger are you working on? Any new developments to share? Can you sum up your experience with Hyperledger?

We at Broadridge have been extensively using Hyperledger Fabric for our internal POCs/Pilots since its initial versions.

Recently, Broadridge announced the successful completion of a pilot with Natixis and Societe Generale which leverages blockchain technology to enhance the operational efficiency, reduce risks and auditability of bilateral repurchase, or repo, agreements. The Bilateral Repo solution is for Broker-dealers and Buy-side firms that automate end-to-end processes, streamlines the repo agreement and confirmation processes, offers a faster and more accurate collateral substitution, valuation process and other mid-life events, while eliminating time-consuming manual interventions, and reduces counterparty risk while increasing auditability.

We have utilized Hyperledger Fabric v1.0 to facilitate private/permissioned network between Broadridge and its partners in the pilot. Overall, my experience is – Fabric has performed reasonably well with our pilot requirements during the testing, despite showing few pain points of an emerging technology. The development community has been very supportive and quickly helped us on the critical issues.

What do you think is most important for Hyperledger to focus on in the next year?

I think blockchain is rapidly evolving through enterprise, open-sourced or consortiums based developments. Many blockchain frameworks are available in different flavors, sizes and complexity levels. One of the key requirements is interoperability between different platforms. Various blockchain based application development projects or initiatives are being developed in silos. We see mixed opinions on the different blockchain frameworks and it is difficult to pinpoint the winner at the moment. It’s quite apparent, we’ll witness different blockchain frameworks being used in the industry.

This leads to few important questions. How will different blockchain frameworks co-exist and integrate with different standards of networking, data privacy and security, identity or crypto specifications, assets, smart contracts? Another critical question is – how do we manage interoperability between different legacy systems and new blockchain platforms with complex business logic and data storage? These questions become increasingly important when we set our path to productionize the use case and network with multiple participants with their own choice of blockchain technology.

Obviously, some of these questions are being brainstormed or addressed to a certain extent. But, secure, robust operational designs and common standards need to be incorporated to build the strong ecosystem for the future.

I believe, Hyperledger is playing an important role as a technology incubator in the industry and has multiple cross-industry blockchain projects under its umbrella. Hyperledger is the best platform to start addressing some of these problems and build common standards across different blockchain frameworks.

(1.18.18) CoinDesk: Enterprise Blockchain Is Ready to Go Live in 2018

By | Hyperledger Fabric, News

Talk to enterprise blockchain enthusiasts and they will tell you about the potential use cases in their industries and the proofs-of-concept they have run to prove blockchain value in the enterprise.

Ask them about production deployments… and they demur, pointing out implementation challenges and production-readiness gaps.

Will this change in 2018 and will we see a significant shift from experimentation to production deployments of enterprise blockchains?

More here. 

 

Making Legal Contracts Smart

By | Blog, Hyperledger Composer, Hyperledger Fabric

Guest post: Dan Selman and Houman Shadab, Clause.io

The potential to automate a wide variety of business transactions in a way that is secure, transparent, and flexible will likely be one of the most transformational benefits of blockchain. However, software applications that use distributed ledger technology to automate business processes are often confusingly referred to as “smart contracts” despite not being tied to any legally binding obligation or, worse still, not being enforceable in court. In contrast are smart legal contracts: legally binding agreements whose underlying logic is transformed through computation to enable automation, software connectivity, and dynamic business arrangements.  

Automated transactions must be executed according to the terms of a legally binding agreement to provide companies with certainty and the ability to be compensated if something goes wrong. Smart contracts that are executed apart from a legal agreement cannot be fully integrated into an enterprise digital transformation strategy. Fundamental transformation requires consolidating systems end-to-end and involving a company’s legal agreements. And even if legally enforceable, smart contracts that operate without incorporating standards will likely be an isolated phenomenon without the full benefit of marketwide adoption. Worse still, smart contracts that are inaccessible to legal and business professionals are likely to remain more of a curiosity than transformational.

The Accord Project was established, in part, to develop a community driven protocol for smart legal contracting. It is built on the fundamental notion that contracting is, and should be, blockchain agnostic. Users are therefore able to use Hyperledger Fabric, Ethereum, and others as warranted. The Accord Project is an Associate Member of Hyperledger and is a consortium of attorneys, technologists, and organizations collaborating to set techno-legal standards and develop open source technology. But it’s not just talk. The Accord Project has already operationalized its vision through the open source software called “Cicero.”

Cicero enables lawyers and business professionals to turn traditional, legally binding agreements into smart legal contracts. It accomplishes this through an easy-to-use system for enabling legal contracts to be executed in response to external data and be connected to a wide variety of software systems and platforms, including blockchain.

The “virtuous triangle” of functionality implemented by Cicero templates.

The core of Cicero is a smart contract templating system made up of three components. The first is a template’s grammar, which consists of natural language contract text that identifies data-oriented variables such as price, date, etc. Second is the template’s data model that provides a framework for categorizing the variables and the components of the business context that operationalize smart contracts. Once the elements of a legal contract and the business context are categorized with a data-oriented modeling language, the contract can then be executed using the template’s operational logic — the third component of Cicero’s smart contract templating system.

We chose the Hyperledger Composer modeling language because it is a great fit for smart legal contracts and is able to be put to use immediately. Composer is general enough to model any type of contract and make them executable in a variety of environments — a core requirement the Accord Project’s protocol agnosticism.

Hyperledger Composer’s primary elements correspond to the basics of smart legal contracting. Composer’s participant element corresponds to the contracting parties and its asset element corresponds to the goods, services, and other subject matter of a contract. Composer’s transactions element causes assets to be exchanged and, importantly for smart legal contracts, are the means by which external data about assets trigger business logic. Examples of transactions include sending payment when data indicates assets have been delivered, or sending notice of breach when data indicates a temperature condition is violated. Other elements of Composer map well to contracting, including those that capture types of assets (e.g., red, medium), the state of contract (e.g., past due, in-process), and basic terms such as party addresses.

The Accord Project has created an open source repository for Cicero templates and is inviting all those interested in creating a smart legal contract ecosystem to contribute. The full documentation is located here. For more information about joining the Accord Project and the discussion on slack, please visit our website: www.accordproject.org.

Perishable Goods Example

To make things concrete, let’s take a look at an example Hyperledger Composer business network (executing on Hyperledger Fabric v1) which invokes Cicero running on an out-process standalone web server. Hyperledger Fabric stores the state of assets on the blockchain, while Cicero executes contract logic off-chain.

Installation instructions for the demo are here: https://github.com/accordproject/cicero-perishable-network

Hyperledger Composer is used to store the state of shipments, importers, growers, shippers on the blockchain, while the contract logic is invoked out-of-process using the Cicero Server.

High-level architecture for the cicero-perishable-network demo.

Note: it is also possible to embed Cicero execution inside Hyperledger Fabric v1.1-preview, thanks to the support for executing Node.js chaincode.

The Hyperledger Composer Playground can be used to visualize and interact with the data stored on the blockchain.

Shipments being tracked on the blockchain.

The identities of the participants in the permissioned blockchain are managed by Hyperledger Fabric, and their metadata is managed by Hyperledger Composer and is visible in the Hyperledger Composer Playground.

Permissioned access enforced by Hyperledger Fabric, and business network Participant state stored on the blockchain.

Hyperledger Composer playground can be used to interactively test the logic for the business network, submitting transactions that update the state of assets stored on the blockchain, based on the results of executing a Cicero contract.

Simulating submitting IoT transactions using Hyperledger Composer

Behind the Scenes

Both Hyperledger Composer and Cicero are fundamentally strongly-typed and model driven, so we start by defining the data model, and because both Hyperledger Composer and Cicero use the same modelling language, there is no need for complex model mapping when calling from one to the other.

The Composer data model, showing the Shipment asset that is being stored on the blockchain, as well as some of the transactions that update the state of the shipment.

The Hyperledger Composer business network includes a transaction processor function (chaincode) that invokes the Cicero server.

A Composer transaction processor function for the ShipmentReceived transaction. On Line 32 you can see the call to the Cicero server, passing in data from the incoming transaction. After calling Cicero the function can update the state of assets on the blockchain.

You can then create a new (or use an existing) Cicero template. Here we are using the perishable-goods template from the Cicero Template Library at https://github.com/accordproject/cicero-template-library.

The grammar for a Cicero template. The grammar is the natural language text for the clause with embedded variables.

A Cicero template is strongly-typed and the type-information is captured in the template’s Template Model.

The Template Model for the perishable-goods Cicero template. The Template Model captures the names and types for variables referenced in the template grammar. Note that it can reference or include complex types, such as Shipment or Duration.

Cicero combines the Template Grammar and Template Model and uses them to generate a parser for the template. The parser takes input source text and converts it to an instance of the Template Model.

Finally Cicero templates include the executable business logic which implements a function that receives an incoming transaction and the clause data, and returns a response transaction.

Some of the business logic for the perishable-goods template, written in JavaScript. Note that the Accord Project is working on a Domain Specific Language for capturing contract logic.

For more information, and the full source code, please refer to:

 

(1.9.18) HIT Infrastructure: First Healthcare Blockchain Claims Management Solution Released

By | Hyperledger Fabric, News

Change Healthcare announced the general availability of its healthcare blockchain solution for claims management to deliver transparent claim lifecycles.

The new healthcare blockchain release aims to introduce blockchain into the healthcare industry and increase trust by enabling greater auditability and traceability. This will also create a more secure and manageable revenue cycle management process.

More here.

(1.8.18) Health IT News: Change Healthcare’s enterprise blockchain tech now available for hospitals, practices, payers

By | Hyperledger Fabric, News

Change Healthcare has launched what it’s calling the first enterprise-scale blockchainnetwork in healthcare. By using the distributed ledger technology, hospitals, physician practices and payers can longitudinally track the real-time status of claims submission and remittance using its Intelligent Healthcare Network.

Change uses Hyperledger Fabric 1.0 – an open-source blockchain framework hosted by The Linux Foundation – as the foundation for its blockchain app design and development in the network. The emerging technology enables improved transparency and efficiency, officials say, allowing for better auditability, traceability and trust.

More here.

(1.3.18) Fortune: Are You Eating Sustainable Fish? Blockchain May Provide the Answer

By | Hyperledger Fabric, News

Eco-conscious diners can rely on restaurants to tell them their fish comes from a sustainable source, but it can be hard to know for sure.

That’s why a new certification system, launched by blockchain company Viant and the World Wild Fund for Nature, is intriguing: It provides a step-by-step way to verify a fish’s journey from the ocean to the market to the dinner plate.

More here.