Next Article in Journal
A Flexible Capacitive Pressure Sensor Based on Ionic Liquid
Previous Article in Journal
Cooperative Dynamic Game-Based Optimal Power Control in Wireless Sensor Network Powered by RF Energy
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

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

1
School of CyberSpace Security, Beijing University of Posts and Telecommunications, Beijing 100876, China
2
Elementary Educational College, Jiangxi Normal University, Nanchang 330022, China
3
Department of Computer Science, National Textile University, Faisalabad 37610, Pakistan
4
High-Tech Research and Development Center, the Ministry of Science and Technology, Beijing 100044, China
*
Author to whom correspondence should be addressed.
Sensors 2018, 18(7), 2394; https://doi.org/10.3390/s18072394
Submission received: 2 July 2018 / Revised: 18 July 2018 / Accepted: 20 July 2018 / Published: 23 July 2018
(This article belongs to the Section Internet of Things)

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.

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.

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.

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:
  • Given y { 0 , 1 } n , it is difficult to determine the input x { 0 , 1 } * within polynomial time.
  • It is difficult to determine x { 0 , 1 } * such that H ( x ) = H ( x ) , where x x .
  • It is difficult to uncover a pair ( x , x ) { 0 , 1 } * , such that x x and H ( x ) = H ( x ) could hold.

2.2. Intractable Problems in ECC

The elliptic curve equation over a finite field F p in ECC takes the form E p ( a , b ) : y 2 = x 3 + a x + b ( mod p ) , where 4 a 3 + 27 b 0 ( mod p ) and a , b F p [41].
  • ECDLP: The elliptic curve discrete-logarithm problem over elliptic curve E p ( a , b ) refers to computing m F p * from Q = m P for given P , Q E p ( a , b ) .
  • ECCDHP: The elliptic curve computational Diffie–Hellman problem over elliptic curve E p ( a , b ) refers to computing m n P , given points m P , n P E p ( 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:
  • A is able to intercept, block, delete, modify, and resend the message contents through an open channel.
  • Because identity and password have low entropy, A can enlist all pairs of ( P w i , I d i ) simultaneously from ( D P w , D I d ) within polynomial time, where D P w and D I d refer to the space of passwords and identities in D P w and D I d , respectively.
  • A can either acquire P w i of the U i via malicious device or reveal the information from S C , but is not permitted to use both methods together.
  • A can acquire a server’s private key while evaluating forward secrecy or key-compromise user impersonation attack.
  • 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 × d 1 mod ( p 1 ) ( q 1 ) , such that 1 < e < ( p 1 ) ( q 1 ) .

3.2. Registration

  • U i enters an identity I d i and password P w i . Subsequently, U i randomly picks up a number r and calculates P W r i = H ( P w i | | u ) . Afterwards, U i transmits the registration request message { I d i , P W r i } to S via secure medium.
  • Upon receiving the request message { I d i , P W r i } from the new user U i , S calculates C I d i = H ( I d i | | d ) , R e g i = H ( C I d i | | P W r i | | I d i ) , and Y i = C I d i H ( P W r i | | I d i ) . Afterwards, S stores the contents { R e g i , Y i , n , e , H ( · ) } in a new card S C and sends S C to U i .
  • Once obtaining S C , U i stores u into S C .

3.3. Login and Authentication

  • To start the session with the S, U i inserts S C into a card reader and inputs their login details, including I d i and P w i . Subsequently, S C calculates P W r i = H ( P w i | | r ) , C I d i = Y i H ( P W r i | | I d i ) , and R e g i = H ( D I d i | | P W r i | | I d i ) . Afterwards, it verifies the value of R e g i . In case of invalid values, the session is ended. Otherwise, S C randomly chooses a number N 1 , the current time stamp T u , and calculates D i = H ( C I d i | | H ( P W r i | | I d i ) | | T u | | N 1 ) and L i = ( I d i | | D i | | N 1 ) e mod n . Next, S C transmits the login request message { L i , Y i , T u } to S.
  • Upon receiving the login request from U i , S verifies the time stamp T u corresponding to the current time stamp T s . In the case of valid time stamp T u , it continues to execute the following steps. Otherwise, it aborts the session. Afterwards, S decrypts L i to obtain ( I d i * | | D i * | | N i * ) and then checks whether C I d i * = H ( I d i * | | d ) , H ( P W r i | | I d i ) * = Y i C I d i * and D i * * = H ( C I d i * | | H ( P W r i | | I d i ) * | | T u | | N 1 * ) . Afterwards, S checks D i * * = ? D i * . After finishing this verification, S randomly selects a number and computes X i = H ( N 2 | | C I d i ) , Z i = N i N 2 . Finally, S transmits the respond message { X i , Z i , T s } to S C via public channel.
  • Once receiving the response message from S, S C checks the validity of T s . After finishing the verification, S C checks whether N 2 * = N 1 Z i , X i * = H ( N 2 * | | C I d i ) and verifies X i * = ? X i . If it holds, U i accepts the response message. Finally, S and U i calculate the session key: S K = H ( N 1 | | C I d i | | N 2 * ) = H ( N i * | | C I d i * | | N 2 ) .

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 Y i is transmitted during the login request message stage. However, Y i = C I D i h ( P W r i | | I D i ) is a fixed value in S C , unless U i changes their password during the password updation stage. Usually, the user does not change their password after every session. Therefore, U i can be traced by the adversary using Y i . 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 S C of U i and embeds the data { R e g i , Y i , r } in it, then the adversary A can perform the following steps to obtain I d i and P w i of U i .
  • From the password dictionary space D P W , the adversary A randomly chooses the password P W * , and picks up the identity I D * from the identity dictionary space D I D .
  • A calculates P W r i * = h ( P w * | | r ) .
  • A calculates C I D i * = Y i h ( P W r i * | | I D i * ) .
  • A calculates R e g i * = h ( C I D i * | | P W r i * | | I D i * ) .
  • To check the correctness of P w * and I d * , A examines whether R e g i * = R e g i , where R e g i belongs to S C of U i .
  • 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 U i .
From the aforementioned procedure, we find that the computational time complexity of offline password guessing attack is O ( | D P W | | D I D | 3 T h ) , where | D P w | , | D I d | , and T h refer to the number of D P w , the number of D I d , and the performing time of hash function h ( · ) , respectively. According to [48,49,50], usually, | D I d | < | D P w | < 10 6 . 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 R e g i are stored in U i ’s smart card, which is the main reason for the success of the above attack. By computing R e g i , 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 { L i , Y i , T u } , { X i , Z i , T s } . Having that information, A can easily calculate two key random numbers { N 1 , N 2 } . A undergoes the following procedure to compute S K between U i and S.
  • The adversary A computes ( L i ) d mod n = ( I D i | | D i | | N 1 ) to obtain { I D i , N 1 } .
  • A computes C I D i = h ( I D i | | d ) .
  • A computes N 2 = Z i N 1 .
  • A computes S K = h ( N 1 | | C I D i | | N 2 ) .
The computational time overhead of the aforementioned attack is O ( 2 T h + T e + T e o r ) , where T e and T e o r 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 U i to S as follows:
  • A computes ( L i ) d mod n = ( I d i | | D i | | N 1 ) , and subsequently calculates C I d i = H ( I d i | | d ) and A = H ( P W r i | | I d i ) = Y i C I d i .
  • A obtains the login request message { L i , Y i , T u } of U i , randomly selects a number N a , and computes D i = H ( C I d i | | A | | T u | | N a ) , L i = ( I d i | | D i | | N a ) e mod n . Afterwards, A transmits the forged request message { L i , Y i , T u } to S.
  • Upon receiving the forged message, obviously S can verify it successfully. Thus, S randomly provokes a number N 2 , and computes X i = H ( N 2 | | C I d i ) and Z i = N a N 2 . Finally, S sends { X i , Z i , T s } to A .
  • Upon receiving the response from S, A calculates N 2 = N a Z i . Finally, the server S believes that S K = H ( N a | | C I d i | | N 2 ) is the common session key between a legitimate user and itself. However, in actual terms, A acts as U i .
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 R C during this stage selects a 1024-bit large prime p, generates g Z p * , chooses a one-way hash function H ( · ) : { 0 , 1 } * Z p * , and randomly picks a number m k as the master secret key.

5.2. Registration Process

5.2.1. Server Registration

S j ( 1 j k ) chooses a unique identity S I d j and sends S I d j to R C through a secure-medium. Upon receiving S I d j , R C calculates r j = H ( S I d j | | m k ) , and sends { r j , p , g , H ( · ) } to S j through a secure medium.

5.2.2. User Registration

First, a new user U i selects I d i , P w i , and randomly chooses a number r i . Subsequently, the user calculates U I d i = H ( I d i | | r i ) , R P w i = H ( P w i | | r i ) and sends { U I d i , R P w i } to R C . Upon receiving the registration request, R C calculates v i j = H ( r j | | U I d i ) , s i j = v i j R P w i . Afterwards, R C sends U i a new smart card S C i containing { s i 1 , s i 2 , , s i k , p , g , H ( ) } through a secure medium. Finally, upon receiving S C i from R C , U i inputs B i = r i H ( I d i | | P w i ) to S C i .

5.3. Login and Authentication

  • U i inserts S C i into a card reader and inputs I d i and P w i . S C i checks r i = B i H ( I d i | | P w i ) , U I d i = H ( I d i | | n ) and R P w i = H ( P w i | | r i ) . Afterwards, S C i randomly generates a number a, chooses the current time stamp T i , and calculates X i = g a mod p , v i j = s i j H ( U I d i | | R P w i ) and h i j = H ( v i j | | U I d i | | S I d j | | T i | | X i ) . Subsequently, S C i transmits the login request message { U I d i , X i , h i j , T i } to S j .
  • S j receives the request message from U i , figures out h i j * = H ( H ( r j | | U I d i ) | | U I d i | | S I d j | | X i | | T i ) , and checks h i j * = ? h i j . S j terminates the login request if the expression does not hold. Apart from that, S j a random number b and calculates Y j = g b mod p , z j i = ( X i ) b mod p . Afterwards, S j picks the current time stamp T j and computes S K j i = H ( U I d i | | S I d j | | T i | | h i j * | | T j | | z j i ) and R j = H ( U I d i | | T i | | H ( r j | | U I d i ) | | T j | | S K j i | | Y j ) . Finally, S j sends the response message { Y j , R j , T j } to S C i .
  • On receiving the response message, S C i figures out z i j = ( Y j ) a mod p , S K i j = H ( U I d i | | S I d j | | T i | | h i j | | T j | | z j i ) , and R j * = H ( U I d i | | T i | | v i j | | T j | | S K i j | | Y j ) . Subsequently, S C i checks R j * = ? R j and terminates this login request if the expression does not hold. Otherwise, S C i calculates R i = H ( U I d i | | X i | | Y j | | S K i j | | v i j ) and transmits it to S j through a public channel.
  • Upon acquiring R i , S j computes R i * = H ( U I d i | | X i | | Y j | | S K j i | | H ( r j | | U I d i ) ) and checks R i * = ? R i . After successful accomplishment of all steps, S j and U i believe that they have the common session key S K i j = S K j i .

5.4. Password Updation Stage

After the authentication session between S C i and targeted server S j , U i inputs I d i , P w i , and a new password P w n e w . Subsequently, S C i calculates B i n e w = r i H ( I d i | | P w i n e w ) and s i j n e w = s i j H ( U I d i | | H ( P w i | | r i ) ) H ( U I d i | | H ( P w i n e w | | r i ) ) , where 1 j k . Afterwards, S C i replaces { s i 1 , s i 2 , , s i k , B i } with { s i 1 n e w , s i 2 n e w , , s i k n e w , B i n e w } .

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 { s i 1 , s i 2 , , s i k , B i , p , g , H ( · ) } of S C i by side-channel attack. Now, A can execute the following steps to get the correct identity I D i and password P W i of user U i in polynomial time.
  • From the password dictionary space D P W , the adversary A chooses the password P W * , and picks up the identity I d * from the identity dictionary space D I d .
  • A computes n * = B i H ( I d i | | P w i ) .
  • A computes R P w i = H ( P w i | | n * ) .
  • A computes v i j * = s i j H ( U I d i | | R P w i ) .
  • A computes h i j * = H ( v i j * | | U I d i | | S I d j | | X i | | T i ) .
  • A verifies whether h i j * = h i j , where h i j is acquired from smart card of U i .
  • If it holds, then P w * and I d * is the correct identity and password pair. Otherwise, A repeats Steps 1–6 until it obtains the correct identity and password of U i .
We determine the computational time complexity of the aforementioned attack algorithm. That is,
O ( | D P w | | D I d | 4 T h ) ,
where | D P w | , | D I d | , and T h are the number of D P w , the number of D I d , and the time to compute hash function h ( · ) , respectively. According to [48,49,50], usually, | D I d | < | D P w | < 10 6 . 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 U I d i transmitted within the login request message. Since U I d i = H ( I d i | | r i ) is a fixed value, where I d i and r i are invariable, unless the user U i changes their password during the password updation stage, any adversary can trace the user U i by using U I d i . Therefore, Srinivas et al.’s protocol cannot provide user un-traceability.

6.3. Key-Compromise User Impersonation Attack

If the long-term private key r j of S j is revealed to A in Srinivas et al.’s protocol, then A can adopt the following actions to impersonate the legitimate U i to S j .
  • A intercepts the login request message { U I d i , X i , h i j , T i } of U i , and calculates v i j = H ( r j | | U I d i ) .
  • A randomly selects a number a to compute X i = g a mod p , h i j = H ( v i j | | U I d i | | S I d j | | X i | | T i ) . Afterwards, A sends the forged login request message { U I d i , X i , h i j , T i } to S j .
  • Obviously, the forged message can pass the verification of S j . Thus, S j randomly chooses a number b to compute Y j = g b mod p , z j i = ( X i ) b mod p . Subsequently, S j chooses the current time stamp T j to compute S K j i = H ( U I d i | | S I d j | | T i | | h i j | | T j | | z j i ) and R j = H ( U I d i | | T i | | H ( r j | | U I d i ) | | T j | | S K j i | | Y j ) . Finally, S j sends the response message { Y j , R j , T j } to A .
  • On receiving the response message, A figures out z i j = ( Y j ) a mod p , S K i j = H ( U I d i | | S I d j | | T i | | h i j | | T j | | z i j ) . Subsequently, A calculates R i = H ( U I d i | | X i | | Y j | | S K i j | | v i j ) and transmits it to S j through a public channel.
  • S j receives R i , computes R i = H ( U I d i | | X i | | Y j | | S K j i | | H ( r j | | U I d i ) ) , and checks whether R i = ? R i . After finishing all steps successfully, S j believes that it holds the common session key S K i j = S K j i with U i . Actually, however, A plays as U i . Thus, A successfully impersonated U i to S j 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.

7.1. Initialization

R C chooses an elliptic curve E p ( a , b ) from F p , where p is a 160-bit-long prime number. Afterwards, R C selects a fixed point P E p ( a , b ) , and one-way hash function H ( ) : { 0 , 1 } * Z p * , and randomly picks a number as m k .

7.2. Server Registration

  • S j chooses an identity S I d j and transmits it to R C via a secure-medium.
  • R C receives the registration message, randomly generates a number s j Z p * , and computes r j = H ( S I d j | | m k | | s j ) , Q j = r j P . Subsequently, R C randomly generates a number c j for S j . Finally, R C sends { r j , Q j , c j , P , H ( · ) } to S j through secure-medium.
  • S j stores { r j , Q j , c j , P , H ( · ) } in its database.

7.3. User Registration

After the successful registration of U i with R C , U i can communicate with any server S j ( 1 j k ) .
  • U i selects I d i , P w i , and randomly generates a number r i Z p * to compute R P w i = H ( I d i | | P w i | | r i ) . Afterwards, U i transmits the registration request message { I d i , R P w i } to R C through a secure medium.
  • Upon receiving the registration message, R C randomly generates numbers r s Z p * , 2 4 n 0 2 8 , and computes the following: A i = H ( ( H ( I d i ) R P w i ) mod n 0 ) , v i j = H ( r j | | I d i | | c j ) , s i j = v i j H ( I d i | | R P w i ) , where ( 1 j k ) . Afterwards, R C inserts { A i , s i j ( 1 j k ) , n 0 , Q j , P , H ( · ) } into a new S C i . and sends it to U i through secure-medium.
  • U i stores r i in S C i .

7.4. Login and Mutual Authentication

U i initiates the login and authentication request for sending to S j by performing the following steps.
  • U i inserts S C i into a card reader and inputs I d i , P w i . S C i computes R P w i = H ( I d i | | P w i | | r i ) , and subsequently calculates A i * = H ( ( H ( I d i ) R P w i ) mod n 0 ) . Afterwards, S C i inspects the correctness of A i * while comparing it with the value of A i sorted in S C i . If A i * = A i , I d i and P w i are validated. Otherwise, the session is expired. S C i continues to compute v i j = s i j H ( I d i | | R P w i ) and randomly selects a number a i Z p * to calculate the following: X i = a i P , X i j = a i Q j , P I d i = H ( X i j ) I d i , h i = h ( v i j | | I d i | | S I d j | | X i j | | X i ) . Finally, U i transmits the request { P I d i , X i , h i j } to S j via an open channel.
  • After receiving { P I d i , X i , h i j } , S j calculates X i j * = r j X i , I d i * = P I d i H ( X i j * ) and v i j * = H ( r j | | I d i * | | c j ) . Afterwards, S j computes h i * = h ( v i j * | | I d i * | | S I d j | | X i j * | | X i ) . Then, S j verifies h i * = ? h i . In the case of invalidation, S j terminates the session and sets the counter N = 1 . S j keeps suspending the card until U i registers again if N surpasses some threshold mark (e.g., 8). Otherwise, S j randomly selects a number b j to compute Y j = b j P , z i j = b i X i , S K i j = H ( I d i | | S I d j | | v i j | | z i j | | X i j * ) , and R j = H ( P I d i | | v i j | | S K i j | | X i | | Y j ) . Finally, S j sends the response message { Y j , R j } to U i via open channel.
  • Upon receiving the respond message { Y j , R j } , U i computes z i j * = a i Y i , S K i j * = H ( I d i | | S I d j | | v i j | | z i j * | | X i j ) , and R j * = H ( P I d i | | v i j | | S K i j * | | X i | | Y j ) . Subsequently, U i checks whether R j * = ? R j . The session is aborted if these are not equal, . Otherwise, S j is authenticated by U i and U i accepts S K i j * . Afterwards, U i computes R i = H ( v i j | | X i | | Y j | | S K i j * | | I d i ) . Finally, U i transmits the challenge message R i to S j through an open channel.
  • Upon receiving the challenge message from U i , S j computes R i * = H ( v i j | | X i | | Y j | | S K i j * | | I d i ) and verifies whether R i * = ? R i . If these are equal, then U i is authenticated successfully.
Finally, both U i and S j share the common session key S K = S K i j * = S K i j .

7.5. Password Updation

U i is able to change their password whenever they want, for which U i and S C i have to undergo the following procedure:
  • U i inserts the S C i into a card reader and inputs I d i , current password P w i , and password to be updated P w i * .
  • S C i computes R P w i = H ( I d i | | P w i | | r i ) , and A i = H ( ( H ( I d i ) R P w i ) mod n 0 ) . Afterwards, S C i checks whether A i = ? A i . In case of inequality, S C i refuses U i to update the password.
  • Apart from that, S C i randomly selects a number r i * to compute R P w i * = H ( I d i | | P w i * | | r i * ) , s i j * = s i j H ( I d i | | R P w i * ) H ( I d i | | R P w i * ) . Subsequently, S C i computes A i * = H ( ( H ( I d i ) R P w i * ) mod n 0 ) . Finally, S C i replaces r i , A i , s i j with r i * , A i * , s i j * , 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 c j 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, P I d i .

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, I d i is not sent through the public channel. Even if A intercepts the login request messages { P I D i , X i , h i j } from the public channel, A still cannot extract I d i from P I d i , because P I d i is protected by H ( X i j ) 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 S C i of U i , then A can extract the parameters { A i , r i , s i j ( 1 j k ) , n 0 , Q j , P , H ( · ) } stored in S C i 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 S C i and extracts { A i , r i , s i j ( 1 j k ) , n 0 , Q j , P , H ( · ) } stored in it. A intercepts all messages { P I d i , X i , h i j } , { Y j , R j } , { R i } over a public channel. If A guesses an ID I d i and a password P w i , A can calculate R P w i = H ( I d i | | P w i | | r i ) , and then figures out A i = H ( ( H ( I d i ) R P w i ) mod n 0 ) . Afterwards, A examines whether A i = ? A i . According to [42], A can obtain the reduced password guessing space of size | D | n 0 , where D is the space of passwords. Further, A can guess the correct password only by online password guessing. However, S j prevents this guessing by using a login request threshold value (e.g., 8). Once the number of online guesses exceeds the threshold value, S j will terminate communication and suspend S C i until U i 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 { I d i , R P w i } during user registration, A is unable to get P w i , because it is secured by one-way hash function H ( · ) as well as with random number r i . 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 r j of S j is revealed to A , still A cannot determine v i j = H ( r j | | I d i | | c j ) , because A is unable to obtain the random number c j . Therefore, A cannot forge the login request message { h i j } , and therefore cannot be authenticated by S j . That is, A cannot impersonate U i . 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 { Y j , R j } if A tries to make a server impersonation attack. A randomly generates a number b j to compute Y j = b j P , z i j = b j X i . Afterwards, A tries to compute S K i j and R j . Since A does not know v i j and X i j * computed by the secret key { r j , c j } of S j , A is unable to calculate S K i j and cannot forge R j . Thus, A cannot carry out the server impersonation attack.

8.7. Replay Attack

If A intercepts the login message { P I d i , X i , h i j } from U i , and wants to replay this message to S j . This replay attack is easily captured by inspecting the freshness of X i in the presented scheme, where X i = a i P , and a i is a random number. Similarly, replaying the challenging message and response message is detected by either U i or S j . 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 S K i j = H ( I d i | | S I d j | | v i j | | z i j | | X i j ) between U i and S j . However, the next session key S K i j will be computed by new random numbers a i and b j . That is, S K i j = H ( I d i | | S I d j | | v i j | | z i j | | X i j ) . To calculate the new session key, A has to compute a i , b j , a i b j P , a i Y j , b j X i from X i , Y j . However, this is computationally infeasible for A because of E C D L P and E C C D H P . Therefore, the presented scheme offers known key security.

8.9. Mutual Authentication

In the proposed scheme, only the legitimate h i j and R i can be verified by S j , and only the legitimate R j can be verified as the user U i . That is, the proposed scheme allows S j and U j to authenticate each other. Thus, the presented protocol ensures mutual authentication between a legitimate U i and S j .

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 U i wants the login authentication in the proposed scheme, it must input the correct I d i and P w i to pass the verification of S C . If A inputs wrong I d i and P w i into S C , A is unable to compute the correct login request message. Moreover, if U i wants to update the password, it has to pass the verification of S C . 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 r j of S j is compromised and A acquires r i , I d i , and P w i . To calculate the correct S K i j = H ( I d i | | S I d j | | v i j | | z i j | | X i j ) , A is required to calculate z i j , X i j . However, it is impossible for A to compute z i j , X i j because of E C D L P and E C C D H P . Thus, A is not capable of figuring out S K i j . 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 U i and server S j after the execution of the improved scheme. BAN-Logic notations and Basic BAN-Logic postulates are described in Table 2 and Table 3.

9.1. Idealized Scheme

The ideal form of the presented protocol is derived as follows:
Message 1.
U i S j : X i , < I d i > U i H ( X i j ) S j , ( I d i , S I d j , X i j , X i ) U i v i j S j , ( X i , Y j , U i S K S j , I d i ) U i v i j S j .
Message 2.
S j U i : Y j , ( P I d i , U i S K S j , X i , Y j ) U i v i j S j .

9.2. Security Objectives

We prove that the improved scheme can satisfy the following objective:
Objective 1.
U i | S j | ( U i S K S j ) .
Objective 2.
U i | ( U i S K S j ) .
Objective 3.
S j | U i | ( U S K S j ) .
Objective 4.
S j | ( U i S K S j ) .

9.3. Initiative Premises

For the initial status of the proposed scheme, the following assumptions are made.
IP 1.
U i | ( a i ) .
IP 2.
S j | ( b j ) .
IP 3.
U i | ( U i X i j S j ) .
IP 4.
S j | ( U i X i j S j ) .
IP 5.
U i | ( U i v i j S j ) .
IP 6.
S j | ( U i v i j S j ) .
IP 7.
U i | S j ( U i S K S j ) .
IP 8.
S j | U i ( U i S K S j ) .

9.4. Proof Procedure

The main proof steps of the proposed scheme are presented below.
Step 1.
From Message 2, it shows the following:
U i ( P I d i , U i S K S j , X i , Y j ) U i v i j S j .
Step 2.
From Step 1, IP 5, and the message-meaning rule, it illustrates the following:
U i | S j | ( P I d i , U i S K S j , X i , Y j ) .
Step 3.
From IP 1 and the freshness conjuncatenation rule, the following can be inferred:
U i | ( P I d i , U i S K S j , X i , Y j ) .
Step 4.
From Steps 2 and 3, the freshness rule, and the nonce verification rule, we obtain the following:
U i | S j | ( P I d i , U i S K S j , X i , Y j ) .
Step 5.
From Step 4 and the believe rule, we deduce the first objective as follows:
U i | S j | ( U i S K S j ) ( Objective 1 ) .
Step 6.
From Objective 1, IP 7, and the jurisdiction rule, we accomplish the second objective as follows:
U i | ( U i S K S j ) ( Objective 2 ) .
Step 7.
From Message 1, it indicates the following:
S j ( X i , Y j , U i S K S j , I d i ) U i v i j S j .
Step 8.
From Step 7, IP 6, and the message meaning rule, the following can be inferred:
S j | U i | ( X i , Y j , U i S K S j , I d i ) .
Step 9.
From IP 2 and the freshness conjuncatenation rule, the following can be obtained:
S j | ( X i , Y j , U i S K S j , I d i ) .
Step 10.
From Steps 8 and 9, the freshness rule, and the nonce-verification rule, we determine the following:
S j | U i | ( X i , Y j , U i S K S j , I d i ) .
Step 11.
From Step 10 and the believe rule, the third objective can be achieved as follows:
S j | U i | U i S K S j ( Objective 3 ) .
Step 12.
From Objective 3, IP 8, and the jurisdiction rule, the fourth objective is accomplished as follows:
S j | ( U i S K S j ) ( Objective 4 ) .
By accomplishing Objectives 1–4, both U i and S j believe that the S K 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: T m e , the execution time of point multiplication operation; T e , the time for execution of modular exponentiation operation; T h , the running time of a hash operation; and T m m , the running time for modular multiplication operation. More precisely, we compare the experimental results of the aforementioned operations as performed by [53,54], where T e , T m e , T h , and T m m 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.
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 [ C 1 C 3 , C 5 ] features. The scheme in [26] is still unable to provide perfect forward secrecy [ C 12 ] , although the authors used RSA-based public cryptography. The proposed scheme fulfills all known security features [ C 1 C 12 ] . Thus, the presented scheme surpasses [23,25,26,27,28,29] in terms of security.
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 [ C 1 C 3 , C 5 , C 12 ] 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.

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.

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.

Acknowledgments

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

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. [Google Scholar] [CrossRef] [Green Version]
  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. [Google Scholar] [CrossRef]
  4. Khan, M.K. Fingerprint Biometric-based Self-Authentication and Deniable Authentication Schemes for the Electronic World. IETE Tech. Rev. 2009, 26, 191–195. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef] [PubMed]
  10. Farash, M.S.; Attari, M.A. An Enhanced authenticated key agreement for session initiation protocol. Inf. Technol. Control 2013, 42, 333–342. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  13. Islam, S.; Khan, M. Cryptanalysis and improvement of authentication and key agreement protocols for telecare medicine information systems. J. Med. Syst. 2014, 38. [Google Scholar] [CrossRef] [PubMed]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  17. Thomas, M. SIP Security Requirements; Work In Progress; IETF Internet Draft: Fremont, CA, USA, 2001. [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. [Google Scholar] [CrossRef]
  19. Xie, Q. A new authenticated key agreement for session initiation protocol. Int. J. Commun. Syst. 2012, 25, 47–54. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef] [PubMed]
  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. [Google Scholar] [CrossRef]
  23. Awasthi, A.K.; Srivastava, K.; Mittal, R.C. An improved timestamp-based remote user authentication scheme. Comput. Electr. Eng. 2011, 37, 869–874. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef] [PubMed]
  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. [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. [Google Scholar] [CrossRef] [PubMed]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef] [PubMed]
  37. Park, Y.; Park, Y. Three-factor user authentication and key agreement using elliptic curve cryptosystem in wireless sensor networks. Sensors 2016, 16, 2123. [Google Scholar] [CrossRef] [PubMed]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. On the power of power analysis in the. real world: A complete break of the KeeLoq code hopping scheme. In Advances in Cryptology-CRYPTO; Lecture Notes in Computer Science; Springer: Berlin, Germany, 2008; Volume 5157, pp. 203–220. [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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. In 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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  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. [Google Scholar] [CrossRef]
  54. Kilinc, H.; Yanik, T. A survey of SIP authentication and key agreement schemes. IEEE Commun. Surv. Tutor. 2013. [Google Scholar] [CrossRef]
Figure 1. The architecture of the multi-server authentication system.
Figure 1. The architecture of the multi-server authentication system.
Sensors 18 02394 g001
Figure 2. Server registration.
Figure 2. Server registration.
Sensors 18 02394 g002
Figure 3. User registration.
Figure 3. User registration.
Sensors 18 02394 g003
Figure 4. Login and authentication.
Figure 4. Login and authentication.
Sensors 18 02394 g004
Table 1. Notations and their descriptions.
Table 1. Notations and their descriptions.
SymbolDescriptionSymbolDescription
R C Registration center S j Server
U i User S C i Smart card of U i
I d i Identification of user U i P w i Password belonging to user U i
r i , a i Random numbers of U i pLarge prime
Q j = r j P Public key of S j r j Private key of S j
c j , b j Random number of S j The bitwise XOR operation
| | The string concatenation operation H ( · ) One-way hash function
A The malicious adversary S K i j Session key belonging to U i and S j
Table 2. Burrows–Abadi–Needham logic (BAN-Logic) notations.
Table 2. Burrows–Abadi–Needham logic (BAN-Logic) notations.
SymbolDescription
A | X A has trust on X
A X A acquires/observes X
A | X A sends X X (or A once called)
A | X A regulates X
( X ) X is fresh
A K B 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
Table 3. Basic BAN-Logic postulates
RuleDescription
Message meaning rule A | A K B , A ( X ) K A | B | X
Nonce verification rule A | ( X ) , A | B | X A | B | X
Jurisdiction rule A | B | X , A | B | X A | X
Freshness conjuncatenation rule A | ( X ) A | ( X , Y )
Believe rule A | B | ( X , Y ) A | B | X , A | X , A | Y A | ( X , Y )
Table 4. The performing time of cryptographic operations (adapted from [53,54]).
Table 4. The performing time of cryptographic operations (adapted from [53,54]).
Symbol T e T me T h T mm
Time 3.85 ms 2.226 ms 0.0023 ms 0.001855 ms
Table 5. Comparison of security features.
Table 5. Comparison of security features.
SchemesAwasthi 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
C 1 NoNoNoNoNoNoYes
C 2 NoNoNoNoNoNoYes
C 3 NoNoNoNoNoNoYes
C 4 NoNoYesNoNoYesYes
C 5 NoNoNoNoNoNoYes
C 6 NoYesYesNoNoYesYes
C 7 YesYesYesYesYesYesYes
C 8 N/AN/AYesYesYesYesYes
C 9 YesYesYesYesYesYesYes
C 10 NoYesYesNoNoYesYes
C 11 NoNoYesNoNoYesYes
C 12 N/AN/ANoYesYesYesYes
C 1 provides user anonymity and un-traceability. C 2 resists stolen smart-card attack. C 3 resists offline password guessing attack. C 4 resists privileged insider attack. C 5 resists (key-compromised) user impersonation attack. C 6 resists server-impersonation attack. C 7 resists replay attack. C 8 provides known key security. C 9 provides mutual authentication. C 10 resists man-in-the-middle attack. C 11 resists denial-of-service attack. C 12 provides perfect forward secrecy.
Table 6. Comparison of computational complexity.
Table 6. Comparison of computational complexity.
CostUser ComputationServer ComputationTotal
Schemes
Awasthi et al. [23] 3 T e + 3 T m m + 2 T h 3 T e + T m m + 3 T h 6 T e + 4 T m m + 5 T h 23.1189  ms
Huang et al. [25] 2 T e + 2 T h 3 T e + 3 T h 5 T e + 5 T h 19.2615  ms
Amin et al. [26] T e + 6 T h T e + 4 T h 2 T e + 10 T h 7.723  ms
Pippal et al. [27] 3 T e + T m m + 4 T h 4 T e + T m m + 3 T h 7 T e + 2 T m m + 7 T h 26.9698  ms
Li et al. [28] T e + 5 T h 3 T e + 8 T h 4 T e + 13 T h 15.4299  ms
Srinivas et al. [29] 2 T e + 8 T h 2 T e + 4 T h 4 T e + 12 T h 15.676  ms
Proposed scheme 3 T m e + 9 T h 3 T m e + 6 T h 6 T m e + 15 T h 13.3905  ms

Share and Cite

MDPI and ACS Style

Xu, G.; Qiu, S.; Ahmad, H.; Xu, G.; Guo, Y.; Zhang, M.; Xu, H. A Multi-Server Two-Factor Authentication Scheme with Un-Traceability Using Elliptic Curve Cryptography. Sensors 2018, 18, 2394. https://doi.org/10.3390/s18072394

AMA Style

Xu G, Qiu S, Ahmad H, Xu G, Guo Y, Zhang M, Xu H. A Multi-Server Two-Factor Authentication Scheme with Un-Traceability Using Elliptic Curve Cryptography. Sensors. 2018; 18(7):2394. https://doi.org/10.3390/s18072394

Chicago/Turabian Style

Xu, Guosheng, Shuming Qiu, Haseeb Ahmad, Guoai Xu, Yanhui Guo, Miao Zhang, and Hong Xu. 2018. "A Multi-Server Two-Factor Authentication Scheme with Un-Traceability Using Elliptic Curve Cryptography" Sensors 18, no. 7: 2394. https://doi.org/10.3390/s18072394

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop