A Blockchain-Based Privacy-Preserving Healthcare Data Sharing Scheme for Incremental Updates
Abstract
:1. Introduction
- We propose a blockchain and TEE-based healthcare data-sharing scheme that supports incremental updates. The scheme achieves incremental updating without changing the data on-chain, effectively reducing data redundancy and minimizing system overhead.
- To ensure that shared and incremental update records are traceable, we construct a shared blockchain (SB) and an updated blockchain (UB) to store incremental update and data-sharing transactions, respectively. We design a data validation mechanism in TEE to ensure the quality of shared data.
- We use symmetric encryption to protect data stored off-chain. We divide the shared transaction into two parts—on-chain state tracking and off-chain TEE execution—and complete the verification and computation of confidential data within the TEE. The security of personal case data storage and sharing is effectively guaranteed.
- We developed a prototype of the scheme and conducted experiments to evaluate its gas consumption and computational overhead. Additionally, we compares it with the non-TEE environment. The experiment results show the effectiveness and feasibility of our scheme.
2. Related Work
2.1. Storage and Management for Sharing Data
2.2. Preserving Privacy for Medical Data Sharing
3. Preliminaries
3.1. Trusted Execution Environment
- TEE receives input as the security parameter and generates a pair of public and private keys (,), which are called master public key and master private key.
- TEE receives input as the program and stores it in the enclave, and the identifier of the enclave is .
- TEE receives input as the identity of enclave , function and the input and outputs as the program running result of function attached with an attestation .
- TEE receives input as the master public key , the program , the output , , and outputs1 means the attestation is correct, and 0 means the opposite.
3.2. Chameleon Hash
- . The key generation algorithm takes as input a security parameter and outputs a private and public key pair .
- The hashing algorithm takes as input a public key and a message and outputs a hash and its check string .
- The adaptation algorithm takes as input a private key , a triple of old hash , check string and message , and a new message , then outputs a new check string .
- . The deterministic verification algorithm takes as input the public key , a triple of hash value , check string and message . It then outputs if is a valid hash–check string pair for the message ; otherwise, it outputs .
4. System Model
4.1. System Architecture
- Data Owner (DO): DO is the personal healthcare dataset owner who provides his case data to relevant medical research organizations in exchange for rewards. The DO establishes access policies and sales rules for his data. At the same time, DO holds his private key for incremental updates of his case data on-chain.
- Data User (DU): DU is the demander of personal healthcare data (e.g., the medical research institution or the insurance company) willing to pay certain rewards for the right to use the health data.
- Blockchain: Our system uses two blockchains: a shared blockchain (SB) and an updated blockchain (UB). The SB leverages the public blockchain to record and execute shared transactions, promoting transparency and openness. The UB uses the consortium blockchain to store off-chain incremental update records for traceability and validation. It is comanaged by medical research organizations, insurance companies, and regulatory agencies as trusted institutions.
- TEE: The trusted, isolated execution environment that operates independently of untrusted operating systems. In this scheme, TEE acts as an off-chain trusted executor, providing an efficient, reliable, and secure execution environment for incremental updates and confidential data computation.
- Smart Contract: We have designed various smart contracts to implement system functions, including data upload/incremental update smart contract dataUpload, access control smart contract accessControl, and key authorization smart contract keyAuthorization. These smart contracts are executed automatically when triggered.
- CSP: An entity with extensive storage capabilities that stores the ciphertext of shared data.
4.2. Design Goal
- Support incremental updates: Individual healthcare data accumulate over time and under changing conditions, making incremental updates necessary to maintain the integrity of case data in the chain. The scheme should be designed with a flexible and reliable incremental update mechanism to cope with the above scenarios.
- Verifiable: A validation mechanism must be established to ensure that DO can only perform incremental updates of his case data in the TEE but that DO cannot tamper with the original data or privately update case data without permission.
- Security: The update private key, which is confidential data, requires a secure execution environment. In addition, as personal healthcare data can contain a significant amount of private information, it is critical to ensure that it is stored and shared securely.
- Ownership: Only DO can make incremental updates to his case data on-chain, and no one else can tamper with the data of the DO. DO has the right to set access policies for his shared data.
- Traceability: The system must ensure that off-chain incremental update records and shared transaction records are traceable.
4.3. Threat Model
- Honest but curious cloud: The CSP is seen as an honest but curious entity. It will honestly execute system commands and also be curious about the data stored.
- Repudiation and fraud attack: Malicious DOs may attempt to upload false, redundant, or irrelevant data in pursuit of profit. At the same time, malicious DUs may conduct denial and fraud attacks by rejecting data usage records and denying payments.
5. Our Concrete Scheme
5.1. System Initialization
5.2. Data Upload
5.2.1. Storage in CSP
- DO encrypts the healthcare data plaintext with a symmetric key to obtain the encrypted data .
- DO stores the healthcare data ciphertext in CSP and obtains the off-chain storage address .
5.2.2. Upload to Blockchain
- DO computes the chameleon hash of the ciphertext and obtains .
- DO picks the random number and encrypts the symmetric key with the public key of the TEE to obtain the ciphertext . Then, DO picks the random number and encrypts the ciphertext with the public key of the smart contract to obtain the ciphertext .
- DO uploads the random numbers and to the smart contract and sends the access details, such as the charge, to the smart contract in the following form. is the fee to be paid for using the data, and and are the time limits for using the data.
- The access control smart contract analyzes the and subsequently stores it in the form of key–value pairs in the access control table.
- DO uploads his healthcare data to the blockchain SB. The data is stored on the SB in a transactional format. is the address of DO on the SB, calculated from his public key, while is the type of healthcare data (e.g., heart data, blood pressure data, etc.).
5.3. TEE-Based Off-Chain Incremental Updates
- DO initiates a data update request to the smart contract .
- After verification, the smart contract sends an off-chain execution license to the TEE.
- The TEE verifies the license information. If the verification is successful, DO and CSP establish the remote attestation channel with the TEE. DO and CSP transmit the updated private key , the new ciphertext , and the original ciphertext to the TEE via the remote attestation channel. The TEE retrieves the update records of in UB. The TEE verifies the updated data, then executes the incremental update algorithm and generates the updated identification of the current data update. Finally, the new ciphertext is stored in the CSP. Algorithm 1 illustrates the above process.
- The TEE uploads the record of this incremental update to the blockchain UB. Transaction is generated in UB.
Algorithm 1 TEE-based incremental updates |
Input: |
Output: |
1: |
2: if then |
3: if then |
4: if then |
5: |
6: end if |
7: else |
8: get from |
9: if then |
10: if then |
11: |
12: end if |
13: end if |
14: end if |
15: end if |
16: use attestation attest for |
5.4. Privacy-Preserving Healthcare Data Sharing
5.4.1. Access Control with Smart Contracts
- After retrieving the desired data from SB, DU submits a data usage request to the SB.
- The accessControl smart contract verifies whether the DU meets the access policy according to the access control list. If it does, it calls the keyAuthorization to decrypt the secret key of DO to obtain the intermediate ciphertext .
- The accessControl smart contract generates the off-chain execution license of TEE. The chosen data transaction , the intermediate ciphertext , and random number are transmitted to the TEE.
5.4.2. Off-Chain Shared Transaction Execution with the TEE
- Data verification and selection
- −
- The TEE retrieves the shared data ciphertext in the CSP according to the data storage address and retrieves the update record in the blockchain UB.
- −
- Based on the update identification, TEE check involves verifying whether the update record includes the off-chain execution attention of the TEE, followed by verifying the chameleon hash value of the data to ensure consistency with the record on-chain. Only data that meet both criteria can be selected as qualified data.
- Data decryption and calculation
- −
- DU and TEE establish a remote attestation channel. The DU transmits the data training model and its secure hash to the TEE. The TEE verifies the accuracy of the model and executes the following steps.
- −
- The TEE obtains the symmetric key by decrypting the ciphertext .
- −
- The TEE decrypts the validated ciphertext using the symmetric key to obtain the plaintext .
- −
- The TEE performs data calculations using the validated plaintext and the model provided by DU. The final result is the .
- −
- The TEE encrypts the result with the public key of DU and sends it to the DU. The TEE subsequently signals the completion of the off-chain transaction execution back to the blockchain SB. Upon validation from a majority of SB nodes, the rewards are transferred to the account of DO, and the transaction is recorded in the SB.
Algorithm 2 Off-Chain Shared Transaction Execution With TEE |
verification(): Input: |
Output: |
1: fordo |
2: from |
3: if && then |
4: add |
5: end if |
6: end for |
decryption and calculation(): |
Input: |
Output: |
1: if then |
2: |
3: for do |
4: |
5: |
6: end for |
7: 8: 9: end if |
6. Security Analysis, Comparison, and Implementation Evaluation
6.1. Security Analysis
- Support incremental updates: Based on a hybrid storage model combining on-chain and off-chain methods, we utilize chameleon hash as the on-chain digest for personal case data. This particular hash function has the unique property that the trapdoor owner can efficiently find collisions that make . As a result, DO can utilize his private key to update his case data off-chain while keeping the on-chain data unchanged. This helps avoid the overhead associated with data authentication, access control, and rewards caused by the on-chain data changing. In addition, as a trusted off-chain extension of the blockchain, the TEE provides a secure and reliable environment for making incremental updates. At the same time, the TEE can provide a verifiable attestation of the operations it performs, ensuring that DO performs incremental updates of his case data in a legally compliant manner.
- Security: First, DO encrypts its case data using a symmetric encryption algorithm and stores it in the CSP, preventing unauthorized users without the key from accessing the plaintext data. Second, the blockchain stores the chameleon hash of the case data, which can be used to verify that the data have not been tampered with illegally by malicious users. Additionally, private key verification for incremental updates on personal healthcare data, as well as the decryption and computation process of shared data, takes place solely within the TEE. The TEE guarantees that internal computation is concealed and internal data remain inaccessible from external sources to prevent privacy breaches.
- Verifiable: After completing the incremental update of data, an identification for the update is generated. The TEE then generates an execution attestation for and uploads the record of the incremental update to the blockchain SB. Before sharing the data, the TEE verifies that the execution attestation is correct by checking the record in the blockchain SB to prevent unauthorized private modifications by the DO. Then, the TEE verifies the correctness of the chameleon hash value for the data by using the update identification to prevent any tampering by DO with the original data. Only the data that pass the validation process are considered qualified shared data. This method ensures that DO can only update his case data incrementally in a compliant manner, and the off-chain incremental update records can be verified.
- Ownership: The chameleon hash of the on-chain sharing data is held personally by DO, and only the private key holder can find the hash collision. As a result, only DO has the right to incremental update his on-chain data. In addition, smart contracts are utilized to implement access control and key exchange for shared data. DO submits access rules for his shared data to the smart contract and has the authority to establish the access policy for his case data. The smart contract grants data usage permission to authorized DUs following the access control policy set by DO, while unauthorized DUs are prohibited from utilizing the data. Our scheme effectively ensures that DO maintains ownership of the data they share.
- Traceability: To ensure traceability of off-chain update records, we set up the blockchain UB to store off-chain incremental update records. In addition, the blockchain SB stores the transaction records of the sharing parties. These transactions are public and accessible to anyone, ensuring non-tampering and traceability of the shared records.
6.2. Comparison
6.3. Implementation Evaluation
6.3.1. Performance of Smart Contracts
6.3.2. System Computational Overhead
- Comparison between SHA-256 and Chameleon Hash
- Comparison between SGX and non-SGX
7. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Li, T.; Wang, H.; He, D.; Yu, J. Blockchain-based privacy-preserving and rewarding private data sharing for IoT. IEEE Internet Things J. 2022, 9, 15138–15149. [Google Scholar] [CrossRef]
- Liu, T.; Siegel, E.; Shen, D. Deep learning and medical image analysis for COVID-19 diagnosis and prediction. Annu. Rev. Biomed. Eng. 2022, 24, 179–201. [Google Scholar] [CrossRef]
- Bhattacharya, S.; Maddikunta, P.K.; Pham, Q.V.; Gadekallu, T.R.; Chowdhary, C.L.; Alazab, M.; Piran, M.J. Deep learning and medical image processing for coronavirus (COVID-19) pandemic: A survey. Sustain. Cities Soc. 2021, 65, 102589. [Google Scholar] [CrossRef] [PubMed]
- Apell, P.; Eriksson, H. Artificial intelligence (AI) healthcare technology innovations: The current state and challenges from a life science industry perspective. Technol. Anal. Strateg. Manag. 2023, 35, 179–193. [Google Scholar] [CrossRef]
- Tan, L.; Yu, K.; Shi, N.; Yang, C.; Wei, W.; Lu, H. Towards secure and privacy-preserving data sharing for COVID-19 medical records: A blockchain-empowered approach. IEEE Trans. Netw. Sci. Eng. 2021, 9, 271–281. [Google Scholar] [CrossRef]
- Xi, P.; Zhang, X.; Wang, L.; Liu, W.; Peng, S. A review of Blockchain-based secure sharing of healthcare data. Appl. Sci. 2022, 12, 7912. [Google Scholar] [CrossRef]
- Shamshad, S.; Minahil; Mahmood, K.; Kumari, S.; Chen, C.-M. A secure blockchain-based e-health records storage and sharing scheme. J. Inf. Secur. Appl. 2020, 55, 102590. [Google Scholar] [CrossRef]
- An, H.; Chen, J. ElearnChain: A privacy-preserving consortium blockchain system for e-learning educational records. J. Inf. Secur. Appl. 2021, 63, 103013. [Google Scholar] [CrossRef]
- Novo, O. Blockchain meets IoT: An architecture for scalable access management in IoT. IEEE Internet Things J. 2018, 5, 1184–1195. [Google Scholar] [CrossRef]
- Hasan, H.R.; Salah, K. Blockchain-based solution for proof of delivery of physical assets. In Blockchain–ICBC 2018, Proceedings of the First International Conference, Held as Part of the Services Conference Federation, SBF 2018, Seattle, WA, USA, 25–30 June 2018; Proceedings 1; Springer International Publishing: Berlin/Heidelberg, Germany, 2018. [Google Scholar]
- 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]
- Wang, L.; Meng, L.; Liu, F.; Shao, W.; Fu, K.; Xu, S.; Zhang, S. A User-Centered Medical Data Sharing Scheme for Privacy-Preserving Machine Learning. Secur. Commun. Netw. 2022, 2022, 3670107. [Google Scholar] [CrossRef]
- Nishi, F.K.; Shams-E-Mofiz, M.; Khan, M.M.; Alsufyani, A.; Bourouis, S.; Gupta, P.; Saini, D.K. Electronic healthcare data record security using blockchain and smart contract. J. Sens. 2022, 2022, 7299185. [Google Scholar] [CrossRef]
- Benil, T.; Jasper, J. Blockchain based secure medical data outsourcing with data deduplication in cloud environment. Comput. Commun. 2023, 209, 1–13. [Google Scholar] [CrossRef]
- Shrestha, A.K.; Vassileva, J.; Deters, R. A blockchain platform for user data sharing ensuring user control and incentives. Front. Blockchain 2020, 3, 497985. [Google Scholar] [CrossRef]
- Deshmukh, P. Design of cloud security in the EHR for Indian healthcare services. J. King Saud Univ. Comput. Inf. Sci. 2017, 29, 281–287. [Google Scholar] [CrossRef]
- Tian, G.; Ma, H.; Xie, Y.; Liu, Z. Randomized deduplication with ownership management and data sharing in cloud storage. J. Inf. Secur. Appl. 2020, 51, 102432. [Google Scholar] [CrossRef]
- Guo, C.; Wang, L.; Tang, X.; Feng, B.; Zhang, G. Two-party interactive secure deduplication with efficient data ownership management in cloud storage. J. Inf. Secur. Appl. 2023, 73, 103426. [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; IEEE: New York, NY, USA, 2016. [Google Scholar]
- Zhang, G.; Yang, Z.; Liu, W. Blockchain for secure ehrs sharing of mobile cloud based e-health systems. IEEE Access 2019, 7, 66792–66806. [Google Scholar]
- Zhang, G.; Yang, Z.; Liu, W. Blockchain-based privacy preserving e-health system for healthcare data in cloud. Comput. Netw. 2022, 203, 108586. [Google Scholar] [CrossRef]
- Kumar, R.; Kumar, P.; Tripathi, R.; Gupta, G.P.; Islam, A.K.M.N.; Shorfuzzaman, M. Permissioned blockchain and deep learning for secure and efficient data sharing in industrial healthcare systems. IEEE Trans. Ind. Inform. 2022, 18, 8065–8073. [Google Scholar] [CrossRef]
- Belhadi, A.; Holland, J.O.; Yazidi, A.; Srivastava, G.; Lin, J.C.; Djenouri, Y. BIoMT-ISeg: Blockchain internet of medical things for intelligent segmentation. Front. Physiol. 2023, 13, 1097204. [Google Scholar] [CrossRef] [PubMed]
- Zhang, X.; Poslad, S. Blockchain support for flexible queries with granular access control to electronic medical records (EMR). In Proceedings of the 2018 IEEE International Conference on Communications (ICC), Kansas City, MO, USA, 20–24 May 2018; IEEE: New York, NY, USA, 2018. [Google Scholar]
- Liu, J.; Li, X.; Ye, L.; Zhang, H.; Du, X.; Guizani, M. BPDS: A blockchain based privacy-preserving data sharing for electronic medical records. In Proceedings of the 2018 IEEE Global Communications Conference (GLOBECOM), Abu Dhabi, United Arab Emirates, 9–13 December 2018; IEEE: New York, NY, USA, 2018. [Google Scholar]
- Li, F.; Liu, K.; Zhang, L.; Huang, S.; Wu, Q. EHRchain: A blockchain-based EHR system using attribute-based and homomorphic cryptosystem. IEEE Trans. Serv. Comput. 2021, 15, 2755–2765. [Google Scholar] [CrossRef]
- Costan, V.; Srinivas, D. Intel SGX Explained. Cryptology ePrint Archive. 2016. Available online: https://ia.cr/2016/086 (accessed on 17 November 2023).
- Ngabonziza, B.; Martin, D.; Bailey, A.; Cho, H.; Martin, S. Trustzone explained: Architectural features and use cases. In Proceedings of the 2016 IEEE 2nd International Conference on Collaboration and Internet Computing (CIC), Pittsburgh, PA, USA, 1–3 November 2016; IEEE: New York, NY, USA, 2016. [Google Scholar]
- Sabt, M.; Achemlal, M.; Bouabdallah, A. Trusted execution environment: What it is, and what it is not. In Proceedings of the 2015 IEEE Trustcom/BigDataSE/Ispa, Helsinki, Finland, 20–22 August 2015; IEEE: New York, NY, USA, 2015; Volume 1. [Google Scholar]
- Mao, W.; Jiang, P.; Zhu, L. BTAA: Blockchain and TEE Assisted Authentication for IoT Systems. IEEE Internet Things J. 2023, 10, 12603–12615. [Google Scholar] [CrossRef]
- Krawczyk, H.; Rabin, T. Chameleon Hashing and Signatures. Cryptology ePrint Archive. 1998. Available online: https://ia.cr/1998/010 (accessed on 17 November 2023).
- Kang, J.; Xiong, Z.; Niyato, D.; Xie, S.; Zhang, J. Incentive mechanism for reliable federated learning: A joint optimization approach to combining reputation and contract theory. IEEE Internet Things J. 2019, 6, 10700–10714. [Google Scholar] [CrossRef]
- Shen, M.; Duan, J.; Zhu, L.; Zhang, J.; Du, X.; Guizani, M. Blockchain-based incentives for secure and collaborative data sharing in multiple clouds. IEEE J. Sel. Areas Commun. 2020, 38, 1229–1241. [Google Scholar] [CrossRef]
- Huang, H.; Zhu, P.; Xiao, F.; Sun, X.; Huang, Q. A blockchain-based scheme for privacy-preserving and secure sharing of medical data. Comput. Secur. 2020, 99, 102010. [Google Scholar] [CrossRef]
Notations | Descriptions |
---|---|
The private–public key pair | |
The chameleon hash private–public key pair | |
Personal healthcare data in plaintext, ciphertext | |
Chameleon hash value | |
Symmetric encryption secret key | |
Storage address in CSP | |
License information of SGX | |
Asymmetric cryptography | |
Symmetric cryptography | |
Random number | |
Data update identification | |
Attestation of SGX | |
The training model of DU | |
() | Secure hash function (i.e., SHA256) |
Scheme | Feature | |||
---|---|---|---|---|
Security | Ownership | Traceability | Supports Incremental Updates | |
Shen [33] | × | √ | √ | × |
Huang [34] | √ | × | √ | × |
Li [26] | √ | √ | √ | × |
Wang [12] | √ | √ | √ | × |
Ours | √ | √ | √ | √ |
Smart Contract | Operations | Cost/Gas | Gas Price | Eth Fee (Ether) |
---|---|---|---|---|
dataUpload | Create | 853,386 | 20 gwei | 0.01706772 |
Invoke | 94,750 | 0.001895 | ||
accessControl | Create | 754,786 | 0.01509572 | |
45,492 | 0.00090984 | |||
30,360 | 0.0006072 | |||
keyAuthorization | Create | 553,387 | 0.01106774 | |
Invoke | 107,999 | 0.00215998 |
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
Wang, L.; Liu, X.; Shao, W.; Guan, C.; Huang, Q.; Xu, S.; Zhang, S. A Blockchain-Based Privacy-Preserving Healthcare Data Sharing Scheme for Incremental Updates. Symmetry 2024, 16, 89. https://doi.org/10.3390/sym16010089
Wang L, Liu X, Shao W, Guan C, Huang Q, Xu S, Zhang S. A Blockchain-Based Privacy-Preserving Healthcare Data Sharing Scheme for Incremental Updates. Symmetry. 2024; 16(1):89. https://doi.org/10.3390/sym16010089
Chicago/Turabian StyleWang, Lianhai, Xiaoqian Liu, Wei Shao, Chenxi Guan, Qihao Huang, Shujiang Xu, and Shuhui Zhang. 2024. "A Blockchain-Based Privacy-Preserving Healthcare Data Sharing Scheme for Incremental Updates" Symmetry 16, no. 1: 89. https://doi.org/10.3390/sym16010089
APA StyleWang, L., Liu, X., Shao, W., Guan, C., Huang, Q., Xu, S., & Zhang, S. (2024). A Blockchain-Based Privacy-Preserving Healthcare Data Sharing Scheme for Incremental Updates. Symmetry, 16(1), 89. https://doi.org/10.3390/sym16010089