A Blockchain-Based Secure Inter-Hospital EMR Sharing System
Abstract
:1. Introduction
Background
2. Preliminary and Security Requirements
2.1. Preliminary
2.1.1. BAN Logic Model
: | trusts , or is qualified to trust . |
: | catches sight of . can review and duplicate , when somebody sends a message that contains . |
: | said before. sometimes sent a message that included . |
: | has jurisdiction over . It should be trusted that is an authority on . |
: | This indicates that combined with . |
: | is the latest, which means has never been sent previously. |
: | The shared key is used for communication by and . |
: | Only , , and their trusted subjects know the secret . |
2.1.2. Elliptic Curve Group
2.1.3. Smart Contract
2.2. Security Requirements
2.2.1. Mutual Authentication
2.2.2. Data Integrity
2.2.3. User Untraceability
2.2.4. Resisting Replay Attacks
2.2.5. Forward and Backward Secrecy
2.2.6. Non-Repudiation
3. The Proposed Scheme
3.1. System Architecture
- (1)
- Blockchain Center: The blockchain center belongs to the government medical institution. The blockchain center manages all personal mobile devices and hospital medical devices. All patients and hospitals must register in the blockchain center with their mobile devices and hospital medical devices, then the patient and the hospital can authenticate each other.
- (2)
- Patient: The patient carries a personal mobile device. The personal mobile device stores verification messages about the identity of the patient. After this, when the patient visits the hospital to seek medical services, the hospital and the patient can achieve mutual authentication through the personal mobile device. Thus, the personal mobile device can also hold the medical index of the hospital that was visited previously and will be provided to other hospitals in the future as an index for medical records.
- (3)
- Hospital A: The doctor uses a medical device in hospital A. When the patient visits hospital A with a symptom, hospital A and the patient will verify one another’s identity first. After this, hospital A will diagnose the patient. Hospital A will store medical records in the server of hospital A, and hospital A will also inform the patient about the results. The patient keeps the diagnostic results and medical index in his/her mobile device.
- (4)
- Hospital B: The doctor uses a medical device in hospital B. When the patient goes to hospital B to extend treatment for a symptom that was previously diagnosed in hospital A, hospital B and the patient will also verify one another’s identity first. After this, hospital B will obtain the medical index of hospital A from the personal mobile device of the patient. Then, hospital B will request the patient’s medical records from hospital A. After diagnosis, hospital B will store medical records in the server of hospital B, and hospital B will also inform the patient about the results. The patient keeps the diagnostic results and medical index in his/her mobile device.
- All personal mobile devices carried by patients and all medical devices used by hospital A and hospital B must be registered in the blockchain center through a secure channel. The patient, hospital A, and hospital B send their universally unique IDs to the blockchain center. The blockchain center returns information that includes parameters calculated by elliptic curve group technology.
- When the patient carries his/her mobile device to hospital A to seek medical services, hospital A and the patient must authenticate one another’s identity first. After mutual authentication between the patient and hospital A, the doctor of hospital A diagnoses the patient. After diagnosis, the doctor of hospital A stores the medical records of the patient in the server of hospital A, and the doctor of hospital A will also inform the patient about the results. The patient keeps the diagnostic results and medical index in his/her mobile device.
- When the patient carries his/her mobile device and visits hospital B for extended treatment of a symptom that was previously diagnosed in hospital A, hospital B and the patient will also verify one another’s identity first. After mutual authentication between the patient and hospital B, the doctor of hospital B obtains the medical index of hospital A from the personal mobile device of the patient. Then, the doctor of hospital B requests the medical records of the patient from hospital A. After the doctor of hospital B obtains the encrypted medical records from hospital A and performs a diagnosis, the doctor of hospital B stores the medical records of the patient in the server of hospital B. The doctor of hospital B also informs the patient about the results. The patient keeps the diagnostic results and medical index in his/her mobile device.
3.2. System Initialization Phase
- Step 1:
- The blockchain center chooses a -bit prime, , and determines the tuple of the elliptic curve group .
- Step 2:
- The blockchain center then chooses as a secret key and computes
- Step 3:
- Finally, the blockchain center chooses a hash function and then publishes to all patients with personal mobile devices and hospitals with medical devices.
3.3. Smart Contract Initialization
struct patient information smart contract ptinf{ string patient id; string patient detail; mapping medical record; } struct hospital A information smart contract hainf{ string hospital A id; string hospital A detail; } | struct hospital B information smart contract hbinf{ string hospital B id; string hospital B detail; } struct medical record smart contract mrinf{ string diagnosis id; string diagnosis detail; } |
3.4. Patient Registration Phase
- Step 1:
- The patient chooses his/her universally unique identity, , and sends it to the blockchain center.
- Step 2:
- The blockchain center chooses a random number, , and calculatesIf the identity is valid, the blockchain center calls the smart contract ptins as follows:
function patient insert smart contract ptins(
string patient id, string patient detail,
mapping medical record) {
count ++;
patient id. count = id;patient detail. count = detail;
mapping medical record = null;
}
string patient keypairs;and it then sends to the patient. - Step 3:
- The patient verifiesIf the verification is passed, then the patient stores in his/her mobile device.
3.5. Hospital Registration Phase
- Step 1:
- Hospital A chooses a unique identity, , and sends it to the blockchain center.
- Step 2:
- The blockchain center chooses a random number, , and calculatesIf the identity is valid, the blockchain center calls the smart contract hains as follows:
function hospital A insert smart contract hains(
string hospital A id, string hospital A detail) {
count ++;
hospital A id. count = id;hospital A detail. count = detail;
}
string hospital A keypairs;and it then sends to hospital A. - Step 3:
- Hospital A verifiesIf the verification passes, then hospital A stores in the medical device.
- Step 1:
- Hospital B chooses a unique identity, , and sends it to the blockchain center.
- Step 2:
- The blockchain center chooses a random number, , and calculatesIf the identity is valid, the blockchain center calls the smart contract hbins as follows:
function hospital B insert smart contract hbins(
string hospital B id, string hospital B detail) {
count ++;
hospital B id. count = id;hospital B detail. count = detail;
}
string hospital B keypairs;and it then sends to hospital B. - Step 3:
- Hospital B verifiesIf the verification passes, then hospital B stores in the medical device.
3.6. Initial Treatment Authentication and Communication Phase
- Step 1:
- The patient chooses a random number, , calculated by
- Step 2:
- Hospital A chooses a random number, , calculated byHospital A then calculates
- Step 3:
- The patient calculatesThe patient then verifies
function hospital A check smart contract hachk(
string hospital A id,
string hospital A detail) {return hospital A id. exist;
return hospital A detail. exist;
}The patient then calculates - Step 4:
- Hospital A verifies
return patient id. exist;
return patient detail. exist;
mapping medical record. exist;
}function patient check smart contract ptchk(
string patient id,
string patient detail,
mapping medical record) {Hospital A then decrypts the received messageIf the identity is valid, the hospital A calls the smart contract mrins and ptins as follows:function patient insert smart contract ptins(
string patient id, string patient detail,
mapping medical record) {
mapping medical record = medical record;
}
sign string hospital A key (
medical record);function medical record insert smart contract mrins(
string diagnosis id, string diagnosis detail) {
count ++;
diagnosis id. count = id;
diagnosis detail. count = detail;
}and sends to the patient. - Step 5:
- The patient decrypts the received message,
3.7. Inter-Hospital Authentication and Communication Phase
- Step 1:
- The patient chooses a random number, , calculated by
- Step 2:
- Hospital B chooses a random number, , calculated byHospital B then calculates
- Step 3:
- The patient calculatesThe patient then verifies
function hospital B check smart contract hbchk(
string hospital B id,
string hospital B detail) {return hospital B id. exist;
return hospital B detail. exist;
}The patient then calculates - Step 4:
- Hospital B verifies
function patient check smart contract ptchk(
string patient id,
string patient detail,
mapping medical record) {return patient id. exist;
return patient detail. exist;
mapping medical record. exist;
}Hospital B then decrypts the received message - Step 5:
- Hospital B chooses a random number, , calculated by
- Step 6:
- Hospital A chooses a random number, , calculated byHospital A then calculates
- Step 7:
- Hospital B calculatesHospital B then verifies
- Step 8:
- Hospital A verifiesHospital A then decrypts the received message
- Step 9:
- Hospital B decrypts the received messageIf the verification passes, and hospital B calls the smart contract mrchk as follows:
string diagnosis id,
string diagnosis detail) {
return diagnosis id. exist;
return diagnosis detail. exist;
}verify string hospital A key (
hospital A information,
patient information);
function medical record check smart contract mrchk(Hospital B then receives the encrypted medical records of the patient from hospital A. - Step 10:
- After the diagnosis of the patient, hospital B stores the medical records of the patient in the server and generates the encrypted basic inspection reportIf the identity is valid, hospital B calls the smart contract mrins and ptins as follows:
function patient insert smart contract ptins(
string patient id, string patient detail,
mapping medical record) {
mapping medical record = medical record;
}
sign string hospital B key (
medical record);function medical record insert smart contract mrins(
string diagnosis id, string diagnosis detail) {
count ++;
diagnosis id. count = id;
diagnosis detail. count = detail;
}and sends to the patient. - Step 11:
- The patient decrypts the received message,
4. Security Analysis
4.1. Mutual Authentication
G1: | |
G2: | |
G3: | |
G4: | |
G5: | |
G6: | |
G7: | |
G8: |
M1: | |
M2: |
A1: | |
A2: | |
A3: | |
A4: | |
A5: | |
A6: | |
A7: | |
A8: |
- Hospital A, HA, authenticates the patient, P.
We derive the following statement by M1 and the seeing rule: (Statement 1) We derive the following statement by A2 and the freshness rule: (Statement 2) We derive the following statement by (Statement 1), A4, and the message meaning rule: (Statement 3) We derive the following statement by (Statement 2), (Statement 3), and the nonce verification rule: (Statement 4) We derive the following statement by (Statement 4) and the belief rule: (Statement 5) We derive the following statement by (Statement 5), A6, and the jurisdiction rule: (Statement 6) We derive the following statement by (Statement 6) and the belief rule: (Statement 7) We derive the following statement by (Statement 7), A8, and the jurisdiction rule: (Statement 8) - The patient P authenticates the hospital A HA.
We derive the following statement by M2 and the seeing rule: (Statement 9) We derive the following statement by A1 and the freshness rule: (Statement 10) We derive the following statement by (Statement 9), A3, and the message meaning rule: (Statement 11) We derive the following statement by (Statement 10), (Statement 11), and the nonce verification rule: (Statement 12) We derive the following statement by (Statement 12) and the belief rule: (Statement 13) We derive the following statement by (Statement 13), A5, and the jurisdiction rule: (Statement 14) We derive the following statement by (Statement 14) and the belief rule: (Statement 15) We derive the following statement by (Statement 15), A7, and the jurisdiction rule: (Statement 16)
G9: | |
G10: | |
G11: | |
G12: | |
G13: | |
G14: | |
G15: | |
G16: | |
G17: | |
G18: | |
G19: | |
G20: | |
G21: | |
G22: | |
G23: | |
G24: |
M3: | |
M4: | |
M5: | |
M6: |
A9: | |
A10: | |
A11: | |
A12: | |
A13: | |
A14: | |
A15: | |
A16: | |
A17: | |
A18: | |
A19: | |
A20: | |
A21: | |
A22: | |
A23: | |
A24: |
- c.
- Hospital B, HB, authenticates the patient, P.
We derive the following statement by M3 and the seeing rule: (Statement 17) We derive the following statement by A10 and the freshness rule: (Statement 18) We derive the following statement by (Statement 17), A12, and the message meaning rule: (Statement 19) We derive the following statement by (Statement 18), (Statement 19), and the nonce verification rule: (Statement 20) We derive the following statement by (Statement 20) and the belief rule: (Statement 21) We derive the following statement by (Statement 21), A14, and the jurisdiction rule: (Statement 22) We derive the following statement by (Statement 22) and the belief rule: (Statement 23) We derive the following statement by (Statement 23), A16, and the jurisdiction rule: (Statement 24) - d.
- The patient P authenticates hospital B HB.
We derive the following statement by M4 and the seeing rule: (Statement 25) We derive the following statement by A9 and the freshness rule: (Statement 26) We derive the following statement by (Statement 25), A11, and the message meaning rule: (Statement 27) We derive the following statement by (Statement 26), (Statement 27), and the nonce verification rule: (Statement 28) We derive the following statement by (Statement 28) and the belief rule: (Statement 29) We derive the following statement by (Statement 29), A13, and the jurisdiction rule: (Statement 30) We derive the following statement by (Statement 30) and the belief rule: (Statement 31) We derive the following statement by (Statement 31), A15, and the jurisdiction rule: (Statement 32) - e.
- The hospital A HA authenticates the hospital B HB.
We derive the following statement by M5 and the seeing rule: (Statement 33) We derive the following statement by A18 and the freshness rule: (Statement 34) We derive the following statement by (Statement 33), A20, and the message meaning rule: (Statement 35) We derive the following statement by (Statement 34), (Statement 35), and the nonce verification rule: (Statement 36) We derive the following statement by (Statement 36) and the belief rule: (Statement 37) We derive the following statement by (Statement 37), A22, and the jurisdiction rule: (Statement 38) We derive the following statement by (Statement 38) and the belief rule: (Statement 39) We derive the following statement by (Statement 39), A24, and the jurisdiction rule: (Statement 40) - f.
- The hospital B HB authenticates the hospital A HA.
We derive the following statement by M6 and the seeing rule: (Statement 41) We derive the following statement by A17 and the freshness rule: (Statement 42) We derive the following statement by (Statement 41), A19, and the message meaning rule: (Statement 43) We derive the following statement by (Statement 42), (Statement 43), and the nonce verification rule: (Statement 44) We derive the following statement by (Statement 44) and the belief rule: (Statement 45) We derive the following statement by (Statement 45), A21, and the jurisdiction rule: (Statement 46) We derive the following statement by (Statement 46) and the belief rule: (Statement 47) We derive the following statement by (Statement 47), A23, and the jurisdiction rule: (Statement 48)
- Scenario:
- A malicious attacker uses an illegal hospital medical device to obtain a patient’s medical record from a legal patient’s mobile device.
- Analysis:
- The attacker will not succeed because the illegal hospital medical device has not been registered to the blockchain server and thus cannot calculate the correct session key. Thus, the attack will fail when the legal patient mobile device attempts to authenticate the illegal hospital medical device. In the proposed scheme, the attacker cannot achieve its purpose using an illegal hospital medical device. In the same scenario, the proposed scheme can also defend against a malicious attack using an illegal patient mobile device to send fake information to a legal hospital medical device, because the illegal patient mobile device has not been registered to the blockchain server and thus cannot calculate the correct session key. Thus, the attack will fail when the legal hospital medical device attempts to authenticate the illegal patient mobile device.
4.2. Data Integrity
- Scenario:
- A malicious attacker intercepts the information transmitted from hospital A to the patient and sends a modified information to the patient.
- Analysis:
- The attacker will not succeed because the legal patient will use
4.3. User Untraceability
4.4. Resisting Replay Attack
4.5. Forward and Backward Secrecy
4.6. Non-Repudiation
4.7. Computation Cost
4.8. Communication Cost
4.9. Functionality Comparison
5. Conclusions
Author Contributions
Funding
Conflicts of Interest
Abbreviations
A k-bit prime | |
A prime finite field | |
An elliptic curve over | |
A cyclic additive group of composite order | |
A generator for the group | |
A secret key of the system | |
A public key of the system, | |
x’s public key and private key, issued by the blockchain center | |
one-way hash function | |
x’s identity, like a universally unique ID code | |
Random numbers of the elliptic curve group | |
x’s elliptic curve group signature | |
A session key established by x and y | |
Use a session key x to encrypt the message m | |
Use a session key x to decrypt the message m | |
Use x’s private key to sign the message m | |
Use x’s public key to verify the message m | |
The ith cyphertext | |
The signed message for parties x and y | |
x’s verified message | |
Determines if A is equal to B | |
The information between the patient and the hospital | |
The medical record established by a doctor |
References
- Chiuchisan, I.; Chiuchisan, I.; Dimian, M. Internet of Things for e-Health: An approach to medical applications. In Proceedings of the 2015 International Workshop on Computational Intelligence for Multimedia Understanding (IWCIM), Prague, Czech, 29–30 October 2015; pp. 1–5. [Google Scholar]
- Moosavi, S.R.; Gia, T.N.; Nigussie, E.; Rahmani, A.M.; Virtanen, S.; Tenhunen, H.; Isoaho, J. End-to-end security scheme for mobility enabled healthcare Internet of Things. Future Gener. Comput. Syst. 2016, 64, 108–124. [Google Scholar] [CrossRef]
- Azeez, N.A.; Van Der Vyver, C. Security and privacy issues in e-health cloud-based system: A comprehensive content analysis. Egypt. Inform. J. 2019, 20, 97–108. [Google Scholar] [CrossRef]
- Li, C.-T.; Shih, D.-H.; Wang, C.-C. Cloud-assisted mutual authentication and privacy preservation protocol for telecare medical information systems. Comput. Methods Programs Biomed. 2018, 157, 191–203. [Google Scholar] [CrossRef]
- Iribarren, S.J.; Brown, W.; Giguere, R.; Stone, P.; Schnall, R.; Staggers, N.; Carballo-Diéguez, A. Scoping review and evaluation of SMS/text messaging platforms for mHealth projects or clinical interventions. Int. J. Med. Inform. 2017, 101, 28–40. [Google Scholar] [CrossRef] [Green Version]
- Qi, M.; Chen, J.; Chen, Y. A secure biometrics-based authentication key exchange protocol for multi-server TMIS using ECC. Comput. Methods Programs Biomed. 2018, 164, 101–109. [Google Scholar] [CrossRef] [PubMed]
- Puthal, D.; Ranjan, R.; Nanda, A.; Nanda, P.; Jayaraman, P.P.; Zomaya, A.Y. Secure authentication and load balancing of distributed edge datacenters. J. Parallel Distrib. Comput. 2019, 124, 60–69. [Google Scholar] [CrossRef]
- Mohit, P.; Amin, R.; Biswas, G.P. Design of authentication protocol for wireless sensor network-based smart vehicular system. Veh. Commun. 2017, 9, 64–71. [Google Scholar] [CrossRef]
- Wazid, M.; Das, A.K.; Kumari, S.; Li, X.; Wu, F. Design of an efficient and provably secure anonymity preserving three-factor user authentication and key agreement scheme for TMIS. Secur. Commun. Netw. 2016, 9, 1983–2001. [Google Scholar] [CrossRef] [Green Version]
- Moon, A.H.; Iqbal, U.; Bhat, G.M. Implementation of Node Authentication for WSN Using Hash Chains. Procedia Comput. Sci. 2016, 89, 90–98. [Google Scholar] [CrossRef] [Green Version]
- Khemissa, H.; Tandjaoui, D. A Lightweight Authentication Scheme for E-Health Applications in the Context of Internet of Things. In Proceedings of the 2015 9th International Conference on Next Generation Mobile Applications, Services and Technologies, Cambridge, UK, 9–11 September 2015; pp. 90–95. [Google Scholar]
- Yang, Y.; Ma, M. Conjunctive Keyword Search with Designated Tester and Timing Enabled Proxy Re-encryption Function for E-health Clouds. IEEE Trans. Inf. Forensics Secur. 2015, 11, 746–759. [Google Scholar] [CrossRef]
- Roy, S.; Das, A.K.; Chatterjee, S.; Kumar, N.; Chattopadhyay, S.; Rodrigues, J.J.P.C. Provably Secure Fine-Grained Data Access Control Over Multiple Cloud Servers in Mobile Cloud Computing Based Healthcare Applications. IEEE Trans. Ind. Inform. 2018, 15, 457–468. [Google Scholar] [CrossRef]
- Wazid, M.; Das, A.K.; Kumari, S.; Li, X.; Wu, F. Provably secure biometric-based user authentication and key agreement scheme in cloud computing. Secur. Commun. Netw. 2016, 9, 4103–4119. [Google Scholar] [CrossRef] [Green Version]
- Sureshkumar, V.; Amin, R.; Vijaykumar, V.; Rajasekar, S. Robust secure communication protocol for smart healthcare system with FPGA implementation. Future Gener. Comput. Syst. 2019, 100, 938–951. [Google Scholar] [CrossRef]
- Roy, S.; Chatterjee, S.; Das, A.K.; Chattopadhyay, S.; Kumari, S.; Jo, M. Chaotic Map-Based Anonymous User Authentication Scheme with User Biometrics and Fuzzy Extractor for Crowdsourcing Internet of Things. IEEE Internet Things J. 2017, 5, 2884–2895. [Google Scholar] [CrossRef]
- Banerjee, S.; Odelu, V.; Das, A.K.; Srinivas, J.; Kumar, N.; Chattopadhyay, S.; Choo, K.-K.R. A Provably Secure and Lightweight Anonymous User Authenticated Session Key Exchange Scheme for Internet of Things Deployment. IEEE Internet Things J. 2019, 6, 8739–8752. [Google Scholar] [CrossRef]
- Shuai, M.; Yu, N.; Wang, H.-X.; Xiong, L. Anonymous authentication scheme for smart home environment with provable security. Comput. Secur. 2019, 86, 132–146. [Google Scholar] [CrossRef]
- Islam, S.H.; Vijayakumar, P.; Bhuiyan, M.Z.A.; Amin, R.; Balusamy, B. A Provably Secure Three-Factor Session Initiation Protocol for Multimedia Big Data Communications. IEEE Internet Things J. 2017, 5, 3408–3418. [Google Scholar] [CrossRef]
- Song, R. Advanced smart card based password authentication protocol. Comput. Stand. Interfaces 2010, 32, 321–325. [Google Scholar] [CrossRef]
- Abbas, A.; Khan, S.U. A Review on the State-of-the-Art Privacy-Preserving Approaches in the e-Health Clouds. IEEE J. Biomed. Health Inform. 2014, 18, 1431–1441. [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, 74–86. [Google Scholar] [CrossRef]
- Soni, P.; Pal, A.K.; Islam, S.H. An improved three-factor authentication scheme for patient monitoring using WSN in remote health-care system. Comput. Methods Programs Biomed. 2019, 182, 105054. [Google Scholar] [CrossRef] [PubMed]
- Masdari, M.; Ahmadzadeh, S. A survey and taxonomy of the authentication schemes in Telecare Medicine Information Systems. J. Netw. Comput. Appl. 2017, 87, 1–19. [Google Scholar] [CrossRef]
- Amin, R.; Khan, M.K.; Islam, S.H.; Biswas, G.P.; Kumar, N. A robust and anonymous patient monitoring system using wireless medical sensor networks. Future Gener. Comput. Syst. 2018, 80, 483–495. [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]
- Tanwar, S.; Parekh, K.; Evans, R.D. Blockchain-based electronic healthcare record system for healthcare 4.0 applications. J. Inf. Secur. Appl. 2020, 50, 102407. [Google Scholar] [CrossRef]
- Lin, B.; Guo, W.; Xiong, N.N.; Chen, G.; Vasilakos, A.V.; Zhang, H. A Pretreatment Workflow Scheduling Approach for Big Data Applications in Multicloud Environments. IEEE Trans. Netw. Serv. Manag. 2016, 13, 581–594. [Google Scholar] [CrossRef]
- Yang, Y.; Zheng, X.; Chang, V.; Ye, S.; Tang, C. Lattice assumption based fuzzy information retrieval scheme support multi-user for secure multimedia cloud. Multimed. Tools Appl. 2017, 77, 9927–9941. [Google Scholar] [CrossRef]
- Guo, L.; Shen, H. Efficient Approximation Algorithms for the Bounded Flexible Scheduling Problem in Clouds. IEEE Trans. Parallel Distrib. Syst. 2017, 28, 3511–3520. [Google Scholar] [CrossRef]
- Odelu, V.; Das, A.K.; Goswami, A. An efficient ECC-based privacy-preserving client authentication protocol with key agreement using smart card. J. Inf. Secur. Appl. 2015, 21, 1–19. [Google Scholar] [CrossRef]
- Gope, P.; Das, A.K. Robust Anonymous Mutual Authentication Scheme for n-times Ubiquitous Mobile Cloud Computing Services. IEEE Internet Things J. 2017, 4, 1764–1772. [Google Scholar] [CrossRef]
- Odelu, V.; Das, A.K.; Kumari, S.; Huang, X.; Wazid, M. Provably secure authenticated key agreement scheme for distributed mobile cloud computing services. Future Gener. Comput. Syst. 2017, 68, 74–88. [Google Scholar] [CrossRef]
- Chandrakar, P.; Om, H. A secure and robust anonymous three-factor remote user authentication scheme for multi-server environment using ECC. Comput. Commun. 2017, 110, 26–34. [Google Scholar] [CrossRef]
- WHO (World Health Organization) Forum. Available online: https://www.who.int/pmnch/media/news/2019/first-pmnch-hackathon/en/ (accessed on 30 May 2020).
- Chatterjee, S.; Roy, S.; Das, A.K.; Chattopadhyay, S.; Kumar, N.; Reddy, A.G.; Park, K.; Park, Y. On the Design of Fine Grained Access Control With User Authentication Scheme for Telecare Medicine Information Systems. IEEE Access 2017, 5, 7012–7030. [Google Scholar] [CrossRef]
- Sutrala, A.K.; Das, A.K.; Odelu, V.; Wazid, M.; Kumari, S. Secure anonymity-preserving password-based user authentication and session key agreement scheme for telecare medicine information systems. Comput. Methods Programs Biomed. 2016, 135, 167–185. [Google Scholar] [CrossRef] [PubMed]
- Chaturvedi, A.; Mishra, D.; Mukhopadhyay, S. An enhanced dynamic ID-based authentication scheme for telecare medical information systems. J. King Saud Univ. Comput. Inf. Sci. 2017, 29, 54–62. [Google Scholar] [CrossRef] [Green Version]
- Amin, R.; Islam, S.H.; Gope, P.; Choo, K.-K.R.; Tapas, N. Anonymity Preserving and Lightweight Multimedical Server Authentication Protocol for Telecare Medical Information System. IEEE J. Biomed. Health Inform. 2019, 23, 1749–1759. [Google Scholar] [CrossRef]
- Shankar, S.K.; Tomar, A.S.; Tak, G.K. Secure Medical Data Transmission by Using ECC with Mutual Authentication in WSNs. Procedia Comput. Sci. 2015, 70, 455–461. [Google Scholar] [CrossRef] [Green Version]
- Fortino, G.; Galzarano, S.; Gravina, R.; Li, W. A framework for collaborative computing and multi-sensor data fusion in body sensor networks. Inf. Fusion 2015, 22, 50–70. [Google Scholar] [CrossRef]
- Gravina, R.; Alinia, P.; Ghasemzadeh, H.; Fortino, G. Multi-sensor fusion in body sensor networks: State-of-the-art and research challenges. Inf. Fusion 2017, 35, 68–80. [Google Scholar] [CrossRef]
- Liu, X.; Wang, Z.; Jin, C.; Li, F.; Li, G. A Blockchain-Based Medical Data Sharing and Protection Scheme. IEEE Access 2019, 7, 118943–118953. [Google Scholar] [CrossRef]
- Xu, J.; Xue, K.; Li, S.; Tian, H.; Hong, J.; Hong, P.; Yu, N. Healthchain: A Blockchain-Based Privacy Preserving Scheme for Large-Scale Health Data. IEEE Internet Things J. 2019, 6, 8770–8781. [Google Scholar] [CrossRef]
- Yang, Y.; Zheng, X.; Tang, C. Lightweight distributed secure data management system for health internet of things. J. Netw. Comput. Appl. 2017, 89, 26–37. [Google Scholar] [CrossRef]
- Yao, X.; Chen, Z.; Tian, Y. A lightweight attribute-based encryption scheme for the Internet of Things. Future Gener. Comput. Syst. 2015, 49, 104–112. [Google Scholar] [CrossRef]
- Burrows, M.; Abadi, M.; Needham, R. A logic of authentication. ACM Trans. Comput. Syst. 1990, 8, 18–36. [Google Scholar] [CrossRef]
- Han, W.; Zhu, Z. An ID-based mutual authentication with key agreement protocol for multiserver environment on elliptic curve cryptosystem. Int. J. Commun. Syst. 2012, 27, 1173–1185. [Google Scholar] [CrossRef]
- Chang, S.; Chen, Y.; Lu, M.-F. Supply chain re-engineering using blockchain technology: A case of smart contract based tracking process. Technol. Forecast. Soc. Chang. 2019, 144, 1–11. [Google Scholar] [CrossRef]
- Hospital A; Hospital B; Patient Graphics. Available online: http://616pic.com/ (accessed on 30 May 2020).
- Blockchain Center Graphics. Available online: https://zh.pngtree.com/ (accessed on 30 May 2020).
- Marcus, M.J. 5G and IMT for 2020 and beyond. IEEE Wireless Commun. 2015, 22, 2–3. [Google Scholar] [CrossRef]
Item | Proof | Issuer | Holder | Verification | |
---|---|---|---|---|---|
Phase | |||||
Initial Treatment Authentication and Communication Phase | Hospital A | Patient | |||
Inter-Hospital Authentication and Communication Phase | Hospital A | Hospital B | |||
Hospital B | Patient |
Party | Blockchain Center | Hospital A | Hospital B | Patient | |
---|---|---|---|---|---|
Phase | |||||
Patient Registration Phase | N/A | N/A | |||
Hospital A Registration Phase | N/A | N/A | |||
Hospital B Registration Phase | N/A | N/A | |||
Initial Treatment Authentication and Communication Phase | N/A | N/A | |||
Inter-Hospital Authentication and Communication Phase | N/A |
Item | Message Length | Round | 3.5G (14 Mbps) | 4G (100 Mbps) | 5G (20 Gbps) | |
---|---|---|---|---|---|---|
Phase | ||||||
Patient Registration Phase | 2528 bits | 2 | 0.181 ms | 0.025 ms | 0.126 us | |
Hospital A Registration Phase | 2528 bits | 2 | 0.181 ms | 0.025 ms | 0.126 us | |
Hospital B Registration Phase | 2528 bits | 2 | 0.181 ms | 0.025 ms | 0.126 us | |
Initial Treatment Authentication and Communication Phase | 2816 bits | 4 | 0.201 ms | 0.028 ms | 0.141 us | |
Inter-Hospital Authentication and Communication Phase | 5632 bits | 8 | 0.402 ms | 0.056 ms | 0.282 us |
Scheme | Liu et al. (2019) [43] | Xu et al. (2019) [44] | Our Scheme | |
---|---|---|---|---|
Functionality | ||||
Blockchain Architecture | Yes | Yes | Yes | |
Mutual Authentication | Yes | Yes | Yes | |
Data Integrity | Yes | Yes | Yes | |
User Untraceability | Yes | Yes | Yes | |
Resistance to Replay Attack | Yes | Yes | Yes | |
Forward and Backward Secrecy | Yes | Yes | Yes | |
Nonrepudiation | No | Yes | Yes | |
BAN Logic Proof | No | No | Yes | |
Inter-Hospital Authentication | No | No | Yes |
© 2020 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Chen, C.-L.; Deng, Y.-Y.; Weng, W.; Sun, H.; Zhou, M. A Blockchain-Based Secure Inter-Hospital EMR Sharing System. Appl. Sci. 2020, 10, 4958. https://doi.org/10.3390/app10144958
Chen C-L, Deng Y-Y, Weng W, Sun H, Zhou M. A Blockchain-Based Secure Inter-Hospital EMR Sharing System. Applied Sciences. 2020; 10(14):4958. https://doi.org/10.3390/app10144958
Chicago/Turabian StyleChen, Chin-Ling, Yong-Yuan Deng, Wei Weng, Hongyu Sun, and Ming Zhou. 2020. "A Blockchain-Based Secure Inter-Hospital EMR Sharing System" Applied Sciences 10, no. 14: 4958. https://doi.org/10.3390/app10144958
APA StyleChen, C. -L., Deng, Y. -Y., Weng, W., Sun, H., & Zhou, M. (2020). A Blockchain-Based Secure Inter-Hospital EMR Sharing System. Applied Sciences, 10(14), 4958. https://doi.org/10.3390/app10144958