You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Let's take a look at a very specific use case: a permissioned Hyperledger Fabric channel where a utility shares the emissions of a customer's electricity bill with its customers.  The same pattern could be repeated for other data services (travel, commute, shipping, etc.)

Set Up the Channel

The first step is to set up the channel, with the following organizations:

  • Utility – utility which generates electricity and provides CO2 emissions data 
  • Customers – customers of the utility who used electricity and need to get their CO2 emissions data
  • Channel Operator – a third party which operates the channel, including maintaining the Orderer and Anchor Peer and allowing new organizations into the channel.  In real life this Channel Operator would probably operate on behalf of the utilities and the customers who use it, under the supervision of a governance entity. 
  • Peer Node Operator – third parties whose only role is to operate a Peer Node.  In real life these may be independent "validators" who earn a small fee for maintaining the data on the channel.  

and roles:  

  • 1 Orderer run by Channel Operator
  • 1 Anchor Peer run by Channel Operator 
  • 3 Peers run by 1 Peer Node Operator, 1 Utility, and 1 Channel Operator
  • MSP for Utility and each Customer.  The utility is given permission to write data to the channel.  The customers are given permission to read data from the channel.  Their MSP's are able to register certificates for their users.

Data Stored on Channel

Each time CO2 emissions data is stored on the channel, it will have the following data:

  • Data Range
  • Utility identifier
  • kWH of electricity used
  • CO2 emissions in metric tons equivalent
  • Link to full utility bill data on IPFS, encrypted (Question – how should this be encrypted?  With customer's public key so that it can only be decrypted by customer?)
  • HASH of utility bill data for verification

Store Emissions Data

A micro-service run by the utility or a service provider for the utility will:

  • Get the utility bill for each customer
  • Convert the kWH of electricity used to CO2 emissions based on the Emissions & Generation Resource Integrated Database (eGRID) database.  This database should be stored in an immutable, publicly available database such as OrbitDB
  • Present its security key to the channel
  • Write the CO2 emissions for each customer to the channel as private data for each customer

Get Emissions Data

A micro-service run by the customer will:

  • Present its seurity key to the channel
  • Get its CO2 emissions from the channel's private data



  • No labels