Skip to main content
Sensors (Basel, Switzerland) logoLink to Sensors (Basel, Switzerland)
. 2018 Jul 23;18(7):2394. doi: 10.3390/s18072394

A Multi-Server Two-Factor Authentication Scheme with Un-Traceability Using Elliptic Curve Cryptography

Guosheng Xu 1, Shuming Qiu 1,2,*, Haseeb Ahmad 3, Guoai Xu 1, Yanhui Guo 1, Miao Zhang 1, Hong Xu 4
PMCID: PMC6068574  PMID: 30041475

Abstract

To provide secure communication, the authentication-and-key-agreement scheme plays a vital role in multi-server environments, Internet of Things (IoT), wireless sensor networks (WSNs), etc. This scheme enables users and servers to negotiate for a common session initiation key. Our proposal first analyzes Amin et al.’s authentication scheme based on RSA and proves that it cannot provide perfect forward secrecy and user un-traceability, and is susceptible to offline password guessing attack and key-compromise user impersonation attack. Secondly, we provide that Srinivas et al.’s multi-server authentication scheme is not secured against offline password guessing attack and key-compromise user impersonation attack, and is unable to ensure user un-traceability. To remedy such limitations and improve computational efficiency, we present a multi-server two-factor authentication scheme using elliptic curve cryptography (ECC). Subsequently, employing heuristic analysis and Burrows–Abadi–Needham logic (BAN-Logic) proof, it is proven that the presented scheme provides security against all known attacks, and in particular provides user un-traceability and perfect forward security. Finally, appropriate comparisons with prevalent works demonstrate the robustness and feasibility of the presented solution in multi-server environments.

Keywords: multi-server, authentication, key agreement, elliptic curve cryptography (ECC), BAN-Logic, wireless sensor networks (WSNs)

1. Introduction

With the recent advancements in Internet and communication technology and the growing demand for sharing multiple data resources, secure and efficient communication between the involved stakeholders has become more essential in areas such as e-commerce, telecare medical information, distributed cloud storage systems, etc. Obviously, privacy protection has emerged as a vital issue for secure and trusted communication. For secure and effective communication over an insecure network, the involved parties are required to negotiate on a common session key beforehand. For such negotiations, authentication-and-key-agreement protocols serve as the only solution. The first password authentication with insecure communication was established by Lamport in 1981 [1]. Later, Frank et al. [2] presented an authentication protocol based on hypertext transport protocol in 1991. However, Yang et al. [3] identified that Frank’s proposal was insecure and provided an improved solution in 2005. In order to present a secure and efficient authentication and key agreement protocol, in the following decade, many single-, two-, and three-factor authentication protocols were constructed while employing RSA, discrete logarithm over general groups, elliptic curve cryptography (ECC), chaotic maps [4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22], etc. However, some security limitations are prevailing in these protocols. By analyzing a large number of authentication protocols, we found that such shortcomings are resulted due to either improper usage of the cryptographic primitives or design defects of the protocols.

In 2011, Awasthi et al. [23] showed that the protocol of Shen et al. [24] is prone to user impersonation attack. To remedy impersonation attack, Awasthi et al. put forward a refined time stamp-based authentication-and-key-agreement protocol. However, in that protocol, the adversary can easily obtain smart card and identity parameters through an open channel. In 2014, Huang et al. [25] pointed out that the scheme presented by Awasthi et al. is unable to resist against user impersonation attack, and overlooks the password updation stage. Moreover, we remark that Awasthi et al.’s scheme also fails to ensure user anonymity. Huang et al. proposed an enhanced time stamp-based two-factor remote user authentication protocol while incorporating RSA, and claimed that the scheme can resist various attacks. However, Amin et al. [26] proved that the proposal of Huang et al., is susceptible to impersonation, offline password guessing, and insider attacks, while also having an inefficient password updation stage. Keeping in view the limitations of Huang et al.’s proposal, Amin et al. presented an authentication-and-key-agreement mechanism based on RSA.

In a multi-server environment, users interact with multiple servers. To login with different identities and passwords in such an environment is troublesome for the users. To eliminate this problem, first, users and multiple servers are registered at the registration center (RC). Subsequently, users can make an authentication-and-key-agreement with multiple servers by utilizing the unique identity and password pair. A proposed architecture of the multi-server authentication system is depicted in Figure 1. In 2013, Pippel et al. [27] employed smart cards to present a robust multi-server authentication protocol and proved it to be resistant against various known attacks. In a subsequent work, Li et al. [28] identified that the protocol presented by Pippel et al. is unable to provide correct authentication. Moreover, it cannot withstand impersonation attack and insider attack. Afterwards, Li et al. designed an improved smart card authentication protocol and proved that it can withstand perfect forward secrecy, stolen smart-card attack, offline password guessing attack, and so on. Even so, Srinivas et al. [29] provided that Li et al.’s scheme is unable to resist insider attack, denial-of-service attack, and stolen smart-card attack, and cannot provide perfect forward secrecy. However, we remark that Li et al.’s scheme addresses perfect forward secrecy. As a solution, Srinivas et al. presented an improved two-factor authentication scheme for the same multi-server architecture with reduced computation and communication cost while claiming that their protocol is susceptible to various known attacks. To the best of our knowledge, most of the schemes cannot provide perfect forward secrecy and user un-traceability, and are susceptible to key-compromise user impersonation attack and offline password guessing attack. More precisely, once an authentication-and-key-agreement mechanism fails to ensure user un-traceability, the user’s entire whereabouts are exposed to the attacker. This provides a great deal of convenience for attackers to carry out more attacks. This proposal takes the schemes of Amin et al. and Srinivas et al. as examples to depict how an adversary traces the legal user, effectively guesses the correct password, or succeeds in obtaining the session key. These security flaws usually exist in wireless sensor networks (WSNs) as well [30,31,32,33,34,35,36,37,38,39,40]. Moreover, The methods of attacking and designing we use are very useful and effective in analyzing similar vulnerabilities and designing new protocols in WSNs, respectively.

Figure 1.

Figure 1

The architecture of the multi-server authentication system.

1.1. Contributions

The key contributions of our proposal are listed as follows: (1) We prove that Amin et al.’s protocol fails to ensure perfect forward secrecy and user un-traceability, and is susceptible to key-compromise user impersonation attack and offline password guessing attack. (2) It is proven that Srinivas et al.’s scheme fails to ensure user un-traceability, and is prone to key-compromise user impersonation attack and offline password guessing attack. (3) To overcome these limitations, we design a two-factor authentication-and-key-agreement scheme for multi-server architecture while incorporating ECC. (4) The presented scheme ensures perfect forward secrecy, user anonymity, and un-traceability. Moreover, it provides security against major attacks, including impersonation attack, offline password guessing attack, key-compromise user impersonation attack, etc. (5) The security analysis using Burrows–Abadi–Needham logic (BAN-Logic) provides that the proposed protocol ensures secured mutual authentication between a remote user and server.

1.2. Outline of This Paper

The remaining contents of the proposal are organized as follows: cryptographic primitive and attacker model are detailed in Section 2. The scheme of Amin et al., and its cryptanalysis are presented in Section 3 and Section 4, respectively. Section 5 and Section 6 provide the scheme of Srinivas et al., and its cryptanalysis, respectively. The improved version of the proposed scheme is provided in Section 7. The heuristic security analysis and BAN-Logic are presented in Section 8 and Section 9, respectively. Section 10 details the security and performance comparisons. Finally, Section 11 contains the concluding remarks.

2. Preliminary

We take advantage of ECC to present a two-factor authentication scheme. The following section briefly introduces the collision-resistant cryptographic one-way hash function as well as some computationally infeasible problems, including the elliptic curve computational Diffie–Hellman Problem (ECCDHP) and the elliptic curve discrete-logarithm problem (ECDLP). Table 1 depicts some notations and descriptions that are used in the proposed scheme.

Table 1.

Notations and their descriptions.

Symbol Description Symbol Description
RC Registration center Sj Server
Ui User SCi Smart card of Ui
Idi Identification of user Ui Pwi Password belonging to user Ui
ri,ai Random numbers of Ui p Large prime
Qj=rjP Public key of Sj rj Private key of Sj
cj,bj Random number of Sj The bitwise XOR operation
|| The string concatenation operation H(·) One-way hash function
A The malicious adversary SKij Session key belonging to Ui and Sj

2.1. Collision-Resistant One-Way Hash Function

Basically, the one-way hash function H(·):{0,1}*{0,1}n requires an input in the form of an arbitrary length binary string x{0,1}*, and yields a string in binary form y=H(x){0,1}n. In brief terms, a cryptographic collision-resistant one-way hash function H(·) ensures the following:

  1. Given y{0,1}n, it is difficult to determine the input x{0,1}* within polynomial time.

  2. It is difficult to determine x{0,1}* such that H(x)=H(x), where xx.

  3. It is difficult to uncover a pair (x,x){0,1}*, such that xx and H(x)=H(x) could hold.

2.2. Intractable Problems in ECC

The elliptic curve equation over a finite field Fp in ECC takes the form Ep(a,b):y2=x3+ax+b(modp), where 4a3+27b0(modp) and a,bFp [41].

  1. ECDLP: The elliptic curve discrete-logarithm problem over elliptic curve Ep(a,b) refers to computing mFp* from Q=mP for given P,QEp(a,b).

  2. ECCDHP: The elliptic curve computational Diffie–Hellman problem over elliptic curve Ep(a,b) refers to computing mnP, given points mP,nPEp(a,b).

2.3. Adversary Model

According to [18,42,43,44,45,46,47], the capacities of A in authentication and key agreement schemes, which are used in cryptanalysis of Amin et al.’s scheme, Srinivas et al.’s scheme, and our proposed scheme, are listed as follows:

  1. A is able to intercept, block, delete, modify, and resend the message contents through an open channel.

  2. Because identity and password have low entropy, A can enlist all pairs of (Pwi,Idi) simultaneously from (DPw,DId) within polynomial time, where DPw and DId refer to the space of passwords and identities in DPw and DId, respectively.

  3. A can either acquire Pwi of the Ui via malicious device or reveal the information from SC, but is not permitted to use both methods together.

  4. A can acquire a server’s private key while evaluating forward secrecy or key-compromise user impersonation attack.

  5. A has the ability to reveal all parameters of the smart card when assessing stolen smart-card attack, offline password guessing attack, impersonation attack, forward secrecy, etc.

3. Brief Review of Amin et al.’s Proposal

This section provides a brief review of Amin et al.’s [26] authentication scheme for Session Initiation Protocol (SIP). The scheme presented by the authors comprises four stages: initialization, registration, login and authentication, and password updation. We omit the description of the password updation stage.

3.1. Initialization

S takes two large primes p and q as secret parameters to calculate n=p×q as a public parameter. Afterwards, S chooses a prime e to obtain d by computing e×d1mod(p1)(q1), such that 1<e<(p1)(q1).

3.2. Registration

  1. Ui enters an identity Idi and password Pwi. Subsequently, Ui randomly picks up a number r and calculates PWri=H(Pwi||u). Afterwards, Ui transmits the registration request message {Idi,PWri} to S via secure medium.

  2. Upon receiving the request message {Idi,PWri} from the new user Ui, S calculates CIdi=H(Idi||d), Regi=H(CIdi||PWri||Idi), and Yi=CIdiH(PWri||Idi). Afterwards, S stores the contents {Regi,Yi,n,e,H(·)} in a new card SC and sends SC to Ui.

  3. Once obtaining SC, Ui stores u into SC.

3.3. Login and Authentication

  1. To start the session with the S, Ui inserts SC into a card reader and inputs their login details, including Idi and Pwi. Subsequently, SC calculates PWri=H(Pwi||r),CIdi=YiH(PWri||Idi), and Regi=H(DIdi||PWri||Idi). Afterwards, it verifies the value of Regi. In case of invalid values, the session is ended. Otherwise, SC randomly chooses a number N1, the current time stamp Tu, and calculates Di=H(CIdi||H(PWri||Idi)||Tu||N1) and Li=(Idi||Di||N1)emodn. Next, SC transmits the login request message {Li,Yi,Tu} to S.

  2. Upon receiving the login request from Ui, S verifies the time stamp Tu corresponding to the current time stamp Ts. In the case of valid time stamp Tu, it continues to execute the following steps. Otherwise, it aborts the session. Afterwards, S decrypts Li to obtain (Idi*||Di*||Ni*) and then checks whether CIdi*=H(Idi*||d),H(PWri||Idi)*=YiCIdi* and Di**=H(CIdi*||H(PWri||Idi)*||Tu||N1*). Afterwards, S checks Di**=?Di*. After finishing this verification, S randomly selects a number and computes Xi=H(N2||CIdi),Zi=NiN2. Finally, S transmits the respond message {Xi,Zi,Ts} to SC via public channel.

  3. Once receiving the response message from S, SC checks the validity of Ts. After finishing the verification, SC checks whether N2*=N1Zi,Xi*=H(N2*||CIdi) and verifies Xi*=?Xi. If it holds, Ui accepts the response message. Finally, S and Ui calculate the session key: SK=H(N1||CIdi||N2*)=H(Ni*||CIdi*||N2).

4. Limitations of Amin et al.’s Scheme

According to the adversary model presented in Section 2.3, in the following, we prove that Amin et al.’s scheme is unable to provide user un-traceability and perfect forward secrecy, and is prone to key-compromise user impersonation attack and offline password guessing attack.

4.1. User Un-Traceability

Observing the protocol of Amin et al., it can be found that Yi is transmitted during the login request message stage. However, Yi=CIDih(PWri||IDi) is a fixed value in SC, unless Ui changes their password during the password updation stage. Usually, the user does not change their password after every session. Therefore, Ui can be traced by the adversary using Yi. Hence, Amin et al.’s protocol does not ensure user un-traceability.

4.2. Offline Password Guessing Attack

Offline password guessing attack is the main limitation for most of the presented proposals addressing authentication. If A somehow steals the SC of Ui and embeds the data {Regi,Yi,r} in it, then the adversary A can perform the following steps to obtain Idi and Pwi of Ui.

  1. From the password dictionary space DPW, the adversary A randomly chooses the password PW*, and picks up the identity ID* from the identity dictionary space DID.

  2. A calculates PWri*=h(Pw*||r).

  3. A calculates CIDi*=Yih(PWri*||IDi*).

  4. A calculates Regi*=h(CIDi*||PWri*||IDi*).

  5. To check the correctness of Pw* and Id*, A examines whether Regi*=Regi, where Regi belongs to SC of Ui.

  6. If the aforementioned equality holds, A’s guess results as successful. Otherwise, A repeats Steps 1–5 until it obtains the correct password and identity of Ui.

From the aforementioned procedure, we find that the computational time complexity of offline password guessing attack is O(|DPW||DID|3Th), where |DPw|,|DId|, and Th refer to the number of DPw, the number of DId, and the performing time of hash function h(·), respectively. According to [48,49,50], usually, |DId|<|DPw|<106. Therefore, the aforementioned attack is very efficient. Hence, Amin et al.’s protocol is unable to resist offline password guessing attack. Actually, the verified data Regi are stored in Ui’s smart card, which is the main reason for the success of the above attack. By computing Regi, the smart card is able to check the correct login of the legal user. Moreover, it also gives A the chance to guess password and identity. Since the identity and password have low entropy in such scenarios, A can guess them successfully within polynomial time.

4.3. Lacks of Perfect Forward Secrecy

Assume that the A obtains the long term private key d of S and eavesdrops the transmitted message {Li,Yi,Tu},{Xi,Zi,Ts}. Having that information, A can easily calculate two key random numbers {N1,N2}. A undergoes the following procedure to compute SK between Ui and S.

  1. The adversary A computes (Li)dmodn=(IDi||Di||N1) to obtain {IDi,N1}.

  2. A computes CIDi=h(IDi||d).

  3. A computes N2=ZiN1.

  4. A computes SK=h(N1||CIDi||N2).

The computational time overhead of the aforementioned attack is O(2Th+Te+Teor), where Te and Teor are the running time of modular exponentiation and exclusive-or operation, respectively. Therefore, the protocol of Amin et al. does not ensure perfect forward secrecy. This problem can be solved by adding an operation of public key cryptography, which slightly increases the computation load. However, it is a feasible approach in terms of the trade-off between security and practicality.

4.4. Key-Compromise User Impersonation Attack

If the long-term private key d of S is revealed to the adversary A in Amin et al.’s protocol, A can impersonate the legitimate user Ui to S as follows:

  1. A computes (Li)dmodn=(Idi||Di||N1), and subsequently calculates CIdi=H(Idi||d) and A=H(PWri||Idi)=YiCIdi.

  2. A obtains the login request message {Li,Yi,Tu} of Ui, randomly selects a number Na, and computes Di=H(CIdi||A||Tu||Na),Li=(Idi||Di||Na)emodn. Afterwards, A transmits the forged request message {Li,Yi,Tu} to S.

  3. Upon receiving the forged message, obviously S can verify it successfully. Thus, S randomly provokes a number N2, and computes Xi=H(N2||CIdi) and Zi=NaN2. Finally, S sends {Xi,Zi,Ts} to A.

  4. Upon receiving the response from S, A calculates N2=NaZi. Finally, the server S believes that SK=H(Na||CIdi||N2) is the common session key between a legitimate user and itself. However, in actual terms, A acts as Ui.

Therefore, Amin et al.’s protocol is unable to resist key-compromise user impersonation attack.

5. Review of Srinivas et al.’s Scheme

The following section reviews Srinivas et al.’s protocol [29] comprising four steps: initialization, registration, login and authentication, and password updation stage.

5.1. Initialization

The trusted registration center RC during this stage selects a 1024-bit large prime p, generates gZp*, chooses a one-way hash function H(·):{0,1}*Zp*, and randomly picks a number mk as the master secret key.

5.2. Registration Process

5.2.1. Server Registration

Sj(1jk) chooses a unique identity SIdj and sends SIdj to RC through a secure-medium. Upon receiving SIdj, RC calculates rj=H(SIdj||mk), and sends {rj,p,g,H(·)} to Sj through a secure medium.

5.2.2. User Registration

First, a new user Ui selects Idi, Pwi, and randomly chooses a number ri. Subsequently, the user calculates UIdi=H(Idi||ri),RPwi=H(Pwi||ri) and sends {UIdi,RPwi} to RC. Upon receiving the registration request, RC calculates vij=H(rj||UIdi),sij=vijRPwi. Afterwards, RC sends Ui a new smart card SCi containing {si1,si2,,sik,p,g,H()} through a secure medium. Finally, upon receiving SCi from RC, Ui inputs Bi=riH(Idi||Pwi) to SCi.

5.3. Login and Authentication

  1. Ui inserts SCi into a card reader and inputs Idi and Pwi. SCi checks ri=BiH(Idi||Pwi), UIdi=H(Idi||n) and RPwi=H(Pwi||ri). Afterwards, SCi randomly generates a number a, chooses the current time stamp Ti, and calculates Xi=gamodp,vij=sijH(UIdi||RPwi) and hij=H(vij||UIdi||SIdj||Ti||Xi). Subsequently, SCi transmits the login request message {UIdi,Xi,hij,Ti} to Sj.

  2. Sj receives the request message from Ui, figures out hij*=H(H(rj||UIdi)||UIdi||SIdj||Xi||Ti), and checks hij*=?hij. Sj terminates the login request if the expression does not hold. Apart from that, Sj a random number b and calculates Yj=gbmodp,zji=(Xi)bmodp. Afterwards, Sj picks the current time stamp Tj and computes SKji=H(UIdi||SIdj||Ti||hij*||Tj||zji) and Rj=H(UIdi||Ti||H(rj||UIdi)||Tj||SKji||Yj). Finally, Sj sends the response message {Yj,Rj,Tj} to SCi.

  3. On receiving the response message, SCi figures out zij=(Yj)amodp,SKij=H(UIdi||SIdj||Ti||hij||Tj||zji), and Rj*=H(UIdi||Ti||vij||Tj||SKij||Yj). Subsequently, SCi checks Rj*=?Rj and terminates this login request if the expression does not hold. Otherwise, SCi calculates Ri=H(UIdi||Xi||Yj||SKij||vij) and transmits it to Sj through a public channel.

  4. Upon acquiring Ri, Sj computes Ri*=H(UIdi||Xi||Yj||SKji||H(rj||UIdi)) and checks Ri*=?Ri. After successful accomplishment of all steps, Sj and Ui believe that they have the common session key SKij=SKji.

5.4. Password Updation Stage

After the authentication session between SCi and targeted server Sj, Ui inputs Idi,Pwi, and a new password Pwnew. Subsequently, SCi calculates Binew=riH(Idi||Pwinew) and sijnew=sijH(UIdi||H(Pwi||ri))H(UIdi||H(Pwinew||ri)), where 1jk. Afterwards, SCi replaces {si1,si2,,sik,Bi} with {si1new,si2new,,siknew,Binew}.

6. Limitations of Srinivas et al.’s Protocol

According to the adversary model presented in Section 2.3, we present some possible attacks for Srinivas et al.’s protocol, including key-compromise user impersonation attack, offline password guessing attack, and lack of user un-traceability. The details are described in the following sections.

6.1. Offline Password Guessing Attack

Assume that A extracts the information {si1,si2,,sik,Bi,p,g,H(·)} of SCi by side-channel attack. Now, A can execute the following steps to get the correct identity IDi and password PWi of user Ui in polynomial time.

  1. From the password dictionary space DPW, the adversary A chooses the password PW*, and picks up the identity Id* from the identity dictionary space DId.

  2. A computes n*=BiH(Idi||Pwi).

  3. A computes RPwi=H(Pwi||n*).

  4. A computes vij*=sijH(UIdi||RPwi).

  5. A computes hij*=H(vij*||UIdi||SIdj||Xi||Ti).

  6. A verifies whether hij*=hij, where hij is acquired from smart card of Ui.

  7. If it holds, then Pw* and Id* is the correct identity and password pair. Otherwise, A repeats Steps 1–6 until it obtains the correct identity and password of Ui.

We determine the computational time complexity of the aforementioned attack algorithm. That is,

O(|DPw||DId|4Th),

where |DPw|,|DId|, and Th are the number of DPw, the number of DId, and the time to compute hash function h(·), respectively. According to [48,49,50], usually, |DId|<|DPw|<106. Therefore, the offline password guessing attack is very efficient. Thus, Srinivas et al.’s protocol is not resistant against offline password guessing attack.

6.2. Lack of User Un-Traceability

It can be observed from Srinivas et al.’s protocol that the attacker can get UIdi transmitted within the login request message. Since UIdi=H(Idi||ri) is a fixed value, where Idi and ri are invariable, unless the user Ui changes their password during the password updation stage, any adversary can trace the user Ui by using UIdi. Therefore, Srinivas et al.’s protocol cannot provide user un-traceability.

6.3. Key-Compromise User Impersonation Attack

If the long-term private key rj of Sj is revealed to A in Srinivas et al.’s protocol, then A can adopt the following actions to impersonate the legitimate Ui to Sj.

  1. A intercepts the login request message {UIdi,Xi,hij,Ti} of Ui, and calculates vij=H(rj||UIdi).

  2. A randomly selects a number a to compute Xi=gamodp,hij=H(vij||UIdi||SIdj||Xi||Ti). Afterwards, A sends the forged login request message {UIdi,Xi,hij,Ti} to Sj.

  3. Obviously, the forged message can pass the verification of Sj. Thus, Sj randomly chooses a number b to compute Yj=gbmodp,zji=(Xi)bmodp. Subsequently, Sj chooses the current time stamp Tj to compute SKji=H(UIdi||SIdj||Ti||hij||Tj||zji) and Rj=H(UIdi||Ti||H(rj||UIdi)||Tj||SKji||Yj). Finally, Sj sends the response message {Yj,Rj,Tj} to A.

  4. On receiving the response message, A figures out zij=(Yj)amodp,SKij=H(UIdi||SIdj||Ti||hij||Tj||zij). Subsequently, A calculates Ri=H(UIdi||Xi||Yj||SKij||vij) and transmits it to Sj through a public channel.

  5. Sj receives Ri, computes Ri=H(UIdi||Xi||Yj||SKji||H(rj||UIdi)), and checks whether Ri=?Ri. After finishing all steps successfully, Sj believes that it holds the common session key SKij=SKji with Ui. Actually, however, A plays as Ui. Thus, A successfully impersonated Ui to Sj under the condition that the long-term private key of the server was leaked.

Therefore, Srinivas et al.’s protocol is prone to key-compromise user impersonation attack.

7. The Improved Scheme

The following section presents an improved mutual authentication protocol that gets motivation from Srinivas et al.’s [29] scheme to incorporate ECC. The presented solution not only remedies the limitations of Amin et al.’s [26] and Srinivas et al.’s [29] schemes, but also ensures mutual authentication and is resistant to many known attacks. The presented scheme comprises five stages: initialization, server registration, user registration, authentication-and-key-agreement, and password updating. The notations of the presented scheme are listed in Table 1. Figure 2, Figure 3 and Figure 4 depict the registration and authentication process of the proposed protocol.

Figure 2.

Figure 2

Server registration.

Figure 3.

Figure 3

User registration.

Figure 4.

Figure 4

Login and authentication.

7.1. Initialization

RC chooses an elliptic curve Ep(a,b) from Fp, where p is a 160-bit-long prime number. Afterwards, RC selects a fixed point PEp(a,b), and one-way hash function H():{0,1}*Zp*, and randomly picks a number as mk.

7.2. Server Registration

  1. Sj chooses an identity SIdj and transmits it to RC via a secure-medium.

  2. RC receives the registration message, randomly generates a number sjZp*, and computes rj=H(SIdj||mk||sj),Qj=rjP. Subsequently, RC randomly generates a number cj for Sj. Finally, RC sends {rj,Qj,cj,P,H(·)} to Sj through secure-medium.

  3. Sj stores {rj,Qj,cj,P,H(·)} in its database.

7.3. User Registration

After the successful registration of Ui with RC, Ui can communicate with any server Sj(1jk).

  1. Ui selects Idi, Pwi, and randomly generates a number riZp* to compute RPwi=H(Idi||Pwi||ri). Afterwards, Ui transmits the registration request message {Idi,RPwi} to RC through a secure medium.

  2. Upon receiving the registration message, RC randomly generates numbers rsZp*,24n028, and computes the following: Ai=H((H(Idi)RPwi)modn0),vij=H(rj||Idi||cj),sij=vijH(Idi||RPwi), where (1jk). Afterwards, RC inserts {Ai,sij(1jk), n0,Qj,P,H(·)} into a new SCi. and sends it to Ui through secure-medium.

  3. Ui stores ri in SCi.

7.4. Login and Mutual Authentication

Ui initiates the login and authentication request for sending to Sj by performing the following steps.

  1. Ui inserts SCi into a card reader and inputs Idi, Pwi. SCi computes RPwi=H(Idi||Pwi||ri), and subsequently calculates Ai*=H((H(Idi)RPwi)modn0). Afterwards, SCi inspects the correctness of Ai* while comparing it with the value of Ai sorted in SCi. If Ai*=Ai, Idi and Pwi are validated. Otherwise, the session is expired. SCi continues to compute vij=sijH(Idi||RPwi) and randomly selects a number aiZp* to calculate the following: Xi=aiP,Xij=aiQj,PIdi=H(Xij)Idi,hi=h(vij||Idi||SIdj||Xij||Xi). Finally, Ui transmits the request {PIdi,Xi,hij} to Sj via an open channel.

  2. After receiving {PIdi,Xi,hij}, Sj calculates Xij*=rjXi, Idi*=PIdiH(Xij*) and vij*=H(rj||Idi*||cj). Afterwards, Sj computes hi*=h(vij*||Idi*||SIdj||Xij*||Xi). Then, Sj verifies hi*=?hi. In the case of invalidation, Sj terminates the session and sets the counter N=1. Sj keeps suspending the card until Ui registers again if N surpasses some threshold mark (e.g., 8). Otherwise, Sj randomly selects a number bj to compute Yj=bjP,zij=biXi, SKij=H(Idi||SIdj||vij||zij||Xij*), and Rj=H(PIdi||vij||SKij||Xi||Yj). Finally, Sj sends the response message {Yj,Rj} to Ui via open channel.

  3. Upon receiving the respond message {Yj,Rj}, Ui computes zij*=aiYi, SKij*=H(Idi||SIdj||vij||zij*||Xij), and Rj*=H(PIdi||vij||SKij*||Xi||Yj). Subsequently, Ui checks whether Rj*=?Rj. The session is aborted if these are not equal, . Otherwise, Sj is authenticated by Ui and Ui accepts SKij*. Afterwards, Ui computes Ri=H(vij||Xi||Yj||SKij*||Idi). Finally, Ui transmits the challenge message Ri to Sj through an open channel.

  4. Upon receiving the challenge message from Ui, Sj computes Ri*=H(vij||Xi||Yj||SKij*||Idi) and verifies whether Ri*=?Ri. If these are equal, then Ui is authenticated successfully.

Finally, both Ui and Sj share the common session key SK=SKij*=SKij.

7.5. Password Updation

Ui is able to change their password whenever they want, for which Ui and SCi have to undergo the following procedure:

  1. Ui inserts the SCi into a card reader and inputs Idi, current password Pwi, and password to be updated Pwi*.

  2. SCi computes RPwi=H(Idi||Pwi||ri), and Ai=H((H(Idi)RPwi)modn0). Afterwards, SCi checks whether Ai=?Ai. In case of inequality, SCi refuses Ui to update the password.

  3. Apart from that, SCi randomly selects a number ri* to compute RPwi*=H(Idi||Pwi*||ri*),sij*=sijH(Idi||RPwi*)H(Idi||RPwi*). Subsequently, SCi computes Ai*=H((H(Idi)RPwi*)modn0). Finally, SCi replaces ri,Ai,sij with ri*,Ai*,sij*, respectively.

Remark: As Amin et al.’s scheme and Srinivas et al.’s scheme are vulnerable to offline password guessing attack and key-compromise user impersonation attack and cannot provide user un-traceability, and because Amin et al.’s scheme cannot provide perfect forward secrecy, in the proposed scheme: (1) we employ “honey words” + “fuzzy-verifiers” to resist against offline password guessing attack [42]; (2) according to [47], to provide perfect forward secrecy, we use public key cryptosystems (e.g., ECC); (3) we store a secret parameter cj in the server database which cannot be compromised by the adversary in order to resist key-compromise user impersonation attack; and (4) to provide user un-traceability, we deploy a dynamic identity technique via a public key algorithm, that is, PIdi.

8. Security Inspection

This section provides the details of how the presented protocol ensures the security against all known attacks, including key-compromise user impersonation attack and offline password guessing attack. Further, it also offers more comprehensive security features, in particular, user un-traceability and perfect forward secrecy under the capabilities of the adversary that were introduced in Section 2.3.

8.1. User Un-Traceability and Anonymity

During the login authentication stage, Idi is not sent through the public channel. Even if A intercepts the login request messages {PIDi,Xi,hij} from the public channel, A still cannot extract Idi from PIdi, because PIdi is protected by H(Xij) and is a dynamic identity. Thus, the proposed scheme provides the user un-traceability and anonymity.

8.2. Stolen Smart-Card Attack

In the proposed scheme, even if A steals SCi of Ui, then A can extract the parameters {Ai,ri,sij(1jk),n0,Qj,P,H(·)} stored in SCi utilizing power analysis technology, and captures the transmitted message over a public channel. However, as per the following details, A cannot execute any attack. Thus, the presented protocol is secured against stolen smart-card attack.

8.3. Offline Password Guessing Attack

Assuming that A steals SCi and extracts {Ai,ri,sij(1jk),n0,Qj,P,H(·)} stored in it. A intercepts all messages {PIdi,Xi,hij},{Yj,Rj},{Ri} over a public channel. If A guesses an ID Idi and a password Pwi, A can calculate RPwi=H(Idi||Pwi||ri), and then figures out Ai=H((H(Idi)RPwi)modn0). Afterwards, A examines whether Ai=?Ai. According to [42], A can obtain the reduced password guessing space of size |D|n0, where D is the space of passwords. Further, A can guess the correct password only by online password guessing. However, Sj prevents this guessing by using a login request threshold value (e.g., 8). Once the number of online guesses exceeds the threshold value, Sj will terminate communication and suspend SCi until Ui registers again. Therefore, the presented scheme offers resistance against offline password guessing attack.

8.4. Privileged Insider Attack

If an internal attacker eavesdrops the registration information {Idi,RPwi} during user registration, A is unable to get Pwi, because it is secured by one-way hash function H(·) as well as with random number ri. Thus, the presented scheme is immune to the privileged insider attack.

8.5. Key-Compromise User Impersonation Attack

If the adversary steals the long-term private key of the server, it is still unable to impersonate the user to the server. This kind of attack is referred to as a key-compromise user impersonation attack. In the presented protocol, even if rj of Sj is revealed to A, still A cannot determine vij=H(rj||Idi||cj), because A is unable to obtain the random number cj. Therefore, A cannot forge the login request message {hij}, and therefore cannot be authenticated by Sj. That is, A cannot impersonate Ui. Thus, the presented protocol is insusceptible to key-compromise user impersonation attack. Further, it implies that the presented scheme ensures resistance against user impersonation attack.

8.6. Server Impersonation Attack

A intercepts the response message {Yj,Rj} if A tries to make a server impersonation attack. A randomly generates a number bj to compute Yj=bjP,zij=bjXi. Afterwards, A tries to compute SKij and Rj. Since A does not know vij and Xij* computed by the secret key {rj,cj} of Sj, A is unable to calculate SKij and cannot forge Rj. Thus, A cannot carry out the server impersonation attack.

8.7. Replay Attack

If A intercepts the login message {PIdi,Xi,hij} from Ui, and wants to replay this message to Sj. This replay attack is easily captured by inspecting the freshness of Xi in the presented scheme, where Xi=aiP, and ai is a random number. Similarly, replaying the challenging message and response message is detected by either Ui or Sj. Thereupon, it is inferred that the presented protocol is immune to replay attack.

8.8. Known Key Security

Suppose that A compromises the previous session key SKij=H(Idi||SIdj||vij||zij||Xij) between Ui and Sj. However, the next session key SKij will be computed by new random numbers ai and bj. That is, SKij=H(Idi||SIdj||vij||zij||Xij). To calculate the new session key, A has to compute ai,bj,aibjP,aiYj,bjXi from Xi,Yj. However, this is computationally infeasible for A because of ECDLP and ECCDHP. Therefore, the presented scheme offers known key security.

8.9. Mutual Authentication

In the proposed scheme, only the legitimate hij and Ri can be verified by Sj, and only the legitimate Rj can be verified as the user Ui. That is, the proposed scheme allows Sj and Uj to authenticate each other. Thus, the presented protocol ensures mutual authentication between a legitimate Ui and Sj.

8.10. Man-in-the-Middle Attack

It is impossible for A in the proposed scheme to compute the correct login request and challenge message. Therefore, A cannot be authenticated by the server. Moreover, A is unable to calculate the correct response message, and thus A cannot pass the user verification. It is therefore inferred that the proposed scheme is immune to man-in-the-middle attack.

8.11. Denial-of-Service Attack

If Ui wants the login authentication in the proposed scheme, it must input the correct Idi and Pwi to pass the verification of SC. If A inputs wrong Idi and Pwi into SC, A is unable to compute the correct login request message. Moreover, if Ui wants to update the password, it has to pass the verification of SC. An incorrect or previous password cannot pass the verification. Therefore, the proposed scheme ensures resistance against denial-of-service attack.

8.12. Perfect Forward Secrecy

Suppose that rj of Sj is compromised and A acquires ri, Idi, and Pwi. To calculate the correct SKij=H(Idi||SIdj||vij||zij||Xij), A is required to calculate zij,Xij. However, it is impossible for A to compute zij,Xij because of ECDLP and ECCDHP. Thus, A is not capable of figuring out SKij. Therefore, the presented protocol ensures perfect forward secrecy.

9. BAN-Logic  Proof

BAN is a logic of belief. The intended use of BAN is to analyze authentication protocols by deriving the beliefs that honest principals correctly executing a protocol can come to as a result of the protocol execution. For example, a user might come to believe that a session key they have negotiated with a server is a good key for a future session [51]. This section incorporates the BAN-Logic [52] to prove the session key agreement between user Ui and server Sj after the execution of the improved scheme. BAN-Logic notations and Basic BAN-Logic postulates are described in Table 2 and Table 3.

Table 2.

Burrows–Abadi–Needham logic (BAN-Logic) notations.

Symbol Description
A|X A has trust on X
AX A acquires/observes X
A|X A sends X X (or A once called)
A|X A regulates X
(X) X is fresh
AKB A and B utilize shared key K for communication
(X,Y)K use K as key to compute hash values of X and Y
<X>K X is exclusive or-ed with K

Table 3.

Basic BAN-Logic postulates

Rule Description
Messagemeaningrule A|AKB,A(X)KA|B|X
Nonceverificationrule A|(X),A|B|XA|B|X
Jurisdictionrule A|B|X,A|B|XA|X
Freshnessconjuncatenationrule A|(X)A|(X,Y)
Believerule A|B|(X,Y)A|B|X, A|X,A|YA|(X,Y)

9.1. Idealized Scheme

The ideal form of the presented protocol is derived as follows:

  • Message 1.

    UiSj: Xi, <Idi>UiH(Xij)Sj,(Idi,SIdj,Xij,Xi)UivijSj,(Xi,Yj,UiSKSj,Idi)UivijSj.

  • Message 2.

    SjUi: Yj, (PIdi,UiSKSj,Xi,Yj)UivijSj.

9.2. Security Objectives

We prove that the improved scheme can satisfy the following objective:

  • Objective 1.

    Ui|Sj|(UiSKSj).

  • Objective 2.

    Ui|(UiSKSj).

  • Objective 3.

    Sj|Ui|(USKSj).

  • Objective 4.

    Sj|(UiSKSj).

9.3. Initiative Premises

For the initial status of the proposed scheme, the following assumptions are made.

  • IP 1.

    Ui|(ai).

  • IP 2.

    Sj|(bj).

  • IP 3.

    Ui|(UiXijSj).

  • IP 4.

    Sj|(UiXijSj).

  • IP 5.

    Ui|(UivijSj).

  • IP 6.

    Sj|(UivijSj).

  • IP 7.

    Ui|Sj(UiSKSj).

  • IP 8.

    Sj|Ui(UiSKSj).

9.4. Proof Procedure

The main proof steps of the proposed scheme are presented below.

  • Step 1.
    From Message 2, it shows the following:
    Ui(PIdi,UiSKSj,Xi,Yj)UivijSj.
  • Step 2.
    From Step 1, IP 5, and the message-meaning rule, it illustrates the following:
    Ui|Sj|(PIdi,UiSKSj,Xi,Yj).
  • Step 3.
    From IP 1 and the freshness conjuncatenation rule, the following can be inferred:
    Ui|(PIdi,UiSKSj,Xi,Yj).
  • Step 4.
    From Steps 2 and 3, the freshness rule, and the nonce verification rule, we obtain the following:
    Ui|Sj|(PIdi,UiSKSj,Xi,Yj).
  • Step 5.
    From Step 4 and the believe rule, we deduce the first objective as follows:
    Ui|Sj|(UiSKSj)(Objective1).
  • Step 6.
    From Objective 1, IP 7, and the jurisdiction rule, we accomplish the second objective as follows:
    Ui|(UiSKSj)(Objective2).
  • Step 7.
    From Message 1, it indicates the following:
    Sj(Xi,Yj,UiSKSj,Idi)UivijSj.
  • Step 8.
    From Step 7, IP 6, and the message meaning rule, the following can be inferred:
    Sj|Ui|(Xi,Yj,UiSKSj,Idi).
  • Step 9.
    From IP 2 and the freshness conjuncatenation rule, the following can be obtained:
    Sj|(Xi,Yj,UiSKSj,Idi).
  • Step 10.
    From Steps 8 and 9, the freshness rule, and the nonce-verification rule, we determine the following:
    Sj|Ui|(Xi,Yj,UiSKSj,Idi).
  • Step 11.
    From Step 10 and the believe rule, the third objective can be achieved as follows:
    Sj|Ui|UiSKSj(Objective3).
  • Step 12.
    From Objective 3, IP 8, and the jurisdiction rule, the fourth objective is accomplished as follows:
    Sj|(UiSKSj)(Objective4).

By accomplishing Objectives 1–4, both Ui and Sj believe that the SK is settled between them. Therefore, the proposed scheme ensures mutual authentication along with key agreement.

10. Performance Comparison

This section analyzes the computational and security performance of the presented scheme while comparing it with multiple schemes, including those of Awasthi et al. [23], Huang et al. [25], Amin et al. [26], Pippal et al. [27], Li et al. [28], and Srinivas et al. [29]. The exclusive-OR operation and string concatenation are usually neglected when comparing the computational cost. However, the following operations are considered: Tme, the execution time of point multiplication operation; Te, the time for execution of modular exponentiation operation; Th, the running time of a hash operation; and Tmm, the running time for modular multiplication operation. More precisely, we compare the experimental results of the aforementioned operations as performed by [53,54], where Te, Tme, Th, and Tmm take 3.85 ms, 2.226 ms, 0.0023 ms, and 0.001855 ms, respectively (Table 4). Following [53,54], the aforementioned operations were executed on a computing platform having Intel Pentium Dual Core E2200 2.20 GHz processor, the Ubuntu 12.04.1 LTS 32-bits operating system, and 2048 MB of RAM.

Table 4.

The performing time of cryptographic operations (adapted from [53,54]).

Symbol Te Tme Th Tmm
Time 3.85 ms 2.226 ms 0.0023 ms 0.001855 ms

In Table 5, we compare the schemes of [23,25,26,27,28,29] with the presented protocol in terms of security. In Table 5, we observe that [23,25,26,27,28,29] cannot provide [C1C3,C5] features. The scheme in [26] is still unable to provide perfect forward secrecy [C12], although the authors used RSA-based public cryptography. The proposed scheme fulfills all known security features [C1C12]. Thus, the presented scheme surpasses [23,25,26,27,28,29] in terms of security.

Table 5.

Comparison of security features.

Schemes Awasthi et al. [23] Huang et al. [25] Amin et al. [26] Pippal et al. [27] Li et al. [28] Srinivas et al. [29] Proposed Scheme
Features
C1 No No No No No No Yes
C2 No No No No No No Yes
C3 No No No No No No Yes
C4 No No Yes No No Yes Yes
C5 No No No No No No Yes
C6 No Yes Yes No No Yes Yes
C7 Yes Yes Yes Yes Yes Yes Yes
C8 N/A N/A Yes Yes Yes Yes Yes
C9 Yes Yes Yes Yes Yes Yes Yes
C10 No Yes Yes No No Yes Yes
C11 No No Yes No No Yes Yes
C12 N/A N/A No Yes Yes Yes Yes

C1 provides user anonymity and un-traceability. C2 resists stolen smart-card attack. C3 resists offline password guessing attack. C4 resists privileged insider attack. C5 resists (key-compromised) user impersonation attack. C6 resists server-impersonation attack. C7 resists replay attack. C8 provides known key security. C9 provides mutual authentication. C10 resists man-in-the-middle attack. C11 resists denial-of-service attack. C12 provides perfect forward secrecy.

Table 6 presents the computational cost of the schemes [23,25,26,27,28,29] and the proposed scheme for login and authentication. The computational cost of the proposed protocol is comparatively lower than the schemes in [23,25,27,28,29], but slightly higher than the scheme in [26]. However, according to Table 5, the scheme in [26] cannot address [C1C3,C5,C12] security features. Thus, combining Table 5 and Table 6, we remark that the presented solution is more feasible for practical multi-server environments in terms of the trade-off between usability and security.

Table 6.

Comparison of computational complexity.

Cost User Computation Server Computation Total
Schemes
Awasthi et al. [23] 3Te+3Tmm+2Th 3Te+Tmm+3Th 6Te+4Tmm+5Th23.1189 ms
Huang et al. [25] 2Te+2Th 3Te+3Th 5Te+5Th19.2615 ms
Amin et al. [26] Te+6Th Te+4Th 2Te+10Th7.723 ms
Pippal et al. [27] 3Te+Tmm+4Th 4Te+Tmm+3Th 7Te+2Tmm+7Th26.9698 ms
Li et al. [28] Te+5Th 3Te+8Th 4Te+13Th15.4299 ms
Srinivas et al. [29] 2Te+8Th 2Te+4Th 4Te+12Th15.676 ms
Proposed scheme 3Tme+9Th 3Tme+6Th 6Tme+15Th13.3905 ms

11. Conclusions

This paper first analyzes Amin et al.’s [26] scheme and proves that the considered scheme cannot provide perfect forward secrecy and user un-traceability, and is susceptible to offline password guessing attack and key-compromise user impersonation attack. Second, we review Srinivas et al.’s [29] multi-server authentication scheme while proving that it cannot resist offline password guessing attack and key-compromise user impersonation attack, and is unable to ensure user un-traceability. Afterwards, to address the limitations of prevalent works, we put forward an enhanced multi-server two-factor authentication scheme. Heuristic analysis and BAN-Logic proof ensure that the presented scheme includes various known security features. The security and efficiency analyses display the robustness and efficiency of the presented scheme. Overall, the presented scheme is proven to be more feasible for multi-server authentication-and-key-agreement scenarios in various low-power networks. Moreover, the design and analysis methods in this paper can also be used for authentication protocols in IoT, WSNs, etc.

Acknowledgments

The authors are thankful to the Editor and anonymous reviewers for the generous feedback and constructive comments.

Author Contributions

Writing—original draft, G.X. (Guosheng Xu), S.Q., H.A., G.X. (Guoai Xu), Y.G., M.Z. and H.X.; and Writing—review and editing, G.X. (Guosheng Xu), S.Q., H.A. and G.X. (Guoai Xu).

Funding

This work was funded by the National Key Research and Development Program of China (No. 2018YFB0803600 and No. 2017YFB0801901) to Guoai Xu, and BUPT Excellent Ph.D. Students Foundation (No. CX2018312) to Shuming Qiu.

Conflicts of Interest

There are no conflicts of interest regarding the publication of this paper.

References

  • 1.Lamport L. Password authentication with insecure communication. Commun. ACM. 1981;24:770–772. doi: 10.1145/358790.358797. [DOI] [Google Scholar]
  • 2.Franks J., Hallam-Baker P., Hostetler J., Lawrence S., Leach P., Luotonen A. HTTP Authentication: Basic and Digest Access Authentication. IETF RFC. 1999;2617:1–34. [Google Scholar]
  • 3.Yang C., Wang R., Liu W. Secure authentication scheme for session initiation protocol. Comput. Secur. 2005;24:381–386. doi: 10.1016/j.cose.2004.10.007. [DOI] [Google Scholar]
  • 4.Khan M.K. Fingerprint Biometric-based Self-Authentication and Deniable Authentication Schemes for the Electronic World. IETE Tech. Rev. 2009;26:191–195. doi: 10.4103/0256-4602.50703. [DOI] [Google Scholar]
  • 5.Farash M.S., Chaudhry S.A., Heydari M., Sadough S.M.S., Kumari S., Khan M.K. A lightweight anonymous authentication scheme for consumer roaming in ubiquitous networks with provable security. Int. J. Commun. Syst. 2017;30:e3019. doi: 10.1002/dac.3019. [DOI] [Google Scholar]
  • 6.Arkko J., Torvinen V., Camarillo G., Niemi A., Haukka T. Security Mechanism Agreement for SIP Sessions. IETF Internet Draft; Fremont, CA, USA: 2002. [Google Scholar]
  • 7.Arshad R., Ikram N. Elliptic curve cryptography based mutual authentication scheme for session initiation protocol. Multimed. Tools Appl. 2013;66:165–178. doi: 10.1007/s11042-011-0787-0. [DOI] [Google Scholar]
  • 8.Chaudhry S.A., Khan I., Irshad A., Ashraf M.U., Khan M.K., Ahmad H.F. A provably secure anonymous authentication scheme for session initiation protocol. Secur. Commun. Netw. 2016 doi: 10.1002/sec.1672. [DOI] [Google Scholar]
  • 9.Chaudhry S.A., Naqvi H., Shon T., Sher M., Farash M.S. Cryptanalysis and Improvement of an Improved Two Factor Authentication Protocol for Telecare Medical Information Systems. J. Med. Syst. 2015;39:66. doi: 10.1007/s10916-015-0244-0. [DOI] [PubMed] [Google Scholar]
  • 10.Farash M.S., Attari M.A. An Enhanced authenticated key agreement for session initiation protocol. Inf. Technol. Control. 2013;42:333–342. doi: 10.5755/j01.itc.42.4.2496. [DOI] [Google Scholar]
  • 11.He D. An efficient remote user authentication and key agreement protocol for mobile client-server environment from pairings. Ad Hoc Netw. 2012;10:1009–1016. doi: 10.1016/j.adhoc.2012.01.002. [DOI] [Google Scholar]
  • 12.He D., Chen J., Chen Y. A secure mutual authentication scheme for session initiation protocol using elliptic curve cryptography. Secur. Commun. Netw. 2012;5:1423–1429. doi: 10.1002/sec.506. [DOI] [Google Scholar]
  • 13.Islam S., Khan M. Cryptanalysis and improvement of authentication and key agreement protocols for telecare medicine information systems. J. Med. Syst. 2014;38 doi: 10.1007/s10916-014-0135-9. [DOI] [PubMed] [Google Scholar]
  • 14.Kumari S., Karuppiah M., Das A.K., Li X., Wu F., Gupta V. Design of a secure anonymity-preserving authentication scheme for session initiation protocol using elliptic curve cryptography. J. Ambient Intell. Hum. Comput. 2017 doi: 10.1007/s12652-017-0460-1. [DOI] [Google Scholar]
  • 15.Qiu S., Xu G., Ahmad H., Wang L. A Robust Mutual Authentication Scheme Based on Elliptic Curve Cryptography for Telecare Medical Information Systems. IEEE Access. 2018;6:7452–7463. doi: 10.1109/ACCESS.2017.2780124. [DOI] [Google Scholar]
  • 16.Shen C., Nahum E., Schulzrinne H., Wright C.P. The impact of TLS on SIP server performance: Measurement and modeling. IEEE/ACM Trans. Netw. 2012;20:1217–1230. doi: 10.1109/TNET.2011.2180922. [DOI] [Google Scholar]
  • 17.Thomas M. SIP Security Requirements. IETF Internet Draft; Fremont, CA, USA: 2001. Work In Progress. [Google Scholar]
  • 18.Wang D., He D., Wang P., Chu C. Anonymous two-factor authentication in distributed systems: Certain goals are beyond attainment. IEEE Trans. Depend. Secur. Comput. 2015;12:428–442. doi: 10.1109/TDSC.2014.2355850. [DOI] [Google Scholar]
  • 19.Xie Q. A new authenticated key agreement for session initiation protocol. Int. J. Commun. Syst. 2012;25:47–54. doi: 10.1002/dac.1286. [DOI] [Google Scholar]
  • 20.Zhang Z., Qi Q., Kumar N., Chilamkurti N., Jeong H.J. A secure authentication scheme with anonymity for session initiation protocol using elliptic curve cryptography. Multimed. Tools Appl. 2015;74:3477–3488. doi: 10.1007/s11042-014-1885-6. [DOI] [Google Scholar]
  • 21.Qiu S., Xu G., Ahmad H., Guo Y. An enhanced password authentication scheme for session initiation protocol with perfect-forward-secrecy. PLoS ONE. 2018;13:e0194072. doi: 10.1371/journal.pone.0194072. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 22.Qiu S., Xu G., Guo Y., Zhang M. Cryptanalysis and improvement of 2 mutual authentication schemes for Session Initiation Protocol. Int. J. Commun. Syst. 2018;31:e3568. doi: 10.1002/dac.3568. [DOI] [Google Scholar]
  • 23.Awasthi A.K., Srivastava K., Mittal R.C. An improved timestamp-based remote user authentication scheme. Comput. Electr. Eng. 2011;37:869–874. doi: 10.1016/j.compeleceng.2011.09.015. [DOI] [Google Scholar]
  • 24.Jau-Ji S., Lin C.-W., Hwang M.-S. Security enhancement for the timestamp-based password authentication scheme using smart cards. Comput. Secur. 2003;22:591–595. [Google Scholar]
  • 25.Huang H.-F., Chang H.-W., Yu P.-K. Enhancement of Timestamp-based User Authentication Scheme with Smart Card. Int. J. Netw. Secur. 2014;16:463–467. [Google Scholar]
  • 26.Amin R., Maitra T., Giri D., Srivastava P.D. Cryptanalysis and Improvement of an RSA Based Remote User Authentication Scheme Using Smart Card. Wirel. Pers. Commun. 2017;96:4629–4659. doi: 10.1007/s11277-017-4408-8. [DOI] [Google Scholar]
  • 27.Pippal R.S., Jaidhar C.D., Tapaswi S. Robust Smart Card Authentication Scheme for Multi-server Architecture. Wirel. Pers. Commun. 2013;72:729–745. doi: 10.1007/s11277-013-1039-6. [DOI] [Google Scholar]
  • 28.Li X., Niu J., Kumari S., Liao J., Liang W. An Enhancement of a Smart Card Authentication Scheme for Multi-server Architecture. Wirel. Pers. Commun. 2015;80:175–192. doi: 10.1007/s11277-014-2002-x. [DOI] [Google Scholar]
  • 29.Srinivas J., Mukhopadhyay S., Mishra D. A Self-Verifiable Password Based Authentication Scheme for Multi-Server Architecture Using Smart Card. Wirel. Pers. Commun. 2017;96:6273–6297. doi: 10.1007/s11277-017-4476-9. [DOI] [Google Scholar]
  • 30.He D., Kumar N., Chilamkurti N. A secure temporal-credential-based mutual authentication and key agreement scheme with pseudo identity for wireless sensor networks. Inf. Sci. Int. J. 2015;321:263–277. doi: 10.1016/j.ins.2015.02.010. [DOI] [Google Scholar]
  • 31.Chang I., Lee T., Lin T., Liu C. Enhanced two-factor authentication and key agreement using dynamic identities in wireless sensor networks. Sensors. 2015;15:29841–29854. doi: 10.3390/s151229767. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 32.Hsiu-Lien Y., Chen T.H., Liu P.C., Tai-Hoo K., Wei H.W. A secured authentication protocol for wireless sensor networks using elliptic curves cryptography. Sensors. 2011;11:4767–4779. doi: 10.3390/s110504767. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 33.Choi Y., Lee D., Kim J., Nam J., Won D. Security enhanced user authentication protocol for wireless sensor networks using elliptic curves cryptography. Sensors. 2014;14:10081–10106. doi: 10.3390/s140610081. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 34.Shi W., Gong P. A new user authentication protocol for wireless sensor networks using elliptic curves cryptography. Int. J. Distrib. Sens. Netw. 2013;2013:51–59. doi: 10.1155/2013/730831. [DOI] [Google Scholar]
  • 35.Jiang Q., Ma J., Lu X., Tian Y. An efficient two-factor user authentication scheme with unlinkability for wireless sensor networks. Peer-to-Peer Netw. Appl. 2015;8:1070–1081. doi: 10.1007/s12083-014-0285-z. [DOI] [Google Scholar]
  • 36.Jung J., Moon J., Lee D., Won D. Efficient and security enhanced anonymous authentication with key agreement scheme in wireless sensor networks. Sensors. 2017;17:644. doi: 10.3390/s17030644. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 37.Park Y., Park Y. Three-factor user authentication and key agreement using elliptic curve cryptosystem in wireless sensor networks. Sensors. 2016;16:2123. doi: 10.3390/s16122123. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 38.Wang D., Li W., Wang P. Measuring Two-Factor Authentication Schemes for Real-Time Data Access in Industrial Wireless Sensor Networks. IEEE Trans. Ind. Inform. 2018 doi: 10.1109/TII.2018.2834351. [DOI] [Google Scholar]
  • 39.Wang D., Wang P. On the Anonymity of Two-Factor Authentication Schemes for Wireless Sensor Networks: Attacks, Principle and Solutions. Comput. Netw. 2014;73:41–57. doi: 10.1016/j.comnet.2014.07.010. [DOI] [Google Scholar]
  • 40.Wang D., Wang P. Understanding security failures of two-factor authentication schemes for real-time applications in hierarchical wireless sensor networks. Ad Hoc Netw. 2014;20:1–15. doi: 10.1016/j.adhoc.2014.03.003. [DOI] [Google Scholar]
  • 41.Menezes A.J. Elliptic Curve Public Key Cryptosystems. Kluwer Academic Publishers; Boston, MA, USA: 1993. [Google Scholar]
  • 42.Wang D., Wang P. Two birds with one stone: Two-factor authentication with security beyond conventional bound. IEEE Trans. Depend. Secur. Comput. 2016 doi: 10.1109/TDSC.2016.2605087. [DOI] [Google Scholar]
  • 43.Kocher P., Jaffe J., Jun B. Differential power analysis. Adv. Cryptol. 1999;1666:388–397. [Google Scholar]
  • 44.Eisenbarth T., Kasper T., Moradi A., Paar C., Salmasizadeh M., Shalmani M.T. Advances in Cryptology-CRYPTO. Volume 5157. Springer; Berlin, Germany: 2008. On the power of power analysis in the. real world: A complete break of the KeeLoq code hopping scheme; pp. 203–220. Lecture Notes in Computer Science. [Google Scholar]
  • 45.Messerges T.S., Dabbish E.A., Sloan R.H. Examining smart-card security under the threat of power analysis attacks. IEEE Trans. Comput. 2002;51:541–552. doi: 10.1109/TC.2002.1004593. [DOI] [Google Scholar]
  • 46.Castiglione A., De Santis A., Castiglione A., Palmieri F. An Efficient and Transparent One-Time Authentication Protocol with Non-interactive Key Scheduling and Update. AINA. 2014:351–358. doi: 10.1109/AINA.2014.45. [DOI] [Google Scholar]
  • 47.Wang D., Wang N., Wang P., Qing S. Preserving privacy for free: Efficient and provably secure two-factor authentication scheme with user anonymity. Inf. Sci. 2015;321:162–178. doi: 10.1016/j.ins.2015.03.070. [DOI] [Google Scholar]
  • 48.Wang D., Zhang Z., Wang P. Targeted online password guessing: An underestimated threat. Proc. ACM CCS. 2016;16:1242–1254. [Google Scholar]
  • 49.Wang D., Wang P. On the implications of Zipf’s law in passwords; Proceedings of the 21st European Symposium on Research in Computer Security; Heraklion, Greece. 26–30 September 2016; pp. 11–131. [Google Scholar]
  • 50.Wang D., Cheng H., Wang P., Huang X., Jian G. Zipf’s Law in Passwords. IEEE Trans. Inform. Forensics Secur. 2017;12:2776–2791. doi: 10.1109/TIFS.2017.2721359. [DOI] [Google Scholar]
  • 51.Syverson P.F., Cervesato I. The Logic of Authentication Protocols. FOSAD; Bertinoro, Italy: 2000. pp. 63–136. [Google Scholar]
  • 52.Burrow M., Abadi M., Needham R.M. A logic of authentication. ACM Trans. Comput. Syst. 1990;8:18–36. doi: 10.1145/77648.77649. [DOI] [Google Scholar]
  • 53.Arshad H., Nikooghadam M. An efficient and secure authentication and key agreement scheme for session initiation protocol using ECC. Multimed. Tools Appl. 2014;75:1–17. doi: 10.1007/s11042-014-2282-x. [DOI] [Google Scholar]
  • 54.Kilinc H., Yanik T. A survey of SIP authentication and key agreement schemes. IEEE Commun. Surv. Tutor. 2013 doi: 10.1109/SURV.2013.091513.00050. [DOI] [Google Scholar]

Articles from Sensors (Basel, Switzerland) are provided here courtesy of Multidisciplinary Digital Publishing Institute (MDPI)

RESOURCES