Image

Byzantine Flu


Reference application deployed to the cloud that tracks influenza across the country using a Hyperledger Fabric Blockchain network.

Reference Example Overview

Each year, Influenza begins in the Southern Hemisphere and migrates around the world mutating along the way. The CDC makes educated guesses as to which strain will be the most virulent for which to create vaccines. When the flu season makes its way to the United States, the CDC and state-level agencies track its progress by medical practitioner reports and monitoring search engines for folks searching for the flu.

Imagine that a blockchain exists and the CDC, State Health and Human Services, medical practitioners, and testing labs are all participating as Peer Nodes in that blockchain.

Image

Application

Reference application is a Hyperledger Fabric blockchain network providing accurate, real-time tracking of flu epidemics across the United States.

Highlights

Implements a HyperLedger blockchain network with chaincode that manages a ledger of Influenza tests.

The chaincode implements functions to create and retrieve Influenza test results.

A web application (deployed to the cloud) integrates with blockchain to provide real-time, secure information.

Blockchain Actors

The web application interacts with the Blockchain Influenza Lab results from different perspectives, emulating real word Actors. The benefit of the permissioned blockchain approach to medical records is that various authorized personnel can interact the data in real time.

Actors

Center for Disease Control

Medical Practitioners

Medical Labs

State Health Services


Image
Image

Architecture

The reference application is deployed to the cloud and interfaces with a web application for easy user input.

Highlights

A Certificate Authority ("CA Server") ensures all actors have the correct authentication to access the data.

Users from the CDC and Lab can interact directly with the blockchain through React/Node/js web application.

See It Live

Screenshots


Image
Image

Participants

Each participant starts up a Peer Node. Hyperledger provides a Docker-based container to start up a Peer.

The Peer requires cryptographic keys, certificates, and for Hyperledger to provide a utility to generate these.

A Certificate Authority is also required to authorize these certificates in the network. This is provided by the framework.

Chaincode

Once started, a Channel can be created, which is a ledger. Then the Smart Contract (“chaincode”) can be installed and instantiated on selected Peers that are designated as Endorsing Peers.

For our example, the Influenza chaincode function is defined in a Labs.go file. A Fabric stub interface provides an API to put and get data from the blockchain global data store.

Integrating With a Web Application

With the Influenza blockchain being used by all parties, lab results will be distributed throughout the network applications. Blockchain users can interact and process this real-time data by creating client applications that access a Peer Node.

Example: we use React for the user interface with Node.js as an API layer.