Next Article in Journal
Joint Task Offloading and Power Allocation for Satellite Edge Computing Networks
Previous Article in Journal
From Sensors to Care: How Robotic Skin Is Transforming Modern Healthcare—A Mini Review
Previous Article in Special Issue
Materials-Driven Advancements in Chipless Radio-Frequency Identification and Antenna Technologies
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Lightweight and Efficient Authentication and Key Distribution Scheme for Cloud-Assisted IoT for Telemedicine

1
Department of Electrical and Computer Engineering, Sungkyunkwan University, Suwon-si 16419, Republic of Korea
2
School of Computer and Information Engineering, Kwangwoon University, Seoul-si 01897, Republic of Korea
3
School of Electronic Engineering, Kumoh National Institute of Technology, Gumi-si 39177, Republic of Korea
4
Department of Computer, Howon University, 64 Impi-myeon, Howondae 3-gil, Gunsan-si 54058, Republic of Korea
*
Author to whom correspondence should be addressed.
Sensors 2025, 25(9), 2894; https://doi.org/10.3390/s25092894
Submission received: 20 March 2025 / Revised: 1 May 2025 / Accepted: 2 May 2025 / Published: 3 May 2025
(This article belongs to the Special Issue Feature Papers in the Internet of Things Section 2025)

Abstract

:
Medical Internet of Things (IoT) systems are crucial in monitoring the health status of patients. Recently, telemedicine services that manage patients remotely by receiving real-time health information from IoT devices attached to or carried by them have experienced significant growth. A primary concern in medical IoT services is ensuring the security of transmitted information and protecting patient privacy. To address these challenges, various authentication schemes have been proposed. We analyze the authentication scheme by Wang et al. and identified several limitations. Specifically, an attacker can exploit information stored in an IoT device to generate an illegitimate session key. Additionally, despite using a cloud center, the scheme lacks efficiency. To overcome these limitations, we propose an authentication and key distribution scheme that incorporates a physically unclonable function (PUF) and public-key computation. To enhance efficiency, computationally intensive public-key operations are performed exclusively in the cloud center. Furthermore, our scheme addresses privacy concerns by employing a temporary ID for IoT devices used to identify patients. We validate the security of our approach using the formal security analysis tool ProVerif.

1. Introduction

Medical Internet of Things (IoT) services facilitate communication between doctors and patients for monitoring and treating health conditions [1,2]. The COVID-19 pandemic has further accelerated the global demand for telemedicine, expanding medical IoT services beyond hospitals [3,4,5]. While the demand for such services varies by country, they have become particularly important in nations with large elderly populations [6,7], enabling patients to remotely monitor their health and connect with distant hospitals. According to a 2025 report, the global telemedicine market is projected to reach USD 107.52 billion in 2024, USD 121.10 billion in 2025, and USD 432.1 billion by 2032 [8].
Typically, telemedicine services begin with the pre-registration of the patient, attending physician, IoT medical device, and gateway in the hospital’s cloud center [9]. The patient’s health data are then regularly transmitted to the hospital’s cloud center via a gateway (GW) installed at home or in a nearby common location [10]. The physician reviews these data and provides appropriate responses.
In telemedicine services, IoT devices attached to or carried by patients have significantly fewer resources than medical devices within hospitals [11]. Additionally, to collect, process, and manage large volumes of patient data from diverse locations, a high-performance cloud center is essential. Thus, telemedicine imposes additional requirements beyond those of hospital-based medical IoT environments. However, owing to the sensitivity of transmitted data, ensuring mutual authentication among participants and protecting privacy and anonymity are critical. In recent years, various studies have explored these challenges in medical IoT environments.
More recently, authentication schemes have also been proposed that use cloud servers with unlimited computing resources to process information sent from a large number of IoT devices. These authentication schemes can be used in telemedicine, where a large amount of patient information needs to be processed. In 2023, C. Wang et al. [12] proposed a user authentication scheme for cloud-assisted IoT. However, this paper describes the limitation that this authentication scheme can lead to illegitimate session key exchange if an attacker obtains information stored in the user’s smart device or IoT device, which can lead to sensor node impersonation attack. In this paper, we propose a lightweight and efficient authentication scheme that overcomes the limitations of C. Wang et al. [12] and apply it to telemedicine services that used medical IoT devices with limited computing resources, and enhance privacy and anonymity. The key contributions of the proposed scheme are summarized as follows.
  • We analyze C. Wang et al.’s work in [12] and find that their proposed authentication scheme is vulnerable to a stolen mobile device attack, which can lead an attacker to generate an illegitimate session key. We also show that the proposed scheme fails to achieve the goal of using cloud centers to increase efficiency by allowing IoT devices to perform public-key cryptographic computation.
  • We propose an authentication scheme using cloud centers with unlimited computing resources, similar to the one proposed by C. Wang et al. in [12]. However, unlike C. Wang et al. [12], our scheme improves the efficiency of the authentication scheme by performing public-key cryptographic computation (ECC) only for users (smart devices) and cloud centers that have a certain level of computing resources.
  • The proposed scheme minimizes the computation at IoT devices by using a physically unclonable function (PUF). In the scheme, the PUF’s challenge–response pair is transmitted through a private channel during the IoT device registration phase, and only the PUF’s challenge is transmitted through a public channel during the authentication and key distribution phases, making it resistant to PUF modeling attacks.
  • The proposed scheme is resistant to user impersonation attacks, stolen-device attacks, PUF modeling attacks, etc., and provides anonymity and untraceability, mutual authentication, and forward and backward secrecy.
  • The proposed scheme is verified using ProVerif, an official security analysis tool. In terms of performance, the proposed scheme achieves 35,436.18% computational savings compared to other recent studies, particularly on low-capacity sensor nodes.
The remainder of this paper is organized as follows: Section 2 discusses related works. Section 3 presents the system model for telemedicine and the attack model. Section 4 and Section 5 introduce Wang’s scheme and its identified vulnerabilities, respectively. Section 6 details the proposed authentication and key distribution scheme. Section 7 and Section 8 provide formal and informal security analyses, along with security and efficiency evaluations. Finally, Section 9 concludes the paper.

2. Related Work

With the advancement of IoT technology, numerous recent studies have proposed user authentication methods to ensure secure connections between IoT devices and users.
In 2018, Wazid et al. introduced the user-authenticated key management protocol (UAKMP), a secure and lightweight three-factor remote user authentication scheme for hierarchical IoT networks comprising various nodes, such as gateway nodes, cluster head nodes, and sensing nodes [13]. UAKMP provides password update functionality, ensures anonymity, and supports offline sensing node registration. However, according to Wang et al. [12], it does not satisfy clock synchronization and fails to guarantee forward secrecy.
Several authentication schemes have also been proposed for industrial IoT (IIoT) environments [14,15]. In 2020, Srinivas et al. introduced a user authentication scheme enabling remote users to analyze data in IIoT environments [15]. Their scheme employs biometric information, smart cards, and passwords for authentication, supporting password updates and smart card revocation in cases of loss or theft. However, according to Wang et al. [12], it does not ensure user anonymity. Similarly, in 2020, Yang et al. proposed a dynamic authentication credential framework for IIoT environments [14]. Their scheme achieved faster computation by avoiding public-key cryptography; however, according to Wang et al. [12], it does not guarantee forward secrecy.
Furthermore, in 2020, Wazid et al. proposed a user authentication scheme for smart-home environments [16]. Their scheme achieved high computational efficiency by utilizing only symmetric encryption and decryption. However, according to Wang et al. [12], it fails to ensure forward secrecy.
Recently, authentication schemes targeting a broader range of service environments have been proposed. In 2022, Dai et al. [17] proposed an authentication scheme for multigateway sensor networks. The scheme in [17] reduces communication requirements between gateways by registering two frequently visited gateway nodes and improves authentication efficiency using ECC. In the same year, Hu et al. [18] proposed a cloud-assisted authentication scheme based on Chebyshev polynomial encryption for IIoT environments. The scheme in [18] leverages cloud-computing technology with unlimited computing resources to reduce IoT device computation time. Additionally, in [19,20], cloud-computing technology has been utilized for authentication and key sharing in vehicle networks.
In 2023, Wang et al. [12] proposed a user authentication scheme for IoT using cloud centers. However, ref. [12] is vulnerable to stolen mobile devices and user-impersonation attacks, which may result in illegal session key exchanges. Our proposed scheme addresses the limitations of [12] and proposes a lightweight and efficient authentication and key distribution protocol.

3. Preliminaries

In this section, we introduce the system and attack models of the proposed scheme, along with the definitions and properties of the techniques used.

3.1. System Model

The proposed scheme targets a telemedicine system model, as shown in Figure 1, and consists of four entities: the user, cloud center, gateway, and IoT device. In this model, a doctor and their mobile device within a hospital are defined as the user, while a medical device that collects patient health information is classified as an IoT device. The gateway transmits data from the IoT device to the cloud center, which serves as a trusted hub for collecting, monitoring, managing, and processing patient information before transmitting it to the user. Each participant is described in detail below.
  • User ( U i ): The user U i is a legitimate entity with access to the IoT device. In this scheme, U i is a doctor who remotely monitors a patient’s health through an IoT device attached to the patient. As the system is designed for telemedicine, U i accesses the IoT device through the C l o u d C e n t e r . Communication with the C l o u d C e n t e r occurs via a smart device such as a smartphone or tablet.
  • IoT Device ( S N j ): The IoT device S N j collects medical and health information from the patient and transmits it to U i through the gateway G W N k and the C l o u d C e n t e r . S N j is typically a low-power medical device placed in or on the patient’s body, such as a glucose meter or digital stethoscope. Therefore, it is assumed that S N j cannot perform complex, resource-intensive operations. To enhance security, the proposed method uses physically unclonable function ( P U F ) technology in S N j .
  • Gateway ( G W N k ): The gateway G W N k is a trusted entity responsible for transmitting information collected from S N j to the C l o u d C e n t e r . While G W N k has greater computing power than S N j , it faces limitations in handling large volumes of data transmitted by numerous IoT devices in a telemedicine environment. G W N k mainly communicates with S N j using Bluetooth, NFC, or Wi-Fi and connects to the C l o u d C e n t e r via the Internet.
  • Cloud Center ( C l o u d C e n t e r ): The C l o u d C e n t e r is a trusted entity responsible for processing, managing, storing, and distributing patient information collected from multiple gateways to users. It plays a critical role in telemedicine services, requiring substantial computing resources to handle vast amounts of data from remotely located IoT devices. In the proposed scheme, the cloud center facilitates authentication and key distribution by securely sharing secret parameters during the registration process of U i , G W N k , and S N j . It is assumed that the C l o u d C e n t e r is securely managed and protected from attackers. In the cloud-assisted IoT for telemedicine services proposed in this paper, the cloud center does not play the role of a simple gateway that supports mutual authentication between users and IoT devices but is proposed as a centralized scheme to perform monitoring and analysis of patient information collected from IoT devices using the computing resources of the cloud center. In particular, in telemedicine services, patients (IoT devices) are often assigned to a doctor in advance, and the doctor has to manage a large number of patients, so a centralized scheme is a more realistic service model than a decentralized or peer-to-peer scheme.

3.2. Attacker Model

We assume that the cryptographic primitives used in the proposed scheme are secure and the attacker has the following capabilities:
  • According to the Dolev–Yao model [21,22,23,24,25], the attacker can eavesdrop and intercept the messages transmitted over the public communication channel. Also, the attacker can delete, modify, and reply to any message transmitted over the public channel.
  • The attacker can physically capture the user’s smart device, gateway, or IoT device and obtain all stored information, including certain security parameters.
  • The attacker cannot access information stored in the Cloud Center.
  • The Cloud Center and Gateway each securely hold their long-term secrets, and an attacker cannot obtain them.

3.3. Elliptic Curve Cryptography

ECC is a public-key cryptosystem that utilizes the mathematical properties of elliptic curves to achieve secure encryption [26,27,28]. It provides strong security with a smaller key size compared to traditional public-key cryptosystems such as RSA, offering improved performance. The proposed scheme is based on the elliptic curve discrete logarithm problem (ECDLP), which states that given a point P and a base point G ( Z p ) on an elliptic curve Z p , it is computationally difficult to determine an integer d such that P = d · G .

3.4. Fuzzy Extractor

A fuzzy extractor is a cryptographic technique designed to generate a stable and secure cryptographic key from biometric data or other noisy inputs [28,29]. As biometric measurements [30], such as fingerprints, may exhibit slight variations between scans, a fuzzy extractor ensures that the same cryptographic key is consistently derived despite these minor differences. It consists of two main procedures: a probabilistic generation procedure ( G e n ) and a deterministic reproduction procedure ( R e p ), characterized as follows:
  • G e n takes a biometric input B I O and generates a random string δ along with an auxiliary string τ , G e n ( B I O ) = ( δ , τ ) .
  • R e p takes as input B I O , a similar B I O * , and the auxiliary string τ generated by G e n , and reconstructs the random string δ , R e p ( B I O * , τ ) = δ .

3.5. Physically Unclonable Function, P U F

A PUF is a hardware-based security primitive that leverages inherent physical variations in semiconductor manufacturing to generate a unique, unclonable cryptographic key [31,32]. These unpredictable manufacturing variations produce distinct responses for each chip, making replication or cloning infeasible. A PUF operates based on the challenge–response pair (CRP) model, where an input challenge generates a unique response based on the physical characteristics of the hardware. When the same challenge is applied to the same chip, it consistently produces the same response, whereas different chips generate entirely different responses.
In this study, we adopt PUFs to achieve both lightweight operation and strong security for sensor nodes. PUFs generate random values based on intrinsic physical characteristics without requiring additional storage or heavy computation, unlike hardware security modules such as TPMs or symmetric key cryptographic approaches. Moreover, compared to HMAC-based schemes or traditional symmetric-key methods, PUFs offer stronger resistance against hardware cloning attacks. Due to these properties, PUFs are particularly suitable for resource-constrained medical IoT environments where computational capability and power consumption are critical concerns. PUFs are assumed to satisfy the following conditions:
  • PUFs are physically unclonable: PUFs are inherently resistant to cloning and modification. They are also highly resistant to environmental factors and aging. An identical device cannot be reproduced by cloning a PUF, and any attempt to change a device containing a PUF will modify its functionality or render it unusable.
  • PUFs exhibit one-way function properties: Given a response R n from a specific PUF, it is computationally infeasible to derive the corresponding challenge C n .
  • Different PUFs generate different responses: For the same challenge C n , two different PUFs (PUF1 and PUF2) will produce distinct responses R n 1 and R n 2 .
  • A PUF produces a consistent response for the same challenge: A given PUF always outputs the same response R n when presented with the same challenge C n .
  • Low probability of response collision among multiple PUFs: The likelihood of two different PUFs generating identical responses is extremely low. This property enables PUFs to serve as unique identifiers for distinguishing a large number of IoT devices.
The proposed scheme applies P U F s to the IoT device S N j . Using P U F properties, S N j uses P U F during the registration phase with the C l o u d C e n t e r and G W N k , as well as during the authentication and session key distribution phase with G W N k .

4. Review of Wang et al.’s Scheme

In this section, the scheme introduced by Wang et al. [12] is described. The scheme consists of four participants: the user, cloud center, gateway, and IoT device (sensor node). The user and IoT device perform mutual authentication to share a session key using the cloud center. The scheme is divided into four phases: gateway and IoT device registration, user registration, login, and authentication. The details are as follows:

4.1. Gateway and IoT Device Registration Phase

This phase comprises the registration of the gateway and IoT device with the cloud center. The details are as follows:

4.1.1. Gateway Registration

To register with the cloud center C l o C e n , the gateway G W N k follows these steps:
  • G W N k sends a registration request to C l o C e n with G I D k .
  • C l o C e n computes X G k = h ( x G I D k ) using its secret key x and sends the message G I D k ,   X G k to G W N k .
  • G W N k stores X G k .

4.1.2. IoT Device Registration

To register with G W N k , the IoT device S j follows these steps:
  • G W N k sends a registration request to C l o C e n with S I D j .
  • G W N k validates S I D j . If it is valid, G W N k computes X S j = h ( S I D j x G k ) , using G W N k ’s secret key x G k . G W N k then sends S I D j , X S j to S j .
  • S j keeps X S j as its private key.

4.2. User Registration Phase

  • U i inputs their identity I D i , password P W i , and biometric information B i o i into their smart mobile device. The device selects a random number a , and computes G e n ( B i o i ) = ( δ i , τ i ) , R P W i = h ( P W i δ i a ) . The registration request { I D i , R P W i } is then sent to C l o C e n .
  • C l o C e n selects a timestamp T r g i and a random number a i , then computes k i = h ( I D i y T r g i ) , B i = h ( R P W i I D i ) k i . The C l o C e n stores { I D i , T r g i , a i , H o n e y l i s t = N U L L } in its database and sends { B i , B i a i , Y , P } to U i .
  • Upon receiving { B i , B i a i , Y , P } , the smart device selects a new random number a and calculates the following values. Finally, the smart device stores k i , R P W i n e w , A i , B i , a i as { A i , B i , a , A i a i , τ i , Y , P , n 0 } .
    • k i = B i h ( R P W i I D i )
    • R P W i n e w = h ( P W i δ i a )
    • A i = h ( I D i R P W i n e w k i ) m o d n 0
    • B i = h ( R P W i n e w I D i ) k i
    • a i = B i ( B i a i )

4.3. Login Phase

If U i wants to access an IoT device, it initiates a login request to G W N k as follows:
  • U i enters I D i * , P W i * , B i o i * into the smart device, which then computes δ i * = R e p ( B i o i * , τ i ) , R P W i * = h ( P W i * δ i * a ) , k i * = B i R P W i * , A i * = h ( I D i * R P W i * k i * ) m o d n 0 . The device then compares A i * with A i to verify the authenticity of U i . If A i * is not equal to A i , the login request is rejected.
  • If A i * is equal to A i , the smart device selects a random number r i and computes a i * , M 1 , M 2 , M 3 , M 4 , and M 5 . The device then sends M 2 ,   M 3 ,   M 4 ,   M 5 to C l o C e n .
    • a i * = ( A i a i ) A i
    • M 1 = r i · Y , M 2 = r i · P
    • M 3 = h ( M 2 M 1 ) ( I D i * a i * )
    • M 4 = h ( M 1 M 2 M 3 ) S I D j
    • M 5 = h ( k i * I D i * M 1 M 2 S I D j )

4.4. Authentication Phase

  • To verify the U i , C l o C e n computes M 1 = y · M 2 , I D i a i = M 3 h ( M 2 M 1 ) . It then retrieves { T r g i , a i } using I D i . If a i is equal to a i , C l o C e n computes k i = h ( I D i y T r g i ) , S I D j = M 4 h ( M 1 M 2 M 3 ) , M 5 = h ( k i I D i M 1 M 2 S I D j ) . It then verifies U i via M 5 . If M 5 is equal to M 5 , C l o C e n accepts the authenticity of U i .
  • C l o C e n inserts k i into H o n e y l i s t if there are fewer than 10 items. If the H o n e y l i s t exceeds 10, U i ’s account is suspended until re-registration. C l o C e n then determines the gateway G W N k to which S j belongs, selects a random number r, and computes X G k , M 6 , M 7 , and M 8 as shown below and sends M 2 ,   M 6 ,   M 7 ,   M 8 to the gateway node G W N k .
    • X G k = h ( x G I D k )
    • M 6 = h ( X G k M 2 ) r
    • M 7 = h ( M 6 r X G k ) S I D j
    • M 8 = h ( M 2 M 6 M 7 r S I D j X G k )
  • G W N k computes r = M 6 h ( X G k M 2 ) , S I D j = M 7 h ( M 6 r X G k ) , M 8 = h ( M 2 M 6 M 7 r S I D j X G k ) , and then verifies whether M 8 ? = M 8 . If M 8 is equal to M 8 , G W N k computes X S j , M 9 , M 10 as shown below, and sends M 2 , M 9 , M 10 .
    • X S j = h ( x G k S I D j )
    • M 9 = h ( X S j M 2 r g (where r g is a random number chosen by G W N k )
    • M 10 = h ( M 2 M 9 r g S I D j X S j )
  • The IoT device S j computes r g = M 9 h ( X S j M 2 ) , M 10 = h ( M 2 M 9 r g S I D j X S j ) , and compares the values of M 10 and M 10 . If M 10 is equal to M 10 , S j chooses a random number r j , calculates M = r j · M 2 , M 11 = r j · P , S K = h ( M 2 M 11 M ) , M 12 = h ( M 2 M 11 r g X S j S I D j ) , and responds { M 11 , M 12 } to the gateway G W N k .
  • G W N k computes M 12 = h ( M 2 M 11 r g X S j S I D j ) and compares M 12 with M 12 to verify the identity of S j . If M 12 is equal to M 12 , G W N k calculates M 13 = h ( M 11 M 2 S I D j r X G k ) and sends { M 11 , M 13 } to C l o C e n .
  • C l o C e n computes M 13 = h ( M 11 M 2 S I D j r X G k ) to test the identity of G W N k . If M 13 is equal to M 13 , C l o C e n computes M 14 = h ( M 1 M 2 I D i S I D j k i M 11 ) , and then returns { M 11 , M 14 } to U i .
  • Having obtained C l o C e n ’s reply { M 11 , M 14 } , the smart mobile device computes M 14 * = h ( M 1 M 2 I D i S I D j k M 11 ) . If M 14 * is equal to M 14 , U i accepts S K = h ( M 2 M 11 r i · M 11 ) as his session key shared with S j , and the authentication process finishes successfully.

5. Limitations of Wang et al.’s Scheme

We identified several critical limitations in Wang et al. [12]’s scheme. A detailed analysis of these vulnerabilities is provided below.

5.1. Stolen Mobile Device Attack

In Wang et al. [12]’s scheme, only legitimate users are allowed to log in using P W i and B i o i during the user login phase. However, after user U i logs in, the messages M 1 , M 2 , M 3 , M 4 , and M 5 , which authenticate the user to C l o C e n , contain only information stored in the smart device. Although Wang et al. [12]’s scheme includes I D i as a credential known only to the user, in general, user IDs in various Internet protocols are publicly accessible for identification, or they can often be computed in polynomial time by an attacker. This implies that if an attacker gains access to the user’s smart device and retrieves its stored information, they can successfully authenticate with C l o C e n without requiring the login phase. The following is a detailed attack scenario.
  • {In step 2 of Section 4.3 Login Phase, the attacker computes a i using the information A i and A i a i stored in the stolen mobile device, and generates a random number r a . In addition, the attacker can find the I D i of the legitimate user in polynomial time.
  • The attacker then generates the following message using the previously calculated a i , I D i , and r a to impersonate the legitimate user, and sends it to C l o C e n :
    M 1 a = r a · Y (where Y is ECC public key of C l o C e n )
    M 2 a = r a · P (where P is ECC base point of C l o C e n )
    M 3 a = h ( M 2 a M 1 a ) ( I D i a i )
    M 4 a = h ( M 1 a M 2 a M 3 a ) S I D j
    M 5 a = h ( k i I D i M 1 a M 2 a S I D j )
  • In step 2 of Section 4.4 Authentication Phase, C l o C e n verifies M 1 a = y · M 2 a using its private key y. If M 1 a is equal to y · M 2 a , then it finds I D i through I D i a i = M 3 a h ( M 2 a M 1 a ) .
  • The attacker can be authenticated as a legitimate user because all subsequent steps use the information stored inside C l o C e n regarding I D i to perform subsequent authentication procedures.

5.2. Illegitimate Session Key Exchange

If the attacker knows S I D j and obtains X S j from a captured IoT device, they can manipulate the session key exchange, as shown below.
  • In step 4 of Section 4.4 Authentication Phase, the attacker chooses a random number r j a and calculates M a , M 11 a using the transmitted message M 2 as follows.
    M a = r j a · M 2
    M 11 a = r j a · P (where P is the ECC base point of C l o C e n )
  • The attacker uses the previously computed M a , M 11 a , and the transmitted message M 2 to generate an illegitimate session key S K a . The attacker also generates additional information M 12 a so that the gateway and user can generate the same session key, and sends M 11 a ,   M 12 a to G W N k .
    S K a = h ( M 2 M 11 a M a )
    M 12 a = h ( M 2 M 11 a r g X S j S I D j ) (where r g is a random number generated by the gateway in step 3 of Section 4.4 Authentication Phase, and X S j is h ( S I D j x G k ) . And x G k is the long-term secret of G W N k .)
  • In step 5 of Section 4.4 Authentication Phase, G W N k checks if M 12 a is equal to h ( M 2 M 11 a r g X S j S I D j ) using M 11 a and M 12 a sent by the attacker and the information M 2 , r g , X S j , and S I D j that it knows, where X S j is h ( S I D j x G k ) . If it is equal, G W N k computes M 13 a = h ( M 11 a M 2 S I D j r X G k ) and sends { M 11 a , M 13 a } to C l o C e n .
  • In step 6 of Section 4.4 Authentication Phase, C l o C e n checks whether M 13 a is equal to h ( M 11 a M 2 S I D j r X G k ) using M 11 a and M 13 a sent from G W N k and the information M 2 , S I D j , r, and X G k that it knows, where X G k is h ( x G I D k ) , and x is the secret long-term key of C l o C e n . If it is equal, C l o C e n computes M 14 a = h ( M 1 M 2 I D i S I D j k i M 11 a ) and sends { M 11 a , M 14 a }
  • In step 7 of Section 4.4 Authentication Phase, U i uses M 11 a and M 14 a sent by C l o C e n and the information M 1 , M 2 , I D i , S I D j , k i , and M 11 a , knowing to check whether M 14 a matches h ( M 1 M 2 I D i S I D j k i M 11 a ) . If it matches, the user generates a session key S K a as follows.
    S K a = h ( M 2 M 11 a r i · M 11 a ) (where, r i · M 11 a = r j a · M 2 = M a )
Through this process, the illegally generated session key S K a is exchanged between U i and S I D j by the attacker.

5.3. Inefficiency

A key contribution of Wang et al.’s scheme is the use of cloud-computing technology to overcome the computational and storage limitations of gateways and IoT devices. Reducing the computational load on the gateway or IoT devices significantly impacts the overall efficiency of the authentication scheme. However, in Wang et al.’s scheme, both the gateway and IoT devices perform computationally intensive ECC operations. Therefore, it is unclear whether the scheme effectively reduces the computational load on these resource-constrained devices compared to other authentication schemes that rely on symmetric key algorithms, despite the incorporation of cloud-computing technology.

6. Proposed Scheme

In this section, we propose a secure and efficient authentication and key distribution scheme to establish a secure telemedicine environment by addressing the vulnerabilities in Wang et al.’s scheme [12] described in Section 5 and integrating a cloud-assisted IoT framework into the medical domain.
The proposed scheme is applied to the system model shown in Figure 2. In this model, a doctor in a hospital serves as the user ( U i ), while a medical IoT device (sensor node, S N j ) attached to or carried by the patient monitors the patient’s condition outside the hospital. The patient’s health data are transmitted from the IoT device to the cloud center through a gateway ( G W N k ), enabling the user to access the transmitted information, assess the patient’s condition, and provide appropriate prescriptions remotely.
To use the telemedicine service, the patient must first register the user U i , who is the doctor in charge, along with the medical IoT device S N j , and the gateway G W N k with the C l o u d C e n t e r . Therefore, in our proposed scheme, it is assumed that the cloud center is aware of the user U I D i and gateway G I D k based on the IoT device S I D j before the registration phase. In addition, in the proposed scheme, the user U i establishes a session key with the C l o u d C e n t e r , while G I D k and S I D j share their respective session keys with the C l o u d C e n t e r through mutual authentication. Consequently, direct authentication between U I D i , G I D k , and S I D j is not required. The notation used in the proposed scheme is provided in Table 1.

6.1. User Registration Phase

In this phase, U i enters a user ID U I D i , password P W i , and biometric information B I O i on the mobile device to initiate a legitimate login and register validation information with the C l o u d C e n t e r for authentication. The details are illustrated in Figure 3.
  • U i inputs U I D i , P W i , and B I O i into the mobile device, computes G e n ( B I O i ) = ( δ i , τ i ) , and generates C h e c k U i = h ( U I D i P W i ) h ( δ i ) as additional validation information to prove legitimacy. U i then sends { U I D i , δ i } to the C l o u d C e n t e r through a secure private channel.
  • The C l o u d C e n t e r generates a random number R 1 and computes A = h ( U I D i δ i ) . It then sends { U I D i , A , P , G } to U i , where G is the base point of the shared ECC algorithm, and P is the public key of the C l o u d C e n t e r . After registering U i , the C l o u d C e n t e r stores { U I D i , h ( U I D i / p a r a l l e l δ i ) , A } in its database.
  • U i computes R 1 = A h ( U I D i δ i ) and generates a random number R 2 . It then computes B = h ( U I D i δ i ) R 2 , C = h H ( U I D i R 2 ) and stores { C h e c k U i , R 1 , B , C , τ i , P , G } in the mobile device’s memory.

6.2. Gateway Registration Phase

In this phase, G W N k and the C l o u d C e n t e r complete the registration process using their respective long-term secrets, S C and S G k , which are securely held by G W N k and C l o u d C e n t e r , respectively. It is assumed that the C l o u d C e n t e r is already aware of G I D k and S I D j , through prior offline registration. The details are illustrated in Figure 4.
  • G W N k sends a registration request message containing G I D k to C l o u d C e n t e r .
  • C l o u d C e n t e r computes X G k = h ( S C G I D k ) and sends { G I D k , X G k } to G W N k .
  • G W N k computes C h e c k G k = h ( S G k X G k ) and sends it to the cloud center. It then stores / X G k / in memory.
  • G W N k stores { G I D k , X G k , h ( C h e c k G k X G k ) } in its database.

6.3. IoT Device Registration Phase

In this phase, S N j registers with C l o u d C e n t e r and G W N k , respectively. The details are illustrated in Figure 5.

6.3.1. IoT Device Registration to Cloud Center

  • S N j sends a registration request message containing S I D j to C l o u d C e n t e r .
  • C l o u d C e n t e r identifies S N j using S I D j and generates a challenge C n C along with a random number T . S I D j , where T . S I D j is a randomly generated temporary ID for S I D j . The C l o u d C e n t e r then sends { C n C , T . S I D j } to S N j .
  • S N j generates a response R n C for C n C and sends it to the C l o u d C e n t e r . After sending the response, S N j stores { S I D j , T . S I D j } .

6.3.2. IoT Device Registration to Gateway

  • S N j sends a registration request message containing S I D j to G W N k .
  • G W N k generates a challenge C n G and sends it to S N j .
  • S N j computes the response R n G P U F ( C n G ) and sends { S I D j , T . S I D j , R n G } to G W N k .
  • G N W k stores { S I D j , T . S I D j , ( C n G , S G k R n G ) } in its database.

6.4. Authentication and Key Distribution Phase

In the proposed scheme, authentication and key distribution among the four participants are managed centrally by the C l o u d C e n t e r . User U i does not communicate directly with G W N k or S N j ; instead, all authentication and key exchange processes are facilitated through the cloud center. The details are illustrated in Figure 6 and Figure 7.
  • User U i begins the authentication process by entering U I D i * , P W i * , and B I O i * on the mobile device, which then computes δ i * = R e p ( B I O i * , τ i ) . The device verifies whether h ( U I D i * P W i * ) h ( δ i * ) is equal to C h e c k U i stored on it. If the check passes, the device computes R 2 * = B h ( U I D i * δ i * ) and further verifies whether h ( U I D i * R 2 * ) is equal to C. If successful, U i is logged into the mobile device. The device then generates a random number R 3 and timestamp T 1 , computing M 1 ,   M 2 ,   M 3 ,   M 4 , and M 5 as follows:
    • M 1 = R 3 · P , M 2 = R 3 · G , M 3 = h ( M 1 M 2 ) R 1 h ( U I D i * δ i * )
    • M 4 = h ( M 1 M 2 M 3 ) S I D j
    • M 5 = h ( h ( U I D i δ i ) R 1 I M 1 M 2 S I D j ) )
    Finally, U i sends { U I D i ,   M 2 ,   M 3 ,   M 4 ,   M 5 ,   T 1 } to C l o u d C e n t e r .
  • Upon receiving the message, the C l o u d C e n t e r first verifies the validity of the timestamp T 1 . If it is invalid, the protocol terminates; otherwise, the C l o u d C e n t e r retrieves U I D i and its associated information from its database. It then computes M 1 * = d · M 2 , R 1 * = M 3 h ( M 1 * M 2 ) h ( U I D i δ i ) , checking whether A h ( U I D i δ i ) matches R 1 * . If this condition is met, the C l o u d C e n t e r computes S I D j * = M 4 h ( M 1 * M 2 M 3 ) and verifies whether it matches S I D j . To authenticate U i , it further checks whether h ( h ( U I D i δ i ) R 1 * M 1 * M 2 S I D j ) matches M 5 . If successful, the user authentication is complete. Then C l o u d C e n t e r sends the messages { T . S I D j , M 6 , M 7 , M 8 , T 2 , C n C } to G W N k . The C l o u d C e n t e r then identifies the target gateway G I D k , generates a random session key S K , and a timestamp T 2 , and computes the following: M 6 , M 7 , and M 8 .
    • M 6 = S K h ( X G k ) h ( C h e c k G k X G k )
    • M 7 = h ( S K M 6 X G k ) T . S I D j
    • M 8 = h ( S K M 6 X G k T . S I D j T 2 )
    Finally, the C l o u d C e n t e r sends { T . S I D j ,   M 6 ,   M 7 ,   M 8 ,   T 2 ,   C n C } to G W N k .
  • Upon receiving the message from the C l o u d C e n t e r , G W N k first verifies the validity of timestamp T 2 . If invalid, the protocol terminates; otherwise, G W N k computes S K * = M 6 h ( X G k ) h ( C h e c k G k X G k ) , T . S I D j * = M 7 h ( S K * M 6 X G k ) and verifies whether h ( S K * M 6 X G k T . S I D j * T 2 ) matches M 8 . If successful, G W N k generates timestamp T 3 , and computes R n g , M 9 , and M 10 as follows:
    • R n g = ( S G k R n g ) S G k
    • M 9 = S K h ( R n G )
    • M 10 = h ( S K T . S I D j R n g T 3 )
    G W N k then sends { G I D k , M 9 , M 10 , T 3 , C n C , C n G } to S N j .
  • Upon receiving the message, S N j verifies the validity of timestamp T 3 . If invalid, the protocol terminates; otherwise, S N j computes R n G P U F ( C n G ) , S K * = M 9 h ( R n G ) and verifies whether h ( S K * T . S I D j R n G T 3 ) matches M 10 . If successful, S N j generates timestamp T 4 and computes R n C , M 11 , and M 12 as follows:
    • R n C P U F ( C n C )
    • M 11 = h ( S K * h ( R n g ) T 4 )
    • M 12 = h ( S K * h ( R n C ) )
    S N j then sends the message { T . S I D j , M 11 , M 12 , T 4 } to G W N k .
  • G W N k verifies the validity of timestamp T 4 and verifies whether h ( S K h ( R n G ) T 4 ) matches M11. If valid, G W N k generates timestamp T 5 and computes M 13 = h ( S K M 12 ) h ( T 5 X G k ) , then sends { T . S I D j , M 12 , M 13 , T 5 } to the C l o u d C e n t e r .
  • Upon receiving the message, the C l o u d C e n t e r verifies the validity of timestamp T 5 . If valid, it retrieves S I D j , G I D k , and U I D i from the database regarding T . S I D j and computes M 12 * = h ( S K h ( R n C ) ) , M 13 * = h ( S K M 12 * ) h ( T 5 X G k ) . The C l o u d C e n t e r then verifies whether M 12 and M 13 match M 12 * and M 13 * , respectively. If successful, it generates timestamp T 6 and computes M 14 , M 15 , and M 16 as follows:
    • M 14 = S K h ( M 1 R 1 T 6 ) h ( U I D i δ i )
    • M 15 = S K · d
    • M 16 = h ( S K M 1 M 15 T 6 )
    The C l o u d C e n t e r sends the message { M 14 , M 15 , M 16 , T 6 } to U i .
  • U i verifies the validity of timestamp T 6 . If valid, U i computes S K * and confirms the integrity of the shared S K * by performing the following steps:
    • Computing S K * = M 14 h ( M 1 R 1 T 6 ) h ( U I D i * δ i * ) .
    • Verifying S K * · P matches M 15 · G .
    • Calculating h ( S K * M 1 M 15 T 6 ) and checking whether it is equal to M 16 .
    If all conditions hold, the session key is securely shared among the participants.
  • Finally, at the end of the session, the C l o u d C e n t e r , G W N k , and S N j update T . S I D j as follows:
    • T . S I D j n e w = T . S I D j M 12
    • T . S I D j = T . S I D j n e w

6.5. Password Update Phase

At the end of the session, U i inputs U I D i * , P W i * , and B I O i * into the smart device to initiate the password update process. The device computes C h e c k U i * = h ( U I D i * P W i * ) / p l u s h ( δ i * ) and verifies whether C h e c k U i * matches the stored C h e c k U i . If the values match, U i inputs P W i n e w as the new password and computes C h e c k U i n e w = h ( U I D i P W i n ) / o p l u s h ( δ i ) . Finally, the password update is completed when U i updates C h e c k U i to C h e c k U i n e w and stores it in the device’s memory.

7. Security Analysis of Proposed Scheme

In this section, we present both formal and informal security analyses. The details are as follows:

7.1. Formal Security Analysis

In this paper, the ProVerif tool is used to formally analyze the security of the proposed authentication protocol [33,34,35,36,37]. ProVerif, developed by Blanchet et al. [38], is widely used for verifying security properties such as confidentiality and authentication in cryptographic protocols. The proposed protocol is modeled in Applied Pi-Calculus, and its resistance to attacks is evaluated under the Dolev–Yao model [21].
The details of each code are presented in Table 2, Table 3, Table 4, Table 5, Table 6, Table 7 and Table 8. Table 2 describes the variables, events, channels, and function declarations in the ProVerif code. Table 3 presents the user registration and authentication phases. Table 4 illustrates the operation process of the cloud center, while Table 5 outlines the gateway’s operation process. Table 6 describes the operation process of the sensor node. Table 7 lists the queries used to verify the overall operation, and Table 8 presents the results obtained when the queries from Table 7 were executed.
This study conducted an automated formal verification using the ProVerif tool to evaluate the security and safety of the designed protocol.
The ProVerif queries were configured as follows:
  • query inj-event(endUser(idi)) ==> inj-event(startUser(idi)) verifies that the user’s authentication completion event occurs only if the authentication initiation event has occurred (mutual authentication for users).
  • query inj-event(endCloudCenter()) ==> inj-event(startCloudCenter()) verifies the correct execution of the cloud center’s authentication process.
  • query inj-event(endGateway(gwi)) ==> inj-event(startGateway(gwi)) checks the correctness of the gateway’s authentication.
  • query inj-event(endSensorNode(snj)) ==> inj-event(startSensorNode(snj)) checks the correctness of the sensor node’s authentication.
  • query attacker(SharedKey) verifies the confidentiality of the session key, ensuring it is not accessible to the attacker.
The verification results show that all authentication and confidentiality queries returned true. This indicates that the proposed protocol successfully guarantees mutual authentication among the user, cloud center, gateway, and sensor node, and that the session key remains confidential against potential attackers. The analysis results obtained from ProVerif show that all specified security queries were proven to be true, confirming that the protocol successfully meets its intended security requirements. Specifically, the verification demonstrated that a user’s termination event always occurs after the corresponding initiation event, clearly ensuring user authentication. Additionally, the termination event at the cloud center was verified to occur strictly following its initiation event, thereby validating the reliability of the system’s communication flow. Furthermore, the gateway and sensor nodes were also confirmed to maintain correct sequential consistency between their respective initiation and termination events, securing the integrity of message exchanges. Moreover, the analysis mathematically verified that an attacker could not access or compromise the primary shared keys, highlighting the strong confidentiality provided by the protocol. Based on these comprehensive results, it can be concluded that the proposed protocol effectively fulfills critical security requirements such as authentication, confidentiality, and integrity.

7.2. Informal Security Analysis

The proposed scheme satisfies nine critical security requirements, including protection against user-impersonation attacks, stolen-device attacks, session key disclosure attacks, anonymity and untraceability, mutual authentication, replay attacks, forward secrecy attacks, man-in-the-middle attacks, and PUF modeling attacks [39,40,41,42]. A comparison of the latest studies and their corresponding security properties is summarized in Table 9. The detailed security properties of the proposed scheme are as follows:

7.2.1. A1: Resistance to User-Impersonation Attack

The proposed scheme effectively resists user-impersonation attacks because even if an attacker intercepts the authentication messages sent to the cloud center, they cannot generate h ( U I D i δ i ) , which is a critical parameter for authentication. As the cloud center must calculate R 1 * = M 3 h ( M 1 * M 2 ) ) h ( U I D i δ i ) to verify the user, the inability of the attacker to reconstruct h ( U I D i δ i ) prevents further progress in the authentication process. The scheme is also resistant to stolen-device attacks.

7.2.2. A2: Resistance to Stolen-Device Attack

Even if an attacker physically steals a user’s smart device and obtains stored information { c h e c k U i , R 1 , B , C , τ i , P , G } , they cannot generate the valid biometric information δ i required for login or authentication. Furthermore, for IoT devices, even if an attacker gains access to { S I D j , T . S I D j } and intercepts messages transmitted over public channels, they cannot generate the response R n G used for authentication, owing to the nature of the PUF. The scheme is also resistant to stolen-device attacks.

7.2.3. A3: Resistance to Session Key Disclosure Attack

Messages M 6 and M 9 , which contain session key S K information, are transmitted over a public channel. However, an attacker cannot compute S K from these messages because they cannot access H ( X G k ) and R n G , both of which are essential for deriving S K . The scheme ensures security against session key exposure attacks.

7.2.4. A4: Resistance to Replay Attack

During the authentication and key distribution phase, each transmitted message includes a timestamp, and the recipient first verifies its validity. If the timestamp is invalid, the session is immediately terminated. Therefore, the proposed scheme is resistant to replay attacks.

7.2.5. A5: Resistance to Man-in-the-Middle Attack

In the proposed scheme, secret information that can only be generated by each participant is used for mutual authentication between U i , C l o u d C e n t e r , G W N k , and S N j during the authentication and key distribution phases. For instance, even if an attacker intercepts all messages transmitted over the public channel, they may attempt to change M 2 and M 3 in a message from U i to C l o u d C e n t e r to impersonate the legitimate U i . However, the attacker cannot generate h ( U I D i δ i ) , which is uniquely generated by U i . Therefore, the request message sent by the attacker cannot successfully authenticate as the legitimate user. In this manner, the proposed scheme is resistant to man-in-the-middle attacks, as the authentication value is generated using secret information known only to the legitimate participants, making it impossible for an attacker to alter or forge this value.

7.2.6. A6: Resistance to PUF Modeling Attack

Finally, the scheme is resistant to PUF modeling attacks, which involve collecting a large number of PUF challenge–response pairs and using machine learning techniques to predict legitimate responses. In the proposed scheme, two PUF challenge–response pairs, ( C n C , R n C ) and ( C n G , R n G ) , are transmitted over a private channel during the IoT device registration phase. However, during the authentication and key-sharing phases, only the PUF challenges C n C and C n R are transmitted over a public channel, while the responses remain private. This prevents attackers from collecting sufficient challenge–response pairs to train a predictive model, making PUF modeling attacks infeasible.

7.2.7. S1: Provide Anonymity and Untraceability

Regarding anonymity and untraceability, the proposed telemedicine system model does not require user anonymity because the doctor communicates with the cloud center rather than directly with the IoT device. However, anonymity and untraceability are necessary for the patient’s IoT device. The scheme achieves this by using T . S I D j , a temporary ID for S I D j , which is randomly generated for each session and updated at the end of the session to provide anonymity and untraceability.

7.2.8. S2: Provide Mutual Authentication

During the authentication and key distribution phases, U i , C l o u d C e n t e r , G W N k , and S N j undergo mutual authentication. The C l o u d C e n t e r authenticates U i by verifying that R 1 * and M 5 match A h ( U I D i δ i ) and h ( h ( U I D i δ i ) R 1 * M 1 * M 2 S I D j ) , respectively. G W N k authenticates the C l o u d C e n t e r by verifying M 8 , while S N j authenticates G W N k by verifying M 10 . If any of these values are invalid, the session is aborted, ensuring that the proposed scheme provides mutual authentication.

7.2.9. S3: Provide Forward and Backward Secrecy

The proposed scheme guarantees forward and backward secrecy by ensuring that the session key S K is randomly generated for each session. Although it is used to compute M 12 , it cannot be inferred owing to the one-way nature of the hash function. Therefore, even if the session key for a particular session is compromised, an attacker cannot determine the session keys for previous or future sessions. Therefore, the proposed scheme provides forward secrecy and backward secrecy.

8. Performance Analysis of Proposed Scheme

In this section, we compare the performance of the proposed scheme with recent studies [12,13,14,15,16,17,18,19], focusing on minimizing the computational overhead of IoT devices while evaluating our scheme against existing works.
For comparison, we utilized computational overhead measurements obtained from a prior study conducted in a CPU-based environment using an Intel Core i7-8700 (3.20 GHz) processor, Windows 10 (64-bit) OS, and 48 GB of memory, employing the Python cryptography library 3.13.2 [33]. The results are presented in Table 10.
In the study by Wang et al. [12], the user performs 8 hash function computations, 1 fuzzy extractor operation, and 3 elliptic curve multiplications, which can be expressed as 8 h + 1 f + 3 m . Based on the experimental environment, this corresponds to 2129.52 μ s. At the cloud center, 10 hash function computations and 1 elliptic curve multiplication are performed, expressed as 10 h + 1 m = 533.9 μ s. The gateway node performs 9 hash function computations, represented as 9 h = 1.71 μ s. Additionally, the sensor node executes 4 hash function computations and 2 elliptic curve multiplications, which can be expressed as 4 h + 2 m = 1064.76 μ s.
Wazid et al. [13] introduced an approach where the user carries out 13 h + 2 s + 1 f , which corresponds to 535.01 μ s. Their scheme does not involve a cloud center, so the gateway node handles 5 h + 4 s , taking 2.03 μ s. On the sensor side, 4 h + 2 s is performed, resulting in 1.3 μ s.
Yang et al. [14]’s method focuses on lightweight computation, requiring the user to compute 8 h , leading to 1.52 μ s. The gateway node processes 14 h , with an execution time of 2.66 μ s, while the sensor node performs 7 h , taking 1.33 μ s.
Srinivas et al. [15] proposed an approach where the user performs 2 c + 15 h + 1 f , consuming 542.45 μ s. Their method involves computations at the gateway node, where 10 h is executed, taking 1.9 μ s. The sensor node carries out 2 c + 6 h , leading to a processing time of 8.74 μ s.
Wazid et al.’s scheme in [16] follows a slightly different structure. The user executes 9 h + 1 s + 1 f , with a computation time of 533.98 μ s. The gateway node computes 11 h + 2 s , requiring 2.63 μ s, while the sensor node carries out 7 h + 1 s , taking 1.6 μ s.
Dai et al. [17] introduced a model where the user must perform 1 f + 9 h + 3 m , consuming 2129.71 μ s. The gateway node handles 11 h + 1 m , with an execution time of 534.09 μ s, and the sensor node processes 5 h + 2 m , leading to 1064.95 μ s.
Hu et al. [18]’s scheme assigns 15 h + 1 f + 2 c computations to the user, requiring 542.45 μ s. Their method does not include cloud center processing, so the gateway node executes 7 h + 1 s , with a computation time of 1.6 μ s. Meanwhile, the sensor node performs 4 h + 2 c + 1 s , resulting in 8.63 μ s.
Jiang et al. [19] designed a method where the user processes 1 f + 11 h + 5 m + 1 s , which takes 3194.36 μ s. The cloud center, in their model, executes 5 m + 1 s + 12 h , consuming 2662.55 μ s, while the sensor node handles 4 h , leading to 0.76 μ s.
In our proposed scheme, as demonstrated in Table 11, we optimize the computational cost across all entities. The user performs 9 h + 1 f + 4 m , leading to 2661.71 μ s. Our approach eliminates unnecessary computations at the cloud center, processing 2 m + 17 h , taking 1067.23 μ s. The gateway node handles 9 h , requiring 1.71 μ s, while the sensor node executes 3 h , resulting in a final processing time of 0.57 μ s. Our proposed scheme increases the computational load at the cloud center and user mobile devices, thereby reducing the computational burden on the sensor node. While the average computational cost at the sensor node in other schemes is 202.5563 μ s, our scheme reduces this to 0.57 μ s, making it approximately 35,436.18% more efficient. The overall efficiency of the authentication scheme is most affected by the load and cost of the sensor nodes. Relatively speaking, cloud centers and user mobile devices have relatively high computing resources compared to sensor nodes and gateways, so the increase in computation does not have a significant impact on the overall efficiency of the authentication scheme. Moreover, as demonstrated in Table 9, our proposed scheme ensures stronger security performance compared to other studies.

9. Conclusions

In this study, we analyzed Wang et al.’s authentication scheme and identified several limitations, including the vulnerability in illegal session key exchanges due to stored information in IoT devices and publicly transmitted data, as well as inefficiencies despite utilizing cloud centers. To overcome these issues, we incorporated P U F technology into IoT devices to prevent unauthorized session key exchanges and improve efficiency by ensuring that public-key computations are performed exclusively in the cloud center. In addition to safeguarding patient privacy and maintaining untraceability, IoT devices utilize only a temporary T . S I D j during authentication and key distribution. In this study, computationally intensive operations are offloaded to the cloud to significantly reduce the computational and energy burden on sensor nodes. This approach enables stable service provision even in resource-constrained medical IoT devices. By performing all authentication and key exchange processes through the cloud center, the proposed scheme achieves lightweight operation at both sensor nodes and gateways. The system is designed under the assumption that the cloud center possesses sufficient computational power and communication resources. In practical deployments, ensuring appropriate cloud resource provisioning and adopting efficient resource management strategies will help maintain system efficiency and stability. Through this approach, the proposed authentication and key distribution scheme is expected to maintain efficiency and robustness across diverse environments. Although the proposed authentication and key distribution scheme is designed for medical IoT environments, its structure is not application-specific, allowing for flexible adaptation to other IoT domains. For instance, the lightweight sensor node design and cloud-based authentication framework can be readily applied to smart homes, industrial IoT, and smart city environments. Therefore, the proposed scheme can maintain high efficiency and stability not only in healthcare but also in a variety of large-scale IoT deployments. Finally, we compared the security and efficiency of our scheme with recent authentication schemes [12,13,14,15,16,17,18,19] and validated its security using ProVerif, a formal security analysis tool.

Author Contributions

Conceptualization: H.J.L., S.K., and K.K.; methodology: H.J.L. and J.R.; software: S.K. and K.K.; validation: H.J.L., H.L., and J.R.; formal Analysis: K.K. and J.R.; writing—original draft preparation: H.J.L., S.K., and K.K.; writing—review and editing: J.R. and Y.L.; visualization: H.J.L.; supervision: J.R. and D.W.; project administration: J.R. and D.W.; funding acquisition: D.W. All authors have read and approved the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Ali, Z.; Mahmood, S.; Mansoor, K.; Daud, A.; Alharbey, R.; Bukhari, A. A lightweight and secure authentication scheme for remote monitoring of patients in IoMT. IEEE Access 2024, 12, 73004–73020. [Google Scholar] [CrossRef]
  2. Manickam, N.; Ponnusamy, V. A Review of Secure Healthcare Data Analytics using Federated Machine Learning and Blockchain Technology. IEIE Trans. Smart Process. Comput. 2024, 13, 254–262. [Google Scholar] [CrossRef]
  3. Batool, R.; Raza, G.M.; Khalid, U.; Kim, B.S. Automated Detection of COVID-19 in Chest Radiographs: Leveraging Machine Learning Approaches. IEIE Trans. Smart Process. Comput. 2024, 13, 572–578. [Google Scholar]
  4. Lee, H.J.; Kook, S.; Kim, K.; Ryu, J.; Lee, Y.; Won, D. LAMT: Lightweight and Anonymous Authentication Scheme for Medical Internet of Things Services. Sensors 2025, 25, 821. [Google Scholar] [CrossRef]
  5. Prajapat, S.; Kumar, P.; Kumar, D.; Das, A.K.; Hossain, M.S.; Rodrigues, J.J. Quantum secure authentication scheme for internet of medical things using blockchain. IEEE Internet Things J. 2024, 11, 38496–38507. [Google Scholar] [CrossRef]
  6. Mookherji, S.; Vanga, O.; Prasath, R.; Das, A.K. A secure authentication protocol for remote patient monitoring in an internet-of-medical-things environment. Secur. Priv. 2024, 7, e428. [Google Scholar] [CrossRef]
  7. Sachnev, V.; Suresh, M.B. An Automatic Diagnostic Tool for Autism Spectrum Disorder using Structural Magnetic Resonance Imaging and a Tailored Binary Coded Genetic Algorithm. IEIE Trans. Smart Process. Comput. 2024, 13, 236–242. [Google Scholar] [CrossRef]
  8. Fortune Business Insights. Available online: https://www.fortunebusinessinsights.com/press-release/telemedicine-market-9214 (accessed on 20 March 2025).
  9. Ekambaram, D.; Ponnusamy, V. AI-assisted physical therapy for post-injury rehabilitation: Current state of the art. IEIE Trans. Smart Process. Comput. 2023, 12, 234–242. [Google Scholar] [CrossRef]
  10. Rani, D.; Tripathi, S. Design of blockchain-based authentication and key agreement protocol for health data sharing in cooperative hospital network. J. Supercomput. 2024, 80, 2681–2717. [Google Scholar] [CrossRef]
  11. Yadav, N.S.; Goar, V.K. IoT in Healthcare and Telemedicine: Revolutionizing Patient Care and Medical Practices. In Scalable Modeling and Efficient Management of IoT Applications; IGI Global: Hershey, PA, USA, 2025; pp. 19–58. [Google Scholar]
  12. Wang, C.; Wang, D.; Duan, Y.; Tao, X. Secure and lightweight user authentication scheme for cloud-assisted Internet of Things. IEEE Trans. Inf. Forensics Secur. 2023, 18, 2961–2976. [Google Scholar] [CrossRef]
  13. Wazid, M.; Das, A.K.; Odelu, V.; Kumar, N.; Conti, M.; Jo, M. Design of secure user authenticated key management protocol for generic IoT networks. IEEE Internet Things J. 2018, 5, 269–282. [Google Scholar] [CrossRef]
  14. Yang, Z.; He, J.; Tian, Y.; Zhou, J. Faster authenticated key agreement with perfect forward secrecy for industrial internet-of-things. IEEE Trans. Ind. Inform. 2020, 16, 6584–6596. [Google Scholar] [CrossRef]
  15. Srinivas, J.; Das, A.K.; Wazid, M.; Kumar, N. Anonymous lightweight chaotic map-based authenticated key agreement protocol for industrial Internet of Things. IEEE Trans. Dependable Secur. Comput. 2020, 17, 1133–1146. [Google Scholar] [CrossRef]
  16. Wazid, M.; Das, A.K.; Odelu, V.; Kumar, N.; Susilo, W. Secure remote user authenticated key establishment protocol for smart home environment. IEEE Trans. Dependable Secur. Comput. 2020, 17, 391–406. [Google Scholar] [CrossRef]
  17. Dai, C.; Xu, Z. A secure three-factor authentication scheme for multi-gateway wireless sensor networks based on elliptic curve cryptography. Ad Hoc Netw. 2022, 127, 102768. [Google Scholar] [CrossRef]
  18. Hu, H.; Liao, L.; Zhao, J. Secure authentication and key agreement protocol for cloud-assisted industrial internet of things. Electronics 2022, 11, 1652. [Google Scholar] [CrossRef]
  19. Jiang, Q.; Zhang, N.; Ni, J.; Ma, J.; Ma, X.; Choo, K.K.R. Unified biometric privacy preserving three-factor authentication and key agreement for cloud-assisted autonomous vehicles. IEEE Trans. Veh. Technol. 2020, 69, 9390–9401. [Google Scholar] [CrossRef]
  20. Zhao, J.; Li, Q.; Gong, Y.; Zhang, K. Computation Offloading and Resource Allocation For Cloud Assisted Mobile Edge Computing in Vehicular Networks. IEEE Trans. Veh. Technol. 2019, 68, 7944–7956. [Google Scholar] [CrossRef]
  21. Dolev, D.; Yao, A. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
  22. Degefa, F.; Ryu, J.; Kim, H.; Won, D. MES-FPMIPv6: MIH-Enabled and enhanced secure Fast Proxy Mobile IPv6 handover protocol for 5G networks. PLoS ONE 2022, 17, e0262696. [Google Scholar] [CrossRef]
  23. Jung, J.; Lee, D.; Lee, H.; Won, D. Security enhanced anonymous user authenticated key agreement scheme using smart card. J. Electron. Sci. Technol. 2018, 16, 45–49. [Google Scholar]
  24. Mahmood, K.; Obaidat, M.S.; Shamshad, S.; Alenazi, M.J.; Kumar, G.; Anisi, M.H.; Conti, M. Cost-effective authenticated solution (CAS) for 6G-enabled artificial intelligence of medical things (AIoMT). IEEE Internet Things J. 2024, 11, 23977–23984. [Google Scholar] [CrossRef]
  25. Chen, C.M.; Xiong, Z.; Wu, T.Y.; Kumari, S.; Alenazi, M.J. Protecting Virtual Economies: A Blockchain-based Anti-Phishing Authentication Protocol for Metaverse Applications. IEEE Internet Things J. 2025; early access. [Google Scholar]
  26. Kapoor, V.; Abraham, V.S.; Singh, R. Elliptic curve cryptography. Ubiquity 2008, 9, 1–8. [Google Scholar] [CrossRef]
  27. Maarouf, A.; Sakr, R.; Elmougy, S. An offline direct authentication scheme for the internet of medical things based on elliptic curve cryptography. IEEE Access 2024, 12, 134902–134925. [Google Scholar] [CrossRef]
  28. Lee, H.; Kang, D.; Lee, Y.; Won, D. Secure Three-Factor Anonymous User Authentication Scheme for Cloud Computing Environment. Wirel. Commun. Mob. Comput. 2021, 2021, 2098530. [Google Scholar] [CrossRef]
  29. Fuller, B.; Reyzin, L.; Smith, A. When are fuzzy extractors possible? IEEE Trans. Inf. Theory 2020, 66, 5282–5298. [Google Scholar] [CrossRef]
  30. An, J.; Choi, S.H. End-to-end Facial Recognition Deep Learning Model Specialized for Facial Angle using Gray Image. IEIE Trans. Smart Process. Comput. 2024, 13, 534–539. [Google Scholar] [CrossRef]
  31. Gao, Y.; Al-Sarawi, S.F.; Abbott, D. Physical unclonable functions. Nat. Electron. 2020, 3, 81–91. [Google Scholar] [CrossRef]
  32. Aldosary, A.; Tanveer, M. PAAF-SHS: PUF and authenticated encryption based authentication framework for the IoT-enabled smart healthcare system. Internet Things 2024, 26, 101159. [Google Scholar] [CrossRef]
  33. Woo, N.; Kang, T.; Ryu, J. CESA: Chebyshev-Polynomials-Based Efficient and Secure Access Authentication Scheme for Both User Equipment and Massive Machine-Type-Communication Devices Over 5G Networks. IEEE Internet Things J. 2025; early access. [Google Scholar]
  34. Kim, K.; Ryu, J.; Lee, H.; Lee, Y.; Won, D. Distributed and federated authentication schemes based on updatable smart contracts. Electronics 2023, 12, 1217. [Google Scholar] [CrossRef]
  35. Lee, H.; Ryu, J.; Won, D. Secure and anonymous authentication scheme for mobile edge computing environments. IEEE Internet Things J. 2023, 11, 5798–5815. [Google Scholar] [CrossRef]
  36. Ryu, J.; Lee, H.; Lee, Y.; Won, D. SMASG: Secure mobile authentication scheme for global mobility network. IEEE Access 2022, 10, 26907–26919. [Google Scholar] [CrossRef]
  37. Kang, T.; Woo, N.; Ryu, J. Enhanced lightweight medical sensor networks authentication scheme based on blockchain. IEEE Access 2024, 12, 35612–35629. [Google Scholar] [CrossRef]
  38. Blanchet, B.; Smyth, B.; Cheval, V.; Sylvestre, M. ProVerif 2.00: Automatic Cryptographic Protocol Verifier. User Man. Tutor. 2018, 16, 5–16. [Google Scholar]
  39. Kim, J.; Moon, J.; Jung, J.; Won, D. Security analysis and improvements of session key establishment for clustered sensor networks. J. Sens. 2016, 2016, 4393721. [Google Scholar] [CrossRef]
  40. Ryu, J.; Kang, D.; Won, D. Improved secure and efficient Chebyshev chaotic map-based user authentication scheme. IEEE Access 2022, 10, 15891–15910. [Google Scholar] [CrossRef]
  41. Kook, S.; Kim, K.; Ryu, J.; Lee, Y.; Won, D. Lightweight Hash-Based Authentication Protocol for Smart Grids. Sensors 2024, 24, 3085. [Google Scholar] [CrossRef]
  42. Miao, J.; Wang, Z.; Wu, Z.; Ning, X.; Tiwari, P. A blockchain-enabled privacy-preserving authentication management protocol for Internet of Medical Things. Expert Syst. Appl. 2024, 237, 121329. [Google Scholar] [CrossRef]
Figure 1. System model for telemedicine.
Figure 1. System model for telemedicine.
Sensors 25 02894 g001
Figure 2. Proposed authentication scheme.
Figure 2. Proposed authentication scheme.
Sensors 25 02894 g002
Figure 3. User registration phase.
Figure 3. User registration phase.
Sensors 25 02894 g003
Figure 4. Gateway registration phase.
Figure 4. Gateway registration phase.
Sensors 25 02894 g004
Figure 5. IoT device (sensor) registration phase.
Figure 5. IoT device (sensor) registration phase.
Sensors 25 02894 g005
Figure 6. Authentication and key distribution phase (Steps 1–3).
Figure 6. Authentication and key distribution phase (Steps 1–3).
Sensors 25 02894 g006
Figure 7. Authentication and key distribution phase (Steps 4–7).
Figure 7. Authentication and key distribution phase (Steps 4–7).
Sensors 25 02894 g007
Table 1. Notation.
Table 1. Notation.
NotationDescription
U i ,   S N j , G W N k i-th user, j-th IoT device (sensor), k-th medical gateway
U I D i , P W i i-th user’s identity and password
S I D j , G I D k j-th IoT device’s identity, k-th medical gateway’s identity
T . S I D j Temporary identity of j-th IoT device (sensor)
S C Long-term secret information of cloud center
S C k Long-term secret information of k-th medical gateway
P, d, GECC-based public key, private key, base point of cloud center
( C n c ,   R n c ) Challenge–response pair of PUF for cloud center
( C n g ,   R n g ) Challenge–response pair of PUF for gateway
S K Session key
R 1 ,   R 2 ,   Random number
T 1 ,   T 2 ,   Time stamp
Table 2. Definitions of channels, variables, and other related parameters.
Table 2. Definitions of channels, variables, and other related parameters.
(*—-channels—-* 1)
free privateChannel: channel [private].
free publicChannel: channel.
(*—-constants—-*)
free UserSigma: bitstring [private].
free UserPassword: bitstring [private].
free UserID: bitstring [private].
free GatewayKey: bitstring [private].
free GatewayID: bitstring.
free ServerID: bitstring.
(*—-shared key—-*)
free SharedKey: bitstring [private].
(*—-functions—-*)
fun xor(bitstring, bitstring): bitstring.
fun concat(bitstring, bitstring): bitstring.
fun h(bitstring): bitstring.
fun scalar_mult(bitstring, bitstring): bitstring.
(*—-events—-*)
event startUser(bitstring).
event endUser(bitstring).
event startCloudCenter().
event endCloudCenter().
event startGateway(bitstring).
event endGateway(bitstring).
event startSensorNode(bitstring).
event endSensorNode(bitstring).
1 In ProVerif, the (*…*) notation indicates a comment.
Table 3. User process.
Table 3. User process.
(*—-User Process—-*)
let UserProcess = let checkUserID = xor(h(concat(UserID, UserPassword)), h(UserSigma)) in
out(privateChannel, (UserID, UserSigma));
in(privateChannel, (receivedUserID: bitstring, receivedA: bitstring, receivedP: bitstring, receivedG: bitstring));
if receivedUserID = UserID then
let computedR1 = xor(receivedA, h(concat(UserID, UserSigma))) in
new R2: bitstring;
let computedB = xor(h(concat(UserID, UserSigma)), R2) in
let computedC = h(concat(UserID, R2)) in
event startUser(UserID);
new inputUserID:bitstring;
new inputUserPassword:bitstring;
new inputUserSigma:bitstring;
if checkUserID = xor(h(concat(inputUserID, inputUserPassword)), h(inputUserSigma)) then
let computedR2 = xor(computedB, h(xor(inputUserID,inputUserSigma))) in
if computedC = h(concat(inputUserSigma, computedR2)) then
new R3:bitstring;
new T1:bitstring;
new SensorID:bitstring;
let computedM1 = scalar_mult(R3, receivedP) in
let computedM2 = scalar_mult(R3, receivedG) in
let computedM3 = xor(xor(h(concat(computedM1,computedM2)), computedR1), h(concat(inputUserID,inputUserSigma))) in
let computedM4 =xor( h(xor(xor(computedM1,computedM2), computedM3)), SensorID) in
let computedM5 =h(concat(concat(concat(computedR1,computedM1),computedM2),SensorID)) in
out(publicChannel, (inputUserID,computedM2, computedM3, computedM4, computedM5, T1 ));
in(publicChannel, (receivedM14: bitstring, receivedM15: bitstring, receivedM16: bitstring, receivedT6: bitstring));
let SharedKey = xor(xor(receivedM14,h(concat(concat(computedM1,computedR1),receivedT6))),
h(concat(inputUserID,inputUserSigma))) in
if scalar_mult(SharedKey,receivedP) = scalar_mult(computedM5,receivedG) then
let computedM16 = h(concat(concat(concat(SharedKey,computedM1),receivedM15),receivedT6)) in
if computedM16 = receivedM16 then
event endUser(UserID).
Table 4. CloudCenter process.
Table 4. CloudCenter process.
(*—-CloudCenter Process—-*)
let CloudCenterProcess = in(privateChannel, (receivedUserID:bitstring, receivedSigma:bitstring));
new R1:bitstring;
new P:bitstring;
new G:bitstring;
let computedA = xor(h(concat(receivedUserID,receivedSigma )),R1) in
out(privateChannel, (receivedUserID, computedA, P, G));
in(privateChannel, (receivedGatewayID:bitstring));
new SC:bitstring;
let computedXG=h(concat(SC,receivedGatewayID )) in
out(privateChannel, (receivedGatewayID, computedXG));
in(privateChannel, (receivedCheckG:bitstring));
in(privateChannel, (receivedSensorID:bitstring));
new Challenge:bitstring;
new TempSensorID:bitstring;
out(privateChannel, (Challenge,TempSensorID ));
in(privateChannel,(receivedRNC:bitstring));
event startCloudCenter();
in(publicChannel, (receivedUserID:bitstring, receivedM2:bitstring, receivedM3:bitstring,
receivedM4:bitstring, receivedM5:bitstring, receivedT1:bitstring));
new d:bitstring;
let computedM1=scalar_mult(d, receivedM2) in
let computedR1=xor(xor(receivedM3,h(concat(computedM1,receivedM2))),h(concat(receivedUserID,receivedSigma ))) in
if computedR1= xor(computedA, h(concat(receivedUserID, receivedSigma))) then
let computedSensorID = xor(receivedM4, h(concat(concat(computedM1,receivedM2 ),receivedM3))) in
if computedSensorID=receivedSensorID then
if receivedM5=h(concat(concat(concat(xor(h(concat(receivedUserID,receivedSigma)),
computedR1),computedM1),receivedM2),receivedSensorID)) then
new SK:bitstring;
new T2:bitstring;
let computedM6 = xor(xor(SK,h(computedXG)),h(concat(receivedCheckG,computedXG ))) in
let computedM7 = xor(h(concat(concat(SK,computedM6),computedXG)),TempSensorID) in
let computedM8 =h(concat(concat(concat(concat(SK,computedM6),computedXG),TempSensorID),T2)) in
out(publicChannel,(TempSensorID,computedM6, computedM7, computedM8, Challenge, T2 ));
in(publicChannel, (receivedTempSensorID:bitstring, receivedM12:bitstring, receivedM13:bitstring, receivedT5:bitstring));
let computedM12= h(concat(SK,h(receivedRNC))) in
let computedM13= xor(h(concat(SK,computedM12)),h(concat(receivedT5,computedXG))) in
if computedM12=receivedM12 then
if computedM13=receivedM13 then
new T6:bitstring;
let computedM14 = xor(xor(SK,h(concat(concat(computedM1,computedR1),T6))),h(concat(receivedUserID,receivedSigma))) in
let computedM15 =scalar_mult(SK, d) in
let computedM16 = h(concat(concat(concat(SK,computedM1),computedM15),T6)) in
out(publicChannel, (computedM14, computedM15,computedM16, T6 ));
event endCloudCenter().
Table 5. Gateway process.
Table 5. Gateway process.
(*—-Gateway Process—-*) let GatewayProcess = new GatewayID:bitstring;
out(publicChannel, (GatewayID));
in(publicChannel,(receivedGatewayID:bitstring, receivedXG:bitstring));
new SG:bitstring;
let computedCheckG =h(concat(SG,receivedXG)) in
out(publicChannel, (computedCheckG));
in(publicChannel, (receivedSensorID:bitstring));
new CNg:bitstring;
out(publicChannel, (CNg));
in(publicChannel, (receivedSensorID:bitstring, receivedTempSensorID:bitstring, receivedRN:bitstring));
event startGateway(GatewayID);
in(publicChannel, (receivedTemporSensorID:bitstring, receivedM6:bitstring, receivedM7:bitstring,
receivedM8:bitstring, receivedCNc:bitstring, receivedT2:bitstring));
let computedSK = xor(xor(receivedM6,h(receivedXG)),h(concat(computedCheckG,receivedXG))) in
let TempSensorID = xor(receivedM7, h(concat(concat(computedSK,receivedM6),receivedXG))) in
if receivedM8 = h(concat(concat(concat(concat(computedSK,receivedM6),receivedXG),receivedTemporSensorID),receivedT2)) then
new T3:bitstring;
let computedRNg= xor(xor(SG,receivedRN),SG) in
let computedM9 = xor(computedSK, h(receivedRN)) in
let computedM10 = h(concat(concat(concat(computedSK,receivedTemporSensorID),receivedRN),T3))in
out(publicChannel, (GatewayID,computedM9, computedM10, receivedCNc, CNg, T3 ));
in(publicChannel, (receivedTempSensorID:bitstring, receivedM11:bitstring, receivedM12:bitstring, receivedT4:bitstring));
if receivedM11 =h(concat(concat(computedSK,h(receivedRN)),receivedT4)) then
new T5:bitstring;
let computedM13=xor(h(concat(computedSK,receivedM12)), h(concat(T5,receivedXG))) in
out(publicChannel, (receivedTempSensorID,receivedM12, computedM13, T5));
event endGateway(GatewayID).
Table 6. SensorNode process.
Table 6. SensorNode process.
(*—-SensorNode Process—-*)
let SensorNodeProcess = new SensorID:bitstring;
out(publicChannel, (SensorID));
in(publicChannel, (receivedCn:bitstring, receivedTempSensorID:bitstring));
new RNc:bitstring;
out(publicChannel, (RNc));
out(publicChannel, (SensorID));
in(publicChannel, (CNg:bitstring));
new RNg:bitstring;
out(publicChannel, (SensorID,receivedTempSensorID, RNg ));
event startSensorNode(SensorID);
in(publicChannel, (receivedGatewayID:bitstring, receivedM9:bitstring, receivedM10:bitstring,
receivedCNc:bitstring, receivedCNg:bitstring, receivedT3:bitstring));
new RNg:bitstring;
let computedSK = xor(receivedM9,h(RNg)) in
if receivedM10 = h(concat(concat(concat(computedSK,receivedTempSensorID),RNg),receivedT3)) then
new T4:bitstring;
new RNc:bitstring;
let computedM11 = h(concat(concat(computedSK,h(RNg)),T4)) in
let computedM12 = h(concat(computedSK,h(RNc)))in
out(publicChannel, (receivedTempSensorID, computedM11,computedM12, T4 ));
event endSensorNode(SensorID).
Table 7. Queries and main process.
Table 7. Queries and main process.
(*—-queries—-*)
query idi:bitstring; inj-event(endUser(idi)) ==> inj-event(startUser(idi)).
query inj-event(endCloudCenter()) ==> inj-event(startCloudCenter()).
query gwi:bitstring; inj-event(endGateway(gwi)) ==> inj-event(startGateway(gwi)).
query snj:bitstring; inj-event(endSensorNode(snj)) ==> inj-event(startSensorNode(snj)).
query attacker(SharedKey).
(*—-process—-*)
process ((!UserProcess)|(!CloudCenterProcess)|(!GatewayProcess)|(!SensorNodeProcess))
Table 8. Result.
Table 8. Result.
Verification summary:
Query inj-event(endUser(idi)) ==> inj-event(startUser(idi)) is true.
Query inj-event(endCloudCenter) ==> inj-event(startCloudCenter) is true.
Query inj-event(endGateway(gwi)) ==> inj-event(startGateway(gwi)) is true.
Query inj-event(endSensorNode(snj)) ==> inj-event(startSensorNode(snj)) is true.
Query not attacker(SharedKey[]) is true.
Table 9. Comparison of security features.
Table 9. Comparison of security features.
Security FeaturesWang et al. [12]Wazid et al. [13]Yang et al. [14]Srinivas et al. [15]Wazid et al. [16]Dai et al. [17]Hu et al. [18]Jiang et al. [19]Ours
A1OOOOOOOOO
A2OOOOOOOOO
A3XOOOOOOOO
A4OOOOOOOOO
A5OOOOOOOOO
A5OOOOOOOOO
S1OOOXOOOOO
S2OOOOOOOOO
S3OXXOXOOOO
Table 10. Computation times for each operation (μs).
Table 10. Computation times for each operation (μs).
SymbolMeaningTime (μs)
hComputation time for hash functions 0.19
fExtraction time of biometric information in fuzzy extractors532
mMultiplication operation time in ECC532
sComputation time for symmetric key encryption or decryption 0.27
cChebyshev polynomial computation time 3.8
Table 11. Comparisons of computational costs ( μ s).
Table 11. Comparisons of computational costs ( μ s).
SchemeUserCloud CenterGateway NodeSensor Node
Wang et al. [12] 8 h + 1 f + 3 m 10 h + 1 m 9 h 4 h + 2 m
Wazid et al. [13] 13 h + 2 s + 1 f - 5 h + 4 s 4 h + 2 s
Yang et al. [14] 8 h - 14 h 7 h
Srinivas et al. [15] 2 c + 15 h + 1 f - 10 h 2 c + 6 h
Wazid et al. [16] 9 h + 1 s + 1 f - 11 h + 2 s 7 h + 1 s
Dai et al. [17] 1 f + 9 h + 3 m - 11 h + 1 m 5 h + 2 m
Hu et al. [18] 15 h + 1 f + 2 c - 7 h + 1 s 4 h + 2 c + 1 s
Jiang et al. [19] 1 f + 11 h + 5 m + 1 s 5 m + 1 s + 12 h - 4 h
Ours 9 h + 1 f + 4 m 2 m + 17 h 9 h 3 h
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.

Share and Cite

MDPI and ACS Style

Lee, H.J.; Kook, S.; Kim, K.; Ryu, J.; Lee, H.; Lee, Y.; Won, D. Lightweight and Efficient Authentication and Key Distribution Scheme for Cloud-Assisted IoT for Telemedicine. Sensors 2025, 25, 2894. https://doi.org/10.3390/s25092894

AMA Style

Lee HJ, Kook S, Kim K, Ryu J, Lee H, Lee Y, Won D. Lightweight and Efficient Authentication and Key Distribution Scheme for Cloud-Assisted IoT for Telemedicine. Sensors. 2025; 25(9):2894. https://doi.org/10.3390/s25092894

Chicago/Turabian Style

Lee, Hyang Jin, Sangjin Kook, Keunok Kim, Jihyeon Ryu, Hakjun Lee, Youngsook Lee, and Dongho Won. 2025. "Lightweight and Efficient Authentication and Key Distribution Scheme for Cloud-Assisted IoT for Telemedicine" Sensors 25, no. 9: 2894. https://doi.org/10.3390/s25092894

APA Style

Lee, H. J., Kook, S., Kim, K., Ryu, J., Lee, H., Lee, Y., & Won, D. (2025). Lightweight and Efficient Authentication and Key Distribution Scheme for Cloud-Assisted IoT for Telemedicine. Sensors, 25(9), 2894. https://doi.org/10.3390/s25092894

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop