Efficient and Secure EMR Storage and Sharing Scheme Based on Hyperledger Fabric and IPFS
Abstract
:1. Introduction
- We propose a storage method that combines dual channels with the IPFS. In Hyperledger Fabric, we create an attribution channel to store EMR’s attribution information and a data channel to store the storage location, summary, and usage records of medical data. The encrypted medical data are then stored in the IPFS. This ensures that patient privacy is not threatened by attacks such as data mining.
- We integrate medical data attributes that can be used for a conditional query into a composite key. This composite key, along with the medical record number, is then stored as a key–value pair in the blockchain. This approach aims to enhance the efficiency of data querying in the blockchain.
- We introduce a zero-knowledge proof and combine it with smart contracts to achieve decentralized identity verification for system users. This eliminates the reliance on central third-party verification services, thereby enhancing system security.
- We combine AES encryption with proxy re-encryption to ensure data security during the sharing process. We provide the principles behind implementing this technique.
2. Related Work
3. Framework Components
3.1. Hyperledger Fabric
3.2. InterPlanetary File System
3.3. zk-SNARKs
- : Use DSL to describe the constraint verification program intended for ZKP implementation, denoted as . Next, compile it to generate the internal arithmetic circuit representation, denoted as . Finally, generate the key pair by constructing .
- : Given the public input and the private input , compute . Finally, generate the proof using Equation (1):
- : When there is a verification requirement, the correctness of can be verified by constructing and providing and its corresponding as inputs.
4. Scheme Model
5. Scheme Implementation
5.1. System Initialization Phase
5.2. Registration and Verification Phase
5.2.1. Generating
5.2.2. Generating
5.2.3. Verification
5.3. Data Storage Phase
5.3.1. Encrypting Medical Records
5.3.2. Processing Medical Record Numbers
5.3.3. Attribution Channel
5.3.4. Data Channel
5.3.5. IPFS Stores Medical Data
5.4. Data Query Phase
- The medical data records were generated in hospital H.
- The diagnostic result of the medical data records include .
5.4.1. Creating Composite Key
Algorithm 1 Create composite key |
Input: a set of attributes Output: k
|
Algorithm 2 Generate key–value pairs |
Input: a set of records Output: a set of key–value pairs
|
5.4.2. Executing Conditional Query
5.4.3. Updating Key–Value Pairs
Algorithm 3 Update key–value pairs |
Input: a set of records Output: a set of key–value pairs
|
5.5. Data Sharing Phase
- Patients query their own EMR and then authorize healthcare service providers to view them.
- Other DUs, such as medical staff from healthcare units or researchers from research institutions, query the system for medical data available for sharing based on their specific needs.
5.5.1. Principle of AES-PRE Implementation
- Alice has and , and Bob has and .
- Alice generates a symmetric key, , encrypts the plaintext M with to generate ciphertext C, encrypts with to generate , and sends C and to the proxy.
- Bob requests data from Alice and sends his public key to Alice.
- Alice generates the proxy re-encryption key based on and and sends to the proxy.
- The proxy transforms into based on .
- Bob retrieves C and and then decrypts using to obtain . With , he decrypts C to retrieve the plaintext data.
5.5.2. Sharing Process
6. Scheme Analysis
6.1. Security Analysis
6.1.1. Medical Data Security
6.1.2. User Anonymity
6.1.3. Patient Privacy and Security
6.2. Performance Analysis
6.2.1. Feature Comparison
6.2.2. Time Overhead
6.2.3. Storage Overhead
6.2.4. Throughput
7. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Han, Y.; Fang, X. Systematic review of adopting blockchain in supply chain management: Bibliometric analysis and theme discussion. Int. J. Prod. Res. 2024, 62, 991–1016. [Google Scholar] [CrossRef]
- Mathur, S.; Kalla, A.; Gür, G.; Bohra, M.K.; Liyanage, M. A survey on role of blockchain for IoT: Applications and technical aspects. Comput. Netw. 2023, 227, 109726. [Google Scholar] [CrossRef]
- Khashan, O.A.; Khafajah, N.M. Efficient hybrid centralized and blockchain-based authentication architecture for heterogeneous IoT systems. J. King Saud Univ.-Comput. Inf. Sci. 2023, 35, 726–739. [Google Scholar] [CrossRef]
- Merlo, V.; Pio, G.; Giusto, F.; Bilancia, M. On the exploitation of the blockchain technology in the healthcare sector: A systematic review. Expert Syst. Appl. 2023, 213, 118897. [Google Scholar] [CrossRef]
- Khalid, M.I.; Ehsan, I.; Al-Ani, A.K.; Iqbal, J.; Hussain, S.; Ullah, S.S. A comprehensive survey on blockchain-based decentralized storage networks. IEEE Access 2023, 11, 10995–11015. [Google Scholar] [CrossRef]
- Ren, Y.; Huang, D.; Wang, W.; Yu, X. BSMD: A blockchain-based secure storage mechanism for big spatio-temporal data. Future Gener. Comput. Syst. 2023, 138, 328–338. [Google Scholar] [CrossRef]
- Cao, S.; Zhang, X.; Xu, R. Toward secure storage in cloud-based ehealth systems: A blockchain-assisted approach. IEEE Netw. 2020, 34, 64–70. [Google Scholar] [CrossRef]
- Carter, G.; Shahriar, H.; Sneha, S. Blockchain-based interoperable electronic health record sharing framework. In Proceedings of the 2019 IEEE 43rd Annual Computer Software and Applications Conference (COMPSAC), Milwaukee, WI, USA, 15–19 July 2019; Volume 2, pp. 452–457. [Google Scholar]
- Huang, H.; Sun, X.; Xiao, F.; Zhu, P.; Wang, W. Blockchain-based eHealth system for auditable EHRs manipulation in cloud environments. J. Parallel Distrib. Comput. 2021, 148, 46–57. [Google Scholar] [CrossRef]
- Xia, Q.; Sifah, E.B.; Asamoah, K.O.; Gao, J.; Du, X.; Guizani, M. MeDShare: Trust-less medical data sharing among cloud service providers via blockchain. IEEE Access 2017, 5, 14757–14767. [Google Scholar] [CrossRef]
- Fu, J.; Wang, N.; Cai, Y. Privacy-preserving in healthcare blockchain systems based on lightweight message sharing. Sensors 2020, 20, 1898. [Google Scholar] [CrossRef]
- Wang, Y.; Zhang, A.; Zhang, P.; Wang, H. Cloud-assisted EHR sharing with security and privacy preservation via consortium blockchain. IEEE Access 2019, 7, 136704–136719. [Google Scholar] [CrossRef]
- Dagher, G.G.; Mohler, J.; Milojkovic, M.; Marella, P.B. Ancile: Privacy-preserving framework for access control and interoperability of electronic health records using blockchain technology. Sustain. Cities Soc. 2018, 39, 283–297. [Google Scholar] [CrossRef]
- Akkaoui, R.; Hei, X.; Cheng, W. EdgeMediChain: A hybrid edge blockchain-based framework for health data exchange. IEEE Access 2020, 8, 113467–113486. [Google Scholar] [CrossRef]
- Chen, L.; Lee, W.K.; Chang, C.C.; Choo, K.K.R.; Zhang, N. Blockchain based searchable encryption for electronic health record sharing. Future Gener. Comput. Syst. 2019, 95, 420–429. [Google Scholar] [CrossRef]
- Azaria, A.; Ekblaw, A.; Vieira, T.; Lippman, A. Medrec: Using blockchain for medical data access and permission management. In Proceedings of the 2016 2nd International Conference on Open and Big Data (OBD), Vienna, Austria, 22–24 August 2016; pp. 25–30. [Google Scholar]
- Cachin, C. Architecture of the hyperledger blockchain fabric. In Proceedings of the Workshop on Distributed Cryptocurrencies and Consensus Ledgers, Chicago, IL, USA, 25 July 2016; Volume 310, pp. 1–4. [Google Scholar]
- Zhong, B.; Wu, H.; Ding, L.; Luo, H.; Luo, Y.; Pan, X. Hyperledger fabric-based consortium blockchain for construction quality information management. Front. Eng. Manag. 2020, 7, 512–527. [Google Scholar] [CrossRef]
- Tanwar, S.; Parekh, K.; Evans, R. Blockchain-based electronic healthcare record system for healthcare 4.0 applications. J. Inf. Secur. Appl. 2020, 50, 102407. [Google Scholar] [CrossRef]
- Al-Sumaidaee, G.; Alkhudary, R.; Zilic, Z.; Swidan, A. Performance analysis of a private blockchain network built on Hyperledger Fabric for healthcare. Inf. Process. Manag. 2023, 60, 103160. [Google Scholar] [CrossRef]
- Benet, J. Ipfs-content addressed, versioned, p2p file system. arXiv 2014, arXiv:1407.3561. [Google Scholar]
- Dwivedi, A.D.; Singh, R.; Ghosh, U.; Mukkamala, R.R.; Tolba, A.; Said, O. Privacy preserving authentication system based on non-interactive zero knowledge proof suitable for Internet of Things. J. Ambient. Intell. Humaniz. Comput. 2022, 13, 4639–4649. [Google Scholar] [CrossRef]
- Chen, T.; Lu, H.; Kunpittaya, T.; Luo, A. A review of zk-snarks. arXiv 2022, arXiv:2202.06877. [Google Scholar]
- Ben-Sasson, E.; Bentov, I.; Horesh, Y.; Riabzev, M. Scalable, transparent, and post-quantum secure computational integrity. Cryptol. ePrint Arch. 2018. Available online: https://eprint.iacr.org/2018/046 (accessed on 16 April 2024).
- Bünz, B.; Bootle, J.; Boneh, D.; Poelstra, A.; Wuille, P.; Maxwell, G. Bulletproofs: Short proofs for confidential transactions and more. In Proceedings of the 2018 IEEE Symposium on Security and Privacy (SP), San Francisco, CA, USA, 20–24 May 2018; pp. 315–334. [Google Scholar]
- Eberhardt, J.; Tai, S. Zokrates-scalable privacy-preserving off-chain computations. In Proceedings of the 2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), Halifax, NS, Canada, 30 July–3 August 2018; pp. 1084–1091. [Google Scholar]
- Groth, J. On the size of pairing-based non-interactive arguments. In Proceedings of the Advances in Cryptology–EUROCRYPT 2016: 35th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Vienna, Austria, 8–12 May 2016; Proceedings, Part II 35. Springer: Berlin/Heidelberg, Germany, 2016; pp. 305–326. [Google Scholar]
- Blaze, M.; Bleumer, G.; Strauss, M. Divertible protocols and atomic proxy cryptography. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 1998; pp. 127–144. [Google Scholar]
- Chen, Z.; Xu, W.; Wang, B.; Yu, H. A blockchain-based preserving and sharing system for medical data privacy. Future Gener. Comput. Syst. 2021, 124, 338–350. [Google Scholar] [CrossRef]
- Jayabalan, J.; Jeyanthi, N. Scalable blockchain model using off-chain IPFS storage for healthcare data security and privacy. J. Parallel Distrib. Comput. 2022, 164, 152–167. [Google Scholar] [CrossRef]
- Saidi, H.; Labraoui, N.; Ari, A.A.A.; Maglaras, L.A.; Emati, J.H.M. DSMAC: Privacy-aware Decentralized Self-Management of data Access Control based on blockchain for health data. IEEE Access 2022, 10, 101011–101028. [Google Scholar] [CrossRef]
- Oksuz, O. A System For Storing Anonymous Patient Healthcare Data Using Blockchain And Its Applications. Comput. J. 2024, 67, 18–30. [Google Scholar] [CrossRef]
Literature | Limitation | Solution in This Study |
---|---|---|
[7] | Lack of shared program | Combining blockchain, the IPFS, and proxy re-encryption |
[8,9,10] | Lack of privacy protection | Using pseudo-identities in the system |
[11] | No efficient search mechanism | Creating composite keys for conditional queries |
[12,13,14,15,16] | Requires tokens or gas expenses | Based on the Hyperledger Fabric architecture without the incentive mechanism |
[19] | Lack of data integrity discussion | Combining blockchain and the IPFS |
[20] | The source medical data are not decentralized storage | Storing medical data ciphertexts using the IPFS |
zk-SNARKs | zk-STARKs | Bulletproofs | |
---|---|---|---|
Algorithmic complexity of the prover | O(N·log(N)) | O(N·polylog(N)) | O(N·log(N)) |
Algorithmic complexity of the verifier | O(1) | O(polylog(N)) | O(N) |
Communication complexity | O(1) | O(polylog(N)) | O(log(N)) |
1TX proof size | 200 B | 45 KB | 1.5 KB |
Scheme | Original Data Storage Location | Anonymity | Resisting Data Mining Threats | Decentralized Identity Authentication | Conditional Query |
---|---|---|---|---|---|
[29] | Cloud Server | ✓ | × | × | × |
[30] | IPFS | ✓ | × | × | × |
[31] | Cloud Server | × | × | ✓ | × |
[32] | Centralized Database | ✓ | × | × | × |
Our scheme | IPFS | ✓ | ✓ | ✓ | ✓ |
Symbol | Explanation |
---|---|
Encrypting medical record data with public keys | |
Decrypting medical record data with private key | |
Calculating medical record data message digest | |
Calculating the hash value of the medical record number | |
Encrypting medical record number | |
Decrypting medical record number | |
Doctor signs the medical record data | |
Creating to upload to data channel | |
Querying on the data channel | |
Encrypting medical record data with AES | |
Decrypting medical record data with AES | |
Generate re-encryption key | |
Proxy re-encryption | |
Creating to upload to data channel | |
Querying on the data channel | |
Uploading encrypted data to the IPFS to generate CID | |
Downloading encrypted data from the IPFS | |
Creating to upload to attribution channel | |
Querying on the attribution channel | |
Verifying data integrity | |
Verifying the validity of |
Phase | Time Overhead | Result (64 KB/256 KB/1 MB) |
---|---|---|
Data generation | 87/295/1061 | |
Data uploading | 127/136/148 | |
Data sharing | 616/2094/7756 |
Data Size | |||||||
---|---|---|---|---|---|---|---|
64 KB | 44.47 | 1.27 | 43.56 | 1.28 | 43.46 | 1.21 | 36.04 |
256 KB | 47.37 | 1.23 | 46.81 | 1.23 | 42.71 | 1.28 | 37.21 |
1 MB | 44.90 | 1.30 | 44.61 | 1.26 | 43.37 | 1.22 | 37.87 |
Group | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|
Ratio | 100–20 | 20–15 | 15–10 | 10–5 | 5–0 |
Number of records | 606 | 138 | 188 | 207 | 340 |
Group | General Method | Our Method |
---|---|---|
1 | 182 | 72 |
2 | 293 | 68 |
3 | 344 | 59 |
4 | 518 | 56 |
5 | 847 | 51 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Guo, J.; Zhao, K.; Liang, Z.; Min, K. Efficient and Secure EMR Storage and Sharing Scheme Based on Hyperledger Fabric and IPFS. Appl. Sci. 2024, 14, 5005. https://doi.org/10.3390/app14125005
Guo J, Zhao K, Liang Z, Min K. Efficient and Secure EMR Storage and Sharing Scheme Based on Hyperledger Fabric and IPFS. Applied Sciences. 2024; 14(12):5005. https://doi.org/10.3390/app14125005
Chicago/Turabian StyleGuo, Jinxi, Kui Zhao, Zhiwei Liang, and Kai Min. 2024. "Efficient and Secure EMR Storage and Sharing Scheme Based on Hyperledger Fabric and IPFS" Applied Sciences 14, no. 12: 5005. https://doi.org/10.3390/app14125005
APA StyleGuo, J., Zhao, K., Liang, Z., & Min, K. (2024). Efficient and Secure EMR Storage and Sharing Scheme Based on Hyperledger Fabric and IPFS. Applied Sciences, 14(12), 5005. https://doi.org/10.3390/app14125005