Next Article in Journal
Thermo-Optic Response and Optical Bistablility of Integrated High-Index Doped Silica Ring Resonators
Next Article in Special Issue
Cryptanalysis and Improvement of Several Identity-Based Authenticated and Pairing-Free Key Agreement Protocols for IoT Applications
Previous Article in Journal
Comparative Analysis of Supersonic Flow in Atmospheric and Low Pressure in the Region of Shock Waves Creation for Electron Microscopy
Previous Article in Special Issue
Hierarchical Controlled Hybrid Quantum Communication Based on Six-Qubit Entangled States in IoT
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Provably Secure Lightweight Mutual Authentication and Key Agreement Scheme for Cloud-Based IoT Environments

Department of Computer Engineering, College of Engineering, Keimyung University, Daegu 42601, Republic of Korea
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(24), 9766; https://doi.org/10.3390/s23249766
Submission received: 10 November 2023 / Revised: 1 December 2023 / Accepted: 8 December 2023 / Published: 11 December 2023
(This article belongs to the Special Issue IoT Network Security)

Abstract

:
A paradigm that combines cloud computing and the Internet of Things (IoT) allows for more impressive services to be provided to users while addressing storage and computational resource issues in the IoT environments. This cloud-based IoT environment has been used in various industries, including public services, for quite some time, and has been researched in academia. However, various security issues can arise during the communication between IoT devices and cloud servers, because communication between devices occurs in open channels. Moreover, issues such as theft of a user’s IoT device or extraction of key parameters from the user’s device in a remote location can arise. Researchers interested in these issues have proposed lightweight mutual authentication key agreement protocols that are safe and suitable for IoT environments. Recently, a lightweight authentication scheme between IoT devices and cloud servers has been presented. However, we found out their scheme had various security vulnerabilities, vulnerable to insider, impersonation, verification table leakage, and privileged insider attacks, and did not provide users with untraceability. To address these flaws, we propose a provably secure lightweight authentication scheme. The proposed scheme uses the user’s biometric information and the cloud server’s secret key to prevent the exposure of key parameters. Additionally, it ensures low computational costs for providing users with real-time and fast services using only exclusive OR operations and hash functions in the IoT environments. To analyze the safety of the proposed scheme, we use informal security analysis, Burrows–Abadi–Needham (BAN) logic and a Real-or-Random (RoR) model. The analysis results confirm that our scheme is secure against insider attacks, impersonation attacks, stolen verifier attacks, and so on; furthermore, it provides additional security elements. Simultaneously, it has been verified to possess enhanced communication costs, and total bit size has been shortened to 3776 bits, which is improved by almost 6% compared to Wu et al.’s scheme. Therefore, we demonstrate that the proposed scheme is suitable for cloud-based IoT environments.

1. Introduction

The Internet of Things (IoT) is a network in which Internet-enabled objects interact with each other through the internet [1,2]. IoT objects collect data from their surroundings, provide web services to users, and communicate with each other. Therefore, IoT objects such as smart devices need significant resources to store data collected from sensors and perform real-time computations using limited hardware. Hence, addressing the limitations of storage and computing capacities is crucial for the formation of a network of IoT objects [3,4,5]. However, cloud computing technology refers to the practice of moving computational power and storage space from individual devices to larger shared data centers [6]. Cloud computing allows access to a shared pool of computing resources such as networks, servers, storage, and applications. By using cloud computing, it becomes possible to overcome the limitations inherent in IoT devices [7,8,9,10]. The development and discussion of cloud-based IoT (CloudIoT) have been ongoing since before 2008 and continue to evolve. Figure 1 illustrates the structure of CloudIoT. This structure comprises three entities: user, cloud server, and control server. Users with IoT devices can access the resources provided by the cloud service provider’s server anytime and anywhere through IoT objects. The cloud server collects user’s requests and delivers the right service through IoT. The control server, acting as a trusted entity, generates the necessary parameters for communication between authenticated users and the cloud server through the registration process. Additionally, it monitors the key agreement phase to ensure that users and the cloud server establish the same session key for subsequent communications when needed.
In 2022, Wu et al. [11] proposed a lightweight authentication protocol for IoT-enabled cloud computing environments. The authors argued that their scheme could resist various attacks, such as man-in-the-middle, insider, DDoS, and masquerade attacks, and provides privacy, traceability, and integrity. However, we identified several vulnerabilities in Wu et al.’s scheme, including susceptibility to insider attacks, verification table attacks, user impersonation, and cloud server impersonation. Furthermore, the scheme lacks user untraceability, allowing an attacker to track the same user across different sessions through message eavesdropping alone. To address these vulnerabilities, we propose a provably secure lightweight mutual authentication and key agreement (MAKA) scheme. In our proposed scheme, we protect crucial parameters stored in the user’s IoT smart card using the user’s biometric information to prevent attacks like user impersonation and offline password-guessing. We also enhanced security by adding a secret key to the cloud server, preventing attackers from exploiting leaked database values. Additionally, we reduced the communication and computation overhead by employing only hash functions and exclusive-OR operations.

1.1. Research Contributions

We review and conduct a security analysis of Wu et al.’s authentication scheme. We demonstrate that Wu et al.’s scheme is vulnerable to insider attacks, verification table leakage attacks privileged insider attacks, user impersonation, and cloud server impersonation. Additionally, we propose an MAKA for cloud-based IoT environments that leverages biometric information. The proposed scheme is tailored to the IoT environments, using only exclusive OR operations and hash functions to align with a lightweight architecture. Additionally, we use a Real-or-Random (RoR) model and Burrow–Abadi–Needham (BAN) logic to demonstrate formally the security and robustness of the proposed. Moreover, we substantiate the security of our scheme against different attacks, including insider attacks, impersonation attacks, reply and man-in-the-middle (MITM) attacks, privileged insider attacks, ephemeral security leakage, stolen verifier attacks, DoS attacks, and session key disclosure attacks. In addition, we confirmed that our scheme can provide user anonymity, user untraceability, perfect forward secrecy, and mutual authentication. Last, we evaluate the security features, communication costs, and computation costs of the proposed scheme with related schemes, including Wu et al.’s.

1.2. Organization

In Section 2, we introduce studies related to cloud-based IoT, IoT, and cloud computing. We present the system model and adversary model used in our proposed scheme in Section 3. Following that, we discuss Wu et al.’s scheme in Section 4. We then delve into the vulnerabilities we identified in Wu et al.’s scheme in Section 5. In Section 6, we introduce our proposed scheme, and in Section 7, we provide security analyses using tools such as BAN logic, and RoR model. Performance analyses, including security features, communication, and computation costs, are presented in Section 8. Finally, in Section 9, we conclude our paper and outline future plans.

2. Related Works

When providing services to users over the internet, application security is crucial in gaining user trust. To access various services, including storage services provided by cloud service providers, the environments should be well prepared to handle various attacks and security threats that may exist. Furthermore, in IoT environments, lightweight protocol computations are essential to provide users with a seamless real-time service anytime, anywhere. In the following sections, we will review the authentication protocols in the existing cloud-based IoT environments.
In 2019, Schouqi et al. [12] introduced an authentication protocol for IoT built on Nikooghadam et al.’s [13] protocol. The protocol of Nikooghadam et al. was developed as a responses to issues with the authentication protocol proposed by Kumari et al. [14]. However, Nikooghadam et al.’s scheme has already been analyzed by researchers in the field, including Limbasiya et al., Chandrakar-Om, and Sharma-Kalra [15,16,17]. These researchers raised concerns about its security, highlighting vulnerabilities to various attacks such as password-guessing, insiders, and modification attacks. They also indicated that the protocol lacked forward secrecy and did not provide session key verification and a biometric update phase. The author of the new scheme reviewed the security issues known in Nikooghadam et al.’s protocol and proposed enhancements based on these findings.
Prosanta and Biplab (Prosanta-Biplab) [18] proposed lightweight two-factor authentication scheme for IoT devices in 2019. They argued that two-factor authentication schemes that use a passwords and smartcards, often vulnerable to physical attacks. To overcome these security issues they suggested physically uncloneable functions(PUF) as an authentication factor for IoT devices. However, in 2020, Siddiqui et al. [19] demonstrated that the scheme is vulnerable to man-in-the-middle, impersonations, session- hijacking and conventional and differential template attacks.
In 2019, Zhou et al. [20] presented a lightweight two-factor authentication scheme for IoT devices available in the cloud environments. In the same year, Rafael et al. [21] indicated that Zhou et al.’s scheme has several security issues. Rafael et al. demonstrated that Zhou et al.’s scheme failed to provide mutual authentication, was unsuccessful in protecting the secret key, and was vulnerable to various attacks, including insider attacks and man-in-the-middle attacks.
In 2020, Alzahrani et al. [22] presented an authentication protocol for IoT environments based on self-certified public keys and elliptic curve cryptography (ECC). Alzahrani conducted research on protocols proposed by Islam-Biswas [23] and Mandal et al. [24], highlighting their failure to ensure user anonymity and vulnerability to impersonation attacks. Therefore, the author developed a protocol that guarantees anonymity among connected devices and addresses security vulnerabilities. However, this scheme does not guarantee security against physical attacks.
Chen et al. [25] proposed a lightweight user authentication and key-agreement scheme for IoT. Chen et al. utilized XOR operations, hash functions, and elliptical multiplication. Lee et al. [26] indicated that Chen et al.’s scheme did not provide a steal-resistant smartcard offline password, offline identity guessing and reply attack. Subsequently, in 2020, Ye et al. [27] proposed an authentication and key agreement scheme for IoT-based cloud computing environments by advancing the protocol developed by He et al. [28]. Ye et al. addressed various security issues in the scheme proposed by He et al, such as failure to resist insider attacks, offline password-guessing, user impersonation, and potential DoS attacks.
Table 1, summarizes cryptographic technologies and limitations of various authentication schemes related to IoT, cloud-based IoT, and cloud computing environments. Related papers propose various protocols to provide users with secure and fast services in the CloudIoT environment. However, there are still vulnerabilities and challenges in fully supporting security features, as some attacks persist. Additionally, methods using symmetric keys like ECC may incur higher computation costs in IoT environments. Therefore, our goal is to design a lightweight protocol tailored for IoT environments using XOR and to achieve higher security in our scheme.

3. Preliminaries

3.1. System Model

As shown in Figure 2, an IoT-enable cloud computing environment includes three entities: user, cloud server, and control server. Users can also use cloud computing provided by a cloud server, using IoT-enabled devices. Therefore, the user and cloud server should register and authenticate it through the control server. Finally, the user and cloud server share a session key for communication. The details are as follows
  • User ( U i ): User uses IoT devices with cloud services. Communicates with the cloud servers, then the user should register with the control server. The user can use smart cards and biometric technology to store sensitive information or the user’s identity and password. We assumed that the user is an untrusted entity, implying that the user can execute unauthorized or malicious attacks.
  • Cloud server ( S j ): A cloud server provides cloud services to users using IoT devices. To achieve this, the cloud server should be registered with the control server. As a semi-trusted entity, the cloud server can misbehave; however, it cannot directly collude or participate.
  • Control server ( C S ): This manages the registration of the user and cloud server, and helps generate the session key for authentication and subsequent communication. As a semi-trusted entity, the control server can misbehave; however, it cannot directly collude or participate.

3.2. Adversary Model

We employ the widely used “Dolev–Yao (DY) model” [32] to define the capabilities of the adversary. The details are as follows:
  • Within the DY model, entities in the IoT environments are considered trustworthy, and the communication channel is also considered insecure. Consequently, the adversary can engage in various actions through the insecure channel, including resending, eavesdropping, blocking, and deleting any messages transmitted.
  • The adversary can extract sensitive information through power analysis attacks from stolen user smart cards. Additionally, because the control and cloud servers are semi-trusted entities, the adversary can also extract information from their databases.
Furthermore, the “Canetti–Krawczyk (CK) model” [33] assumes that stronger adversaries can also be adapted to our protocol. The adversaries in the CK model can obtain and use ephemeral values or long-term values, and using those, ephemeral leakage attacks can be performed.

4. Revisit of Wu et al.’s Scheme

4.1. Registration Phase

Before generating a session key for communication, the user and cloud server must go through the registration process via a secure channel. The detailed process is as follows.

4.1.1. User Registration Phase

Step 1: 
The U i enters I D i , P W i and imprints B i on the device. Then, calculates G e n ( B i ) = σ i , τ i , H P W i = h ( P W i | | σ i ) and sends I D i , H P W i to C S as a registration request message through a secure channel.
Step 2: 
C S checks if U i ’s identity is new, and generates a random number n i to calculate T I D i = h ( I D i ) , A 1 = h ( I D C S | | H P W i ) ( n i x ) . Then, stores { T I D i , H P W i } in its database, and stores { A 1 , I D C S } to smart card S C . After that, sends S C to U i through a secure channel.
Step 3: 
U i computes A 2 = h ( I D i | | H P W i ) and store { A 1 , A 2 , I D C S , G e n ( · ) , R e p ( · ) , τ i } in S C .

4.1.2. Cloud Server Registration Phase

Step 1: 
S j selects S I D j and random number n j and sends { S I D j , n j } as a request message to C S through a secure channel.
Step 2: 
C S checks if S j ’s identity is new, and chooses S j ’s pseudo identity Q I D j , computes A 3 = h ( S I D j | | x n j ) , then stores { Q I D j , n j } in its database. Next, C S sends Q I D j , n j to S j through secure channel.
Step 3: 
S j computes A 3 * = A 3 S I D j , and stores { A 3 * , Q I D j } .

4.2. Login and Authentication Phase

In this phase, the control server first verifies the identities of the user and the cloud server. If both are confirmed, a shared session key for subsequent communication is generated. The detailed process is as follows and illustrated in Figure 3.
Step 1: 
U i enters I D i , P W i and imprints B i , and calculates R e p ( B i , τ i ) = σ i , H P W i = h ( P W i | | σ i ) , A 2 = h ( I D i | | H P W i ) . Then, by confirming A 2 = ? A 2 , U i can be verified as a legitimate user. If this is valid, U i selects a random number r i and timestamp T S 1 , then calculates ( n i x ) = A 1 h ( I D C S | | H P W i ) , B 1 = r i h ( I D C S | | H P W i S I D j ) , B 2 = S I D j h ( I D C S | | H P W i ) , and B 3 = h ( T I D i | | I D C S | | n i x ) H P W i . Finally, generates a message M 1 = { T I D i , A 1 , B 1 , B 2 , B 3 , T S 1 } and sends it to S j via open channel.
Step 2: 
Upon receiving U i ’s message, C S confirms timestamp | T S 1 T S c |     Δ T . If the timestamp is valid, S j chooses a random value r j and timestamp T S 2 . S j computes A 3 = S I D j A 3 * , B 4 = r j h ( A 3 | | S I D j ) , and B 5 = h ( r j | | A 3 | | S I D j ) . Finally, message M 2 = { M 1 , Q I D j , B 4 , B 5 , T S 2 } is sent through an open channel.
Step 3: 
After receiving the M 2 , S j confirms timestamp | T S 2 T S c |     Δ T . If the timestamp is successfully verified, C S uses T I D i to find H P W i and performs the following computations: S I D j = B 2 h ( I D C S | | H P W i ) , r i = B 1 h ( I D C S | | H P W i S I D j ) , and B 3 = h ( T I D i | | I D C S | | n i x ) H P W i . And by checking B 3 = ? B 3 , the C S confirms whether U i is the legitimate user. Next, C S utilizes the value of Q I D j to find n j and then performs the following computations: A 3 = h ( S I D j | | x n j ) , r j = B 4 h ( A 3 | | S I D j ) , and B 5 = h ( r j | | A 3 | | S I D j ) . After checking B 5 = ? B 5 is valid, CS then selects r k , T S 3 , computes S K = h ( r i H P W i | | r j | | r k | | S I D j ) , B 6 = ( r i H P W i ) A 3 , B 7 = h ( A 3 | | r j | | S I D j ) r k , B 8 = h ( r j | | r k | | S K | | T S 3 ) , ( n i x ) = A 1 h ( I D C S | | H P W i ) , B 9 = h ( n i x | | S I D j ) r j , and B 10 = h ( H P W i | | r i ) r k , B 11 = h ( S K | | n i x | | r k | | r j ) . At last, C S generates message M 3 = { B 6 , B 7 , B 8 , B 9 , B 10 , B 11 , T S 3 } and sends to S j through an open channel.
Step 4: 
Upon receiving M 3 , S j checks timestamp | T S 3 T S c |     Δ T . If the timestamp is valid, S j calculates following computations: ( r i H P W i ) = B 6 A 3 , S K = h ( r i H P W i | | r j | | r k | | S I D j ) , and B 8 = h ( r j | | r k | | S K | | T S 3 ) , and confirms B 8 = ? B 8 . If it confirms, S j generates message M 4 = { B 9 , B 10 , T S 4 } to U i via open channel.
Step 5: 
U i verifies timestamp | T S 4 T S c |     Δ T . If the timestamp is valid, U i calculates r j = h ( n i x | | S I D j ) B 9 , r k = h ( H P W i | | r i ) B 10 , S K = h ( r i H P W i | | r j | | r k | | S I D j ) , and B 11 = h ( S K | | n i x | | r k | | r j ) and calculates B 11 = ? B 11 . If it confirms, U i computes B 12 = h ( S K | | r j ) and generates M 5 = { B 12 } and sends to S j .
Step 6: 
S j calculates the equation B 12 = h ( S K | | r j ) and then checks B 12 = ? B 12 . If they match, S j stores S K for future communication.

5. Cryptanalysis of Wu et al.’s Scheme

Following the description of Section 3, adversary A can obtain important values from the user’s smart card by using a power analysis attack. Furthermore, A can extract parameters from the cloud server and control server itself, because they are considered semi-trusted. With this information, various security attacks, including insider attack, verification table leakage attack, privileged insider attack, user impersonation, and cloud server impersonation, can be executed by A . Details are described below.

5.1. Insider Attack

An adversary A, who has undergone the registration process as a legitimate user, can obtain session keys from another user U i ’s sessions or impersonate U i . The detailed process is as follows:
Step 1: 
After completing the registration process, A obtains B 6 of M 3 during their AKA process. Subsequently, A calculates A 3 of S j using their own H P W a and r a .
Step 2: 
In another user U i ’s session, A obtains message M 2 and uses B 4 and the previously acquired A 3 to deduce r j .
Step 3: 
From B 6 of M 3 , A calculates user U i ’s r i and H P W i , and from B 7 , A calculates r k .
Step 4: 
Using the computed values, A can generate the session key S K = h ( r i H P W i | | r j | | r k | | S I D j ) for another user U i and potentially disclose or exploit it.
Therefore, Wu et al.’s scheme cannot resist insider attacks.

5.2. Verification Table Leakage Attack

If A extracts verification table of cloud server, A can disclose session key. The following procedures are below:
Step 1: 
A extracts the verification table to take { A 3 * , Q I D j } from S j . And also intercept message M 2 = { M 1 , Q I D , B 4 , B 5 , T S 2 } transmitted in public channel.
Step 2: 
A calculates A 3 = S I D j A 3 * , and r j = B 4 h ( A 3 | | S I D j ) to extract A 3 and r j .
Step 3: 
A takes message M 3 = { B 6 , B 7 , B 8 , B 9 , B 10 , B 11 , T S 3 } .
Step 4: 
A computes ( r i H P W i ) = B 6 A 3 , and r k = h ( A 3 | | r j | | S I D j ) B 7 . In addition by calculating S K = h ( r i H P W i | | r j | | r k | | S I D j ) , A can generate a session key to disclose or exploit it.
Therefore, Wu et al.’s scheme cannot resist verification table leakage attacks.

5.3. Privileged Insider Attack

A privileged insider can take important information like { I D j , H P W j } from the registration message and values stored in the user’s smart card such as { A 1 , A 2 , I D c s , G e n ( ) , R e p ( ) , } . Through support from this privileged insider, a malicious A can generate a session key through the following:
Step 1: 
A computes S I D j = B 2 h ( I D C S | | H P W i ) , and r i = B 1 h ( I D C S | | H P W i S I D j ) , ( n i x ) = A 1 h ( I D C S | | H P W i ) ; therefore, A can extract parameters S I D j , r i , and ( n i x ) .
Step 2: 
A intercepts message M 4 = { B 9 , B 10 , T S 4 } .
Step 3: 
A calculates r j = h ( n i x | | S I D j ) B 9 , and r k = h ( H P W i | | r i ) B 10 . Hence, A can compute session key S K = h ( r i H P W i | | r j | | r k | | S I D j ) and disclose it.
Thus, Wu et al.’s scheme is insecure against privileged insider attacks.

5.4. Impersonation

When A obtains the table information { k n , S I D n } of the control center, A can calculate S K n m = h ( S I D m | | S I D n | | S I D c | | A 8 ) .
(1)
User impersonation: If the privileged insider described in Section 5.3 generates random number r i and time stamp T S 1 , A can forge message M 1 = { T I D i , A 1 , B 1 , B 2 , B 3 , T S 1 } . In addition, by A to take message M 4 = { B 9 , B 10 , T S 4 } from an unsecured public channel, A can generate session key and r j . Thus, A can send message M 5 = { B 12 } impersonates user.
(2)
Cloud server impersonation: According to the previous verification table attack in Section 5.2, A generates random number r j and time stamp T S 2 , and A can send M 2 = { M 1 , Q I D j , B 4 , B 5 , T S 2 } . Second, A can generate M 4 = { B 9 , B 10 , T S 4 } after intercept message M 3 = { B 6 , B 7 , B 8 , B 9 , B 10 , B 11 , T S 3 } . Hence A can impersonate cloud server.
Therefore, Wu et al.’s scheme cannot resist user and cloud impersonation attack.

5.5. Lack of Untraceability

If an attacker A continues to eavesdrop on M 1 = { T I D i , A 1 , B 1 , B 2 , B 3 , T S 1 } and compares the value of T I D i contained in M 1 , A can track the user U i . The reason is that the pseudo identity of U i , T I D i , is a fixed value, and an attacker can easily obtain it through eavesdropping on the message. Indeed, by verifying whether the value of T I D i matches the values from previous or subsequent communications, A can detect the user. In conclusion, Wu et al.’s scheme lacks anonymity and untraceability.

5.6. Impossibility of Offline Password Update

In the user registration phase in Wu et al.’s scheme, the value of H P W i is created by concatenating the user’s password P W i with their biometric information σ i . Additionally, this H P W i is transmitted to the control server C S and undergoes the operation A 1 = h ( I D C S | | H P W i ) ( n i x ) , and stored in the C S ’s database as A 1 . However, this design leads to a problem where users must communicate with the C S to update the A 1 value stored in the C S if they wish to change their password, because C S cannot create the H P W i on its own. Consequently, Wu et al.’s scheme does not support offline password updates.

6. Proposed Protocol

6.1. Registration Phase

Before generating a session key for communication, the user and the cloud server must go through the registration process with the control server via a secure channel. In this phase, users register the information, such as identity, password, and biometrics, with the control server. The detailed process is as follows and illustrated in Figure 4.

6.1.1. User Registration Phase

Step 1: 
The U i enters I D i , P W i and imprints B i on the device. Then, calculates G e n ( B i ) = σ i and sends I D i to C S as a registration request message through a secure channel.
Step 2: 
C S checks if U i ’s identity is new, and generates a random number n i to calculate S I D i = h ( I D i x c s , k i = h ( S I D i | | x c s | | n i ) . S I D i * = S I D i h ( x c s | | n i ) and P I D i = h ( S I D i | | n i ) . Then, stores { P I D i , S I D i * , n i } in its database, and sends { P I D i , I D c s , k i , S I D i } to U i through secure channel.
Step 3: 
U i computes R P W i = h ( I D i | | P W i | | σ i ) , A 1 = k i h ( I D i | | H P i ) , and A 2 = S I D i h ( σ i | | P W i ) . Then, store { P I D i , I D C S , R P W i , A 1 , A 2 , G e n ( · ) , R e p ( · ) , τ i } in S C .

6.1.2. Cloud Server Registration Phase

In this phase, cloud servers register the information with the control server. The detailed process is as follows and illustrated in Figure 5.
Step 1: 
S j selects S I D j and sends { I D j } as a request message to C S through a secure channel.
Step 2: 
C S checks if S j ’s identity is new, and chooses random number n j , computes k j = h ( I D j | | n j | | x c s ) . Then, stores { I D j , n j } in its database. Next, C S sends k j to S j through secure channel.
Step 3: 
S j computes A 3 = k j x j , and stores { A 3 } .

6.2. Login and Authentication Phase

In this phase, the control server first verifies the identities of the user and the cloud server. If both are confirmed, a shared session key for subsequent communication is generated. The detailed process is as follows and illustrated in Figure 6.
Step 1: 
U i enters I D i , P W i , imprints B i , and calculates R e p ( B i , τ i ) = σ i , R P W i = h ( I D I | | P W i | | σ i ) , k i = A 1 ( I D i | | P W i ) and S I D i = A q ( σ i | | P W i ) . Then, by confirming R P W i = ? R P W i , U i can be verified as a legitimate user. If this is valid, U i selects a random number r i and timestamp T S 1 then calculates B 1 = r i h ( S I D i | | I D C S | | k i ) , B 2 = I D j h ( I D C S | | S I D i | | r i ) and V 1 = h ( I D C S | | T S 1 | | S I D i | | k i | | r i ) . Finally, it generates a message M 1 = { P I D i , B 1 , B 2 , V 1 , T S 1 } and sends it to S j via open channel.
Step 2: 
Upon receiving U i ’s message, C S confirms timestamp | T S 1 T S c |     Δ T . If thetimestamp is valid, S j chooses a random value r j and timestamp T S 2 . S j computes k j = A 3 x j , B 3 = r j h ( k j | | I D j ) , and V 2 = h ( k j | | T S 2 | | I D j | | r j ) . Finally, message M 2 = { M 1 , B 3 , V 2 , T S 2 } is sent through an open channel.
Step 3: 
After receiving the M 2 , S j confirms timestamp | T S 2 T S c |     Δ T . If the timestamp is successfully verified, C S uses P I D i to find { S I D i * , n i } and performs the following computations: S I D i = S I D i * ( x C S | | n i ) , k i = h ( S I D i | | x C S | | n i ) , r i = B 1 h ( S I D i | | I D C S | | k i ) and V 1 = h ( I D C S | | T S 1 | | S I D i | | k i | | r i ) . And by checking V 1 = ? V 1 , the C S confirms whether U i is the legitimate user.
Step 4: 
Next, C S calculates I D j = B 2 h ( I D C S | | S I D i | | r i ) and utilizes the value of I D j to find n j . Then, it performs the following computations: k j = h ( I D j | | n j | | x C S ) , r j = B 3 h ( k j | | I D j ) , and V 2 = h ( k j | | T S 2 | | I D j | | r j ) . Subsequently, it checks if V 2 = ? V 2 is valid.
Step 5: 
CS then selects r k , T S 3 , computes S I D j = I D j h ( k j | | r k ) , C 1 = h ( S I D i S I D j I D C S ) , P I D i * = P I D i h ( P I D i | | r k | | r i ) . Next, it updates the old P I D i to P I D i * .
Step 6: 
B 6 = ( r k | | r i ) h ( r j | | k j ) , B 7 = C 1 h ( k j | | r k ) , B 8 = ( r j | | r k ) h ( S I D i | | I D C S | | r i ) , B 9 = S I D j h ( S I D i | | r k ) , V 3 = h ( r j | | r k | | C 1 | | I D j | | T S 3 ) and V 4 = h ( S I D i | | r j | | r k | | C 1 | | T S 3 ) . At last, C S generates message M 3 = { B 6 , B 7 , B 8 , B 9 , V 3 , V 4 , T S 3 } and sends to S j through an open channel.
Step 7: 
Upon receiving M 3 , S j checks timestamp | T S 3 T S c |     Δ T . If the timestamp is valid, S j calculates following computations: ( r k | | r i ) = B 6 o p l u s h ( r j | | k j ) , C 1 = B 7 h ( k j | | r k ) , S K = h ( C 1 | | r i | | r j | | r k ) , and V 3 = h ( r j | | r k | | C 1 | | I D j | | T S 3 ) . Subsequently, it confirms V 3 = ? V 3 . If it confirms, S j generates message M 4 = { B 8 , B 9 , V 4 , T S 4 } to U i via an open channel.
Step 8: 
U i verifies timestamp | T S 4 T S c |     Δ T . If the timestamp is valid, U i calculates ( r j | | r k ) = B 8 h ( S I D i | | I D C S | | r i ) , S I D j = B 9 h ( S I D i | | r k ) , C 1 = h ( S I D i S I D j I D C S ) , S K = h ( C 1 | | r i | | r j | | r k ) , and calculates V 4 = h ( S I D i | | r j | | r k | | C 1 | | T S 3 ) to check B 11 = ? B 11 . If it confirms, U i computes P I D i * = P I D i h ( P I D i | | r k | | r i ) and update old P I D i to P I D i * .

6.3. Offline Password and Biometric Template Update

In this phase, an authenticated user U can locally change their password and biometrics without a connection to CS. U must perform the login process on the IoT device before updating data offline. A logged-in user can update their password or biometric template. The detailed process is as follows and illustrated in Figure 7.
Step 1: 
U i enters I D i , P W i and imprint B i on the device. Compute R e p ( B i o i , τ i ) = σ i and check R P W i = h ( I D i | | P W i | | σ i ) for login phase and confirm user.
Step 2: 
Then, ask U i to change password and biometric data. U i select new password P W i n e w , and compute R P W i n e w = h ( I D i | | P W i n e w | | σ i ) , A 1 n e w = k i h ( I D i | | P W i n e w ) and A 2 n e w = S I D i h ( i | | P W i n e w ) . Subsequently, update R P W i , A 1 , and A 2 with new data to change the password.
Step 3: 
Compute R e p ( B i i , τ i ) = σ i n e w , R P W i n e w = h ( I D | | P W i | | σ i n e w ) and A 2 n e w = S I D i h ( σ i n e w | | P W i ) . Subsequently, update R P W i n e w and A 2 n e w with new data to change the biometric template.

7. Security Analysis

7.1. ROR Model

In this section, we conduct an analysis of session key security using the ROR model [34]. To apply the proposed protocol to the ROR model, we first define participants, especially U U S i 1 , U S J i 2 , and U C S i 3 as user, cloud server, and control server, respectively. Note that i k ( k = 1 , 2 , 3 ) is an instance for each participant. In ROR model, the adversary can eavesdrop, delete, intercept, and send messages through the public channel. Moreover, the adversary can extract secret parameters from the user U U S i 1 . These actions of the adversary can be defined as queries in the ROR model.
  • E X ( U U S i 1 , U S J i 2 , U C S i 3 ) : This query is an eavesdropping attack that the adversary can obtain messages transmitted via a public channel. Thus, this query can be defined as a passive attack.
  • C o U D ( U U S i 1 ) : In this query, the adversary extracts secret parameters using the smart device of U U S i 1 . Therefore, we can define the query C o U D is an active attack.
  • S n ( U p i ) : The adversary sends messages to legal participants through open channels. This query is an active attack.
  • T s ( U p i ) : In this query, the adversary flips an unbiased coin. When the result of the flipped coin is 0, the session key is not fresh. When the result of the flipped coin is 1, we can demonstrate that the session key is fresh. Otherwise, the result outputs N U L L (⊥).
Theorem 1.
We take a definition of  P A D H A q H A , and  q S n  as the possibility of breaking session key, range space of hash function, number of hash functions, and number of send queries, respectively. Moreover, we define that s and C are the Zipf’s parameters [35]. From that, the adversary tries to reveal the session key of the proposed protocol in polynomial time. Following [36,37,38], the ROR model analysis of the proposed protocol is composed of four games ( G A M E m m = 0 , 1 , 2 , 3 ) and the winning possibility of the adversary is  P W G A M E m  for each game  G A M E m .
P A D q H A 2 | H A | + 2 { C q S S n }
  • G A M E 0 : In this game, the adversary has no knowledge about the session key. Thus, the adversary picks a random bit B.
    P A D = | 2 P W G A M E 0 1 |
  • G A M E 1 : The adversary conducts  E X  query to collect the messages transmitted via public channels. Thus, the adversary obtains  { P I D i , B 1 , B 2 , V 1 , T S 1 } ,  { M 1 , B 3 , V 2 } ,  { B 6 , B 7 , B 8 , V 3 , V 4 , T S 3 } , and  { B 8 , V 5 , T S 4 } . After that, the adversary flips an unbiased coin to execute the  T s  query. However, the adversary has no knowledge of the session key  S K = h ( C 1 r i r j r k )  because it is composed of random numbers  r i ,  r j  and  r k  and masked in the hash functions. For these reasons, the adversary can obtain the following:
    P W G A M E 1 = P W G A M E 1
  • G A M E 2 : The adversary conducts  H A  and  S n  queries to reveal session key in this game. However, the session key is composed of fresh random numbers and a cryptographic hash function. Therefore, the adversary cannot make hash collisions to calculate the session key. Applying the birthday paradox [39], we obtain the following:
    | P W G A M E 2 P W G A M E 1 | q H A 2 | H A |
  • G A M E 3 : In the last game, the adversary conducts  C o U D  query to obtain the secret parameters  { P I D i , I D C S , R P W i , A 1 , A 2 , G e n ( . ) , R e p ( . ) , τ i } . However, the adversary cannot decrypt the secret parameters because these parameters are encrypted using the identity  I D i , password  P W i , and biometrics  B i . Since simultaneously guessing  I D i ,  P W i , and  B i  is a computationally infeasible task, the adversary has no advantage in this game. We obtain the following using Zipf’s law [35].
    | P W G A M E 3 P W G A M E 2 | C q S S n
    When all the games end, the adversary becomes a random bit B.
    P W G A M E 3 = 1 2
    We can calculate (7) utilizing (2) and (3).
    1 2 P A D = | P W G A M E 0 1 2 | = | P W G A M E 3 1 2 |
    Then, we use (6) and (7) to obtain (8).
    1 2 P A D = | P W G A M E 1 P W G A M E 3 |
    We calculate (9) utilizing the triangular inequality.
    1 2 P A D = | P W G A M E 1 P W G A M E 3 | | P W G A M E 1 P W G A M E 2 | + | P W G A M E 2 P W G A M E 3 |
    q H A 2 2 | H A | + C q S S n
    We calculate (10) multiplying (9) by 2.
    P A D q H A 2 | H A | + 2 { C q S S n }
    We obtain the in Equation (10) which is the same as (1). It means that the adversary cannot distinguish random nonce and the session key using various security attacks, such as  E X ,  C o U D , and  S n . Thus, we can prove the session key security of the proposed protocol.

7.2. BAN Logic

We analyze the mutual authentication of the proposed protocol using BAN logic [40]. Following [41,42,43], we define basic notations and descriptions of BAN logic in Table 2.

7.2.1. Rules

In BAN logic, there are five rules, such as “Message meaning rule (MMR)”, “Nonce verification rule (NVR)”, “Jurisdiction rule (JR)”, “Belief rule (BR)”, and “Freshness rule (FR)”.
1. 
Message meaning rule (MMR):
A i |     A i S H A j , A i { T 1 } S H A i |     A j | T 1
2. 
Nonce verification rule (NVR):
A i |     # ( T 1 ) , A i | A j | T 1 A i |     A j | T 1
3. 
Jurisdiction rule (JR):
A i |     A j T 1 , A i |     A j | T 1 A i |     T 1
4. 
Belief rule (BR):
A i |     ( T 1 , T 2 ) A i |     T 1
5. 
Freshness rule (FR):
A i |     # ( T 1 ) A i |     # ( T 1 , T 2 )

7.2.2. Goals

In our protocol, each participant authenticate the communication partner by establishing session key S K . Thus, goals of the proposed protocol can be shown as follows:
Goal 1: 
U I |     U I S K C S
Goal 2: 
U I |     C S |     U I S K C S
Goal 3: 
C S |     U I S K C S
Goal 4: 
C S |     U I |     C S S K U I
Goal 5: 
C S |     C S S K S J
Goal 6: 
C S |     S J |     C S S K S J
Goal 7: 
S J |     C S S K S J
Goal 8: 
S J |     C S |     S J S K C S

7.2.3. Idealized Forms

In the proposed authentication phase, four messages are transmitted via open channels ( { P I D i , B 1 , B 2 , V 1 , T S 1 } , { M 1 , B 3 , V 2 } , { B 6 , B 7 , B 8 , V 3 , V 4 , T S 3 } , { B 8 , V 5 , T S 4 } ). To analyze these messages, we convert them into idealized forms.
  • M S G 1 : U I S J : { r i , I D j , T S 1 } k i
  • M S G 2 : S J C S : { { r i , I D j } k i , { r j , T S 2 } k j }
  • M S G 3 : C S S J : { { r k , r i , C 1 , T S 3 } k j , { r j , r k , T S 3 } r i }
  • M S G 4 : S J U I : { r j , r k , T S 4 } r i

7.2.4. Assumptions

In the proposed protocol, participants agree on the freshness of the random number and secret parameters. Therefore, we show the assumptions to analyze the proposed authentication phase.
S 1 :
C S |     # ( T S 2 )
S 2 :
S J |     # ( T S 3 )
S 3 :
U I |     # ( T S 4 )
S 4 :
C S |     # ( r i )
S 5 :
C S |     U I k i C S
S 6 :
C S |     S J k j C S
S 7 :
S J |     C S k j S J
S 8 :
U I |     C S r j U I

7.2.5. BAN Logic Proof

Step 1: 
We obtain P 1 using M S G 2 .
P 1 : C S { { r i , I D j } k i , { r j , T S 2 } k j }
Step 2: 
We use S 5 , S 6 , and MMR to obtain P 2 and P 3 from P 1 .
P 2 : C S | U I | ( r i , I D j ) P 3 : C S | S J | ( r j , T S 2 )
Step 3: 
From P 2 and P 3 , we use S 1 , S 4 , and FR to obtain P 4 and P 5 .
P 4 : C S | # ( r i , I D j ) P 5 : C S | # ( r j , T S 2 )
Step 4: 
From P 2 , P 3 , P 4 and P 5 , we use NVR to obtain P 6 and P 7 .
P 6 : C S | U I | ( r i , I D j ) P 7 : C S | S J | ( r j , T S 2 )
Step 5: 
We obtain P 8 using M S G 3 .
P 8 : S J { { r k , r i , C 1 , T S 3 } k j , { r j , r k , T S 3 } r i }
Step 6: 
We use S 7 and MMR to obtain P 9 from P 8 .
P 9 : S J | C S | ( r k , r i , C 1 , T S 3 )
Step 7: 
From P 9 , we use S 2 and FR to obtain P 10 .
P 10 : S J | # ( r k , r i , C 1 , T S 3 )
Step 8: 
From P 9 and P 10 , we use NVR to obtain P 11 .
P 11 : S J | C S | ( r k , r i , C 1 , T S 3 )
Step 9: 
Using P 7 and P 11 , C S and S J computes the session key S K = h ( C 1 r i r j r k ) .
Thus, we obtain the following:
P 12 : S J | C S | S J S K C S ( Goal   8 ) P 13 : C S | S J | C S S K S J ( Goal   6 )
Step 10: 
Using JR into P 12 and P 13 , We obtain the following goals:
P 14 : S J | S J S K C S ( Goal   7 ) P 15 : C S | C S S K S J ( Goal   5 )
Step 11: 
We obtain P 16 using M S G 4 .
P 16 : U I { r j , r k , T S 4 } r i
Step 12: 
We use S 8 and MMR to obtain P 17 from P 16 .
P 17 : U I | C S | ( r j , r k , T S 4 )
Step 13: 
From P 17 , we use S 3 and FR to obtain P 18 .
P 18 : U I # ( r j , r k , T S 4 )
Step 14: 
From P 17 and P 18 , we use NVR to obtain P 19 .
P 19 : U I | C S | ( r j , r k , T S 4 )
Step 15: 
Using P 6 and P 19 , U I and S J agrees the session key S K = h ( C 1 r i r j r k ) .
Thus, we obtain the following:
P 20 : U I | C S | U I S K C S ( Goal   2 ) P 21 : C S | U I | C S S K U I ( Goal   4 )
Step 16: 
Using JR into P 20 and P 21 , We obtain the following goals:
P 22 : U I | C S S K U I ( Goal   1 ) P 23 : C S | U I S K C S ( Goal   3 )

7.3. Informal Security Analysis

7.3.1. Insider Attack

Malicious actor A, who has gone through the registration phase as a legitimate user, can attempt an insider attack using the acquired information. However, the attacker is unable to know the random values ( r i , r j , r k ) and k j . As a result, the attacker cannot calculate C 1 , rendering the attack impossible.

7.3.2. Impersonation Attack

(1)
User impersonation: Adversary A needs to create a valid message M 1 = { P I D i , B 1 , B 2 , V 1 , T S 1 } to impersonate the legitimate user U i . While A might obtain P I D i from the user’s device, it is impossible for A to access the necessary k i and S I D i to calculate B 1 , B 2 , V 1 , T S 1 needed to create the message. Therefore, A cannot generate the M 1 message on behalf of the user U i and transmit it to the cloud server and control server. Thus, the proposed scheme is secure against user impersonation attacks.
(2)
Cloud server impersonation: To execute this attack, A needs to send the message M 2 = { M 1 , B 3 , V 2 , T S 2 } to the control server on behalf of the cloud server S j . Even if A intercepts the transmission of M 1 over an open channel, they cannot generate the necessary B 3 , V 2 for the message until they know k j . Therefore, the proposed scheme is secure against cloud server impersonation attacks.

7.3.3. Reply and MITM Attacks

All users, the cloud server, and the control server attempt to validate the received messages through V 1 , V 2 , V 3 , V 4 . Also, the sent messages are masked with different random values for each session, ensuring freshness. Therefore, the proposed scheme is secure against reply attacks and MITM attacks.

7.3.4. Privileged Insider Attack

In this attack scenario, external entity A is considered a privileged insider, implying that A possesses the user’s registration request message I D i and confidential values such as { A 1 , A 2 , I D C S , G e n ( · ) , R e p ( · ) , τ i } However, without the precise biometric information, ID, or PW values of the user, calculating k i = A 1 ( I D i | | P W i ) or S I D i = A 2 ( σ i | | P W i ) is not possible. As a result, the proposed scheme is secure against privileged insider attacks.

7.3.5. Ephemeral Security Leakage Attack

To prevent adversary A from carrying out valid attacks, such as obtaining the session key through this attack scenario, it is essential to ensure that the session key is preserved even if the random values used in the session are exposed. Therefore, assuming A knows the values of r i , r j , r k , it is postulated here that even with this knowledge, A cannot calculate S K without knowing S I D i , S I D j . Additionally, valid attacks like impersonating the user or cloud server using random values are not possible. Therefore, the proposed scheme is secure against ESL attacks.

7.3.6. Stolen Verifier Attack

We can assume that a malicious A, upon obtaining { A 3 } from the cloud server’s database, attempts to calculate the session key S K = h ( C 1 | | r i | | r j | | r k ) or impersonate the cloud server. However, without the cloud server’s secret key x j , A cannot deduce the value of k j from the stored A 3 , nor can A determine the randomly generated values r i , r j , or r k . Therefore, A is unable to compute the session key or impersonate the cloud server. Consequently, the proposed scheme is secure against verification table leakage attacks.

7.3.7. DoS Attack

The adversary A may intentionally attempt to send the message M 1 = { P I D i , B 1 , B 2 , V 1 , T S 1 } repeatedly. However, to generate message M 1 , A must go through the login process and pass the verification R P W i = ? R P W i . However, to create a valid R P W i = h ( I D i | | P W i | | σ i ) , A cannot have the required I D i , P W i , σ i . Therefore, A cannot create and repeatedly send the message M 1 , making the proposed scheme secure against DoS attacks.

7.3.8. User Anonymity and Untraceability

Due to the use of P I D i as a pseudo identity, the user’s identity I D i cannot be deduced by an adversary A. Additionally, the P I D i is updated as a new value with random elements for each session, making it impossible for A to compare P I D i values between previous and current sessions to compromise the user’s untraceability. Therefore, the proposed scheme provides user anonymity and untraceability.

7.3.9. Session Key Disclosure Attack

To calculate the session key S K = h ( C 1 | | r i | | r j | | r k ) , adversary A needs to have access to the values of S I D i , S I D j , r i , r j , and r k . However, for A to discover S I D i , S I D j , they would need access to the secret key x c s and the random values n i and r k . Additionally, random values like r i , r j , r k are used temporarily and exist only within a single session. Therefore, the proposed scheme is secure against session key disclosure attacks.

7.3.10. Perfect Forward Secrecy

If the control server’s secret key x c s is compromised, adversary A may attempt to calculate the session key S K for a previous session. However, since S K = h ( C 1 | | r i | | r j | | r k ) does not contain x c s and the values of r i , r j , r k are random and cannot be deduced, A cannot perform the calculation. Furthermore, without n i through x c s , A cannot compute S I D i . Therefore, the proposed scheme ensures perfect forward secrecy.

7.3.11. Mutual Authentication

In the login and authentication phases, the messages { P I D i , B 1 , B 2 , V 1 , T S 1 } and { M 1 , B 3 , V 2 , T S 2 } included can be used by the control server to verify the legitimacy of the user and the cloud server through the transmitted V 1 and V 2 . Additionally, messages { B 6 , B 7 , B 8 , B 9 , V 3 , V 4 , T S 3 } and { B 8 , B 9 , V 4 , T S 4 } allow both the user and the cloud server to validate each other’s identity using V 3 and V 4 . Due to the unavailability of S I D i , k j values, and random values to adversaries through the open channel, the transparency of authentication is ensured. Therefore, the provided scheme offers mutual authentication.

8. Performance Analysis

8.1. Security Features Comparison

We visually compare the safety elements of the proposed scheme and related schemes [11,21,44,45,46,47,48] and record them in Table 3, which includes various types of safety elements such as “insider attack”, “impersonation attack”, “stolen verification attack”, “ESL attack”, “privileged attack”, “perfect forward secrecy”, “reply attack”, “offline password-guessing attack”, “session key disclosure”, “mutual authentication”, “DoS attack”, “user anonymity”, and “untraceability”. Ultimately, the proposed scheme offers more security features compared to Wu et al.’s scheme, and it exhibits fewer features that are either unidentified or not provided, even when compared to the schemes of other related works.

8.2. Communication Costs Comparison

We conducted a comparative analysis of communication costs between the related schemes [11,21,44,45,46,47,48] and the proposed scheme. Based on [11], we assume the bit lengths of hash function, timestamp, string, identity, random number, fuzzy extractor, and encryption operation to be 256, 32, 160, 160, 160, 8, and 256 bits, respectively. Therefore, during the MAKA phase of our proposed scheme, the exchanged message M 1 = { P I D i , B 1 , B 2 , V 1 , T S 1 } requires (160 + 160 + 160 + 256 + 32 = 768 bits), message M 2 = { M 1 , B 3 , V 2 , T S 2 } requires (768 + 160 + 256 + 32 = 1216 bits), message M 3 = { B 6 , B 7 , B 8 , B 9 , V 3 , V 4 , T S 3 } requires (160 + 160 + 160 + 160 + 256 + 256 + 32 = 1184 bits), and message M 4 = { B 8 , V 5 , T S 4 } requires (160 + 160 + 256 + 32 = 608 bits). Table 4 and Figure 8 present a summary of the communication costs for the associated schemes [11,21,44,45,46,47,48] and the proposed scheme.

8.3. Computation Costs Comparison

We conducted a comparative analysis of computation costs for the AKA phase of the proposed scheme and related schemes [11,21,44,45,46,47,48]. Based on [49], we designed the environment for computing costs. The experimental environment and the performance of operation costs, including the minimum, maximum, and average values, are summarized in Table 5. We represent hash function as T h and encryption/decryption operations of AES-256 as T e . Using these values, we conducted a comparison of computation costs as shown in Table 6 and Figure 9.
We can observe that the computational costs for users using the proposed scheme and users using Wu et al.’s scheme are the same. Next, we calculated the computational costs of the cloud server and control server for the proposed scheme and related schemes based on the environments provided in [49] as well. Table 7 represents the calculated computational costs for the proposed scheme and related schemes.
When comprehensively examining the results of the comparison with related schemes, we can elaborate as follows. Our proposed scheme offers more security elements compared to other schemes and is secure against various attacks such as insider attacks, impersonation attacks, stolen verification attacks, ESL attacks, privileged insider attacks, reply attacks, and offline password-guessing attacks. Simultaneously, it maintains reasonable user-side computation cost and communication cost suitable for the CloudIoT environment. However, it is noteworthy that to provide such robust security, additional computation operations on the server side have been introduced.

9. Conclusions

This study analyzed the key agreement protocol between cloud-enabled IoT devices and cloud servers as proposed by Wu et al. The scheme proposed by Wu et al. was found to be vulnerable to insider, privileged insiders, impersonation, and verification table leakage attacks and lacks user untraceability. In addition, it is inconvenient for users to update their passwords offline. To overcome these vulnerabilities and inconveniences, this study proposed a provably secure lightweight MAKA protocol for the cloud-based IoT environments.
The proposed protocol ensures safety against various attacks by preventing the exposure of critical parameters using user biometric information, and the cloud server’s secret key. Furthermore, user untraceability was ensured by updating the user’s pseudonym in every session and convenience was enhanced by adding an offline user password change and biometric template update phase. The safety of mutual authentication and the resulting session key was verified using the RoR model and BAN logic. Moreover, informal analysis was conducted to verify safety against attacks such as insider attacks, impersonation attacks, privileged attacks, ESL attacks, stolen verifier attacks and DoS attacks, while confirming security features such as user anonymity, untraceability, and perfect forward secrecy. The security features, communication costs, and computation costs of the proposed scheme were compared. This comparison demonstrated that the proposed scheme is rational in terms of communication and computation amounts in the cloud-based IoT environments, while being verified for safety.
In conclusion, the proposed scheme demonstrated robust safety and the ability to provide users with real-time services securely. Future research will focus on integrating the proposed scheme into real-world environments and various industrial settings where cloud-based IoT is applied.

Author Contributions

Conceptualization, S.J. and Y.P.; Methodology, S.J. and Y.P.; Formal analysis, Y.P.; Writing—original draft, S.J.; Writing—review 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 research was supported by the Bisa Research Grant of Keimyung University in 2022.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Gubbi, J.; Buyya, R.; Marusic, S.; Palaniswami, M. Internet of Things (IoT): A vision, architectural elements, and future directions. Future Gener. Comput. Syst. 2013, 29, 1645–1660. [Google Scholar] [CrossRef]
  2. Zhao, J.C.; Zhang, J.F.; Feng, Y.; Guo, J.X. The study and application of the IOT technology in agriculture. In Proceedings of the 2010 3rd International Conference on Computer Science and Information Technology, Chengdu, China, 9–11 July 2010; IEEE: Piscataway, NJ, USA, 2010; Volume 2, pp. 462–465. [Google Scholar]
  3. Park, Y.; Park, Y. Three-factor user authentication and key agreement using elliptic curve cryptosystem in wireless sensor networks. Sensors 2016, 16, 2123. [Google Scholar] [CrossRef] [PubMed]
  4. Lee, S.; Kim, S.; Yu, S.; Jho, N.; Park, Y. Provably Secure PUF-Based Lightweight Mutual Authentication Scheme for Wireless Body Area Networks. Electronics 2022, 11, 3868. [Google Scholar] [CrossRef]
  5. Park, Y.; Ryu, D.; Kwon, D.; Park, Y. Provably secure mutual authentication and key agreement scheme using PUF in internet of drones deployments. Sensors 2023, 23, 2034. [Google Scholar] [CrossRef] [PubMed]
  6. Jadeja, Y.; Modi, K. Cloud computing-concepts, architecture and challenges. In Proceedings of the 2012 International Conference on Computing, Electronics and Electrical Technologies (ICCEET), Nagercoil, India, 21–22 March 2012; IEEE: Piscataway, NJ, USA, 2012; pp. 877–880. [Google Scholar]
  7. Dinh, T.; Kim, Y.; Lee, H. A location-based interactive model of internet of things and cloud (IoT-Cloud) for mobile cloud computing applications. Sensors 2017, 17, 489. [Google Scholar] [CrossRef] [PubMed]
  8. Babu, S.M.; Lakshmi, A.J.; Rao, B.T. A study on cloud based Internet of Things: CloudIoT. In Proceedings of the 2015 Global Conference on Communication Technologies (GCCT), Thuckalay, India, 23–24 April 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 60–65. [Google Scholar]
  9. Zargar, S.; Shahidinejad, A.; Ghobaei-Arani, M. A lightweight authentication protocol for IoT-based cloud environment. Int. J. Commun. Syst. 2021, 34, e4849. [Google Scholar] [CrossRef]
  10. Kim, M.; Yu, S.; Lee, J.; Park, Y.; Park, Y. Design of secure protocol for cloud-assisted electronic health record system using blockchain. Sensors 2020, 20, 2913. [Google Scholar] [CrossRef]
  11. Wu, T.Y.; Meng, Q.; Kumari, S.; Zhang, P. Rotating behind security: A lightweight authentication protocol based on iot-enabled cloud computing environments. Sensors 2022, 22, 3858. [Google Scholar] [CrossRef]
  12. Shouqi, C.; Wanrong, L.; Liling, C.; Xin, H.; Zhiyong, J. An improved authentication protocol using smart cards for the Internet of Things. IEEE Access 2019, 7, 157284–157292. [Google Scholar] [CrossRef]
  13. Nikooghadam, M.; Jahantigh, R.; Arshad, H. A lightweight authentication and key agreement protocol preserving user anonymity. Multimed. Tools Appl. 2017, 76, 13401–13423. [Google Scholar] [CrossRef]
  14. Kumari, S.; Chaudhry, S.A.; Wu, F.; Li, X.; Farash, M.S.; Khan, M.K. An improved smart card based authentication scheme for session initiation protocol. Peer Netw. Appl. 2017, 10, 92–105. [Google Scholar] [CrossRef]
  15. Limbasiya, T.; Soni, M.; Mishra, S.K. Advanced formal authentication protocol using smart cards for network applicants. Comput. Electr. Eng. 2018, 66, 50–63. [Google Scholar] [CrossRef]
  16. Chandrakar, P.; Om, H. An extended ECC-based anonymity-preserving 3-factor remote authentication scheme usable in TMIS. Int. J. Commun. Syst. 2018, 31, e3540. [Google Scholar] [CrossRef]
  17. Sharma, G.; Kalra, S. A lightweight multi-factor secure smart card based remote user authentication scheme for cloud-IoT applications. J. Inf. Secur. Appl. 2018, 42, 95–106. [Google Scholar] [CrossRef]
  18. Gope, P.; Sikdar, B. Lightweight and privacy-preserving two-factor authentication scheme for IoT devices. IEEE Internet Things J. 2018, 6, 580–589. [Google Scholar] [CrossRef]
  19. Siddiqui, Z.; Gao, J.; Khan, M.K. An improved lightweight PUF–PKI digital certificate authentication scheme for the Internet of Things. IEEE Internet Things J. 2022, 9, 19744–19756. [Google Scholar] [CrossRef]
  20. Zhou, L.; Li, X.; Yeh, K.H.; Su, C.; Chiu, W. Lightweight IoT-based authentication scheme in cloud computing circumstance. Future Gener. Comput. Syst. 2019, 91, 244–251. [Google Scholar] [CrossRef]
  21. Martínez-Peláez, R.; Toral-Cruz, H.; Parra-Michel, J.R.; García, V.; Mena, L.J.; Félix, V.G.; Ochoa-Brust, A. An enhanced lightweight IoT-based authentication scheme in cloud computing circumstances. Sensors 2019, 19, 2098. [Google Scholar] [CrossRef]
  22. Alzahrani, B.A.; Chaudhry, S.A.; Barnawi, A.; Al-Barakati, A.; Shon, T. An anonymous device to device authentication protocol using ECC and self certified public keys usable in Internet of Things based autonomous devices. Electronics 2020, 9, 520. [Google Scholar] [CrossRef]
  23. Islam, S.H.; Biswas, G. Design of two-party authenticated key agreement protocol based on ECC and self-certified public keys. Wirel. Pers. Commun. 2015, 82, 2727–2750. [Google Scholar] [CrossRef]
  24. Mandal, S.; Mohanty, S.; Majhi, B. Cryptanalysis and enhancement of an anonymous self-certified key exchange protocol. Wirel. Pers. Commun. 2018, 99, 863–891. [Google Scholar] [CrossRef]
  25. Chen, Y.; López, L.; Martínez, J.F.; Castillejo, P. A lightweight privacy protection user authentication and key agreement scheme tailored for the Internet of Things environment: LightPriAuth. J. Sensors 2018, 2018, 7574238. [Google Scholar] [CrossRef]
  26. 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]
  27. Yu, Y.; Hu, L.; Chu, J. A secure authentication and key agreement scheme for IoT-based cloud computing environment. Symmetry 2020, 12, 150. [Google Scholar] [CrossRef]
  28. He, D.; Zeadally, S.; Kumar, N.; Wu, W. Efficient and anonymous mobile user authentication protocol using self-certified public key cryptography for multi-server architectures. IEEE Trans. Inf. Forensics Secur. 2016, 11, 2052–2064. [Google Scholar] [CrossRef]
  29. Tsai, J.L.; Lo, N.W. A privacy-aware authentication scheme for distributed mobile cloud computing services. IEEE Syst. J. 2015, 9, 805–815. [Google Scholar] [CrossRef]
  30. Kumari, A.; Kumar, V.; Abbasi, M.Y.; Kumari, S.; Chaudhary, P.; Chen, C.M. Csef: Cloud-based secure and efficient framework for smart medical system using ecc. IEEE Access 2020, 8, 107838–107852. [Google Scholar] [CrossRef]
  31. Bhuarya, P.; Chandrakar, P.; Ali, R.; Sharaff, A. An enhanced authentication scheme for Internet of Things and cloud based on elliptic curve cryptography. Int. J. Commun. Syst. 2021, 34, e4834. [Google Scholar] [CrossRef]
  32. Dolev, D.; Yao, A. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
  33. Canetti, R.; Krawczyk, H. Universally composable notions of key exchange and secure channels. In Proceedings of the Advances in Cryptology—EUROCRYPT 2002: International Conference on the Theory and Applications of Cryptographic Techniques, Amsterdam, The Netherlands, 28 April–2 May 2002; Springer: Berlin/Heidelberg, Germany, 2002; pp. 337–351. [Google Scholar]
  34. Abdalla, M.; Fouque, P.A.; Pointcheval, D. Password-based authenticated key exchange in the three-party setting. In Proceedings of the Public Key Cryptography-PKC 2005: 8th International Workshop on Theory and Practice in Public Key Cryptography, Les Diablerets, Switzerland, 23–26 January 2005; Springer: Berlin/Heidelberg, Germany, 2005; pp. 65–84. [Google Scholar]
  35. 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]
  36. Kwon, D.K.; Yu, S.J.; Lee, J.Y.; Son, S.H.; Park, Y.H. WSN-SLAP: Secure and lightweight mutual authentication protocol for wireless sensor networks. Sensors 2021, 21, 936. [Google Scholar] [CrossRef]
  37. Yu, S.; Lee, J.; Sutrala, A.K.; Das, A.K.; Park, Y. LAKA-UAV: Lightweight authentication and key agreement scheme for cloud-assisted Unmanned Aerial Vehicle using blockchain in flying ad hoc networks. Comput. Netw. 2023, 224, 109612. [Google Scholar] [CrossRef]
  38. Kim, M.; Lee, J.; Oh, J.; Kwon, D.; Park, K.; Park, Y.; Park, K.H. A Secure Batch Authentication Scheme for Multiaccess Edge Computing in 5G-Enabled Intelligent Transportation System. IEEE Access 2022, 10, 96224–96238. [Google Scholar] [CrossRef]
  39. Boyko, V.; MacKenzie, P.; Patel, S. Provably secure password-authenticated key exchange using Diffie-Hellman. In Proceedings of the Advances in Cryptology—EUROCRYPT 2000: International Conference on the Theory and Application of Cryptographic Techniques, Bruges, Belgium, 14–18 May 2000; Proceedings 19. Springer: Berlin/Heidelberg, Germany, 2000; pp. 156–171. [Google Scholar]
  40. Burrows, M.; Abadi, M.; Needham, R. A logic of authentication. ACM Trans. Comput. Syst. (TOCS) 1990, 8, 18–36. [Google Scholar] [CrossRef]
  41. Kwon, D.; Son, S.; Park, Y.; Kim, H.; Park, Y.; Lee, S.; Jeon, Y. Design of secure handover authentication scheme for urban air mobility environments. IEEE Access 2022, 10, 42529–42541. [Google Scholar] [CrossRef]
  42. Son, S.; Kwon, D.; Lee, S.; Jeon, Y.; Das, A.K.; Park, Y. Design of Secure and Lightweight Authentication Scheme for UAV-Enabled Intelligent Transportation Systems using Blockchain and PUF. IEEE Access 2023, 11, 60240–60253. [Google Scholar] [CrossRef]
  43. Cho, Y.; Oh, J.; Kwon, D.; Son, S.; Yu, S.; Park, Y.; Park, Y. A secure three-factor authentication protocol for e-governance system based on multiserver environments. IEEE Access 2022, 10, 74351–74365. [Google Scholar] [CrossRef]
  44. Wu, H.L.; Chang, C.C.; Zheng, Y.Z.; Chen, L.S.; Chen, C.C. A secure IoT-based authentication system in cloud computing environment. Sensors 2020, 20, 5604. [Google Scholar] [CrossRef]
  45. Kang, B.; Han, Y.; Qian, K.; Du, J. Analysis and improvement on an authentication protocol for IoT-enabled devices in distributed cloud computing environment. Math. Probl. Eng. 2020. [Google Scholar] [CrossRef]
  46. Huang, H.; Lu, S.; Wu, Z.; Wei, Q. An efficient authentication and key agreement protocol for IoT-enabled devices in distributed cloud computing architecture. EURASIP J. Wirel. Commun. Netw. 2021, 2021, 150. [Google Scholar] [CrossRef]
  47. Alam, I.; Kumar, M. A novel protocol for efficient authentication in cloud-based IoT devices. Multimed. Tools Appl. 2022, 81, 13823–13843. [Google Scholar] [CrossRef]
  48. Wu, T.Y.; Kong, F.; Meng, Q.; Kumari, S.; Chen, C.M. Rotating behind security: An enhanced authentication protocol for IoT-enabled devices in distributed cloud computing architecture. EURASIP J. Wirel. Commun. Netw. 2023, 2023, 36. [Google Scholar] [CrossRef]
  49. Park, K.; Park, Y. IAKA-CIOT: An improved authentication and key agreement scheme for cloud enabled internet of things using physical unclonable function. Sensors 2022, 22, 6264. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Cloud-based IoT enviroment.
Figure 1. Cloud-based IoT enviroment.
Sensors 23 09766 g001
Figure 2. System model.
Figure 2. System model.
Sensors 23 09766 g002
Figure 3. AKA phase of Wu et al.’s scheme.
Figure 3. AKA phase of Wu et al.’s scheme.
Sensors 23 09766 g003
Figure 4. User registration phase of proposed scheme.
Figure 4. User registration phase of proposed scheme.
Sensors 23 09766 g004
Figure 5. Cloud server registration phase of proposed scheme.
Figure 5. Cloud server registration phase of proposed scheme.
Sensors 23 09766 g005
Figure 6. AKA phase of proposed scheme.
Figure 6. AKA phase of proposed scheme.
Sensors 23 09766 g006
Figure 7. Offline password and biometric template update of proposed scheme.
Figure 7. Offline password and biometric template update of proposed scheme.
Sensors 23 09766 g007
Figure 8. Communication costs comparison [7,11,17,21,40,41,42,43,44,45,46,47,48].
Figure 8. Communication costs comparison [7,11,17,21,40,41,42,43,44,45,46,47,48].
Sensors 23 09766 g008
Figure 9. Computation costs comparison on user side devices [7,11,17,21,40,41,42,43,44,45,46,47,48].
Figure 9. Computation costs comparison on user side devices [7,11,17,21,40,41,42,43,44,45,46,47,48].
Sensors 23 09766 g009
Table 1. Authentication scheme overview.
Table 1. Authentication scheme overview.
SchemesCryptographic TechnologiesLimitaion
Islam-Biswas [23]- ECC
- Self-certified public keys
- Cannot provide anonymity
- Vulnerable to reply and clogging attacks
He et al. [28]- Asymmetric cryptography- Vulnerable to insider attacks, offline password-guessing, user impersonation attacks, and DoS attacks
Chen at al. [25]- XOR operation
- Hash function
- Elliptic multiplication
- Vulnerable to stolen smartcard, offline password-guessing, offline identity guessing, and reply attacks
Prosanta-Biplab [18]- PUF
- Fuzzy extractor
-Vulnerable to man-in-the-middle attacks, impersonation attacks, session key hijaking, conventional and differential template attacks
Zhou et al. [20]- XOR operation
- Hash function
- Cannot provide mutual authentication
- Vulnerable to insider attacks and man-in-the-middle attacks
Nikooghadam et al. [13]- XOR operation
- Hash function
- Vulnerable to reply attacks, privileged insider attacks, offline password-guessing, known key temporary imformation attacks, server spoofing attacks and impersonation attcks
Tsai-Lo [29]- Single Sign On scheme- Cannot provide sesssion key security, mutual authentication, and user anonymity
- Vulnerable to impersonation attacks
Kumari et al. [30]- Hash function
- Diffie-Hellman
- Cannot provide user unlinkability and anonymity, data confidentiality
- Vulnerable to known session-specific temporary information attacks, impersonation attacks, and desynchronization attacks
Bhuarya et al. [31]- ECC- Cannot provide mutual authentication
- Vulnerable to impersonation attacks and man-in-the-middle attacks
Table 2. Basic notations and decriptions.
Table 2. Basic notations and decriptions.
NotationDescription
A i , A j Principals
S K Session key
T 1 , T 2 Statements
A i |     T 1 A i  believes  T 1
A 1 |     T 1 A i  once said  T 1
A i     T 1 A i  controls  T 1
A i     T 1 A i  receives  T 1
# T 1 T 1  is fresh
{ T 1 } S T 1  is encrypted with S
A i S H A j A i  and  A j have a shared key S H
Table 3. Security and functionality features(SFF) comparison.
Table 3. Security and functionality features(SFF) comparison.
SFF[21][44][45][46][47][48][11]Proposed
SP1 Δ Δ ×
SP2×××
SP3 Δ Δ Δ ×
SP4 Δ ×
SP5 Δ ××
SP6 Δ Δ
SP7× Δ
SP8× Δ
SP9×× Δ Δ ×
SP10× Δ
SP11 Δ Δ Δ
SP12×
SP13 Δ×
Note: SP1: insider attack; SP2: impersonation attack; SP3: stolen verification attack; SP4: ESL attack; SP5: privileged insider attack; SP6: perfect forward secrecy; SP7: reply attack; SP8 offline password-guessing attack SP9: session key disclosure; SP10: mutual authentication; SP11: DoS attack; SP12: user anonymity; SP13: untraceability; ✓: provides safety/functional features; ×: does not provides safety/functional features; Δ: not verified.
Table 4. Comparison analysis of communication costs.
Table 4. Comparison analysis of communication costs.
SchemeTotal Cost (bits)Number of Messages
Martinez-Pelaez et al. [21]4608 bits6
Wu et al. (2020) [44]4416 bits5
Kang et al. [45]4320 bits4
Huang et al. [46]3232 bits4
Alam-Kumar [47]2912 bits4
Wu et al. (2023) [48]3360 bits4
Wu el al. [11]4001 bits5
Proposed3776 bits4
Table 5. Hardware software enviroment and operation costs.
Table 5. Hardware software enviroment and operation costs.
Hardware/SoftwareOperationMaxMinAverage
Raspberry PI 4B with Linux Ubuntu 18.04.4 LTS
with 64-bits, 8 GB, and MIRACL library
Hash function T h 0.142 ms0.022 ms0.051 ms
AES-256 T e 0.021 ms0.011 ms0.012 ms
Table 6. Comparison analysis of user side computation costs.
Table 6. Comparison analysis of user side computation costs.
ProtocolUser SideMaxMinAverage
[21] 7 T h + 3 T e ≈1.057 ms≈0.187 ms≈0.393 ms
[44] 12 T h ≈1.704 ms≈0.264 ms≈0.612 ms
[45] 8 T h ≈1.136 ms≈0.176 ms≈0.408 ms
[46] 8 T h ≈1.136 ms≈0.176 ms≈0.408 ms
[47] 8 T h ≈1.136 ms≈0.176 ms≈0.408 ms
[48] 10 T h ≈1.42 ms≈0.22 ms≈0.51 ms
[11] 10 T h ≈1.42 ms≈0.22 ms≈0.51 ms
Proposed 10 T h ≈1.42 ms≈0.22 ms≈0.51 ms
Table 7. Comparison analysis of cloud server side control server side computation costs.
Table 7. Comparison analysis of cloud server side control server side computation costs.
SchemeCloud ServerControl ServerTotal Average (ms)
[21] 5 T h + 3 T e 21 T h + 2 T e ≈1.386 ms
[44] 8 T h 19 T h ≈1.377 ms
[45] 4 T h 11 T h ≈0.765 ms
[46] 4 T h 10 T h ≈0.714 ms
[47] 3 T h 6 T h ≈0.459 ms
[48] 5 T h 12 T h ≈0.867 ms
[11] 5 T h 13 T h ≈0.918 ms
Proposed 6 T h 16 T h ≈1.122 ms
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

Ju, S.; Park, Y. Provably Secure Lightweight Mutual Authentication and Key Agreement Scheme for Cloud-Based IoT Environments. Sensors 2023, 23, 9766. https://doi.org/10.3390/s23249766

AMA Style

Ju S, Park Y. Provably Secure Lightweight Mutual Authentication and Key Agreement Scheme for Cloud-Based IoT Environments. Sensors. 2023; 23(24):9766. https://doi.org/10.3390/s23249766

Chicago/Turabian Style

Ju, Sieun, and Yohan Park. 2023. "Provably Secure Lightweight Mutual Authentication and Key Agreement Scheme for Cloud-Based IoT Environments" Sensors 23, no. 24: 9766. https://doi.org/10.3390/s23249766

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