Next Article in Journal
Optical Diffractive Convolutional Neural Networks Implemented in an All-Optical Way
Next Article in Special Issue
Nearest Neighbour Node Deployment Algorithm for Mobile Sensor Networks
Previous Article in Journal
Optical Frequency-Domain Reflectometry Based Distributed Temperature Sensing Using Rayleigh Backscattering Enhanced Fiber
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Robust and Efficient Authentication and Group–Proof Scheme Using Physical Unclonable Functions for Wearable Computing

1
Electronics and Telecommunications Research Institute, Daejeon 34129, Republic of Korea
2
School of Electronics and Electrical Engineering, Kyungpook National University, Daegu 41566, Republic of Korea
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(12), 5747; https://doi.org/10.3390/s23125747
Submission received: 29 May 2023 / Revised: 15 June 2023 / Accepted: 19 June 2023 / Published: 20 June 2023
(This article belongs to the Special Issue Computing and Applications for Wireless and Mobile Networks)

Abstract

:
Wearable computing has garnered a lot of attention due to its various advantages, including automatic recognition and categorization of human actions from sensor data. However, wearable computing environments can be fragile to cyber security attacks since adversaries attempt to block, delete, or intercept the exchanged information via insecure communication channels. In addition to cyber security attacks, wearable sensor devices cannot resist physical threats since they are batched in unattended circumstances. Furthermore, existing schemes are not suited for resource-constrained wearable sensor devices with regard to communication and computational costs and are inefficient regarding the verification of multiple sensor devices simultaneously. Thus, we designed an efficient and robust authentication and group–proof scheme using physical unclonable functions (PUFs) for wearable computing, denoted as AGPS-PUFs, to provide high-security and cost-effective efficiency compared to the previous schemes. We evaluated the security of the AGPS-PUF using a formal security analysis, including the ROR Oracle model and AVISPA. We carried out the testbed experiments using MIRACL on Raspberry PI4 and then presented a comparative analysis of the performance between the AGPS-PUF scheme and the previous schemes. Consequently, the AGPS-PUF offers superior security and efficiency than existing schemes and can be applied to practical wearable computing environments.

1. Introduction

With the development of “mobile and 5G communication” technologies, wearable computing is emerging as a new ubiquitous technology within the Internet of Things (IoT) and it has garnered a lot of attention from both scientific and academic communities [1,2,3]. The wearable devices are integrated into various types of accessories and clothing and provide useful application services in various fields, including “military, healthcare, and industry”. In particular, sustainable wearable computing technology offers innovative healthcare opportunities, which give new methods to medical professionals to treat patients. For instance, wearable computing-based healthcare systems reduce healthcare costs and provide various medical services, including “monitoring, medical consultation, and emergency treatment” [4].
In these environments, wearable devices collect medical data, including “asthma level, blood pressure, electrocardiogram, body temperature” from the patients, and then transmit the corresponding data to the paired mobile terminal. The mobile terminal transmits the received data to the trusted cloud server, and authorized medical professionals remotely connect to the trusted cloud server and precisely monitor, analyze, and diagnose the health data of patients stored within the server. However, despite the numerous advantages of wearable computing, there are several difficulties and challenges that need to be addressed [5]. In wearable computing environments, serious security and privacy issues may arise since the messages are transmitted via an insecure channel [6]. If the collected data from the wearable devices are exposed, an adversary can obtain the sensitive information of legitimate patients and may attempt potential cyber security attacks. Hence, adversaries can bring many unexpected threats and jeopardize the patients’ lives by transmitting false medical diagnoses, such as “treatments and medications”. In addition to cyber security attacks, wearable devices cannot prevent physical threats since they are deployed in hostile and unattended circumstances. Furthermore, considering the resource limitations of wearable devices, it is suitable to adopt lightweight cryptographic primitives, such as “hash functions and symmetric key cryptography that require low computation and communication costs [7]”. In wearable computing environments, it is essential to identify whether data collected from multiple wearable devices belong to the same authorized user. Thus, a lightweight privacy-preserving authentication and group–proof scheme is indispensable to ensure simultaneous identification and secure communication in wearable computing environments.
Recently, Guo et al. [8] presented an “anonymous authenticated key agreement and group–proof protocol for wearable computing” to provide secure communication and simultaneous identification. Guo et al. claimed that their scheme was protected against physical/cyber security attacks, including “physical wearable device capture, impersonation, and forgery” attacks, and guaranteed “secure mutual authentication and untraceability”. Unfortunately, we prove that Guo et al.’s scheme was not protected against security attacks, such as “session key disclosure, man-in-the-middle (MITM), and impersonation” attacks, and it does not offer several security properties, including “untraceability and mutual authentication”. Hence, we present a “new efficient and robust authentication and group–proof scheme using physical unclonable functions (PUF) for wearable computing”, denoted as AGPS-PUFs, to address the security issues of Guo et al.’s scheme [8].

1.1. Motivations

The main purpose of this paper is to identify and improve the security problems of Guo et al.’s scheme based on the threat model presented by them. This paper proves that their protocol [8] is not protected against lethal security attacks and does not offer sensitive security features in wearable computing environments. Guo et al. [8] designed a high-security-supported cryptographic and efficient group–proof scheme for wearable computing. However, they should have examined their protocol from the point of view that we analyzed and proved. This fact motivated us to design a “new efficient and robust authentication and group–proof scheme using PUF for wearable computing”. This scheme is resilient to lethal security attacks and drawbacks that exist in wearable computing environments while guaranteeing security functionalities.

1.2. Research Contributions

This section introduces the main contribution of the AGPS-PUF.
  • The AGPS-PUF is specifically designed to improve the security vulnerabilities of Guo et al.’s scheme and offers reliable authentication and maintenance for wearable computing. The AGPS-PUF carries out mutual authentication between a mobile user and wearable devices through a trusted entity known as the cloud server. The PUF enables wearable devices to resist tampering, including physical security attacks.
  • We propose the protocol and demonstrate its effectiveness and security strengths via informal and formal security analyses. We exploited the well-known “AVISPA simulation” [9] and “ROR Oracle model” [10].
  • We prove that the AGPS-PUF offers efficient performance in terms of security functionalities and overheads, as compared to previous schemes explored in the literature.

1.3. Paper Outlines

The rest of the paper is organized as follows. Section 2 presents the related works for wearable computing environments. Section 3 introduces the preliminaries. In Section 4 and Section 5, we review Guo et al.’s scheme [8] and then prove the security shortcomings of Guo et al.’s scheme. Section 6 designs a “new PUF-based privacy-preserving authentication and group–proof scheme for wearable computing” to resolve the security problems of Guo et al.’s scheme. Section 7 analyzes the security of the AGPS-PUF when performing formal and informal security analyses. Section 8 introduces the testbed experiments for cryptographic operations using MIRACL crypto SDK. Section 9 analyzes the performance comparison of the AGPS-PUF with related schemes. Finally, Section 10 summarizes the future works and conclusions of this paper.

2. Related Works

Over the last few years, many authentication and key agreement (AKA) schemes have been presented for wearable computing to ensure privacy for legitimate users [11,12,13]. The public key cryptosystem (PKC)-based AKA schemes consist of three mechanisms: “traditional PKC scheme [14], identity-based PKC scheme [15], and certificateless PKC scheme [16]”. The traditional PKC scheme faces problems in managing user certificates and needs high computing capabilities, so it is not applicable to wearable computing environments with constrained resources. Identity-based PKC schemes deal with the difficulty of certificate management; however, they are presented for server–client environments. The certificateless PKC scheme enhances the key escrow problem of the identity-based PKC scheme and prevents certificate management and delivery problems from the traditional PKC scheme [17]. However, these existing PKC-based AKA schemes [14,15,16] are not suitable for wearable computing environments because they utilize PKC, such as elliptic curve cryptography (ECC) and bilinear pairing, which require high communication and computation overheads.
The design of a lightweight AKA scheme for wearable computing environments has garnered a lot of attention due to the efficiency problem of the PKC-based AKA scheme and constrained resources for IoT and sensor devices. The lightweight AKA scheme has two main features: “password-based two-factor AKA scheme or password and biometric-based three-factor AKA scheme”. These AKA schemes utilize lightweight cryptographic primitives, including the “one-way hash function, XOR operation, and symmetric key cryptography”. Recently, numerous lightweight AKA schemes [18,19,20] were designed for wearable computing environments to provide useful services with lightweight properties. Li et al. [21] proposed a “secure AKA scheme with user anonymity and lightweight for healthcare applications” in wireless medical sensor networks (WMSN). Unfortunately, Das et al. [22] demonstrated that Li et al.’s scheme [21] is insecure to “privileged insider and sensor node capture” attacks and fails to ensure “user anonymity”. Wu et al. [23] presented an “enhanced two-factor assisted AKA scheme in WMSN environments”. Wu et al. [23] claimed that their protocol is resilient to lethal security attacks and offers the necessary security features. Unfortunately, Srinivas et al. [24] proved that their scheme [23] is not resistant to lethal security attacks, such as “stolen smart card, offline password guessing, user impersonation, and denial of service (DoS)” attacks. Srinivas et al. [24] proposed an “efficient and reliable AKA scheme for healthcare services with WMSN” to address the security weaknesses of Wu et al.’s scheme [23]. Amin et al. [25] designed a “lightweight and anonymous two-factor based AKA scheme” to provide secure patient data in patient monitoring systems for WMSN. Unfortunately, Ali et al. [26] analyzed Amin et al.’s scheme [25] and found that it does not prevent “known-session key temporary information, user impersonation, and offline password guessing” attacks. Ali et al. [26] presented an “enhanced biometric-based three-factor AKA scheme for healthcare monitoring in WMSN” to resolve the security shortcomings of Amin et al.’s scheme [25]. Gupta et al. [27] designed a “lightweight AKA scheme for wearable devices with user anonymity”. Gupta et al.’s scheme [27] has high scalability because the wearable sensing device registration phase does not need a secure channel. However, Hajian et al. [28] proved that Gupta et al.’s scheme [27] is not resistant to lethal security attacks, including “compromise sensing device, desynchronization, and privileged insider” attacks. Hajian et al. [28] proposed a “scalable and lightweight three-factor based AKA scheme with user-friendly and anonymous for wearable sensing devices” to improve the security problems of Gupta et al.’s scheme [27]. However, Yu et al. [29] pointed out that their protocol [28] is still not resistant to “mobile device stolen”, “session key disclosure, MITM, impersonation” attacks and does not guarantee “mutual authentication”. Unfortunately, these lightweight AKA schemes for wearable computing do not identify whether the collected data from multiple wearable devices belong to the same authorized user.
Guo et al. [8] designed an “anonymous and lightweight AKA and group–proof scheme for wearable computing”, which can verify that multiple wearable devices belong to the same user. Guo et al. [8] claimed that their protocol ensures secure data transmission between each entity and is resilient to lethal security attacks. However, based on the threat model presented by them, we have proven that Guo et al.’s scheme [8] is vulnerable to lethal security threats, such as “impersonation, MITM, and session key disclosure” attacks, and does not offer several security properties, such as “untraceability and mutual authentication”. In addition to cyber security attacks, wearable devices may be fragile to physical threats since they are batched in insecure circumstances. Therefore, we propose an “efficient and robust authentication and group-proof scheme using the PUF for wearable computing” to supplement the security functionalities and address the security shortcomings of Guo et al.’s scheme [8].

3. Preliminaries

The following provides an overview of the preliminaries.

3.1. Threat Model

We introduce the adversary capabilities based on the “Dolev-Yao (DY) model” [30,31].
  • An adversary (henceforth denoted as A ) can “resend, eavesdrop, block, and delete” the exchanged messages over an insecure channel.
  • A can steal the mobile device ( M D ) and the wearable device ( W D ) of the legitimate user. However, A cannot simultaneously capture the M D and W D of the legitimate user. The cloud server and registration center are trusted authorities and cannot be compromised by A .
  • A can extract the secret information stored in the captured M D or W D by performing the “power-analysis attacks” [32] and “physical capture attacks” [33].

3.2. PUF

The PUF [34,35] is a physical circuit that manufactures an output of a physical microstructure. The PUF does not store a private key in the smart device and it is extremely difficult to clone the circuit. The PUF utilizes an input/output bit string pair, denoted as the challenge/response pair. Even if various challenges occur in the PUF circuit, each has a unique output response. The PUF preserves smart devices in IoMT-enabled TMIS environments from side-channel and tampering threats. The PUF is expressed through a process denoted as R = P U F ( C ) , where C and R are the challenge/response. The following are several properties of the PUF.
  • The PUF is easy to implement and evaluate.
  • The PUF relies on the system’s physical microstructure.
  • Any attempt to tamper with a smart device that contains the PUF will update the behavior of the PUF and, thus, destroy it [36].
Figure 1 shows a “PUF-based key generator procedure”. As shown in Figure 1, the PUF generates strong extractors for a private secret key based on various functions, including “encode, decode, and key derivation” functions. Thus, the PUF makes it impossible for attackers to perform lethal physical threats. Moreover, these properties combine to make a “good solution for the robust and efficient authentication of lightweight devices in wearable computing environments”.

3.3. System Model

This section introduces an overview of the system model (see Figure 2) of this paper. The system model for wearable computing is composed of four entities: registration center, cloud server, mobile users, and wearable devices.
  • Registration center: This entity is a trusted authority that registers wearable devices and mobile users in a secure channel. Moreover, the registration center sets the secret credentials of each wearable device before being batched in wearable computing environments.
  • Cloud server: This entity is also a trusted authority. The cloud server stores and shares the health data of legitimate patients and has computational and storage capabilities to manage patients’ health data.
  • Mobile users: They have a mobile terminal and wear wearable devices to analyze the health status of the patients. The mobile terminal receives health data from the wearable devices, and then sends the received data to the cloud server through wireless communications. Moreover, remote authorized users access the cloud server to analyze the patients’ data and provide accurate medical diagnoses based on the stored physiological data.
  • Wearable device: Wearable devices track and collect health data from corresponding body parts of patients. Then, the collected data are transmitted to the paired mobile terminal via Bluetooth.

4. Review of Guo et al.’s Scheme

This section introduces the reviews of Guo et al.’s scheme [8]. Table 1 shows the notations utilized in this article.

4.1. System Setup Phase

In this section, R C denotes the secret credentials of each W D j .
SP-1: 
R C select s a master private key M K for C S .
SP-2: 
R C chooses a unique identity I D W D for each W D j and computes the pseudo-identity P I D W D = h ( I D W D | | M K ) . After that, R C generates a temporary identity T I D W D for each W D j .
SP-3: 
R C stores { I D W D , T I D j o l d = n u l l , T I D j n e w = T I D W D } in C S ’s secure database and then stores { P I D W D , T I D W D , h ( · ) } in the memory of W D j .

4.2. User Registration Phase

In this phase, U i registers with R C and obtains certain secret information to utilize later for authentication.
URP-1: 
U i selects I D U and P W i at M D i and W D j . After that, M D i generates a random number R N i and computes H I D U = h ( I D U | | R N i ) and H P W i = h ( P W i | | R N i ) . Then, M D i sends { H I D U , H P W i } to R C over a secure channel.
URP-2: 
R C selects a temporary identity T I D U and a random number r i . After that, R C calculates A u t h * = h ( H I D U | | H P W i | | r i ) , A i = r i h ( H I D U H P W i ) , B i = h ( T I D U | | r i | | M K ) , C i = r i h ( T I D U | | M K ) . Finally, R C stores { T I D j o l d = n u l l , T I D j n e w = T I D W D , C i } in C S ’s secure database and then sends { A u t h * , T I D U , A i , B i } to M D i over a secure channel.
URP-3: 
M D i computes H A u t h = h ( A u t h * | | H P W i R N i ) , D i = R N i A i , E i = B i h ( T I D U H P W i R N i ) , and F i = R N i h ( I D U | | P W i ) . Finally, M D i stores { T I D U , H A u t h , D i , E i , F i , h ( · ) } in its memory.

4.3. Login and Authentication Phase

In this phase, all participants authenticate each other and establish a common session key.
LAP-1: 
U i first inputs I D U and P W i into M D i . After that, M D i computes R N i = F i h ( I D U | | P W i ) , H I D i * = h ( I D U | | R N i ) , H P W i * = h ( P W i | | R N i ) , R i * = A i h ( H I D i * H P W i * ) = D i R N i h ( H I D i * H P W i * ) , A u t h * = h ( H I D i * | | H P W i * | | R i * ) , and H A u t h * = h ( A u t h * H P W i * R N i ) , and checks H A u t h * = ? H A u t h . If it matches, M D i generates a random nonce n 1 and a current timestamp T 1 and then transmits M s g 1 = { n 1 , T 1 } to W D j over an insecure channel.
LAP-2: 
W D j verifies the freshness of | T 2 T 1 |     Δ T i , where T 2 is the current timestamp and Δ T 1 is the maximum transmission delay for the message to be transmitted between M D i and W D j . If they match, W D j selects n 2 and computes M 1 = h ( T I D W D | | P I D W D ) n 2 to transmit the secret parameters securely, and M 2 = h ( M 1 | | T 2 | | n 1 | | n 2 ) to verify the authorized entity. After that, W D j transmits M s g 2 = { M 1 , M 2 , T I D W D , T 2 } to M D i .
LAP-3: 
M D i checks the freshness of | T 3 T 2 |     Δ T i . If the condition is met, M D i selects n 3 and computes B i = E i h ( T I D U H P W i R N i ) , M 3 = n 3 h ( T I D U | | r i | | T 3 ) to transmit the random nonce securely, M 4 = h ( T I D U | | B i | | n 3 | | T 3 ) to verify the authorized entity, M 5 = h ( T I D U | | T I D W D ) n 1 to transmit the secret parameters securely, and M 6 = h ( T I D U | | T I D W D | | M 2 | | M 4 | | n 3 | | T 3 ) to verify the authorized entity, and sends M s g 3 = { M 1 , M 2 , M 3 , M 4 , M 5 , M 6 , T I D U , T I D W D , T 2 , T 3 } to C S over an insecure channel.
LAP-4: 
C S verifies the freshness of | T 4 T 3 |     Δ T i . If it matches, C S retrieves T I D U in the database. There are three scenarios for T I D U . The first scenario is T I D i o l d = T I D U , indicating that C S and U i did not correctly update the temporary identity of U i in the previous session. The second scenario is T I D i n e w = T I D U , indicating that C S and U i correctly updated the temporary identity of U i in the previous session. In the third scenario, there is no matching of T I D U in the C S database, and the authentication phase is terminated. For the first two scenarios, C S obtains { C i } , corresponding to T I D U in its database. After that, C S computes r i * = C i h ( T I D U | | M K ) , B i * = h ( T I D U | | r i * | | M K ) , n 3 * = M 3 h ( T I D U | | r i * | | T 3 ) , M 4 * = h ( T I D U | | B i * | | n 3 * | | T 3 ) , and M 6 * = h ( T I D U | | T I D W D | | M 2 | | M 4 * | | n 3 * | | T 3 ) , and verifies M 4 * = ? M 4 and M 6 * = ? M 6 . If they are not equal, the authentication phase is terminated. Otherwise, C S successfully authenticates U i and then updates the temporary identity of U i . For the second scenario, U i ’s new temporary identity remains unchanged for the time being and is updated later in the session.
LAP-5: 
C S retrieves T I D W D in its database. Similar to LAP-4, there are three scenarios: T I D j o l d = T I D W D , T I D j n e w = T I D W D , or T I D W D cannot be found in the C S database. In the first two scenarios, C S obtains { I D W D } , corresponding to T I D W D in its database, and then computes P I D W D = h ( I D W D | | M K ) , n 2 * = h ( T I D W D | | P I D W D ) M 1 , n 1 * = h ( T I D U T I D W D ) M 5 , and M 2 * = h ( M 1 | | T 2 | | n 1 * | | n 2 * ) , and checks M 2 * = ? M 2 . If it matches, C S successfully authenticates W D j . Then, C S updates the temporary identity of W D j as it updates U i ’s temporary identity.
LAP-6: 
C S selects n 4 and timestamp T 4 . After that, C S computes M 7 = B i T 4 = h ( T I D U | | r i | | M K ) T 4 to transmit the secret parameters securely, M 8 = n 4 h ( T I D U | | r i | | n 3 | | T 4 ) to transmit the secret parameters securely, S K C S U = h ( T I D U | | M 7 | | n 3 | | n 4 | | T 3 | | T 4 ) , M 9 = h ( M 4 | | M 8 | | S K C S U | | T 3 | | T 4 ) to verify the authorized entity, S K W D U = h ( T I D U | | T I D W D | | h ( I D W D | | M K ) | | n 2 | | n 4 | | T 4 ) , M 10 = h ( M 4 | | M 8 | | S K W D U | | T 3 | | T 4 ) to verify the authorized entity, and M 11 = S K W D U h ( B i | | n 1 | | n 3 | | n 4 | | T 3 | | T 4 ) . C S selects the new temporary identities T I D i n e w and T I D j n e w for U i and W D j , and then changes ( T I D i o l d = T I D U , T I D i n e w = T I D i n e w ) and ( T I D j o l d = T I D W D , T I D j n e w = T I D j n e w ) in its database. Then, C S calculates T I D i * = T I D i n e w h ( T I D U | | n 4 | | S K C S U ) and T I D j * = T I D j n e w h ( T I D W D | | n 4 | | S K W D U ) and transmits M s g 4 = { M 8 , M 9 , M 10 , M 11 , T I D i * , T I D j * , T 4 } to M D i over an insecure channel.
LAP-7: 
M D i verifies the freshness of | T 5 T 4 |     Δ T i . If it matches, U i calculates n 4 = M 8 h ( T I D U | | n 3 | | T 4 ) , M 7 * = B i * T 4 = E i h ( T I D U H P W i R N i ) T 4 , S K C S U * = h ( T I D U | | M 7 * | | n 3 | | n 4 | | T 3 | | T 4 ) , S K W D U * = M 11 h ( B i | | n 1 | | n 3 | | n 4 | | T 3 | | T 4 ) , M 9 * = h ( M 4 | | M 8 | | S K C S U * | | T 3 | | T 4 ) , and M 10 * = h ( M 4 | | M 8 | | S K W D U * | | T 3 | | T 4 ) , and then checks whether M 9 * = ? M 9 and M 10 * = ? M 10 . If they are valid, M D i authenticates C S . After that, M D i stores the session keys, S K C S U * and S K W D U * , and the new temporary identity, T I D i n e w = T I D i * h ( T I D U | | n 4 | | S K C S U * ) .
LAP-8: 
M D i selects n 5 and computes M 12 = n 4 h ( T I D W D | | n 1 | | T 4 ) to transmit the secret parameters securely, M 13 = n 5 h ( T I D W D | | n 1 | | T 5 ) to transmit the secret parameters securely, M 14 = h ( T I D U | | S K W D U | | n 5 | | T 5 ) to verify the authorized entity, and then transmits M s g 5 = { T I D U , T I D j * , M 12 , M 13 , M 14 , T 4 , T 5 } to W D j .
LAP-9: 
W D j verifies the freshness | T 6 T 5 |     Δ T i . If it matches, W D j computes n 4 = M 12 h ( T I D W D | | n 1 | | T 4 ) , n 5 = M 13 h ( T I D W D | | n 1 | | T 5 ) , S K W D U * = h ( T I D U | | T I D W D | | h ( I D W D | | M K ) | | n 2 | | n 4 | | T 4 ) , and M 14 * = h ( T I D U | | S K W D U | | n 5 | | T 5 ) , and then checks whether M 14 * = ? M 14 . If it matches, W D j authenticates U i successfully. Finally, W D j stores a session key S K W D U * and a new temporary identity T I D j * = T I D j n e w h ( T I D W D | | n 4 | | S K W D U * ) .

5. Security Flaws of Guo et al.’s Scheme

In this section, we prove that Guo et al.’s scheme [8] is not protected against the lethal security threats and cannot offer several security functionalities.

5.1. Impersonation Attack

According to Section 3.1, A can extract the secret credentials { P I D W D , T I D W D } stored in W D j . Moreover, A can intercept, block, modify, replay, and delete the exchanged messages over an insecure channel. In this attack, A attempts to impersonate a legitimate entity.
  • Step 1: A first calculates n 2 = M 1 h ( T I D W D | | P I D W D ) and a new random nonce n 2 A . After that, A computes M 1 A = h ( T I D W D | | P I D W D ) n 2 A and M 2 A = h ( M 1 A | | T 2 | | n 1 | | n 2 A ) . After that, A transmits the message { M 1 A , M 2 A , T I D W D , T 2 } to C S via M D i .
  • Step 2: After receiving the message, C S retrieves T I D W D in its database and then obtains { I D W D } , corresponding to T I D W D in its database. Then, C S calculates P I D W D = h ( I D W D | | M K ) , n 2 A * = h ( T I D W D | | P I D W D ) M 1 A , n 1 * = h ( T I D U T I D W D ) M 5 , and M 2 A * = h ( M 1 A | | T 2 | | n 1 * | | n 2 A * ) , and checks M 2 A * = ? M 2 A . If it matches, C S authenticates A , successfully.
  • Step 3: C S generates a random nonce n 4 and timestamp T 4 . After that, C S computes M 7 = B i T 4 = h ( T I D U | | r i | | M K ) T 4 , M 8 = n 4 h ( T I D U | | r i | | n 3 | | T 4 ) , S K C S U = h ( T I D U | | M 7 | | n 3 | | n 4 | | T 3 | | T 4 ) , M 9 = h ( M 4 | | M 8 | | S K C S U | | T 3 | | T 4 ) , S K W D U A = h ( T I D U | | T I D W D | | h ( I D W D | | M K ) | | n 2 A | | n 4 | | T 4 ) , M 10 A = h ( M 4 | | M 8 | | S K W D U A | | T 3 | | T 4 ) , and M 11 A = S K W D U A h ( B i | | n 1 | | n 3 | | n 4 | | T 3 | | T 4 ) . C S selects the new temporary identities, T I D i n e w and T I D j n e w for U i and W D j , and then changes ( T I D i o l d = T I D U , T I D i n e w = T I D i n e w ) , and ( T I D j o l d = T I D W D , T I D j n e w = T I D j n e w ) in its database. Then, C S calculates T I D i * = T I D i n e w h ( T I D U | | n 4 | | S K C S U ) and T I D j A * = T I D j n e w h ( T I D W D | | n 4 | | S K W D U A ) and transmits { M 8 , M 9 , M 10 A , M 11 A , T I D i * , T I D j A * , T 4 } to M D i over an open channel.
  • Step 4: Upon receiving the message, M D i verifies the freshness of | T 5 T 4 |     Δ T i . If it matches, U i calculates n 4 = M 8 h ( T I D U | | n 3 | | T 4 ) , M 7 * = B i * T 4 = E i h ( T I D U H P W i R N i ) T 4 , S K C S U * = h ( T I D U | | M 7 * | | n 3 | | n 4 | | T 3 | | T 4 ) , S K W D U A * = M 11 A h ( B i | | n 1 | | n 3 | | n 4 | | T 3 | | T 4 ) , M 9 * = h ( M 4 | | M 8 | | S K C S U * | | T 3 | | T 4 ) , and M 10 A * = h ( M 4 | | M 8 | | S K W D U A * | | T 3 | | T 4 ) , and then checks whether M 9 * = ? M 9 and M 10 A * = ? M 10 A . If they are valid, M D i authenticates C S . After that, M D i stores the session keys S K C S U * and S K W D U A * and the new temporary identity T I D i n e w = T I D i * h ( T I D U | | n 4 | | S K C S U * ) .
  • Step 5: Then, M D i selects n 5 and computes M 12 = n 4 h ( T I D W D | | n 1 | | T 4 ) , M 13 = n 5 h ( T I D W D | | n 1 | | T 5 ) , M 14 A = h ( T I D U | | S K W D U A | | n 5 | | T 5 ) , and then transmits { T I D U , T I D j A * , M 12 , M 13 , M 14 A , T 4 , T 5 } to W D j .
  • Step 6: After eavesdropping on the message, { T I D U , T I D j A * , M 12 , M 13 , M 14 A , T 4 , T 5 } , A calculates n 4 = M 12 h ( T I D W D | | n 1 | | T 4 ) , n 5 = M 13 h ( T I D W D | | n 1 | | T 5 ) , S K W D U A * = h ( T I D U | | T I D W D | | h ( I D W D | | M K ) | | n 2 A | | n 4 | | T 4 ) , and M 14 A * = h ( T I D U | | S K W D U A | | n 5 | | T 5 ) . Note that h ( I D W D | | M K ) , included in the session key, is the same as P I D W D . Finally, A stores a session key S K W D U A * and a new temporary identity T I D j A * = T I D j n e w h ( T I D W D | | n 4 | | S K W D U A * ) .
Consequently, their scheme is not resistant to impersonation attacks since A can impersonate the legitimate W D j .

5.2. MITM Attack

Based on the threat model, A can extract the secret parameters { P I D W D , T I D W D } stored in W D j . Furthermore, A can block, intercept, modify, replay, and delete the transmitted messages via an open channel.
  • Step 1: After eavesdropping on the message { n 1 , T 1 } via a public channel, A first calculates n 2 = M 1 h ( T I D W D | | P I D W D ) and M 2 = h ( M 1 | | T 2 | | n 1 | | n 2 ) . After that, A transmits { M 1 , M 2 , T I D W D , T 2 } .
  • Step 2: After eavesdropping on the message { T I D U , T I D j * , M 12 , M 13 , M 14 , T 4 , T 5 } via a public channel, A computes n 4 = M 12 h ( T I D W D | | n 1 | | T 4 ) and n 5 = M 13 h ( T I D W D | | n 1 | | T 5 ) .
  • Step 3: A calculates a session key S K W D U * = h ( T I D U | | T I D W D | | h ( I D W D | | M K ) | | n 2 | | n 4 | | T 4 ) , where h ( I D W D | | M K ) , included in the session key, is the same as P I D W D . Finally, A successfully calculates M 14 * = h ( T I D U | | S K W D U | | n 5 | | T 5 ) and then verifies M 14 * = ? M 14 . Hence, their scheme is not protected against this attack.

5.3. Session Key Disclosure Attack

Based on Section 5.2, A extracts n 4 = M 12 h ( T I D W D | | n 1 | | T 4 ) and n 5 = M 13 h ( T I D W D | | n 1 | | T 5 ) , and then computes a session key S K W D U * = h ( T I D U | | T I D W D | | h ( I D W D | | M K ) | | n 2 | | n 4 | | T 4 ) successfully. As a result, A can successfully obtain a common session key S K W D U * between legitimate U i and W D j . Thus, Guo et al.’s scheme is insecure to this attack.

5.4. Mutual Authentication

In Guo et al.’s scheme, they claimed to provide mutual authentication between the entities. Unfortunately, according to Section 5.2 and Section 5.3, A can successfully generate the sensitive messages, M 10 = h ( M 4 | | M 8 | | S K W D U | | T 3 | | T 4 ) and M 14 = h ( T I D U | | S K W D U A | | n 5 | | T 5 ) , for mutual authentication. Thus, Guo et al.’s scheme cannot guarantee secure mutual authentication between the legitimate U i and W D j .

5.5. Untraceability

Guo et al. claimed that their protocol achieved untraceability. However, according to Section 5.2 and Section 5.3, A calculates the random nonces n 4 = M 12 h ( T I D W D | | n 1 | | T 4 ) and n 5 = M 13 h ( T I D W D | | n 1 | | T 5 ) and then computes a session key S K W D U * = h ( T I D U | | T I D W D | | h ( I D W D | | M K ) | | n 2 | | n 4 | | T 4 ) . After that, A successfully calculates a new temporary identity T I D j n e w = T I D j * h ( T I D W D | | n 4 | | S K W D U * ) . Thus, Guo et al.’s scheme does not achieve untraceability because A can trace the authorized W D j through their new temporary identity.

6. Proposed Scheme

The existing related schemes for wearable computing are not protected against potential security attacks. Thus, we propose a “robust and efficient authentication and group–proof scheme using the PUF for wearable computing (AGPS-PUF)” to improve the security flaws of the existing schemes. The AGPS-PUF is resilient to cyber/physical security attacks and provides necessary security functionalities. The AGPS-PUF consists of six phases: (1) system setup, (2) registration, (3) login and authentication, (4) group proof, and (5) password update. We show the overall flowchart during the AKA phase of the AGPS-PUF, as shown in Figure 3.

6.1. System Setup Phase

In this section, R C first sets the secret credentials for each W D j . The following are detailed descriptions:
SP-1: 
R C selects a master private key M K for C S .
SP-2: 
R C chooses a unique identity I D W D for each W D j and then generates a temporary identity T I D W D for each W D j .
SP-3: 
R C stores { I D W D , T I D W D } in C S ’s secure database and then stores the secret credentials { I D W D , T I D W D , h ( · ) } in the memory of W D j .

6.2. Registration Phase

This phase consists of two parts: U i and W D j registration phases.

6.2.1. User Registration Phase

In this phase, U i registers within R C and then obtains the secret credentials from R C .
URP-1: 
U i chooses unique I D U and P W U in M D i . After that, M D i selects a random number a i and generates a set of ( C U x , R U x ) based on the PUF to ensure the unique physical properties of the device. Then, M D i computes H I D U = h ( I D U | | a i ) and H P W i = h ( P W U | | a i | | R U x ) and then transmits { H I D U , H P W i , ( C U x , R U x ) } to R C over a secure channel.
URP-2: 
R C generates a temporary identity T I D U and computes X i = h ( T I D U | | M K | | R U x ) , X U W = h ( I D R C | | M K ) , A i = ( X i | | X U W ) h ( H I D U h ( H P W i | | R U x ) ) , B i = h ( H P W i | | T I D U | | X i ) , C i = X i h ( I D C S | | T I D U | | M K ) , Finally, R C stores { T I D U , ( C U x , R U x ) , C i } in C S ’s database and then sends { A i , B i , T I D U } to M D i over a secure channel.
URP-3: 
Finally, M D i computes D i = a i h ( I D U | | P W U | | R U x ) and stores { A i , B i , D i , T I D U } in its memory.

6.2.2. Wearable Device Registration Phase

In this phase, W D j registers within R C and then obtains the secret credentials from R C .
WDRP 1: 
W D j generates a random number b j and a set ( C W D x , R W D x ) under the PUF to ensure the unique physical properties of the device. After that, W D j calculates Q j = b j h ( I D W D | | R W D x ) and W j = h ( I D W D | | b j | | R W D x ) . After that, W D j sends { T I D W D , Q j , W j , ( C W D x , R W D x ) } to R C .
WDRP 2: 
R C retrieves the corresponding I D W D stored in the database using T I D W D . After that, R C computes b j * = Q j h ( I D W D | | R W D x ) , and W j * = h ( I D W D * | | b j * | | R W D x ) , and verifies W j * = ? W j . If it is invalid, C S terminates W D j ’s registration request; otherwise, R C computes P I D W D = h ( T I D W D | | M K ) , Z j = h ( T I D W D | | M K | | R W D x ) , X U W = h ( I D R C | | M K ) , E j = ( X U W | | Z j | | P I D W D ) h ( I D W D | | T I D W D | | R W D x | | b j ) , and Y j = Z j h ( I D C S | | T I D W D | | M K ) . After that, R C stores { Y j , ( C W D x , R W D x ) } in C S ’s secure database and then transmits { E j } to W D j .
WDRP 3: 
Finally, W D j computes O j = b j h ( R W D x T I D W D I D W D ) and then stores { E j , O j } in memory.

6.3. Login and Authentication Phase

The registered U i and W D j should establish a common session key with the help of C S to use reliable medical services. This phase is illustrated in Figure 4.
LAP-1: 
U i first inputs a unique identity I D U and password P W i into M D i . After that, M D i calculates a i = D i h ( I D U | | P W i | | R U x ) , H I D U = h ( I D U | | a i ) , H P W i = h ( P W i | | a i | | R U x ) , ( X i | | X U W ) = A i h ( H I D U h ( H P W i | | R U x ) ) , and B i * = h ( H P W i | | T I D U | | X i ) and then checks B i * = ? B i . If it matches, M D i generates a random nonce R 1 and a timestamp T 1 . Then, M D i computes M 1 = R 1 h ( X U W | | T 1 ) to make the masked random nonce and transmits M s g 1 = { M 1 , T 1 } to W D j via an insecure channel.
LAP-2: 
W D j checks the freshness of | T 2 T 1 |     Δ T i , where T 2 is the current timestamp and Δ T 1 is the maximum transmission delay for the message to be transmitted between M D i and W D j . If it matches, W D j calculates b j = O j h ( R W D x T I D W D I D W D ) , ( X U W | | Z j | | P I D W D ) = E j h ( I D W D | | T I D W D | | R W D x | | b j ) , and R 1 = M 1 h ( X U W | | T 1 ) . Then, W D j selects R 2 and T 2 . After that, W D j chooses a pair of ( C W D 1 , R W D 1 ) from the preloaded CRPs ( C W D x , R W D x ) to ensure the unique physical properties of the device and computes M 2 = R 2 h ( P I D W D | | T I D W D | | R W D 1 ) to make the masked random nonce, and M 3 = h ( R 1 | | R 2 | | R W D 1 | | T 2 ) to verify the authorized entity, and then transmits M s g 2 = { M 2 , M 3 , T I D W D , C W D 1 , T 2 } to M D i .
LAP-3: 
After receiving the message, M D i verifies the freshness of | T 3 T 2 |     Δ T i . If it matches, M D i generates R 3 and a timestamp T 3 and chooses a pair of ( C U 1 , R U 1 ) from the preloaded CRPs ( C U x , R U x ) to ensure the unique physical properties of the device. After that, M D i decrypts M 4 = E n c ( X i | | R U 1 ) ( R 1 | | R 3 ) to obtain the random nonce and calculates M 5 = h ( T I D U | | T I D W D | | R 3 | | R U 1 | | T 3 ) to verify the authorized entity, and then transmits M s g 3 = { M 2 , M 3 , M 4 , M 5 , T I D U , T I D W D , C W D 1 , C U 1 , T 2 , T 3 } to C S through a public channel.
LAP-4: 
After receiving M s g 3 from M D i , C S checks the freshness of | T 4 T 3 |     Δ T i . If it matches, C S finds R U 1 on the basis of C U 1 . After that, C S extracts C i corresponding to T I D U in its database. C S decrypts ( R 1 | | R 3 ) = D e c ( X i | | R U 1 ) ( M 4 ) , and computes X i = C i h ( I D C S | | T I D U | | M K ) , and M 5 * = h ( T I D U | | T I D W D | | R 3 | | R U 1 | | T 3 ) , and verifies M 5 * = ? M 5 . If it matches, C S aborts the current session; otherwise, C S extracts Y j to the corresponding T I D W D in its database. Then, C S finds R W D 1 on the basis of C W D 1 and computes Z j = Y j h ( I D C S | | T I D W D | | M K ) , P I D W D = h ( T I D W D | | M K ) , R 2 = M 2 h ( P I D W D | | T I D W D | | R W D 1 ) , and M 3 * = h ( R 1 | | R 2 | | R W D 1 | | T 2 ) , and verifies M 3 * = ? M 3 . If it matches, C S selects the new temporary identities, T I D i n e w and T I D j n e w for U i and W D j , and updates T I D i o l d to T I D i n e w and T I D j o l d to T I D j n e w in its database. C S generates R 4 and T 4 and computes S K C S U = h ( T I D U | | X i | | R 3 | | R 4 | | T 4 ) , S K W D U = h ( T I D U | | P I D W D | | R 2 | | R 4 | | T 4 ) , T I D j * = T I D j n e w h ( T I D W D | | S K W D U | | Z j | R 4 ) , M 6 = E n c ( R 3 | | R U 1 | | X i ) ( R 4 | | T I D i n e w | | S K W D U | | T I D j * ) to transmit the secret parameters securely, and M 7 = h ( T I D U | | S K C S U | | S K W D U | | R U 1 | | R 4 | | T 4 ) to verify the authorized entity. Finally, C S sends M s g 4 = { M 6 , M 7 , T 4 } to M D i .
LAP-5: 
M D i verifies the freshness of | T 4 T 3 |     Δ T i . If it matches, M D i decrypts ( R 4 | | T I D i n e w | | S K W D U | | T I D j * ) = D e c ( R 3 | | R U 1 | | X i ) ( M 6 ) and computes S K C S U * = h ( T I D U | | X i | | R 3 | | R 4 | | T 4 ) , and M 7 * = h ( T I D U | | S K C S U * | | S K W D U | | R U 1 | | R 4 | | T 4 ) , and verifies M 7 * = ? M 7 . If it is not equal, M D i terminates the current session; otherwise, M D i updates a new temporary identity T I D i o l d to T I D i n e w and stores the session keys S K C S U * and S K W D U * . After that, M D i generates a timestamp T 5 and computes M 8 = E n c ( R 1 | | X U W ) ( R 3 | | R 4 ) to transmit the secret parameters securely, and M 9 = h ( T I D W D | | R 3 | | R 4 | | S K W D U | | T 5 ) to verify the authorized entity, and then transmits M s g 5 = { M 8 , M 9 , T I D j * , T 4 , T 5 } to W D j over a public channel.
LAP-6: 
W D j checks the freshness of | T 5 T 4 |     Δ T i . If it matches, W D j computes ( R 3 | | R 4 ) = D e c ( R 1 | | X U W ) ( M 8 ) , S K W D U * = h ( T I D U | | P I D W D | | R 2 | | R 4 | | T 4 ) , and M 9 * = h ( T I D W D | | R 3 | | R 4 | | S K W D U * | | T 5 ) , and verifies M 9 * = ? M 9 . If it matches, W D j authenticates U i , successfully and then calculates T I D j n e w = T I D j * h ( T I D W D | | S K W D U | | Z j | | R 4 ) . Finally, W D j updates a new temporary identity T I D j o l d to T I D j n e w and stores a session key S K W D U * .

6.4. Group–Proof Generation and Verification Phases

After the authentication process is executed successfully, U i generates a group proof for multiple W D j by M D i , indicating that W D j belongs to the same U i and then sends the group proof to C S for verification. This phase is illustrated in Figure 5.
GPGV 1: 
M D i for authorized U i selects R N 1 and T S 1 . After that, M D i computes G 1 = R N 1 h ( S K W D U | | X U W | | T S 1 ) and then sends G M 1 = { G 1 , T S 1 } to W D j over a public channel.
GPGV 2: 
W D j verifies the freshness of | T S 2 T S 1 |     Δ T S i . If it matches, W D j calculates R N 1 = G 1 h ( S K W D U | | X U W | | T S 1 ) and generates a random nonce R N 2 and a timestamp T S 2 . After that, W D j computes s j = h ( S K W D U | | R N 1 | | R N 2 ) , G 2 = R N 2 h ( R N 1 | | S K W D U | | X U W ) , and P j = h ( P I D W D | | T I D W D | | s j ) , and then transmits G M 2 = { G 2 , P j , s j , T I D W D , T S 2 } to M D i .
GPGV 3: 
M D i checks the freshness of | T S 3 T S 2 |     Δ T S i . If it matches, M D i computes R N 2 = G 2 h ( R N 1 | | S K W D U | | X U W ) and s j * = h ( S K W D U | | R N 1 | | R N 2 ) , and checks whether s j * = ? s j . If it matches, M D i generates the group proof G P i = h ( T I D U | | X i | | S K C S U | | P 1 P 2 P j ) for all wearable devices. Finally, W D j encrypts G 3 = E n c S K C S U ( T I D U , T I D W D , R N 1 , R N 2 , G P i ) using a session key S K C S U and then transmits G M 3 = { G 3 } to C S over an open channel.
GPGV 4: 
C S decrypts ( T I D U , T I D W D , R N 1 , R N 2 , G P i ) = D e c S K C S U ( G 3 ) using a session key S K C S U . C S extracts C i corresponding to T I D U in this database, computes X i = C i h ( I D C S | | T I D U | | M K ) , and then extracts I D W D and S K W D U , corresponding to T I D W D in its database. After that, C S computes P I D W D = h ( I D W D | | M K ) , s j * = h ( S K W D U | | R N 1 | | R N 2 ) , P j * = h ( P I D W D | | T I D W D | | s j ) , and G P i * = h ( T I D U | | X i | | S K C S U | | P 1 P 2 P j ) and then checks whether G P i * = ? G P i . If it matches, C S successfully verifies that the multiple instances of W D j belong to the same U i through the group proof.

6.5. Password Update Phase

If U i wishes to obtain a new P W i , U i can freely update their old P W i without interacting with R C .
PUP-1: 
U i inputs I D U and an old password P W i o l d in M D i .
PUP-2: 
M D i chooses a set of ( C U x , R U x ) , and computes a i = D i h ( I D U | | P W i | | R U x ) , H I D U = h ( I D U | | a i ) , H P W i = h ( P W i | | a i | | R U x ) , ( X i | | X U W ) = A i h ( H I D U h ( H P W i | | R U x ) , and B i * = h ( H I D U | | T I D U | | X i ) , and verifies whether B i * = ? B i . If the condition is met, U i is prompted to choose a new password.
PUP-3: 
U i inputs a new P W i n e w and computes H P W i n e w = h ( P W i n e w | | a i | | R U x ) , A i n e w = ( X i | | X U W ) h ( H I D U h ( H P W i n e w | | R U x ) ) , B i n e w = h ( H P W i n e w | | T I D U | | X i ) , D i n e w = a i h ( I D U | | P W i n e w | | R U x ) . Finally, M D i replaces { A i , B i , D i } with { A i n e w , B i n e w , D i n e w } . As a result, M D i contains { A i n e w , B i , D i n e w , T I D U } .

7. Security Analysis

The following introduces the informal/formal security analyses.

7.1. Informal Security Analysis

We demonstrate that the AGPS-PUF can prevent“lethal security attacks” and allow “anonymity, untraceability, and mutual authentication”.

7.1.1. Impersonation Attack

This attack means that A attempts to impersonate the legitimate user by eavesdropping on the exchanged data over an open channel. In this case, A should generate the authentication messages { M s g 1 , M s g 2 , M s g 3 } , and { M s g 4 , M s g 5 } . However, it is difficult to generate the sensitive messages since A cannot obtain the “random nonces { R 1 , R 3 } ” and “secret credential { X i , X U W } ”. Consequently, the AGPS-PUF is resistant to impersonation attacks because A cannot successfully generate the sensitive messages of the legitimate user.

7.1.2. MITM Attack

According to Section 3.1, A can inject, modify, eavesdrop, intercept, delete, and block the exchanged messages, { M s g 1 , M s g 2 , M s g 3 , M s g 4 , M s g 5 } , in the bidirectional communication between U i , W D j , and C S , and then attempt to obtain sensitive information from legitimate entities. However, A cannot generate sensitive messages since all messages are masked with the PUF responses, { R U 1 , R W D 1 } , and fresh random nonces { R 1 , R 2 , R 3 } , by using “XOR” and “hash” functions. Hence, the AGPS-PUF is secure against MITM attacks since A cannot obtain sensitive information from legitimate entities.

7.1.3. Session Key Disclosure Attack

Based on the information presented in Section 3.1, A can steal the M D and then extract the secret information { A i , B i , D i , T I D U } stored in the memory. In the AGPS-PUF, A should obtain the real identities { I D U , I D W D , I D C S } and random nonces { R 2 , R 3 , R 4 } to calculate the session keys, S K C S U = h ( T I D U | | X i | | R 3 | | R 4 | | T 4 ) and S K W D U = h ( T I D U | | P I D W D | | R 2 | | R 4 | | T 4 ) . However, it is impossible for A to obtain the common session keys, S K C S U and S K W D U , since the random nonces and real identities are preserved with secret parameters { X i , X U W , Z j } , and the PUF parameters { R U 1 , R W D 1 } , using cryptographic primitives. Hence, the AGPS-PUF resists session key disclosure attacks.

7.1.4. Replay Attack

A eavesdrops on the transmitted messages { M s g 1 , M s g 2 , M s g 3 , M s g 4 , M s g 5 } during the AKA phase and then attempts to authenticate with other parties by transmitting the intercepted data in the previous session. A solution to prevent replay attacks, such as the existing schemes [37,38], is to add random nonces and timestamps to the information exchanged so that the data are unique for each authentication phase. Thus, the AGPS-PUF verifies the freshness of T i . Moreover, the data are masked with { R 1 , R 2 , R 3 , R 4 } . Therefore, even if A selects and sends valid authentication messages to legitimate entities, the AGPS-PUF is secure against replay attacks since the current timestamp freshness is incorrect.

7.1.5. Physical Wearable Device Capture Attack

Assume that W D j s are physically captured by A and then extract { E j , O j } in W D j ’s memory, where E j = ( X U W | | Z j | | P I D W D ) h ( I D W D | | T I D W D | | R W D x | | b j ) and O j = b j h ( R W D x T I D W D I D W D ) . However, A does not successfully compute S K W D U * between U i and W D j without the knowledge of { R 2 , R 4 } and the secret credentials { X U W } . In addition, the PUF pairs { ( C W D 1 , R W D 1 ) } are distinct, independent, and secure for all batched W D j . Hence, the AGPS-PUF is resilient against physical wearable device capture attacks since the PUF output depends on the inherent physical fluctuations of the IC chip.

7.1.6. Stolen Verifier Attack

In this attack, A extracts and learns the secret parameters related to U i and W D j , which are stored in the database of C S , and it then attempts to masquerade as a legitimate entity. However, even if A obtains the stored parameters { T I D U , ( C U x , R U x ) , C i } for U i and { Y j , ( C W D x , R W D x ) } for W D j , A cannot calculate the common session keys { S K W D U , S K C S U } , and impersonate a legitimate entity. Unfortunately, A does not obtain the secret credentials { C i , Y j } that are masked with R C ’s master secret key M K by performing the cryptographic primitives. Furthermore, PUF pairs ( C U x , R U x ) , and ( C W D x , R W D x ) for U i and W D j are computationally infeasible for A to derive the fresh PUF because the PUF output depends on the inherent physical fluctuations of the IC. Hence, the AGPS-PUF is resistant to stolen verifier attacks.

7.1.7. Offline Password-Guessing Attack

Referring to the information presented in Section 3.1, we assume that A can intercept the transmitted information and then extract the secret credentials stored in the M D . Then, A attempts to use these attacks to guess U i ’s real P W i . However, P W i is composed as M P W i = h ( P W i | | a i | | R U x ) . Therefore, it is impossible for A to correctly guess P W i without knowledge of the random number a i and the PUF response value R U x . As a result, the offline password-guessing attack is not feasible in the AGPS-PUF.

7.1.8. Desynchronization Attack

In the AGPS-PUF, the temporary identities, T I D U and T I D W D , are assigned to U i and W D j during the AKA phase and then tables are maintained from C S . Since both the old temporary identities, i.e., T I D i o l d and T I D j o l d , are stored, if the last acknowledgment messages are blocked or lost due to time delay, there will always be consistent temporary identities between U i , W D j , and C S . Thus, the AGPS-PUF is resistant to desynchronization attacks.

7.1.9. Privileged Insider Attack

In this attack, A is a privileged insider of the proposed system. Hence, we assume that A is able to obtain the request message { H P W i , H P W i , ( C U x , R U x ) } from the remote user U i . However, the secret credentials, { X i , Z j , X U W } of M i , and W D j , are computationally infeasible for A without knowledge of the master private key M K and identity I D C S . Thus, the AGPS-PUF can prevent privileged insider attacks because A cannot correctly generate the sensitive information of U i and W D j .

7.1.10. Mutual Authentication

In the AGPS-PUF, all participants successfully perform secure mutual authentication. After obtaining the authentication request messages, { M 3 , M 5 } , C S j check whether M 5 * = ? h ( T I D U | | T I D W D | | R 3 | | R U 1 | | T 3 ) to verify the authenticity and integrity of the received message. If it matches, C S is authenticated with U i . C S then verifies whether M 3 * = ? h ( R 1 | | R 2 | | R W D 1 | | T 2 ) to verify the authenticity and integrity of the received message. If it matches, C S is authenticated with W D j . Upon receiving the authentication message, { M 7 } , U i checks M 7 * = ? h ( T I D U | | S K C S U * | | S K W D U | | R U 1 | | R 4 | | T 4 ) to verify the authenticity and integrity of the received message. If it matches, U i authenticates C S . After receiving the authentication confirmation message, { M 9 } , W D j verifies M 9 * = ? h ( T I D W D | | R 3 | | R 4 | | S K W D U * | | T 5 ) to verify the authenticity and integrity of the received message. If it is valid, W D j authenticates U i . Thus, the AGPS-PUF successfully allows secure mutual authentication and integrity between U i , W D j , and C S .

7.1.11. Anonymity and Untraceability

Assume that A intercepts the transmitted messages during the AKA phase. However, it is impossible for A to obtain U i ’s identity I D U and pseudo-identity H I D U and W D j ’s identity I D W D and pseudo-identity P I D W D without knowledge, such as random nonces, the PUF secret value, and secret credentials. Hence, the AGPS-PUF provides anonymity for U i and W D j . Furthermore, A cannot track the legitimate U i since all messages are unique and dynamic using timestamps, random nonces, and temporary identities in each session. Moreover, the temporary identities, T I D U and T I D W D of U i and W D j , are updated as T I D i n e w and T I D j n e w in each session. Hence, 3P-AGPS guarantees untraceability for U i and W D j .

7.1.12. Perfect Forward Secrecy (PFS)

The PFS security indicates that S K will not be exposed to A even if a long-term secret key is compromised. In the AGPS-PUF, if C S ’s long-term secret key M K is compromised, A cannot compute the session keys, S K C S U and S K W D U , because A does not have knowledge of the secret credentials { X U W , X i } , the PUF secret value { R U x , R W D x } , and real identities { I D U , I D W D } . Consequently, the AGPS-PUF is resistant to PFS.

7.2. Formal Analysis through ROR Oracle Model

We utilize a formal proof, denoted as the ROR Oracle model, to prove the session key (SK) security. We define the queries required for the ROR Oracle model [10].
In the AGPS-PUF, there are three participants: the mobile user Γ U , the wearable device Γ W D , and the cloud server Γ C S . Let Γ U t 1 be the instance t 1 of a participant U, Γ W D t 2 be the instance t 2 of a participant W D , and Γ C S t 3 be the instance t 3 of a participant C S . In Table 2, we present the descriptions for each query, including “ C o r r u p t M D ( · ) , E x e c u t e ( · ) , T e s t ( · ) , S e n d ( · ) , and R e v e a l ( · ) for ROR Oracle model”.
Theorem 1. 
Let A d v A A G P S P U F be the advantage that A d v A A G P S P U F is able to break the SK security of the AGPS-PUF. Hence, we derive the following A d v A A G P S P U F     q h 2 | H a s h | + q P 2 | P U F | + 2 { C · q s e n d s , q s 2 l 1 , q s 2 l 2 }
Proof. 
The P U F ( · ) range space, h ( · ) query number, S e n d ( · ) query number, and H a s h range space indicate q P , q h , q s e n d , and H a s h . Furthermore, the Zipf credentials [39] indicate C, l m , s, and l n .
Proof: We present the five games G M i ( i [ 0 , 4 ] ). We indicate that A d v A , G M i A G P S P U F is the probability of A to win G M i . All games are described in detail as follows.
Game: G M 0 : A executes a real attack in AGPS-PUF. Hence, A picks a random bit c at the beginning of G M 0 . We obtain the following Equation (1) as
A d v A A G P S P U F = | 2 · A d v A , G M 0 A G P S P U F 1 |
Game G M 1 : G M 1 indicates that A executes an “eavesdropping attack, in which the transmitted messages are intercepted between U, W D , and C S performing E x e c u t e ( · ) query”. In G M 1 , A carries out “ T e s t ( · ) / R e v e a l ( · ) queries” to compromise SK. The results of the T e s t ( · ) / R e v e a l ( · ) queries determine whether A obtains S K C S U and S K W D U . To compromise SK, A requires the random nonces { R 2 , R 3 , R 4 } , and PUF values. Therefore, A is not able to increase the winning probability of G M 1 . We can derive Equation (2) as
A d v A , G M 1 A G P S P U F = A d v A , G M 0 A G P S P U F
Game G M 2 : This game indicates that A executes a “real attack” based on “ S e n d ( · ) and H a s h ” queries. A transmits the modified messages to participants and acts as a legal user so that it is able to guess the outcomes of the “ S e n d ( · ) query”. Moreover, A aims to find collisions for the hash oracle and attempts to copy messages that are expected to be authenticated by the entities. Because the random nonce, timestamp, temporary secret, and identity are configured using hash functions in each message, running “ S e n d ( · ) and H a s h queries” cannot cause a conflict. We can deduce that the probability of aborting the game is bounded by q h 2 2 | H a s h | . It is worth noting that this may happen when processing S e n d ( ) query; the game is aborted with a probability determined by the birthday paradox [40]. The probability of finding collisions in the hash oracle H a s h , as per the square of the birthday paradox, is the probability, and the two games, G M 1 and G M 2 , are indistinguishable, unless one of the above rules causes the game to abort. Thus, we can have Equation (3) as
| A d v A , G M 2 A G P S P U F A d v A , G M 1 A G P S P U F |     q h 2 2 | H a s h |
Game G M 3 : This game is executed in the analogy as presented in G M 2 . By using the “analogous argument” described in G M 2 , we can derive Equation (4) as
| A d v A , G M 3 A G P S P U F A d v A , G M 2 A G P S P U F |     q P 2 2 | P U F |
Game G M 4 : In this game, A attempts to extract { A i , B i , D i , T I D U } in the M D ’s memory by using the “differential power analysis” with C o u r r u p t W D ( · ) and C o u r r u p t M D ( · ) queries. Note that A i = ( X i | | X U W ) h ( H I D U h ( H P W i | | R U x ) ) , B i = h ( H P W i | | T I D U | | X i ) , D i = a i h ( I D U | | P W i | | R U x ) , and T I D U . Moreover, A can obtain the secret credentials { E j , O j } in the W D ’s memory using physical capture attacks. Note that, E j = ( X U W | | Z j | | P I D W D ) h ( I D W D | | T I D W D | | R W D x | | b j ) and O j = b j h ( R W D x T I D W D I D W D ) . However, G M 3 is computationally infeasible for A to compromise the P W i of the legitimate U i over the S e n d ( · ) query without a i and R U x . Moreover, A should guess the parameters from the extracted data because A does not have knowledge of the “password”, “biometric”, and “PUF secret”. Moreover, it is computationally impossible to guess the “biometric”, “password”, and “PUF secret”. In conclusion, G M 3 and G M 4 are “indistinguishable”. We obtain Equation (5) as follows:
| A d v A , G M 4 A G P S P U F A d v A , G M 3 A G P S P U F |     { C · q s e n d s , q s 2 l b }
Based on the execution of G M 0 G M 4 , A attempts to guess the “bit c to win the games by performing T e s t ( · ) query”. We can obtain Equation (6) as follows:
A d v A , G M 4 A G P S P U F = 1 2
Based on the “Formulas (1), (2), and (6)”, we obtain Equation (7) as follows:
1 2 A d v A A G P S P U F = | A d v A , G M 0 A G P S P U F 1 2 | = | A d v A , G M 1 A G P S P U F 1 2 | = | A d v A , G M 1 A G P S P U F A d v A , G M 4 A G P S P U F |
Based on the “triangular inequality with the Formulas (3), (4), (5) and (7)”, we obtain Equation (8) as follows:
1 2 A d v A A G P S P U F = | A d v A , G M 1 A G P S P U F A d v A , G M 4 A G P S P U F |     | A d v A , G M 1 A G P S P U F A d v A , G M 3 A G P S P U F | + | A d v A , G M 3 A G P S P U F A d v A , G M 4 A G P S P U F |     | A d v A , G M 1 A G P S P U F A d v A , G M 2 A G P S P U F | + | A d v A , G M 2 A G P S P U F A d v A , G M 3 A G P S P U F | + | A d v A , G M 3 A G P S P U F A d v A , G M 4 A G P S P U F |     q h 2 2 | H a s h | + q P 2 2 | P U F | + { C · q s e n d s , q s 2 l 1 , q s 2 l 2 } .
Finally, by multiplying both sides of Equation (8) by a factor of 2, we can obtain the following: A d v A A G P S P U F     q h 2 | H a s h | + q P 2 | P U F | + 2 { C · q s e n d s , q s 2 l 1 , q s 2 l 2 }

7.3. Formal Analysis through AVISPA Simulation

This simulation proves the formal security robustness of the cryptographic protocol against MITM and replay attacks. We implement the security simulation and demonstrate the security result. We first need to implement the AGPS-PUF as a programming language HLPSL [41]. After that, this simulation starts analyzing the intermediate format (IF) over the four backends: “On-the-Fly Model Checker (OFMC)”, “Constraint Logic-based Attack Searcher (CL-AtSe)”, “SAT-based Model-Checker (SATMC)”, and “Tree Automata based on Automatic Approximations for the Analysis of Security Protocols (TA4SP)”. Since TA4SP and SATMC backends do not implement XOR operations, the simulation results of the AGPS-PUF under these backends become inconclusive; thus, the results based on TA4SP and SATMC backends have been ignored.
We simulated the AGPS-PUF using the “Security Protocol ANimator (SPAN) [10]” for AVISPA. It is worth noting that AVISPA implements the DY model and that an intruder participates in the protocol execution with a concrete session. The specification roles of the W D , U, and C S are implemented using HLPSL, such as sessions, security goals, and environments. In Figure 6, the HLPSL specification of the protocol is converted into the IF by using the HLPSL2IF translator. After that, the IF is converted to the output format (OF) by feeding it to one of the four backends. The OF contains the following:
  • SUMMARY: It refers to whether the tested security protocol is safe or unsafe, or whether the analysis is inconclusive.
  • DETAILS: It explains why the analysis is inconclusive, why the tested security protocol is safe, or under what conditions the test applications or security protocols may be exploitable to the attack.
  • PROTOCOL: It refers to the HLPSL specification of the target security protocol in the IF.
  • GOAL: It demonstrates the goal of the analysis, which is performed by AVISPA using HLPSL specifications.
  • BACKEND: It is the name of the backend that is utilized for the analysis of SATMC, CL-AtSe, OFMC, or TA4SP.
  • STATISTICS: It includes the trace of any potential vulnerability in the target security protocol, along with several useful statistics and related comments.
In the simulation based on AVISPA backends, two verifications were performed: (1) checking for replay attacks and (2) DY model-based MITM attacks. When checking for replay attacks on the AGPS-PUF, both OFMC and CL-AtSe check if the legitimate participants can execute the specified protocols by performing a search for a passive intruder. Moreover, both OFMC and CL-AtSe backends are used to check whether any MITM attacks are possible by an intruder in the DY model. The SPAN simulation results demonstrate the security attacks and intruder simulations over a web-based GUI (graphical user interface). Moreover, the implementation results obtained using the CL-AtSe and OFMC backends are presented in Figure 7. According to the simulation results under the OFMC and CL-AtSe in Figure 7, the SAFE output shows that the AGPS-PUF is safe based on the specified security goals. Consequently, we demonstrate that the AGPS-PUF is protected from replay and MITM attacks.

8. Testbed Experiments Using MIRACL

We present the testbed experiments to estimate the execution times required for essential cryptographic operations utilized in the AGPS-PUF and existing related schemes. We used the well-known “MIRACL crypto SDK [42]”, which is a C/C++-based programming software library.
We used the two platforms to estimate the execution times required for cryptographic operations. T s e d , T e c p m , T m e , and T h evaluate the execution times required for “a AES encryption and decryption”, “an ECC scalar point multiplication”, “a modular exponentiation”, and “a SHA-256 hash function”.
  • Platform 1: This platform is used to calculate the execution times for the M D and W D settings on MIRACL, as follows: “Model: Raspberry PI 4B, with “OS: Ubuntu 20.04.2 LTS”, “Processor: 1.5 GHz Quad-core”, “CPU: 64-bit”. Each operation was run 1000 times on the same setup and we observed the average, maximum, and minimum times. The results of this platform are tabulated in Table 3.
  • Platform 2: This platform was used to calculate the execution time for the C S server setting as follows: “OS: Ubuntu 18.04.4 LTS, Processor: Intel Core i5-10400 @2.9 GHz, Six-core, CPU: 64-bits”. All primitives were run 1000 times on the same setup and we observed the average, maximum, and minimum times. The results of this platform are tabulated in Table 4.

9. Performance Comparison

This section presents the “performance comparison analysis” of the AGPS-PUF and existing related schemes for wearable computing [8,21,23,25,26,28].

9.1. Computation Costs

We discuss the comparative computation costs of the AGPS-PUF with the existing related schemes [8,21,23,25,26,28] during the AKA phase. We used the“ testbed experimental results for the Raspberry PI 4 and server setting in Section 8”. With the information presented in Table 3, we utilized the analysis results of the average time for each operation under U i and W D j .
We calculated the execution times for the M D and W D settings on MIRACL as follows: “Model: Raspberry PI 4B, with “OS: Ubuntu 20.04.2 LTS”, “Processor: 1.5 GHz Quad-core”, “CPU: 64-bit”. As seen in Table 3, we present “ T e c p m 2.848 ms, T h 0.309 ms, T m e 0.228 ms and T s e d 0.012 ms”. Moreover, we calculated the execution times for the C S server setting as follows: “OS: Ubuntu 18.04.4 LTS, Processor: Intel Core i5-10400 @2.9 GHz, Six-core, CPU: 64-bits”. As seen in Table 4, we utilized the analysis results for the average time of each operation under C S . In scenario 2, we present “ T e c p m 0.522 ms, T h 0.055 ms, T m e 0.040 ms and T s e d 0.001 ms”. We prove the performance results for the comparative computational costs in Table 5 and Figure 8. Consequently, the AGPS-PUF offers the necessary security requirements and features while maintaining similar costs compared to previous schemes [8,25,26,28]. Hence, the AGPS-PUF is suitable for practical wearable computing environments.

9.2. Communication Costs

We discuss the comparative communication costs of the AGPS-PUF and existing related schemes [8,21,23,25,26,28]. Referring to [8], we assume that the bits for the timestamp, the PUF challenge, identity, random nonce, symmetric encryption/decryption, and hash digest are 32, 64, 128, 128, 128, and 256 bits, respectively. During the AKA phase of the AGPS-PUF, the exchanged messages { M 1 , T 1 } , { M 2 , M 3 , T I D W D , C W D 1 , T 2 } , { M 2 , M 3 , M 4 , M 5 , T I D U , T I D W D , C W D 1 , C U 1 , T 2 , T 3 } , { M 6 , M 7 , T 4 } , and { M 8 , M 9 , T I D j * , T 4 , T 5 } require “(256 + 32 = 288 bits), (256 + 256 + 128 + 64 + 32 = 736 bits), (256 + 256 + 128 + 256 + 128 + 128 + 64 + 64 + 32 + 32 = 1344), (128 + 256 + 32 = 416 bits), and (256 + 256 + 256 + 32 + 32 = 832 bits)”. Consequently, the AGPS-PUF has similar costs compared with previous schemes, as presented in Table 6 and Figure 9, since transmitting fewer bits minimizes the network latency and number of collisions.

9.3. Security Functionality Comparison

This section compares the “security functionalities” of the AGPS-PUF with the existing related schemes for wearable computing [8,21,23,25,26,28]. In Table 7, we show that some existing schemes for wearable computing are not fully protected and may be fragile to different potential security attacks. Thus, the security protocols must be designed in such a way that they must be robust against lethal security attacks. In contrast, the AGPS-PUF is resilient to lethal security attacks, and guarantees the necessary security requirements and functionalities, including “mutual authentication, PFS, anonymity, and untraceability”. Thus, the AGPS-PUF provides more security functionalities when compared to the existing related schemes for wearable computing [8,21,23,25,26,28].

10. Conclusions

We prove that Guo et al.’s scheme is not protected against session key disclosure, MITM, and impersonation attacks, and it does not offer security requirements and features such as mutual authentication and untraceability. Hence, we designed an efficient and robust authentication and group–proof scheme using the PUF for wearable computing to address the security issues of Guo et al.’s scheme. We demonstrate the session key security of the AGPS-PUF by performing formal security under the ROR Oracle model analysis and show that the AGPS-PUF is resistant to replay and MITM attacks by using the AVISPA simulation analysis. Furthermore, we present the testbed experiments of the AGPS-PUF using MIRACL crypto SDK based on Raspberry PI 4. We demonstrate the performance comparison of the AGPS-PUF and the existing related schemes for wearable computing with respect to computation costs, communication costs, and security features. Thus, the AGPS-PUF ensured a higher security level than the existing related scheme in wearable computing environments and provided similar computational and communication costs to the existing related schemes for wearable computing. Thus, the AGPS-PUF is suitable for practical wearable computing environments, as it offers more effective efficiency and superior security compared to existing related schemes for wearable computing.

Author Contributions

Conceptualization, S.Y.; methodology, S.Y.; validation, S.Y.; formal analysis, S.Y.; writing—original draft preparation, S.Y.; writing—review and editing, Y.P.; supervision, Y.P.; project administration, Y.P. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Institute of Information and Communications Technology Planning and Evaluation (IITP) grant funded by the Korean government (MSIT) (no. 2022-0-01019, Development of eSIM security platform technology for edge devices to expand the eSIM ecosystem).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Roggen, D.; Magnenat, S.; Waibel, M.; Troster, G. Wearable Computing. IEEE Robot. Autom. Mag. 2011, 18, 83–95. [Google Scholar] [CrossRef]
  2. Sun, H.; Zhang, Z.; Hu, R.Q.; Qian, Y. Wearable Communications in 5G: Challenges and Enabbling Technologies. IEEE Veh. Technol. Mag. 2018, 13, 100–109. [Google Scholar] [CrossRef]
  3. Abbas, G.; Tanveer, M.; Abbas, Z.H.; Waqas, M.; Baker, T. A Secure Remote User Authentication Scheme for 6LoWPAN-based Internet of Things. PLoS ONE 2021, 16, e0258279. [Google Scholar] [CrossRef] [PubMed]
  4. Majumder, S.; Mondal, T.; Deen, M.J. Wearable Sensors for Remote Health Monitoring. Sensors 2017, 17, 130. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  5. Seneviratne, S.; Hu, Y.; Nguyen, T.; Lan, G.; Khalifa, S.; Thilakarathna, K.; Hassan, M.; Seneviratne, A. A Survey of Wearable Devices and Challenges. IEEE Commun. Surv. Tutor. 2017, 19, 2573–2620. [Google Scholar] [CrossRef]
  6. Wang, S.; Bie, R.; Zhao, F.; Zhang, N.; Cheng, X.; Choi, H.A. Security in Wearable Communications. IEEE Netw. 2016, 30, 61–67. [Google Scholar] [CrossRef]
  7. Zhang, Y.; Deng, R.H.; Han, G.; Zheng, D. Secure Smart Health with Privacy-aware Aggregate Authentication and Access Control in Internet of Things. J. Netw. Comput. Appl. 2018, 123, 89–100. [Google Scholar] [CrossRef]
  8. Guo, Y.; Zhang, Z.; Guo, Y. Anonymous Authenticated Key Agreement and Group Proof Protocol for Wearable Computing. IEEE Trans. Mob. Comput. 2022, 21, 2718–2731. [Google Scholar] [CrossRef]
  9. AVISPA. Automated Validation of Internet Security Protocols and Applications. 2001. Available online: http://www.avispa-project.org/ (accessed on 16 March 2021).
  10. Abdalla, M.; Fouque, P.A.; Pointcheval, D. Password-based authentication key exchange in the three-party setting, in Public Key Cryptography. In Proceedings of the International Workshop on Public Key Cryptography, Les Diablerets, Switzerland, 23–26 January 2005; Springer: Berlin/Heidelberg, Garmany, 2005; pp. 65–84. [Google Scholar]
  11. Park, K.S.; Noh, S.K.; Lee, H.J.; Das, A.K.; Kim, M.H.; Park, Y.H.; Wazid, M. LAKS-NVT: Provably Secure and Lightweight Authentication and Key Agreement Scheme Without Verification Table in Medical Internet of Things. IEEE Access 2020, 8, 119387–119404. [Google Scholar] [CrossRef]
  12. Das, A.K.; Zeadally, S.; Wazid, M. Lightweight Authentication Protocols for Wearable Devices. Comput. Electr. Eng. 2017, 63, 196–208. [Google Scholar] [CrossRef]
  13. Vhaduri, S.; Poellabauer, C. Multi-Modal Biometric-Based Implicit Authentication of Wearable Device Users. IEEE Trans. Inf. Forensics Secur. 2019, 14, 3116–3125. [Google Scholar] [CrossRef]
  14. Li, M.; Yu, S.; Lou, W.; Ren, K. Group Device Pairing Based Secure Sensor Association and Key Management for Body Area Networks. In Proceedings of the IEEE INFOCOM, San Diego, CA, USA, 14–19 March 2010; pp. 2651–2659. [Google Scholar]
  15. Tan, C.C.; Wang, H.; Zhong, S.; Li, Q. IBE-Lite: A Lightweight Identity-Based Cryptography for Body Sensor Networks. IEEE Trans. Inf. Technol. Biomed. 2019, 13, 926–932. [Google Scholar] [CrossRef] [Green Version]
  16. Xiong, H.; Qin, Z. Revocable and Scalable Certificateless Remote Authentication Protocol with Anonymity for Wireless Body Area Networks. IEEE Trans. Inf. Forensics Secur. 2015, 10, 1442–1455. [Google Scholar] [CrossRef]
  17. Al-Riyami, S.S.; Paterson, K.G. Certificateless Public Key Cryptography. Lect. Notes Comput. Sci. 2003, 294, 452–473. [Google Scholar]
  18. Liu, W.; Liu, H.; Wan, Y.; Kong, H.; Ning, H. The Yoking-Proof-based Authentication Protocol for Cloud-assisted Wearable Devices. Pers. Ubiquitous Comput. 2016, 20, 469–479. [Google Scholar] [CrossRef]
  19. Das, A.K.; Wazid, M.; Kumar, N.; Khan, M.K.; Choo, K.K.R.; Park, Y.H. Design of Secure and Lightweight Authentication Protocol for Wearable Devices Environment. IEEE J. Biomed. Health Inform. 2018, 22, 1310–1322. [Google Scholar] [CrossRef]
  20. Liu, H.; Yao, X.; Yang, T.; Ning, H. Cooperative Privacy Preservation for Wearable Devices in Hybrid Computing-Based Smart Health. IEEE Internet Things J. 2019, 6, 1352–1362. [Google Scholar] [CrossRef]
  21. Li, X.; Niu, J.; Kumari, S.; Liao, J.; Liang, W.; Khan, M.K. A New Authentication Protocol for Healthcare Applications Using Wireless Medical Sensor Networks with User Anonymity. Secur. Commun. Netw. 2016, 9, 2643–2655. [Google Scholar] [CrossRef]
  22. Das, A.K.; Sutrala, A.K.; Odelu, V.; Goswami, A. A Secure Smartcard-Based Anonymous User Authentication Scheme for Healthcare Applications Using Wireless Medical Sensor Networks. Wirel. Pers. Commun. 2017, 94, 1899–1933. [Google Scholar] [CrossRef]
  23. Wu, F.; Xu, L.; Kumari, S.; Li, X. An Improved and Anonymous Two-factor Authentication Protocol for Health-care Applications with Wireless Medical Sensor Networks. Multimed. Syst. 2017, 23, 195–205. [Google Scholar] [CrossRef]
  24. Srinivas, J.; Mishra, D.; Mukhopadhyay, S. A Mutual Authentication Framework for Wireless Medical Sensor Networks. J. Med. Syst. 2017, 41, 80. [Google Scholar] [CrossRef] [PubMed]
  25. Amin, R.; Islam, S.K.H.; Biswas, G.P.; Khan, M.K.; Kumar, N. A Robust and Anonymous Patient Monitoring System Using Wireless Medical Sensor Networks. Future Gener. Comput. Syst. 2018, 80, 483–495. [Google Scholar] [CrossRef]
  26. Ali, R.; Pal, A.K.; Kumari, S.; Sangaiah, A.K.; Li, X.; Wu, F. An Enhanced Three Factor Based Authentication Protocol Using Wireless Medical Sensor Networks for Healthcare Monitoring. J. Ambient. Intell. Humaniz. Comput. 2018, 9, 1–22. [Google Scholar] [CrossRef]
  27. Gupta, A.; Tripathi, M.; Shaikh, T.J.; Sharma, A. A Lightweight Anonymous User Authentication and Key Establishment Scheme for Wearable Devices. Comput. Netw. 2019, 149, 29–42. [Google Scholar] [CrossRef]
  28. Hajian, R.; ZakeriKia, S.; Erfani, S.H.; Mirabi, M. SHAPARAK: Scalable Healthcare Authentication Protocol with Attack-resilience and Anonymous Key-agreement. Comput. Netw. 2020, 183, 107567. [Google Scholar] [CrossRef]
  29. Yu, S.J.; Park, K.S. SLAS-TMIS: Secure, Anonymous and Lightweight Privacy-Preserving Scheme for IoMT-Enabled TMIS Environments. IEEE Access 2022, 10, 60534–60549. [Google Scholar] [CrossRef]
  30. Dolev, D.; Yao, A.C. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
  31. Yu, S.J.; Park, K.S. ISG-SLAS: Secure and Lightweight Authentication and Key Agreement Scheme for Industrial Smart Grid Using Fuzzy Extractor. J. Syst. Archit. 2022, 131, 102698. [Google Scholar] [CrossRef]
  32. 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]
  33. Park, K.S.; Park, Y.H.; Park, Y.H.; 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]
  34. Yu, S.J.; Park, Y.H. A Robust Authentication Protocol for Wireless Medical Sensor Networks Using Blockchain and Physically Unclonable Functions. IEEE Internet Things J. 2022, 9, 20214–20228. [Google Scholar] [CrossRef]
  35. Gao, Y.; Sarawi, S.F.A.; Abbott, D. Physical Unclonable Functions. Nat. Electron. 2020, 3, 81–91. [Google Scholar] [CrossRef]
  36. Frikken, K.B.; Blanton, M.; Atallah, M.J. Robust Authentication Using Physically Unclonable Functions. In Proceedings of the International Conference on Information Security, Pisa, Italy, 7–9 September 2009; pp. 262–277. [Google Scholar]
  37. Badshah, A.; Waqas, M.; Abbas, G.; Muhammad, F.; Abbas, Z.H.; Vimal, S.; Bilal, M. LAKA-BSG: Lightweight Authenticated Key Exchange Scheme for Blockchain-Enabled Smart Grids. Sustain. Energy Technol. Assessments 2022, 52, 102248. [Google Scholar] [CrossRef]
  38. Tanveer, M.; Alasmary, H. LACP-SG: Lightweight Authentication Protocol for Smart Grids. Sensors 2023, 23, 2309. [Google Scholar] [CrossRef] [PubMed]
  39. 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]
  40. Boyko, V.; Mackenzie, P.; Patel, S. Provably Secure Password-Authenticated Key Exchange Using Diffie-Hellman. In Proceedings of the International Conference on the Theory and Application of Cryptographic Techniques, Bruges, Belgium, 14–18 May 2000; Springer: Berlin/Heidelberg, Germany, 2000; pp. 156–171. [Google Scholar]
  41. Oheimb, D.V. The High-Level Protocol Specification Lanuage HLPSL Developed in the EU Project AVISPA. In Proceedings of the APPSEM 2005 Workshop, Tallinn, Finland, 13 September 2005; pp. 1–17. [Google Scholar]
  42. MIRACL. Cryptographic SDK: Multiprecision Integer and Rational Arithmetic Cryptographic Library. 2019. Available online: https://github.com/miracl/MIRACL (accessed on 16 April 2021).
Figure 1. Key generator mechanism of the PUF.
Figure 1. Key generator mechanism of the PUF.
Sensors 23 05747 g001
Figure 2. System model for wearable computing.
Figure 2. System model for wearable computing.
Sensors 23 05747 g002
Figure 3. The overall flowchart during the AKA phase.
Figure 3. The overall flowchart during the AKA phase.
Sensors 23 05747 g003
Figure 4. Login and Authentication Phase of the AGPS-PUF.
Figure 4. Login and Authentication Phase of the AGPS-PUF.
Sensors 23 05747 g004
Figure 5. Group–proof generation and verification phase of the AGPS-PUF.
Figure 5. Group–proof generation and verification phase of the AGPS-PUF.
Sensors 23 05747 g005
Figure 6. AVISPA simulation results based on SPAN.
Figure 6. AVISPA simulation results based on SPAN.
Sensors 23 05747 g006
Figure 7. AVISPA results based on OFMC and CL-AtSe.
Figure 7. AVISPA results based on OFMC and CL-AtSe.
Sensors 23 05747 g007
Figure 8. Computational cost comparison of all entities.
Figure 8. Computational cost comparison of all entities.
Sensors 23 05747 g008
Figure 9. Communication cost comparison.
Figure 9. Communication cost comparison.
Sensors 23 05747 g009
Table 1. Notations.
Table 1. Notations.
SymbolMeaning
U i ith user
W D j jth wearable device
C S Cloud server
R C Registration center
I D U , I D W D , I D C S , I D R C Real identity of U i , W D j , C S , and R C
P W i Password of U i
C U x , R U x Challenge/response of U i
C W D x , R W D x Challenge/response of W D j
R i , R N i , n i ,Random nonce
T I D U , T I D W D ,Temporary identity of U i and W D j
Δ T i Maximum transmission delay
T i and T S i Timestamp
M K A master private key of C S
S K C S U A session key for U i and C S
S K W D U A session key for U i and W D j
E n c K ( · ) / D e c K ( · ) Encryption/decryption
h ( · ) Hash function
XOR function
| | Concatenation
Table 2. Query and purpose.
Table 2. Query and purpose.
QueryPurpose
S e n d ( Γ t , M s g ) Based on this query, A can transmit the message M s g to the Γ t , and obtain the response message accordingly.
C o r r u p t M D ( Γ U t 1 ) This query indicates as the mobile device stolen attacks, where A can extract the secret credentials stored in M D .
C o r r u p t W D ( Γ W D t 3 ) This query indicates as the physical capture attacks where A can obtain the secret parameters stored in W D .
E x e c u t e ( Γ U t 1 , Γ W D t 2 , Γ C S t 3 , )Based on E x e c u t e ( · ) , A performs the passive/active attacks by eavesdropping the exchanged messages between each entity over a insecure channel.
R e v e a l ( Γ t ) Based on this query, A reveals a SK generated between Γ U t 1 and Γ W D t 2 using R e v e a l ( · ) query.
T e s t ( Γ t ) An unbiased coin c is tossed prior to game start. If A gets c = 1 under the T e s t ( · ) , it indicates a SK between Γ U t 1 and Γ W D t 2 is fresh. If A gets the c = 0 , it indicates SK is not fresh; otherwise, A gets a null value (⊥).
Table 3. Execution times (in milliseconds) based on the MIRACL library, obtained using a Raspberry Pi 4.
Table 3. Execution times (in milliseconds) based on the MIRACL library, obtained using a Raspberry Pi 4.
OperationMin. Time (ms)Max. Time (ms)Average Time (ms)
T e c p m 2.7662.9202.848
T h 0.2740.6430.309
T m e 0.1780.4930.228
T s e d 0.0110.0210.012
Table 4. Execution times (in milliseconds) based on the MIRACL library for a server.
Table 4. Execution times (in milliseconds) based on the MIRACL library for a server.
OperationMin. Time (ms)Max. Time (ms)Average Time (ms)
T e c p m 0.4722.7370.522
T h 0.0240.1490.055
T m e 0.0220.0820.040
T s e d 0.0010.0020.001
Table 5. Comparison between computational costs.
Table 5. Comparison between computational costs.
SchemeUserGateway/ServerWearable DeviceTotal Computation Cost
Li et al. [21] 6 T h + 2 T s e d 7 T h + 6 T s e d 5 T h + 2 T s e d 18 T h + 10 T s e d
Wu et al. [23] 10 T h + 2 T s e d 6 T h + 5 T s e d 4 T h + T s e d 20 T h + 8 T s e d
Amin et al. [25] 12 T h 18 T h 6 T h 36 T h
Ali et al. [26] 12 T h + 2 T s e d 16 T h + 3 T s e d 7 T h + 5 s e d 35 T h + 10 T s e d
Hajian et al. [28] 13 T h 7 T h 9 T h 29 T h
Guo et al. [8] 21 T h 18 T h 7 T h 46 T h
AGPS-PUF 10 T h + 3 T s e d 10 T h + 2 T s e d 8 T h + T s e d 28 T h + 6 T s e d
Table 6. Comparison between communication costs.
Table 6. Comparison between communication costs.
SchemeCommunication Cost for WD j Total CostNumber of Messages
[21]2112 bits4352 bits4 messages
[23]2304 bits2816 bits3 messages
[25]1280 bits4096 bits5 messages
[26]1952 bits4128 bits4 messages
[28]1504 bits3552 bits5 messages
[8]1920 bits5088 bits5 messages
AGPS-PUF1568 bits3616 bits5 messages
Table 7. Comparative study on security features.
Table 7. Comparative study on security features.
Security Features[21][23][25][26][28][8]Our
S F 1 ooooxxo
S F 2 oxxoooo
S F 3 oxxoxxo
S F 4 xNANANAoxo
S F 5 NAxxNAxoo
S F 6 ooooooo
S F 7 ooxoxxo
S F 8 ooooooo
S F 9 xxxoooo
S F 10 ooooxxo
S F 11 xxxoooo
S F 12 ooooooo
S F 13 oxoooxo
S F 14 xooooxo
S F 15 NANANANANAoo
o: “protection of security features”; x: “non-protection of security features”; NA: “not applicable”; S F 1 : “MITM attack”; S F 2 : “offline password-guessing attack”; S F 3 : “impersonation attack”; S F 4 : “sensor physical capture attack”; S F 5 : “mobile device stolen attack”; S F 6 : “stolen verifier attack”; S F 7 : “session key disclosure attack”; S F 8 : “replay attack”; S F 9 : “privileged insider attack”; S F 10 : “mutual authentication”; S F 11 : “user anonymity”; S F 12 : “PFS”; S F 13 : “untraceability”; S F 14 : “formal (simulation) analysis”; S F 15 : “group proof”.
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

Yu, S.; Park, Y. Robust and Efficient Authentication and Group–Proof Scheme Using Physical Unclonable Functions for Wearable Computing. Sensors 2023, 23, 5747. https://doi.org/10.3390/s23125747

AMA Style

Yu S, Park Y. Robust and Efficient Authentication and Group–Proof Scheme Using Physical Unclonable Functions for Wearable Computing. Sensors. 2023; 23(12):5747. https://doi.org/10.3390/s23125747

Chicago/Turabian Style

Yu, Sungjin, and Youngho Park. 2023. "Robust and Efficient Authentication and Group–Proof Scheme Using Physical Unclonable Functions for Wearable Computing" Sensors 23, no. 12: 5747. https://doi.org/10.3390/s23125747

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