An Authentication Protocol for the Medical Internet of Things
Abstract
:1. Introduction
2. Previous Work
2.1. Protocols
- Security objectives besides authentication, e.g., key establishment, forward secrecy [16], etc.
- Communicating parties, i.e., the roles involved in a protocol session.
- Support for real-time communication.
- Design logic, cryptographic operations (encryption, hashing, etc.), and execution steps.
2.2. Discovered Weaknesses
2.2.1. The Use of XOR for Secrecy
2.2.2. Missing Secrecy of some Messages
2.2.3. Ambiguous Definition of Anonymity
2.2.4. Smart Cards Vulnerable to Offline Password Guessing
2.2.5. Renewal of Some Values Each Session
3. Our Protocol Design
- Fresh session key establishment.
- Perfect forward secrecy.
- Relationship anonymity [30] with respect to the intruder.
- Eavesdrop on, and store, all messages communicated over publicly accessible channels.
- Perform computations on messages.
- Register with the network as a legitimate user.
- Block any message from reaching its intended destination.
- Exchange messages with any other node on the network.
- Impersonate other users.
3.1. Network Architecture
- The doctor (or healthcare professional) identified by U, for user.
- The doctor’s smart card device, given identification D.
- The server identified by S.
- The IoT gateway (identity G). It relays data between server S and the sensors of the patient’s WBAN.
- The patient, identified by A.
3.2. Initialization and Registration
- Code: A cryptographic hash algorithm , a bio-hash algorithm , an encryption algorithm , and a decryption algorithm .
- Data: A device identifier D, and the encrypted value .
- The server’s user record stores
- The server’s patient record stores
- The doctor’s smart card device D stores
- The patient’s IoT gateway G stores
3.3. Authentication Steps
3.4. Renewal of Passwords and Keys
3.5. Revocation of Smart Card Device
4. Analysis of Protocol
4.1. Features and Comparison with Previous Works
- F1:
- Mutual authentication between patient’s IoT gateway and server.
- F2:
- Mutual authentication between doctor and server.
- F3:
- Support for both real-time monitoring of patient’s data and offline reading of data from server.
- F4:
- Ability to monitor multiple sensors in a single session.
- F5:
- Support for dynamic assignment of patient’s to doctors.
- F6:
- Support for the implementation of an access control policy at the server.
4.2. Performance Analysis
4.3. Informal Security Analysis
4.3.1. Authentication
4.3.2. Session Key
4.3.3. Forward Secrecy
4.3.4. Relationship Anonymity
4.3.5. Access Control
4.4. Resistance to Common Attacks
4.5. Formal Security Analysis
- Secrecy of session key .
- Mutual authentication between S and D and between S and G. We use the “injective agreement” definition of authentication [39]. This definition states that A is authenticated to B, by a certain run of an authentication protocol, if for each run of the protocol by A (as initiator) there corresponds a unique run of the protocol by B as responder. Moreover, by the end of these runs, both A and B agree on a set of values. These values, in our case, are nonces, which guarantees the recentness of protocol runs and hence prevents replay attacks.
free c1, c2: channel.
type key. type nonce. type host.
(* Shared key encryption *)
fun encrypt(bitstring,key): bitstring. reduc forall x: bitstring, k: key; decrypt(encrypt(x,k),k) = x.
free Kdg: key [private].
event DStart(nonce,nonce). event DEnd(nonce,nonce). event GStart(nonce,nonce). event GEnd(nonce). event SStartD(nonce,nonce). event SEndD(nonce,nonce). event SStartG(nonce). event SEndG(nonce,nonce).
(* Queries *)
query attacker(Kdg).
query x1,x2:nonce; inj-event(SEndD(x1,x2)) ==> inj-event (DStart(x1,x2)). query x1,x2:nonce; inj-event(DEnd(x1,x2)) ==> inj-event (SStartD(x1,x2)). query x1,x2:nonce; inj-event(SEndG(x1,x2)) ==> inj-event (GStart(x1,x2)). query x1:nonce; inj-event(GEnd(x1)) ==> inj-event (SStartG(x1)).
free D, G, S: host.
table keys(host,key).
(* Role of the doctor (D)*)
let processD = get keys(D, Kds) in in(c1, (minit: bitstring)); let (=D, Ns_d: nonce) = decrypt(minit, Kds) in new Nd: nonce; event DStart(Nd,Ns_d); out(c1, (D, encrypt((D, G, Nd, Ns_d), Kds))); in(c1, (m4: bitstring)); let (=D, =G, =Nd, Ng_d: nonce, kdg_d:key) = decrypt(m4, Kds) in event DEnd(Nd,Ns_d).
(* Role of the gateway *)
let processG = get keys(G, Kgs) in in(c2, m2: bitstring); let (=G, =D, Nd_g: nonce) = decrypt(m2, Kgs) in new Ng: nonce; event GStart(Ng,Nd_g); out(c2, (G,encrypt((G, D, Ng, Nd_g), Kgs))); in(c2, m5: bitstring); let (=G, =D, =Ng, =Nd_g, Kdg_g:key) = decrypt(m5, Kgs) in event GEnd(Nd_g).
(* Server *)
let processS = new Ns: nonce; new kds:key; insert keys(D, kds); new Kgs:key; insert keys(G, Kgs); out(c1, encrypt((D, Ns), kds)); in(c1, (idd_s: host, m1: bitstring)); get keys(=idd_s, Kds_s) in let (=idd_s, idg_s: host, Nd_s: nonce, =Ns) = decrypt(m1, Kds_s) in event SStartD(Nd_s,Ns); get keys(=idg_s, Kgs_s) in event SStartG(Nd_s); out(c2, encrypt((idg_s, idd_s, Nd_s), Kgs_s)); in(c2, (idg_s: host, m3: bitstring)); get keys(=idg_s, Kgs_s) in let (=idg_s, =idd_s, Ng_s: nonce, =Nd_s) = decrypt(m3, Kgs_s) in out(c1, encrypt((idd_s, idg_s, Nd_s, Ng_s, Kdg), Kds_s)); event SEndG(Ng_s,Nd_s); out(c2, encrypt((idg_s, idd_s, Ng_s, Nd_s, Kdg), Kgs_s)); event SEndD(Nd_s,Ns).
(* Start process *)
process ( (!processD) | (!processG) |(!processS))
=============== Verification Result ====================== Verification summary:
(* Secrecy of session key *) Query not attacker(Kdg[]) is true.
(* Mutual authentication as injective agreeement *) Query inj-event(SEndD(x1,x2)) ==> inj-event(DStart(x1,x2)) is true.
Query inj-event(DEnd(x1,x2)) ==> inj-event(SStartD(x1,x2)) is true.
Query inj-event(SEndG(x1,x2)) ==> inj-event(GStart(x1,x2)) is true.
Query inj-event(GEnd(x1)) ==> inj-event(SStartG(x1)) is true.
4.6. Implementation Issues and Limitations
5. Conclusions and Future Work
Author Contributions
Funding
Conflicts of Interest
References
- Empowering the Health Workforce: Strategies to Make the Most of the Digital Revolution; Technical Report; Organisation for Economic Co-Operation and Development (OECD): Paris, France, 2020; Available online: https://www.oecd.org/publications/empowering-the-health-workforce-to-make-the-most-of-the-digital-revolution-37ff0eaa-en.htm (accessed on 6 July 2022).
- Hallberg, D.; Salimi, N. Qualitative and Quantitative Analysis of Definitions of e-Health and m-Health. Healthc. Inform. Res. 2020, 26, 119–128. [Google Scholar] [CrossRef] [PubMed]
- Wan, H.; Zhuang, L.; Pan, Y.; Gao, F.; Tu, J.; Zhang, B.; Wang, P. Biomedical sensors. In Biomedical Information Technology; Feng, D., Ed.; Academic Press: Cambridge, MA, USA, 2020; Chapter 2; pp. 51–79. [Google Scholar]
- Angelov, G.; Nikolakov, D.; Ruskova, I.; Gieva, E.; Spasova, M. Healthcare Sensing and Monitoring. In Enhanced Living Environments: Algorithms, Architectures, Platforms, and Systems (LNCS 11369); Springer: Berlin/Heidelberg, Germany, 2019. [Google Scholar]
- Gandhi, V.; Singh, J. An automated review of body sensor networks research patterns and trends. J. Ind. Inf. Integr. 2020, 18, 100132. [Google Scholar] [CrossRef]
- Liu, Q.; Mkongwa, K.G.; Zhang, C. Performance issues in wireless body area networks for the healthcare application: A survey and future prospects. SN Appl. Sci. 2021, 3, 155. [Google Scholar] [CrossRef]
- Aboubakar, M.; Kellil, M.; Roux, P. A review of IoT network management: Current status and perspectives. J. King Saud Univ. Comput. Inf. Sci. 2022, 34, 4163–4176. [Google Scholar] [CrossRef]
- Awotunde, J.; Jimoh, R.; Folorunso, S.; Adeniyi, E.; Abiodun, K.; Banjo, O. Privacy and Security Concerns in IoT-Based Healthcare Systems. In Privacy and Security Concerns in IoT-Based Healthcare Systems; Siarry, P., Jabbar, M., Aluvalu, R., Abraham, A., Madureira, A., Eds.; Springer: Cham, Switzerland, 2021; pp. 105–134. [Google Scholar]
- Keyvan Mousavi, S.; Ghaffari, A.; Besharat, S.; Afshari, H. Security of internet of things based on cryptographic algorithms: A survey. Wirel. Netw. 2021, 27, 1515–1555. [Google Scholar] [CrossRef]
- Boyd, C.; Mathuria, A. Protocols for Authentication and Key Establishment; Springer: Berlin/Heidelberg, Germany, 2003; p. 342. [Google Scholar]
- El-Hajj, M.; Fadlallah, A.; Chamoun, M.; Serhrouchni, A. A survey of internet of things (IoT) authentication schemes. Sensors 2019, 19, 1141. [Google Scholar] [CrossRef] [Green Version]
- Punj, R.; Kumar, R. Technological aspects of WBANs for health monitoring. Wirel. Netw. 2019, 25, 1125–1157. [Google Scholar] [CrossRef]
- Radhappa, H.; Pan, L.; Zheng, X.J.; Wen, S. Practical overview of security issues in wireless sensor network applications. Int. J. Comput. Appl. 2018, 40, 202–213. [Google Scholar] [CrossRef]
- Reshan, M.A.; Liu, H.; Hu, C.; Yu, J. MBPSKA: Multi-Biometric and Physiological Signal-Based Key Agreement for Body Area Networks. IEEE Access 2019, 7, 78484–78502. [Google Scholar] [CrossRef]
- Das, A.K.; Wazid, M.; Kumar, N.; Khan, M.K.; Choo, K.K.R.; Park, Y.H. Design of Secure and Lightweight Authentication Protocol for Wearable Devices Environment. IEEE J. Biomed. Health Inform. 2018, 22, 1310–1322. [Google Scholar] [CrossRef]
- Boyd, C.; Gellert, K. A Modern View on Forward Security. Comput. J. 2021, 64, 639–652. [Google Scholar] [CrossRef]
- Yeh, K.H. A Secure IoT-Based Healthcare System with Body Sensor Networks. IEEE Access 2016, 4, 10288–10299. [Google Scholar] [CrossRef]
- Van Oorschot, P.C. Computer Security and the Internet: Tools and Jewels from Malware to Bitcoin, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 2021. [Google Scholar]
- Rifà-Pous, H.; Herrera-Joancomartí, J. Computational and Energy Costs of Cryptographic Algorithms on Handheld Devices. Future Internet 2011, 3, 31–48. [Google Scholar] [CrossRef] [Green Version]
- Gope, P.; Hwang, T. A Realistic Lightweight Anonymous Authentication Protocol for Securing Real-Time Application Data Access in Wireless Sensor Networks. IEEE Trans. Ind. Electron. 2016, 63, 7124–7132. [Google Scholar] [CrossRef]
- Li, X.; Niu, J.; Kumari, S.; Liao, J.; Liang, W.; Khan, M.K. A new authentication protocol for healthcare applications using wireless medical sensor networks with user anonymity. Secur. Commun. Netw. 2016, 9, 2643–2655. [Google Scholar] [CrossRef]
- Sharma, G.; Kalra, S. A Lightweight User Authentication Scheme for Cloud-IoT Based Healthcare Services. Iran. J. Sci. Technol. Trans. Electr. Eng. 2019, 43, 619–636. [Google Scholar] [CrossRef]
- Xu, Z.; Xu, C.; Liang, W.; Xu, J.; Chen, H. A lightweight mutual authentication and key agreement scheme for medical internet of things. IEEE Access 2019, 7, 53922–53931. [Google Scholar] [CrossRef]
- Park, K.; Noh, S.; Lee, H.; Das, A.K.; Kim, M.; Park, Y.; Wazid, M. LAKS-NVT: Provably Secure and Lightweight Authentication and Key Agreement Scheme without Verification Table in Medical Internet of Things. IEEE Access 2020, 8, 119387–119404. [Google Scholar] [CrossRef]
- Shin, S.; Kwon, T. A Lightweight Three-Factor Authentication and Key Agreement Scheme in Wireless Sensor Networks for Smart Homes. Sensors 2019, 19, 2012. [Google Scholar] [CrossRef] [Green Version]
- Zhu, L.; Xiang, H.; Zhang, K. A Light and Anonymous Three-Factor Authentication Protocol for Wireless Sensor Networks. Symmetry 2022, 14, 46. [Google Scholar] [CrossRef]
- Soni, M.; Singh, D.K. LAKA: Lightweight Authentication and Key Agreement Protocol for Internet of Things Based Wireless Body Area Network. Wirel. Pers. Commun. 2021. [Google Scholar] [CrossRef]
- Shreya, S.; Chatterjee, K.; Singh, A. A smart secure healthcare monitoring system with Internet of Medical Things. Comput. Electr. Eng. 2022, 101, 107969. [Google Scholar] [CrossRef]
- Tiplea, F.L.; Vamanu, L.; Vârlan, C. Reasoning about minimal anonymity in security protocols. Future Gener. Comput. Syst. 2013, 29, 828–842. [Google Scholar] [CrossRef]
- Pfitzmann, A.; Kohntopp, M. Anonymity, Unobservability, and Pseudonymity—A Proposal for Terminology. In Lecture Notes in Computer Science (LNCS 2009); Springer: Berlin/Heidelberg, Germany, 2001; Volume 2009. [Google Scholar]
- Wang, D.; Wang, P. Offline dictionary attack on password authentication schemes using smart cards. In Information Security; Desmedt, Y., Ed.; Springer International Publishing: Berlin/Heidelberg, Germany, 2015; Volume 7807, pp. 221–237. [Google Scholar]
- Goh, A.; Ngo, D.C. Computation of Cryptographic Keys from Face Biometrics. In Proceedings of the 7th IFIP-TC6 TC11 International Conference, CMS 2003, Torino, Italy, 2–3 October 2003; Lecture Notes in Computer Science (LNCS 2828); Springer: Berlin/Heidelberg, Germany, 2003; Volume 2828. [Google Scholar]
- Jin, A.T.B.; Ling, D.N.C.; Goh, A. Biohashing: Two factor authentication featuring fingerprint data and tokenised random number. Pattern Recognit. 2004, 37, 2245–2255. [Google Scholar] [CrossRef]
- Sandhya, M.; Prasad, M. Biometric template protection: A systematic literature review of approaches and modalities. In Biometric Security and Privacy. Signal Processing for Security Technologies; Jiang, R., Al-maadeed, S., Bouridane, A., Crookes, P., Beghdadi, A., Eds.; Springer: Berlin/Heidelberg, Germany, 2017; Chapter 14. [Google Scholar]
- ProVerif. Available online: https://bblanche.gitlabpages.inria.fr/proverif/ (accessed on 15 July 2022).
- Das, A.K.; Zeadally, S.; He, D. Taxonomy and analysis of security protocols for Internet of Things. Future Gener. Comput. Syst. 2018, 89, 110–125. [Google Scholar] [CrossRef]
- Mayes, K. An introduction to smart cards. In Smart Cards, Tokens, Security and Applications, 2nd ed.; Mayes, K., Markantonakis, K., Eds.; Springer International Publishing: Berlin/Heidelberg, Germany, 2017; pp. 1–29. [Google Scholar]
- Hajny, J.; Malina, L.; Martinasek, Z.; Tethal, O. Performance evaluation of primitives for privacy-enhancing cryptography on current smart-cards and smart-phones. In Data Privacy Management and Autonomous Spontaneous Security, Lecture Notes in Computer Science; Garcia-Alfaro, J., Lioudakis, G., Cuppens-Boulahia, N., Foley, S., Fitzgerald, W., Eds.; Springer: Berlin/Heidelberg, Germany, 2014; Volume LNCS 8247, pp. 17–33. [Google Scholar]
- Cremers, C.J.; Mauw, S.; de Vink, E.P. Injective synchronisation: An extension of the authentication hierarchy. Theor. Comput. Sci. 2006, 367, 139–161. [Google Scholar] [CrossRef] [Green Version]
- Shah, Y.; Choyi, V.; Schmidt, A.U.; Subramanian, L. Multi-factor authentication as a service. In Proceedings of the 3rd IEEE International Conference on Mobile Cloud Computing, Services, and Engineering, MobileCloud 2015, San Francisco, CA, USA, 30 March–3 April 2015; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2015; pp. 144–150. [Google Scholar]
- de Mello, B.H.; Rigo, S.J.; da Costa, C.A.; da Rosa Righi, R.; Donida, B.; Bez, M.R.; Schunke, L.C. Semantic interoperability in health records standards: A systematic literature review. Health Technol. 2022, 12, 255–272. [Google Scholar] [CrossRef]
Protocol | Comments |
---|---|
Yeh [17] | ⇒ If an intruder knew the value of one session nonce, he will be able to compute values of nonces in other sessions. |
Gope and Hwang [20] | ⇒ Communication with a single sensor per session (no support for data aggregation). ⇒ Attack: value of previous session’s key can be known. ⇒ Off-line password attack is possible. ⇒ Desynchronization is possible. |
Li et al. [21] | ⇒ Single key shared with all users. ⇒ No differentiation between users leads to infeasibility of access control. ⇒ Doctors have to register themselves with each patient. ⇒ Off-line password attack is possible. |
Sharma and Kalra [22] | ⇒ Sensor’s anonymity is not achieved. ⇒ No differentiation between users leads to infeasibility of access control. ⇒ Single key shared with all users. |
Xu et al. [23] | ⇒ Communication with a single sensor per session (no support for data aggregation). ⇒ Single key shared with all users. ⇒ If an intruder knew the value of one session nonce, he will be able to compute values of nonces in other sessions. |
Park et al. [24] | ⇒ Sensor nodes are required to provide a local login interface to users, which is impractical. ⇒ Protocol fails to achieve forward secrecy. |
Shin and Kwon [25] | ⇒ Protocol fails to provide forward secrecy. ⇒ Protocol is vulnerable to desynchronization attacks. |
Soni and Singh [27] | ⇒ Offline password-guessing attack is possible. ⇒ No mention of authentication for doctors. |
Zhu et al. [26] | ⇒ Attack against anonymity is possible. ⇒ Denial of service attack against sensors is possible. ⇒ Off-line password attack is possible. ⇒ Desynchronization is possible. |
Shreya et al. [28] | ⇒ Offline password-guessing attack is possible. ⇒ If a secret session key is known, all previous and future session keys can be known. |
Symbol | Meaning |
---|---|
U | User (doctor) |
D | Identity of U’s smart card device |
G | IoT gateway |
S | Server’s identity |
A | Patient’s identity |
ID of user U | |
Password of user U | |
Nonces generated by S, D, and G, respectively. | |
Hash function | |
Bio-hash function | |
, | Encryption and decryption algorithms using key and message. |
, | Encryption and decryption functions using key K implemented as and , respectively. |
Sometimes this notation is used for | |
Concatenation of messages and | |
Shorthand for | |
Tuple of messages, i.e., | |
Shorthand for |
Protocol | F1 | F2 | F3 | F4 | F5 | F6 |
---|---|---|---|---|---|---|
Yeh [17] | yes | no | no | no | _ | _ |
Gope and Hwang [20] | yes | yes | no | no | _ | _ |
Li et al. [21] | yes | yes | no | no | no | no |
Sharma and Kalra [22] | yes | yes | no | no | no | no |
Xu et al. [23] | yes | no | no | no | _ | _ |
Park et al. [24] | yes | no | no | no | _ | _ |
Shin and Kwon [25] | yes | yes | no | no | _ | _ |
Soni and Singh [27] | yes | no | no | yes | _ | _ |
Zhu et al. [26] | yes | yes | no | no | _ | _ |
Shreya et al. [28] | yes | yes | yes | yes | possible | possible |
Our protocol | yes | yes | yes | yes | yes | yes |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 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
El-Meniawy, N.; Rizk, M.R.M.; Ahmed, M.A.; Saleh, M. An Authentication Protocol for the Medical Internet of Things. Symmetry 2022, 14, 1483. https://doi.org/10.3390/sym14071483
El-Meniawy N, Rizk MRM, Ahmed MA, Saleh M. An Authentication Protocol for the Medical Internet of Things. Symmetry. 2022; 14(7):1483. https://doi.org/10.3390/sym14071483
Chicago/Turabian StyleEl-Meniawy, Nagwa, Mohamed R. M. Rizk, Magdy A. Ahmed, and Mohamed Saleh. 2022. "An Authentication Protocol for the Medical Internet of Things" Symmetry 14, no. 7: 1483. https://doi.org/10.3390/sym14071483
APA StyleEl-Meniawy, N., Rizk, M. R. M., Ahmed, M. A., & Saleh, M. (2022). An Authentication Protocol for the Medical Internet of Things. Symmetry, 14(7), 1483. https://doi.org/10.3390/sym14071483