Next Article in Journal
Dimensioning of Wide-Area Alternate Wetting and Drying (AWD) System for IoT-Based Automation
Next Article in Special Issue
LoRaWAN Physical Layer-Based Attacks and Countermeasures, A Review
Previous Article in Journal
A New Photographic Reproduction Method Based on Feature Fusion and Virtual Combined Histogram Equalization
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Provably Secure Three-Factor-Based Mutual Authentication Scheme with PUF for Wireless Medical Sensor Networks

1
School of Electronic and Electrical Engineering, Kyungpook National University, Daegu 41566, Korea
2
School of Computer Engineering, Keimyung University, Daegu 42601, Korea
3
School of Electronics Engineering, Kyungpook National University, Daegu 41566, Korea
*
Author to whom correspondence should be addressed.
Sensors 2021, 21(18), 6039; https://doi.org/10.3390/s21186039
Submission received: 17 August 2021 / Revised: 2 September 2021 / Accepted: 7 September 2021 / Published: 9 September 2021
(This article belongs to the Special Issue Security Assessment in IoT-Based Wireless Sensor Networks)

Abstract

:
Wireless medical sensor networks (WMSNs) are used in remote medical service environments to provide patients with convenient healthcare services. In a WMSN environment, patients wear a device that collects their health information and transmits the information via a gateway. Then, doctors make a diagnosis regarding the patient, utilizing the health information. However, this information can be vulnerable to various security attacks because the information is exchanged via an insecure channel. Therefore, a secure authentication scheme is necessary for WMSNs. In 2021, Masud et al. proposed a lightweight and anonymity-preserving user authentication scheme for healthcare environments. We discover that Masud et al.’s scheme is insecure against offline password guessing, user impersonation, and privileged insider attacks. Furthermore, we find that Masud et al.’s scheme cannot ensure user anonymity. To address the security vulnerabilities of Masud et al.’s scheme, we propose a three-factor-based mutual authentication scheme with a physical unclonable function (PUF). The proposed scheme is secure against various security attacks and provides anonymity, perfect forward secrecy, and mutual authentication utilizing biometrics and PUF. To prove the security features of our scheme, we analyze the scheme using informal analysis, Burrows–Abadi–Needham (BAN) logic, the Real-or-Random (RoR) model, and Automated Verification of Internet Security Protocols and Applications (AVISPA) simulation. Furthermore, we estimate our scheme’s security features, computation costs, communication costs, and energy consumption compared with the other related schemes. Consequently, we demonstrate that our scheme is suitable for WMSNs.

1. Introduction

With the development of wireless communication and sensor minimization technology, wireless sensor networks (WSNs) have been widely used in various environments, such as industrial Internet of Things [1], healthcare [2], and smart homes [3]. In particular, the demand for remote healthcare services has been increased due to the COVID-19 pandemic [4]. Remote healthcare services can be realized through wireless medical sensor networks (WMSNs). Generally, WMSNs consist of doctors (users), a gateway, and sensor nodes. Doctors communicate with the gateway to access a patient’s health data through their smart device. The gateway, such as a smart hospital, stores sensitive data and supports smooth wireless communication between doctors and sensor nodes. Sensor nodes are attached to patients and transmit patients’ sensitive health data to doctors through the gateway [5]. Therefore, doctors can perform the diagnosis of patients remotely and patients can receive convenient remote medical services wherever they are.
Although WMSNs can provide convenient medical services to patients, there are several security risks. First of all, each message is exchanged through a public channel; therefore, malicious adversaries can perform security attacks such as replay and man-in-the-middle attacks [6]. In addition, the smart device of a doctor can be stolen and an adversary can attempt to impersonate the doctor using parameters extracted from the device. In addition, the sensor node can be physically captured by an adversary and the adversary can attempt to impersonate the patient using the secret parameter, extracted from the sensor node. If an adversary obtains and modifies the information of patients using the above security attacks, this can have a serious effect on the patient’s health, such as inducing a misdiagnosis by the doctor. Accordingly, secure authentication schemes are necessary to overcome these security vulnerabilities for WMSNs.
In 2021, Masud et al. [7] proposed a lightweight and anonymity-preserving user authentication scheme for IoT-based healthcare environments. They claimed that their scheme is lightweight and prevents various security attacks (e.g., replay, privileged insider, and impersonation attacks). Moreover, they asserted that their scheme can ensure user anonymity and session key agreement. However, we find that Masud et al.’s scheme cannot prevent offline password guessing, user impersonation, and privileged insider attacks. Moreover, we prove that their scheme cannot ensure user anonymity. Their scheme also has a device update problem, where the doctor cannot perform a login process on his own smart device. To overcome these security vulnerabilities of Masud et al.’s scheme, we propose a secure three-factor-based mutual authentication scheme with physical unclonable function (PUF) for WMSNs. In our scheme, we use PUF and fuzzy extractor [8] to enhance the security level. The PUF is a physical circuit that outputs unpredictable random strings, and the fuzzy extractor is a cryptographic algorithm that utilizes the biometrics of users. Therefore, we install the PUF in the sensor node to prevent physical and cloning attacks, and we utilize the fuzzy extractor to overcome offline password guessing attacks. Our scheme also uses hash functions and exclusive-OR operations to ensure real-time communication.

1.1. Research Contributions

The contributions of our paper are as follows.
  • We review Masud et al.’s scheme and prove that their scheme cannot ensure user anonymity. Moreover, we show that their scheme is vulnerable to offline password, impersonation, and privileged insider attacks and has a device update problem.
  • We propose a secure three-factor-based mutual authentication scheme to overcome the security vulnerabilities of Masud et al.’s scheme. We use hash functions and exclusive-OR operations to provide real-time communication for WMSNs. We also utilize PUF and fuzzy extractor [8] to prevent physical and offline password guessing attacks, respectively.
  • We analyze the security features of the proposed scheme using well-known Burrows–Abadi–Needham (BAN) logic [9] and the Real-or-Random (RoR) model [10], which can prove mutual authentication and session key security, respectively. Furthermore, we utilize the Automated Verification of Internet Security Protocols and Applications (AVISPA) simulation tool [11,12] to prove that the proposed scheme has resistance against replay and man-in-the-middle attacks.
  • We show that our scheme has resistance against various security attacks, such as offline password, impersonation, privileged insider, replay, and man-in-the-middle attacks, using informal analysis. Moreover, the proposed scheme ensures user anonymity, perfect forward secrecy, and mutual authentication.
  • We estimate the security properties and functionalities, communication costs, computation costs, and energy consumption of our scheme in comparison with existing authentication schemes.

1.2. Organization

In Section 2, we introduce related works for WMSNs. We describe the PUF, fuzzy extractor, adversary model, and system model in Section 3. In Section 4, we describe the detailed procedures of Masud et al.’s scheme. In Section 5, we prove the security vulnerabilities of Masud et al.’s scheme. To overcome these security vulnerabilities, we propose a secure three-factor-based mutual authentication scheme with PUF for WMSNs in Section 6. In Section 7 and Section 8, we analyze the security features of our scheme using formal and informal analyses and estimate the performance of our scheme, respectively. Finally, we conclude and summarize our paper in Section 9.

2. Related Works

In the past several decades, researchers have proposed numerous two-factor-based authentication schemes for WMSNs. In 2012, Kumar et al. [13] proposed an authentication scheme for healthcare applications using a smart card. Their scheme used a symmetric encryption method to establish the session key between the user and the medical sensor node. However, He et al. [14] claimed that Kumar et al.’s scheme is vulnerable to password guessing and privileged insider attacks. As a result, He et al. proposed a robust authentication scheme to overcome these security weaknesses. Unfortunately, Mir et al. [15] demonstrated that [14] cannot prevent offline password guessing and masquerading user attacks. To address the security vulnerabilities of He et al’s scheme [15], they proposed an authentication and key agreement scheme using hash functions and exclusive-OR operations. In 2018, Wu et al. [16] proposed an authentication scheme for personalized healthcare systems. They used a smart device as a factor to protect the privacy of the doctor. However, the above schemes [13,14,15,16] can be vulnerable to smart device theft and offline password guessing attacks because they adopt two-factor-based authentication schemes.
Three-factor-based authentication schemes have been proposed to improve the security level for WMSNs. In 2018, Challa et al. [17] proposed a three-factor-based user authentication and key agreement protocol using bilinear pairings for wireless healthcare sensor networks. Challa et al. employed bilinear pairing and the fuzzy extractor to overcome security vulnerabilities such as smart card theft, offline password guessing, and privileged insider attacks. In 2019, Li et al. [18] proposed a three-factor user authentication protocol based on elliptic curve cryptography (ECC). They claimed that their scheme can resist various security attacks utilizing biometrics verification with error-correcting code and a fuzzy commitment scheme. Shin et al. [19] suggested an authentication and key agreement scheme that can preserve users’ privacy in 5G-integrated IoT environments. In [19], each entity establishes the session key using elliptic curve Diffie–Hellman (ECDH). Furthermore, Ali et al. [20] proposed a biometric-based authentication and access control protocol for WMSNs using ECC. They claimed that their scheme is secure against privileged insider, stolen smart card, and offline password guessing attacks. In 2020, Hsu et al. [21] proposed a three-factor user-controlled single sign-on (UCSSO) scheme for telecare medicine information systems. Their scheme can provide fast authentication and privacy protection using only hash functions and exclusive-OR operations. Although the above schemes [18,19,20,21] can provide lightweight communications to doctors and patients, they cannot prevent sensor node physical and cloning attacks.
Recently, PUF-based authentication schemes have been proposed to prevent physical attacks. In 2017, Aman et al. [22] suggested a mutual authentication scheme using PUF in IoT systems. They claimed that their scheme is secure against IoT device cloning attacks because PUF is employed on each IoT device. Byun [23] proposed an end-to-end key exchange scheme using PUF. This scheme utilized PUF-embedded devices and the fuzzy extractor to ensure mutual authentication between two devices. In 2020, Fang et al. [24] proposed a PUF-based data transmission scheme for IoT environments. They proved that their scheme can prevent various attacks, such as DoS, eavesdropping, impersonation, and cloning attacks, using PUF. In 2021, Chen et al. [25] suggested an efficient mutual authentication and key agreement scheme using PUF and biometrics for wireless sensor network environments. To reduce the storage overhead of the user, Chen et al. [25] eliminated the password during the login phase.
In 2021, Masud et al. [7] proposed a lightweight user authentication scheme for IoT-based healthcare. They asserted that their scheme can protect against impersonation attacks and replay attacks and provide data privacy and anonymity. However, we discover that their scheme is vulnerable to several security issues, such as offline password guessing, user impersonation, and privileged insider attacks. We also find that their scheme cannot ensure user anonymity. Therefore, we propose a three-factor-based mutual authentication scheme using PUF to prevent various security weaknesses such as user anonymity, smart device theft, offline password, privileged insider, and cloning attacks, which are critical for WMSNs.

3. Preliminaries

In this section, we introduce the general system model and the adversary model for WMSNs. Then, we describe PUF and the fuzzy extractor, which can improve the security level of our scheme.

3.1. System Model

Figure 1 shows the general system model of a WMSN, which consists of doctors, a gateway, and sensor nodes. Details are as follows.
  • Doctor (user): The doctor, who has a resource-constrained smart device, authenticates with the gateway to access patients’ health reports. To communicate with sensor nodes, the doctor must register with the gateway.
  • Gateway: The gateway, which is the smart hospital, communicates with doctors and sensor nodes to provide efficient and convenient remote services to patients. We assume that the gateway is a trusted party and has enough storage and computing power.
  • Sensor node: The sensor node is a resource-constrained device attached to the patient in the form of a wearable device. The sensor node collects the patient’s health information and sends it to the doctor through the gateway.

3.2. Adversary Model

In our paper, we assume that an adversary can eavesdrop, insert, remove, and modify messages transmitted through a public channel according to a well-known adversary model, the Dolev–Yao (DY) model [26]. Moreover, we use the Canetti–Krawczyk (CK) adversary model [27]. In this model, an adversary can access ephemeral parameters or the master key of the gateway. With the CK and DY adversary models, we assume that an adversary can perform various attacks. Details are as below.
  • An adversary can steal a doctor’s smart device and obtain the secret parameter, extracted from the smart device using a power analysis attack [28].
  • An adversary can be a privileged insider who can obtain the user’s registration message.
  • An adversary can obtain the patient’s sensor node and perform a cloning attack.
  • An adversary can perform various attacks, such as man-in-the-middle, password guessing, and stolen verifier attacks [29].

3.3. Physical Unclonable Function

Physical unclonable functions (PUFs) are physical circuits that operate as a one-way function. In the PUF circuit, there is an input–output bit string pair called the “challenge–response pair”. If a random bit string challenge is entered into the PUF circuit, a unique output response is printed out. In this paper, we express this process as R = P U F ( C ) , where C and R are a challenge and a response, respectively. Ideal PUF properties are as below.
  • The PUF is an unclonable circuit.
  • The PUF is a unique physical microstructure. The output of the PUF depends on the physical circuit.
  • The output of the PUF has to be unpredictable.
  • The circuit of the PUF is easy to estimate and implement.
Since a PUF has the properties of a one-way function, the PUF returns the same response when the same challenge is input into a PUF-installed device. Moreover, the PUF gives different responses when the same challenge is input into different devices. Therefore, the PUF can provide a unique one-way function that cannot be duplicated. This uniqueness enables the PUF to prevent various attacks, such as physical and cloning attacks.

3.4. Fuzzy Extractor

In this section, we explain the basic concept and direction of the fuzzy extractor [8]. When a user utilizes his biometrics or the PUF response string, we cannot ensure the accuracy due to the noise of external environmental factors. The fuzzy extractor can control the noise using the helper string. Therefore, we can use the biometric information and the PUF response string as a secret parameter using the fuzzy extractor. The fuzzy extractor consists of “generate ( G e n ( . ) )” and “reproduce ( R e p ( . ) )” algorithms. Details are as follows.
  • G e n ( B i ) = ( R i , P i ) : This is a probability algorithm to generate a secret string R i . If a user inputs a random string B i , the fuzzy extractor generates the secret parameter R i and a helper string P i .
  • R e p ( B i , P i ) = ( R i ) : This is a deterministic algorithm to reproduce the secret string R i . If a user enters the random string B i , the fuzzy extractor controls the noise of B i using the helper string P i and reproduces the secret string R i .

4. Review of Masud et al.’s Scheme

In 2021, Masud et al. [7] proposed a lightweight and anonymity-preserving user authentication scheme for IoT-based healthcare environments. Their scheme consists of user registration, sensor node registration, and mutual authentication and key agreement phases. Notations and descriptions are explained in Table 1.

4.1. User Registration Phase

A doctor must register in the gateway to use this network system. We show the user registration phase of Masud et al.’s scheme as follows.
Step 1: The doctor inputs an identity D I D and password P W D , and generates a registration request message R r e q . Then, the doctor sends M R D 1 = { D I D , P W D , R r e q } to the gateway through a secure channel.
Step 2: The gateway stores D I D and P W D , and then generates R S G 1 to compute α = ( D I D R S G 1 ) P W D and D T I D = R S G 1 D I D . The gateway stores { R S G 1 , D T I D } in its secure database and sends α to the doctor via a secure channel.
Step 3: The doctor computes R S G 1 = ( α P W D ) D I D and D T I D = R S G 1 D I D , and stores { R S G 1 , D T I D } in his device. Then, the doctor computes β = h ( P W D | | R S G 1 ) D T I D and stores { β } .

4.2. Sensor Node Registration Phase

To transmit the health information of a patient, the sensor node must register with the gateway. We describe the sensor node registration phase as below.
Step 1: The sensor node generates R S N 1 , and sends { S I D , R S N 1 } to the gateway via a secure channel, where S I D is the real identity of the sensor node.
Step 2: The gateway generates R S G 2 and computes δ = ( S I D R S G 2 ) R S N 1 and S T I D = R S G 2 S I D . Then, the gateway stores { S I D , R S N 1 , R S G 2 , S T I D } in its secure database and transmits { δ } to the sensor node through a secure channel.
Step 3: When the sensor node receives { δ } , it computes R S G 2 = ( δ R S N 1 ) S I D and S T I D = R S G 2 S I D . Finally, the sensor node stores { R S N 1 , R S G 2 , S T I D } in its memory.

4.3. Mutual Authentication and Key Agreement Phase

In this phase, the doctor and the sensor node conduct a mutual authentication and key agreement phase to authenticate each other and establish a session key. Figure 2 shows the mutual authentication and key agreement phase of Masud et al.’s scheme and details are as follows.
Step 1: When the doctor inputs his own password P W D , the smart device of the doctor computes Q = h ( P W D | | R S G 1 ) and verifies Q = ? β . If it is correct, the smart device generates a random nonce N D 1 and computes N D 1 = N D 1 P W D and λ = h ( R S G 1 | | P W D ) . Then, the doctor sends { N D 1 , D T I D , λ , S T I D } to the gateway via a public channel.
Step 2: The gateway receives { N D 1 , D T I D , λ , S T I D } and computes N D 1 = N D 1 P W D . If N D 1 is a fresh random nonce, the gateway checks the validity of S T I D and D T I D , and computes λ = h ( R S G 1 | | P W D ) . After verifying the equation λ = ? λ , the gateway generates N G 1 and computes G W 1 = N G 1 S T I D , G W 2 = h ( R S N 1 | | R S G 2 ) , S K S = ( S K R S N 1 ) N G 1 , and G W 3 = R S G 3 R S N 1 , where S K is a session key. Then, the gateway sends { G W 1 , G W 2 , D T I D , S K S , G W 3 } to the sensor node through a public channel.
Step 3: The sensor node computes N G 1 = G W 1 S T I D and checks the freshness of N G 1 . After this, the sensor node computes S N 1 = h ( R S N 1 | | R S G 2 ) and checks the equality of S N 1 and G W 2 . If it is equal, the sensor node generates N S 1 and computes S K = ( S K S N G 1 ) R S G 1 , S N 2 = N S 1 S T I D , S N 3 = h ( R S G 2 | | R S N 1 | | S K ) , S N 4 = R S G 2 R S N 2 , R S G 3 = G W 2 R S N 1 , and S T I D n e w = R S G 3 S I D . Finally, the sensor node stores { R S N 2 , R S G 3 , S T I D n e w } and transmits { S N 2 , S N 3 , S N 4 } to the gateway.
Step 4: When the gateway receives { S N 2 , S N 3 , S N 4 } from the sensor node, the gateway computes N S 1 = S N 2 S T I D and verifies the freshness of N S 1 . Then, the gateway computes G W 4 = h ( R S G 2 | | R S N 1 | | S K ) and checks G W 4 = ? S N 3 . If it is equal, the gateway computes R S N 2 = S N 4 R S G 2 and S T I D n e w = R S G 3 S I D and stores { R S N 2 , R S G 3 , S T I D n e w } in its database. The gateway generates a random nonce N G 2 and computes μ = D I D N G 2 , S K U = ( S K P W D ) N G 2 , η = h ( D I D | | P W D | | S K | | N G 2 ) , G W 5 = R S G 4 P W D , and D T I D n e w = R S G 4 D I D . Lastly, the gateway stores { R S G 4 , D T I D n e w } in its secure database and sends a message { μ , S K U , η , G W 5 } to the smart device of the doctor.
Step 5: After receiving { μ , S K U , η , G W 5 } from the gateway, the doctor computes N G 2 = μ D I D and checks the freshness of N G 2 . Then, the smart device computes the session key S K = ( S K U N G 2 ) P W D and ϕ = h ( D I D | | P W D | | S K | | N G 2 ) , and verifies ϕ = ? η . If it is equal, the smart device computes R S G 4 = G W 5 P W D and D T I D n e w = R S G 4 D I D , and stores { R S G 4 , D T I D n e w } in its memory.

5. Cryptanalysis of Masud et al.’s Scheme

If an adversary A obtains a legitimate user’s smart device, A can extract the information { β , R S G 1 , D T I D } from the smart device using a power analysis attack [28], according to Section 3.2. With this information, A can perform various security attacks, such as offline password guessing, user impersonation, and privileged insider attacks. Furthermore, Masud et al.’s scheme does not ensure user anonymity and has a device update problem when signing in for the next session. Details are shown as below.

5.1. User Anonymity

An adversary A obtains the smart device of a doctor and extracts { β , R S G 1 , D T I D } using power analysis attack. Then, A calculates D I D = D T I D R S G 1 , where D I D is the real identity of the doctor. Therefore, Masud et al.’s scheme cannot ensure user anonymity.

5.2. Offline Password Guessing Attack

An offline password guessing attack has a purpose of obtaining the valid password for a user using a password dictionary in polynomial time. Thus, an adversary A needs some information about the user in order to check whether the guessed password is correct or not. In Masud et al.’s scheme, A can verify the correctness of the guessed password using the information extracted from the smart device of the doctor. We describe the procedures as follows.
Step 1: The adversary A inputs a guessed password P W A and calculates Q = h ( P W A | | R S G 1 ) D T I D .
Step 2: A compares Q = ? β , where β = h ( P W D | | R S G 1 ) D T I D is a parameter extracted from the smart device of the doctor. If it is equal, it means that A has guessed the password P W D correctly.
Thus, Masud et al.’s scheme is vulnerable to offline password guessing attacks.

5.3. User Impersonation Attack

The adversary A can obtain the real identity D I D and the password P W D of the doctor, according to Section 5.1 and Section 5.2. Then, A can impersonate the doctor with this information. We describe the steps as follows.
Step 1: A generates a random nonce N A 1 and computes N A 1 = N A 1 P W D and λ A = h ( R S G 1 | | P W D ) . Then, A sends { N A 1 , D T I D , λ A , S T I D } to the gateway.
Step 2: After receiving { N A 1 , D T I D , λ A , S T I D } from the adversary A , the gateway retrieves N A 1 = N A 1 P W D and checks the freshness of N A 1 . If it is found to be fresh, the gateway verifies D T I D and S T I D from its database. Then, the gateway computes λ = h ( R S G 1 | | P W D ) and compares λ = ? λ A . If the equation is correct, the gateway generates a random nonce N G 1 and computes G W 1 = N G 1 S T I D , G W 2 = h ( R S N 1 | | R S G 2 ) , S K S = ( S K R S N 1 ) N G 1 and G W 3 = R S G 3 R S N 1 . Finally, the gateway sends { G W 1 , G W 2 , D T I D , S K S , G W 3 } to the sensor node.
Step 3: The sensor node receives { G W 1 , G W 2 , D T I D , S K S , G W 3 } and retrieves N G 1 = G W 1 S T I D . If N G 1 is a fresh random nonce, the sensor node computes S N 2 = h ( R S N 1 | | R S G 2 ) and compares S N 2 = ? G W 2 . The sensor node generates a random nonce N S 1 and computes S K = ( S K S R S N 1 ) N G 1 , S N 2 = N S 1 S T I D , S N 3 = h ( R S G 2 | | R S N 1 | | S K ) , S N 4 = R S G 2 R S N 2 , R S 3 G = G W 3 R S N 1 and S T I D n e w = R 3 ) S G S I D . The sensor node sends { S N 2 , S N 3 , S N 4 } and stores { R S N 2 , R S G 3 , S T I D n e w } .
Step 4: The gateway receives the message { S N 2 , S N 3 , S N 4 } and retrieves N S 1 = S N 2 S T I D . If N S 1 is a fresh random nonce, the gateway computes G W 4 = h ( R S G 2 | | R S N 1 | | S K ) and checks G W 4 = ? S N 3 . The gateway computes R S N 2 = S N 4 R S G 2 and S T I D n e w = R S G 3 S I D , and stores { R S N 2 , R S G 3 , S T I D n e w } . After this, the gateway generates a random nonce N G 2 and computes μ = D I D N G 2 , S K U = ( S K P W D ) N G 2 , η = h ( D I D | | P W D | | S K | | N G 2 ) , G W 5 = R S G 4 P W D and D T I D n e w = R S G 4 D I D . Lastly, the gateway stores { R S G 4 , D T I D n e w } and sends { μ , S K U , η , G W 5 } to A .
Step 5: A computes N G 2 = μ D I D and verifies the freshness of N G 2 . Then, A computes S K = ( S K U P W D ) N G 2 and ϕ = h ( D I D | | P W D | | S K | | N G 2 ) , and compares ϕ = ? η . Finally, A computes R S G 4 = G W 5 P W D and D T I D n e w = R S G 4 D I D , and stores these parameters { R S G 4 , D T I D n e w } .
Therefore, Masud et al.’s scheme cannot prevent an impersonation attack.

5.4. Privileged Insider Attack

A privileged insider attack can be performed by an insider adversary A that has unquestioned authority within the system. Therefore, the privileged insider A can obtain various information about users, including registration request messages, and may attempt to calculate the session key or impersonate a legal user.
In Masud et al.’s scheme, a privileged insider adversary A can impersonate a legitimate doctor after obtaining a registration request message { D I D , P W D , R r e q } and the secret parameter { β , R S G 1 , D T I D } extracted from the smart device of the doctor. A generates a random nonce N A 1 and computes N A 1 = N A 1 P W D and λ A = h ( R S G 1 | | P W D ) . Then, A sends a message { N A 1 , D T I D , λ A , S T I D } . The gateway and the sensor node authenticate each other and return a message { μ , S K U , η , G W 5 } to A . Lastly, A calculates N G 2 = μ D I D and the session key S K = ( S K U N G 2 ) P W D . Thus, Masud et al.’s scheme is insecure against privileged insider attacks.

5.5. Device Update Problem

The smart device replaces { R S G 1 , D T I D } with { R S G 4 , D T I D n e w } at the end of the authentication and key agreement phase. After this, the doctor may try to authenticate another sensor node that is attached to a patient in other session. However, the doctor cannot perform the login phase. If the doctor inputs a password P W D , the smart device computes Q = h ( P W D | | R S G 4 ) D T I D n e w and verifies Q = ? β . Since β = h ( P W D | | R S G 1 ) D T I D , the login phase is aborted. Therefore, Masud et al.’s scheme has a device update problem.

6. Proposed Scheme

Although Masud et al.’s scheme has efficiency for WMSNs, their scheme has several security vulnerabilities. To address these security weaknesses, we propose a secure three-factor-based mutual authentication and key agreement scheme using PUF. Our scheme consists of initialization, user registration, sensor node registration, mutual authentication and key agreement, and password change phases.

6.1. Initialization Phase

Before starting the registration phase, the gateway inserts an identity and a challenge into the sensor node. Figure 3 shows the initialization of our scheme and detailed steps are as follows.
Step 1: The gateway selects an identity S I D , a challenge C H 1 , and sends { S I D , C H 1 } to the sensor node via a secure channel.
Step 2: The sensor node stores { S I D , C H 1 } in the memory.

6.2. User Registration Phase

A doctor must register in the network to provide a convenient remote medical service to patients. We show the sensor node registration phase in Figure 4 and detailed steps are as follows.
Step 1: A doctor inputs an identity D I D , a password P W D , and biometric template B I O D to the smart device. Then, the smart device generates a registration request message R r e q and computes G e n ( B I D D ) = < R D , P D > and G P W D = h ( P W D | | R D ) , where G e n ( . ) is a fuzzy extractor generation function. The doctor sends { D I D , G P W D , R r e q } to the gateway via a secure channel.
Step 2: After receiving { D I D , G P W D , R r e q } from the doctor, the gateway generates random numbers R S G 1 and R S G 2 , and computes α = h ( D I D | | s ) , β = α h ( G P W D | | R S G 2 ) , ω = α h ( R S G 1 | | s ) , and D T I D = h ( α | | R S G 2 | | R S G 1 ) . The gateway stores { ω , R S G 1 , D T I D } in the secure database, and sends { β , D T I D , R S G 2 } to the doctor via a secure channel.
Step 3: The doctor computes θ = h ( R D | | G P W D ) R S G 2 and V e r D = h ( D I D | | G P W D | | R D ) , and stores { β , θ , V e r D , D T I D , P D } in the memory.

6.3. Sensor Node Registration Phase

A patient must register in the network using a sensor node in order to receive remote medical services from the doctor. In Figure 5, we show the sensor node registration phase of our scheme and details are as below.
Step 1: The sensor node retrieves the challenge stored in the memory and computes R E 1 = P U F ( C H 1 ) , G e n ( R E 1 ) = < R S N 1 , P S N > , and A S I D = h ( R S N 1 | | S I D ) . Then, the sensor node sends { S I D , A S I D , C H 1 } to the gateway through a secure channel.
Step 2: The gateway generates R S G 3 and computes δ = h ( A S I D | | s ) , S T I D = h ( δ | | R S G 3 | | A S I D ) . After this, the gateway stores { A S I D , S T I D , C H 1 } in its secure database and sends { δ , S T I D } to the sensor node via a secure channel.
Step 3: Finally, the sensor node deletes the challenge C H 1 and stores { δ , P S N , S T I D } in its memory.

6.4. Mutual Authentication and Key Agreement Phase

The doctor sends a login request message to the gateway and establishes a session key among the doctor, the gateway, and the sensor node. After this, the doctor can perform an accurate diagnosis of the patient. We describe the mutual authentication and key agreement phase in Figure 6 and details are as follows.
Step 1: The doctor inputs the identity D I D , the password P W D , and imprints the biometrics B I O i . Then, the smart device computes R D = R e p ( B I O D , P D ) , G P W D = h ( P W D | | R D ) , and V e r D = h ( D I D | | G P W D | | R D ) , and verifies V e r D = ? V e r D . If it is correct, the smart device generates a random nonce N D 1 and computes R S G 2 = θ h ( R D | | G P W D ) , α = β h ( G P W D | | R S G 2 ) , M D 1 = N D 1 h ( D T I D | | α ) , and V D 1 = h ( N D 1 | | D T I D | | α | | S T I D ) . The smart device sends { D T I D , S T I D , M D 1 , V D 1 } to the gateway through a public channel.
Step 2: When the gateway receives the message { D T I D , S T I D , M D 1 , V D 1 } from the doctor, the gateway checks the pseudo identity { D T I D , S T I D } and retrieves { ω , R S G 1 } in the database. Then, the gateway computes α = ω h ( R S G 1 | | s ) , N D 1 = M D 1 h ( D T I D | | α ) , and V D 1 = h ( N D 1 | | D T I D | | α | | S T I D ) . If V D 1 = ? V D 1 is correct, the gateway generates a random nonce N G 1 and retrieves { A S I D , C H 1 } . The gateway computes δ = h ( A S I D | | s ) , M G 1 = C H 1 h ( δ | | D T I D | | S T I D ) , M G 2 = ( h ( N D 1 | | α ) N G 1 ) h ( δ | | D T I D | | A S I D ) , and V G 1 = h ( δ | | S T I D | | A S I D | | ( h ( N D 1 | | α ) N G 1 ) | | D T I D ) . After this, the gateway transmits { D T I D , S T I D , M G 1 , M G 2 , V G 1 } to the sensor node via a public channel.
Step 3: The sensor node computes C H 1 = M G 1 h ( δ | | D T I D | | S T I D ) , R E 1 = P U F ( C H 1 ) , R S N 1 = R e p ( R E 1 , P S N ) , A S I D = h ( R S N 1 | | S I D ) , ( h ( N D 1 | | α ) N G 1 ) = M G 2 h ( δ | | D T I D | | A S I D ) , and V G 1 = h ( δ | | S T I D | | A S I D | | ( h ( N D 1 | | α ) N G 1 ) | | D T I D ) . If the equation V G 1 = ? V G 1 is correct, the sensor node generates a random nonce N S 1 and computes a new pseudo identity S T I D n e w = h ( δ | | N S 1 | | A S I D ) , a session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) , M S 1 = N S 1 h ( δ | | A S I D | | h ( N D 1 | | α ) N G 1 ) , and V S 1 = h ( N S 1 | | S T I D n e w | | S K ) . Lastly, the sensor node sends { M S 1 , V S 1 } to the gateway through a public channel and updates { S T I D } to { S T I D n e w } .
Step 4: After receiving { M S 1 , V S 1 } from the sensor node, the gateway computes N S 1 = M S 1 h ( δ | | A S I D | | h ( N D 1 | | α ) N G 1 ) , the session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) , the new pseudo identity of the sensor node S T I D n e w = h ( δ | | N S 1 | | A S I D ) , and V S 1 = h ( N S 1 | | S T I D n e w | | S K ) . If the equation V S 1 = ? V S 1 is correct, the gateway computes a new pseudo identity of the doctor D T I D n e w = h ( α | | N D 1 | | N G 1 N S 1 ) , M G 3 = ( N G 1 N S 1 ) h ( α | | D T I D ) , and V G 2 = h ( N G 1 N S 1 | | D T I D n e w | | S K ) . Then, the gateway sends { M G 3 , V G 2 } to the doctor and updates { S T I D , D T I D } to { S T I D n e w , D T I D n e w } .
Step 5: The doctor computes ( N G 1 N S 1 ) = M G 3 h ( α | | D T I D ) , D T I D n e w = h ( α | | N D 1 | | ( N G 1 N S 1 ) ) , S K = h ( h ( N D 1 | | α ) ( N G 1 N S 1 ) ) , and V G 2 = h ( N G 1 | | N S 1 | | D T I D n e w | | S K ) and verifies V G 2 = ? V G 2 . If it is correct, the doctor replaces { D T I D } with { D T I D n e w } in the smart device.

6.5. Password Change Phase

In our scheme, we provide a convenient password update process for the doctor. Detailed steps are as follows.
Step 1: A doctor inputs D I D , P W D , and B I O D to the smart device.
Step 2: The smart device computes R D = R e p ( B I O D , P D ) , G P W D = h ( P W D | | R D ) , and V e r D = h ( D I D | | G P W D | | R D ) and verifies V e r D = ? V e r D . If the equation is correct, the smart device demands a new password from the doctor.
Step 3: The doctor inputs a new password P W D n e w to the smart device.
Step 4: The smart device computes G P W D n e w = h ( P W D n e w | | R D ) , β = α h ( G P W D n e w | | R S G 2 ) , θ = h ( R D | | G P W D n e w ) R S G 2 , and V e r D n e w = h ( D I D | | G P n e w W D | | R D ) and updates { β , θ , V e r D } to { β n e w , θ n e w , V e r D n e w } .

7. Security Analysis

To prove the security features of the proposed scheme, we use BAN logic and the RoR model, which can prove the mutual authentication properties and session key security, respectively. Moreover, we show that our scheme has resistance against man-in-the-middle and replay attacks using AVISPA. Furthermore, we claim that the proposed scheme can prevent various security attacks using informal analysis.

7.1. BAN Logic

BAN logic is a well-known formal proof to verify the mutual authentication of a protocol. Therefore, many researchers have used BAN logic to prove the mutual authentication of their schemes [30,31,32,33]. In this section, we prove the mutual authentication of the proposed scheme using BAN logic [9]. The basic notations and descriptions of BAN logic are shown in Table 2.

7.1.1. Rules

The logical rules of BAN logic are as follows.
1. 
Message meaning rule (MMR):
P 1 | P 1 K P 2 , P 1 { M 1 } K P 1 | P 2 | M 1
2. 
Nonce verification rule (NVR):
P 1 | # ( M 1 ) , P 1 | P 2 | M 1 P 1 | P 2 | M 1
3. 
Jurisdiction rule (JR):
P 1 | P 2 M 1 , P 1 | P 2 | M 1 P 1 | M 1
4. 
Belief rule (BR):
P 1 | ( M 1 , M 2 ) P 1 | M 1
5. 
Freshness rule (FR):
P 1 | # ( M 1 ) P 1 | # ( M 1 , M 2 )

7.1.2. Goals

The BAN logic goals of the proposed scheme are as follows. We define the principals D O , G W N , and S N as the doctor, the gateway, and the sensor node, respectively.
Goal 1: 
D O | D O S K G W N
Goal 2: 
D O | G W N | D O S K G W N
Goal 3: 
G W N | D O S K G W N
Goal 4: 
G W N | D O | D O S K G W N
Goal 5: 
S N | S N S K G W N
Goal 6: 
S N | G W N | S N S K G W N
Goal 7: 
G W N | S N S K G W N
Goal 8: 
G W N | S N | S N S K G W N

7.1.3. Idealized Forms

In the proposed scheme, there are four messages exchanged through a public channel. We transform these messages into idealized forms. Our scheme’s idealized forms for the messages are as follows:
M e s s a g e 1
: D O G W N : { N D 1 } α
M e s s a g e 2
: G W N S N : { N G 1 , h ( N D 1 | | α ) } δ
M e s s a g e 3
: S N G W N : { N S 1 } δ
M e s s a g e 4
: G W N D O : { N G 1 , N S 1 } α

7.1.4. Assumptions

The assumptions in the proposed scheme are shown below.
A 1 :
G W N | # ( N D 1 )
A 2 :
G W N | # ( N S 1 )
A 3 :
S N | # ( h ( N D 1 | | α ) )
A 4 :
D O | # ( N G 1 )
A 5 :
D O | G W N ( D O S K G W N )
A 6 :
G W N | D O ( D O S K G W N )
A 7 :
S N | G W N ( S N S K G W N )
A 8 :
G W N | S N ( S N S K G W N )
A 9 :
D O | D O α G W N
A 10 :
G W N | D O α G W N
A 11 :
S N | S N δ G W N
A 12 :
G W N | S N δ G W N

7.1.5. BAN Logic Proof

Step 1: We can obtain S 1 from the message M e s s a g e 1 .
S 1 :   G W N { N D 1 } α
Step 2: We can obtain S 2 from the message meaning rule using S 1 and A 10 .
S 2 :   G W N | D O | ( N D 1 )
Step 3: We can obtain S 3 from the freshness rule using S 2 and A 1 .
S 3 :   G W N | # ( N D 1 )
Step 4: We can obtain S 4 from the nonce verification rule using S 2 and S 3 .
S 4 :   G W N | D O | ( N D 1 )
Step 5: We can obtain S 5 from the message M e s s a g e 2 .
S 5 :   S N { N G 1 , h ( N D 1 | | α ) } δ
Step 6: We can obtain S 6 from the message meaning rule using S 5 and A 11 .
S 6 :   S N | G W N | ( N G 1 , h ( N D 1 | | α ) )
Step 7: We can obtain S 7 from the freshness rule using S 6 and A 3 .
S 7 :   S N | # ( N G 1 , h ( N D 1 | | α ) )
Step 8: We can obtain S 8 from the nonce verification rule using S 6 and S 7 .
S 8 :   S N | G W N | ( N G 1 , h ( N D 1 | | α ) )
Step 9: We can obtain S 9 from the message M e s s a g e 3 .
S 9 :   G W N { N S 1 } δ
Step 10: We can obtain S 10 from the message meaning rule using S 9 and A 12 .
S 10 :   G W N | S N | ( N S 1 )
Step 11: We can obtain S 11 from the nonce verification rule using A 2 and S 10 .
S 11 :   G W N | S N | ( N S 1 )
Step 12: We can obtain S 12 and S 13 from S 8 and S 11 . S N and G W N can compute the session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) .
S 12 :   G W N | S N | ( S N S K G W N )       ( Goal 8 )
S 13 :   S N | G W N | ( S N S K G W N )       ( Goal 6 )
Step 13: We can obtain S 14 and S 15 from the jurisdiction rule using S 12 and A 8 , and S 13 and A 7 , respectively.
S 14 :   G W N | ( S N S K G W N )       ( Goal 7 )
S 15 :   S N | ( S N S K G W N )       ( Goal 5 )
Step 14: We can obtain S 16 from the message M e s s a g e 4 .
S 16 :   D O { N G 1 , N S 1 } α
Step 15: We can obtain S 17 from the message meaning rule using A 9 and S 16 .
S 17 :   D O | G W N | ( N G 1 , N S 1 )
Step 16: We can obtain S 18 from the freshness rule using S 17 and A 4 .
S 18 :   D O | # ( N G 1 , N S 1 )
Step 17: We can obtain S 19 from the nonce verification rule using S 17 and S 18 .
S 19 :   D O | G W N | ( N G 1 , N S 1 )
Step 18: We can obtain S 20 and S 21 using S 4 and S 19 . D O and G W N can compute the session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) .
S 20 :   D O | G W N | ( D O S K G W N )       ( Goal 2 )
S 21 :   G W N | D O | ( D O S K G W N )       ( Goal 4 )
Step 19: We can obtain S 22 and S 23 using the jurisdiction rule using S 20 and A 5 , S 21 , and A 6 , respectively.
S 22 :   D O | ( D O S K G W N )       ( Goal 1 )
S 23 :   G W N | ( D O S K G W N )       ( Goal 3 )

7.2. RoR Model

In this section, we prove that the session key in the proposed scheme is secure, using the Real-or-Random (RoR) model [10]. To apply our scheme into the RoR model, we discuss the basic concepts of participants, adversaries, and queries. There are three participants in our scheme: P U s e r t 1 , P G a t e w a y t 2 , and P S e n s o r t 3 , where t k is the participant instance of the user, the gateway, and the sensor node. We assume that an adversary A can control the whole network, which intercepts, deletes, inserts, and eavesdrops messages transmitted through a public channel. Moreover, A attempts to attack the network utilizing E x e c u t e , C o r r u p t S D , R e v e a l , S e n d , and T e s t queries in the RoR model. Details of the queries are as follows.
  • E x e c u t e ( P U s e r t 1 , P G a t e w a y t 2 , P S e n s o r t 3 ) : The query E x e c u t e is a passive attack. This query explains that A can eavesdrop messages generated by P U s e r t 1 , P G a t e w a y t 2 , and P S e n s o r t 3 .
  • C o r r u p t S D ( P U s e r t 1 ) : This query is an active attack. By this query, A can obtain sensitive information extracted from the smart device of P U s e r t 1 .
  • R e v e a l ( P t ) : A can reveal the current session key S K .
  • S e n d ( P t , M ) : Using the query S e n d , A can send a message M to P U s e r t 1 , P G a t e w a y t 2 , and P S e n s o r t 3 . Moreover, A can receive the return message. Therefore, this query is an active attack.
  • T e s t ( P t ) : If A performs a T e s t query, an unbiased coin C is flipped prior to starting the game. When the session key S K is fresh, A obtains C = 1 . A also obtains C = 0 when the session key is not fresh. Otherwise, A will receive a null value (⊥). If A cannot distinguish between the session key and the random number, we can ensure that the proposed scheme can provide the security of the session key.

Security Proof

Theorem 1.
In the RoR model, an adversary A tries to calculate the session key of the proposed scheme in polynomial time. Let A d v A ( P ) be the possibility that A breaks the security of the session key. We define H a s h and P U F as the range space of hash function h ( . ) and PUF function P U F ( . ) , respectively. In addition, we define q h , q p , and q s as the number of H a s h , P U F , and S e n d queries, respectively. l D is the number of bits in biometric secret key B I O D of the doctor, C and s are the Zipf’s parameter [34].
A d v A ( P ) q h 2 | H a s h | + q p 2 | P U F | + 2 m a x { C q s s , q s 2 l D }
Proof. 
We follow the security proof as performed in [35,36,37]. In our proof, there are five games G a m e k where k = 0 , 1 , 2 , 3 , 4 . We denote S G a m e k as the winning probability of the adversary A and P r [ S G a m e k ] as the advantage of the S G a m e k .
  • G a m e 0 : G a m e 0 is the starting game, where the adversary A picks up the random bit c. Therefore, we obtain the following:
    A d v A ( P ) = | 2 P r [ S G a m e 0 ] 1 |
  • G a m e 1 : In this game, A performs an eavesdropping attack, which is the E x e c u t e query in the RoR model. When obtaining messages { D T I D , S T I D , M D 1 , V D 1 } , { D T I D , S T I D , M G 1 , M G 2 , V G 1 } , { M S 1 , V S 1 } , and { M G 3 , V G 2 } , A carries out T e s t and R e v e a l queries to distinguish between the session key S K and a random number. To obtain the session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) , A needs N D 1 , N G 1 , and N S 1 , which are random numbers generated by the user (doctor), the gateway, and the sensor node, respectively. α is the shared secret parameter between the gateway and the user. For these reasons, the adversary A cannot compute the session key S K . This means that A does not enhance the probability compared with the G a m e 0 .
    [ P r [ S G a m e 1 ] ] = [ P r [ S G a m e 0 ] ]
  • G a m e 2 : In G a m e 2 , the adversary A performs S e n d and H a s h queries. In the message { D T I D , S T I D , M D 1 , V D 1 } , { D T I D , S T I D , M G 1 , M G 2 , V G 1 } , { M S 1 , V S 1 } , and { M G 3 , V G 2 } , parameters D T I D , S T I D , V D 1 , V G 1 , V S 1 , and V G 2 are masked by the cryptographic one-way hash function, which provides resistance against hash collision. Moreover, random numbers N D 1 , N G 1 , N S 1 , and the hash functions are contained in M D 1 , M G 1 , M G 2 , M G 3 , and M S 1 . Therefore, there is no collision problem when A performs a H a s h query. We apply the birthday paradox [38] and obtain the result as follows:
    | P r [ S G a m e 2 ] P r [ S G a m e 1 ] | q h 2 | H a s h |
  • G a m e 3 : G a m e 3 is similar to G a m e 2 . A performs S e n d and P U F queries. As explained in Section 3.3, the physical function P U F ( . ) has a secure property. Therefore, we can obtain the following inequation:
    | P r [ S G a m e 3 ] P r [ S G a m e 2 ] | q p 2 | P U F |
  • G a m e 4 : In the final game G a m e 4 , A performs a C o r r u p t S D query and extracts sensitive data { β , θ , V e r D , D T I D , P D } from the smart device of the user. A attempts to calculate parameters α and R S G 2 from β = α h ( G P W D | | R S G 2 ) and θ = R S G 2 h ( R D | | G P W D ) , respectively. Since parameters R D and G P W D = h ( P W D | | R D ) are composed of the password and biometrics, A must guess these parameters. Therefore, A cannot enhance the probability because guessing the password and biometrics is a computationally infeasible task. According to Zipf’s law [34], we can make the following inequation:
    | P r [ S G a m e 4 ] P r [ S G a m e 2 ] | m a x { C q s s , q s 2 l D }
    When the games are completed, the adversary A obtains the guessed bit c. Therefore, it is clear that
    P r [ S G a m e 4 ] = 1 2
    By (2) and (3), we can obtain the following equation:
    1 2 A d v A ( P ) = | P r [ S G a m e 0 ] 1 2 | = | P r [ S G a m e 1 ] 1 2 |
    We can obtain the following equation using (6) and (7):
    1 2 A d v A ( P ) = | P r [ S G a m e 1 ] P r [ S G a m e 4 ] |
    Applying the triangular inequality, we obtain the following result:
    1 2 A d v A ( P ) = | P r [ S G a m e 1 ] P r [ S G a m e 4 ] | | P r [ S G a m e 1 ] P r [ S G a m e 3 ] | + | P r [ S G a m e 3 ] P r [ S G a m e 4 ] | | P r [ S G a m e 1 ] P r [ S G a m e 2 ] | + | P r [ S G a m e 2 ] P r [ S G a m e 3 ] | + | P r [ S G a m e 3 ] P r [ S G a m e 4 ] |
    q h 2 2 | H a s h | + q p 2 2 | P U F | + m a x { C q s s , q s 2 l D }
    Finally, we obtain the required result multiplying (9) by 2:
    A d v A ( P ) q h 2 | H a s h | + q p 2 | P U F | + 2 m a x { C q s s , q s 2 l D }
Thus, we have proven Theorem 1.

7.3. AVISPA Simulation

We simulate the proposed scheme using AVISPA [11,12] to analyze the security features of our scheme. AVISPA is a formal verification tool that can detect security vulnerabilities regarding replay and man-in-the-middle attacks. Therefore, various authentication schemes [39,40,41] have been simulated by using AVISPA.
To simulate our protocol, we need to create a code written in the High-Level Protocol Specification Language (HLPSL). The code written in HLPSL is converted to the Intermediate Format (IF) by the translator. Then, the translator inputs the IF into back-ends. AVISPA has four back-ends, named On-the-Fly Model Checker (OFMC), Constraint Logic-based Attack Searcher (CL-AtSe), SAT-based Model Checker (SATMC), and Three Automata based on Automatic Approximations for Analysis of Security Protocol (TA4SP). In this paper, the OFMC and CL-AtSe back-ends are used because these back-ends provide exclusive-OR operations. Lastly, we obtain the Output Format (OF), which is the security analysis result of the protocol. If we obtain a “SAFE” message in the summary of OF, we can consider that the protocol is secure against replay and man-in-the-middle attacks.

7.3.1. HLPSL Specification

In this section, we explain the HLPSL code of our scheme. There are three basic roles in HLPSL: the doctor D O , the gateway G W , and the sensor node S N . With these roles, we describe the session and the environment roles. The goals, the environment, and the session of our scheme written in HLPSL are shown in Figure 7.
We show the role of the doctor in Figure 8. When state 1 starts, the doctor receives a start message and generates the registration request message R r e q . Then, the doctor computes G P W D with his password P W D , the biometrics B I O D , and sends { D I D , G P W D , R r e q } to the gateway via a secure channel. After this, the doctor receives { β , D T I D , R S G 2 } from the gateway and computes V e r D and θ in state 2. The doctor stores { β , θ , V e r D , D T I D , P D } in the smart device. With these parameters, the doctor sends a login and authentication request message { D T I D , S T I D , M D 1 , V D 1 } to the gateway via a public channel. w i t n e s s ( D O C , G W , d o c _ g w _ n 1 d , N D 1 ) indicates the freshness of N D 1 . When the doctor receives the message { M G 3 , V G 2 } in state 3, the doctor performs r e q u e s t ( G W , D O C , d o c _ g w _ n 1 s , N S 1 ) and r e q u e s t ( G W , D O C , d o c _ g w _ n 1 g , N G 1 ) , which represent the freshness acceptance of the random nonces N G 1 and N S 1 .

7.3.2. Simulation Result

We perform simulations using the OFMC and CL-AtSe back-ends and show the simulation result of the proposed scheme in Figure 9. If the summary message is “SAFE”, this indicates that the proposed scheme is secure against replay and man-in-the-middle attacks. As with the simulation result shown in Figure 9, both summaries simulated in the OFMC and CL-AtSe back-ends are “SAFE”. Thus, the proposed scheme can prevent replay and man-in-the-middle attacks.

7.4. Informal Analysis

In this section, we show the security features of the proposed scheme, including those that protect against offline password guessing, impersonation, replay, man-in-the-middle, physical, cloning, privileged insider, session-specific random number leakage, and verification table leakage attacks. Moreover, the proposed scheme can ensure user anonymity, perfect forward secrecy, and mutual authentication.

7.4.1. User Anonymity

We assume that an adversary A obtains the stolen smart device of a doctor (user) and extracts { β , θ , V e r D , D T I D , P D } . However, A cannot compute the real identity of the doctor because the pseudo identity of the doctor D T I D is masked by the hash function and updated in every session. Since the parameters β = α h ( G P W D | | R S G 2 ) and θ = h ( R D | | G P W D ) R S G 2 stored in the smart device are masked in the biometric template of the doctor, the A has difficulty in guessing the real identity of the doctor. Hence, A cannot obtain the real identity of the doctor. Therefore, we demonstrate that the proposed scheme can ensure user anonymity.

7.4.2. Offline Password Guessing Attack

A obtains a doctor’s smart device and obtains { β , θ , V e r D , D T I D , P D } from the device using a power analysis attack. Then, A attempts to guess the password of the doctor using the extracted parameters. Unfortunately, A cannot guess the password of the doctor because we use the biometrics in the proposed scheme. Since G P W D = h ( P W D | | R D ) , A must guess not only the password P W D but also the biometrics B I O D of the doctor at the same time. Note that R D is the result of the fuzzy extractor, which is expressed as R D = R e p ( B I O D , P D ) . However, this process is a computationally infeasible task. Thus, the proposed scheme can prevent offline password guessing attacks.

7.4.3. Impersonation Attack

Assume that an adversary A tries to impersonate a legitimate doctor using parameters { β , θ , V e r D , D T I D , P D } , which are stored in the doctor’s device. Then, A attempts to calculate the login request message { D T I D , S T I D , M D 1 , V D 1 } . However, A cannot calculate M D 1 = N D 1 h ( D T I D | | α ) and V D 1 = h ( N D 1 | | D T I D | | α | | S T I D ) because A cannot calculate α = β h ( G P W D | | R S G 2 ) . Hence, the proposed scheme is secure against impersonation attacks.

7.4.4. Replay Attack

Assume that an adversary A intercepts authentication request messages { D T I D , S T I D , M D 1 , V D 1 } , { D T I D , S T I D , M G 1 , M G 2 , V G 1 } , and sends messages to authenticate the gateway and the sensor node at other sessions. However, each entity checks the freshness of N D 1 , N G 1 , and N S 1 , which are random nonces generated by the doctor, the gateway, and the sensor node, respectively. Therefore, the proposed scheme is secure against replay attacks.

7.4.5. Man-in-the-Middle Attack

We show that A cannot generate the login request message { D T I D , S T I D , M D 1 , V D 1 } , according to Section 7.4.3. Moreover, A cannot compute { D T I D , S T I D , M G 1 , M G 2 , V G 1 } , { M S 1 , V S 1 } , and { M G 3 , V G 2 } because each message is masked in the shared secret parameter α and δ . Thus, the proposed scheme can prevent man-in-the-middle attacks.

7.4.6. Physical and Cloning Attacks

We can assume that A physically captures a sensor node S N 1 and tries to authenticate the gateway as S N 1 . To do this, A obtains the parameters of S N 1 { δ , P S N , S T I D } using a power analysis attack. Then, A attempts to authenticate as a legitimate sensor node S N 1 using parameters { δ , P S N , S T I D } or by cloning the sensor node S N 1 . When A receives { D T I D , S T I D , M G 1 , M G 2 , V G 1 } from the gateway, A computes C H 1 = M G 3 h ( δ | | D T I D | | S T I D ) . However, A cannot compute R E 1 because the function P U F ( . ) is a physically unclonable circuit and cannot duplicate, according to Section 3.3. Therefore, A cannot compute R S N 1 = R e p ( R E 1 , P S N ) and A S I D = h ( R S N 1 | | S I D ) to calculate M S 1 and V S 1 . Thus, the proposed scheme is secure against physical and cloning attacks.

7.4.7. Privileged Insider Attack

Assume that a privileged insider A obtains the registration request message { D I D , G P W D , R r e q } of a doctor and obtains parameters { β , θ , V e r D , D T I D , P D } , extracted from the stolen smart device of the doctor using a power analysis attack, and A attempts to impersonate as the doctor. To compute the login request message { D T I D , S T I D , M D 1 , V D 1 } , A must calculate the shared secret parameter α . However, A cannot calculate α = h ( G P W D | | R S G 2 ) because the parameter R D in G P W D = h ( P W D | | R D ) is generated by the biometrics of the doctor. Moreover, A must guess the password P W D of the doctor to calculate G P W D = h ( P W D | | R D ) , and it is a computationally infeasible task to guess R D and P W D at the same time. Therefore, the proposed scheme can prevent privileged insider attacks.

7.4.8. Session-Specific Random Number Leakage Attack

Suppose that A obtains random nonces N D 1 , N G 1 , and N S 1 . Then, A tries to calculate the session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) . However, A cannot compute the session key S K without knowing the shared secret parameter α . Since α is masked by the hash functions, A cannot calculate α . Thus, the proposed scheme has resistance against session-specific random number leakage attacks.

7.4.9. Verification Table Leakage Attack

If A obtains the verification table { ω , R S G 1 , D T I D } , { A S I D , S T I D , C H 1 } of the gateway, A attempts to calculate the session key S K or impersonate a doctor. However, A cannot calculate the shared secret parameter α = ω h ( R S G 1 | | s ) and δ = h ( A S I D | | s ) without the master key s of the gateway. Therefore, it is difficult for A to compute the session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) or impersonate a doctor. Therefore, the proposed scheme can prevent verification table leakage attacks.

7.4.10. Perfect Forward Secrecy

If A obtains the master key s of the gateway, A attempts to compute the session key S K = h ( h ( N D 1 | | α ) N G 1 N S 1 ) . However, A cannot compute α = h ( D I D | | s ) without the real identity of the doctor, and all random nonces are masked by hash functions. Therefore, A cannot calculate S K . For this reason, the proposed scheme ensures perfect forward secrecy.

7.4.11. Mutual Authentication

To ensure mutual authentication, each entity checks the validity of V D 1 = ? V D 1 , V G 1 = ? V G 1 , V S 1 = ? V S 1 , and V G 2 = ? V G 2 . Furthermore, all participants check the freshness of random nonces N D 1 , N G 1 , and N S 1 . When the verification processes are successful, we can demonstrate that the participants of the proposed scheme authenticate each other. Therefore, the proposed scheme ensures mutual authentication.

8. Performance

In this section, we compare the security features of the proposed scheme with other related schemes [7,18,19,20,25]. Moreover, we show the communication costs, computation costs, and energy consumption of the proposed scheme.

8.1. Security Features Comparison

We present the security features of the proposed scheme compared with related schemes [7,18,19,20,25]. In Table 3, we consider various security attacks and functionalities. The security features and the functionalities are as follows: S P 1 : resistance against smart device theft attack, S P 2 : resistance against offline password guessing attack, S P 3 : resistance against impersonation attack, S P 4 : resistance against replay attack, S P 5 : resistance against privileged insider attack, S P 6 : resistance against physical and cloning attacks, S P 7 : resistance against session-specific random number leakage attack, S P 8 : resistance against verification table leakage attack, S P 9 : ensuring user anonymity, S P 10 : ensuring perfect forward secrecy, S P 11 : ensuring mutual authentication, S P 12 : performing RoR model, S P 13 : performing AVISPA simulation, S P 14 : performing BAN logic proof. Therefore, our scheme can provide a secure authentication process compared with [7,18,19,20].

8.2. Communication Costs Comparison

In this section, we compare the communication costs of the proposed scheme with existing schemes [7,18,19,20,25]. According to [35], we suppose that the SHA-1 hash digest, identity, random number, PUF challenge–response pair, timestamp, and ECC point are 160, 160, 128, 128, 32, and 320 bits, respectively. Therefore, the communication costs of the proposed scheme can be described as follows.
  • Message 1: The message { D T I D , S T I D , M D 1 , V D 1 } requires ( 160 + 160 + 160 + 160 ) = 640 bits.
  • Message 2: The message { D T I D , S T I D , M G 1 , M G 2 , V G 1 } needs ( 160 + 160 + 160 + 160 + 160 ) = 800 bits.
  • Message 3: The message { M S 1 , V S 1 } needs ( 160 + 160 ) = 320 bits.
  • Message 4: The message { M G 3 , V G 2 } requires ( 160 + 160 ) = 320 bits.
Therefore, the total communication costs of our scheme are 640 + 800 + 320 + 320 = 2080 bits. In Table 4, we show the total communication costs of our scheme and other related schemes. Consequently, we demonstrate that our scheme has more efficient communication costs than other related schemes [7,18,19,20,25].

8.3. Computation Costs Comparison

We compare the computation costs of the proposed scheme with [7,18,19,20,25]. According to [42,43], we define T R N G , T H , T E M , T E A , T F , and T P U F as the random number generation (≈0.0539 s), hash function (≈0.00023 s), ECC multiplication (≈0.2226 s), ECC addition (≈0.00288 s), fuzzy extractor (≈0.268 s), and PUF operation time (≈0.012 s), respectively. Furthermore, we ignore the execution time of exclusive-OR (⊕) operations because it is computationally negligible.
The total computation costs of our scheme are slightly higher than those of Masud et al.’s scheme [7] as shown in Table 5. However, our scheme has a much higher security level than [7] using the fuzzy extractor and PUF. Moreover, our scheme is more efficient and lightweight than previous schemes [18,19,20,25] that utilize ECC, the fuzzy extractor, and PUF.

8.4. Energy Consumption Comparison

In this section, we compare the energy consumption of our scheme with [7,18,19,20,25]. We follow the battery consumption model used in [44], where the energy consumption for sending and receiving a bit are taken as 4.602 mJ and 2.34 mJ, respectively [45]. Therefore, the total energy consumption of our scheme is 4867 mJ. Table 6 shows the total energy consumption of the proposed scheme and [7,18,19,20,25]. The result indicates that our scheme is more efficient in terms of energy consumption than other related schemes.

9. Conclusions

In this paper, we review Masud et al.’s scheme and prove that their scheme is vulnerable to offline password guessing, impersonation, and privileged insider attacks. We also discover that Masud et al.’s scheme cannot ensure user anonymity and has a device update problem. To improve the security level and overcome the security weaknesses of Masud et al.’s scheme, we propose a provably secure three-factor-based mutual authentication and key agreement scheme for WMSNs. Our scheme has light weight, using only hash functions and exclusive-OR operators; it provides a secure login process to the doctor using the fuzzy extractor, and it provides resistance against cloning and physical attacks using PUF. We ensure the mutual authentication utilizing BAN logic and prove the session key security of our scheme using the RoR model. We also show that our scheme offers resistance against replay and man-in-the-middle attacks by utilizing the AVISPA simulation tool. We prove that our scheme is secure against various attacks, including offline password, impersonation, sensor node capture, and verification table leakage attacks, through informal analysis. Furthermore, we demonstrate that our scheme can provide user anonymity, perfect forward secrecy, and mutual authentication. Finally, we estimate the computation costs, communication costs, and energy consumption of our scheme and compare it with other related schemes. Our result shows that the proposed scheme can provide doctors and patients with more secure services for WMSNs. In the future, we will develop and implement our scheme, considering performance evaluation and result analysis, confirming its suitability for practical WMSN environments.

Author Contributions

Conceptualization, D.K.; Formal analysis, D.K. and Y.P (Yohan Park); Methodology, D.K. and Y.P. (Yohan Park); Software, D.K.; Validation, Y.P. (Yohan Park) and Y.P. (Youngho Park); Formal Proof, Y.P. (Youngho Park); Writing—original draft, D.K.; Writing—review and editing, Y.P. (Yohan Park), and Y.P. (Youngho Park); Supervision, Y.P.(Youngho Park). All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported in part by the Basic Science Research Program through the National Research Foundation of Korea (NRF), funded by the Ministry of Education under grant 2020R1I1A3058605, and in part by the BK21 FOUR project, funded by the Ministry of Education, Korea under grant 4199990113966.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Lara, E.; Aguilar, L.; Sanchez, M.A.; García, J.A. Lightweight authentication protocol for M2M communications of resource-constrained devices in industrial Internet of Things. Sensors 2020, 20, 501. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  2. 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, 20, 119387–119404. [Google Scholar] [CrossRef]
  3. Oh, J.; Yu, S.; Lee, J.; Son, S.; Kim, M.; Park, Y. A secure and lightweight authentication protocol for IoT-based smart homes. Sensors 2021, 21, 1488. [Google Scholar] [CrossRef] [PubMed]
  4. Abdulsalam, Y.; Hossain, M.S. COVID-19 networking demand: An auction-based mechanism for automated selection of edge computing services. IEEE Trans. Netw. Sci. Eng. 2020, 1–11. [Google Scholar] [CrossRef]
  5. Aileni, R.M.; Suciu, G. IoMT: A blockchain perspective. In Decentralised Internet of Things; Springer: Berlin/Heidelberg, Germany, 2020; pp. 199–215. [Google Scholar]
  6. Rahman, M.; Jahankhani, H. Security vulnerabilities in existing security mechanisms for IoMT and potential solutions for mitigating cyber-attacks. In Information Security Technologies for Controlling Pandemics; Springer: Berlin/Heidelberg, Germany, 2021; pp. 307–334. [Google Scholar]
  7. Masud, M.; Gaba, G.S.; Choudhary, K.; Hossain, M.S.; Alhamid, M.F.; Muhammad, G. Lightweight and anonymity-preserving user authentication scheme for IoT-based healthcare. IEEE Internet Things J. 2021. [Google Scholar] [CrossRef]
  8. Dodis, Y.; Reyzin, L.; Smith, A. Fuzzy extractors: How to generate strong keys from biometrics and other noisy data. In Lecture Notes in Computer Science, Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Interlaken, Switzerland, 2–6 May 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 523–540. [Google Scholar]
  9. Burrows, M.; Abadi, M.; Needham, R.M. A logic of authentication. ACM Trans. Comput. Syst. 1990, 8, 18–36. [Google Scholar] [CrossRef]
  10. Abdalla, M.; Fouque, P.; Pointcheval, D. Password-based authenticated key exchange in the three-party setting. In Lecture Notes in Computer Science, Proceedings of the 8th International Workshop on Theory and Practice in Public Key Cryptography (PKC’05), Les Diablerets, Switzerland, 23–26 January 2005; Springer: Berlin/Heidelberg, Germany, 2005; pp. 65–84. [Google Scholar]
  11. AVISPA. Automated Validation of Internet Security Protocols and Applications. Available online: http://www.avispa-project.org/ (accessed on 20 July 2021).
  12. SPAN: A Security Protocol Animator for AVISPA. Available online: http://www.avispa-project.org/ (accessed on 20 July 2021).
  13. Kumar, P.; Lee, S.G.; Lee, H.J. E-SAP: Efficient-strong authentication protocol for healthcare applications using wireless medical sensor networks. Sensors 2012, 12, 1625–1647. [Google Scholar] [CrossRef] [Green Version]
  14. He, D.; Kumar, N.; Chen, J.; Lee, C.C.; Chilamkurti, N.; Yeo, S.S. Robust anonymous authentication protocol for health-care applications using wireless medical sensor networks. Multimed. Syst. 2015, 21, 49–60. [Google Scholar] [CrossRef]
  15. Mir, O.; Munilla, J.; Kumari, S. Efficient anonymous authentication with key agreement protocol for wireless medical sensor networks. Peer-to-Peer Netw. Appl. 2017, 10, 79–91. [Google Scholar] [CrossRef]
  16. Wu, F.; Li, X.; Sangaiah, A.K.; Xu, L.; Kumari, S.; Wu, L.; Shen, J. A lightweight and robust two-factor authentication scheme for personalized healthcare systems using wireless medical sensor networks. Future Gener. Comput. Syst. 2018, 82, 727–737. [Google Scholar] [CrossRef]
  17. Challa, S.; Das, A.K.; Odelu, V.; Kumar, N.; Kumari, S.; Khan, M.K.; Vasilakos, A.V. An efficient ECC-based provably secure three-factor user authentication and key agreement protocol for wireless healthcare sensor networks. Comput. Electr. Eng. 2018, 69, 534–554. [Google Scholar] [CrossRef]
  18. Li, X.; Peng, J.; Obaidat, M.S.; Wu, F.; Khan, M.K.; Chen, C. A secure three-factor user authentication protocol with forward secrecy for wireless medical sensor network systems. IEEE Syst. J. 2019, 14, 39–50. [Google Scholar] [CrossRef]
  19. Shin, S.; Kwon, T. A privacy-preserving authentication, authorization, and key agreement scheme for wireless sensor networks in 5G-integrated Internet of Things. IEEE Access 2020, 8, 67555–67571. [Google Scholar] [CrossRef]
  20. Ali, Z.; Ghani, A.; Khan, I.; Chaudhry, S.A.; Islam, S.H.; Giri, D. A robust authentication and access control protocol for securing wireless healthcare sensor networks. J. Inf. Secur. Appl. 2020, 52, 102502. [Google Scholar] [CrossRef]
  21. Hsu, C.L.; Le, T.V.; Hsieh, M.C.; Tsai, K.Y.; Lu, C.F.; Lin, T.W. Three-factor UCSSO scheme with fast authentication and privacy protection for telecare medicine information systems. IEEE Access 2020, 8, 196553–196566. [Google Scholar] [CrossRef]
  22. Aman, M.N.; Chua, K.C.; Sikdar, B. Mutual authentication in IoT systems using physical unclonable functions. IEEE Internet Things J. 2017, 4, 1327–1340. [Google Scholar] [CrossRef]
  23. Byun, J.W. End-to-end authenticated key exchange based on different physical unclonable functions. IEEE Access 2019, 7, 102951–102965. [Google Scholar] [CrossRef]
  24. Fang, D.; Qian, Y.; Hu, R.Q. A flexible and efficient authentication and secure data transmission scheme for IoT applications. IEEE Internet Things J. 2020, 7, 3474–3484. [Google Scholar] [CrossRef]
  25. Chen, Y.; Chen, J. An efficient mutual authentication and key agreement scheme without password for wireless sensor networks. J. Supercomput. 2021, 1–23. [Google Scholar] [CrossRef]
  26. Dolev, D.; Yao, A. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
  27. Canetti, R.; Krawczyk, H. Universally composable notions of key exchange and secure channels. In Lecture Notes in Computer Science, Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques—Advances in Cryptology (EUROCRYPT’02), Amsterdam, The Netherlands, 28 April–2 May 2002; Springer: Berlin/Heidelberg, Germany, 2002; pp. 337–351. [Google Scholar]
  28. Kocher, P.; Jaffe, J.; Jun, B. Differential power analysis. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 15–19 August 1999; pp. 388–397. [Google Scholar]
  29. Park, K.; Park, Y.; Park, Y.; Das, A.K. 2PAKEP: Provably secure and efficient two-party authenticated key exchange protocol for mobile environment. IEEE Access 2018, 6, 30225–30241. [Google Scholar] [CrossRef]
  30. Park, Y.; Park, K.; Park, Y. Secure user authentication scheme with novel server mutual verification for multiserver environments. Int. J. Commun. Syst. 2019, 32, e3929. [Google Scholar] [CrossRef] [Green Version]
  31. Lee, J.; Yu, S.; Kim, M.; Park, Y.; Lee, S.; Chung, B. Secure key agreement and authentication protocol for message confirmation in vehicular cloud computing. Appl. Sci. 2020, 10, 6268. [Google Scholar] [CrossRef]
  32. Shashidhara, R.; Nayak, S.K.; Das, A.K.; Park, Y. On the design of lightweight and secure mutual authentication system for global roaming in resource-limited mobility networks. IEEE Access 2021, 9, 12879–12895. [Google Scholar] [CrossRef]
  33. Jan, S.U.; Ali, S.; Abbasi, I.A.; Mosleh, M.A.; Alsanad, A.; Khattak, H. Secure patient authentication framework in the healthcare system using wireless medical sensor networks. J. Healthc. Eng. 2021, 2021, 9954089. [Google Scholar] [CrossRef]
  34. Wang, D.; Cheng, H.; Wang, P.; Huang, X.; Jian, G. Zipf’s law in passwords. IEEE Trans. Inf. Forensics Secur. 2017, 12, 2776–2791. [Google Scholar] [CrossRef]
  35. Banerjee, S.; Odelu, V.; Das, A.K.; Chattopadhyay, S.; Rodrigues, J.J.; Park, Y. Physically secure lightweight anonymous user authentication protocol for internet of things using physically unclonable functions. IEEE Access 2019, 7, 85627–85644. [Google Scholar] [CrossRef]
  36. Wazid, M.; Bagga, P.; Das, A.K.; Shetty, S.; Rodrigues, J.J.; Park, Y. AKM-IoV: Authenticated key management protocol in fog computing-based Internet of vehicles deployment. IEEE Internet Things J. 2019, 6, 8804–8817. [Google Scholar] [CrossRef]
  37. Lee, J.; Kim, G.; Das, A.K.; Park, Y. Secure and efficient honey list-based authentication protocol for vehicular ad hoc networks. IEEE Trans. Netw. Sci. Eng. 2021. [Google Scholar] [CrossRef]
  38. Boyko, V.; MacKenzie, P.; Patel, S. Provably secure password-authenticated key exchange using Diffie-Hellman. In Lecture Notes in Computer Science, Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Bruges, Belgium, 14–18 May 2000; Springer: Berlin/Heidelberg, Germany, 2000; pp. 156–171. [Google Scholar]
  39. Son, S.; Lee, J.; Kim, M.; Yu, S.; Das, A.K.; Park, Y. Design of secure authentication protocol for cloud-assisted telecare medical information system using blockchain. IEEE Access 2020, 8, 192177–192191. [Google Scholar] [CrossRef]
  40. Lee, J.; Yu, S.; Kim, M.; Park, Y.; Das, A.K. On the design of secure and efficient three-factor authentication protocol using honey list for wireless sensor networks. IEEE Access 2020, 8, 107046–107062. [Google Scholar] [CrossRef]
  41. Kim, M.; Lee, J.; Park, K.; Park, Y.; Park, K.H.; Park, Y. Design of secure decentralized car-sharing system using blockchain. IEEE Access 2021, 9, 54796–54810. [Google Scholar] [CrossRef]
  42. Kilinc, H.H.; Yanik, T. A survey of SIP authentication and key agreement schemes. IEEE Commun. Surv. Tutor. 2013, 16, 1005–1023. [Google Scholar] [CrossRef]
  43. Gope, P.; Sikdar, B. Lightweight and privacy-preserving two-factor authentication scheme for IoT devices. IEEE Internet Things J. 2019, 6, 580–589. [Google Scholar] [CrossRef]
  44. Das, A.K.; Sutrala, A.K.; Kumari, S.; Odelu, V.; Wazid, M.; Li, X. An efficient multi-gateway-based three-factor user authentication and key agreement scheme in hierarchical wireless sensor networks. Secur. Commun. Netw. 2016, 9, 2070–2092. [Google Scholar] [CrossRef] [Green Version]
  45. Shnayder, V.; Hempstead, M.; Chen, B.R.; Allen, G.W.; Welsh, M. Simulating the power consumption of large-scale sensor network applications. In Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems, Baltimore, MD, USA, 3–5 November 2004; pp. 188–200. [Google Scholar]
Figure 1. The general system model of WMSNs.
Figure 1. The general system model of WMSNs.
Sensors 21 06039 g001
Figure 2. Mutual authentication and key agreement phase of Masud et al.’s scheme.
Figure 2. Mutual authentication and key agreement phase of Masud et al.’s scheme.
Sensors 21 06039 g002
Figure 3. Initialization phase of the proposed scheme.
Figure 3. Initialization phase of the proposed scheme.
Sensors 21 06039 g003
Figure 4. User registration phase of the proposed scheme.
Figure 4. User registration phase of the proposed scheme.
Sensors 21 06039 g004
Figure 5. Sensor node registration phase of the proposed scheme.
Figure 5. Sensor node registration phase of the proposed scheme.
Sensors 21 06039 g005
Figure 6. Mutual authentication and key agreement phase of the proposed scheme.
Figure 6. Mutual authentication and key agreement phase of the proposed scheme.
Sensors 21 06039 g006
Figure 7. Role specification for the session, environment, and goals.
Figure 7. Role specification for the session, environment, and goals.
Sensors 21 06039 g007
Figure 8. Role specification for the doctor.
Figure 8. Role specification for the doctor.
Sensors 21 06039 g008
Figure 9. The AVISPA simulation result of the proposed scheme.
Figure 9. The AVISPA simulation result of the proposed scheme.
Sensors 21 06039 g009
Table 1. Notations and descriptions.
Table 1. Notations and descriptions.
NotationDescription
D I D , S I D Identity of the doctor and the sensor node
P W D Password of the doctor
B I O D Biometric template of the doctor
sMaster key of the gateway
R r e q Registration request message
R S G , R S N Random number generated by the gateway and the sensor node
D T I D , S T I D Temporary identity of the doctor and the sensor node
N D , N G , N S Random nonce generated by device of the doctor, the gateway, and the sensor node
C H 1 , R E 1 Challenge and response pair
S K Session key
P U F ( . ) Physical unclonable function
h ( . ) Hash function
| | Concatenation operator
Exclusive-OR operator
Table 2. Notations of BAN logic.
Table 2. Notations of BAN logic.
NotationDescription
P 1 , P 2 Principals
M 1 , M 2 Statements
S K Session key
P 1 | M 1 P 1 believes M 1
P 1 | M 1 P 1 once said M 1
P 1 M 1 P 1 controls M 1
P 1 M 1 P 1 receives M 1
# M 1 M 1 is fresh
{ M 1 } K M 1 is encrypted with K
P 1 K P 2 P 1 and P 2 have shared key K
Table 3. Security and functionality features comparison.
Table 3. Security and functionality features comparison.
Security Properties[18][19][20][25][7]Proposed
S P 1 ×🗸🗸🗸×🗸
S P 2 🗸🗸🗸🗸×🗸
S P 3 🗸🗸🗸🗸×🗸
S P 4 🗸🗸🗸🗸🗸🗸
S P 5 ×🗸🗸🗸×🗸
S P 6 ×××🗸×🗸
S P 7 ××🗸🗸🗸🗸
S P 8 🗸
S P 9 ×🗸🗸🗸×🗸
S P 10 🗸🗸🗸🗸🗸🗸
S P 11 🗸🗸🗸🗸🗸🗸
S P 12 🗸🗸🗸
S P 13 🗸🗸🗸🗸🗸
S P 14 🗸🗸🗸
🗸: Provides the security/functionality feature. ×: Does not provide the security/functionality feature. −: Does not consider the security/functionality feature.
Table 4. Comparison of communication costs.
Table 4. Comparison of communication costs.
SchemesTotal Communication CostsMessages
Li et al. [18]2880 bits4 messages
Shin et al. [19]3328 bits4 messages
Ali et al. [20]2240 bits4 messages
Chen et al. [25]2880 bits5 messages
Masud et al. [7]2176 bits4 messages
Proposed2080 bits4 messages
Table 5. Comparison of computational costs.
Table 5. Comparison of computational costs.
SchemesUserGatewaySensor NodeTotalTotal Cost (s)
Li et al. [18] 1 T R N G + 8 T H + 3 T E M 1 T R N G + 8 T H + T E M 1 T R N G + 4 T H + 2 T E M 3 T R N G + 20 T H + 6 T E M 1.502
Shin et al. [19] 1 T R N G + 1 T F + 14 T H + 2 T E M 12 T H + 1 T E M 1 T R N G + 5 T H + 1 T E M 2 T R N G + 1 T F + 31 T H + 4 T E M 1.232
Ali et al. [20] 1 T R N G + 1 T F + 3 T H + 2 T E M 1 T R N G + 4 T H + 2 T E M 1 T H 2 T R N G + 1 T F + 8 T H + 4 T E M 1.268
Chen et al. [25] 1 T R N G + 2 T F + 14 T H + 1 T P U F 8 T H 1 T R N G + 1 T F + 8 T H 2 T R N G + 3 T F + 30 T H + 1 T P U F 0.919
Masud et al. [7] 1 T R N G + 3 T H 4 T R N G + 3 T H 2 T R N G + 2 T H 7 T R N G + 8 T H 0.379
Proposed 1 T R N G + 1 T F + 11 T H 1 T R N G + 15 T H 1 T R N G + 1 T F + 8 T H + 1 T P U F 3 T R N G + 2 T F + 34 T H + 1 T P U F 0.717
Table 6. Comparison of energy consumption.
Table 6. Comparison of energy consumption.
SchemesTotal Energy Consumption
Li et al. [18]6739 mJ
Shin et al. [19]7788 mJ
Ali et al. [20]5242 mJ
Chen et al. [25]6739 mJ
Masud et al. [7]5092 mJ
Proposed4867 mJ
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Kwon, D.; Park, Y.; Park, Y. Provably Secure Three-Factor-Based Mutual Authentication Scheme with PUF for Wireless Medical Sensor Networks. Sensors 2021, 21, 6039. https://doi.org/10.3390/s21186039

AMA Style

Kwon D, Park Y, Park Y. Provably Secure Three-Factor-Based Mutual Authentication Scheme with PUF for Wireless Medical Sensor Networks. Sensors. 2021; 21(18):6039. https://doi.org/10.3390/s21186039

Chicago/Turabian Style

Kwon, DeokKyu, YoHan Park, and YoungHo Park. 2021. "Provably Secure Three-Factor-Based Mutual Authentication Scheme with PUF for Wireless Medical Sensor Networks" Sensors 21, no. 18: 6039. https://doi.org/10.3390/s21186039

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