SlideShare a Scribd company logo
1 of 27
Download to read offline
© Hitachi, Ltd. 2022. All rights reserved.
● Demo:
Infrastructure for Managing, Sharing, and Utilizing Sensitive Data using
Hyperledger Fabric Private Chaincode Running on Microsoft Azure
Hitachi, Ltd. / Research and Development Group
Monday, September 12, 2022. • 14:40 - 14:55
Koshi IKEGAWA
#HyperledgerForum @koshi_ikegawa
© Hitachi, Ltd. 2022. All rights reserved.
1. Background and Introduction
2. Motivation
3. Demonstration
4. Summary
Contents
1
2
© Hitachi, Ltd. 2022. All rights reserved.
1. Background and Introduction
3
© Hitachi, Ltd. 2022. All rights reserved.
Data Free Flow with Trust (DFFT) is a top priority for the new economy,
according to the World Economic Forum 2019
❚ Blockchain is expected to be used as a means to realize DFFT
u A feature of blockchains is that transactions and data contents are shared and written to a
ledger by all participating organizations.
❚ There are open data that can be shared by all organizations, and there are sensitive
data that needs to be controlled to whom it is shared.
u Such as medical data, personal information, etc...
❚ When handling sensitive data, privacy protection is required by laws
u Such as “the Act on the Protection of Personal Information (Japan)”, “GDPR (EU)”, and etc...
Background | Data Free Flow with Trust (DFFT)
4
© Hitachi, Ltd. 2022. All rights reserved.
Fabric Private Chaincode (FPC) enables the execution of chaincodes
using Trusted Execution Environment (TEE) for Fabric
❚ protect the privacy of chaincode data and computation from potentially untrusted
peers.
❚ allows to write chaincode applications where the data is encrypted on the ledger and
can only be accessed in clear by authorized parties.
Fabric Private Chaincode (FPC)
BC
Network
Org 2 (Trusted)
Peer TEE
Encrypted
Ledger
Encrypted
State DB
Private
Chaincode Org 3 (Untrusted)
Peer
Client
TEE
Encrypted
Ledger
Encrypted
State DB
Private
Chaincode
Org 1 (Trusted)
Peer TEE
Encrypted
Ledger
Encrypted
State DB
Private
Chaincode
Client Client
Decrypt and return data if requested
by a trusted organization
Return only error if requested by
an untrusted organization.
5
© Hitachi, Ltd. 2022. All rights reserved.
TEE is a security feature that prevents external attacks by executing
programs in an area called an enclave that is isolated from the OS
❚ Technology to create Enclave in memory as a function of CPU
u Intel Software Guard Extensions (SGX)
u ARM TrustZone, etc....
❚ Technology that makes the VMs itself an Enclave.
u Intel Trusted Domain Extensions (TDX)
u AMD Secure Encrypted Virtualization (SEV)
u AWS NitroEnclave, etc...
Fabric Private Chaincode (FPC) implementation uses Intel SGX
Trusted Execution Environment (TEE)
6
© Hitachi, Ltd. 2022. All rights reserved.
Intel SGX [1] is Hardware security function enhancements in Intel CPUs
❚ Intel SGX
u is an Intel CPU feature that creates an encrypted area called an Enclave in RAM
u loads programs and data into Enclave, allowing programs to be executed while protecting
sensitive data
Intel SGX
RAM
Intel CPU
Enclave
OS
Create
Enclave
SGX
Calculation
Sensitive
Data
This figure is based on [2].
1. Intel® Software Guard Extensions (Intel® SGX). URL: https://www.intel.co.jp/content/www/jp/ja/architecture-and-technology/software-guard-extensions.html
2. Intel SGX入門 - SGX基礎知識編 (in Japanese). URL: https://qiita.com/Cliffford/items/2f155f40a1c3eec288cf
7
© Hitachi, Ltd. 2022. All rights reserved.
By using virtual machines created using “infrastructure as a service
(IaaS)”, there is no need to prepare or manage your own hardware.
❚ Only a few IaaS offering VMs with Intel SGX that can use FPC
u Microsoft Azure can create virtual machines (DCsv2 series) with Intel SGX
Why use Microsoft Azure for running FPC?
Azure AWS GCP IBM Cloud
CPU Level TEE Intel SGX - -
Intel SGX
(only metal server)
VM Level TEE - NitroEnclave Confidential VM -
8
© Hitachi, Ltd. 2022. All rights reserved.
2. Motivation
9
© Hitachi, Ltd. 2022. All rights reserved.
Infrastructure for managing, sharing, and utilizing genome data in multiple orgs
❚ Raw genome data must not be passed on to other organizations because the data is sensitive data
❚ Analyze the data on the processor of the data owner org and pass only the results to other orgs
Our use case
Patients
Fabric BC
Network
Org 1
Peer
User (Doctor)
Data
Analyzer
Chaincode
Client
State DB
Ledger
Genome
Data
Storage
Org N
Org 2
Peer
User (Doctor)
Ledger
Data
Analyzer
Chaincode
Client
State DB Genome
Data
Storage
store load
write result
request
result
request
result
State DB
Chaincode
Ledger
10
© Hitachi, Ltd. 2022. All rights reserved.
The unrelated organization (Org N) can access the details of the
transactions of Org 1 and Org 2.
Problem
Patients
Fabric BC
Network
Org 1
Peer
User (Doctor)
Data
Analyzer
Chaincode
Client
State DB
Ledger
Genome
Data
Storage
Org N (Unrelated)
Org 2
Peer
User (Doctor)
Ledger
Data
Analyzer
Chaincode
Client
State DB Genome
Data
Storage
store load
write result
request
result
request
result
State DB
Chaincode
Ledger
request
result
11
© Hitachi, Ltd. 2022. All rights reserved.
Keep transactions and data exchange secret from unrelated orgs using
Fabric Private Chaincode
Motivation
Patients
Fabric BC
Network
Org 2
Peer
User (Doctor)
Client
State DB
Ledger
Org 1
Peer
User (Doctor)
Client
State DB
Ledger
FPC
Private
Chaincode
FPC
Private
Chaincode
Org N (Unrelated)
State DB
Private
Chaincode
Ledger
Data
Analyzer
Genome
Data
Storage
Data
Analyzer
Genome
Data
Storage
12
© Hitachi, Ltd. 2022. All rights reserved.
3. Demonstration
13
© Hitachi, Ltd. 2022. All rights reserved.
❚ Explain our demo system architecture
u Building a demo system for data management, sharing, and utilization involving two
organizations on Azure VM
❚ Explain our chaincode installed in the system and client program in the order
of the following scenarios
u 1. Store data in data storage and metadate in ledger
u 2. Search genome data
u 3. Request for permission to use genome data
u 4. Approve the request
u 5. Request for analysis of genome data
u 6. Execute the analysis of data and write the result
Overview of demonstration
14
© Hitachi, Ltd. 2022. All rights reserved.
Microsoft Azure DC2s Virtual Machine
❚ Location: East US (only East US location can create DC2s series VMs)
❚ Size: Standard DC2s v2 (2 vcpus, 8 GiB memory)
❚ OS: Ubuntu Server 20.04 LTS - Gen2
❚ Disk: 128GiB Fabric BC
Network
Org 1
FPC
Demo system architecture
User (Doctor)
Chaincode
container
Peer
container
Data
Analyzer
Data
Storage
Orderer
Orderer
container
FPC logic
container
(e.g., ercc)
Client
container
Chaincode
Client
State DB
Ledger
Org 2
FPC
User (Doctor)
Chaincode
container
Peer
container
Data
Analyzer
Data
Storage
FPC logic
container
(e.g., ercc)
Client
container
Chaincode
Client
State DB
Ledger
15
© Hitachi, Ltd. 2022. All rights reserved.
Fabric BC
Network
Simplified overview of the demo system
Org 2
Peer
User (Doctor)
Data
Analyzer
Private
Chaincode
Client
State DB
Ledger
Data
Storage
Org 1
Peer
User (Doctor)
Data
Analyzer
Private
Chaincode
Client
State DB
Ledger
Data
Storage
State DB: for genome meta data catalog
Key Owner Patient Consent Meta Data
State DB: for data access permission management
Key Request Permission
State DB: for task management
Key Requester Task Result
Private Chaincode:
• set/get genome meta data
• request/approve data access permission
• request/approve task execution
Client Program:
• Invoke/Query chaincode functions
• Store genome data to storage
• Order analysis of genome data
16
© Hitachi, Ltd. 2022. All rights reserved.
Demo | 1. Store data in data storage and metadate in ledger
Org 2
Peer
User (Doctor)
Data
Analyzer
Private
Chaincode
Client
State DB
Ledger
Data
Storage
Org 1
Peer
User (Doctor)
Data
Analyzer
Private
Chaincode
Client
State DB
Ledger
Data
Storage
①Store raw genome data
②Invoke: set_data()
Client:
① Store raw genome data to data storage
② Invoke set_data function of chaincode
• Write genome meta data
Chaincode: set_data()
• Get owner information (MSPID)
• Write MSPID, patient consent, and meta data into ledger
State DB: for genome meta data catalog
Key Owner Patient Consent Other Meta Data
001 Org1MSP Agree Hash Value, Other Info
State DB: for data access permission management
Key Request Permission
State DB: for task management
Key Requester Task Result
17
© Hitachi, Ltd. 2022. All rights reserved.
Demo | 2. Search genome data
Org 2
Peer
User (Doctor)
Data
Analyzer
Private
Chaincode
Client
State DB
Ledger
Data
Storage
Org 1
Peer
User (Doctor)
Data
Analyzer
Private
Chaincode
Client
State DB
Ledger
Data
Storage
①Query: get_data
Client:
① Query get_data function of chaincode
• Search for the data you want to utilize
Chaincode: get_data()
• Read genome metadata
• Search for the data
• Returns a list of metadata to which the patients agrees
State DB: for genome meta data catalog
Key Owner Patient Consent Meta Data
001 Org1MSP Agree Hash Value, Other Info
State DB: for data access permission management
Key Request Permission
State DB: for task management
Key Requester Task Result
18
© Hitachi, Ltd. 2022. All rights reserved.
Demo | 3. Request for permission to use genome data
Org 2
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
Org 1
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
①Invoke: request_permission
Client:
① Invoke request_permission function of chaincode
Chaincode: request_permission()
• Get Requester information (MSPID=Org2MSP)
• Write Requester MSPID into ledger
State DB: for genome meta data catalog
Key Owner Patient Consent Meta Data
001 Org1MSP Agree Hash Value, Other Info
State DB: for data access permission management
Key Request Permission
001 Org2MSP
State DB: for task management
Key Requester Task Result
Private
Chaincode
Private
Chaincode
19
© Hitachi, Ltd. 2022. All rights reserved.
Demo | 4. Approve the request
Org 2
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
Org 1
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
①Invoke: Approve_permission
Client:
① Invoke approve_permission function of chaincode
Chaincode: approve_permission()
• Get approver information (MSPID=Org1MSP)
• Check that the approver MSPID and the data owner
MSPID are equal
• Approve request
• Write Permission user MSPID into ledger
• Remove Requester user MSPID
State DB: for genome meta data catalog
Key Owner Patient Consent Meta Data
001 Org1MSP Agree Hash Value, Other Info
State DB: for data access permission management
Key Request Permission
001 (Removed) Org2MSP
State DB: for task management
Key Requester Task Result
Private
Chaincode
Private
Chaincode
20
© Hitachi, Ltd. 2022. All rights reserved.
Demo | 5. Request for analysis of genome data
Org 2
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
Org 1
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
①Invoke: request_task
Client:
① Invoke request_task function of chaincode
Chaincode: request_task()
• Get Requester information (MSPID=Org2MSP)
• Write Requester MSPID and Analysis conditions into
ledger
State DB: for genome meta data catalog
Key Owner Patient Consent Meta Data
001 Org1MSP Agree Hash Value, Other Info
State DB: for data access permission management
Key Request Permission
001 (Empty) Org2MSP
State DB: for task management
Key Requester Task Result
001 Org2MSP Analysis conditions
Private
Chaincode
Private
Chaincode
21
© Hitachi, Ltd. 2022. All rights reserved.
Demo | 6. Execute the analysis of data and write the result
Org 2
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
Org 1
Peer
User (Doctor)
Data
Analyzer
Client
State DB
Ledger
Data
Storage
④Invoke: result
③Analyze task
Client:
① Query the request and order execution.
④ Invoke write_result function of chaincode
Chaincode: write_result()
• Get Requester information (MSPID=Org1MSP)
• Check the data owner MSPID and above MSPID are equal
• Write Analysis Result into ledger
②Load genome data
①Order Execution
State DB: for genome meta data catalog
Key Owner Patient Consent Meta Data
001 Org1MSP Agree Hash Value, Other Info
State DB: for data access permission management
Key Request Permission
001 (Empty) Org2MSP
State DB: for task management
Key Requester Task Result
001 Org2MSP Analysis conditions Analysis Result
Data Analyzer:
② Load genome data
③ Analyze task
Private
Chaincode
Private
Chaincode
22
© Hitachi, Ltd. 2022. All rights reserved.
4. Summary
23
© Hitachi, Ltd. 2022. All rights reserved.
❚ Background and Introduction
u explained some background on the market needs
u explained introduction that includes what we are doing with FPC
❚ Motivation
u explained the motivation for this demonstration
❚ Demonstration
u explained our demo system architecture
u explained our chaincode and client installed in the system
Summary
24
© Hitachi, Ltd. 2022. All rights reserved.
Special Thanks to...
❚ All Hyperledger Fabric Private Chaincode community members!!!
u Many thanks to the following people for their advice!!
l Marcus Brandenburger @mbrandenburger
l Bruno Vavala @bvavala
l @munapower
Acknowledgement
25
© Hitachi, Ltd. 2022. All rights reserved.
❚ Hyperledger, Hyperledger Fabric, and Hyperledger logs and any related marks are
trademarks of the Linux Foundation or Hyperledger Foundation
❚ Intel, Intel SGX and Intel logs and any related marks are trademarks of the Intel
Corp.
❚ Other brand names and product names used in this material are trademarks,
registered trademarks, or trade names of their respective holders.
Trademarks
Demo: Infrastructure for Managing, Sharing, and Utilizing Sensitive Data using Hyperledger Fabric Private Chaincode Running on Microsoft Azure

More Related Content

Similar to Demo: Infrastructure for Managing, Sharing, and Utilizing Sensitive Data using Hyperledger Fabric Private Chaincode Running on Microsoft Azure

GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...
GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...
GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...GoGrid Cloud Hosting
 
Intels presentation at blue line industrial computer seminar
Intels presentation at blue line industrial computer seminarIntels presentation at blue line industrial computer seminar
Intels presentation at blue line industrial computer seminarBlue Line
 
What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?Michelle Holley
 
Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...
Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...
Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...Koshi Ikegawa
 
Re-architecting the Datacenter to Deliver Better Experiences (Intel)
Re-architecting the Datacenter to Deliver Better Experiences (Intel)Re-architecting the Datacenter to Deliver Better Experiences (Intel)
Re-architecting the Datacenter to Deliver Better Experiences (Intel)COMPUTEX TAIPEI
 
Effective IoT System on Openstack
Effective IoT System on OpenstackEffective IoT System on Openstack
Effective IoT System on OpenstackTakashi Kajinami
 
Re-Imagining the Data Center with Intel
Re-Imagining the Data Center with IntelRe-Imagining the Data Center with Intel
Re-Imagining the Data Center with IntelIntel IT Center
 
Challenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATAChallenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATAHyperleger Tokyo Meetup
 
Optimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge ComputingOptimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge ComputingRebekah Rodriguez
 
Genomics Deployments - How to Get Right with Software Defined Storage
 Genomics Deployments -  How to Get Right with Software Defined Storage Genomics Deployments -  How to Get Right with Software Defined Storage
Genomics Deployments - How to Get Right with Software Defined StorageSandeep Patil
 
Global Legal Discovery - A case study in storage solutions by Silicon Mechanics
Global Legal Discovery - A case study in storage solutions by Silicon MechanicsGlobal Legal Discovery - A case study in storage solutions by Silicon Mechanics
Global Legal Discovery - A case study in storage solutions by Silicon Mechanicswaltermoss123
 
Building the Internet of Everything
Building the Internet of Everything Building the Internet of Everything
Building the Internet of Everything Cisco Canada
 
1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table info1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table infoMdjunaidAli3
 
Data Capture in IBM WebSphere Premises Server - Aldo Eisma, IBM
Data Capture in IBM WebSphere Premises Server - Aldo Eisma, IBMData Capture in IBM WebSphere Premises Server - Aldo Eisma, IBM
Data Capture in IBM WebSphere Premises Server - Aldo Eisma, IBMmfrancis
 
IRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud Systems
IRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud SystemsIRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud Systems
IRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud SystemsIRJET Journal
 
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...MongoDB
 
CCNA RS_NB - Chapter 11
CCNA RS_NB - Chapter 11CCNA RS_NB - Chapter 11
CCNA RS_NB - Chapter 11Irsandi Hasan
 
Ccna v5-S1-Chapter 11
Ccna v5-S1-Chapter 11Ccna v5-S1-Chapter 11
Ccna v5-S1-Chapter 11Hamza Malik
 
Crypto Mechanism to Provide Secure to the IOT Data
Crypto Mechanism to Provide Secure to the IOT DataCrypto Mechanism to Provide Secure to the IOT Data
Crypto Mechanism to Provide Secure to the IOT DataIRJET Journal
 

Similar to Demo: Infrastructure for Managing, Sharing, and Utilizing Sensitive Data using Hyperledger Fabric Private Chaincode Running on Microsoft Azure (20)

GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...
GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...
GoGrid 3.0 Webinar: Complex Infrastructure Made Easy - Learn About the GoGrid...
 
Intels presentation at blue line industrial computer seminar
Intels presentation at blue line industrial computer seminarIntels presentation at blue line industrial computer seminar
Intels presentation at blue line industrial computer seminar
 
What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?
 
Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...
Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...
Trust Data Sharing and Utilization Infrastructure for Sensitive Data using Hy...
 
Re-architecting the Datacenter to Deliver Better Experiences (Intel)
Re-architecting the Datacenter to Deliver Better Experiences (Intel)Re-architecting the Datacenter to Deliver Better Experiences (Intel)
Re-architecting the Datacenter to Deliver Better Experiences (Intel)
 
Effective IoT System on Openstack
Effective IoT System on OpenstackEffective IoT System on Openstack
Effective IoT System on Openstack
 
5G Network Introduction
5G Network Introduction5G Network Introduction
5G Network Introduction
 
Re-Imagining the Data Center with Intel
Re-Imagining the Data Center with IntelRe-Imagining the Data Center with Intel
Re-Imagining the Data Center with Intel
 
Challenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATAChallenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATA
 
Optimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge ComputingOptimize Content Delivery with Multi-Access Edge Computing
Optimize Content Delivery with Multi-Access Edge Computing
 
Genomics Deployments - How to Get Right with Software Defined Storage
 Genomics Deployments -  How to Get Right with Software Defined Storage Genomics Deployments -  How to Get Right with Software Defined Storage
Genomics Deployments - How to Get Right with Software Defined Storage
 
Global Legal Discovery - A case study in storage solutions by Silicon Mechanics
Global Legal Discovery - A case study in storage solutions by Silicon MechanicsGlobal Legal Discovery - A case study in storage solutions by Silicon Mechanics
Global Legal Discovery - A case study in storage solutions by Silicon Mechanics
 
Building the Internet of Everything
Building the Internet of Everything Building the Internet of Everything
Building the Internet of Everything
 
1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table info1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table info
 
Data Capture in IBM WebSphere Premises Server - Aldo Eisma, IBM
Data Capture in IBM WebSphere Premises Server - Aldo Eisma, IBMData Capture in IBM WebSphere Premises Server - Aldo Eisma, IBM
Data Capture in IBM WebSphere Premises Server - Aldo Eisma, IBM
 
IRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud Systems
IRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud SystemsIRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud Systems
IRJET- Secure and Efficient File Sharing and Shared Ownership in Cloud Systems
 
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
 
CCNA RS_NB - Chapter 11
CCNA RS_NB - Chapter 11CCNA RS_NB - Chapter 11
CCNA RS_NB - Chapter 11
 
Ccna v5-S1-Chapter 11
Ccna v5-S1-Chapter 11Ccna v5-S1-Chapter 11
Ccna v5-S1-Chapter 11
 
Crypto Mechanism to Provide Secure to the IOT Data
Crypto Mechanism to Provide Secure to the IOT DataCrypto Mechanism to Provide Secure to the IOT Data
Crypto Mechanism to Provide Secure to the IOT Data
 

Recently uploaded

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 

Recently uploaded (20)

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 

Demo: Infrastructure for Managing, Sharing, and Utilizing Sensitive Data using Hyperledger Fabric Private Chaincode Running on Microsoft Azure

  • 1. © Hitachi, Ltd. 2022. All rights reserved. ● Demo: Infrastructure for Managing, Sharing, and Utilizing Sensitive Data using Hyperledger Fabric Private Chaincode Running on Microsoft Azure Hitachi, Ltd. / Research and Development Group Monday, September 12, 2022. • 14:40 - 14:55 Koshi IKEGAWA #HyperledgerForum @koshi_ikegawa
  • 2. © Hitachi, Ltd. 2022. All rights reserved. 1. Background and Introduction 2. Motivation 3. Demonstration 4. Summary Contents 1
  • 3. 2 © Hitachi, Ltd. 2022. All rights reserved. 1. Background and Introduction
  • 4. 3 © Hitachi, Ltd. 2022. All rights reserved. Data Free Flow with Trust (DFFT) is a top priority for the new economy, according to the World Economic Forum 2019 ❚ Blockchain is expected to be used as a means to realize DFFT u A feature of blockchains is that transactions and data contents are shared and written to a ledger by all participating organizations. ❚ There are open data that can be shared by all organizations, and there are sensitive data that needs to be controlled to whom it is shared. u Such as medical data, personal information, etc... ❚ When handling sensitive data, privacy protection is required by laws u Such as “the Act on the Protection of Personal Information (Japan)”, “GDPR (EU)”, and etc... Background | Data Free Flow with Trust (DFFT)
  • 5. 4 © Hitachi, Ltd. 2022. All rights reserved. Fabric Private Chaincode (FPC) enables the execution of chaincodes using Trusted Execution Environment (TEE) for Fabric ❚ protect the privacy of chaincode data and computation from potentially untrusted peers. ❚ allows to write chaincode applications where the data is encrypted on the ledger and can only be accessed in clear by authorized parties. Fabric Private Chaincode (FPC) BC Network Org 2 (Trusted) Peer TEE Encrypted Ledger Encrypted State DB Private Chaincode Org 3 (Untrusted) Peer Client TEE Encrypted Ledger Encrypted State DB Private Chaincode Org 1 (Trusted) Peer TEE Encrypted Ledger Encrypted State DB Private Chaincode Client Client Decrypt and return data if requested by a trusted organization Return only error if requested by an untrusted organization.
  • 6. 5 © Hitachi, Ltd. 2022. All rights reserved. TEE is a security feature that prevents external attacks by executing programs in an area called an enclave that is isolated from the OS ❚ Technology to create Enclave in memory as a function of CPU u Intel Software Guard Extensions (SGX) u ARM TrustZone, etc.... ❚ Technology that makes the VMs itself an Enclave. u Intel Trusted Domain Extensions (TDX) u AMD Secure Encrypted Virtualization (SEV) u AWS NitroEnclave, etc... Fabric Private Chaincode (FPC) implementation uses Intel SGX Trusted Execution Environment (TEE)
  • 7. 6 © Hitachi, Ltd. 2022. All rights reserved. Intel SGX [1] is Hardware security function enhancements in Intel CPUs ❚ Intel SGX u is an Intel CPU feature that creates an encrypted area called an Enclave in RAM u loads programs and data into Enclave, allowing programs to be executed while protecting sensitive data Intel SGX RAM Intel CPU Enclave OS Create Enclave SGX Calculation Sensitive Data This figure is based on [2]. 1. Intel® Software Guard Extensions (Intel® SGX). URL: https://www.intel.co.jp/content/www/jp/ja/architecture-and-technology/software-guard-extensions.html 2. Intel SGX入門 - SGX基礎知識編 (in Japanese). URL: https://qiita.com/Cliffford/items/2f155f40a1c3eec288cf
  • 8. 7 © Hitachi, Ltd. 2022. All rights reserved. By using virtual machines created using “infrastructure as a service (IaaS)”, there is no need to prepare or manage your own hardware. ❚ Only a few IaaS offering VMs with Intel SGX that can use FPC u Microsoft Azure can create virtual machines (DCsv2 series) with Intel SGX Why use Microsoft Azure for running FPC? Azure AWS GCP IBM Cloud CPU Level TEE Intel SGX - - Intel SGX (only metal server) VM Level TEE - NitroEnclave Confidential VM -
  • 9. 8 © Hitachi, Ltd. 2022. All rights reserved. 2. Motivation
  • 10. 9 © Hitachi, Ltd. 2022. All rights reserved. Infrastructure for managing, sharing, and utilizing genome data in multiple orgs ❚ Raw genome data must not be passed on to other organizations because the data is sensitive data ❚ Analyze the data on the processor of the data owner org and pass only the results to other orgs Our use case Patients Fabric BC Network Org 1 Peer User (Doctor) Data Analyzer Chaincode Client State DB Ledger Genome Data Storage Org N Org 2 Peer User (Doctor) Ledger Data Analyzer Chaincode Client State DB Genome Data Storage store load write result request result request result State DB Chaincode Ledger
  • 11. 10 © Hitachi, Ltd. 2022. All rights reserved. The unrelated organization (Org N) can access the details of the transactions of Org 1 and Org 2. Problem Patients Fabric BC Network Org 1 Peer User (Doctor) Data Analyzer Chaincode Client State DB Ledger Genome Data Storage Org N (Unrelated) Org 2 Peer User (Doctor) Ledger Data Analyzer Chaincode Client State DB Genome Data Storage store load write result request result request result State DB Chaincode Ledger request result
  • 12. 11 © Hitachi, Ltd. 2022. All rights reserved. Keep transactions and data exchange secret from unrelated orgs using Fabric Private Chaincode Motivation Patients Fabric BC Network Org 2 Peer User (Doctor) Client State DB Ledger Org 1 Peer User (Doctor) Client State DB Ledger FPC Private Chaincode FPC Private Chaincode Org N (Unrelated) State DB Private Chaincode Ledger Data Analyzer Genome Data Storage Data Analyzer Genome Data Storage
  • 13. 12 © Hitachi, Ltd. 2022. All rights reserved. 3. Demonstration
  • 14. 13 © Hitachi, Ltd. 2022. All rights reserved. ❚ Explain our demo system architecture u Building a demo system for data management, sharing, and utilization involving two organizations on Azure VM ❚ Explain our chaincode installed in the system and client program in the order of the following scenarios u 1. Store data in data storage and metadate in ledger u 2. Search genome data u 3. Request for permission to use genome data u 4. Approve the request u 5. Request for analysis of genome data u 6. Execute the analysis of data and write the result Overview of demonstration
  • 15. 14 © Hitachi, Ltd. 2022. All rights reserved. Microsoft Azure DC2s Virtual Machine ❚ Location: East US (only East US location can create DC2s series VMs) ❚ Size: Standard DC2s v2 (2 vcpus, 8 GiB memory) ❚ OS: Ubuntu Server 20.04 LTS - Gen2 ❚ Disk: 128GiB Fabric BC Network Org 1 FPC Demo system architecture User (Doctor) Chaincode container Peer container Data Analyzer Data Storage Orderer Orderer container FPC logic container (e.g., ercc) Client container Chaincode Client State DB Ledger Org 2 FPC User (Doctor) Chaincode container Peer container Data Analyzer Data Storage FPC logic container (e.g., ercc) Client container Chaincode Client State DB Ledger
  • 16. 15 © Hitachi, Ltd. 2022. All rights reserved. Fabric BC Network Simplified overview of the demo system Org 2 Peer User (Doctor) Data Analyzer Private Chaincode Client State DB Ledger Data Storage Org 1 Peer User (Doctor) Data Analyzer Private Chaincode Client State DB Ledger Data Storage State DB: for genome meta data catalog Key Owner Patient Consent Meta Data State DB: for data access permission management Key Request Permission State DB: for task management Key Requester Task Result Private Chaincode: • set/get genome meta data • request/approve data access permission • request/approve task execution Client Program: • Invoke/Query chaincode functions • Store genome data to storage • Order analysis of genome data
  • 17. 16 © Hitachi, Ltd. 2022. All rights reserved. Demo | 1. Store data in data storage and metadate in ledger Org 2 Peer User (Doctor) Data Analyzer Private Chaincode Client State DB Ledger Data Storage Org 1 Peer User (Doctor) Data Analyzer Private Chaincode Client State DB Ledger Data Storage ①Store raw genome data ②Invoke: set_data() Client: ① Store raw genome data to data storage ② Invoke set_data function of chaincode • Write genome meta data Chaincode: set_data() • Get owner information (MSPID) • Write MSPID, patient consent, and meta data into ledger State DB: for genome meta data catalog Key Owner Patient Consent Other Meta Data 001 Org1MSP Agree Hash Value, Other Info State DB: for data access permission management Key Request Permission State DB: for task management Key Requester Task Result
  • 18. 17 © Hitachi, Ltd. 2022. All rights reserved. Demo | 2. Search genome data Org 2 Peer User (Doctor) Data Analyzer Private Chaincode Client State DB Ledger Data Storage Org 1 Peer User (Doctor) Data Analyzer Private Chaincode Client State DB Ledger Data Storage ①Query: get_data Client: ① Query get_data function of chaincode • Search for the data you want to utilize Chaincode: get_data() • Read genome metadata • Search for the data • Returns a list of metadata to which the patients agrees State DB: for genome meta data catalog Key Owner Patient Consent Meta Data 001 Org1MSP Agree Hash Value, Other Info State DB: for data access permission management Key Request Permission State DB: for task management Key Requester Task Result
  • 19. 18 © Hitachi, Ltd. 2022. All rights reserved. Demo | 3. Request for permission to use genome data Org 2 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage Org 1 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage ①Invoke: request_permission Client: ① Invoke request_permission function of chaincode Chaincode: request_permission() • Get Requester information (MSPID=Org2MSP) • Write Requester MSPID into ledger State DB: for genome meta data catalog Key Owner Patient Consent Meta Data 001 Org1MSP Agree Hash Value, Other Info State DB: for data access permission management Key Request Permission 001 Org2MSP State DB: for task management Key Requester Task Result Private Chaincode Private Chaincode
  • 20. 19 © Hitachi, Ltd. 2022. All rights reserved. Demo | 4. Approve the request Org 2 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage Org 1 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage ①Invoke: Approve_permission Client: ① Invoke approve_permission function of chaincode Chaincode: approve_permission() • Get approver information (MSPID=Org1MSP) • Check that the approver MSPID and the data owner MSPID are equal • Approve request • Write Permission user MSPID into ledger • Remove Requester user MSPID State DB: for genome meta data catalog Key Owner Patient Consent Meta Data 001 Org1MSP Agree Hash Value, Other Info State DB: for data access permission management Key Request Permission 001 (Removed) Org2MSP State DB: for task management Key Requester Task Result Private Chaincode Private Chaincode
  • 21. 20 © Hitachi, Ltd. 2022. All rights reserved. Demo | 5. Request for analysis of genome data Org 2 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage Org 1 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage ①Invoke: request_task Client: ① Invoke request_task function of chaincode Chaincode: request_task() • Get Requester information (MSPID=Org2MSP) • Write Requester MSPID and Analysis conditions into ledger State DB: for genome meta data catalog Key Owner Patient Consent Meta Data 001 Org1MSP Agree Hash Value, Other Info State DB: for data access permission management Key Request Permission 001 (Empty) Org2MSP State DB: for task management Key Requester Task Result 001 Org2MSP Analysis conditions Private Chaincode Private Chaincode
  • 22. 21 © Hitachi, Ltd. 2022. All rights reserved. Demo | 6. Execute the analysis of data and write the result Org 2 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage Org 1 Peer User (Doctor) Data Analyzer Client State DB Ledger Data Storage ④Invoke: result ③Analyze task Client: ① Query the request and order execution. ④ Invoke write_result function of chaincode Chaincode: write_result() • Get Requester information (MSPID=Org1MSP) • Check the data owner MSPID and above MSPID are equal • Write Analysis Result into ledger ②Load genome data ①Order Execution State DB: for genome meta data catalog Key Owner Patient Consent Meta Data 001 Org1MSP Agree Hash Value, Other Info State DB: for data access permission management Key Request Permission 001 (Empty) Org2MSP State DB: for task management Key Requester Task Result 001 Org2MSP Analysis conditions Analysis Result Data Analyzer: ② Load genome data ③ Analyze task Private Chaincode Private Chaincode
  • 23. 22 © Hitachi, Ltd. 2022. All rights reserved. 4. Summary
  • 24. 23 © Hitachi, Ltd. 2022. All rights reserved. ❚ Background and Introduction u explained some background on the market needs u explained introduction that includes what we are doing with FPC ❚ Motivation u explained the motivation for this demonstration ❚ Demonstration u explained our demo system architecture u explained our chaincode and client installed in the system Summary
  • 25. 24 © Hitachi, Ltd. 2022. All rights reserved. Special Thanks to... ❚ All Hyperledger Fabric Private Chaincode community members!!! u Many thanks to the following people for their advice!! l Marcus Brandenburger @mbrandenburger l Bruno Vavala @bvavala l @munapower Acknowledgement
  • 26. 25 © Hitachi, Ltd. 2022. All rights reserved. ❚ Hyperledger, Hyperledger Fabric, and Hyperledger logs and any related marks are trademarks of the Linux Foundation or Hyperledger Foundation ❚ Intel, Intel SGX and Intel logs and any related marks are trademarks of the Intel Corp. ❚ Other brand names and product names used in this material are trademarks, registered trademarks, or trade names of their respective holders. Trademarks