Next Article in Journal
Advanced Optimization Methods and Big Data Applications in Energy Demand Forecast
Next Article in Special Issue
Cybersecurity Model Based on Hardening for Secure Internet of Things Implementation
Previous Article in Journal
Phytochemicals Block Glucose Utilization and Lipid Synthesis to Counteract Metabolic Reprogramming in Cancer Cells
Previous Article in Special Issue
Intelligent Total Transportation Management System for Future Smart Cities
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Secure and Efficient Authentication Scheme in IoT Environments

Department of Computer and Information Security, and Convergence Engineering for Intelligent Drone, Sejong University, Seoul 05006, Korea
*
Author to whom correspondence should be addressed.
Appl. Sci. 2021, 11(3), 1260; https://doi.org/10.3390/app11031260
Submission received: 11 December 2020 / Revised: 17 January 2021 / Accepted: 25 January 2021 / Published: 29 January 2021
(This article belongs to the Special Issue Internet of Things (IoT))

Abstract

:
Optimization of resource consumption and decreasing the response time of authentication requests is an immense urgent requirement for supporting the scalability of resources in IoT environments. The existing research attempts to design lightweight authentication protocols to address these issues. However, the schemes proposed in the literature are lacking in the creation of a lightweight (i.e., low computing, communication, and storage cost) and secure architecture. IoT devices in existing approaches consume high electricity and computing power, despite the fact that IoT devices have limited power and computing capabilities. Furthermore, the existing approaches lead to an increase in the burden on storage memory and also create heavy traffic on a communication channel, increasing the response time of device authentication requests. To overcome these limitations, we propose a novel lightweight and secure architecture that uses crypto-modules, which optimize the usage of one-way hash functions, elliptic-curve cryptography, and an exclusive-or operation. We demonstrate the proposed scheme’s security strength using informal security analysis and verified it by considering the widely used automated validation of internet security protocol application (AVISPA) and the ProVerif tool. The result shows that the proposed scheme is effective against active and passive security attacks and satisfies secure design. Moreover, we calculate the proposed scheme’s working cost by implementing it using a widely accepted standard pairing-based cryptography (PBC) library on embedded devices. The implementation proves that the proposed scheme is lightweight and reduces computation time by 0.933 ms, communication cost by 1408 bits, and storage cost by 384 bits, and removes the existing gaps.

1. Introduction

Owing to the fast advancement of cutting-edge innovation in the realm of ubiquitous computing, Internet of Things (IoT) environments have caught significant attention in the field of information technology (IT) business and network communication. The principal motivation behind IoT environments is to obtain data from the environment, following which various other gadgets can share the data for processing. Consequently, IoT becomes a significant and widely utilized innovation with respect to the presently connected world, particularly in health services and critical infrastructure. Therefore, to deal with exponentially growing heterogeneous data and devices, IoT is connected to a standard cloud platform where critical information about individuals is stored. Therefore, the safety, privacy, and security of such data are of paramount information [1]. Hence, unauthorized clients must not be allowed to access data from private cloud servers. In the literature, it was observed that the security of cloud servers could be infringed through the exploitation of security loopholes such as fraudulence, spying, and falsification presented by either interminable attackers or malignant interior entities [2]. Moreover, many kinds of IoT devices (e.g., IP cameras, smart speakers) are vulnerable to malware (e.g., Mirai malware [3]) that might break up the internet infrastructure, including IoT ecosystems [4,5,6]. Therefore, to ensure that only authenticated parties can access the applications and stakeholders’ assets (e.g., IoT devices), client verification is necessary to verify the electronic transaction by obtaining collective information about the client [7]. The seriousness of data security on the cloud was gauged by the European commission in 2010, as it recognized both security and protection as significant links in the chain of IoT ecosystems in order for IoT to achieve ubiquity. For providing end-to-end security, IoT use-case will have to incorporate strategies to provide end-device security, message authentication, authorization, integrity, confidentiality, denial, availability, and privacy protection [8]. The entire array of security strategies can be supported by designing an efficient authentication process.
Because of this, the authentication process is the principal first layer of security against potential attackers. The authentication process aims to validate the identity of entities or devices that request access to the private cloud platform by performing identity verification; thus, a reliable verification protocol requires performing two functions, namely, mutual verification and session-key agreement [9]. The authentication protocols typically use encryption technology to achieve mutual verification and session-key agreement and counter security attacks. The selection of the appropriate encryption technique relies mainly on device and sensor configurations, determining power, and energy consumption. However, IoT devices and sensors have limited power and computing capabilities because of low memory, low power, low battery, and network confinement. Therefore, the encryption techniques in an appropriate authentication protocol have to be tailored for application to the scenario. Considering the need for IoT devices and sensors, the existing research attempts to design lightweight authentication protocols based on elliptic-curve cryptography (ECC) and profitable open-key cryptography. However, in our literature analysis, we found that the existing schemes provide a secure authentication scheme with high operational costs (i.e., computation, communication, and storage costs). That is, the schemes proposed by existing research unnecessarily consume too much electrical power, storage, and computation energy for computing challenge parameters, verification processes, and key distribution and management, despite IoT devices having a limited capacity.
To overcome the problems mentioned previously, we present a novel, efficient, lightweight authentication protocol for IoT applications. Firstly, we analyzed various recent studies and identified the various factors that include an ECC point multiplication to reduce the operational cost. To ensure security strength that is equivalent or greater than the existing schemes, we efficiently optimized the usage of an ECC point multiplication operation in the proposed scheme, which helped us make the lightweight scheme and improve its performance over existing approaches. The contributions of this study are summarized as follows.
  • We propose a novel lightweight authentication scheme with defensive tactics provided by the combination of tamper-proof devices, ECC technology, exclusive OR (XOR), concatenation, working bit, and administrator task involvement.
  • To test the proposed scheme’s performance, we implemented a standard pairing-based cryptography (PBC) [10] library on embedded devices that compute the primitive timing of the various cryptography operations included in the proposed scheme and the existing schemes. Using this primitive timing, we calculated the proposed scheme’s operational cost and compared it with recent techniques. The comparison shows that the proposed scheme is lightweight in design and requires lower operational cost overhead.
  • We demonstrate that the proposed scheme is secure under the elliptic curve Diffie Hellman problem (ECDHP) [11] and the computational Diffie Hellman problem (CDHP) [12]. We verify it using mathematical informal security analysis.
  • Furthermore, to check the correctness of informal security analysis, we implemented the code for the proposed scheme in the widely accepted automated validation of internet security protocol and application (AVISPA) tool [13] and the ProVerif tool [14]. The result of the analysis and comparison with existing schemes demonstrates that the proposed scheme is more dominant, productive, and secure against all active and passive attacks [15], and it achieves the goal of secure design.
This paper is organized as follows. Section 2 presents the related state-of-the-art works, existing weaknesses, and preliminary mathematics used in the proposed scheme. The proposed ECC-based protocol is introduced in Section 3. Section 4 shows the cryptoanalysis of the proposed protocol by utilizing the informal security analysis and then verifying it using two automated validation of internet security protocol and application tools (i.e., AVISPA and ProVerif). In Section 5, the proposed scheme’s performance and efficiency assessments are compared to the existing methods. Finally, Section 6 presents the conclusion and future studies.

2. Background and Related Works

2.1. Related Works

In this study, we analyze numerous current authentication schemes in IoT environments that are reported to have especially secure and lightweight architecture. Zhou et al. [16] presented a lightweight authentication scheme for IoT cloud architecture that is secure against password guessing attacks, insider attacks, and user anonymity attacks. They claimed that their scheme is efficient against computational-limited smart devices. Yu et al. [17] proposed a lightweight authentication scheme based on biometrics protected against replay attacks, embedded device impersonation attacks, forward secrecy, and user anonymity attacks. Xie et al. [18] enhanced Wang et al.’s [19] scheme (i.e., prone to key compromise impersonation (KCI) attacks) and introduced a secure authentication scheme for the Internet of Things. Their method can resist replay attacks, embedded impersonation attacks, and cookie-theft attacks. They also claimed that their scheme provides security against KCI attacks. Chatterjee et al. [20] proposed an ECC-based lightweight three-way authentication scheme that protects against replay attacks, forward secrecy, and known session-specific temporary information attacks. They reported that their scheme provides security with low computation and communication overheads. Yu et al. [21] introduced a secure authentication scheme for the IoT cloud environment. They claimed that their scheme offers good security features that allow their scheme to withstand replay attacks, denial of service attacks (DoS), forward secrecy, insider attacks, and user anonymity attacks, with robust performance. Sengupta et al. [22] presented a biometric-based authentication scheme. They claimed that their scheme is secure against reply attacks, password guessing attacks, DoS attacks, forward secrecy, insider attacks, and user anonymity attacks and has efficient and suitable IoT applications. Yang et al. [23] proposed an authentication scheme for information exchange in a wireless sensor network (WSN) of IoT application. Their scheme provides security against replay attacks, embedded device impersonation attacks, and user anonymity attacks. Wang et al. [24] implemented an innovative authentication system that is resistive to session key attacks, replay attacks, password guessing attacks, forward secrecy attacks, insider attacks, known session-specific temporary attacks, user anonymity attacks, and stealing of cookies. They also reported that their scheme provides optimum security capabilities with reasonable overheads for computation and communication. Wazid et al. [25] showed a biometric-based lightweight authentication scheme focused on biometrics utilizing a framework for fuzzy extractors. Their scheme offers enhanced security against replay attacks, password guessing attacks, embedded device impersonation attacks, DoS attacks, intruder attacks, and user anonymity attacks, with a low computation and communication overhead. However, as mentioned previously, the existing approaches suffer from high computation, communication, or storage costs. A more detailed description will be given in Section 2.2 and Section 5.1.
Recently, Wei et al. [26] observed that most of the previous schemes (e.g., [27,28]) only provided heuristic security arguments; little attention has been paid to the formal treatment of protocol security. Most of them are vulnerable to various security loopholes. Thus, they suggested an enhanced scheme for cloud computing without using computation-expensive public-key operations. They employed a new cryptographic primitive, called an authenticated encryption scheme, to guarantee both message confidentiality and integrity and showed that their new scheme could be proven to be secure in the random oracle model. However, this scheme has several serious defects that are overlooked, such as it cannot achieve the primary goal of “truly two-factor security”, it provides no forward secrecy, and it ensures no user untraceability. Limbasiya et al. [29] cryptanalyzed Nikooghadam et al.’s scheme and found it vulnerable to replay attacks, insider attacks, and password guessing attacks. To overcome the security weaknesses, they proposed an improved scheme. Feng et al. [30] presented a replay-attack-resistant authentication scheme based on an improved challenge–response mechanism instead of the timestamp mechanism.
Nikooghadam et al. [31] cryptanalyzed Kumari et al.’s scheme [32] and claimed that the scheme is susceptible to off-line password guessing attacks. Additionally, the scheme failed to ensure user anonymity, thus causing a breach of security. To enhance security and overcome the identified security weaknesses, Nikooghadam et al. proposed an improved scheme that protects user anonymity. Later on, Aikuhlani et al. [33] proposed a secure and lightweight mutual authentication and key agreement scheme, in which the cryptographic functions were proved to be computationally lightweight and to resist some known attacks. Although these schemes were lightweight in the IoT environment, they did not prove that they were applicable to heterogeneous IoT. Dhillon and Kalra et al. [34] proposed an authentication protocol for the medical professional to access patient data for healthcare applications based on a cloud–IoT network. However, the protocol lacks user anonymity and does not provide a strong identity check. Amin et al. [35] pointed out that previous schemes (e.g., [36]) are vulnerable to various security loopholes (e.g., off-line password attacks and user impersonation attacks) and also developed a new scheme for distributed cloud computing environments. Nonetheless, Challa et al. [11] demonstrated that Amin et al.’s scheme is vulnerable to privileged-insider and impersonation attacks.

2.2. Problem Definition

As mentioned in Section 2.1, existing schemes have high computation, communication, or storage costs, despite the fact that the IoT devices and sensors are in limited environments (e.g., low memory, low power, network confinement). Therefore, current methods suffer from the following problems:
  • High response time: In IoT network communication, high computing operation is performed in limited-capacity IoT devices, where high communication bit message exchanges happen between node devices, which considerably increase the response time of the message in communication [37].
  • High computational overhead: Due to high computation cost, the limited-capacity IoT devices need to process mutual authentication and session key agreement requests using limited memory. In addition, in the real-time scenario of processing a high (i.e., millions or zillions) number of authentication requests between IoT devices, it consumes high processing power, which is limited in IoT devices, making IoT devices suffer from high computational overheads [38].
  • Excess memory consumption: The high computational cost of recent schemes causes limited-capacity IoT devices to perform a high level of processing and operations using limited memory, strongly impacting lower down device efficiency and performance (i.e., IoT device processors require considerably increased execution time to execute large content in memory) to a certain extent [26].
  • Excess electricity power consumption: The level of computing power consumption is directly proportional to electrical power consumption. The recent schemes make limited-capacity IoT devices suffer from high computational overheads, resulting in high electrical power consumption [38].
  • Lack of service availability: Due to the high running cost, it is a burden to handle and process millions or zillions of authentication and communication requests in real-time; this creates a considerable time delay for service in IoT systems [38].
  • Lack of performance and costly solutions: Due to high running costs, IoT devices suffer computationally because of their limited processing and storage capacities. When handling a high (e.g., millions or zillions) number of authentication requests in a huge IoT network, this affects their performance and increases the possibility of damage to IoT devices, including additional charges for replacement and maintenance [39].
Thus, the currently existing works lack a robust authentication model to ensure the low energy utilization of cryptographic operations, which results in usability issues and strongly impacts the avoidance of the adaption of existing authentication technology in real IoT cloud scenarios. While developing a reliable and secure IoT device, not only privacy and security but also lightweight and efficient mechanisms are the major concerns. In this sense, much work has been done. Nevertheless, existing schemes either have high computation, storage, or communication costs or fail to address many of the security attributes, which results in the existing works failing to address usability problems. Thus, none of them meet the requirement of a lightweight security design. To address all those contexts, we propose a novel lightweight and secure authentication scheme in this research.

2.3. Prerequisite

To develop a deep understanding of the cryptography operations used in constructing the authentication scheme, we gave a quick review of it, as follows:
  • ECC definition and property. If there exist prime number p > 3 and constant j 1 and j 2 such that j 1 ,   j 2   Z p , where Z p = 0 , 1 , , p 1 , then a nonsingular elliptical curve (EC) defined as y 2 =   x 3 + j 1 x +   j 2 over the finite Galois field (GF(p)) is the set E p j 1 , j 2 of the solution (x, y)   Z p × Z p to the congruence y 2   x 3 + j 1 x +   j 2 (mod p), where 4   j 1 3 + 27 j 2 2 0 (mod p), and O is called a point at infinity or a zero point. To ensure a nonsingular solution for the equation x 3 + j 1 x +   j 2 = 0 , it is most important that   4   j 1 3 + 27 j 2 2 0 (mod p). In contrast, 4   j 1 3 + 27 j 2 2 = 0 . (mod p) indicates that the elliptical curve is singular. Let us consider two points on the elliptical curve (i.e., P = ( x P ,   y P ), Q   =   ( x Q ,   y Q ) E p j 1 , j 2 ) . Then,   x Q =   x P and y Q =   y P , when P + Q = O. Additionally, P + O = O + P = P, for all P   E p j 1 , j 2 .   According to Hesse’s theorem, if #E denotes the number of points on E p j 1 , j 2 , then it must satisfy the condition p + 1−2 p ≤ #E ≤ p + 1 + 2 p .   This condition will also be understood as there is point p on E p j 1 , j 2 over Z p ,   where E p j 1 , j 2 forms a commutative or an abelian group under addition modulo p operation. The ECC operation explanation is as follows:
    ECC addition. Let P and Q be two points on the E p j 1 , j 2 . Then, we calculate C = ( x C , y C ) = A + B as x C   = ( λ 2 x P x Q ) (mod p), y C   = ( λ ( x p x C )   y p ) (mod p), where λ = y Q y P x Q x P (mod p), if P Q or λ = 3 x p 2 + c 1 2 y p (mod p), if P = Q.
    ECC multiplication (× or). It is also called scalar multiplication, which is done by repeated additions. For example, 3P = P + P + P where PEp(j1, j2). The ECC multiplication also defines two interesting properties, as follows:
    -
    Property 1: Elliptic Curve Discrete Logarithm Problem (ECDLP). Let n be a positive integer with two-point P, Q on the curve Ep(j1, j2), such that Q = n × P. Then, it is computationally infeasible for a big prime p to derive n in polynomial time, even if P and Q are known. Here, n is called as a scaler and n × P = P + P + …. + P (n times) is known as ECC point or scalar multiplication.
    -
    Property 2: Computational Diffie Hellman Problem (CDHP). For a, b ∈ [1,n−1], given P, aP, and bP, it is difficult to compute abP.
  • A one-way cryptographic hash function. It is a deterministic one-to-one function h:{0, 1}* → {0,1}n, which produces a fixed-length n-bit output string y ∈ {0,1}n (i.e., called hash digest) on an arbitrary input string x {0, 1}*, such that y = h(x). The small change in x can give completely different unique results in y (i.e., message digest). One of its examples is the SHA-256 hashing algorithm. It has the following property:
    Collision-Resistant One-Way Hash Function (h()). Let A d v A H a s h (t) represent the advantage of an adversary A in finding a collision. Then, A d v A H a s h (t) = Pr [(a1, a2)∈R A: a1a2, h(a1) = h(a2)], where Pr[E] denotes the probability of an event E, and (a1, a2) R A indicates that ( a 1 , a 2 ) is randomly selected by A. By an (ψ, t)-adversary A attacking the collision resistance of h(·), it means that the runtime of A is at most t and that Adv A Hash (t) ≤ ψ.
We used ECDLP, CHDP, and collision-resistant one-way hash function property (h()) in the design of the secure authentication protocol in the proposed section.

3. Proposed ECC-Based Lightweight Authentication Scheme

As mentioned earlier, the existing schemes have limitations because of high operational costs. Therefore, to overcome these issues, we propose a lightweight, secure authentication scheme for IoT cloud- and server-based applications by optimizing the efficient use of multiplication operations (.) (i.e., it includes ECDLP and CDHP), a hash function (h), concatenation (||), and XOR (⊕). The proposed scheme consists of the following two phases: the registration phase and the password-authentication phase, which includes the session-key-distribution step. Note that we propose a scheme for tamper-proof embedded devices and server-based applications. The security of tamper-proof devices ensures that the owners of the devices are unable to access any kind of data stored in the embedded devices [40]. In addition, to launch an attack on successfully embedded devices, an attacker needs special equipment that costs even more than embedded devices; thus, an attacker does not have economic incentives to mount an attack on tamper-proof devices [41]. Therefore, tamper-proof embedded devices improve the security strength of the proposed protocol. The proposed scheme is depicted in Figure 1, Figure 2 and Figure 3. The notation shown in Table 1 will be used throughout the paper.

3.1. Initialization Phase

When beginning the registration process, a trusted server (TS) chooses an elliptical curve equation E p : y 2 x 3 + m 1 x + m 2 (mod p) over Z p , where Z p   (p > 2 160 ) is the finite range of the group. A TS selects two fields, respectively, j 1 and j 2 , where m 1 and m 2 must obey condition 4   m 1 3 + 27 m 2 2   ( mod   p ) 0 . Let G be the E p ,   t h e base point with a prime order n (n >   2 160 ), and O be the point at infinity, such that n.G = O. Then, TS chooses arbitrary nonce (s) as its secret key.

3.2. Registration Phase

In the beginning, to make a user legal, before selling a product to the owner, the company of device E D i must register itself with the trusted third party through a secure channel. Figure 1 shows the details of the registration phase.
  • Step 1. Initially, the device E D i registers an authenticated identity I D i with a trusted server (TS); to that end, the device chooses a password P s w i for computing hashed identity ( I i =   h ( I D i   | | P s w i   ) ) that will protect the device from a user or device anonymity attack.
  • Step 2. Then, E D i sends the registration request < I i ,   P k e > to TS through a trusted channel, where P k e   =   P s w i . G is a public key of E D i , which ensures the security of P s w i by using the concept of ECDLP.
  • Step 3. TS checks whether I i has been registered. If I i has not been registered, TS selects a random number R and computes a server-generated unique identity ( C I D i = h(R|| I i ||s)     s) for uniquely identifying E D i . The security of C I D i is well protected in TS by using ECDLP ( C I D i = C I D i . G ). Then, TS computes a unique session cookie ( C K = h ( R s E t | | C I D ) ) for E D i . The security of C K is protected in TS by using ECDLP ( C K = C K . G ) . Then, TS computes challenge T = R h(R|| I i ||s), hides it inside another challenge (A = T I i   C K ) using I i and C K . Finally, to protect the security of challenges T and A, TS hides them inside t = T   C I D i   s I D T S   ,   a = A   C I D i s   I D T S ,   a n d it also hides expiration time ( E t ) of the cookie inside   e t =   E t C I D i   s I D T S . Subsequently, TS stores parameters < t , a ,     e t > on the server database, sets the working bit as W b i t i = 0 , and sends < C I D i ,   C K > to E D i through a secure, trusted channel.
Whenever the device ( E D i ) communicates with TS, the working bit W b i t is set to one for the corresponding connected communication; otherwise, and after the termination of the communication, it is set to zero. The servers encrypt the table using their personal secret key E k s   =   s . I D T S . G . The security of key ( E k s ) is well protected by the concept of ECDLP and CDHP. The device security ( E D i ) is well protected by its tamper-proof nature. Note that before handing over devices to their owners during the registration process, the company performs the registration process through a secure channel (e.g., wolfSSL [42]). Once the device is successfully registered to TS, the company hands over the registered tamper-proof product to the owner. Then, every time communication is initiated with TS, the owner’s device is authenticated by TS through an open communication channel, and then, after successful authentication, the device sends an encrypted message to TS using their session key S k .

3.3. Authentication Phase

Initially, each registered participant client device is required to be authenticated with TS before starting communication. Therefore, the authentication of the registered devices with TS proceeds as follows (depicted in Figure 2):
  • Step 1. E D i T S : C I D i , X i , Y i   . The legitimately registered device E D i randomly selects an ephemeral secret x i 1 Z p and computes challenges X i = x i 1 . G using an ECC point multiplication, hides x i 1 inside Y i = h x i 1 . C K , and, finally, sends the challenge C I D , X i , Y i to T S through a secure channel. The security of x i 1 inside both X i and   Y i is protected by the concept of ECDLP and CDHP.
  • Step 2. T S E D i : X j , Y j ,   T     . After receiving the challenge, TS recomputes and extract parameters ( T ,   A ,     E t ,   h R I i s   ,   R ,   C K ) from known parameter <   t ,     e t ,     a ,   C I D i ,   s ,   I D T S   > of the TS (i.e., it computes T = t C I D i   s I D T S ,   A =   a C I D i s I D T S ,   E t =     e t C I D i   s I D T S , h(R|| I i ||s) = C I D i   s ,   R =   T   h(R|| I i ||s), C K = h ( R s E t | | C I D i ) ), and then TS computes h X i . C K i . e . ,   = h   x i 1 . G .   C K ) = h ( x i 1 . C K and checks whether h X i × C K =   ?   Y i   (i.e., it checks whether the left value is equal to the right value). If the deduction from both sides is unsuccessful, the session is terminated; otherwise, proceed to the further steps. Subsequently, TS randomly selects an ephemeral secret x j 1 Z p and then computes challenges X j = x j 1 . G by using an ECC point multiplication, hides x j 1 inside Y j = h x j 1 . A . G , and, finally, sends challenges X j , Y j ,   T t o   E D i through an open channel. The security of x j 1 inside both X j and Y j is protected by the concept of ECDLP and CDHP.
  • Step 3. Computation of the session key S k = x i 1 . X j = x i 1 . x j 1 . G   = x j 1 . X i : After receiving the challenges X j , Y j ,   T from TS, E D i recomputes A = T I i   C K and checks whether X j . A   i . e . ,   h x j 1 . A . G = ? Y j . If the deduction from both sides is unsuccessful, the session is terminated; otherwise, proceed to the further steps. Subsequently, the user E D i computes the last challenge C = h ( Y i | | A ) and sends challenges C to TS through an open channel. After receiving the challenges, T S recomputes and checks whether h ( Y i | | A   ) = ? C . If the deduction from both sides is unsuccessful, the session is terminated; otherwise, proceed to the further steps. Finally, after successful deduction, the TS computes the session key ( S k = x j 1 . X i s . P k e ) and E D i computes the session key S k = x i 1 . X j .   P s w i . P k s .

3.4. Password-Change Phase

The proposed scheme allows a legitimated embedded device E D i to change the password periodically, thereby ensuring security. The embedded devices first perform authentication and authorization to change the password and prove their genuineness. Once device E D i successfully performs mutual authentication with server TS, device E D i must obey the following steps for password change, as depicted in Figure 3:
  • Step 1. E D i T S : I i * . The authorized legitimated embedded device E D i selects a new password P s w i * and then recomputes the hashed identity ( I i * = H ( I D i   | | P s w i *   ) ) and public key ( P k e   =   P s w i * . G ) . Subsequently, it sends the updated <   I i * ,   P k e > to TS through a trusted public channel by using the session key S K .
  • Step 2. T S   E D i : C I D i * , C K * .   TS receives updated parameters <   I i * ,   P k e > , and then TS selects a random number R * and then recomputes all parameters ( C I D i * = h(R|| I i * ||s)     s, C I D i * = C I D i * . G ,   C K * = h ( R * s E t | | C I D i * ) ,   C K * = C K * . G , T = R * h( R * || I i * ||s) ,   A = T I i * C K * , t = T C I D i *   s I D T S   ,   a = A   C I D i * s   I D T S ,   a n d   e t   =   E t C I D i *   s I D T S ) , which are mentioned in Section 3.2. Subsequently, TS stores the parameters <   t , a ,   e t > in the server database and sends the updated C I D i * ,   C K * to the server TS through an open trusted channel by using the session key S K .

4. Cryptoanalysis of the Proposed Protocol

In this section, we present the essential security requirements of the proposed scheme. Then, we analyze the security strength of the proposed scheme using informal security analysis (i.e., mathematical verification). During the analysis, we observed that the proposed scheme prevents various security attacks. Subsequently, we compared the proposed scheme with existing approaches for more clarity, following which we highlighted the weaknesses that the proposed scheme removes from the existing schemes. Furthermore, we verified the correctness of our mathematical explanation by using AVISPA and ProVerif simulation tools.

4.1. Informal Security Analysis

For ensuring the security of the proposed scheme, we used the collision-free one-way hash function and two hard problems: the ECDHP and the CDHP. We analyze and summarize the main security benefits of our proposed scheme. The proposed scheme targets optimized performance at a lower cost. Therefore, in this subsection, we present how the proposed scheme is secure against various cryptographic attacks that affect the performance of the authentication scheme. Furthermore, we compare the proposed scheme with the existing approaches by utilizing security attributes to explain its efficiency, as follows:
  • Replay attacks: In this attack, an adversary may impersonate a legitimate user by reusing the message C I D i ,   X i , Y i , obtained from a previous protocol run, and transferring it to the TS. After receiving the login request, TS computes and verifies whether h X i . C K = ? Y i and sends back new challenges < X j , Y j , T   > to E D i . However, after impersonating the messages <   X j , Y j , T   > sent to E D i   , the attacker would be unable to compute A = T I i C K without knowing I i and C K . Notably, both C K and I i are neither sent through any messages over public channels nor can they be acquired from the embedded device E D i because of its tamper-proof design. Thus, it cannot verify the challenge C i = H ( Y i | | A ) . Without the knowledge of the secret key x i 1   and   x j 1 of the device and server, the attacker cannot compute the valid session key ( S k = x i 1 . X i . P s w i . P k s = x j 1 . X i . s . P k e ). Additionally, the security of the session key is well protected by ECDLP and CDHP. Therefore, it almost impossible to extract the private key <   P s w i ,   s   > of the device and the server in polynomial time. Hence, the proposed scheme is secure against replay attacks.
  • Password-guessing attacks (or confidentiality): In the proposed scheme, an embedded device password p s w i is stored in the form of a password generator (i.e., public key ( E k e = p s w i . G )) and wrapped in the form of I i = H ( I D i | | p s w i ) . Consequently, the attacker cannot guess the password p s w i without knowing I i and P k e . Therefore, the proposed scheme maintains the security of the password by using ECDLP and a hash function (h()). Notably, I i of E D i is neither sent through any messages over an open public channel nor can it be acquired from the embedded device E D i because of its tamper-proof design (i.e., nor is it stored in the E D i or TS). Therefore, the proposed scheme prevents password-guessing attacks.
  • Embedded device impersonation attacks (or key compromise impersonation attacks): In this case, an attacker impersonates real embedded devices E D i by replaying a previously intercept message to the server (TS). However, an attacker will still lack E D i s secret parameters <   p s w i ,   I i ,   C K   > because the secret parameters are protected due to the tamper-proof design of E D i . In addition, p s w i of E D i in I i = H ( I D i | | p s w i ) and in E k e = p s w i . G is protected by hash function h() and ECDLP, respectively. Therefore, the attacker unable to compute A = T I i   C K correctly without knowing parameters < I i ,   C K > . This will result in an incorrect deduction h ( X j . A ) = ? Y j , which will lead to the termination of the session. Furthermore, an attacker will be unsuccessful in extracting P s w i from the past session key S k = x i 1 . X i . P s w i . P k s   , whose security is protected by ECDLP and CDHP. Therefore, an attacker is unable to compute a session key S k for a current session without knowing P s w i . Therefore, for the above reasons, an attacker will fail to launch embedded device impersonation attacks on E D i .
  • DoS attacks: To prevent the proposed scheme from DoS attacks, the server (TS) terminates the login session if the number of incorrect attempts to enter C I D i reaches the maximum limit. However, the login request will be continued as soon as the correct C I D i is entered. Furthermore, in the login phase, assume the adversary replaces message < C I D i , X i , Y i > with < C I D i , X j , Y j > by randomly selecting the elliptical curve point x i 1 and sending it back to TS; however, TS computes and compares the previous value with the received Y i   i . e . , h X i . C K = ? Y i . If TS finds a difference between the values, it terminates the protocol with a failure message to the user. Therefore, the proposed scheme is secure for DoS attacks. The resource optimization of the IoT cloud system can be influenced by the success of a major attack (i.e., DoS and replay attacks). The proposed scheme is, however, protected against both attacks. Therefore, the proposed scheme ensures the security of the performance of the proposed scheme.
  • Many logged-in users attacks: Suppose an adversary somehow manages to get a legally embedded device’s credentials < C I D i , C K > , along with the secret identity I i . Subsequently, the adversary tries to communicate with the server by impersonating E D i . However, in the proposed scheme, out of all-knowing the valid credential, only one legal E D i   can communicate with TS at a time as, every time they communicate, TS sets a working bit W b i t i equal to one for the corresponding communication with E D i after successful authentication and stores the working bit in its database. Every time, before communication, the receiver TS will check W b i t i before establishing a connection with the requested E D i . Furthermore, the receiver TS can deny all requests if W b i t i = 1 , representing the existing E D i is still communicating with it.
  • Server impersonation attacks: Assume the scenario where the phase of authentication of E D i is impersonated by an adversarial server. An adversarial server impersonates and receives the parameters < C I D i   , X i   , Y i > from E D i . Then, the adversary server randomly chooses parameters < X j , Y j ,   T > and sends it back to the E D i . After receiving parameters < X j , Y j ,   T > , the E D i computes the factor and checks h( X j . A ) = ? Y j . However, the equivalence comes out wrong. This is because an attacker randomly computes challenge T as T and is completely unaware of challenging A. In addition, attackers are unable to compute a session key. This is due to the attacker being unable to extract a private server key (s) or a device password ( p s w i ) from the past session key due to security protection by ECDLP and CDHP. Furthermore, the security of s is protected in the server ( E k s = s . I D T S . G ) by ECDLP and CDHP. Therefore, the proposed scheme is secure against server impersonation attacks.
  • Forward secrecy attacks (or key freshness): Even if the private key of both the E D i and the server is compromised by some other means, the confidentiality of the recently established session keys ought not to be affected. Suppose an adversary somehow discovers E D i ’s password ( P s w i ) and TS’s secret key (s); thus, the adversary determines other components from the message. However, the adversary cannot derive the session key ( S K = x i 1 . X j .   P s w i . P k s = x j 1 . X i . s . P k e ) . This is because, in order to compute it, the adversary must determine x i 1 and x j 1 from X i and X j , which seems to be computationally infeasible because of the complexity of ECDLP. Therefore, even if the present session key S K is leaked, the adversary cannot determine all the past session keys, as the session key also depends upon the random secrets ( x i and x j ) , whose security is protected by the concept of ECDLP; the security of S K is protected by the concept of ECDLP and CDHP. Hence, the proposed scheme is secure against forward secrecy attacks.
  • Privileged insider attacks: In the proposed scheme, during the registration of a device, EDi sends I i = H ( I D i | | p s w i ) , instead of sending the password p s w i , securely over the trusted channel (e.g., wolfSSL). After successful registration, the product is handed over to the owner by the company. Since the owner cannot extract any data < p s w i ,   I i ,   C I D i ,   C K > from device ED i due to its tamper-proof design, the advisor of TS cannot acquire the secret p s w i because it is ensured by E D i s identity and h(). Thus, the privileged insider from E D i will fail to impersonate the legitimate E D i . Hence, the proposed scheme is secure against E D i insider attacks. However, a TS adversary can steal information from server TS for the device E D i . Thus, in such a case, the proposed scheme is less secure against privileged insider attacks.
  • Known session-specific temporary information attacks: After successful authentication, both the communicating E D i and TS compute the session key S K = x i 1 . X j .   P s w i . P k s = x j 1 . X i . s . P k e , whose security is protected by ephemeral secrets x i 1   and   x j 1 . Suppose that an adversary somehow discovers the ephemeral secret x i 1 or x j 1 . In this case, the adversary cannot derive the session key ( S K ) only with the knowledge of a single ephemeral secret since the security of S K still depends on P s w i or s . Therefore, to derive the session key, the advisor must determine < P s w i , s > from the past session key ( S k ) , which, in turn, seems to be computationally infeasible because of the difficulties in solving CDHP and ECDLP for pairs, which are difficult to comprehend using a polynomial-time algorithm. Thus, the proposed scheme is securely infeasible to a known session-specific temporary information attack.
  • Attacks on user anonymity: Device anonymity implies that an attacker cannot discover the device’s concealed identity ( I D i ) by using the transmitted messages during the login and authentication phases. Here, a company that is selling device E D i does the registration process itself and hides I D i inside identity I i using the hash function h(). In addition, during the registration process, the company does the registration process with the server by sending < I i ,   p s w i > through a secure channel. Then, the company hands over the tamper-proof product to the owner. Therefore, the security of I i is well protected by the tamper-proof design of E D i . Furthermore, the security of I i is well secured in C I D i using a secret key (s) and a random number (R) with the assistance of the hash function h(). Moreover, both s and the R are neither sent through any message nor stored in the E D i and TS in the plaintext format. Hence, the proposed scheme is securely infeasible to attacks on user anonymity.
  • Database attacks: In this case, if an attacker makes a server database attack, the attacker will be unsuccessful in breaking the table of the server database as the security of the server and the database is protected by an encryption key   E k s = s .   I d T s . G , whose security is protected by ECDLP and CDHP. Therefore, an attacker will be unable to extract either s or   I d T s from   E k s . In addition, even if the attacker gets it by any means, the attacker still unable to extract   I d T s from   E k s . Furthermore, if the encryption key of the server is compromised somehow, the attacker will be unable to extract security parameter < T ,   A ,   E t > from < t ,   a ,   e t > . This is due to parameter security is still protected by   I d T s and s. Therefore, the proposed scheme is preventive against database attacks.
  • Cookie-theft attacks: In the proposed scheme, the session cookie C k is stored and sent in the form of C K = h ( R s E t | | C I D i ) . G , (i.e., an ECC point multiplication) in the embedded device E D i . Therefore, it is very difficult to extract C K from C K because of the complexity of ECDLP. In addition, because of the tamper-proof design of E D i , it is impossible for an attacker to extract C K from it [43]. In addition, C K is sent through a secure, trusted channel during the registration step, which we have explained in Section 3.2. Consequently, the attacker cannot get the cookie ( C K ) . Therefore, the proposed scheme is secure against cookie-theft attacks.
  • Server-spoofing attacks: In these attacks, an adversary may masquerade as a server (TS) to uncover the secret credential of a device ( E D i ) . E D i s secret credential C I D i comprises the hashing of the random secret (R), the secret identity I i , and the server secret (s). In addition, C I D i is stored in the TS’s encrypted database (i.e., E k s = s .     I d T s . G ) in the form of C I D i = C I D i . G . Since the security of E k s is protected by ECDLP and CDHP, it is impossible for an attacker to extract C I D i from C I D i = C I D i . G . Thus, an attacker cannot get E D i s secret credentials C I D i by any means due to the complexity of solving ECDLP and CDHP and the device’s tamper-proof nature. Therefore, the proposed scheme is secure against server-spoofing attacks.
  • Stolen-verifier attack: If the attacker somehow discovers a smart card/smart device of server TS, the attacker could launch a power-analysis attack to uncover the secret information stored inside. However, in the proposed scheme, during the registration phase, TS stores t = T C I D i s I D T S ,   a = A i C I D i s I D T S and e t = E t C I D i s I D T S against C I D i . Even if the attacker somehow steals those records, the attacker cannot perform the malicious activity because he/she would be unable to access the plain text ( T , A , E t ) as the record is protected using the secret key (s) and I D T S of TS and C I D i . The security of s and I D T S in E k s = s .     I d T s . G is well protected by the concept of ECDLP and CDHP. In addition, the attacker cannot create a substantial login solicitation to pass the verification stage without knowing C K as it is not stored in the server’s database. Furthermore, cookie computation, i.e., C K = C K . G , depends on the correct computation of C K = h ( R s E t | | C I D i ) . Without knowing the server’s secret key (s), the attacker cannot compute a substantial cookie ( C K ) and, hence, cannot make a legitimate login request. In addition, it is impossible for an attacker to extract information stored in E D i due to its tamper-proof design. Therefore, the proposed scheme can withstand stolen-verifier attacks.
  • Man-in-the-middle attacks: Mutual authentication prevents man-in-the-middle attacks. We verified the mutual authentication of the proposed scheme using the ProVerif tool in Section 4.3. Thus, the proposed scheme successfully supports mutual authentication between E D i and TS. Consequently, the proposed scheme is secure against man-in-the-middle attacks.
  • Brute-force attacks: To launch a brute-force attack, an attacker must extract the security parameters X i , Y i , X j , Y j , and T from the transmitted messages. However, even if the attacker succeeds in extracting the parameters, he/she cannot determine the password p s w i or the server’s secret key (s), which is obscure and protected by the concepts of ECDLP and CDHP (which we mentioned earlier). Furthermore, there is no chance to speculate the random numbers ( x i 1 and x j 1 ) because of the protection offered by ECDLP and CDHP (i.e., this has already been explained in the section on known session-specific temporary information attacks). Therefore, the proposed scheme can resist brute-force attacks.
Table 2 summarizes the comparison of security attacks on the existing approaches and the proposed scheme. We selected some security attributes (i.e., usually protecting the security of an authentication protocol) for comparison. The comparison demonstrates that the proposed scheme is free from all the shortcomings in the existing schemes.

4.2. Formal Security Validation Using the AVISPA Tool

In this section, we perform the simulation of the proposed scheme by utilizing the AVISPA tool and ensuring that the proposed scheme is secure against both man-in-the-middle and replay attacks [44]. The AVISPA tool is a push-button tool for performing the automated validation of internet-security-sensitive protocols and applications. It has become widely accepted for formal security verification in recent years [13]. The AVISPA tool is coded in one of the power languages (i.e., high-level protocol specification language (HLPSL)). This language comprises the role that represents each participating activity. The role in a scenario is separate/different from that in other scenarios. The role receives primary information from a parameter that communicates with other roles through channels. Furthermore, the HLPSL protocol is translated into intermediate format specification using an HLPSL2IF translator. The input is given to one of the four back ends (i.e., on-the-fly model-checker (OFMC), tree automata based on automatic approximations for the examination of security protocols, constraint-logic-based attack searcher (CL–AtSe), and SAT-based model-checker) to create yield.
We implemented the proposed scheme on a SPAN Ubuntu 10.10 virtual machine with RAM = 2048 Gb. This experimental setup, installed on a Windows 10 operating system (OS) with an Intel Core i5–8500 and a 6–core 3.10 GHz CPU, was provided by the service provider. The AVISPA simulation used SPAN software to assess the security strength of the proposed protocol against both active and passive attacks using the AVISPA toolset. The numerous basic types were used to define specific criteria for the roles. For example, agent—the agent determines the principle of the attacker, receives the data, analyses it, and provides recommendations for the protocol being designed by correctly defining the state of whether the protocol is in a secure or dangerous state. Different basic types are utilized for defining the specifications of each role. Some of them are as follows: (1) agent: it defines the principal name of the intruder using a special identifier i, (2) public_key: it represents the public key, (3) symmetric_key: it represents the key used for encryption, (4) const: it defines the constant declared in the roles, (5) text: it represents the nonce that is always fresh and unique, and it secures the message from an attacker, (6) function: it represents the irreversible one-way hash cryptography function of the type hash_func used for modeling, and (7) nat: it represents the natural number in a no-message context.
The AVISPA tool receives input as a designed protocol, analyzes it, and precisely generates the output by portraying the state of whether the protocol is in a safe or an unsafe state. The channel is used for communication, which is supposed to be controlled by the Dolev–Yao attacker. This means that the intruder is modeled using the Dolev–Yao model, with the possibility that the intruder might assume a legitimate role in a protocol run. The session role defines all the basic roles. The role of environment is a top-level role, and it is the beginning point for the execution; furthermore, it instantiates a session role, utilizing distinctive basic roles to simulate various possible scenarios. Finally, in the goal section, according to our prerequisites of the designed protocol, we define all the necessary and sufficient goals. While writing the code in AVISPA, we wrote two primary roles: the first role was for the user devices and the second for the server. Subsequently, we wrote another three roles: the first role was for the session, the second for the environment, and the third for the goal. The last three roles represent the user devices and the second represents the server. Subsequently, we wrote another three roles: the first role was for the session, the second for the environment, and the third for the goal. The last three roles represent the execution environment of the first two roles. Figure 4 depicts the specific role performed by the agent. Upon receiving the start signal, the device U (i.e., EDi) updates its state from 0 to 1. This state is expressed (Pass1′, Ga′) > (i.e., <Ii, Pke> ) securely to the server through a secure channel (SND); we call this the registration phase. The transmission channel < SND, RCV >, which is an unreliable channel, is used for the message transmission of the Dolev–Yao-type threat model; it enables an attacker to modify or delete the contents of transmitted messages. Afterward, in response, U receives the message <Cid′, Ck′> (i.e., <CIDi, CK′> ) from the server securely with the help of the secure RCV channel. During the login phase, U sends a message <Cid′, P1′, P2′ > (i.e., <CIDi, Xi, Yi>) to the server via the public open channel (see Figure 5).
Subsequently, the server responds with a message <T′, P3′, P4′> (i.e., <T, Xj, Yj>) to U via the public open channel. Finally, EDi replies with the message <Vi’> (i.e., < C > ) to the server via the public open channel. A knowledge declaration situated at the top of each role is used to specify the initial knowledge of the intruder. The immediate-reaction transition is of the form X = | > Y, which relates an event X to an action Y. The declaration witness <U, S, seq2, Cid′. P1′.P2′> is generated by U, where the seq2 indicates the message sequence (i.e., message <alice_bob _ Cid′.P1′.P2′> from Alice to Bob) and <P1′, P2′> is freshly generated for the server (S). Subsequently, again, another declaration request < S, U, seq5, T′.P3′.P4′> shows U′s acceptance of the random nonce <P3′,P4′> generated for EDi by the server, where seq5 indicates the message sequence (i.e., message <bob_alice _ T′.P3′.P4′> from Bob to Alice). Similarly, we executed the role of the server during the registration phase. Finally, as depicted in Figure 6, we implemented the role of the session, goal, and environment of the proposed scheme. All these roles are the instances with solid arguments in the role session. In the HLPSL protocol, the intruder (i) is likewise interested in the execution of protocol in a concrete session. Furthermore, we defined many secret goals and nine authentication goals. For example, the secret goal (secrecy_of_k1) indicates that IDi and Pswi are kept secret from the device U only. The authentication goal: authentication_on seq2 (i.e., authentication_on alice_bob_,Cid′.P1′.P2′) means that U generates <Cid′.P1′.P2′>, where secret N1′ hidden inside <P1′,P2′> is only known to U. When the server receives <Cid′.P1′.P2′> from other messages from the same U, the server performs a strong authentication for the devices based on <P1′,P2′>. For analyzing the protocol, we selected widely accepted CL–AtSe and OFMC backend for the execution tests. Both CL–AtSe and OFMC backends analyze whether the legal agents can execute the specific scheme by searching for the passive intruder. Subsequently, backend results provide the intruders with the knowledge of some typical sessions among the legitimate agents. The section summary on the CL–AtSe and OFMC backend indicates whether the protocol is SAFE, UNSAFE, or INCONCLUSIVE against all active and passive attacks [13,25]. As depicted in Figure 7, our output summary section shows the safe terminology, meaning that the proposed protocol is safe against significant attacks. Furthermore, the section details specify that the condition under which the proposed protocol is safe or has been used for an attack, and the details also specify why the analysis was inconclusive. Moreover, the protocol section specifies the name of the protocol. The goal section indicates the main objective of the analysis. The backend section represents the name of the backend used. The statistics section specifies why the analysis was inconclusive. The attack-trace section specifies whether an attack is found; the trace of the attack is printed in the standard seq (i.e., Alice–Bob) format. It also represents how the attack has been performed in the protocol. Therefore, on the basis of analyzing the simulation result from Figure 7, we conclude that the proposed protocol is safe.
  • Replay attack: For the replay-attack check, the CL–AtSe and OFMC backend confirms whether the genuine agents can execute the specified protocol by inquiring about an inactive intruder. This backend provides the interloper with the information of some normal sessions among the genuine agents. The outcomes in Figure 7 show that our scheme is secure against replay attacks.
  • Active and passive attack check: The outline result for the CL–AtSe and OFMC backend shows that the proposed scheme is SAFE, meaning that the proposed scheme is secure against all active and passive attacks.
  • Dolev–Yao model check: For performing the Dolev–Yao model check, the CL–AtSe and OFMC backend additionally confirms whether there is a conceivable man-in-the-middle attack by an intruder. The outcomes show that our scheme satisfies the design properties and is also secure under this backend.

4.3. Formal Security Validation Using ProVerif Tool

ProVerif is widely accepted as an automatic cryptographic protocol verifier tool in the symbolic model (the so-called Dolev–Yao model) [14]. This protocol verifier depends on the portrayal of the protocol by Horn clauses. In this subsection, we implemented the proposed scheme in the Proverif tool to test its correctness of mutual authentication. We performed this experiment on an Intel Core i5–8500 computer, with a 6–core 3.10 GHz CPU and a Windows 10 OS, provided by a service provider. This simulation used the ProVerif version 2.00 binary package [43] to stimulate the registration, mutual authentication, and session key agreement phase between an embedded device and a server. A description of the ProVerif simulation tool can be found in [14].
As depicted in Figure 8, the model comprises three fragments, namely, parameter declaration, principal process, and query execution. The parameter-declaration fragment includes variables, names, and channels other than those with cryptographic capacities. The meanings of the principal process and subprocess are explained in the process segment, although the outline of the assessing scheme is set up in the query-execution segment. A couple of channels, constants, variables, and factors other than those with cryptographic capacities, outlined as constructors and conditions, are displayed in the parameter-declaration fragment. Furthermore, as shown in Figure 9, the principle-process fragment characterizes the commencement and end of the participating clients. The procedures of the execution of the participating clients are kept parallel. Toward the end of the execution, three queries are executed to amend the correctness and secrecy of the proposed scheme. The consequences of the queries are shown in Figure 10. The rightness of the proposed scheme is substantiated because the initial two queries are executed successfully, which indicate the successful beginning of initial interaction between the devices and the server, although its secrecy is affirmed because of an unsuccessful query (i.e., last query in the Queries section in Figure 10) attack on the session key.

5. Evaluation

In the previous section, we verified the security of our proposed scheme by using the AVISPA tool. We also verified the mutual authentication and session-key agreement of the proposed scheme by using the ProVerif tool. In this section, we present how the proposed scheme is more efficient than the existing schemes in terms of computation, communication, and storage cost, based on a performance analysis, an efficiency study, and a performance study. Note that to evaluate the performance of the proposed scheme, we selected nine recently published authentication schemes (i.e., [16,17,18,19,20,21,22,23,24,25]) that have focused on lightweight performance.

5.1. Comparison by Performance

In this section, we implemented the PBC library on embedded devices to calculate the primitive timing needed to measure the operational cost of the proposed scheme. In the PBC library, we implemented a pairing operation on a curve y2 = + x3 + x over the field Fq for some prime q = 3 mod 4, where both G1 and G1 are the group of points belonging to the E(Fq). Note that SHA–256 is much more secure than other hashing algorithms and provides 2256 possible hash values, which makes it nearly impossible for two different attackers to have the exact same hash value coincidentally [45]. Therefore, we used the standard SHA–256 function to compute the cost of the general hash operation. Our experimental setup consisted of an Ubuntu 12.04 virtual machine installed on an Intel Core i5–8500 computer, with a 6–core 3.10 GHz CPU and a Windows 10 OS, provided by a service provider. In the Oracle virtual environment, we stimulated IoT devices and set RAM to 256 MB and execution cap to 26 percent (i.e., it reflects a single-core 798 MHz CPU), which is not very far from a real IoT system configuration [46].
To calculate the primitive timing of different cryptography operations used in the proposed scheme, our simulation used the pbc–0.5.14 library [10] and the GMP library [47]. Finally, we calculated and compared the operational cost of the proposed scheme and existing schemes using the PBC library to testify to the performance of the proposed scheme over existing schemes. Note that existing schemes use heavy operations such as bilinear pairings, modular exponentiation, and symmetric encryption + decryption, which are generally the most computationally expensive cryptographic operations. Therefore, we computed only such heavy operations on IoT devices and noted their respective execution times for the existing schemes. Then, we implemented the proposed scheme’s code and recorded the execution time for hash and ECC operation. Table 3 summarizes the outcome of the simulation performance analysis of the PBC code, which we executed, along with the terms used to describe different cryptographic operations. The cost of detail computation is as follows:
  • Computational cost: Notice that the computing costs of lightweight operations (i.e., XOR, concatenation, and comparison) are overlooked due to their inexpensive computation. At the authentication phase, a considerable computing process is conducted. Hence, we measure the cost of the computation at the authentication phase. As depicted in Table 4, we compute some recent schemes’ computation cost along with that of the proposed scheme. To compute cost, we count the number of T h ,   T e c m , T e x p o ,   T p a i r , and Ts operations involved in the login phase, where communication happens on a public open channel. Then, for each cryptography operation, we assign the value we obtained in our PBC implementation. We evaluated all computation costs in ms; however, this ms is the considerable maximum period when processing a high number of authentication requests (i.e., millions and zillions) in a real-time scenario. We also computed the computation cost of some recent schemes. Compared to the computation costs of the existing schemes, the proposed scheme is more productive by virtue of its lightweight computation power.
  • Communication cost: We used the parameter < q, r > of each of the size < 256, 224 > bits during the PBC–library-based primitive timing calculation; we chose this parameter since the suggested elliptic curve key length is 256 bit for NIST 2016–2030 and ECRYPR II 2031–2040. An ECC point X , Y = x P , y P E p a , b therefore, requires (128 + 128) = 256 bits, where each parameter consumes 128 bits. The costs of the other parameters for the communication element, described in Table 5, are X i , Y i , C I D i , X j , Y j , T , and Ci. Thus, the communication cost is X i , Y i , C I D i + X j , Y j , T + C i ) (640 + 640 + 128) = 1408 bits. Similarly, we computed the communication costs for the recent schemes of existing approaches and compared the recent schemes with the proposed scheme. In comparison, as depicted in Table 4, we conclude that the communication cost of the proposed protocol is lower than the existing schemes.
  • Storage cost: Throughout this subsection, we measured the storage component cost depending on the PBC library applied on our machine, which meets NIST [48] and ECRYPR II [49], stored in the embedded device’s memory. In the proposed scheme, the embedded device stores cookies as recommendations. To compute storage cost, we need to identify the number of components is well as their pseudo-identity (i.e., C k , C I D i ), thereby consuming 256 + 128 = 384 bits of memory. Likewise, we counted a number of components stored in the embedded devices’ memory for recent schemes and computed their storage cost. From Table 4, we infer that the proposed scheme consumes a very small amount of memory, 384 bits, compared to other existing schemes.
Thus, from Table 4, we conclude that the proposed scheme has a lower running (i.e., operation) cost for IoT devices relative to other recent schemes. This lower operating cost helps the proposed scheme to eliminate the existing gaps in recent schemes in order to become more efficient and suitable for real-time scenarios.

5.2. Comparison by Functional Requirement

This subsection compares the proposed scheme with those of the existing schemes by satisfying the following crucial functionality requirements:
  • Mutual authentication: The proposed scheme provides mutual authentication between embedded devices ( E D i ) and server (TS) by using a three-way challenge–response handshake technique. The TS validates E D i by checking whether Y i i . e . ,   h X i . C K = ? Y i and C i i . e . ,   h Y i A = ? C i , while E D i validates S by verifying whether Y j i . e . ,   h X j . A = ? Y j . It is impossible to compute Y j without knowing C K and I i as both C K and I i are completely secure due to the tamper-proof nature of the device [43]. Furthermore, in a server, the security of CK depends upon the factors R and E t . This factor (i.e., R, A and Et) security is protected by a secret server key (s) and a secret identity. This parameter (i.e., s and I D T S ) security is preserved in a server key ( E k s = s . I D T S . G ) by the concept of ECDLP and CDHP. For the above-mentioned reasons, the attacker cannot compute factors h ( Y i A ) and h X i . C K without knowing A and C K . Thus, only E D i and TS can mutually authenticate each other. The result shown in the Proverif tool in Section 4.3 verifies the mutual authentication confirmation. Therefore, the proposed scheme achieves mutual authentication.
  • Confidentiality (or friendly password selection and its security): In the proposed scheme, for easy remembering, the client can pick a simple password p s w i , which might be of low or high intensity [41]. This password is stored in the password-generator format (i.e., P k e = p s w i . G ). It is very difficult to extract the password from the password generator because of the difficulty of ECDLP. Even identity I i   = h ( I D i   | | P s w i   ) contains a hash of the concatenation of device identity and the password generator, which is stored in the server. It is very difficult to extract a P s w i from I i because of the property of the collision-resistant one-way hash function (h()).
  • Session-key agreement: The proposed scheme justifies the session-key agreement in the session-key-computation subsection, ensuring secure sessions with highly confidential data exchange between the embedded devices ( E D i ) and the server (TS). In addition, a session key   S K = x i 1 . X j .   P s w i . P k s = x j 1 . X i . s . P k e   is protected by the concept of ECDLP and CDHP. The result from the Proverif tool in Section 4.3 also verifies its session key security.
  • Secure password update: The proposed scheme supports password updates for embedded devices. The password update helps ensure the security of the proposed protocol (i.e., it prevents DoS attacks on the scheme). Legitimate embedded devices can change their passwords any time after registration.
Finally, as depicted in Table 5, we compared the proposed scheme with the existing schemes on functional requirements. In the comparison, we observed that the scheme proposed by Zhou et al., Yu et al., Yu et al., Sengupta et al., and Wang et al. support all crucial functional requirements. However, the scheme proposed by Xie et al., Chatterjee et al., and Wang et al. failed to support friendly password selection and its security and to secure password updates. The scheme proposed by Yang et al. failed to support a secure password update policy. However, the proposed scheme removed those limitations and reinforced security requirements.

5.3. Summary

In this section, as depicted in Figure 11, we summarize the proposed scheme’s performance in comparison with the existing schemes based on security necessities, cost calculation, and functional requirement factors using the earlier analysis results in Section 5.1 and Section 5.2. The first, second, third, and fourth bars in Figure 11 represent computation, communication, storage cost, the types of security attacks prevented, and the number of additional security features (i.e., crucial functional requirements) supported. The analysis results in Figure 11 show that recent authentication schemes have high computation cost or high storage cost or high communication levels. Furthermore, the existing schemes suffer from various security attacks and lack other crucial security requirements, such as friendly password selection and its security and update policy. However, the proposed scheme eliminates all the previously mentioned security-related problems and vulnerabilities of the existing schemes and prevents 12 types of security attacks. Moreover, the proposed scheme also supports prevention against four more security attacks, which we explained in Section 4.1. Therefore, the proposed scheme removes security weakness from the recent existing schemes and prevents 16 types of major security attacks. Furthermore, the proposed scheme not only secures against 16 major attacks but also successfully improves security mechanisms by providing four additional security features (i.e., mutual authentication, session-key agreement, friendly password selection, and updates) at the same time, which is absent in recent existing schemes. In addition, the proposed scheme maintains the lowest computational cost of 9330 × 10 1   μ s , the lowest storage cost of 384 bit, and the lowest communication cost of 1408 bit. Due to the lightweight nature of the proposed scheme, the proposed scheme is significantly more efficient in handling a high number (i.e., millions or zillions) of authentication requests in real-time IoT cloud scenarios. This lightweight flexibility helps the proposed scheme to achieve significant optimized usage of memory, electricity power, and computational power and efficiently reduce traffic on the communication channel and improve the response time of authentication requests. This is the significant contribution of this paper, which will play a substantial role while dealing with a huge organizational need.

6. Conclusions

In this study, we examined current authentication schemes reported to be secure, lightweight architecture in IoT environments. The analysis of the study indicates that the current schemes do not achieve the target of lightweight computing with resilience to all forms of known attack. This would also reduce the performance of embedded devices, which results in the consumption of additional resources (e.g., electricity power, memory). Therefore, this can be a significant loss while satisfying users’ needs in a vast organizational scenario. To address this issue, we proposed a novel lightweight-computation authentication scheme. We verified the security strength of the proposed scheme using mathematical formulation (i.e., informal security analysis for 16 security attacks). Then, we verified the mathematical proof using widely accepted standard AVISPA and ProVerif tools. The result confirms that the proposed scheme is preventive against all kinds of active and passive attacks. Moreover, we verified the performance of the proposed scheme by implementing the widely accepted standard PBC library on the embedded devices. The outcome shows that the proposed scheme is lightweight (i.e., lowest computation (0.933 ms), communication (1408 bit), and storage (384 bit)) compared with other recent authentication protocols, rendering the proposed scheme reasonable and realistic for massive implementation scenarios based on industrial IoT environments. In the future, we would like to build an interoperable architecture to allow devices to use the same kind of lightweight authentication mechanism when accessing different types of cloud network services. The interesting fundamental question that arises from our research analysis is whether the lack of sufficient security and a lightweight goal can explain many of the possible repeated errors in past authentication protocols and the importance of building a more efficient, robust, lightweight authentication scheme in future work.

Author Contributions

Formal analysis, A.T.; funding acquisition, Y.-G.K.; investigation, A.T.; validation, Y.-G.K.; writing—original draft, A.T.; writing—review and editing, Y.-G.K. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by an Institute of Information and Communications Technology Planning and Evaluation (IITP) grant funded by the Korea government (MSIT; No.2019- 0-00231, development of artificial intelligence-based video security technology and systems for public infrastructure safety).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Roy, S.; Chatterjee, S.; Das, A.K.; Chattopadhyay, S.; Kumari, S.; Jo, M. Chaotic map-based anonymous user authentication scheme with user biometrics and fuzzy extractor for crowdsourcing internet of things. IEEE Internet Things J. 2018, 5, 2884–2895. [Google Scholar]
  2. Yang, Y.; Wu, L.; Yin, G.; Li, L.; Zhao, H. A survey on security and privacy issues in internet-of-things. IEEE Internet Things J. 2017, 4, 1250–1258. [Google Scholar]
  3. Antonakakis, M.; April, T.; Bailey, M.; Bernhard, M.; Bursztein, E.; Cochran, J.; Durumeric, Z.; Halderman, J.A.; Invernizzi, L.; Kallitsis, M.; et al. Understanding the mirai botnet. In Proceedings of the 26th USENIX Security Symposium (USENIX Security 17), Vancouver, BC, Canada, 16–18 August 2017; pp. 1093–1110. [Google Scholar]
  4. Kelly, C.; Kelly, N.; McKeown, S.; Lambrinoudakis, C. Testing and hardening IoT devices against the mirai botnet. In Proceedings of the 2020 International Conference on Cyber Security and Protection of Digital Services (Cyber Security), Dublin, Ireland, 15–19 June 2020; pp. 1–8. [Google Scholar]
  5. Oh, S.-R.; Kim, Y.-G.; Cho, S. An interoperable access control framework for diverse IoT platforms based on oauth and role. Sensors 2019, 19, 1884. [Google Scholar]
  6. Park, Y.; Choi, H.; Cho, S.; Kim, Y.-G. Security analysis of smart speaker: Security attacks and mitigation. Comput. Mater. Contin. 2019, 61, 1075–1090. [Google Scholar]
  7. Dhillon, P.K.; Kalra, S. A secure multi-factor ECC based authentication scheme for cloud-IoT based healthcare services. J. Ambient Intell. Smart Environ. 2019, 11, 149–164. [Google Scholar]
  8. Punithavathi, P.; Geetha, S.; Karuppiah, M.; Islam, S.H.; Hassan, M.M.; Choo, K.K.R. A lightweight machine learning-based authentication framework for smart IoT devices. Inf. Sci. 2019, 484, 255–268. [Google Scholar]
  9. Wang, P.; Li, B.; Shi, H.; Shen, Y.; Wang, D. Revisiting anonymous two-factor authentication schemes for IoT-enabled devices in cloud computing environments. Secur. Commun. Netw. 2019, 2019, 2516963. [Google Scholar]
  10. Pbc Library. Available online: https://crypto.stanford.edu/pbc/ (accessed on 16 December 2020).
  11. 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]
  12. Panda, P.K.; Chattopadhyay, S. A secure mutual authentication protocol for IoT environment. J. Reliab. Intell. Environ. 2020, 6, 79–94. [Google Scholar]
  13. Oheimb, D.V. The high-level protocol specification language helps developed in the EU project AVISPA. In Proceedings of the APPSEM 2005, Frauenchiemsee, Germany, 12–15 September 2005; pp. 1–17. [Google Scholar]
  14. Maitra, T.; Obaidat, M.S.; Amin, R.; Islam, S.H.; Chaudhry, S.A.; Giri, D. A robust elgamal-based password-authentication protocol using smart card for client-server communication. Int. J. Commun. Syst. 2017, 30, e3242. [Google Scholar]
  15. Sowjanya, K.; Dasgupta, M.; Ray, S. An elliptic curve cryptography based enhanced anonymous authentication protocol for wearable health monitoring systems. Int. J. Inf. Secur. 2020, 19, 129–146. [Google Scholar]
  16. Zhou, L.; Li, X.; Yeh, K.H.; Su, C.; Chiu, W. Lightweight IoT-based authentication scheme in cloud computing circumstance. future generation computer systems. Future Gener. Comput. Syst. 2019, 91, 244–251. [Google Scholar]
  17. 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]
  18. Xie, Z.; Jiang, L. An improved authentication scheme for the internet of things. Mater. Sci. Eng. 2020, 715, 012031. [Google Scholar]
  19. Wang, K.-H.; Chen, C.-M.; Fang, W.; Wu, T.-Y. A secure authentication scheme for the internet of things. Pervasive Mob. Comput. 2017, 42, 15–26. [Google Scholar]
  20. Chatterjee, S.; Samaddar, S.G. A robust lightweight ECC-based three-way authentication scheme for IoT in the cloud. In Proceedings of the 6th International Conference on Advanced Computing Networking, and Informatics (ICANI 2018) NIT, Silchar, India, 4–6 June 2018; pp. 101–111. [Google Scholar]
  21. 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]
  22. Sengupta, S. A secured biometric-based authentication scheme in IoT-based patient monitoring system. In Proceedings of the International Conference on Emerging Technology in Modelling and Graphics (IEMGraph 2018), Kolkata, India, 6–7 September 2018; pp. 501–518. [Google Scholar]
  23. Yang, S.K.; Shiue, Y.M.; Su, Z.Y.; Liu, I.H.; Liu, C.G. An authentication information exchange scheme in WSN for IoT applications. IEEE Access 2020, 8, 9728–9738. [Google Scholar]
  24. 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. Wireless Commun. Mobil. Comput. 2020, 2020, 3805058. [Google Scholar]
  25. Wazid, M.; Das, A.K.; Bhat, V.; Vasilakos, A.V. LAM-CIoT: Lightweight authentication mechanism in a cloud-based IoT environment. J. Netw. Comput. Appl. 2020, 150, 102496. [Google Scholar]
  26. Wei, F.; Zhang, R.; Ma, C. A provably secure anonymous two-factor authenticated key exchange protocol for cloud computing. Fundam. Inform. 2018, 157, 201–220. [Google Scholar]
  27. Li, X.; Xiong, Y.; Ma, J.; Wang, W. An efficient and security dynamic identity based authentication protocol for multi-server architecture using smart cards. J. Netw. Comput. Appl. 2012, 35, 763–769. [Google Scholar]
  28. Wang, B.; Ma, M. A smart card based efficient and secured multi-server authentication scheme. Wireless Pers. Commun. 2013, 68, 361–378. [Google Scholar]
  29. 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]
  30. Feng, Y.; Wang, W.; Weng, Y.; Zhang, H. A replay-attack resistant authentication scheme for the internet of things. In Proceedings of the 2017 IEEE International Conference on Computational Science and Engineering (CSE) and IEEE International Conference on Embedded and Ubiquitous Computing (euc), Guangzhou, China, 21–24 July 2017; pp. 541–547. [Google Scholar]
  31. 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]
  32. Kumari, S.; Khan, M.K.; Li, X. An improved remote user authentication scheme with key agreement. Comput. Electr. Eng. 2014, 40, 1997–2012. [Google Scholar]
  33. Alkuhlani, A.M.; Thorat, S.B. Lightweight anonymity-preserving authentication and key agreement protocol for the internet of things environment. In Proceedings of the International Conference on Intelligent Information Technologies (ICIIT 2017), Chennai, India, 20–22 December 2018; pp. 108–125. [Google Scholar]
  34. Dhillon, P.K.; Kalra, S. Multi-factor user authentication scheme for IoT-based healthcare services. J. Reliab. Intell. Environ. 2018, 4, 141–160. [Google Scholar]
  35. Amin, R.; Kumar, N.; Biswas, G.P.; 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]
  36. Xue, K.; Hong, P.; Ma, C. A lightweight dynamic pseudonym identity based authentication and key agreement protocol without verification tables for multi-server architecture. J. Comput. Syst. Sci. 2014, 80, 195–206. [Google Scholar]
  37. Yu, W.; Liang, F.; He, X.; Hatcher, W.G.; Lu, C.; Lin, J.; Yang, X. A survey on the edge computing for the internet of things. IEEE Access 2017, 6, 6900–6919. [Google Scholar]
  38. Hester, R.E.; Harrison, R.M. Energy Storage Options and Their Environmental Impact; Royal Society of Chemistry: London, UK, 2018. [Google Scholar]
  39. Lo, J.W.; Wu, C.Y.; Chiou, S.F. A lightweight authentication and key agreement scheme for telecare medicine information system. J. Inter. Technol. 2020, 21, 263–272. [Google Scholar]
  40. Kumari, S.; Karuppiah, M.; Das, A.K.; Li, X.; Wu, F.; Kumar, N. A secure authentication scheme based on elliptic curve cryptography for IoT and cloud servers. J. Supercomput. 2018, 74, 6428–6453. [Google Scholar]
  41. Bertino, E.; Shang, N.; Wagstaff, S.S., Jr. An efficient time-bound hierarchical key management scheme for secure broadcasting. IEEE Trans. Depend. Secur. Comput. 2008, 5, 65–70. [Google Scholar]
  42. wolfSSL. Available online: http://www.wolfssl.com/ (accessed on 16 December 2020).
  43. Proverif: Cryptographic Protocol Verifier in the Formal Model. Available online: http://prosecco.gforge.inria.fr/personal/bblanche/proverif/ (accessed on 16 December 2020).
  44. AVISPA Web Tool. Available online: http://www.avispa-project.org/web-interface/basic.php (accessed on 16 December 2020).
  45. Chen, Y.; Martínez, J.F.; Castillejo, P.; López, L. A bilinear map pairing based authentication scheme for smart grid communications: Pauth. IEEE Access 2019, 7, 22633–22643. [Google Scholar]
  46. Smart Connected Secure. Available online: http://www.microchip.com/design-centers/internet-of-things (accessed on 16 December 2020).
  47. GMP Source. Library for Arbitrary Precision Arithmetic, Operating on Signed Integers, Rational Numbers, and Floating-Point Numbers. Available online: https://gmplib.org/ (accessed on 16 December 2020).
  48. Recommendation for Key Management, Part 1: General, SP 800-57 Part 1 Rev. 4. Available online: https://www.keylength.com/en/compare/ (accessed on 16 December 2020).
  49. Algorithms, Key Size and Protocols Report. Document H2020-ICT2014-Project 645421, D5.4. ECRYPT-CSA. 2018. Available online: https://www.ecrypt.eu.org/csa/documents/D5.4-FinalAlgKeySizeProt.pdf (accessed on 16 December 2020).
Figure 1. Proposed elliptic-curve cryptography (ECC)-based registration scheme.
Figure 1. Proposed elliptic-curve cryptography (ECC)-based registration scheme.
Applsci 11 01260 g001
Figure 2. Proposed ECC-based login scheme.
Figure 2. Proposed ECC-based login scheme.
Applsci 11 01260 g002
Figure 3. Password-change phase.
Figure 3. Password-change phase.
Applsci 11 01260 g003
Figure 4. Role specification for IoT devices.
Figure 4. Role specification for IoT devices.
Applsci 11 01260 g004
Figure 5. Role specification for server.
Figure 5. Role specification for server.
Applsci 11 01260 g005
Figure 6. Role specification for IoT devices.
Figure 6. Role specification for IoT devices.
Applsci 11 01260 g006
Figure 7. Role specification for server.
Figure 7. Role specification for server.
Applsci 11 01260 g007
Figure 8. Declaration of parameters, with event and query execution.
Figure 8. Declaration of parameters, with event and query execution.
Applsci 11 01260 g008
Figure 9. Process specification for embedded device and server.
Figure 9. Process specification for embedded device and server.
Applsci 11 01260 g009
Figure 10. Output of query execution.
Figure 10. Output of query execution.
Applsci 11 01260 g010
Figure 11. Summary of performance analysis.
Figure 11. Summary of performance analysis.
Applsci 11 01260 g011
Table 1. Notation guide.
Table 1. Notation guide.
NotationDescription
PSWiSecret password of the embedded device
PkePublic key of the embedded device
PksPublic key of the server
IiHashed embedded device ID
CIDiServer-generated embedded device ID
CKSession cookie
sServer private key
EksServer database table encryption key
Xi, Yi, Xj, Yj, CChallenges
xi1, xj1Ephemeral secrets
EtExpiration time of the cookie
A, TEquations
SkSession key
IDTSUnique secret identity of server TS
EkeTamper-proof device storage table encryption key
Table 2. Comparison by types of security attack.
Table 2. Comparison by types of security attack.
Attacking ScenariosZhou et al. [16]Yu et al. [17]Xie et al. [18]Chatterjee et al. [20]Yu et al. [21]Sengupta et al. [22]Yang et al. [23]Wang et al. [24]Wazid et al. [25]Proposed
Reply attackVPPPPPPPPP
Password guessing attackPVVVVPVPPP
Embedded device impersonation attackVPPVVVPVPP
DoS attackVVVVPPVVPP
Many logged-in user attackVVVVVVVVVP
Server impersonation attackVVVVVVVVVP
Forward secrecyVPVPPPVPVP
Insider attackPVVVPVVPPP
Known session -specific temporary information attackVVVPVVVPVP
Attack on user anonymityPPVVPPPPPP
Database attackVVVVVVVVVP
Cookie theft attackVVPVVVVPVP
V: vulnerable; P: protected.
Table 3. Primitive timing for cryptography operation.
Table 3. Primitive timing for cryptography operation.
OperationTerminologyExecution Time (ms)
Hash operationTh0.039
ECC operationTecm0.110
Modular exponentiationTexpo0.343
PairingTpair0.992
Symmetric encryption + decryptionTs0.686
Table 4. Comparison of computation, communication, and storage costs.
Table 4. Comparison of computation, communication, and storage costs.
SchemesComputation Cost (ms)# of MessagesCommunication Cost (Bit)Storage Cost (Bit)
Zhou et al. [16]36Th = 1.40443072640
Yu et al. [17]34Th = 1.32642176384
Xie et al. [18]9Th + 7Tecm = 1.12151792384
Chatterjee et al. [20]11Th + 13Tecm = 1.85942176640
Yu et al. [21]1Tpair + 6Texpo + 6Th = 3.28431408768
Sengupta et al. [22]11Th + 9Tecm = 1.41931408640
Yang et al. [23]28Th = 1.311105376512
Wang et al. [24]21Th + 5Ts = 4.24942304768
Wazid et al. [25]34Th = 1.32631664640
Proposed7Th + 6Tecm = 0.93331408384
Table 5. Comparison of functional requirements.
Table 5. Comparison of functional requirements.
SchemesMutual AuthenticationFriendly Password Selection and Its SecuritySession-Key
Agreement
Secured Password Update
Zhou et al. [16]SupportedSupportedSupportedSupported
Yu et al. [17]SupportedSupportedSupportedSupported
Xie et al. [18]Supportedn/aSupportedn/a
Chatterjee et al. [20]Supportedn/aSupportedn/a
Yu et al. [21]SupportedSupportedSupportedSupported
Sengupta et al. [22]SupportedSupportedSupportedSupported
Yang et al. [23]SupportedSupportedSupportedn/a
Wang et al. [24]SupportedSupportedSupportedSupported
Wazid et al. [25]Supportedn/aSupportedn/a
ProposedSupportedSupportedSupportedSupported
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Thakare, A.; Kim, Y.-G. Secure and Efficient Authentication Scheme in IoT Environments. Appl. Sci. 2021, 11, 1260. https://doi.org/10.3390/app11031260

AMA Style

Thakare A, Kim Y-G. Secure and Efficient Authentication Scheme in IoT Environments. Applied Sciences. 2021; 11(3):1260. https://doi.org/10.3390/app11031260

Chicago/Turabian Style

Thakare, Abhijeet, and Young-Gab Kim. 2021. "Secure and Efficient Authentication Scheme in IoT Environments" Applied Sciences 11, no. 3: 1260. https://doi.org/10.3390/app11031260

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