Next Article in Journal
MAC Protocols for mmWave Communication: A Comparative Survey
Next Article in Special Issue
Toward Smart Home Authentication Using PUF and Edge-Computing Paradigm
Previous Article in Journal
A Review on Coupled Bulk Acoustic Wave MEMS Resonators
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Rotating behind Security: A Lightweight Authentication Protocol Based on IoT-Enabled Cloud Computing Environments

1
College of Computer Science and Engineering, Shandong University of Science and Technology, Qingdao 266590, China
2
Department of Mathematics, Chaudhary Charan Singh University, Meerut 250004, India
*
Author to whom correspondence should be addressed.
Submission received: 8 April 2022 / Revised: 9 May 2022 / Accepted: 16 May 2022 / Published: 19 May 2022
(This article belongs to the Special Issue Physical Security for Devices of the Internet of Things)

Abstract

:
With the rapid development of technology based on the Internet of Things (IoT), numerous IoT devices are being used on a daily basis. The rise in cloud computing plays a crucial role in solving the resource constraints of IoT devices and in promoting resource sharing, whereby users can access IoT services provided in various environments. However, this complex and open wireless network environment poses security and privacy challenges. Therefore, designing a secure authentication protocol is crucial to protecting user privacy in IoT services. In this paper, a lightweight authentication protocol was designed for IoT-enabled cloud computing environments. A real or random model, and the automatic verification tool ProVerif were used to conduct a formal security analysis. Its security was further proved through an informal analysis. Finally, through security and performance comparisons, our protocol was confirmed to be relatively secure and to display a good performance.

1. Introduction

The Internet of things (IoT) [1,2,3,4] is the “Internet connected by all things”. It is the combination of networks and various sensing devices and compose a huge network that can interconnect users and everything whenever and wherever. The emergence of IoT has driven the development of many industries, such as transportation, agriculture, medical treatment, and artificial intelligence [5,6,7]. It has since made significant advancements and can connect various devices with limited resources, and massive amounts of data can be shared through the Internet.
Cloud computing [8,9] can connect a large number of resources, such as computation, software, and storage resources, to compose a large virtually shared resource pool [10]. Its core idea is to continuously lower the processing load of user terminals by increasing the processing capacity of the “cloud”, allowing users to exploit the “cloud’s” strong computing processing capacity on demand. With cloud computing, users can access applications on any device that can connect to the Internet [11]. The progress of cloud computing technology has penetrated all aspects of people’s lives and significantly increased the level of convenience during daily life.
In real life, the resource, computing, and communication capabilities of IoT devices are limited. To address these limitations, cloud computing, as a key technology, provides an efficient platform for effectively analyzing, managing, and storing the data generated by IoT devices. Mobile devices allow users to access the cloud server resources at any time from any location. Figure 1 shows the architecture of IoT-enabled cloud computing. This architecture has three entities: control server, user, and cloud server. The cloud server provides the services requested by users conveyed through user IoT devices. The control server is a trusted organization that authorizes users and the cloud server and creates system parameters during the registration phase. In addition, when users intend to obtain the cloud server service, the control server monitors the authentication process, and with help from the control server, the three parties can consult a session key, which the user uses to obtain and enjoy the service of the cloud server.

Motivation

In IoT-enabled cloud computing environments [12,13,14,15], information is transmitted to the public channel, which is open and unprotected, and users are vulnerable to attackers when obtaining services, resulting in privacy data disclosure issues. Therefore, when users want to obtain cloud services, they must complete identity authentication and establish a key to protect the information from disclosure and tampering. At present, some scholars also use quick response (QR) codes [16] to solve these problems. Many scholars proposed authentication protocols [13,17,18,19] for this environment. However, these protocols typically have security problems, such as an inability to provide perfect forward security, suffering from man-in-the-middle (MITM) and temporary value disclosure attacks. In addition, the power of IoT devices is limited, and reducing the calculation of such devices is necessary.
In this paper, we designed a lightweight authentication protocol to solve the above problems. Both formal and informal security analyses were conducted to verify the security of our protocol. Through security and performance comparisons, our protocol demonstrated a good performance and satisfied the security requirements in IoT-enabled cloud computing environments.
The remainder of this paper is organzed as follows. Section 2 discusses related work. Section 3 presents our protocol in detail. Section 4 introduces a safety analysis. Section 5 presents some security and performance comparisons, and Section 6 presents our conclusions.

2. Related Work

This section reviews authentication and key agreement (AKA) protocols [13,17,18,19,20,21,22,23,24,25,26] applied in IoT, cloud computing, and IoT-enabled cloud computing environments. A summary of existing protocols is shown in Table 1. Turkanovic et al. [22] designed an AKA scheme for IoT environments, which are dedicated to the identity authentication of users in wireless sensor networks. However, Wazid et al. [23] testified that Turkanovic et al.’s scheme [22] was unable to prevent insider and user impersonation attacks. Subsequently, Wu et al. [24] designed an AKA protocol and declared that it could prevent many common attacks. Unfortunately, Sadri et al. [27] indicated that Wu et al.’s protocol was unable to resist sensor capture and denial of service attacks (DoS) and was, thus, unable to provide perfect forward security.
Tsai and Lo [25] designed an anonymous AKA scheme for cloud computing environments. They use bilinear pairing to design the scheme, and without the assistance of a control server, users can directly obtain the services of the distributed cloud server. However, He et al. [28] proved that their scheme cannot resist server impersonation attacks. Irshad et al. [26] designed an AKA scheme using a bilinear pairing method. Unfortunately, Xiong et al. [29] verified that Irshad et al.’s [26] lacked user registration and revocation phases. Xiong et al. [29] designed an enhanced scheme and claimed that it can prevent many common attacks.
Amin et al. [13] also designed a protocol applicable to distributed cloud computing environments. However, Challa et al. [30] testified that their protocol cannot prevent insider and impersonation attacks. Martinez et al. [17] designed a lightweight AKA scheme for cloud computing environments. Unfortunately, Yu et al. [31] determined that the scheme cannot prevent impersonation and session key exposure attacks or achieve mutual authentication. Zhou et al. [18] proposed a lightweight AKA scheme. However, Wang et al. [32] proved that their protocol cannot provide perfect forward security and cannot prevent replay, impersonation, and temporary value disclosure attacks. Kang et al. [19] designed a protocol suitable for IoT-enabled cloud computing environments, which supports the authentication of IoT devices. However, Huang et al. [33] verified that it was unable to resist offline password-guessing attacks.

3. The Proposed Protocol

This section introduces our protocol. It includes three phases: (1) user registration, (2) cloud server registration, and (3) login and authentication. The following subsections describe each in detail. Table 2 lists the symbols used in the protocol.

3.1. System Model

Our IoT-enabled cloud computing model includes three entities, namely user, cloud server, and control server. The information exchange between each entity is shown in Figure 2.
(1)
User: The user can use IoT devices to obtain cloud server services. We allow the user to be an untrusted entity, which means that they may be a legitimate user but may obtain services or launch attacks maliciously.
(2)
Cloud server: The cloud server provides the services requested by users conveyed through user IoT devices. It is a semi-trusted entity, in the sense that it may misbehave on its own but does not conspire with either of the participants.
(3)
Control server: The control server is responsible for registering users and cloud server, assisting users and cloud server in completing authentication and in establishing a session key in the login and authentication phase. It is a semi-trusted entity, in the sense that it may misbehave on its own but does not conspire with either of the participants.
The purpose of our protocol is to realize mutual authentication and to establish a session key between the user and cloud server with the help of the control server. Figure 2 shows the exchange of information. The specific process is referred to in Section 3.4 (Login and Authentication Phase).

3.2. User Registration Phase

At this phase, U i registers with C S as a legal user. The user transmits the parameters calculated by themselves to C S via a secure channel and finally obtains the smart card issued by C S . Figure 3 detail the process. The specific process is as follows:
(1)
U i chooses I D i , P W i , and B i ; calculates G e n ( B i ) = ( σ i , τ i ) and H P W i = h ( P W i σ i ) ; and then sends { I D i , H P W i } to control server C S through a secure channel.
(2)
C S checks U i ’s identity. If the identity is new, C S selects a random value n i and computes T I D i = h ( I D i ) , A 1 = h ( I D C S H P W i ) ( n i K j ) , stores { T I D i , H P W i } in the database, stores { A 1 , I D C S } in smart card S C , and then sends S C to U i through a secure channel.
(3)
After receiving message { A 1 , I D C S } sent by C S , U i calculates A 2 = h ( I D i H P W i ) and then stores { A 2 , G e n ( · ) , R e p ( · ) , τ i } in S C .

3.3. Cloud Server Registration Phase

At this phase, cloud server S j needs to register with C S as a legal entity. It sends its own parameters to C S via a secure channel, obtains the parameters calculated by the C S , and stores them in its own memory. Figure 4 shows specific the process. The specific process is as follows:
(1)
S j selects its identity S I D j and random number n j and then sends { S I D j , n j } to C S through a secure channel.
(2)
C S checks the identity of S j . If S j is unregistered, then C S selects a pseudo identity Q I D j for S j , calculates A 3 = h ( S I D j K j n j ) , and stores { Q I D j , n j } in its memory. Then, C S sends { Q I D j , A 3 } to S j through a secure channel.
(3)
S j calculates A 3 * = A 3 S I D j and stores { A 3 * , Q I D j } in its memory.

3.4. Login and Authentication Phase

At this phase, the control server C S verifies the identity of the user U i and cloud server S j . After verification, the three establish a common session key for future communication. The specific process is shown in the Figure 5. The specific process is as follows:
(1)
U i inputs I D i and P W i ; imprints B i ; computes 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 ) ; and checks the legitimacy of U i ’s identity by verifying A 2 = ? A 2 . If this is valid, U i then chooses a random value r i and timestamp T S 1 and computes ( 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 . Subsequently, M 1 = { T I D i , A 1 , B 1 , B 2 , B 3 , T S 1 } is sent to S j through an open channel.
(2)
After receiving U i ’s message, S j checks timestamp | T S 1 T S c | Δ T . If the timestamp is valid, S j then selects a random number r j and timestamp T S 2 . S j calculates 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 ) and then sends message M 2 = { M 1 , Q I D j , B 4 , B 5 , T S 2 } to C S through an open channel.
(3)
After receiving M 2 , C S checks timestamp | T S 2 T S c | Δ T . If the verification passes, C S finds H P W i according to T I D i ; computes 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 verifies U i ’s identity by checking B 3 = ? B 3 . If valid, C S then indexes n j according to the value of Q I D j ; computes 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 ) ; and checks B 5 = ? B 5 . If valid, C S 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 ) and sends message M 3 = { B 6 , B 7 , B 8 , B 9 , B 10 , B 11 , T S 3 } to S j through an open channel.
(4)
After receiving M 3 , the cloud server checks the timestamp | T S 3 T S c | Δ T . If the timestamp is valid, S j then computes ( 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 checks B 8 = ? B 8 . If true, S j sends message M 4 = { B 9 , B 10 , T S 4 } to U i through an open channel.
(5)
U i checks timestamp | T S 4 T S c | Δ T . If the verification passes, U i then computes 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 checks B 11 = ? B 11 . If the verification passes, U i then computes B 12 = h ( S K r j ) and sends M 5 = { B 12 } to S j .
(6)
S j computes B 12 = h ( S K r j ) and checks B 12 = ? B 12 . If the verification passes, then S j stores S K for future communication.

4. Security Analysis

This section presents an informal security analysis and describes a formal analysis using ProVerif and the real or random (ROR) model. The subsections introduce these topics.

4.1. Attacker Model

We define the attacker’s ability based on the C-K model [35], which is an extension of the D-Y model [36]. The following features of an attacker A are defined:
(1)
A is assumed to be capable of blocking, modifying, and eavesdropping on messages transmitted on the open channel. It has complete control over communications between the various participants.
(2)
A can be a malicious insider on the control server and can obtain the content stored in the control server by the user or cloud server.
(3)
A can disclose the established session key, long-term key, and session state.
(4)
A can guess the user’s password or identity, but A is unable to guess the user’s identity or password simultaneously in polynomial time.
(5)
A may extract the information of a user’s S C using power analysis.

4.2. Formal Security Analysis

We use the ROR model and the automated verification tool ProVerif to conduct a formal security analysis to testify that the protocol is secure and correct.

4.2.1. ROR Model

The protocol security is demonstrated using the ROR model [4,37]. The security is verified by calculating the probability of session key S K .
The protocol comprises three parties: user, cloud server, and control server. In this model, Π U i x , Π s j y , and Π C S z are the xth user, yth cloud server, and zth control server, respectively. Suppose attacker A ’s query capabilities include the following: Z = Π U i x , Π S j y , and Π C S z .
E x e c u t e ( Z ) : Assuming an attacker A executes the query, they can capture messages on the open channel.
S e n d ( Z , M ) : Assuming an attacker A executes the query, they transfer M to Z and receive an answer from Z.
H a s h ( s t r i n g ) : Suppose an attacker A executes the query; they enter a string and obtain a hash value.
C o r r u p t ( Z ) : Assuming an attacker A executes the query, they obtain the private value of an entity, for example, a long-term key and temporary information of the user’s S C .
T e s t ( Z ) : Assume that an attacker A executes the query and tosses a coin C into the air. If C equals 1, A obtains S K . Otherwise, A obtains a string.
Theorem 1.
If A executes queries E x e c u t e ( Z ) , S e n d ( Z , M ) , H a s h ( s t r i n g ) , C o r r u p t ( Z ) , and T e s t ( Z ) , the probability P of A cracking the protocol is A d v A P ( ξ ) q s e n d / 2 l 2 + 3 q h a s h 2 / 2 l 1 + 2 m a x { c · q s e n d s , q s e n d / 2 l } . Here, q s e n d refers to the numbers of times the queries executed, q h a s h is the execution time of the hash function, l is the bit length of biological information [38], and c and s are two constants.
Proof. 
The ROR model played G M 0 , G M 1 , G M 2 , G M 3 , G M 4 . S u c c A G M i ( ξ ) is the probability that A can win G M 0 G M 4 . The following are the specific query steps in the game: G M 0 : G M 0 represents the first round of the game, which starts by flipping C. G M 0 cannot execute any queries; hence, the probability that A can break P is as follows:
A d v A P ( ξ ) = | 2 P r [ S u c c A G M 0 ( ξ ) ] 1 | .
G M 1 : G M 1 is for the G M 0 -added E x e c u t e ( Z ) operation, and A can be used only when G M 1 intercepts the messages M 1 M 5 transmitted over the open channel. Then, because the values of H P W i , r i , r j , r k and S I D j cannot be obtained, A cannot obtain the session key through the T e s t ( Z ) query. Thus, G M 1 ’s probability is the same as G M 0 .
P r [ S u c c A G M 1 ( ξ ) ] = P r [ S u c c A G M 0 ( ξ ) ] .
G M 2 : G M 2 extends G M 1 by adding the S e n d ( Z , M ) query. The probability of G M 2 is calculated using Zipf’s law [39].
| P r [ S u c c A G M 2 ( ξ ) ] P r [ S u c c A G M 1 ( ξ ) ] | q s e n d / 2 l .
G M 3 : G M 3 is for the G M 2 -added H a s h ( s t r i n g ) operation and deleted S e n d ( Z , M ) operation. G M 3 ’s probability can be obtained using the birthday paradox.
| P r [ S u c c A G M 3 ( ξ ) ] P r [ S u c c A G M 2 ( ξ ) ] | q h a s h 2 / 2 l + 1 .
G M 4 : In G M 4 , a security analysis on two events is conducted to testify the security of the session key. (1) A obtains C S ’s long-term key x; (2) A obtains the temporary information. This demonstrates that our protocol can guarantee perfect forward security and prevent temporary information disclosure attacks.
(1)
Perfect forward security: A with Π C S Z to obtain x of C S or use Π U i x , Π S j y to obtain private values.
(2)
Temporary information disclosure attack: A utilizes Π U i x , Π S j y or Π C S Z to obtain the random number of three entities.
For the first case, even if A obtains x or some private values, they cannot calculate H P W i , r i , r j , r k , or S I D j . Therefore, A cannot calculate S K , where S K = h ( r i H P W i r j r k S I D j ) . For the second case, even if A obtains r i but H P W i , r j , r k and S I D j are private, S K is incalculable. Similarly, even if A can obtain r j or r k , S K is also incalculable. Thus, the probability of G M 4 is obtained:
| P r [ S u c c A G M 4 ( ξ ) ] P r [ S u c c A G M 3 ( ξ ) ] | q s e n d / 2 l + q h a s h 2 / 2 l + 1 .
G M 5 : In G M 5 , A queries the parameters { A 1 , A 2 , I D C S , G e n ( · ) , R e p ( · ) , τ i } in the smart card by executing C o r r u p t ( Z ) . This proves that our protocol can protect against offline password-guessing attacks. A attempts to guess A 2 = h ( I D i H P W i ) , where H P W i = h ( P W i τ i ) . However, I D i and H P W i are private. The probability that A can guesses l bit of biological information is 1 / 2 l . From Zipf’s law [39], when q s e n d 106 , the probability that A can guess the password is more than 1 / 2 . Thus, the probability of G M 5 can be obtained:
| P r [ S u c c A G M 5 ( ξ ) ] P r [ S u c c A G M 4 ( ξ ) ] | m a x { C · q s e n d s , q s e n d / 2 l }
G M 6 : G M 6 confirms that the protocol can prevent impersonation attacks. A queries h ( r i H P W i r j r k S I D j ) , and the game ends. Therefore, the probability of G M 6 can be obtained:
| P r [ S u c c A G M 6 ( ξ ) ] P r [ S u c c A G M 5 ( ξ ) ] | q h a s h 2 / 2 l + 1 .
Because A ’s probability of success is the same as that of failure (i.e., (1)–(2)), A ’s probability of obtaining the session key is
P r [ S u c c A G M 6 ( ξ ) ] = 1 / 2 .
From all these formulas,
1 / 2 A d v A P ( ξ ) = | P r [ S u c c A G M 0 ( ξ ) ] 1 / 2 | = | P r [ S u c c A G M 0 ( ξ ) ] P r [ S u c c A G M 6 ( ξ ) ] | = | P r [ S u c c A G M 1 ( ξ ) ] P r [ S u c c A G M 6 ( ξ ) ] | i = 0 5 | P r [ S u c c A G M i + 1 ( ξ ) ] P r [ S u c c A G M i ( ξ ) ] | = q s e n d / 2 l 1 + 3 q h a s h 2 / 2 l + m a x { c · q s e n d s , q s e n d / 2 l }
Consequently, we obtain
A d v A P ( ξ ) q s e n d / 2 l 2 + 3 q h a s h 2 / 2 l 1 + 2 m a x { c · q s e n d s , q s e n d / 2 l } .
 □

4.2.2. ProVerif

ProVerif [40,41] is a powerful and appropriate tool for analyzing and verifying protocol security. We use it to verify our protocol’s security.
(1)
Some functions and queries are also defined, as shown in Figure 6a,b.
(2)
Figure 6c shows the defined events and queries. Among them, we define eight queries. The first three queries prove the session key’s security, while the other five queries prove the protocol’s correctness. In addition, we also defined eight events. Event UserStarted() indicates that U i begins authentication, event UserAuthed() indicates that U i successfully authenticated, event ControlServerAcUser() represents C S authenticating U i successfully, event ControlServerAcCloudServer() represents C S authenticating S j successfully, event CloudServerAcControlServer() indicates that S j successfully authenticates C S , event UserAcControlServer() represents U i authenticating C S successfully, event UserAcCloudServer() represents U i authenticating S j successfully, and event CloudServerAcUser() represents C S authenticating U i successfully.
(3)
Figure 7a–c shows U i ’s, S j ’s, and C S ’s processes, respectively. Finally, Figure 8 presents the results. The first three results demonstrate that attackers cannot obtain S K , and the last five outcomes demonstrate that the protocol is correct and reasonable. Therefore, our protocol can successfully pass the verification of ProVerif and prevent common attacks.

4.3. Informal Security Analysis

In this subsection, an informal analysis is adopted to demonstrate the common security requirements of the proposed protocol.

4.3.1. Man-in-the-Middle Attacks

A computes S K by intercepting messages on the open channel. Let us suppose that message M 1 is intercepted and A attempts to calculate S K = h ( r i H P W i r j r k S I D j ) but they cannot obtain the values of I D C S , H P W i , S I D j . Therefore, A cannot use the message { B 1 , B 2 , B 4 , B 7 } on the open channel to calculate r i , r j , r k , B 3 , B 5 ; change any values; or successfully pass the authentication of C S ; thus, they cannot successfully calculate S K . Consequently, the proposed protocol can guard against MITM attacks.

4.3.2. Insider Attacks

Case one: Assume that a malicious attacker A obtains { Q I D j , n j , T I D i , H P W i } stored in the C S database. They use the message on the open channel to compute r i = B 1 h ( I D C S H P W i S I D j ) . However, A cannot obtain the values of I D C S , S I D j , and thus, r i cannot be calculated. Similarly, because A cannot obtain the values of A 3 , S I D j , A cannot calculate r j = B 4 h ( A 3 S I D j ) and r k = h ( H P W i r i ) B 10 . Therefore, the session key cannot be computed using A . Therefore, our protocol can prevent insider attacks.
Case two: Assume that the attacker A is an insider of the cloud server and obtains the information A 3 * , Q I D j stored in it. They then try to intercept the information on the open channel and to calculate the session key S K = h ( r i H P W i r j r k S I D j ) . They intercepted B 4 and tried to calculate r j = B 4 h ( A 3 S I D j ) but cannot calculate the value of A 3 and thus cannot obtain the value of r j . Similarly, A attempts to intercept B 6 and B 7 to calculate ( r i H P W i ) = B 6 A 3 , and r k = h ( A 3 r j S I D j ) B 7 . However, they cannot obtain the value of A 3 and thus cannot calculate ( r i H P W i ) and r k , so they cannot successfully calculate S K .
By analyzing these two situations, we can prove that our protocol can resist insider attacks.

4.3.3. DDoS Attacks

During the login and authentication phase, U i sends service request message M 1 = { T I D i , A 1 , B 1 , B 2 , B 3 , T S 1 } to S j . After S j receives M 1 , whether the timestamp is valid is checked first. If the timestamp is valid, S j performs the following calculation. Therefore, if attacker A wants to launch DDoS attacks, it must be within a valid time, and it is not possible in this protocol to deny a service only by sending a huge service request. Therefore, the protocol is immune to this attack.

4.3.4. Masquerading Attacks

Case one: Attacker A attempts to impersonate any legitimate user, cloud server, or control server. Suppose that A obtains the information { Q I D j , n j , T I D i , H P W i } stored in C S and intercepts the messages { M 1 , M 2 , M 3 , M 4 } on the public channel. A wants to impersonate a legitimate U i by calculating B 3 = h ( T I D i I D C S n i x ) H P W i , but A cannot obtain values of I D C S and ( n i x ) . Therefore, they cannot successfully calculate the value of B 3 and cannot impersonate a legitimate user by changing B 3 to pass the verification of C S and thus cannot pretend to be a legitimate user.
Case two: Similarly, A wants to impersonate a S j through B 5 = h ( r j A 3 S I D j ) but cannot obtain values of r j , A 3 and S I D j , so they cannot pass the verification of C S . Therefore, A cannot successfully impersonate a legal S j . It can be concluded that the proposed protocol can resist impersonation attacks.
To sum up, our protocol can resist masquerading attacks.

4.3.5. Identity Theft Attacks

Suppose that an attacker A obtains the user’s smart card and tries to impersonate a legitimate user to establish a session with the cloud server and the control server. They obtain { A 1 , A 2 , I D C S , G e n ( · ) , R e p ( · ) , τ i } and try to calculate the authentication value B 3 = h ( T I D i I D C S n i x ) H P W i by intercepting the information on the open channel. Because they cannot obtain P W i , τ i , they cannot calculate H P W i = h ( P W i τ i ) and thus cannot successfully calculate B 3 and pass the authentication of C S . Therefore, our protocol can resist identity theft attacks.

4.3.6. Replay Attacks

According to our defined attacker model, an attacker A can forward the intercepted message to the receiver on the open channel and prove that they are a legitimate entity if the receiver authenticates the message. However, each transmitted message has a timestamp. If A transmits a previously intercepted message, the recipient rejects the request because of the invalid timestamp. Thus, the protocol is resistant to replay attacks.

4.3.7. Perfect Forward Secrecy

In our protocol, S K = h ( r i H P W i r j r k S I D j ) . Case one: Suppose that an attacker A can obtain x but S I D j and H P W i cannot be computed and A cannot obtain random numbers r i , r j , and r k . Therefore, there is no way to calculate the current S K or the previous S K , so the proposed protocol can provide perfect forward security.
Case two: Assume that an attacker A obtains the user’s password P W i to attack. Because the user’s biological information B i cannot be obtained, A cannot compute H P W i , where H P W i = h ( P W i τ i ) . Additionally, { r i , r j , r k , S I D j } is unknown. A cannot successfully compute S K .
Case three: Assume that an attacker A can obtain the private value A 3 * of a cloud server for an attack. Because the identity S I D j of the S j cannot be obtained, A cannot calculate A 3 , where A 3 = h ( S I D j x n j ) . Furthermore, A cannot calculate r j and r k ; here, r i = B 1 h ( I D C S H P W i S I D j ) and r k = h ( A 3 r j S I D j ) B 7 . Additionally, H P W i is unknown, and A cannot successfully calculate S K .
Therefore, the proposed protocol can provide perfect forward security.

4.3.8. Session Key Disclosure Attacks

It is assumed that the attacker A attempts to intercept the transmission of information on the open channel. Even if the attacker intercepts the messages M 1 M 5 , they cannot compute r j = B 4 h ( A 3 S I D j ) , r k = h ( A 3 r j S I D j ) B 7 , and ( r i H P W i ) = B 6 A 3 because they cannot obtain the values of H P W i , S I D j , A 3 . Obviously, they cannot compute the session key S K = h ( r i H P W i r j r k S I D j ) by intercepting the information on the public channel. Therefore, our proposed protocol can resist session key disclosure attacks.

4.3.9. Mutual Authentication

In the login and authentication phase, C S verifies the user and cloud server through B 3 and B 5 , respectively, and B 8 and B 11 are the values of U i and S j used to verify mutual identity, respectively. Although B 3 and B 5 are transmitted over the open channel, the values of ( n i x ) , H P W i , r j , and A 3 cannot be obtained by an attacker A . Similarly, B 8 and B 11 are also transmitted over the open channel, but A cannot obtain the values of r k and S K , and thus, the protocol cannot break by changing the authentication value. Hence, our protocol can provide mutual authentication.

4.3.10. Privacy and Anonymity

An attacker A attempts to identify a user by intercepting messages on the open channel. However, in our proposed method, A can only obtain U i ’s pseudo identity T I D i . Thus, A cannot compute the user’s real I D i . Similarly, A can only obtain the S j ’s pseudo identity Q I D j . A cannot determine the true identity of U i and S j based on the pseudo identity, which protects the privacy of U i and S j . Therefore, our protocol can provide privacy and anonymity.

4.3.11. Traceability and Non-Repudiation

When cloud server finds that U i has bad behavior, it will report to C S , and C S will find the value of the user’s H P W i according to T I D i , which can be used to identify U i . Therefore, once a user exhibits malicious behavior, C S can track the user, which ensures traceability. Since the transmitted message M 1 = T I D i , A 1 , B 1 , B 2 , B 3 , T S 1 contains the value of authenticating the user’s identity B 3 , once a legitimate user exhibits bad behavior, C S will verify the user’s identity according to B 3 = h ( T I D i I D C S n i x ) H P W i . If the verification is passed, this indicates that the bad behavior is indeed sent by the user, and the user cannot deny it. Therefore, non-repudiation is guaranteed.

4.3.12. Integrity

Integrity is the guarantee that an attacker A cannot change the transmitted information. Even if A is able to successfully tamper with the information, the system will detect and discover that the information has been modified.
It is assumed that an attacker A can intercept and tamper with the messages { M 1 , M 2 , M 3 , M 4 } transmitted on the open channel. For example, A intercepts and tampers with message M 1 , where M 1 = T I D i , A 1 , B 1 , B 2 , B 3 , T S 1 . If A tampers with T I D i , C S cannot retrieve H P W i and the authentication is suspended. If A tampers with A 1 , B 1 , B 2 , B 3 , then C S calculates that B 3 is not equal to the received B 3 = h ( T I D i I D C S n i x ) H P W i , which indicates that the user is not legal or M 1 is tampered with, and the authentication is suspended. Similarly, if an attacker intercepts and tampers with { M 2 , M 3 , M 4 } , all three entities will be checked accordingly. Therefore, the proposed protocol can ensure the integrity of information.

4.3.13. Confidentiality

From the Section 4.3.2 (Insider Attacks) and Section 4.3.4 (Masquerading Attacks), it can be seen that the attacker cannot obtain S K = h ( r i H P W i r j r k S I D j ) . Therefore, it can be seen that our protocol ensures confidentiality.

5. Security and Performance Comparison

We compared the protocols of Amin et al. [13], Martinez et al. [17], Zhou et al. [18], and Kang et al. [19] in terms of performance and security. The specific comparison results are described in the following subsection.

5.1. Security Comparison

This subsection compares the five protocols in terms of security. Specifically, indicates that the security characteristics are met, and × indicates that they are not met. In addition, S1–S8 are defined as follows: S1: Perfect forward secrecy; S2: Man-in-the-middle attack; S3: Mutual authentication; S4: Impersonation attack; S5: Replay attack; S6: Temporary value disclosure attack; S7: Offline password-guessing attack; and S8: Insider attack.
Table 3 lists the security results. From Table 3, Zhou et al.’s [18] scheme was unable to provide perfect forward security and cannot prevent replay, user and server impersonation, and temporary value disclosure attacks. The protocol of Kang et al. [19] cannot resist offline password-guessing attacks; Amin et al.’s [13] protocol cannot prevent insider or impersonation attacks; and the protocol of Martinez et al. [17] was unable to prevent impersonation or replay attacks, or even enable mutual authentication. The proposed protocol can evidently prevent many common attacks.

5.2. Performance Comparison

We calculated the time required by the user and server. To estimate the user’s computing cost, we developed an app that uses the Java pairing library, signature library, and symmetric encryption/decryption function to calculate the running time of various operations. We used smart phones produced by different manufacturers to imitate the user. We ran various operations on the following mobile phones ten times and used the average value as the reference time. Table 4 lists the results of various operations on different mobile phones. D1 is a Huawei Mate 30 mobile phone with a harmony operating system, Huawei Kirin 990 processor, and 8G running memory; D2 is a Redmi Note 9 Pro mobile phone with an Android operating system, Qualcomm Snapdragon 750 g CPU, and 8G of RAM; and D3 represents a Oneplus phone with an Android operating system, Snapdragon 865 processor, and 8G running memory. Table 5 and Figure 9 present the comparative results of the client calculation costs of the five protocols. Table 5 shows that the protocol of Amin et al. [13] requires 9 T h , the protocol of Martinez et al. [17] requires 11 T h + T d e , Zhou et al.’s [18] protocol requires 10 T h , Kang et al.’s protocol [19] requires 8 T h , and our proposed protocol requires T m + 10 T h . Although we are not as good as Amin et al. [13], Zhou et al. [18], and Kang et al. [19] in terms of performance, we are better than them in terms of security.
We used a computer with a windows 10 operating system, Intel (R) core (TM) [email protected] processor, and 8 GB memory, to simulate the server’s computational costs. IntelliJ idea software version 2019.3 was used for development. It is based on the Java pairing library, signature library, and symmetric encryption/decryption function. Various operations were run 10 times on this computer, and the average value was used as the reference time. Table 4 lists the results. Table 6 shows the comparison results. As shown in Table 6, the time required for our proposed protocol was only four hashes more than Kang et al.’s [19] and Amin et al.’s [13] protocols, that is, 0.0208 ms.
To calculate the communication cost, we set the length of one-way hash H as 256 bits, timestamp T to 32 bits, string s to 160 bits, identity I D to 160 bits, random number Z p * to 160 bits, and encryption operation E to 256 bits. In addition, assume that the fuzzy extractor needs to store 8 bits. From this definition, the protocol of Zhou et al. [18] can be concluded to require 3 | I D | + 10 | s | + 6 | H | + 3 | T | , that of Amin et al. [13] requires 3 | I D | + 8 | s | + 6 | H | + 3 | T | , that of Martinez et al. [17] requires 3 | I D | + 18 | s | + | H | + 2 | E | + 2 | Z p * | , that of Kang et al. [19] requires 3 | I D | + 10 | s | + 6 | H | + 3 | T | , and our protocol requires 3 | I D | + 15 | s | + 5 | H | + 3 | T | . Table 7 and Figure 10 present the detailed comparison results. Evidently, our protocol has a lower communication cost than that of Martinez et al. [17], although the communication cost is higher than that of the other three protocols. Our protocol also provides higher security; their protocols have been proven to have various security problems. Therefore, our proposed protocol is secure, has a relatively good performance, and is suitable for cloud computing environments.
For the storage costs, we consider the parameters required to store each entity in each entity in the registration phase. The number of numbers required for various parameters is the same as discussed above. The comparison results are shown in Figure 11. It can be seen from the figure that our storage cost is slightly higher than the protocols of Amin et al. [13] and Kang et al. [19].
In terms of energy costs, due to the strong computing power and good performance of the server, we do not consider its energy cost. We use “ampere” APP to measure the current and voltage of each mobile phone the three devices during operation, and the results are shown in the Table 8. According to the formula W = U · I · t , the power consumption required by each device was calculated. The results are shown in Table 9 and Figure 12. The energy costs are different for different devices. It can be seen from the figure that, although our protocol is not the best, it is better than that of Martinez et al. [17] and our protocol is secure.

6. Conclusions and Disscussion

IoT-enabled cloud computing environment is an open environment, and its main threat is data leakage. Because a large number of customers’ privacy data are stored on the cloud server, once the data is leaked, it will lead to not only the disclosure of trade secrets, intellectual property rights, and personal privacy but also a devastating blow to the enterprise. In addition, the communication information of various entities is transmitted on the open channel. Attackers can launch attacks by intercepting the information on the open channel. Moreover, from Table 1, we can know that most of the existing schemes have been attacked, such as man in the middle attack, simulation attack, etc.
In this paper, we propose a protocol to solve the security problem in this environment. To verify the security, an informal security analysis was conducted, and the ProVerif and ROR models were adopted for formal security analysis. Finally, the protocol’s security and performance were measured against those of other protocols. The proposed protocol can be concluded to satisfy basic security requirements. Therefore, our protocol is more suitable for this environment.

Author Contributions

Conceptualization, T.-Y.W.; methodology, T.-Y.W. and Q.M.; software, S.K.; formal analysis, P.Z.; investigation, T.-Y.W.; writing—original draft preparation, T.-Y.W., Q.M., S.K. and P.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This research study received no external funding.

Data Availability Statement

The data are contained within the article.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
IoTInternet of Things
RORreal-oracle random
AKAauthentication and key agreement
DoSdenial of service

References

  1. Goudos, S.K.; Dallas, P.I.; Chatziefthymiou, S.; Kyriazakos, S. A survey of IoT key enabling and future technologies: 5G, mobile IoT, sematic web and applications. Wirel. Pers. Commun. 2017, 97, 1645–1675. [Google Scholar] [CrossRef]
  2. Huang, X.; Xiong, H.; Chen, J.; Yang, M. Efficient Revocable Storage Attribute-based Encryption with Arithmetic Span Programs in Cloud-assisted Internet of Things. IEEE Trans. Cloud Comput. 2021. [Google Scholar] [CrossRef]
  3. Xiong, H.; Chen, J.; Mei, Q.; Zhao, Y. Conditional privacy-preserving authentication protocol with dynamic membership updating for VANETs. IEEE Trans. Dependable Secur. Comput. 2022, 19, 2089–2104. [Google Scholar] [CrossRef]
  4. Wu, T.Y.; Wang, T.; Lee, Y.Q.; Zheng, W.; Kumari, S.; Kumar, S. Improved authenticated key agreement scheme for fog-driven IoT healthcare system. Secur. Commun. Netw. 2021, 2021, 6658041. [Google Scholar] [CrossRef]
  5. Meng, Z.; Pan, J.S.; Tseng, K.K. PaDE: An enhanced Differential Evolution algorithm with novel control parameter adaptation schemes for numerical optimization. Knowl. Based Syst. 2019, 168, 80–99. [Google Scholar] [CrossRef]
  6. Xue, X.; Zhang, J. Matching large-scale biomedical ontologies with central concept based partitioning algorithm and adaptive compact evolutionary algorithm. Appl. Soft Comput. 2021, 106, 107343. [Google Scholar] [CrossRef]
  7. Pan, J.S.; Liu, N.; Chu, S.C.; Lai, T. An efficient surrogate-assisted hybrid optimization algorithm for expensive optimization problems. Inf. Sci. 2021, 561, 304–325. [Google Scholar] [CrossRef]
  8. Chandra, S.; Yafeng, W. Cloud things construction—The integration of Internet of Things and cloud computing. Future Gener. Comput. Syst. 2016, 56, 684–700. [Google Scholar]
  9. Díaz, M.; Martín, C.; Rubio, B. State-of-the-art, challenges, and open issues in the integration of Internet of Things and cloud computing. J. Netw. Comput. Appl. 2016, 67, 99–117. [Google Scholar] [CrossRef]
  10. Sun, P. Security and privacy protection in cloud computing: Discussions and challenges. J. Netw. Comput. Appl. 2020, 160, 102642. [Google Scholar] [CrossRef]
  11. Rashid, A.; Chaturvedi, A. Cloud computing characteristics and services: A brief review. Int. J. Comput. Sci. Eng. 2019, 7, 421–426. [Google Scholar] [CrossRef]
  12. Odelu, V.; Das, A.K.; Kumari, S.; Huang, X.; Wazid, M. Provably secure authenticated key agreement scheme for distributed mobile cloud computing services. Future Gener. Comput. Syst. 2017, 68, 74–88. [Google Scholar] [CrossRef]
  13. Amin, R.; Kumar, N.; Biswas, G.; Iqbal, R.; Chang, V. A light weight authentication protocol for IoT-enabled devices in distributed Cloud Computing environment. Future Gener. Comput. Syst. 2018, 78, 1005–1019. [Google Scholar] [CrossRef]
  14. Wu, F.; Li, X.; Xu, L.; Sangaiah, A.K.; Rodrigues, J.J. Authentication protocol for distributed cloud computing: An explanation of the security situations for Internet-of-Things-enabled devices. IEEE Consum. Electron. Mag. 2018, 7, 38–44. [Google Scholar] [CrossRef]
  15. Wang, C.; Ding, K.; Li, B.; Zhao, Y.; Xu, G.; Guo, Y.; Wang, P. An enhanced user authentication protocol based on elliptic curve cryptosystem in cloud computing environment. Wirel. Commun. Mob. Comput. 2018, 2018, 3048697. [Google Scholar] [CrossRef]
  16. Pan, J.S.; Sun, X.X.; Chu, S.C.; Abraham, A.; Yan, B. Digital watermarking with improved SMS applied for QR code. Eng. Appl. Artif. Intell. 2021, 97, 104049. [Google Scholar] [CrossRef]
  17. 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] [Green Version]
  18. 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]
  19. 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, 2020, 1970798. [Google Scholar] [CrossRef]
  20. Luo, Y.; Zheng, W.; Chen, Y.C. An anonymous authentication and key exchange protocol in smart grid. J. Netw. Intell. 2021, 6, 206–215. [Google Scholar]
  21. Wu, T.Y.; Yang, L.; Luo, J.N.; Ming-Tai Wu, J. A Provably Secure Authentication and Key Agreement Protocol in Cloud-Based Smart Healthcare Environments. Secur. Commun. Netw. 2021, 2021, 2299632. [Google Scholar] [CrossRef]
  22. Turkanović, M.; Brumen, B.; Hölbl, M. A novel user authentication and key agreement scheme for heterogeneous ad hoc wireless sensor networks, based on the Internet of Things notion. Ad Hoc Netw. 2014, 20, 96–112. [Google Scholar] [CrossRef]
  23. Wazid, M.; Das, A.K.; Odelu, V.; Kumar, N.; Conti, M.; Jo, M. Design of secure user authenticated key management protocol for generic IoT networks. IEEE Internet Things J. 2017, 5, 269–282. [Google Scholar] [CrossRef]
  24. Wu, F.; Li, X.; Xu, L.; Vijayakumar, P.; Kumar, N. A novel three-factor authentication protocol for wireless sensor networks with IoT notion. IEEE Syst. J. 2020, 15, 1120–1129. [Google Scholar] [CrossRef]
  25. 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]
  26. Irshad, A.; Sher, M.; Ahmad, H.F.; Alzahrani, B.A.; Chaudhry, S.A.; Kumar, R. An improved multi-server authentication scheme for distributed mobile cloud computing services. KSII Trans. Internet Inf. Syst. (TIIS) 2016, 10, 5529–5552. [Google Scholar]
  27. Sadri, M.J.; Asaar, M.R. An anonymous two-factor authentication protocol for IoT-based applications. Comput. Netw. 2021, 199, 108460. [Google Scholar] [CrossRef]
  28. He, D.; Kumar, N.; Khan, M.K.; Wang, L.; Shen, J. Efficient privacy-aware authentication scheme for mobile cloud computing services. IEEE Syst. J. 2016, 12, 1621–1631. [Google Scholar] [CrossRef]
  29. Xiong, L.; Peng, D.; Peng, T.; Liang, H. An enhanced privacy-aware authentication scheme for distributed mobile cloud computing services. KSII Trans. Internet Inf. Syst. (TIIS) 2017, 11, 6169–6187. [Google Scholar]
  30. Challa, S.; Das, A.K.; Gope, P.; Kumar, N.; Wu, F.; Vasilakos, A.V. Design and analysis of authenticated key agreement scheme in cloud-assisted cyber–physical systems. Future Gener. Comput. Syst. 2020, 108, 1267–1286. [Google Scholar] [CrossRef]
  31. Yu, S.; Park, K.; Park, Y. A secure lightweight three-factor authentication scheme for IoT in cloud computing environment. Sensors 2019, 19, 3598. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  32. Wang, F.; Xu, G.; Xu, G.; Wang, Y.; Peng, J. A robust IoT-based three-factor authentication scheme for cloud computing resistant to session key exposure. Wirel. Commun. Mob. Comput. 2020, 2020, 3805058. [Google Scholar] [CrossRef]
  33. 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, 1–21. [Google Scholar] [CrossRef]
  34. Li, N.; Guo, F.; Mu, Y.; Susilo, W.; Nepal, S. Fuzzy extractors for biometric identification. In Proceedings of the IEEE 37th International Conference on Distributed Computing Systems (ICDCS), Atlanta, GA, USA, 5–8 June 2017; pp. 667–677. [Google Scholar]
  35. Canetti, R.; Krawczyk, H. Analysis of key-exchange protocols and their use for building secure channels. In International Conference on the Theory And Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 2001; Volume 2045, pp. 453–474. [Google Scholar]
  36. Dolev, D.; Yao, A. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
  37. Canetti, R.; Goldreich, O.; Halevi, S. The random oracle methodology, revisited. J. ACM 2004, 51, 557–594. [Google Scholar] [CrossRef] [Green Version]
  38. Odelu, V.; Das, A.K.; Goswami, A. A secure biometrics-based multi-server authentication protocol using smart cards. IEEE Trans. Inf. Forensics Secur. 2015, 10, 1953–1966. [Google Scholar] [CrossRef]
  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. Blanchet, B. A computationally sound mechanized prover for security protocols. IEEE Trans. Dependable Secur. Comput. 2008, 5, 193–207. [Google Scholar] [CrossRef]
  41. Abadi, M.; Fournet, C. Mobile values, new names, and secure communication. ACM Sigplan Not. 2001, 36, 104–115. [Google Scholar] [CrossRef]
Figure 1. Architecture of IoT-enabled cloud computing.
Figure 1. Architecture of IoT-enabled cloud computing.
Sensors 22 03858 g001
Figure 2. Information exchange process.
Figure 2. Information exchange process.
Sensors 22 03858 g002
Figure 3. User registration phase.
Figure 3. User registration phase.
Sensors 22 03858 g003
Figure 4. Cloud server registration phase.
Figure 4. Cloud server registration phase.
Sensors 22 03858 g004
Figure 5. Login and authentication phase.
Figure 5. Login and authentication phase.
Sensors 22 03858 g005
Figure 6. Definitions.
Figure 6. Definitions.
Sensors 22 03858 g006
Figure 7. Process.
Figure 7. Process.
Sensors 22 03858 g007
Figure 8. Results.
Figure 8. Results.
Sensors 22 03858 g008
Figure 9. Comparative results of user computational costs [13,17,18,19].
Figure 9. Comparative results of user computational costs [13,17,18,19].
Sensors 22 03858 g009
Figure 10. Comparative results of communication costs [13,17,18,19].
Figure 10. Comparative results of communication costs [13,17,18,19].
Sensors 22 03858 g010
Figure 11. Comparative results of storage costs [13,17,18,19].
Figure 11. Comparative results of storage costs [13,17,18,19].
Sensors 22 03858 g011
Figure 12. Comparative results of energy costs [13,17,18,19].
Figure 12. Comparative results of energy costs [13,17,18,19].
Sensors 22 03858 g012
Table 1. A summary of authentication protocols.
Table 1. A summary of authentication protocols.
ProtocolsAdvantagesShortcomings
Turkanovic et al. [22](1) Provides user anonymity
(2) Can resist offline password-
guessing attacks
(1) Cannot resist insider
(2) Cannot resist user
impersonation attacks
Wazid et al. [23](1) Can resist user
impersonation attacks
(2) Provides user anonymity
(3) Provides perfect forward
security
-
Wu et al. [24](1) Can resist temporary value
(2) Can resist offline passowrd-
guessing attacks
(1) Cannot resist sensor
capture attacks
(2) Cannot resist denial
of service attacks
(3) Cannot provide
perfect forward security
Tsai and Lo [25](1) Can resist temporary value
disclosure attacks
(2) Provides perfect forward
security
(1) Cannot resist server
impersonation attacks
Irshad et al. [26](1) Can resist user
impersonation attacks
Provides Perfect
forward security
(1) Lacks user
registration and
revocation phases
Amin et al. [13](1) Can resist temporary value
disclosure attacks
(2) Can resist insider
attacks
(1) Cannot prevent
insider attacks
(2) Cannot resist
impersonation attacks
Martinez et al. [17](1) Can resist user
impersonation attacks
(2) Can resist offline password-
guessing attacks
(3) Provides user anonymity
(1) Cannot prevent
impersonation attacks
(2) Cannot resist session
key exposure attacks
(3) Cannot achieve
mutual authentication
Zhou et al. [18](1) Provides user anonymity
(2) Can achieve mutual
authentication
(3) Can resist insider
attacks
(1) Cannot prevent replay
attacks
(2) Cannot prevent
impersonation attacks
(3) Cannot prevent
temporary value
disclosure attacks
(4) cannot provide perfect
forward security
Kang et al. [19](1) Can resist
impersonation attacks
(2) Can achieve mutual
authentication
(1) Cannot resist offline
password-guessing attacks
Table 2. Notations.
Table 2. Notations.
NotationsMeanings
S j The jth cloud server
S I D j The S j ’s identity
U i The ith user
I D i U i ’s identity
P W i U i ’s password
B i U i ’s biological information
H P W i U i ’s pseudo password
S C Smart card
C S Control server
I D C S C S ’s identity
xThe secret key of C S
T I D i U i ’s pseudo identity
Q I D j S j ’s pseudo identity
h ( · ) Hash function
G e n ( · ) , R e p ( · ) Fuzzy extraction function
τ i , σ i Two parameters generated by the fuzzy extractor [34],
where τ i is public and σ i is private.
T S 1 , T S 2 , T S 3 , T S 4 Timestamps
Table 3. Comparisons of security.
Table 3. Comparisons of security.
Security Properties[13][17][18][19]Ours
S1×
S2×
S3×
S4×××
S5××
S6×
S7×
S8×
Table 4. The computational costs of complex operations.
Table 4. The computational costs of complex operations.
OperationsSymbolicD1 (ms)D2 (ms)D3 (ms)Server (Cloud, Contorl)
Symmetric Decryption T d e 0.041250.20.20.1347
Symmetric Encryption T e n 0.20.03920.05914.7
Hash function T h 0.001030.002510.001020.0052
Fuzzy function T f 0.056650.1430.00561-
Table 5. Comparative results of user computational costs.
Table 5. Comparative results of user computational costs.
ProtocolsUserD1 (ms)D2 (ms)D3 (ms)
Amin et al. [13] 9 T h 0.00930.02260.0092
Martinez et al. [17] 11 T h + T d e 0.05260.22750.2112
Zhou et al. [18] 10 T h 0.01030.02510.0102
Kang et al. [19] 8 T h 0.00820.02010.0082
Ours T f + 10 T h 0.06970.16810.0158
Table 6. Comparative results of server computational costs.
Table 6. Comparative results of server computational costs.
ProtocolsCloud ServerControl ServerTotal (ms)
Amin et al. [13] 4 T h 10 T h 0.0728
Martinez et al. [17] 6 T h + 2 T d e + T e n 34 T h + 2 T e n 14.5774
Zhou et al. [18] 7 T h 20 T h 0.1404
Kang et al. [19] 3 T h 11 T h 0.0728
Ours 5 T h 13 T h 0.0936
Table 7. Comparisons in terms of communication and storage costs.
Table 7. Comparisons in terms of communication and storage costs.
ProtocolsNumber of RoundsCommunication Costs (Bits)Storage Costs (Bits)Security
Amin et al. [13]536801152Insecure
Martinez et al. [17]660161664Insecure
Zhou et al. [18]444482112Insecure
Kang et al. [19]240001278Cannot resist offline password guessing attack
Ours545441320Provable secruity
Table 8. Voltage and current of devices.
Table 8. Voltage and current of devices.
DevicesU (V)I (mA)
D14.08531
D26103.58
D35084.08
Table 9. Energy costs.
Table 9. Energy costs.
ProtocolsD1 (uJ)D2 (uJ)D3 (uJ)
Amin et al. [13]20.14849.35419.068
Martinez et al. [17]113.957496.814437.74
Zhou et al. [18]22.31554.81321.14
Kang et al. [19]17.75143.89416.996
Ours151.004367.09732.748
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

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. https://0-doi-org.brum.beds.ac.uk/10.3390/s22103858

AMA Style

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(10):3858. https://0-doi-org.brum.beds.ac.uk/10.3390/s22103858

Chicago/Turabian Style

Wu, Tsu-Yang, Qian Meng, Saru Kumari, and Peng Zhang. 2022. "Rotating behind Security: A Lightweight Authentication Protocol Based on IoT-Enabled Cloud Computing Environments" Sensors 22, no. 10: 3858. https://0-doi-org.brum.beds.ac.uk/10.3390/s22103858

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