Zum Hauptinhalt springen

A Lightweight Secure User Authentication and Key Agreement Protocol for Wireless Sensor Networks

Mo, Jiaqing ; Chen, Hang
In: Security and Communication Networks, Jg. 2019 (2019)
Online unknown

A Lightweight Secure User Authentication and Key Agreement Protocol for Wireless Sensor Networks  1. Introduction

Wireless sensor networks (WSNs) have great potential for numerous domains of application because of their ability to sense and understand unattended environments. However, a WSN is subject to various attacks due to the openness of the public wireless channel. Therefore, a secure authentication mechanism is vital to enable secure communication within WSNs, and many studies on authentication techniques have been presented to build robust WSNs. Recently, Lu et al. analyzed the security defects of the previous ones and proposed an anonymous three-factor authenticated key agreement protocol for WSNs. However, we found that their protocol is vulnerable to some security weaknesses, such as the offline password guessing attack, known session-specific temporary information attack, and no session key backward secrecy. We propose a lightweight security-improved three-factor authentication scheme for WSNs to overcome the previously stated weaknesses. In addition, the improved scheme is proven to be secure under the random oracle model, and a formal verification is conducted by ProVerif to reveal that the proposal achieves the required security features. Moreover, the theoretical analysis indicates that the proposal can resist known attacks. A comparison with related works demonstrates that the proposed scheme is superior due to its reasonable performance and additional security features.

A wireless sensor network (WSN) is an intelligent network that can achieve data collection, data fusion, and data transmission independently. It combines the logical information world and the real physical world together closely to realize the "ubiquitous computing" mode [[1]–[3]]. A WSN comprises many tiny sensor nodes, which have limited battery power and computation capability, and they can be deployed in untended target fields, such as habitats [[4]], health care [[5]], agriculture [[6]], battlefields [[7]], and environmental monitoring [[8]]. These nodes sense the environment, collect data from the surrounding areas, and transmit them to the closest gateway node (GWN) via wireless channels for further transferring to external users. Thus, WSNs have wide application scenarios, such as city management, emergency medical care, temperature and humidity monitoring in agriculture, wildlife monitoring, antiterrorism, military defense, and so on. However, the messages transmitted in the wireless channel are easily eavesdropped, injected, rerouted, and altered by an adversary because of the broadcast nature and insecurity of wireless communication. Although the WSN has adequate security progress in its lower layers, such as link layer and network layer [[9]], it is still necessary to design mutual authentication schemes with key agreement in the application layer to prevent unauthorized access to the sensor node. As shown in Figure 1, authentication mechanisms should be provided to protect the secure communication between related parties in a WSN.

Graph: Figure 1 Typical architecture of wireless sensor networks.

In addition, traditional security service architectures, such as IPsec [[11]] and IKE [[12]], are not suitable for WSNs because the sensors in a WSN have limited battery power and computation capability. Consequently, the authentication with key establishment between sensors and the user outside the WSN should have lightweight computation and should be robust enough to withstand well-known attacks from adversaries. In other words, it is vital that the user should be authenticated before he is permitted to access the remote sensor to acquire data, and the sensor to be accessed should be an authorized one. In particular, a shared session key should be generated between the sensor and the user to protect the data transmission. Moreover, users likely prefer to keep their identity and other privacy undisclosed to avoid being tracked by adversaries when they communicate with the sensors in a WSN. Thus, the user's anonymity and untraceability are desirable security properties in the authentication scheme in WSNs.

1.1. Related Works

In the last several years, many authentication schemes have been presented to prevent unauthorized access to transmitted data within WSN from malicious users or adversaries. Li-Xiong [[13]], Chen et al. [[14]], and Ramachandran-Shanmugam [[15]] proposed mutual authentication schemes on bilinear pairing for WSN and generated a session key among the related parties. However, employing bilinear pairing makes the computation burden very heavy, and thus, these schemes are not practical for WSNs.

In 2006, Wong et al. [[16]] proposed a user authentication scheme with hash function and exclusive-or (XOR) operation for WSNs. In their scheme, the user submits his identity and password to a system interface and directly accesses the sensor within the expiration time. However, Tseng found that Wong's scheme was vulnerable to the replay attack, stolen verifier attack, and impersonation attack and then put forward a modified version while adding a new password change phase to solve the problem of the static password [[17]]. Generally, the security of the type of scheme [[16]] only depending on the single factor of password easily leads to password guessing attack.

To address the above security issues, Das [[18]] first put forward the concept of two-factor authentication, that is, using a smart card along with a password. There is no doubt that Das's scheme [[18]] introduced the authentication concept of two-factor, removing the need to maintain a database on the gateway and store user-specific information on the sensor, thus paving a new way of application layer authentication for WSNs. The author claimed that his scheme has the security merits of only using hash function, requiring less communication overhead and resisting various attacks. However, several researchers [[19]–[21]] analyzed Das's scheme [[18]] and found that it had various loopholes. Nyang and Lee [[19]] found that Das's protocol [[18]] was vulnerable to the offline password guessing attack, and sensor node capture attack, and presented an improved version to overcome these weaknesses. In the same year, Huang et al. [[20]] examined Das's scheme [[18]] for weaknesses such as the inability to provide user anonymity and withstand sensor impersonation attack. Huang et al. [[20]] also proposed an enhanced scheme to repair the pitfalls in Das's scheme [[18]]. Later, He et al. [[21]] pointed out that Das's scheme [[18]] suffered from insider attack along with impersonation attack. As a countermeasure to these drawbacks, He et al. [[21]] presented an enhanced protocol to thwart these threats. However, Kumar and Lee [[22]] observed that He et al.'s protocol [[21]] failed to provide mutual authentication and could not generate a shared session key between the sensor and the user. Moreover, there have been many schemes [[23]–[29]] settling the security weaknesses in the two-factor authentication protocols for WSNs. In these schemes, the authors cryptanalyzed the previous schemes, found some vulnerabilities in them, and presented a new improved two-factor scheme as a remedy. Unfortunately, Wang et al. [[30]] criticized that most of these solutions and the similar two-factor authentication schemes were found to be vulnerable to various practical attacks that could lead to unintended consequences.

To overcome the security weakness in two-factor authentication schemes for WSNs and further improve their security strength, plenty of three-factor-based authenticated key agreement schemes have been proposed in the past few years [[32]–[38]]. In the three-factor schemes, a user is identified as a legal one only if his smart card, password, and biometric information are valid. Compared with the traditional authentication methods, biometrics has the following advantages [[39]]: (1) biometrics cannot be lost, forgotten, or forged; and (2) a biometric key is difficult to guess or breach.

In this section, we briefly describe the schemes closest to our work. In 2014, Das [[33]] came across the privileged insider attack, improper authentication, and inefficiency in Jiang et al.'s scheme [[40]] and proposed a three-factor user authentication protocol for WSNs with symmetric cryptographic primitives. In the next year, Das also presented another two three-factor schemes for WSNs [[34]]. However, Wu et al. [[41]] pointed out that these three schemes are vulnerable to offline password guessing attack, user impersonation attack, and destitution of strong forward security and proposed an enhanced one. Unfortunately, we found that if the user enters an incorrect password during the login phase in Wu et al.'s scheme [[41]], the smart card will not check whether the password is correct, and the protocol will proceed until GWN finds that the user's login request was invalid, thereby unnecessarily wasting precious computation resource of the user and the GWN.

In 2016, Amin et al. [[38]] reviewed Farash et al.'s authenticated key agreement scheme [[42]] for heterogeneous WSN and found that Farash et al.'s scheme [[42]] cannot withstand offline password guessing attack, known session-specific temporary information (KSSTI) attack, and user impersonation attack. To overcome these pitfalls, Amin et al. [[38]] proposed a secure improved three-factor scheme and claimed that their new scheme was secure enough to resist the known threats. However, Jiang et al. [[36]] proved that Amin et al.'s scheme [[38]] was insecure to smart-card-loss attack defined by [[43]], KSSTI attack, and tracking attack. As a remedy, Jiang et al. [[36]] built an improved three-factor user authentication scheme on the Rabin cryptosystem for WSN. We observe that Jiang et al.'s scheme [[36]] is skeptical to privileged insider attack because GWN also generates the session key which means GWN can decrypt all of the session messages between the user and the sensor. In 2017, Wang et al. [[44]] identified weaknesses (offline dictionary attack, impersonation attack, etc.) in previous ones, and proposed an enhanced anonymous three-factor user authentication protocol employing an elliptic curve cryptosystem (ECC) for WSN. Owing to the fuzzy verifier, their scheme can withstand the offline identity and password guessing attack. Unfortunately, their scheme is vulnerable to insider attack because the random number chosen by GWN for the user is stored in GWN's database, and the insider can access and modify it, resulting in user login failure. Moreover, their scheme is subject to KSSTI attack, which is similar to the analysis in Section 4.4. In 2018, Li et al. [[45]] introduced a three-factor authenticated scheme for WSNs in Internet of Things environments with adoption of fuzzy commitment to handle the user's biometric information. However, we discovered that their scheme fails to provide three-factor security if the lost/stolen smart card is obtained by the attacker and the biometric information is also collected by the attacker without the awareness of the owner, so their scheme is not as secure as they claimed. With a similar reason, schemes of [[46]–[48]] fail to provide true three-factor security. Although Li et al. employed fuzzy verifier technique and claimed that their protocol [[49]] for wireless medical sensor networks satisfies many security features, we found that it cannot resist replay attack.

In 2015, Das [[35]] proposed an efficient biometric-based authentication scheme for WSNs using smart card and demonstrated that the scheme can resist various attacks. However, Lu et al. [[50]] criticized that Das's scheme [[35]] has security weaknesses including lack of three-factor security along with user anonymity and user impersonation attack. To eliminate the security drawbacks, Lu et al. [[50]] proposed a new three-factor solution on ECC and claimed that their scheme was secure against the known attacks. Furthermore, their scheme has been equipped with a formal security proof in random oracle model, and thus they have full confidence in the security of their scheme.

In this paper, we examine the scheme of Lu et al. [[50]] and show that it cannot provide three-factor security along with a lack of strong session key security, suffers from KSSTI attack, and is unsuitable to the WSN environment. To overcome the security pitfalls found in Lu et al.'s scheme, we present an improved scheme and prove its security under random oracle model and heuristic security analysis. Moreover, we use the formal verification tool ProVerif to demonstrate that the improved scheme fulfills session key secrecy and mutual authentication. A comparison with other related schemes shows that our scheme is superior to theirs.

1.2. Our Contribution

Motivated by the thought of overcoming the security vulnerabilities in Lu et al.'s scheme [[50]], we present a new secure three-factor authentication scheme exploiting ECC in the WSN context. In short, our main contributions are summarized as follows:

  • (i) First, we cryptanalyze Lu et al.'s protocol [[50]] and show its security weaknesses.
  • (ii) Second, we propose a new lightweight anonymous three-factor authentication and key agreement protocol on ECC for WSN. The proposal not only overcomes the security weaknesses in Lu et al.'s protocol, but also achieves more security features than the related competitive works.
  • (iii) Third, we use the random oracle model to demonstrate the validity of the proposed scheme, and we conduct a formal verification by using ProVerif. Additionally, a performance comparison is made between our scheme and the related three-factor authentication schemes to show that it provides a better tradeoff between performance and security requirements, thereby making it more suitable for practical application in WSN environments.
1.3. Security Requirements

To design a robust and efficient three-factor authenticated scheme for WSNs, the following security requirements should be fulfilled.

(1) Provide three-factor security: the scheme should still be secure even if any two of the three factors are compromised. (2) Attack resistance: the scheme should be secure against various attacks, such as user impersonation attack, gateway node impersonation attack, sensor impersonation attack, KSSTI attack, replay attack, privileged insider attack. (3) Forward and backward secrecy: if the long-term secret key is compromised, the attacker cannot compute the previous session and the future ones. (4) Resistance to sensor capture attack: if a single sensor is captured by the attacker, it is difficult for he/she to pretend to be any noncompromised sensors. (5) User anonymity: any attackers are incapable of revealing the identity of the user, and it is also an important privacy protection requirement for users. (6) Mutual authentication and key agreement: the user and the sensor should authenticate each other and generate a shared session key.

1.4. Organization of the Paper

The remainder of the paper is organized as follows. In Section 2, we discuss the preliminaries of the fuzzy extractor and related mathematical assumptions. We review and cryptanalyze Lu et al.'s scheme in Section 3 and Section 4, respectively. Section 5 presents our new three-factor authenticated key agreement protocol for WSNs. Next, the validity of our scheme and the security analysis are demonstrated in Section 6, and the formal security verification via ProVerif is given in Section 7. Section 8 shows the performance comparison with the related studies. Finally, conclusions are drawn in Section 9.

2. Preliminaries

2.1. Fuzzy Extractor

The fuzzy extractor was introduced by Dodis et al. [[51]] in 2004, it is mainly used to address the issue of biometric templates authentication, and many protocols use this technology [[32], [52]–[54]] to improve their security.

The fuzzy extractor can produce a biological key δi and a public parameter τi from the user's biometric template Bio by utilizing certain error-correcting code technology. To recover δi, the reproduction algorithm is applied to τi and the other newly captured biometric template Bio , which is similar to Bio. By comparing the similarity of the stored biometric template and the captured biometric template, the protocol can achieve biometric authentication with error tolerance. According to [[51]], the fuzzy extractor is given by two effective algorithms (Gen, Rep) which are defined as follows:

  • Gen (Bio) = (δi, τi): Gen is a probabilistic generation algorithm. When the biometric template Bio is input, Gen will output a random string δi with an auxiliary random string τi.
  • Rep ( Bio , τi) = δi: Rep is a deterministic reproduction algorithm. Upon receiving a biometric template Bio within an error-tolerant range and the auxiliary random string τi, Rep will recover δi.
2.2. Mathematical Assumption

Let Ep (a, b) be a set of elliptic curve points over the prime field Fp, which is defined by the equation style of y2 mod p = (x3 + ax + b) mod p, with a, bFp, 4a3 + 27b2 mod p ≠ 0. An elliptic curve group G is defined on E/Fp with generator P. For simplicity, mod p is omitted in the following section. In this section, we briefly describe two important mathematical assumptions [[55]] that rely on the elliptic curve and are closely related to our scheme.

Elliptic curve discrete logarithm (ECDL) problem: given Q, PG, it is infeasible to find the integer a ∈ [1, _I_p_i_ − 1] such that Q = aP.

Computational Diffie-Hellman (CDH) problem: given (P, aP, bP) for any a, b ∈ [1, _I_p_i_ − 1], it is infeasible to calculate abPG.

3. Review of Lu et al.'s Scheme

Lu et al.'s three-factor authenticated scheme [[50]] consists of seven phases, i.e., predeployment, user registration, sensor node registration, login, authentication and key agreement, password change, and dynamic sensor node addition. The last two phases are omitted since they are not relevant. For convenience, the notations used in this paper are listed in Table 1.

Table 1 Notations.

NotationDescription
GWNGateway node
Uiith user
Sjjth sensor node
IDiUi's identity
PWiUi's password
SIDjSj's identity
XGWNGWN's secure password key
KjSj's secret password key
h ()A secure one-way hash function
BioUi's biometric

xg

GWN's private key
XpubGWN's public key; Xpub =

xgP

TiTimestamp, i = 1, 2, ....
Ek ()/Dk ()The symmetric encryption/decryption function using key k
GAn elliptical curve group
PThe generator of G
E/FpAn elliptic curve E defined on a finite field Fp with order p.

3.1. Predeployment

  • (1) GWN computes Kj = h (SIDj, XGWN) shared with each Sj
  • (2) GWN stores Kj into Sj's memory and then deletes XGWN
3.2. User Registration

  • (1) Ui inputs his IDi and password PWi, imprints his biometrics Bio, and then computes Gen (Bio) = (δi, τi).
  • (2) Ui sends {IDi, h (PWi, δi)} to GWN via a secure channel.
  • (3) GWN computes RPWi = h (IDi) h (IDi, h (K)) and stores it in a smart card, where K is a nonce. Then, GWN sends the smart card to Ui via a secure channel.
  • (4) Ui computes fi = h (IDi, h (PWi, δi)) and stores (fi, τi, Gen (), Rep (), h ()) on the smart card.
3.3. Sensor Node Registration

  • (1) Sj sends {SIDj} to GWN
  • (2) GWN computes h (SIDj, Kj) and sends it to Sj via a secure channel
  • (3) Sj stores h (SIDj, Kj) in its memory
3.4. Login

  • (1) Ui inserts his smart card into a card reader, enters (IDi, PWi) and imprints biometrics Bio .
  • (2) The smart card computes Rep ( Bio , τi) and checks whether h (IDi, h (PWi, δi)) = fi holds. If it is true, the smart card selects a nonce ai; computes Ai = aiP, Bi = IDiaiXpub, Vi = h (IDi, h (IDi, h (K)), aiP, T1); and then sends M1 = {Ai, RPWi, Bi, Vi, T1} to GWN. Otherwise, the smart card rejects the login request.
3.5. Authentication and Key Agreement

  • (1) On receiving M1 from Ui, GWN computes IDi = xgAi Bi, and checks whether Vi = h (IDi, h (IDi, h (K)), aiP, T1) holds. If it is successful, GWN selects a new nonce K , computes RPWi = h (IDi, h (IDi, h ( K )) and Vj=EhSIDj,KjIDi,aiP,T2 , and then sends M2 = { RPWi , Vj, T2} to Sj.
  • (2) _I_S_i__SB__I_j_i__sb_ decrypts _I_V_i__SB__I_j_i__sb_ and checks the validity of the timestamp _I_T_i__SB_2_sb_. If _I_T_i__SB_2_sb_ is valid, _I_S_i__SB__I_j_i__sb_ computes _I_h_i_ (_I_ID_SB_i_sb__i_, _I_h_i_ ( _HT_ http://www.w3.org/1998/Math/MathML">K _ht_ )) = _I_h_i_ (_I_ID_SB_i_sb__i_)_SP_−1_sp_ _HT_ http://www.w3.org/1998/Math/MathML">RPWi _ht_ , selects a nonce _Ii_j, and computes sk = h (aibjP) and Ci=EhIDi,hKIDi,bjP,sk,T3 . Finally, Sj sends M3 = {Ci, RPWi , T3} to Ui.
  • (3) _I_U_i__SB__I_i_i__sb_ computes _I_h_i_ (_I_ID_SB_i_sb__i_, _I_h_i_ ( _HT_ http://www.w3.org/1998/Math/MathML">K _ht_ )) = _I_h_i_ (_I_ID_SB_i_sb__i_)_SP_−1_sp_ _HT_ http://www.w3.org/1998/Math/MathML">RPWi _ht_ , replaces RPW_I__SB_i_sb__i_ with _HT_ http://www.w3.org/1998/Math/MathML">RPWi _ht_ on the smart card, computes _HT_ http://www.w3.org/1998/Math/MathML">IDi,bjP,sk,T3=EhIDi,hKCi _ht_ , _I_sk_i_′ = _I_h_i_ (_I_a_i__SB__I_i_i__sb__Ii_jP), and verifies whether sk′ = sk holds. If it holds, Ui believes that he has shared a session key sk with Sj. Otherwise, Ui aborts this session.
4. Cryptanalysis of Lu et al.'s Scheme

In this section, we discuss the security weaknesses of Lu et al.'s scheme [[50]], which include failure to provide three-factor security, no backward secrecy, and vulnerability to KSSTI attack. Before cryptanalyzing Lu et al.'s scheme [[50]], we summarize the adversarial model used in this paper based on [[38]] as follows:

  • (1) The attacker has full control of the communication channel between the related participants. In other words, the attacker might eavesdrop, intercept, insert, delete, and modify messages transmitted over the public channel.
  • (2) When the smart card is lost, stolen, or somehow obtained by an attacker, he/she could extract all of the secret data stored on the smart card by launching a differential power attack [[56]] or side-channel attacks [[57]]. Furthermore, the attacker might compromise two of the three factors (i.e., password and smart card, password and biometrics, or smart card and biometrics), but he is incapable of compromising all of the three factors.
  • (3) The attacker can learn the user's identity as far as the attacks (e.g., impersonation attack) and security properties (e.g., mutual authentication and session key agreement) are concerned.
  • (4) The attacker can guess the user's identity and password offline by choosing a pair (ID, PW) from the Cartesian product DID × DPW in polynomial time, where DID denotes identity space and DPW denotes the password space [[31], [59]].
  • (5) The random nonce and the secret key selected by communication parties are adequately large to prevent the attacker from successfully guessing these data in polynomial time.
4.1. Failure to Provide Three-Factor Security

Generally, an authentication protocol providing three-factor security means that an attacker can launch impersonation attacks only if he learns all of the three factors (password, biometrics, and smart card). Lu et al. claimed that their protocol can provide three-factor security and withstands various attacks. Unfortunately, we found that if the lost/stolen smart card is obtained by the attacker and the biometrics of the user are also obtained by the attacker without the awareness of the owner, the attacker could perform the identity and password offline guessing attack resulting in failure to provide the privacy preservation and security properties as they claimed. The attacker carries out the attack as follows.

  • (1) The attacker extracts the secret data {RPWi, fi, τi, Gen(), Rep(), h ()} from the smart card by performing side-channel analysis attack [[57]]
  • (2) With the user's biometric template Bio and τi as input, the attacker recovers δi by computing Rep ( Bio , τi)
  • (3) The attacker selects a pair ( IDi , PWi ) from DID × DPW randomly and verifies whether fi = h (IDi, h (PWi, δi)) holds, where fi is recovered from the smart card
  • (4) If it is false, the attacker repeats step 3∼4 until the correct pair ( IDi , PWi ) is found

The running time of the above attack is O (|DID | | DPW | 2Th), where |DID| and |DPW| denote the number of items in DID and DPW, respectively, and in reality, |DID| ≤ |DPW| ≈ 106 [[60]]; Th denotes the computing time of a hash function. Furthermore, because Th is almost negligible, the required time of this attack is linear to |DID | | DPW|. In practice, the attacker can offline guess the correct pair ( IDi , PWi ) from DID × DPW within polynomial time [[43]].

With the disclosure of the user's identity and password, Lu et al.'s scheme [[50]] cannot preserve user privacy and other security features as they claimed.

Therefore, Lu et al.'s protocol fails to provide three-factor security.

4.2. Lack of Backward Secrecy

Backward secrecy is essential since the authentication should immunize the subsequent session key from compromise by the attacker. In Lu et al.'s protocol [[50]], if an attacker has disclosed the identity IDi through the offline guessing attack mentioned above and captures the message {Ci, RPWi , T3} from the public channel, he can derive h (IDi, h ( K )) by computing h (IDi)−1 RPWi , then he decrypts Ci using symmetrical key h (IDi, h ( K )) and obtains (IDi, bjP, sk, T3), where the session key sk generated by sensor Sj is identical to the one generated by the user. Thus, the attacker is able to learn all the subsequent session keys between the user and the sensor once he obtains Ui's identity.

The root cause of this weakness is that the message verifier is only dependent on Ui's identity. Naturally, the attacker will make use of it to obtain the subsequent session keys of the Ui.

4.3. KSSTI Attack

For the authentication protocol, if the session key is generated with ephemeral secret information, such as random numbers provided by each party, and it is secure even though this transient information is compromised, we can say that this protocol is secure against KSSTI attack. In Lu et al.'s protocol, the session key sk = h (aibjP), where ai and bj are random numbers chosen by the user and the sensor, respectively. Once the ephemeral information ai and bj are disclosed by the attacker, he can compute the session key easily. Therefore, Lu et al.'s protocol [[50]] cannot withstand KSSTI attack.

4.4. Inapplicability to the WSN Environment

A WSN consists of many sensors that are deployed in unattended fields to continuously monitor the surroundings. As we pointed out earlier, the sensor node is small in size with limited battery power and computation capability as well as a short communication range. According to the communication experiments of the sensor reported in [[62]], the power consumption increases proportionally with the increase in the distance between the sensor and the communication participant. Therefore, reducing power consumption is an important problem for sensor nodes in communication to prolong their life cycle, and it is a reasonable solution that the messages exchanged between Ui and Sj should use GWN as a bridge. However, from the concrete authentication procedures described in Lu et al.'s scheme [[50]], we can see that the Sj delivers messages to Ui directly. Obviously, the distance from the user is far beyond the communication range of the sensor. Therefore, Lu et al.'s scheme [[50]] is inapplicable to the WSN environment.

5. The Proposed Protocol

In this section, we develop an improved three-factor authentication scheme with key agreement to overcome the security weaknesses existing in Lu et al.'s scheme. Meanwhile, our protocol employs ECC without bilinear pairing to reduce the computation cost while maintaining security strength in WSN environment. Our scheme consists of four phases, i.e., predeployment, user registration, login and authentication, and password update.

First, the GWN chooses a large prime number p and generates an elliptic curve E/Fp and an additive cyclic group G over E/Fp with a generator P. After that, GWN selects a private key xg and a secure one-way hash function h (). Finally, GWN selects an integer t ∈ [24, 28] as the parameter of the fuzzy verifier. A detailed description of the proposed scheme is as follows.

5.1. Predeployment

  • (1) GWN chooses a unique identity SIDj for each sensor and calculates Kj = h (SIDj || XGWN)
  • (2) GWN sends {SIDj, Kj, P} to Sj via a secure channel
  • (3) Sj stores {SIDj, Kj, P} in its memory
5.2. User Registration

  • (1) Ui inputs his IDi, PWi, imprints his biometric Bio, and computes Gen (Bio) = (δi, τi). After that, Ui selects a random number ri and computers PIDi = h (IDi || δi || ri), fi = h (h (PWi || ri || δi) mod t), and then he sends {IDi, PIDi} to GWN through a secure channel.
  • (2) GWN computes Ci = h (PIDi || xg ), and a smart card storing {h (),Ci, Ek(), Dk(), Gen(), Rep(), P} is sent to Ui via a secure channel.
  • (3) Ui computes Ai = Cifi and Bi = h (IDi || δi || PWi) ⊕ ri and then stores {Ai, Bi, τi, fi} into the smart card.
5.3. Login and Authentication

The following steps are performed if Ui intends to access the WSN:

  • (1) Ui inputs IDi and PWi, inserts the smart card and imprints his biometrics Bio . The card computes δi = Rep (Bio, τi), ri = Bih (IDi || δi || PWi), and fi = h (h (PWi || ri || δi ) mod t) and checks whether fi = fi holds. If it is false, the smart card rejects Ui's login request. Otherwise, the card chooses two random number rinew and ei, chooses a login-sensor node SIDj, and computes PIDinew = h (IDi || δi || rinew ), m1 = Aifiei.
  • (2) Ui selects a random number ai, and the timestamp T1, computes m2 = aiP, m3 = PIDinew h (ei), m4 = (IDi || SIDj) ⊕ h (PIDi || ei), and m5 = h (IDi || PIDi || PIDinew || m2 || SIDj || T1), and sends M1 = {m1, m2, m3, m4, m5, PIDi, T1} to GWN.
  • (3) On receiving M1, GWN checks the validity of T1. If it is false, GWN aborts the session; otherwise, GWN computes ei = m1h (PIDi || xg ), PIDinew = m3h (ei), ( IDi || SIDj ) = m4h (PIDi || ei), and m5 = h ( IDi || PIDi || PIDinew || m2 || SIDj || T1). GWN will terminate this session if m5 m5. Otherwise, it selects a timestamp T2, and computes Kj = h( SIDj || XGWN), ek = h ( SIDj || Kj), m6=Eekei,PIDinew , and m7 = h (Kj || PIDinew || SIDj || m2 || T2). Finally, GWN forwards M2 = {m2, m6, m7, T2} to Sj.
  • (4) After receiving _I_M_i__SB_2_sb_ from _I_GWN_i_, _I_S_i__SB__I_j_i__sb_ will reject the session if _I_T_i__SB_2_sb_ is invalid; otherwise, _I_S_i__SB_j_sb_ computes _I_e_i__SB__I_k_i__sb_′ = _I_h_i_ (_I_SID_SB_j_sb__i_ || _I_K_i__SB__I_j_i__sb_), and decrypts _I_m_i__SB_6_sb_ to obtain (_I_e_i__SB__I_i_i__sb_, _HT_ http://www.w3.org/1998/Math/MathML">PIDinew _ht_ ). Next, _I_S_i__SB__I_j_i__sb_ computes _HT_ http://www.w3.org/1998/Math/MathML">m7 _ht_ = _I_h_i_ (_I_K_i__SB__I_j_i__sb_ || _HT_ http://www.w3.org/1998/Math/MathML">PIDinew _ht_ || _I_SID_SB_j_sb__i_ || _I_m_i__SB_2_sb_ || _I_T_i__SB_2_sb_) and checks whether _I_m_i__SB_7_sb_′ = _I_m_i__SB_7_sb_ holds. If it is incorrect, _I_S_i__SB__I_j_i__sb_ stops the session; otherwise, _I_S_i__SB__I_j_i__sb_ chooses a random number _Ii_j and computes m8 = bjP, SKS-U = h (bjm2 || PIDinew || SIDj || ei) and m9 = h (SKS-U || PIDinew || SIDj || m8 || T3), and m10 = h (Kj || PIDinew || m8 || T3), where T3 is Sj's current timestamp. Finally, Sj sends M3 = {m8, m9, m10, T3} to GWN.
  • (5) Upon reception of M3, GWN checks the validity of T3, and GWN will reject the session if it is invalid. Otherwise, GWN computes m10' = h (Kj || PIDinew || m8 || T3) and checks the condition m10 = m10. If the condition holds, GWN selects the current timestamp T4, computes m11 = h ( PIDinew || xg ) and m12 = h ( PIDinew || ei || m8 || T4), and then forwards M4 = {m8, m9, m11, m12, T3, T4} to Ui.
  • (6) After the reception of M4, Ui first checks the validity of T4. If it is true, Ui further computes m12 = h ( PIDinew || ei || m8 || T4) and checks whether m12 = m12 holds. If it holds, Ui computes SKU-S = h (aim8 || PIDinew || SIDj || ei) and m9 = h (SKU-S || PIDinew || SIDj || m8 || T3) and checks the condition m9 = m9. If it is false, Ui aborts the session; otherwise, Ui accepts SKU-S as the session key shared with Sj. Finally, the smart card computes finew = h (h (PWi || rinew || δi ) mod t), Ainew = m11 finew , and Binew = h (IDi || δi || PWi) ⊕ rinew and replaces (Ai, Bi, fi) with ( Ainew , Binew , finew ).

The login and authentication phase is shown in Table 2.

Table 2 Login and authentication phase of the proposed scheme.

UiGWNSj
Inputs IDi, PWi,

Bio

δi

= Rep (Bio, τi)

ri

= Bih (IDi ||

δi

|| PWi)

fi

= h (h (PWi ||

ri

||

δi

) mod t)If (

fi

fi), abortelse chooses

rinew

, ei, SIDj, ai, T1

PIDinew

= h (IDi ||

δi

||

rinew

) m1 = Aifieim2 = aiP, m3 =

PIDinew

h (ei)m4 = (IDi || SIDj) ⊕ h (PIDi || ei)m5 = h (IDi || PIDi ||

PIDinew

|| m2 || SIDj || T1)M1 = {m1, m2, m3, m4, m5, PIDi, T1} ⟶
Checks T1ei = m1h (PIDi ||

xg

)

PIDinew

= m3h (ei)(

IDi

||

SIDj

) = m4h (PIDi || ei)

m5

= h (

IDi

|| PIDi ||

PIDinew

|| m2 ||

SIDj

|| T1)If (

m5

m5), abortelse Kj = h (SIDj || XGWN)ek = h (

SIDj

|| Kj)

m6=Eekei,PIDinew

m7 = h (Kj ||

PIDinew

||

SIDj

|| m2 || T2)M2 = {m2, m6, m7, T2} ⟶
Checks T2ek′ = h (SIDj || Kj)Decrypts m6 to obtain (ei,

PIDinew

)

m7

= h (Kj ||

PIDinew

|| SIDj || m2 || T2)If (

m7

m7), abortelse chooses bj, T3m8 = bjP,SKS-U = h (bjm2 ||

PIDinew

|| SIDj || ei) m9 = h (SKS-U ||

PIDinew

|| SIDj || m8 || T3) < m10 = h(Kj ||

PIDinew

|| m8 || T3)M3 = {m8, m9, m10, T3}
Checks T3

m10

= h (Kj ||

PIDinew

|| m8 || T3)If (

m10

m10), abortelse chooses T4m11 = h (

PIDinew

||

xg

)m12 = h (

PIDinew

|| ei || m8 || T4)M4 = {m8, m9, m11, m12, T3, T4}
Checks T4

m12

= h (

PIDinew

|| ei || m8 || T4)If (

m12

m12), abortSKU-S = h (aim8 ||

PIDinew

|| SIDj || ei)

m9

= h (SKU-S ||

PIDinew

|| SIDj || m8 || T3)If (

m9

m9), abortelse accepts SKU-S

finew

= h (h (PWi ||

rinew

||

δi

) mod t)

Ainew

= m11

finew

Binew

= h (IDi ||

δi

|| PWi) ⊕

rinew

(Ai, Bi, fi) ⟵ (

Ainew

,

Binew

,

finew

)

5.4. Password Update

Similar to Lu et al.'s protocol, our improved scheme allows the authorized user to update his password with GWN if he likes.

U i keys IDi and the old password PWi, imprints biometrics Bio , and inserts the smart card into a reader. Then, the smart card computes Gen ( Bio ) = ( δi , τi ), ri = Bih (IDi || δi || PWi), and fi = h (h (IDi || ri || PWi) mod t) and checks whether fi = fi holds. The session is aborted if the condition is false.

  • (1) Ui inputs a new password PWinew , calculates finew = h (h ( PWinew || ri || δi ) mod t), Ainew = Ci finew and Binew = h (IDi || δi || PWinew ) ⊕ ri , and replaces (Ai, Bi, fi) with ( Ainew , Binew , finew ).
6. Security Analysis

In this section, we first conduct a formal security analysis under the random oracle model [[63]] and then provide an informal security analysis to demonstrate that our improved scheme can withstand various attacks and meet the security requirement in WSNs.

6.1. Formal Security Analysis

This section justifies our security analysis of our lightweight user authentication and key agreement protocol for WSNs. For the sake of simplicity, we follow the security model in [[63]] to conduct our formal security proof.

Theorem 1.

Assume that AdvP,DAKEA denotes the advantage of the attacker A in cracking the security of the improved protocol P and that AdvACDHt denotes the advantage of the attacker A in solving the CDH problem in polynomial time t, and the attacker asks at most qsSend queries, qeExecute queries, qh Hash queries. Then, we have

(1)AdvP,DPWAKEA22qh+qh2+qs+qe22ls+qs+qe2n1+4qs2n1+2qsmax1DPW,12lb,ε+2qh1+qs+qe2AdvACDHt+qs+qeTm,

where ls represents the security parameter, which also represents the length of the random number and hash value; n, DPW, |DPW|, lb, ε, and Tm represent the order of the elliptic curve group G over E/Fp, a password dictionary with a frequency distribution following Zipf's law [[64]], the size of password dictionary DPW, the length of BIOi, the probability of a "false positive" event, and the execution time of a point multiplication in G, respectively.

Proof.

A series of games Gmi (0 ≤ i ≤ 5) are defined to demonstrate that our improved scheme is provably secure. In each game Gmi, Si (0 ≤ i ≤ 5) denotes the event that the attacker guesses a correct bit in the Test query, and Pr[Si] denotes the corresponding probability.

  • Gm0: this game is considered to perform in a real attack scenario under random oracle model. Thus, we have
  • (2)AdvP,DAKEA=2PrS01.
  • Gm1: in this game, we simulate Hash oracle h (), Send query, Test query, Execute query, and Corrupt query with respect to our improved scheme, and Lh, LA, and LT are used to store the query result of various oracle. Thus, we have
  • (3)PrS1=PrS0.
  • Gm_SB_2_sb_: in this game, collisions of random oracle queries are considered. The simulation will be aborted if collision occurs on the hash oracle and transcripts _I_M_i__SB_1_sb_, _I_M_i__SB_2_sb_, _I_M_i__SB_3_sb_, _I_M_i__SB_4_sb_, and we let the attacker win. According to the birthday paradox, the collision probability on the hash oracle is _HT_ http://www.w3.org/1998/Math/MathML">qh2/2ls+1 _ht_ at most, the collision probability of random nonces _I_a_i__SB__I_i_i__sb_ and _Ii_j is qs+qe2/n1 , and the collision probability of ei and rinew is qs+qe2/2ls+1 at most. Thus, we have
  • (4)PrS2PrS1qh2+qs+qe22ls+1+qs+qe22n1.
  • Gm3: in this game, we consider the collision probability of the attacker impersonating transcript messages M1M4 from the remaining oracle queries.
Case 1.

For Send (Uiμ, GWNλ, M1): the simulator reveals h (IDi || δi || PWi) of ri , h (IDi || δi || rinew ) of PIDinew , h (PIDi || ei) of m4 to the attacker and checks whether M1LP holds. Thus, the total collision probability is 3qh/2ls+qs/2n .

Case 2.

For Send (GWNλ, Sjν, M2): the simulator reveals h (PIDi || xg ) of ei, h ( IDi || PIDi || PIDinew || m2 || SIDj || T1) of m5, and h (Kj || PIDinew || SIDj || m2 || T2) of m7 to the attacker and checks whether M2LP holds. Thus, the collision probability is 3qh/2ls+qs/2n at most.

Case 3.

For Send (Sjν, GWNλ, M3): the simulator reveals h (Kj || PIDinew || SIDj || m2 || T2) of m7, h (SKS-U || PIDinew || SIDj || m8 || T3) of m9, and h (Kj || PIDinew || m8 || T3) of m10 to the attacker and checks whether M3LP holds. Thus, the collision probability is 3qh/2ls+qs/2n at most.

Case 4.

For Send (GWNλ, Uiμ, M4): the simulator reveals h (Kj || PIDinew || m8 || T3) of m10 and h ( PIDinew || ei || m8 || T4) of m12, to the attacker, and checks whether M4LP holds. Thus, the collision probability is 2qh/2ls+qs/2n at most.

As a whole, we have

(5)PrS3PrS211qh2ls+4qs2n.

  • Gm_SB_4_sb_: in this game, the attacker encounters the CDH problem. If it is possible for the attacker to use _I_Corrupt_i_ query to get the session key, it means that the attacker can find a solution for the CDH problem and (_Ii_jaiP || PIDinew || SIDj || ei) ∈ LA holds. It is necessary for the attacker to obtain the smartcard to breach the session key because the simulation will terminate if the attacker gets only PWi and BIOi. Thus, the game can be demonstrated as having three cases:
Case 1.

The attacker asks Corrupt (Uiμ, 2) to guess PWi within password space DPW with at most qsSend queries. The possibility is qs/DPW .

Case 2.

The attacker asks Corrupt (Uiμ, 0) and chooses one of the following approaches to obtain BIOi:

  • (a) The attacker guesses _I_BIO_i__SB__I_i_i__sb_ with at most _I_q_i__SB__I_s_i__sb_ Send queries. The possibility is _HT_ http://www.w3.org/1998/Math/MathML">qs/2lb _ht_ , where _I_l_i__SB__Ii__sb_ is the length of BIOi.
  • (b) The attacker asks Send queries with his own biometrics to try the probability of a "false positive". The possibility of this event is ε.

It is noted that the attacker can ask at most two Corrupt (Uiμ, ω) ω ∈ {0,1,2}, and the above two cases cannot occur concurrently. Thus, the possibility of the above three cases is qsmax1/DPW,1/2lb,ε .

Case 3.

To compromise the session key SK = h (bjaiP || PIDinew || SIDj || ei), the attacker has to compute bjaiP using m2, m8, and P, where m2 = aiP and m8 = bjP. Then the attacker asks either Corrupt (Uiμ, 0) or Corrupt (Uiμ, 2) queries, as well as Execute query, and he will win the game with at least qhHash queries. Therefore, we have

(6)PrS4PrS3qsmax1DPW,12lb,ε+qhAdvACDHt+qs+qeTm.

  • Gm5: in this game, the strong forward security is considered. The attacker asks Corrupt (Uiμ\GWNλ\Sjν) after simulating a Test query, the two indexes of which are chosen from {1, 2, ..., qs + qe}. If the Test query cannot return the session key with the ith instance of Ui and the jth instance of Sj, the game will terminate. Thus, we have
  • (7)PrS5PrS4qhqs+qe2AdvACDHt+qs+qeTm.

Taking all of the games into account, the attacker has no advantage in guessing the correct bit b, and thus we have

(8)PrS5=12.

Combining equations (2)–(8) together, the theorem is proved.

6.2. Analysis of Security

We show that our enhanced scheme not only overcomes the vulnerability in Lu et al.'s scheme [[50]] but also withstands various attacks in this section.

6.2.1. Three-Factor Security

Three-factor security means that the user can access the sensor data only when he has learned the password, smart card, and biometrics. That is, if the attacker has any two factors, he is incapable of mounting an impersonation attack. We will discuss that the enhanced scheme satisfies this security feature in three aspects.

Case 1.

Suppose the attacker has the user's smart card and password.

Assume that the attacker extracts the secret data {Ai, Bi, fi, τi, h (), Gen (), Rep ()} stored in the smart card, where fi = h (h (PWi || ri || δi) mod t), Ai = Cifi, and Bi = h(ID || δi || PWi) ⊕ ri. To masquerade as the user to log into GWN, the attacker calculates ri = Bih (IDi || δi || PWi) and fi = h (h (PWi || ri || δi) mod t). However, the attacker fails to verify the correctness of IDi and cannot recover δi due to the lack of the user's biometrics. Thus, the attacker cannot construct a correct fi to log into GWN.

Case 2.

Suppose that the attacker has the user's smart card and biometrics.

The attacker could also reveal the secret data {Ai, Bi, fi, τi, h (), Gen (), Rep ()} from the smart card and recovers δi by calculating Rep (Bio, τi). Afterwards, the attacker tries to guess IDi and PWi, calculates ri = Bih (IDi || δi || PWi), and then checks whether fi = h (h (PWi || ri || δi ) mod t) holds. However, he will not succeed because there are |DID | |DPW|/t 232 candidates of (IDi, PWi) (where |DPW| = |DID| = 106 and t = 28) [[59], [65]]. Then, if the attacker directly enters a pair of (IDi, PWi) and sends a login request to GWN to test the correctness of (IDi, PWi), the smart card will reject his/her request if the number of login requests exceeds the threshold and his/her dream will not come true.

Case 3.

Suppose that the attacker has the user's biometrics and password.

Undoubtedly, the attacker could not derive δi by computing Rep (Bio, τi), where the auxiliary string τi is stored on the smart card. The attacker can also intercept the message M1 = {m1, m2, m3, m4, m5, PIDi, T1} where m1 = Aifiei = h (PIDi || xg ) ⊕ ei, m2 = aP, m3 = PIDinew h (ei), Wi = IDih (PIDi || ei), and m4 = h (IDi || PIDi || PIDinew || m2 || SIDj). If the attacker attempts to find some clues about τi in M1, his wish will not come true because none of the elements in M1 have a direct relationship with τi. Therefore, it is infeasible for the attacker to impersonate a legitimate user to log into GWN.

6.2.2. Resistance to GWN Impersonation Attack

In the proposed scheme, the attacker is unable to masquerade as GWN to communicate with Ui or Sj. If the attacker intends to masquerade as GWN to Sj, he first intercepts the message M2 = {m2, m6, m7, T2} in the public channel. However, it is impossible for him to forge m6 because m6 is encrypted with the symmetric key h (SIDj || Kj), where Kj is the secret key to Sj and the attacker has no knowledge of it. On the other hand, to impersonate as GWN to Ui, it is necessary for the attacker to generate a valid message M4 = {m8, m9, m11, m12, T3, T4} and send it to Ui, where m9 = h (SKS-U || PIDinew || SIDj || m8 || T3), m11 = h ( PIDinew || xg ), and m12 = h ( PIDinew || ei || m8 || T4), which requires verification of m10 and m12. However, it is infeasible because the attacker has no knowledge of PIDinew , ei and Kj. Therefore, our improved scheme can resist the GWN impersonation attack.

6.2.3. Resistance to Sensor Impersonation Attack

If the attacker intends to impersonate a sensor Sj to communicate with GWN, he/she has to forge a valid message M3 = {m8, m9, m10, T3}, which is embedded with bj, Kj, ei, and PIDinew to cheat GWN. However, the attacker is unable to obtain these secret parameters since they are protected carefully by the communication parties. Therefore, our improved scheme can resist the sensor impersonation attack.

6.2.4. Resistance to KSSTI Attack

In Lu et al.'s protocol, the security of the session key h (aibjP) depends on the ephemeral random numbers ai and bj, which are generated by Ui and Sj, respectively. Naturally, the transient leakage of ai and bj will bring about the compromise of their session key. In the improved scheme, the session key SK = h (bjm2 || PIDinew || SIDj || ei), where m2 = aiP. It is worth noting that SK relies not only on ai and bj, but also on Kj, ei, and PIDinew . Further, to obtain PIDinew , the attacker needs to learn (IDi, Bio, rinew , ei), where ( rinew , ei) will be different in every authentication session. Hence, it is difficult for the attacker to disclose these secret ephemeral random numbers to calculate the session key. Therefore, the proposed protocol can thwart KSSTI attack.

6.2.5. Provision of Perfect Forward and Backward Secrecy

As shown in the login and authentication phase, the session key SKS-U = h (bjm2 || PIDinew || SIDj || ei) is calculated by Sj and SKU-S = h (aim8 || PIDinew || SIDj || ei) is calculated by Ui. As analyzed above, the session key is related to (ai, bj, PIDinew , SIDj, ei), where (ai, bj, rinew , ei) is generated randomly and unpredictably. Even if GWN's long-term secret key xg is compromised by the attacker and he/she obtains m2 and m8, it is infeasible for the attacker to calculate the session key because he/she heads to resolve the ECDL problem and CDH problem to obtain aibjP from m2 (= aiP) and m8(= bjP). Thus, the proposed protocol can provide perfect forward and backward secrecy.

6.2.6. Resistance to Replay Attack

It is generally true that timestamp mechanism is employed to overcome replay attack. However, addressing time synchronization is quite difficult in a large-scale network. It is noteworthy that time synchronization issue should not take place in a WSN since a WSN could be deployed in specific areas. The proposed protocol exploits the timestamp technique to prevent replay attack. When an attacker intercepts the login message M1 = {m1, m2, m3, m4, m5, PIDi, T1} and replays it to the receiver, he will fail because the receiver will check the freshness of timestamp and verify the hash value, which is calculated with a secret value ei shared between the sender and the receiver. Furthermore, if the attacker constructs a forgery message with a new timestamp, e. g, M1 = {m1, m2, m3, m4, m5, PIDi, T1 } under a new timestamp T1 , it is easily detected by verifying the hash value m5 because T1 is a parameter of m5. Therefore, the proposed protocol is secure against replay attack.

6.2.7. Resistance to Privileged Insider Attack

The insider attack implies that the system insider can directly access user's password that is stored in GWN and impersonates the user to log into other systems and enjoy their services. In the proposed protocol, the user only submits {IDi, PIDi} to GWN in the registration phase. Thus, the insider cannot get the user's password information. Therefore, our scheme can overcome privileged insider attack.

6.2.8. Resistance to Sensor Capture Attack

Suppose that if a sensor node Sj has been captured physically by the attacker, he/she can compromise the identity SIDj and secret number Kj from the memory of the sensor. However, it is infeasible for the attacker to guess GWN's secret key XGWN successfully in relation Kj = h (SIDj || XGWN) in light of item 5 in the adversarial model described in Section 4. That is, if a single sensor is captured by the attacker, it is impossible for him/her to break the confidentiality during sessions between the user Ui and other noncaptured sensors. Therefore, the proposed scheme can withstand sensor capture attack.

6.2.9. Resistance to Many Logged-In Users with the Same Login-ID Attack

In the proposed protocol, to log into GWN, Ui has to input his (IDi, PWi), imprint his biometric Bio, and insert his smart card into the card reader. Assume that users Ui and Uj have the same identity and password. Note that fi = h (h (PWi || ri || δi ) mod t) for Ui and fj = h (h (PWi || rj || δj ) mod t) for Uj are distinct since δi and δj are generated by a fuzzy extractor with different biometrics. As a result, the proposed scheme can resist many logged-in users with the same login-ID attack.

6.2.10. Resistance to Man-in-the-Middle Attack

In our protocol, GWN verifies m5 to authenticate Ui, Sj verifies m7 to authenticate GWN, GWN verifies m10 to authenticate Sj, and Ui verifies m12 to authenticate GWN and verifies m9 to authenticate Sj, respectively.

Therefore, our scheme can provide mutual authentication and withstand the man-in-the-middle attack.

6.2.11. User Anonymity and Untraceability

Assume that the attacker intercepts all of the exchanged messages between the related parties during the execution of the protocol and attempts to reveal Ui's identity. In our protocol, Ui's identity is included in m4 = (IDi || SIDj) ⊕ h(PIDi || ei) where PIDi is transmitted in the public channel. If the attacker wants to get the user's IDi, he/she has to compute ei = m1h (PIDi || xg ). It is infeasible because GWN's secret key xg is protected carefully by GWN and cannot be guessed successfully according to Item 5 in the adversarial model described in Section 4. Another way to obtain Ui's identity is to guess IDi from PIDi = h (IDi || δi || ri), which is also impossible because the attacker knows little about the user's biometric and random nonce ri. Therefore, our scheme can withstand tracking attack and achieves untraceability property.

7. Formal Security Verification via ProVerif

This section presents the formal security verification of the proposed protocol by using the Pi calculus-based simulation tool ProVerif [[66]]. The researchers used this tool to test an authentication protocol and see whether the adversary is capable of compromising the session key, since ProVerif makes use of the Dolev-Yao model and implements many cryptographic primitives, such as symmetric encryption and asymmetric encryption, signature, hash function, etc. So far, many protocols have been verified by ProVerif to demonstrate their correctness and robustness properties [[66]]. In this section, we use ProVerif to rectify the secrecy and authentication properties of our protocol.

First, we define the following channels. Channels sch1 and sch2 are used for secure communication between Ui and GWN and between Sj and GWN, respectively. Meanwhile, channels ch1 and ch2 are used for public insecure communication between Ui and GWN and between Sj and GWN, respectively.

  • ( --------Channels------- )
  • free sch1:channel [private]. ( the secure channel between Ui and GWN )
  • free sch2:channel [private]. ( the secure channel between Sj and GWN )
  • free ch1:channel [private]. ( the public channel between Ui and GWN )
  • free ch2:channel [private]. ( the public channel between Sj and GWN )

The variables and constants are defined as follows:

  • const P: bitstring.
  • const Bio:bitstring.
  • const Bio′:bitstring.
  • const t:bitstring.
  • const X_GWN: bitstring [private]. ( GWN's password key )
  • const x_g: bitstring [private]. ( GWN's private key )
  • free IDi: bitstring [private]. ( the identity of user )
  • free SIDj: bitstring. ( the identity of sensor )

The related function are modeled as follows:

  • ( --------Concat operation-------- )
  • fun con (bitstring, bitstring):bitstring.
  • fun con3 (bitstring, bitstring, bitstring):bitstring.
  • fun con4 (bitstring, bitstring, bitstring, bitstring):bitstring.
  • fun con5 (bitstring, bitstring, bitstring, bitstring, bitstring):bitstring.
  • fun mult (bitstring, bitstring):bitstring. ( Multiplication operation )
  • fun syme (bitstring, bitstring):bitstring. ( Symmetric encryption operation )
  • reduc forall m:bitstring, key:bitstring; symd (syme (m, key), key) = m. ( Symmetric decryption operation )
  • fun mod (bitstring, bitstring):bitstring. ( Mod operation )
  • fun xor (bitstring, bitstring):bitstring. ( XOR operation )
  • fun h (bitstring):bitstring. ( Hash operation )
  • fun Gen (bitstring):bitstring. ( Gen operation )
  • fun Rep (bitstring, bitstring):bitstring. ( Rep operation )

In particular, we define four events to test the mutual authentication between Ui and Sj as follows:

  • event beginSj (bitstring).
  • event endSj (bitstring).
  • event beginUi (bitstring).
  • event endUi (bitstring).

According to the proposed protocol execution, we define the process of Ui as follows:

  • let process Ui = new PWi:bitstring;
  • let (delta_i:bitstring, tau_i:bitstring) = Gen (Bio) in
  • new ri: bitstring;
  • let PIDi = h (con3 (IDi, delta_i, ri)) in
  • out (sch1, (IDi, PIDi));
  • let fi = h (mod (h (con3 (PWi, ri, delta_i)),t)) in
  • in (sch1, xCi:bitstring);
  • let Ai = xor (xCi, fi) in
  • let Bi = xor (h (con (con (IDi, delta_i),PWi)), ri) in

• ! (

  • event beginUi (IDi);
  • let delta_i′ = Rep (Bio′,tau_i) in
  • let ri′ = xor (Bi, h (con3 (IDi, delta_i, PWi))) in
  • let fi′ = h (mod (h (con3(PWi, ri′,delta_i′)),t)) in
  • if fi′ = fi then
  • new ri_new:bitstring;
  • new ei:bitstring;
  • let PIDi_new = h (con3 (IDi, delta_i′,ri_new)) in
  • let m1 = xor (xor (Ai, fi),ei) in
  • new ai:bitstring;
  • new T1:bitstring;
  • let m2 = mult (ai, P) in
  • let m3 = xor (PIDi_new, h (ei)) in
  • let m4 = xor (con (IDi, SIDj), h (con (PIDi, ei))) in
  • let m5 = h (con (con5 (IDi, PIDi, PIDi_new, m2, SIDj),T1)) in
  • out (ch1, (m1, m2, m3, m4, m5, PIDi, T1));
  • in (ch1, (m8s:bitstring, m9s:bitstring, m11g:bitstring, m12g:bitstring, T3s:bitstring, T4g:bitstring));
  • let m12′ = h (con4 (PIDi_new, ei, m8s, T4g)) in
  • if m12′ = m12g then
  • let SKu_s = h (con4 (mult (ai, m8s),PIDi_new, SIDj, ei)) in
  • let m9′ = h (con5 (SKu_s, PIDi_new, SIDj, m8s, T3s)) in
  • if m9′ = m9s then
  • event endSj (SIDj);
  • let fi_new = h (mod (con3 (PWi, ri_new, delta_i′),t)) in
  • let Ai_new = xor (m11g, fi_new) in
  • let Bi_new = xor (h (con3 (IDi, delta_i′,PWi)),ri_new) in

• 0

• ).

The process of Sj is modeled as follows:

  • let processSensor = in (sch2, (xSIDj:
  • bitstring, xKj:bitstring));

• ! (

  • event beginSj (SIDj);
  • in (ch2, (m2s:bitstring, m6s:bitstring, m7s:bitstring, xT2:bitstring));
  • let ek′ = h (con (xSIDj, xKj)) in
  • let (ei_s:bitstring, PIDi_new_s:bitstring) = symd (m6s, ek′) in
  • let m7′ = h (con5 (xKj, PIDi_new_s, SIDj, m2s, xT2)) in
  • if m7′ = m7s then
  • event endUi (PIDi_new_s);
  • new bj:bitstring;
  • new T3:bitstring;
  • let m8 = mult (bj, P) in
  • let SKs_u = h (con4 (mult (bj, m2s),PIDi_new_s, SIDj, ei_s)) in
  • let m9 = h (con5 (SKs_u, PIDi_new_s, SIDj, m8, T3)) in
  • let m10 = h (con4 (xKj, PIDi_new_s, m8, T3)) in
  • out (ch2, (m8, m9, m10, T3));

• 0

• ).

The process of GWN is modeled as follows:

  • let processGWN = in (sch1, (xIDi:bitstring, xPIDi:bitstring));
  • let Ci = h (con (xPIDi, x_g)) in
  • let Kj = h (con (SIDj, X_GWN)) in
  • out (sch2, (SIDj, Kj));
  • out (ch1, Ci);

• ! (

  • in (ch1, (m1′:bitstring, m2′:bitstring, m3′:bitstring, m4′:bitstring, m5′:bitstring, PIDi′:bitstring, T1′:bitstring));
  • let ei′ = xor (m1′,h (con (PIDi′,x_g))) in
  • let PIDi_new′ = xor (m3′, h (ei′)) in
  • let (IDi′:bitstring, SIDj′:bitstring) = xor (m4′, h (con (PIDi′,ei′))) in
  • let m5g = h (con (con5 (IDi′,PIDi′,PIDi_new′, m2′, SIDj′), T1 )) in
  • if m5′ = m5g then
  • new T2:bitstring;
  • let ek = h (con (SIDj, Kj)) in
  • let m6 = syme (con (ei′,PIDi_new′),ek) in
  • let m7 = h (con5 (Kj, PIDi_new′,SIDj, m2′, T2)) in
  • out (ch2, (m2′, m6, m7, T2));
  • in (ch2, (m8s:bitstring, m9s:bitstring, m10s:bitstring, T3s:bitstring));
  • let m10' = h (con4 (Kj, PIDi_new′, m8s, T3s)) in
  • if m10′ = m10s then
  • new T4:bitstring;
  • let m11 = h (con (PIDi_new′,x_g)) in
  • let m12 = h (con5 (PIDi_new′, ei′, m8s, T3s, T4)) in
  • out (ch1, (m8s, m9s, m11, m12, T4));

• 0

• ).

The queries are defined as follows:

  • query attacker (SKu_s).
  • query attacker (SKs_u).
  • query id:bitstring; inj-event (endSj (id)) = =>inj-event (beginSj (id)).
  • query id:bitstring; inj-event (endUi (id)) = =>inj-event (beginUi (id)).

The whole protocol is simulated as executing in parallel as follows:

  • process !processUi | !processGWN | !processSensor

The outputs of the ProVerif verification are as follows:

  • (1) RESULT not attacker (SKu_s[]) is true.
  • (2) RESULT not attacker (SKs_u[]) is true.
  • (3) RESULT inj-event (endSj (id)) = => inj-event (beginSj (id)) is true.
  • (4) RESULT inj-event (endUi (id_18)) = => inj-event (beginUi (id_18)) is true.

Results (1) and (2) indicate the secrecy of the proposed scheme because of the failing query attack on session key SKS-U and SKU-S. Moreover, results (3) and (4) confirm the successfully mutual authentication between Ui and Sj. In other words, the proposed scheme not only provides the secrecy of the session key, but also achieves the authentication property by verifying the correspondence assertions in the Dolev–Yao model.

8. Performance and Security Comparisons

To evaluate the proposed scheme, we compare the performance and security with related schemes [[26], [29], [41], [44], [49]] in the login and authentication phase.

To compare computation cost fairly, we use the time cost of cryptographic calculations in [[41]] as the benchmark, which is shown in Table 3. The execution time of XOR and the concatenation operation is ignored because their computation cost is very trivial. In addition, we assume that the length of an identity, a hash value, a random nonce, and a timestamp are 32 bits, 160 bits, 128 bits, and 32 bits, respectively, and the prime p in Ep (a, b) is 160 bits (the 160 bit ECC has a security strength equivalent to that of a 1024 bit RSA [[67]]). In AES symmetric encryption/decryption, the block size of plaintext/ciphertext is 128 bits [[68]]. The performance comparison of our scheme and the related ones [[26], [29], [41], [44], [49]] is summarized in Table 4. It is worth noting that although scheme in [[50]] is not suitable for WSN environment, we still compare it as a related scheme to determine whether our scheme can maintain better performance while overcoming its security defects.

Table 3 Execution time of cryptographic calculations (ms) [[41]].

NotationMeaningTime
TmTime of a point multiplication in G7.3529
TRTime of the Rep operation7.3529
TsTime of a symmetric encryption/decryption0.1303
ThTime of a hash operation0.0004

Table 4 Performance comparison.

Entity[26][29][50][41][44][45][49]Ours
Ui11Th + 2Tm + Ts14Th + 2Tm7Th + TR + 3Tm + Ts11Th + TR + 2Tm10Th + TR + 3Tm8Th + TR + 2Tm12Th + 3Tm12Th + TR + 2Tm
GWN11Th + 2Ts13Th6Th + Tm + Ts10Th13Th + Tm9Th + Tm8Th + Tm10Th + Ts
Sj4Th + 2Tm + Ts4Th + 2Tm2Th + 2Tm + 2Ts3Th + 2Tm6Th + 2Tm4Th4Th + 2Tm5Th + 2Tm + Ts
Total cost26Th + 4Tm + 4Ts31Th + 4Tm15Th + TR + 6Tm + 4Ts24Th + TR+4Tm29Th + TR + 6Tm21Th + TR + 3Tm24Th + 6Tm27Th + TR + 4Tm + 2Ts
Computation cost29.94 ms29.42 ms51.99 ms36.77 ms51.48 ms29.42 ms44.13 ms37.03 ms
Communication cost3208 bits3424 bits2880 bits3072 bits2368 bits2496 bits2880 bits3328 bits

In Table 4, we can see that (1) the computation time of our scheme is slightly higher than that of protocols [[26], [29], [41], [45]] and much lower than that of protocols [[44], [49]] and (2) the communication overhead of our scheme is slightly lower than that of protocol [[29]] and higher than that of the others. Meanwhile, from Table 5, it is evident that our scheme fulfills all of the security features, while other protocols suffer from some security weaknesses more or less. Specifically, our protocol overcomes the security pitfalls of Lu et al.'s protocol [[50]]. Compared with Li et al.'s protocol [[45]], our scheme makes use of the ECDL and CDH problem on ECC to enhance security, and thus, our protocol consumes more computation cost and needs more communication overhead. It is worth noting that security is the most important factor to be considered in cryptography protocols. Thus, it is worthwhile to gain a higher security level at the cost of a slightly increased computation cost or communication overhead. Although our protocol is not the most efficient one in performance compared with schemes [[26], [29], [41], [44], [49]], the security analysis in Section 6 has demonstrated that the proposed scheme thwarts security threats in [[26], [29], [41], [44], [49]]. In a word, the proposal provides a better tradeoff between performance and security requirements and is more suitable for practical application in WSN environments.

Table 5 Comparison of security properties.

[26][29][50][41][44][45][49]Ours
F1N/AN/ANoNoYesNoYesYes
F2NoNoNoNoYesNoNoYes
F3YesYesYesYesYesYesYesYes
F4YesYesYesYesYesYesYesYes
F5NoNoNoNoNoYesYesYes
F6NoYesNoYesYesYesYesYes
F7NoNoYesNoYesNoNoYes
F8YesNoYesYesNoYesNoYes
F9YesYesYesYesYesYesYesYes
F10YesNoYesNoYesYesYesYes
F11YesYesYesYesYesNoYesYes
F12NoNoYesYesYesYesYesYes
F13YesYesYesYesYesYesYesYes

1 F: feature. F1: provide three-factor security. F2: resistance to user impersonation attack. F3: resistance to GWN impersonation attack. F4: resistance to sensor impersonation attack. F5: resistance to KSSTI attack. F6: perfect forward and backward secrecy. F7: resistance to replay attack. F8: resistance to privileged insider attack. F9: resistance to sensor capture attack. F10: resistance to many logged-in users with the same login-ID attack. F11: resistance to man-in-the-middle attack. F12: user anonymity. F13: mutual authentication and key agreement.

9. Conclusion

Although many three-factor mutual authentication schemes have been presented for the WSN environment, most of them have been found to be unprotected from various attacks or lacking in functionality properties. In this paper, we have analyzed Lu et al.'s scheme and show its security defects of their scheme. To overcome these defects, we have proposed a lightweight secure three-factor authentication scheme for WSNs. Furthermore, we propose a security analysis, and show that the proposed protocol is secure against known security attacks, and address the vulnerability in Lu et al.'s scheme. The formal security proof of the proposal is proved under the random oracle model. Security verification is confirmed by the formal proof through ProVerif. A performance comparison between our scheme and the related recent ones in terms of computation cost and communication overhead demonstrates that our scheme offers a better tradeoff between security and efficiency. Based on these advantages, we believe that our scheme provides a reasonable lightweight solution for authentication in the WSN environment.

Data Availability

The data used to support the findings of this study have been cited within the text as references [[26], [29], [41], [44], [49]].

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work was partially supported by the National Natural Science Foundation of China (Project no. 61672007) and Science and Technology Innovation Guidance Project 2017 (Project no. 201704030605).

REFERENCES 1 Jinwala D. Ubiquitous computing: wireless sensor network deployment, models, security, threats and challengesProceedings of the National Conference NCIIRP-2006, SRMIST. January 2006. Bardoli, India, 1-8 2 Munir S. A., Ren B., Jiao W., Wang B., Xie D., Ma J. Mobile wireless sensor network: architecture and enabling technologies for ubiquitous computingProceedings of the 21st International Conference on Advanced Information Networking and Applications Workshops, AINAW'07. May 2007. Niagara Falls, Canada, 113-120 3 Puccinelli D., Haenggi M. Wireless sensor networks: applications and challenges of ubiquitous sensing. IEEE Circuits and Systems Magazine. 2005; 5(3): 19-31, 10.1109/mcas.2005.1507522, 2-s2.0-27744448961 4 Mainwaring A., Culler D., Polastre J., Szewczyk R., Anderson J. Wireless sensor networks for habitat monitoringProceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications. September 2002. Atlanta, GA, USA; ACM, 88-97 5 Hayajneh T., Mohd B., Imran M., Almashaqbeh G., Vasilakos A. Secure authentication for remote patient monitoring with wireless medical sensor networks. Sensors. 2016; 16(4): 424, 10.3390/s16040424, 2-s2.0-84961627565 6 Pierce F. J., Elliott T. V. Regional and on-farm wireless sensor networks for agricultural systems in Eastern Washington. Computers and Electronics in Agriculture. 2008; 61(1): 32-43, 10.1016/j.compag.2007.05.007, 2-s2.0-38949212223 7 Đurišić M. P., Tafa Z., Dimić G., Milutinović V. A survey of military applications of wireless sensor networksProceedings of the2012 Mediterranean Conference on Embedded Computing (MECO). 2012. Bar, Montenegro; IEEE, 196-199 8 Oliveira L. M., Rodrigues J. J. Wireless sensor networks: a survey on environmental monitoring. Journal of Clinical Microbiology. 2011; 6(2): 143-151, 10.4304/jcm.6.2.143-151, 2-s2.0-79955503480 9 Roman R., Alcaraz C., Lopez J., Sklavos N. Key management systems for sensor networks in the context of the Internet of Things. Computers & Electrical Engineering. 2011; 37(2): 147-159, 10.1016/j.compeleceng.2011.01.009, 2-s2.0-79955712919 Perrig A., Szewczyk R., Tygar J. D., Wen V., Culler D. E. SPINS: security protocols for sensor networks. Wireless Networks. 2002; 8(5): 521-534, 10.1023/a:1016598314198, 2-s2.0-0036738266 Raza S., Duquennoy S., Chung T., Yazar D., Voigt T., Roedig U. Securing communication in 6LoWPAN with compressed IPsecProceedings of the 2011 International Conference on Distributed Computing in Sensor Systems and Workshops (DCOSS). Spain 2011. Barcelona, Spain; IEEE, 1-8 Ray S., Biswas G. Establishment of ECC-based initial secrecy usable for IKE implementationProceedings of the World Congress on Expert Systems (WCE). 2012. London, UK Li F., Xiong P. Practical secure communication for integrating wireless sensor networks into the internet of things. IEEE Sensors Journal. 2013; 13(10): 3677-3684, 10.1109/jsen.2013.2262271, 2-s2.0-84883394343 Chen C.-L., Shih T.-F., Tsai Y.-T., Li D.-K. A bilinear pairing-based dynamic key management and authentication for wireless sensor networks. Journal of Sensors. 2015 Ramachandran S., Shanmugam V. A two way authentication using bilinear mapping function for wireless sensor networks. Computers & Electrical Engineering. 2017; 59, 242-249, 10.1016/j.compeleceng.2016.12.009, 2-s2.0-85013972408 Wong K. H. M., Zheng Y., Cao J., Wang S. A dynamic user authentication scheme for wireless sensor networksProceedings of the IEEE International Conference on Sensor Networks. 2006. Taichung, Taiwan Tseng H. R., Jan R. H., Yang W. An improved dynamic user authentication scheme for wireless sensor networksProceedings of the IEEE Globecom- IEEE Global Telecommunications Conference. 2007. Washington, DC, USA Das M. L. Two-factor user authentication in wireless sensor networks. IEEE Transactions on Wireless Communications. 2009; 8(3): 1086-1090, 10.1109/twc.2008.080128, 2-s2.0-62949130774 Nyang D., Lee M.-K. Improvement of Das's two-factor Authentication protocol in wireless sensor networks. IACR Cryptology ePrint Archive. 2009; 2009, 631 Huang H. F., Chang Y. F., Liu C. H. Enhancement of two-factor user authentication in wireless sensor networksProceedings of the Sixth International Conference on Intelligent Information Hiding and Multimedia Signal Processing. November 2010. Kaohsiung, Taiwan He D., Gao Y., Chan S., Chen C., Bu J. An enhanced two-factor user authentication scheme in wireless sensor networks. Ad Hoc & Sensor Wireless Networks. 2010; 10(4): 361-371 Kumar P., Lee H. J. Cryptanalysis on two user authentication protocols using smart card for wireless sensor networksProceedings of the Wireless Advanced. 2011. London, UK, 241-245 Xue K., Ma C., Hong P., Ding R. A temporal-credential-based mutual authentication and key agreement scheme for wireless sensor networks. Journal of Network and Computer Applications. 2013; 36(1): 316-323, 10.1016/j.jnca.2012.05.010, 2-s2.0-84870693016 Yoo S. G., Park K. Y., Kim J. A security-performance-balanced user authentication scheme for wireless sensor networks. International Journal of Distributed Sensor Networks. 2012; 8(3): 382810, 10.1155/2012/382810, 2-s2.0-84863637154 Vaidya B., Makrakis D., Mouftah H. Two-factor mutual authentication with key agreement in wireless sensor networks. Security and Communication Networks. 2016; 9(2): 171-183, 10.1002/sec.517, 2-s2.0-84961312004 Wu F., Xu L., Kumari S., Li X. A new and secure authentication scheme for wireless sensor networks with formal proof. Peer-to-Peer Networking and Applications. 2017; 10(1): 16-30, 10.1007/s12083-015-0404-5, 2-s2.0-84940853317 Singh A., Awasthi A. K., Singh K. Cryptanalysis and improvement in user authentication and key agreement scheme for wireless sensor network. Wireless Personal Communications. 2017; 94(3): 1881-1898, 10.1007/s11277-016-3717-7, 2-s2.0-84988632782 Chandrakar P. A secure remote user authentication protocol for healthcare monitoring using wireless medical sensor networks. International Journal of Ambient Computing and Intelligence. 2019; 10(1): 96-116, 10.4018/ijaci.2019010106, 2-s2.0-85055871206 Wu F., Xu L., Kumari S., Li X. A privacy-preserving and provable user authentication scheme for wireless sensor networks based on Internet of Things security. Journal of Ambient Intelligence and Humanized Computing. 2017; 8(1): 101-116, 10.1007/s12652-016-0345-8, 2-s2.0-85010842165 Wang D., Wang P. Understanding security failures of two-factor authentication schemes for real-time applications in hierarchical wireless sensor networks. Ad Hoc Networks. 2014; 20, 1-15, 10.1016/j.adhoc.2014.03.003, 2-s2.0-84901198272 Wang D., Li W., Wang P. Measuring two-factor authentication schemes for real-time data access in industrial wireless sensor networks. IEEE Transactions on Industrial Informatics. 2018; 14(9): 4081-4092, 10.1109/tii.2018.2834351, 2-s2.0-85046732128 He D., Wang D. Robust biometrics-based authentication scheme for multiserver environment. IEEE Systems Journal. 2015; 9(3): 816-823, 10.1109/jsyst.2014.2301517, 2-s2.0-85027949488 Das A. K. A secure and robust temporal credential-based three-factor user authentication scheme for wireless sensor networks. Peer-to-Peer Networking and Applications. 20141): 1-22 Das A. K. A secure and efficient user anonymity-preserving three-factor authentication protocol for large-scale distributed wireless sensor networks. Wireless Personal Communications. 2015; 82(3): 1377-1404, 10.1007/s11277-015-2288-3, 2-s2.0-84929837704 Das A. K. A secure and effective biometric-based user authentication scheme for wireless sensor networks using smart card and fuzzy extractor. International Journal of Communication Systems. 2015; 30(1), e2933, 10.1002/dac.2933, 2-s2.0-84921852751 Jiang Q., Zeadally S., Ma J., He D. Lightweight three-factor authentication and key agreement protocol for internet-integrated wireless sensor networks. IEEE Access. 2017; 5, 3376-3392, 10.1109/access.2017.2673239, 2-s2.0-85018460561 Xie Q., Tang Z., Chen K. Cryptanalysis and improvement on anonymous three-factor authentication scheme for mobile networks. Computers & Electrical Engineering. 2017; 59, 218-230, 10.1016/j.compeleceng.2016.11.038, 2-s2.0-85007575569 Amin R., Islam S. H., Biswas G. P., Khan M. K., Leng L., Kumar N. Design of an anonymity-preserving three-factor authenticated key exchange protocol for wireless sensor networks. Computer Networks. 2016; 101, 42-62, 10.1016/j.comnet.2016.01.006, 2-s2.0-84979462212 Li C.-T., Hwang M.-S. An efficient biometrics-based remote user authentication scheme using smart cards. Journal of Network and Computer Applications. 2010; 33(1): 1-5, 10.1016/j.jnca.2009.08.001, 2-s2.0-70349792182 Jiang Q., Ma J., Lu X., Tian Y. An efficient two-factor user authentication scheme with unlinkability for wireless sensor networks. Peer-to-Peer Networking and Applications. 2015; 8(6): 1070-1081, 10.1007/s12083-014-0285-z, 2-s2.0-84939576175 Wu F., Xu L., Kumari S., Li X. An improved and provably secure three-factor user authentication scheme for wireless sensor networks. Peer-to-Peer Networking and Applications. 2018; 11(1): 1-20, 10.1007/s12083-016-0485-9, 2-s2.0-84982796257 Farash M. S., Turkanović M., Kumari S., Hölbl M. An efficient user authentication and key agreement scheme for heterogeneous wireless sensor network tailored for the Internet of Things environment. Ad Hoc Networks. 2016; 36, 152-176, 10.1016/j.adhoc.2015.05.014, 2-s2.0-84948712087 Wang D., Gu Q., Cheng H., Wang P. The request for better measurement: a comparative evaluation of two-factor authentication schemesProceedings of the 11th ACM on Asia Conference on Computer and Communications Security. May 2016. Xi'an, China; ACM, 475-486 Wang C., Xu G., Sun J. An enhanced three-factor user authentication scheme using elliptic curve cryptosystem for wireless sensor networks. Sensors. 2017; 17(12): 2946, 10.3390/s17122946, 2-s2.0-85038434579 Li X., Niu J., Kumari S., Wu F., Sangaiah A. K., Choo K.-K. R. A three-factor anonymous authentication scheme for wireless sensor networks in internet of things environments. Journal of Network and Computer Applications. 2018; 103, 194-204, 10.1016/j.jnca.2017.07.001, 2-s2.0-85024861928 Ali R., Pal A. K., Kumari S., Sangaiah A. K., Li X., Wu F. An enhanced three factor based authentication protocol using wireless medical sensor networks for healthcare monitoring. Journal of Ambient Intelligence and Humanized Computing. 2018, 1-22 Luo H., Wen G., Su J. Lightweight three factor scheme for real-time data access in wireless sensor networks. Wireless Networks. 2018, 1-16, 10.1007/s11276-018-1841-x, 2-s2.0-85053908074 Srinivas J., Mishra D., Mukhopadhyay S., Kumari S. Provably secure biometric based authentication and key agreement protocol for wireless sensor networks. Journal of Ambient Intelligence and Humanized Computing. 2018; 9(4): 875-895, 10.1007/s12652-017-0474-8, 2-s2.0-85042921378 Li X., Peng J., Obaidat M. S., Wu F., Khan M. K., Chen C. A secure three-factor user authentication protocol with forward secrecy for wireless medical sensor network systems. IEEE Systems Journal. 2019 Lu Y., Xu G., Li L., Yang Y. Anonymous three-factor authenticated key agreement for wireless sensor networks. Wireless Networks. 2019; 25(4): 1461-1475, 10.1007/s11276-017-1604-0, 2-s2.0-85032833518 Dodis Y., Reyzin L., Smith A. Fuzzy extractors: how to generate strong keys from biometrics and other noisy dataProceedings of the International Conference on the Theory and Applications of Cryptographic Techniques. May 2004. Interlaken, Switzerland, 523-540 Das A. K. A secure user anonymity-preserving three-factor remote user authentication scheme for the telecare medicine information systems. Journal of Medical Systems. 2015; 39(3): 30, 10.1007/s10916-015-0218-2, 2-s2.0-84922713572 Li X., Wang K., Shen J., Kumari S., Wu F., Hu Y. An enhanced biometrics-based user authentication scheme for multi-server environments in critical systems. Journal of Ambient Intelligence and Humanized Computing. 2016; 7(3): 427-443, 10.1007/s12652-015-0338-z, 2-s2.0-84971667845 Srinivas J., Mishra D., Mukhopadhyay S., Kumari S. Provably secure biometric based authentication and key agreement protocol for wireless sensor networks. Journal of Ambient Intelligence and Humanized Computing. 2017, 1-21 Koblitz N., Menezes A., Vanstone S. The state of elliptic curve cryptography. Designs, Codes and Cryptography. 2000; 19(2-3): 173-193, 10.1023/a:1008354106356 Mangard S., Oswald E., Popp T. Power Analysis Attacks: Revealing the Secrets of Smart Cards. 2008; 31: Berlin, Germany; Springer Science & Business Media Kim T. H., Kim C., Park I. Side channel analysis attacks using AM demodulation on commercial smart cards with SEED. Journal of Systems and Software. 2012; 85(12): 2899-2908, 10.1016/j.jss.2012.06.063, 2-s2.0-84867337073 Veyrat-Charvillon N. Standaert F-X Generic side-channel distinguishers: improvements and limitationsProceedings of the Annual Cryptology Conference. August 2011. Santa Barbara, CA, USA, 354-372 Wang D., Wang P. Two birds with one stone: two-factor Authentication with security beyond conventional bound. IEEE Transactions on Dependable and Secure Computing. 20184): 708-722 Bonneau J. The science of guessing: analyzing an anonymized corpus of 70 million passwordsProceedings of the 2012 IEEE Symposium on Security and Privacy (SP). 2012. Oakland, CA, USA; IEEE, 538-552 Dell'Amico M., Michiardi P., Roudier Y. Password strength: an empirical analysisProceedings of the 2010 IEEE INFOCOM. 2010. Shanghai, China; IEEE, 1-9 Heinzelman W. B., Chandrakasan A. P., Balakrishnan H. An application-specific protocol architecture for wireless microsensor networks. IEEE Transactions on Wireless Communications. 2002; 1(4): 660-670, 10.1109/twc.2002.804190, 2-s2.0-33646589837 Bellare M., Rogaway P. Random oracles are practical: a paradigm for designing efficient protocolsProceedings of the 1st ACM Conference on Computer and Communications Security. November 1993. Fairfax, VA, USA; ACM, 62-73 Wang D., Cheng H., Wang P., Huang X., Jian G. Zipf's law in passwords. IEEE Transactions on Information Forensics and Security. 2017; 12(11): 2776-2791, 10.1109/tifs.2017.2721359, 2-s2.0-85023759710 Ding W., He D., Ping W., Chu C. H. Anonymous two-factor Authentication in distributed systems: certain goals are beyond attainment. Dependable & Secure Computing. 2015; 12(4): 428-442 Blanchet B. An efficient cryptographic protocol verifier based on prolog rulesProceedings of the IEEE Computer Security Foundations Workshop. 2001. Mordano, Italy Rivest R. L., Hellman M. E., Anderson J. C., Lyons J. W. Responses to NIST's proposal. Communications of the ACM. 1992; 35(7): 41-54, 10.1145/129902.129905, 2-s2.0-84976770858 Burrows J. H. Secure Hash Standard. 1995: Washington, DC, USA; Department of Commerce

By Jiaqing Mo and Hang Chen

Reported by Author; Author

Titel:
A Lightweight Secure User Authentication and Key Agreement Protocol for Wireless Sensor Networks
Autor/in / Beteiligte Person: Mo, Jiaqing ; Chen, Hang
Link:
Zeitschrift: Security and Communication Networks, Jg. 2019 (2019)
Veröffentlichung: Hindawi-Wiley, 2019
Medientyp: unknown
ISSN: 1939-0122 (print) ; 1939-0114 (print)
Schlagwort:
  • Key-agreement protocol
  • Authentication
  • Article Subject
  • Computer Networks and Communications
  • Computer science
  • business.industry
  • Password cracking
  • 020206 networking & telecommunications
  • 02 engineering and technology
  • Computer security
  • computer.software_genre
  • Random oracle
  • Secure communication
  • Secrecy
  • lcsh:Technology (General)
  • 0202 electrical engineering, electronic engineering, information engineering
  • Session key
  • lcsh:T1-995
  • 020201 artificial intelligence & image processing
  • business
  • lcsh:Science (General)
  • Wireless sensor network
  • computer
  • Information Systems
  • lcsh:Q1-390
Sonstiges:
  • Nachgewiesen in: OpenAIRE
  • Sprachen: English
  • File Description: text/xhtml
  • Language: English
  • Rights: OPEN

Klicken Sie ein Format an und speichern Sie dann die Daten oder geben Sie eine Empfänger-Adresse ein und lassen Sie sich per Email zusenden.

oder
oder

Wählen Sie das für Sie passende Zitationsformat und kopieren Sie es dann in die Zwischenablage, lassen es sich per Mail zusenden oder speichern es als PDF-Datei.

oder
oder

Bitte prüfen Sie, ob die Zitation formal korrekt ist, bevor Sie sie in einer Arbeit verwenden. Benutzen Sie gegebenenfalls den "Exportieren"-Dialog, wenn Sie ein Literaturverwaltungsprogramm verwenden und die Zitat-Angaben selbst formatieren wollen.

xs 0 - 576
sm 576 - 768
md 768 - 992
lg 992 - 1200
xl 1200 - 1366
xxl 1366 -