TrustHealth: Enhancing eHealth Security with Blockchain and Trusted Execution Environments
Abstract
:1. Introduction
- A secure database design atop TrustZone hardware ensures the confidentiality and integrity of EHRs.
- We designed a TEE-empowered secure session key generation protocol to create a secure data-sharing channel between TEE and hospitals or healthcare institutions.
- We performed a thorough security and performance analysis, demonstrating that TrustHealth is both efficient and practical. Experimental results indicate that TrustHealth can securely handle a large volume of encrypted data flows at a rate of 5000 records per second.
2. Related Work
3. Preliminaries
3.1. Blockchain
3.2. ARM TrustZone
4. System Design
4.1. Threat Model
4.2. Design Overview
4.3. Construction of TrustHealth
5. Implementation
5.1. Blockchain Platform
- patientID: The unique identifier for the patient.
- create_Time: The timestamp when the patient record is created.
- status: The current status of the patient.
- EHR_Type: The type of electronic health record.
- EHR_Hash: A hash value associated with the patient’s EHR, used for data integrity verification.
- Hospitals: The list of hospitals associated with the patient’s care.
- patientID: The unique identifier for the patient.
- patientID: The unique identifier for the patient.
- update_Time: The timestamp when the patient’s record is updated.
- newStatus: The new status of the patient.
- EHR_Type: The type of electronic health record.
- newEHR_Hash: The new hash value associated with the patient’s EHR.
- Hospitals: The list of hospitals associated with the patient’s care.
Algorithm 1: Logical flow for smart contracts |
Definitions: ehrHashes: Map of patient identifiers to their HER hashes Operations: Initialize(): ehrHashes ← {} 1: function create 2: patient ← {patientID: patientID, create_Time: create_Time, status: status, EHR_Type: EHR_Type, EHR_Hash: EHR_Hash, Hospitals: Hospitals} 3: patientAsBytes ← JSON.Marshal(patient) 4: ctx.GetStub().PutState(patientID,patientAsBytes) 5: ehrHashes[patientID] ← EHR_Hash 6: Emit(“HashUpdated(“+patientID+”,”+EHR_Hash+”)”) 7: end function 8: function query 9: patientAsBytes ← ctx.GetStub().GetState(patientID) 10: if patientAsBytes = null then 11: Exit(“No patient found for “ + patientID) 12: patient ← JSON.Unmarshal(patientAsBytes) 13: return patient 14: end function 15: function update 16: patient ← QueryPatient(ctx, patientID) 17: patient.Hash ← newEHR_Hash 18: patient.update_Time ← update_Time 19: patient.EHR_Type ← EHR_Type 20: patient.Hospitals ← Hospitals 21: patientAsBytes ← JSON.Marshal(patient) 22: ctx.GetStub().PutState(patientID, patientAsBytes) 23: ehrHashes[patientID] ← newEHR_Hash 24: Emit(“HashUpdated(“+patientID+”,”+newEHR_Hash+”)”) 25: end function |
5.2. Secure Database Services
6. Performance Evaluation
6.1. Experiment Setup
- Data Confidentiality: Ensures that all sensitive healthcare data are protected during transmission and storage, preventing unauthorized access. This metric evaluates the system’s ability to keep data confidential.
- Data Integrity: Ensures that healthcare data are not tampered with. This metric evaluates the system’s ability to detect and prevent unauthorized modifications to the data.
- Resistance to Forgery and Tampering: Measures the system’s ability to prevent unauthorized entities from generating or modifying EHRs. This metric evaluates the system’s defenses against forgery and tampering attempts.
- Response Time: Measures the time taken for various operations (create, query, and update) to ensure the system remains responsive. This metric evaluates the system’s performance under different levels of load and concurrency.
- Communication Overhead: Calculates the time from sending a request to receiving a response, including connection setup and data transmission times. This metric evaluates the efficiency of data transmission in the network.
- Secure Database Performance: Analyzes the time overhead for database operations, including CRUD operations, to ensure operational efficiency. This metric evaluates the impact of data management on overall system performance.
6.2. Performance of Blockchain
6.3. Communication Overhead
6.4. TrustZone Latency
6.5. SQLCipher Benchmark
6.6. CRUD Performance
7. Security Evaluation
7.1. Discussion
7.2. Security Analysis
7.3. Limitations
8. Conclusions and Future Work
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- De Aguiar, E.J.; Faiçal, B.S.; Krishnamachari, B.; Ueyama, J. A survey of blockchain-based strategies for healthcare. ACM Comput. Surv. 2020, 53, 1–27. [Google Scholar] [CrossRef]
- Bian, J.; Yang, S.; Xiong, H.; Wang, L.; Fu, Y.; Sun, Z.; Guo, Z. CRLEDD: Regularized causalities learning for early detection of diseases using electronic health record (EHR) data. IEEE Trans. Emerg. Top. Comput. Intell. 2021, 5, 541–553. [Google Scholar] [CrossRef]
- Cao, S.; Zhang, G.; Liu, P.; Zhang, X.; Neri, F. Cloud-assisted secure eHealth systems for tamper-proofing EHR via blockchain. Inf. Sci. 2019, 485, 427–440. [Google Scholar] [CrossRef]
- Yang, J.J.; Li, J.Q.; Niu, Y. A hybrid solution for privacy preserving medical data sharing in the cloud environment. Future Gener. Comput. Syst. 2015, 43–44, 74–86. [Google Scholar] [CrossRef]
- Zhang, X.; Wang, H.; Xu, C. Identity-based key-exposure resilient cloud storage public auditing scheme from lattices. Inf. Sci. 2019, 472, 223–234. [Google Scholar] [CrossRef]
- Campanile, L.; Iacono, M.; Marulli, F.; Mastroianni, M. Designing a GDPR compliant blockchain-based IoV distributed information tracking system. Inf. Process. Manag. 2021, 58, 102511. [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]
- Armknecht, F.; Bohli, J.M.; Karame, G.O.; Liu, Z.; Reuter, C.A. Outsourced proofs of retrievability. In Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, Scottsdale, AZ, USA, 3–4 November 2014; pp. 831–843. [Google Scholar]
- Liu, G.; Yan, Z.; Feng, W.; Jing, X.; Chen, Y.; Atiquzzaman, M. SeDID: An SGX-enabled decentralized intrusion detection framework for network trust evaluation. Inf. Fusion 2021, 70, 100–114. [Google Scholar] [CrossRef]
- Zhao, Q.; Chen, S.; Liu, Z.; Baker, T.; Zhang, Y. Blockchain-based privacy-preserving remote data integrity checking scheme for IoT information systems. Inf. Process. Manag. 2020, 57, 102355. [Google Scholar] [CrossRef]
- Li, M.; Fang, Y.; Tang, Z.; Onuorah, C.; Xia, J.; Del Ser, J.; Walsh, S.; Yang, G. Explainable COVID-19 infections identification and delineation using calibrated pseudo labels. IEEE Trans. Emerg. Top. Comput. Intell. 2023, 7, 26–35. [Google Scholar] [CrossRef]
- Xu, J.; Wang, C.; Jia, X. A survey of blockchain consensus protocols. ACM Comput. Surv. 2023, 55, 1–35. [Google Scholar] [CrossRef]
- Trusted Execution Environment. Available online: https://en.wikipedia.org/wiki/Trusted_execution_environment (accessed on 15 May 2024).
- Sengupta, J.; Ruj, S.; Bit, S.D. A comprehensive survey on attacks, security issues and blockchain solutions for IoT and IIoT. J. Netw. Comput. Appl. 2020, 149, 102481. [Google Scholar] [CrossRef]
- Berdik, D.; Otoum, S.; Schmidt, N.; Porter, D.; Jararweh, Y. A survey on blockchain for information systems management and security. Inf. Process. Manag. 2021, 58, 102397. [Google Scholar] [CrossRef]
- Zou, R.; Lv, X.; Zhao, J. SPChain: Blockchain-based medical data sharing and privacy-preserving eHealth system. Inf. Process. Manag. 2021, 58, 102604. [Google Scholar] [CrossRef]
- Bernabé-Rodríguez, J.; Garreta, A.; Lage, O. A decentralized private data marketplace using blockchain and secure multi-party computation. ACM Trans. Priv. Secur. 2024, 27, 1–29. [Google Scholar] [CrossRef]
- Mandarino, V.; Pappalardo, G.; Tramontana, E. A blockchain-based electronic health record (EHR) system for edge computing enhancing security and cost efficiency. Computers 2024, 13, 132. [Google Scholar] [CrossRef]
- OP-TEE. Available online: https://op-tee.org (accessed on 16 May 2024).
- Boneh, D.; Franklin, M. Identity-based encryption from the Weil pairing. SIAM J. Comput. 2003, 32, 586–615. [Google Scholar] [CrossRef]
- Du, X.; Guizani, M.; Xiao, Y.; Chen, H. Transactions papers a routing-driven elliptic curve cryptography based key management scheme for heterogeneous sensor networks. IEEE Trans. Wirel. Commun. 2009, 8, 1223–1229. [Google Scholar] [CrossRef]
- Jiang, L.; Li, T.; Li, X.; Atiquzzaman, M.; Ahmad, M.; Wang, X. Anonymous communication via anonymous identity-based encryption and its application in IoT. Wirel. Commun. Mob. Comput. 2018, 2018, 6809796. [Google Scholar] [CrossRef]
- Li, J.; Chen, X.; Li, M.; Li, J.; Lee, P.P.; Lou, W. Secure deduplication with efficient and reliable convergent key management. IEEE Trans. Parallel Distrib. Syst. 2014, 25, 1615–1625. [Google Scholar] [CrossRef]
- Boneh, D.; Lynn, B.; Shacham, H. Short signatures from the Weil pairing. J. Cryptol. 2004, 17, 297–319. [Google Scholar] [CrossRef]
- Li, T.; Chen, W.; Tang, Y.; Yan, H. A homomorphic network coding signature scheme for multiple sources and its application in IoT. Secur. Commun. Netw. 2018, 2018, 9641273. [Google Scholar] [CrossRef]
- Bellare, M.; Kilian, J.; Rogaway, P. The security of the cipher block chaining message authentication code. J. Comput. Syst. Sci. 2000, 61, 362–399. [Google Scholar] [CrossRef]
- Zhou, T.; Shen, J.; He, D.; Vijayakumar, P.; Kumar, N. Human-in-the-Loop-Aided privacy-preserving scheme for smart healthcare. IEEE Trans. Emerg. Top. Comput. Intell. 2022, 6, 6–15. [Google Scholar] [CrossRef]
- Li, J.; Wu, J.; Jiang, G.; Srikanthan, T. Blockchain-based public auditing for big data in cloud storage. Inf. Process. Manag. 2020, 57, 102382. [Google Scholar] [CrossRef]
- Zhang, Y.; Xu, C.; Li, H.; Yang, K.; Zhou, J.; Lin, X. HealthDep: An efficient and secure deduplication scheme for cloud-assisted eHealth systems. IEEE Trans. Ind. Inform. 2018, 14, 4101–4112. [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]
- Fan, K.; Wang, S.; Ren, Y.; Li, H.; Yang, Y. Medblock: Efficient and secure medical data sharing via blockchain. J. Med. Syst. 2018, 42, 136. [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]
- 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]
- Jiang, W.; Li, E.; Zhou, W.; Yang, Y.; Luo, T. IoT access control model based on blockchain and trusted execution environment. Processes 2023, 11, 723. [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]
- Lin, S.Y.; Zhang, L.; Li, J.; Ji, L.L.; Sun, Y. A survey of application research based on blockchain smart contract. Wirel. Netw. 2022, 28, 635–690. [Google Scholar] [CrossRef]
- Muñoz, A.; Rios, R.; Román, R.; López, J. A survey on the (in) security of trusted execution environments. Comput. Secur. 2023, 129, 103180. [Google Scholar] [CrossRef]
- OP-TEE Documentation. Available online: https://optee.readthedocs.io/en/latest/ (accessed on 16 May 2024).
- Secure Storage. Available online: https://optee.readthedocs.io/en/latest/architecture/secure_storage.html (accessed on 16 May 2024).
- Azzedin, F.; Ghaleb, M. Internet-of-things and information fusion: Trust perspective survey. Sensors 2019, 19, 1929. [Google Scholar] [CrossRef] [PubMed]
- Fortino, G.; Fotia, L.; Messina, F.; Rosaci, D.; Sarné, G.M.L. Trust and reputation in the internet of things: State-of-the-art and research challenges. IEEE Access 2020, 8, 60117–60125. [Google Scholar] [CrossRef]
- Martin, A.; Lian, C.; Gregor, F.; Krahn, R.; Schiavoni, V.; Felber, P.; Fetzer, C. ADAM-CS: Advanced asynchronous monotonic counter service. In Proceedings of the 2021 51st Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), Taipei, Taiwan, 21–24 June 2021; pp. 426–437. [Google Scholar]
- Ryan, K. Hardware-backed heist: Extracting ECDSA keys from Qualcomm’s TrustZone. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, London, UK, 11–15 November 2019; pp. 181–194. [Google Scholar]
- Qiu, P.; Wang, D.; Lyu, Y.; Qu, G. Voltjockey: Breaching TrustZone by software-controlled voltage manipulation over multi-core frequencies. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, London, UK, 11–15 November 2019; pp. 195–209. [Google Scholar]
- Zhang, N.; Sun, K.; Shands, D.; Lou, W.; Hou, Y.T. TruSense: Information leakage from TrustZone. In Proceedings of the IEEE INFOCOM 2018-IEEE Conference on Computer Communications, Honolulu, HI, USA, 16–19 April 2018; pp. 1097–1105. [Google Scholar]
- Hyperledger Fabric SDK-Go. Available online: https://github.com/hyperledger/fabric-sdk-go (accessed on 16 May 2024).
- Libtomcrypt. Available online: https://optee.readthedocs.io/en/latest/architecture/crypto.html#libtomcrypt (accessed on 16 May 2024).
- Libmbedtls. Available online: https://optee.readthedocs.io/en/latest/architecture/libraries.html#libmbedtls (accessed on 16 May 2024).
- Androulaki, E.; Barger, A.; Bortnikov, V.; Cachin, C.; Christidis, K.; De Caro, A.; Yellick, J. Hyperledger fabric: A distributed operating system for permissioned blockchains. In Proceedings of the 13 EuroSys Conference, New York, NY, USA, 23–26 April 2018; pp. 1–15. [Google Scholar]
- Battisti, J.H.F.; Batista, V.E.; Koslovski, G.P.; Pillon, M.A.; Miers, C.C.; Marques, M.A.; Simplício, M.; Kreutz, D. Performance analysis of the Raft consensus algorithm on Hyperledger Fabric and Ethereum on cloud. In Proceedings of the 2023 IEEE International Conference on Cloud Computing Technology and Science (CloudCom), Naples, Italy, 4–6 December 2023; pp. 155–160. [Google Scholar]
- SQLCipher. Available online: https://github.com/sqlcipher/sqlcipher/tree/master (accessed on 15 May 2024).
- SQLite. Available online: https://en.wikipedia.org/wiki/SQLite (accessed on 16 May 2024).
- Http_load. Available online: https://acme.com/software/http_load/ (accessed on 15 May 2024).
- Ménétrey, J.; Pasin, M.; Felber, P.; Schiavoni, V. Watz: A trusted WebAssembly runtime environment with remote attestation for TrustZone. In Proceedings of the 2022 IEEE 42nd International Conference on Distributed Computing Systems (ICDCS), Bologna, Italy, 10–13 July 2022; pp. 1177–1189. [Google Scholar]
- Speedtest1. Available online: https://github.com/sqlcipher/sqlcipher/blob/master/test/speedtest1.c (accessed on 16 May 2024).
- Singh, J.; Cobbe, J.; Quoc, D.L.; Tarkhani, Z. Enclaves in the clouds: Legal considerations and broader implications. Commun. ACM 2021, 64, 78–114. [Google Scholar] [CrossRef]
Existing Work | Blockchain Types | Platform | Smart Contract | Storages |
---|---|---|---|---|
TP-EHR [3] | Public | Ethereum | Authority management | On-chain: hashes, Off-chain: EHR data |
EdgeHR [18] | Public | Ethereum | Access control, Data manage | On-chain: EHR hashes, Off-chain: EHR data |
MeDShare [30] | Permissioned | N/A | Data provenance, auditing, and control | On-chain: data access log, Off-chain: medical data |
MedBlock [31] | Permissioned | N/A | EMR access and inspection | On-chain: EHR summaries, Off-chain: medical data |
Huang et al. [32] | Permissioned | Hyperledger Fabric | Data sharing and verification | On-chain: proofs, hashes, Off-chain: medical data |
MedRec [33] | Permissioned | Ethereum | Access control, data sharing, data integrity | On-chain: hashes, metadata, Off-chain: medical records |
Jiang et al. [34] | Public/Permissioned | Ethereum | Fine-grained access control, auditability | On-chain: access control policies, Off-chain: IoT data |
Type | Public Blockchain | Consortium Blockchain | Private Blockchain |
---|---|---|---|
Permission Type | Non-permissioned | Permissioned | Permissioned |
Participants | Anyone | Multiple organizations | Single organization |
Consensus | PoW, PoS, DPoS | PBFT, Raft, PoA | PoA, PBFT |
Efficiency | Low | High | High |
Security | High, widely distributed nodes, high decentralization | Medium, security ensured by multiple entities | Low, security relies on a single entity |
Examples | Bitcoin, Ethereum | Hyperledger, Fisco Bcos | Multichain, Blockstack |
Functions | Enforce Capability | LoC |
---|---|---|
File | Hardware protection, including read, write, and related file operations. | 498 |
Directory | Hardware protection, including directory creation, directory deletion, and related operations. | 164 |
Permission | Hardware protection, checking the accessibility of files, setting file permissions and masks. | 103 |
Synchronization | Hardware protection, flushing file data from memory to disk. | 20 |
Data Size (MB) | Time (ms) |
---|---|
4 | 9 |
16 | 36 |
64 | 144 |
128 | 287 |
256 | 573 |
512 | 1143 |
Algorithm | Query |
---|---|
AES-CBC | INSERT INTO test1 (id, t1, t2, t3) VALUES (?1, ?2, ?3, ?4) |
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
Li, J.; Luo, X.; Lei, H. TrustHealth: Enhancing eHealth Security with Blockchain and Trusted Execution Environments. Electronics 2024, 13, 2425. https://doi.org/10.3390/electronics13122425
Li J, Luo X, Lei H. TrustHealth: Enhancing eHealth Security with Blockchain and Trusted Execution Environments. Electronics. 2024; 13(12):2425. https://doi.org/10.3390/electronics13122425
Chicago/Turabian StyleLi, Jun, Xinman Luo, and Hong Lei. 2024. "TrustHealth: Enhancing eHealth Security with Blockchain and Trusted Execution Environments" Electronics 13, no. 12: 2425. https://doi.org/10.3390/electronics13122425
APA StyleLi, J., Luo, X., & Lei, H. (2024). TrustHealth: Enhancing eHealth Security with Blockchain and Trusted Execution Environments. Electronics, 13(12), 2425. https://doi.org/10.3390/electronics13122425