Next Article in Journal
The Sustainable Home Health Care Process Based on Multi-Criteria Decision-Support
Previous Article in Journal
Metaverse and AI Digital Twinning of 42SiCr Steel Alloys
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Improved and Provably Secure ECC-Based Two-Factor Remote Authentication Scheme with Session Key Agreement

by
Fairuz Shohaimay
1,2 and
Eddie Shahril Ismail
1,*
1
Department of Mathematical Sciences, Faculty of Science and Technology, Universiti Kebangsaan Malaysia (UKM), Bangi 43600, Selangor, Malaysia
2
Mathematical Sciences Studies, College of Computing, Informatics and Media, Universiti Teknologi MARA (UiTM) Pahang Branch, Raub Campus, Raub 27600, Pahang, Malaysia
*
Author to whom correspondence should be addressed.
Mathematics 2023, 11(1), 5; https://doi.org/10.3390/math11010005
Submission received: 1 October 2022 / Revised: 5 December 2022 / Accepted: 13 December 2022 / Published: 20 December 2022
(This article belongs to the Topic Soft Computing)

Abstract

:
The remote authentication scheme is a cryptographic protocol incorporated by user–server applications to prevent unauthorized access and security attacks. Recently, a two-factor authentication scheme using hard problems in elliptic curve cryptography (ECC)—the elliptic curve discrete logarithm problem (ECDLP), elliptic curve computational Diffie–Hellman problem (ECCDHP), and elliptic curve factorization problem (ECFP)—was developed, but was unable to address several infeasibility issues while incurring high communication costs. Moreover, previous schemes were shown to be vulnerable to privileged insider attacks. Therefore, this research proposes an improved ECC-based authentication scheme with a session key agreement to rectify the infeasible computations and provide a mechanism for the password change/update phase. The formal security analysis proves that the scheme is provably secure under the random oracle model (ROM) and achieves mutual authentication using BAN logic. Based on the performance analysis, the proposed scheme resists the privileged insider attack and attains all of the security goals while keeping the computational costs lower than other schemes based on the three hard problems. Therefore, the findings suggest the potential applicability of the three hard problems in designing identification and authentication schemes in distributed computer networks.

1. Introduction

Currently, more Internet users depend on user–server-based applications for e-commerce, banking services, and operational networks because of their convenience and efficiency. These applications allow users to obtain numerous services remotely at any time, anywhere. This type of communication between the user and server usually involves data transmission and financial transactions over a public channel, such as the Internet. Unfortunately, sharing sensitive information over the public channel is insecure, exposing both parties to greater security risks and attacks. Therefore, a remote authentication scheme is imperative for verifying legal users and defending against unauthorized usage.
The first password authentication scheme by Lamport [1] is called a single-factor-based scheme because the user only needs to present a password to be verified by the server. However, studies have shown that single-factor-based schemes are subjected to security pitfalls. Since then, remote authentication schemes were designed based on two or more factors to increase the systems’ security. For example, in addition to a password, the user is required to possess a registered smart card or a mobile device. For a multi-factor scheme, the user may also need to present a biometric trait such as a fingerprint.
Many two-factor smart-card-based remote authentication schemes have been proposed. Figure 1 depicts the general architecture of the two-factor authentication scheme, which consists of multiple users and a single server. In this system, the remote user must register with a valid identity and secret password with the server. Next, the server issues a legal smart card to the first-time registered user to access the required services. The smart card is employed to store the registered user’s secret credentials for future login requests and perform cryptographic computations during the authentication process.
Like other cryptographic schemes and protocols, the two-factor-based authentication schemes rely on the security primitives of one-way hash functions (e.g., SHA-2 [2]) and number-theoretic computational hard problems in public-key cryptography. For instance, the works by [3,4,5] were developed based on only one-way hash functions. Other schemes were built based on the intractability of hard problems, including the integer factorization problem in RSA [6], discrete logarithm problem [7], and elliptic curve discrete logarithm problem [8,9] in elliptic curve cryptography (ECC). ECC-based schemes are more prevalent than RSA-based schemes due to the smaller key size requirement [10].
In 2008, Juang et al. [11] first proposed an ECC-based remote password authentication scheme with a session key agreement for the client–server environment. The security of their scheme depended on two hard problems in ECC: the elliptic curve discrete logarithm problem (ECDLP) and elliptic curve computational Diffie–Hellman problem (ECCDHP). They claimed that their scheme preserved all of the security merits of the scheme by Fan et al. [12] and reduced the computational cost. Subsequently, Sun et al. [13] and Li et al. [14] found weaknesses in the design of the scheme by Juang et al. [11] in terms of the password-change phase and session key distribution, the inefficiency of using two secret keys, and user anonymity. Hence, both suggested enhancements to fix the design flaws.
Several improvements by [15,16,17] were presented to overcome the problems in the Sun et al. [13] scheme to resist offline password-guessing attacks, denial-of-service attacks, smart card loss attacks, and key compromise impersonation attacks. Later, Liu and Ma [18] found that the scheme by Sun et al. [13] still lacked user untraceability and resolved the issue with an improved efficiency. Then, the scheme by Li et al. [14] was found to suffer from desynchronization attacks [17,19]. Hence, Tsai et al. [19] and Byun [20] proposed new schemes with formal security model proofs to strengthen the scheme’s security. Both schemes maintained the security of their schemes based on the hard problems of ECDLP and ECCDHP.
Wang et al. [21] proposed a two-factor authentication scheme for a ubiquitous computing environment based on ECDLP. Their scheme was shown to provide better security features and a lower computational cost. Subsequently, Wu et al. [22] showed that the scheme by Wang et al. [21] could not resist offline dictionary attacks, known session key attacks, denial-of-service attacks, and impersonation attacks using a compromised smart card. Meanwhile, Chang et al. [23] pointed out that the scheme by Wang et al. [21] did not satisfy mutual authentication and could not be incorporated using a multipurpose smart card. Hence, both [22,23] proposed new improved schemes to overcome these weaknesses.
In another study, Wang [24] found some security flaws in the design of the single-factor scheme by Islam and Biswas [25]. They developed a new scheme using smart cards with the security foundation of ECDLP, ECCDHP, and a one-way hash function. They claimed that their scheme offered resistance to impersonation attacks and improved the computational efficiency by removing the expensive bilinear pairing operation. Later, Odelu et al. [26] presented further improvements to resist the offline password attack and provide user anonymity. They proved that their scheme could withstand various security attacks and showed that it was provably secure under the random oracle model (ROM).
Other recent works have also proposed ECC-based two-factor schemes with added security features. Madhusudhan et al. [27] suggested a new scheme based on ECC and a fuzzy verifier for quick password verification. They showed that their scheme could resist replay attacks and provide security of the secret key, user untraceability, and perfect forward secrecy. Finally, Kumari et al. [28] designed a novel scheme that provides resistance against offline password-guessing attacks, lost smart card attacks, replay attacks, impersonation attacks, desynchronization attacks, and insider attacks.

1.1. Motivations and Contributions

In 2014, Qu and Tan [29] proposed a two-factor scheme based on the security of a collision-resistant one-way hash function, ECDLP, ECCDHP, and the elliptic curve factorization problem (ECFP). Later, Huang et al. [30] suggested security enhancements to overcome the offline password-guessing attack and user impersonation attack. However, in 2016, Maitra et al. [31] showed that the scheme by Huang et al. [30] was vulnerable to a new forgery attack. They also pointed out that the scheme by [30] could not be implemented in real-world problems because of some computational infeasibility issues. Later, both Chaudhry et al. [32] and Mehmood et al. [33] also suggested improvements to repel the user impersonation attack.
Although Maitra et al. [31] suggested security enhancements to the scheme by Huang et al. [30], their scheme exacted a higher computational cost compared to schemes by [29,30,32,33]. Even though the schemes designed by Chaudhry et al. [32] and Mehmood et al. [33] improved the efficiency of the scheme by Huang et al. [30], their schemes overlooked the computational infeasibility issues. In addition, their schemes did not provide a mechanism for the password change phase and were unable to withstand the privileged insider attack. Moreover, previously improved schemes by Maitra et al. [31] and Mehmood et al. [33] did not maintain all three hard problems in ECC: ECDLP, ECCDHP, and ECFP.
Therefore, this study proposes a new ECC-based two-factor remote authentication scheme based on Chaudhry et al. [32] to resolve these shortcomings. The scheme retains all of the security attributes of the scheme by Maitra et al. [31], including user traceability and efficient local password changeability. In addition, the proposed scheme is proven to withstand offline password-guessing attacks, replay attacks, privileged insider attacks, stolen-verifier attacks, and key-compromise impersonation attacks. Based on the formal security analysis, the proposed scheme is provably secure under ROM against adversary threats. Furthermore, the analysis showed that the proposed scheme is more efficient than the scheme by Maitra et al. [31].

1.2. Structure of the Article

Section 2 briefly describes the security fundamentals, adversary model, a review of Chaudhry et al. [32], and the drawbacks that are considered when developing the proposed scheme. Next, Section 3 explains the new proposed scheme. The formal security proof, informal security analysis, and formal verification using BAN logic are presented in Section 4. The proposed scheme is compared with other chosen schemes in the performance analysis according to the security and efficiency aspects given in Section 5. Then, Section 6 discusses the potential applications of the proposed scheme and future research considerations. Finally, Section 7 presents the conclusion.

2. Preliminaries

This section provides a brief overview of the mathematical concepts, formal definitions, adversary model, security goals, and BAN logic that served as the foundation in the design of the proposed scheme. Table 1 shows the notations and descriptions used in this paper.

2.1. Hash Function

A cryptographic one-way function h : { 0 , 1 } * { 0 , 1 } l has the following properties:
  • The function h takes an arbitrary length input x { 0 , 1 } * and returns a fixed l-bit length message digest y { 0 , 1 } l .
  • The function h is one-way; it is trivial to compute y = h ( x ) , but computationally infeasible to find the inverse x = h 1 ( y ) .
  • The function h is collision-resistant; it is computationally infeasible to find two inputs x 1 x 2 such that h ( x 1 ) = h ( x 2 ) .
Examples of secure hash algorithms, such as the SHA-2 family of hash functions [2], can be adopted in the proposed scheme.
Definition 1. 
An adversary A ’s advantage in finding a collision is the probability of A selecting the pair ( x 1 , x 2 ) at random within polynomial time t 1 so that x 1 x 2 and h ( x 1 ) = h ( x 2 ) , defined formally as
A d v A H a s h ( t 1 ) = Pr [ ( x 1 , x 2 ) R A : x 1 x 2 h ( x 1 ) = h ( x 2 ) ] .
If A d v A H a s h ( t 1 ) ε 1 , for any sufficiently small negligible function ε 1 > 0 , the one-way hash function h ( · ) is collision-resistant.

2.2. Elliptic Curve over Finite Fields

The elliptic curve over a finite field F p is defined as E p ( a , b ) : y 2 = x 3 + a x + b (mod p), where p is prime and satisfies the condition 4 a 3 + 27 b 2 0 (mod p). If point P E ( F p ) and k Z p * , then the elliptic point multiplication operation [ k ] P is the repeated point addition k times on point P.
[ k ] P = P + P + + P k times
The security of the elliptic curve cryptosystem is based on the following computational hard problems.
Definition 2. 
Given two points P, Q ( = [ s ] P ) E ( F p ) , the elliptic curve discrete logarithm problem (ECDLP) is to find the integer s Z p * . The advantage of an adversary A in solving the ECDLP within execution time t 2 is defined as
A d v A E C D L P ( t 2 ) = Pr [ s Z p * : P , Q = [ s ] P E ( F p ) ] .
For any probabilistic polynomial time-bounded algorithm A and for any sufficiently small negligible function ε 2 > 0 , if A d v A E C D L P ( t 2 ) ε 2 , then the ECDLP is intractable.
Definition 3. 
Given three points P, Q ( = [ s ] P ) , R ( = [ t ] P ) E ( F p ) , the elliptic curve computational Diffie–Hellman problem (ECCDHP) is to find the point [ s · t ] P E ( F p ) where s, t Z p * . The advantage of an adversary A in solving the ECCDHP within execution time t 3 is defined as
A d v A E C C D H P ( t 3 ) = Pr [ [ s · t ] P E ( F p ) : P , Q = [ s ] P , R = [ t ] P E ( F p ) s , t Z p * ] .
For any probabilistic polynomial time-bounded algorithm A and for any sufficiently small negligible function ε 3 > 0 , if A d v A E C C D H P ( t 3 ) ε 3 , then the ECCDHP is intractable.
Definition 4. 
Given two points P, Q ( = [ s + t ] P ) E ( F p ) , the elliptic curve factorization problem (ECFP) is to find two points [ s ] P , [ t ] P E ( F p ) , where s, t Z p * . The advantage of an adversary A in solving the ECFP within execution time t 4 is defined as
A d v A E C F P ( t 4 ) = Pr [ [ s ] P , [ t ] P E ( F p ) : P , Q = [ s ] P + [ t ] P E ( F p ) s , t Z p * ] .
For any probabilistic polynomial time-bounded algorithm A and for any sufficiently small negligible function ε 4 > 0 , if A d v A E C F P ( t 4 ) ε 4 , then the ECFP is intractable.

2.3. Adversary Model

The adversary model by Dolev and Yao [34] was considered for communications over an insecure public channel, and the following assumptions were made.
  • A1: An adversary A can trap, delete, or alter the messages transmitted over the public channel.
  • A2: An adversary A can retrieve the information stored in the smart card using power monitoring techniques as explained in [35,36].
  • A3: An adversary A can guess the identity or password using a dictionary attack. However, A cannot guess both the identity and password simultaneously within polynomial time [37].
  • A4: An adversary A can be a non-registered user who tries to attack the authentication system [31].
  • A5: The server is considered a trusted authority, and the adversary A , as a privileged insider, cannot extract the server’s secret key s.

2.4. Security Goals

The following goals are defined for an ideal authentication scheme, as listed in [31,38].
  • Mutual authentication: Both the server and the user can authenticate each other. No adversary can impersonate a legal user or server.
  • Session key agreement: A session key should be created as the final step in the mutual authentication phase. Afterward, the communication between both parties can be encrypted using the shared session key.
  • Forward secrecy: Even if the long-term private keys are compromised, the previous session keys cannot be used by any adversary to forge other session keys.
  • User anonymity: A user’s identity should not be transmitted explicitly over an insecure channel. This ensures that the user’s sensitive information is protected from an adversary A , even with the knowledge of login information or access to the server.
  • User traceability: The server should be able to trace the sender of the login request message to avoid the denial-of-service attack. A database of registered users should be maintained by the server.
  • Local password verification: A smart card can verify the user identity and password in the login phase before generating the login request message. This way, the smart card can reduce computational overhead by avoiding unnecessary calculations.
  • Local password changeability: Users can update/change their passwords independently without the server’s assistance. The smart card must be able to detect unauthorized password update requests through the wrong input of the user identity and old password.

2.5. BAN Logic

Burrows–Abadi–Needham (BAN) logic [39] is a set of rules based on belief modal logic for analyzing authentication protocols. The notations used in BAN logic and their descriptions are provided in Table 2. Table 3 lists the BAN logic rules, descriptions, and symbolic forms that are used in proving the mutual authentication property of the proposed scheme.

2.6. Review of the Scheme by Chaudhry et al.

In this section, a brief description of the scheme by Chaudhry et al. [32] is presented. The authentication scheme by Chaudhry et al. [32] is an improvement of the scheme proposed by Huang et al. [30]. Their scheme consists of four phases: (1) system initialization, (2) user registration, (3) user login, and (4) mutual authentication. Figure 2 summarizes the authentication scheme by Chaudhry et al. [32]. Each of the phases is reviewed as follows.
(1)
System initialization phase
The Server S selects an elliptic curve E p ( a , b ) over F p , where p is k-bit prime, and a base point P of order n from G p of E p ( a , b ) , where n is a large number for security purposes. Then, S computes the secret key and public key pair ( s , P p u b ) such that P p u b = [ s ] P , where s is a random integer s Z n * . The Server S also chooses five distinct one-way hash functions h i : { 0 , 1 } * Z p * , where i = 1 , 2 , , 5 . Finally, the Server S publishes { E p ( a , b ) , P , P p u b , h ( · ) } and keeps s secret.
(2)
User registration phase
In this phase, the user U i chooses an identity I D i , a password p w i , and a random integer b i . Then, the user U i computes h p w i = h 1 ( I D i p w i b i ) and sends { I D i , h p w i } to S through a secure channel. Next, the Server S computes C I D i = h 1 ( I D i s ) , A I D i = [ C I D i + h p w i ] P , and B I D i = h 2 ( h 1 ( I D i ) · h p w i ) . The Server S stores { A I D i , B I D i } into the smart card S C i and issues the card securely to U i . Once the user U i receives the smart card S C i , the user will update the value b i into S C i . Hence, the smart card S C i = { A I D i , B I D i , b i } .
(3)
User login phase
In the login phase, the registered user U i inserts the smart card S C i into a remote terminal and enters the identity and password, { I D i , p w i } . Next, the smart card S C i computes h p w i = h 1 ( I D i p w i b i ) and B I D i = h 2 ( h 1 ( I D i ) · h p w i ) , and checks if the equation B I D i = B I D i holds. Otherwise, the login phase is aborted. Then, the smart card S C i selects a random integer r i and computes R i = [ r i ] P , M i = [ r i ] P p u b , T I D i = A I D i [ h p w i ] P , D I D i = I D i M i , and E I D i = h 3 ( h 4 ( T I D i M i ) R i M i ) . The smart card S C i submits the login request message { D I D i , E I D i , R i } to S through a public channel.
(4)
Mutual authentication phase
Once the Server S receives the login request message, it computes M i = [ s ] R i , I D i = D I D i M i , C I D i = h 1 ( I D i s ) , T I D i = [ C I D i ] P , and E I D i = h 3 ( h 4 ( T I D i M i ) R i M i ) , and checks if the equation E I D i = E I D i holds. If the equation does not hold, the login request is rejected. Otherwise, the Server S generates a random integer r s and computes R s = [ r s ] R i , Z s = R s M i , and H s = h 3 ( E I D i R s T I D i ) , and sends the response message = { Z s , H s } to U i through the public channel.
After receiving the response message, the user U i computes R s = Z s M i , and H s = h 3 ( E I D i R s T I D i ) , and checks if H s = H s holds. If the equation does not hold, the user U i disconnects from S. Otherwise, the user U i computes H i = h 2 ( M i R s ) and sends the message = { H i } to S. Next, the Server S computes H i = h 2 ( M i R s ) and checks if H i = H i . If the equation holds, the user U i and the Server S achieve mutual authentication and agree on the session key S k = h 5 ( M i R s R i T I D i ) . Otherwise, the session is terminated.

2.7. Drawbacks of Scheme by Chaudhry et al.

This section highlights the security drawbacks of the scheme by Chaudhry et al. [32].
(1)
Computational infeasibility
During the mutual authentication phase, once the Server S has verified the equation E I D i = E I D i , it then computes the value Z s = R s M i = [ r s ] R i [ s ] R i . Then, the user retrieves the value of R S as R s = Z s M i = ( [ r s ] R i [ s ] R i ) [ r i ] P p u b . However, the XOR operation is undefined on the elliptic curve since it is not a closed operation under the elliptic curve group. The undefined XOR operation on two elliptic curve points was highlighted by Maitra et al. [31] as a drawback of the scheme by Huang et al. [30]. However, Chaudhry et al. [32] did not address the issue in the modification of their scheme. Hence, their scheme maintained the infeasible computations of the scheme by Huang et al. [30].
(2)
Weakness to privileged insider attack
Consider an adversary A being a privileged insider who can monitor data transmission over a secure channel. In the registration phase of the scheme by Chaudhry et al. [32], the user U i submits { I D i , h p w i } to the Server through a secure channel. Hence, A has access to I D i and h p w i . If A possesses a lost/stolen smart card S C i , then it is possible for A to launch an offline password-guessing attack. For example, assume that A has the values I D i , h p w i , and { A I D i , B I D i , b i } retrieved from S C i by Assumption A2. Then, A can obtain the correct password p w i by checking the equation h p w i = h ( I D i p w i b i ) = h ( I D i p w ˜ i b i ) , where p w ˜ i is the guessed password. Therefore, the scheme by Chaudhry et al. [32] cannot resist the privileged insider attack.
(3)
Unable to trace user
After receiving the login request message { D I D i , E I D i , R i } , the Server computes all of the values M i , I D i , C I D i , and T I D i straight away before verifying the value E I D i . Based on discussions in [31], the Server was shown to be vulnerable to forgery attacks because it is unable to check if the login request comes from a registered user. Maitra et al. [31] also highlighted that the user untraceability feature is undesirable since the Server cannot provide user-specific services. In the scheme by Chaudhry et al. [32], the Server did not save any information about the registered users; therefore, it cannot trace the sender of the login request message.
(4)
No mechanism for password change/update
In the scheme by Chaudhry et al. [32], they rectified the computation of A I D i during the user registration phase to overcome the user impersonation attack. Specifically, the value A I D i was computed as A I D i = [ C I D i + h p w i ] P = [ h 1 ( I D i s ) + h 1 ( I D i p w i b i ) ] P . Note that the value of A I D i is stored in the memory of the smart card S C i and its value depends on the password p w i and random integer b i . Consequently, the corresponding computation for the new value of A I D i * should also be rectified when a user changes/updates a new password p w i * and new random integer b i * . However, the password change/update phase was not discussed. Therefore, their scheme did not provide a mechanism for the password change/update.

3. Proposed Scheme

This section presents the proposed ECC-based two-factor remote authentication scheme. Following the scheme by [32], the Server acts as a trusted authority that is responsible for preparing the global parameters and public and secret keys, as well as issuing smart cards to newly registered users. The proposed scheme also incorporates timestamps to verify the freshness of transmitted messages, similar to the design by [31]. Generally, the scheme consists of five phases: (1) system initialization, (2) user registration, (3) user login, (4) mutual authentication, and (5) password change/update. Figure 3 presents an overview of the proposed scheme.

3.1. System Initialization Phase

  • The Server S selects an elliptic curve E p ( a , b ) over F p , where p is k-bit prime and a base point P of order n from G p of E p ( a , b ) , where n is a large number for security purposes.
  • The Server S computes the secret key and public key pair ( s , P p u b ) such that P p u b = [ s ] P , where s is a random integer s Z n * .
  • The Server S chooses a cryptographic one-way hash function h : { 0 , 1 } * Z n * .
  • The Server S publishes { E p ( a , b ) , P , P p u b , h ( · ) } and keeps s secret.

3.2. User Registration Phase

A new user must register with the Server S before requesting access to the services. The registration phase is detailed as follows:
  • The user U i chooses an identity I D i and password p w i , and generates a random integer b i Z n * . Then, the user U i computes h p w i = h ( p w i b i ) and sends { I D i , h p w i } to S through a secure channel.
  • The Server S computes C I D i = h ( I D i s ) and checks the availability of C I D i . If the value C I D i is in the database of registered users, the user U i will be asked to input a new I D i . Otherwise, the Server stores C I D i into the database. Following the approach taken by [31], this step is added to allow S to trace the user during the login phase.
  • The Server S computes A I D i = [ C I D i + h p w i ] P , B I D i = h ( h ( I D i ) h p w i ) , stores { A I D i , B I D i } into the smart card S C i , and issues the card securely to U i .
  • Once the user U i receives the smart card S C i , the user computes b ^ i = h ( I D i p w i ) b i and stores the value b ^ i into S C i . Hence, the smart card S C i = { A I D i , B I D i , b ^ i } .

3.3. User Login Phase

In the login phase, a user U i submits a login request message to the Server S for access to the system. First, the user U i inserts the smart card S C i into a remote terminal and enters the identity and password, { I D i , p w i } . The S C i executes the following steps.
  • The smart card S C i computes b i = b ^ i h ( I D i p w i ) , h p w i = h ( p w i b i ) , and B I D i = h ( h ( I D i ) h p w i ) , and checks if B I D i = B I D i holds. If the equation holds, then U i has entered the correct identity and password, I D i = I D i and p w i = p w i , respectively. Otherwise, the login phase is aborted.
  • The smart card S C i selects a random integer r i Z n * and computes R i = [ r i ] P = ( x R i , y R i ) G p , where x R i and y R i are the x-component and y-component of the point R i , respectively.
  • The smart card S C i computes M i = [ r i ] P p u b = ( x M i , y M i ) G p , T I D i = A I D i [ h p w i ] P = ( x T i , y T i ) G p , D I D i = I D i y M i , and E I D i = h ( x T i x M i T i 1 ) , where T i 1 is the timestamp of U i ’s login request submission.
  • The smart card S C i submits the login request message = { D I D i , E I D i , R i , T i 1 } to S through a public channel.

3.4. Mutual Authentication Phase

Once the Server S receives the login request message at time T s 1 , it proceeds with the following steps.
  • The Server S checks if ( T s 1 T i 1 ) Δ T , where Δ T is the allowed time transmission delay. If the time difference does not hold, the login request is rejected.
  • The Server S computes M i = [ s ] R i = ( x M i , y M i ) G p in order to retrieve the identity I D i = D I D i y M i and C I D i = h ( I D i s ) . Then, the Server S checks the validity of I D i by searching the value of C I D i in the registered users’ database. If C I D i is not in the database, the login request is rejected.
  • The Server S computes T I D i = [ C I D i ] P = ( x T i , y T i ) G p and E I D i = h ( x T i x M i T i 1 ) , and checks if E I D i = E I D i holds. If the equation does not hold, the login request is rejected.
  • The Server S generates a random integer r s Z n * , computes R s = [ r s ] R i = ( x R s , y R s ) G p , Z s = R s + M i , and H s = h ( E I D i x R s T s 1 x T i ) , and sends the response message = { Z s , H s , T s 1 } to U i through the public channel.
  • Once the user U i receives the response message at time T i 2 , the user U i checks if ( T i 2 T s 1 ) Δ T . If the time difference does not hold, the user U i disconnects from the Server S.
  • The user U i computes R s = Z s M i = ( x R s , y R s ) G p , and H s = h ( E I D i x R s T s 1 x T i ) , and checks if H s = H s holds. If the equation does not hold, the user U i disconnects from S.
  • The user U i computes H i = h ( x M i x R s ) and sends the message = { H i , T i 2 } to S.
  • The Server S checks if ( T s 2 T i 2 ) Δ T . If the time difference does not hold, the session is terminated.
  • The Server S computes H i = h ( x M i x R s ) and checks if H i = H i . If it holds, the user U i and the Server S achieve mutual authentication and agree on the session key S k u s = h ( y R i y R s y M i y T i T i 2 T s 1 ) = h ( y R i y R s y M i y T i T i 2 T s 1 ) = S k s u . Otherwise, the session is terminated.

3.5. Password Change/Update Phase

The user U i can change or update the password during this phase by initially inserting the smart card S C i into a remote terminal with the identity and password { I D i , p w i } . Then, the smart card performs the following steps.
  • The smart card S C i computes b i = b ^ i h ( I D i p w i ) , h p w i = h ( p w i b i ) , and B I D i = h ( h ( I D i ) h p w i ) , and checks if B I D i = B I D i . If the equation is true, the smart card S C i asks the user U i to submit a new password p w i * . Otherwise, the request is rejected.
  • Once the user U i enters the new password p w i * , the smart card S C i generates a new random integer b i * Z n * and computes the new values b ^ i * = h ( I D i p w i * ) b i * , h p w i * = h ( p w i * b i * ) , A I D i * = A I D i + [ h p w i * h p w i ] P , and B I D i * = h ( h ( I D i ) h p w i * ) .
  • Finally, the smart card S C i updates the values as S C i = { A I D i * , B I D i * , b ^ i * } .

3.6. Proof of Correctness

The propositions and proof of correctness are presented below for the sake of completeness.
Proposition 1. 
If the user U i enters the identity and password { I D i , p w i } correctly, and the user login phase and Steps 1-2 of the mutual authentication phase run smoothly, then the Server S will obtain the correct T I D i = T I D i , which is shown as follows.
T I D i = A I D i [ h p w i ] P = [ C I D i + h p w i ] P [ h p w i ] P = [ C I D i ] P + [ h p w i ] P [ h p w i ] P = [ C I D i ] P = [ C I D i ] P , C I D i = C I D i in Database = T I D i
Proposition 2. 
Assume that the user U i receives the response message from the Server S and passes the timestamp check in Step 5 of the mutual authentication phase. The equation in Step 6 will retrieve the correct R s value as follows.
R s = Z s M i = ( R s + M i ) [ r i ] P p u b = ( R s + [ s ] R i ) [ r i ] P p u b = R s + [ s ] [ r i ] P [ r i ] [ s ] P = R s
Proposition 3. 
If the user U i enters the correct identity and password { I D i , p w i } , and the equation B I D i = B I D i holds, the smart card S C i can compute the new value A I D i * without the knowledge of C I D i , which is shown as follows.
A I D i * = A I D i + [ h p w i * h p w i ] P = [ C I D i + h p w i ] P + [ h p w i * h p w i ] P = [ C I D i ] P + [ h p w i ] P + [ h p w i * ] P [ h p w i ] P = [ C I D i + h p w i * ] P

4. Security Analysis of the Proposed Scheme

This section analyzes the security aspect of the proposed scheme. First, the formal security proof is presented based on the ROM using the proof by contradiction technique, which is similar to [26,32,33]. Next, the attainment of security goals is discussed. Then, the proposed scheme is shown to withstand several identified security attacks. Finally, the formal verification of the scheme using BAN logic is provided to prove the mutual authentication property.

4.1. Formal Security Analysis

The formal proof demonstrates that the proposed scheme is provably secure against an adversary A from obtaining the identity I D i , secret key s, and shared session key S k u s ( = S k s u ) . In this approach, a mathematical proof is presented to show that the security of the proposed scheme is reduced to the ability of the adversary to break four computationally intractable problems: the collision-resistant one-way hash function, ECDLP, ECCDHP, and ECFP.
The formal proof begins by assuming the adversary A knows the values for the parameters { A I D i , B I D i , b ^ i } stored in the smart card, and the messages { D I D i , E I D i , R i , T i 1 } , { Z s , H s , T s 1 } , and { H i , T i 2 } transmitted in the public channel, as described in the adversary model in Section 2.3. In addition, the adversary A is assumed to have access to the following oracles.
  • O H a s h : Given the input h ( x ) , the oracle yields the output x.
  • O E C D L P : Given the input P and Q = [ a ] P , the oracle yields the output a.
  • O E C C D H P : Given the input P, Q = [ a ] P , and R = [ b ] P , the oracle yields the output [ a · b ] P .
  • O E C F P : Given the input P and Q = [ a ] P + [ b ] P = [ a + b ] P , the oracle yields the output [ a ] P and [ b ] P .
Theorem 1. 
Assuming that the cryptographic one-way hash function h ( · ) acts like a true random oracle, and ECDLP, ECCDHP, and ECFP are computationally intractable problems, then the proposed ECC-based authentication scheme is provably secure against an adversary A for deriving the identity I D i , secret key s, and session key S k u s ( = S k s u ) .
 Proof. 
Suppose an adversary A is constructed to derive the identity I D i , secret key s, and session key S k u s ( = S k s u ) by running the algorithm A L G A , E C P A S O r a c l e , as shown in Algorithm 1 for the proposed ECC-based scheme. Based on Assumptions A1 and A2 in Section 2.3, the adversary A can obtain the transmitted messages { D I D i , E I D i , R i , T i 1 } , { Z s , H s , T s 1 } , and { H i , T i 2 } , and the parameters { A I D i , B I D i , b ^ i } stored in the smart card. Then, the success probability of A L G A , E C P A S O r a c l e is given as S u c c A , E C P A S O r a c l e = 2 Pr [ A d v A , E C P A S O r a c l e = 1 ] 1 . The advantage for the A L G A , E C P A S O r a c l e is the maximum of the success probability taken over all A with execution time t, A d v A , E C P A S O r a c l e ( t , q 1 , q 2 , q 3 , q 4 ) = m a x A { S u c c A , E C P A S O r a c l e } , where q 1 , q 2 , q 3 , and q 4 denote the number of queries made to oracles O H a s h , O E C D L P , O E C C D H P , and O E C F P , respectively.
Algorithm 1  A L G A , E C P A S O r a c l e for deriving identity I D i , secret key s, and session key S k u s ( = S k s u ) .
1: Eavesdrop the login message { D I D i , ( E I D ) i , R i , T i 1 }
2: Call O H a s h on input E I D i = h ( x T i x M i T i 1 ) to obtain ( x T i x M i T i 1 ) O H a s h ( E I D i )
3: Call O E C C D H P on input P p u b , R i , and P to obtain M i as ( M i = ( x M i , y M i ) ) O E C C D H P ( P p u b , R i , P )
4: if x M i = x M i then
5:  Call O E C F P on input A I D i and P to obtain T I D i and ( [ h p w i ] P ) as ( T I D i = ( x T i , y T i ) , ( [ h p w i ] P ) ) O E C F P ( A I D i , P )
6:  if  x T i = x T i  then
           Compute I D i = D I D i y M i
8:           Compute E I D i = h ( x T i x M i T i 1 )
9:        if  E I D i = E I D i  then
10:           Accept I D i as the correct user’s identity
11:           Call O E C D L P on input T I D i and P to obtain C I D i as ( C I D i ) O E C D L P ( T I D i , P )
12:           Call O H a s h on input C I D i = h ( I D i s ) to obtain ( I D i s ) as ( I D i s ) O H a s h ( C I D i )
13:           Compute s = ( I D i s ) I D i
             Eavesdrop the message { Z s , H s , T s 1 }
15:           Compute R s = Z s M i = ( x R s , y R s )
16:           Compute H s = h ( E I D i x R s T s 1 x T i )
17:           if  H s = H s  then
18:               Accept s as the correct secret key
19:               Eavesdrop the message { H i , T i 2 }
20:               Compute H i = h ( x M i x R s )
21:               if  H i = H i  then
22:                   Compute S k u s = h ( y R i y R s y M i y T i T i 2 T s 1 ) = S k s u as the correct shared session key
23:                   return 1 (Success)
24:               else
25:                   return 0 (Fail)
26:               end if
27:           else
28:               return 0 (Fail)
29:           end if
30:        else
31:           return 0 (Fail)
32:        end if
33:    else
34:        return 0 (Fail)
35:    end if
36:else
37:    return 0 (Fail)
38: end if
Based on algorithm A L G A , E C P A S O r a c l e , suppose the adversary A can compute the inverse of a cryptographic one-way hash functions, and solve ECDLP, ECCDHP, and ECFP by using the oracles O H a s h , O E C D L P , O E C C D H P , and O E C F P . Then, the adversary A wins the game and successfully obtains I D i , s, and S k u s ( = S k s u ) . However, according to Definitions 1–4, the advantages A d v A H a s h ( t 1 ) ε 1 , A d v A E C D L P ( t 2 ) ε 2 , A d v A E C C D H P ( t 3 ) ε 3 , and A d v A E C F P ( t 4 ) ε 4 , for any sufficiently small negligible functions ε 1 , ε 2 , ε 3 , ε 4 > 0 . Hence, it must be that A d v A , E C P A S O r a c l e ( t , q 1 , q 2 , q 3 , q 4 ) ε for any sufficiently small ε > 0 . Therefore, the theorem is proven. □

4.2. Attainment of Security Goals

This section analyzes the proposed scheme’s attainment of security goals as explained in Section 2.4.
(1)
Mutual authentication
The proposed scheme includes mutual authentication steps for verifying the legality of the user and the Server. The Server authenticates the user by checking the value C I D i = h ( I D i s ) in the registered users’ database. Next, the user authenticates the Server by checking the value of H s = h ( E I D i x R s T s 1 x T i ) . Although an adversary may obtain the value of E I D i , Z s and A I D i by Assumptions A1 and A2, the adversary needs to compute the values of R s = Z s M i and T I D i = A I D i [ h p w i ] P , which are not transmitted in the public channel. Furthermore, R s and T I D i are secured by the ECDLP and ECFP. Therefore, the proposed scheme provides mutual authentication.
(2)
Session key agreement
After completing the mutual authentication steps, both the user and Server compute a shared session key S k u s = h ( y R i y R s y M i y T i T i 2 T s 1 ) = h ( y R i y R s y M i y T i T i 2 T s 1 ) = S k s u . Since the adversary does not know R s , M i , and T I D i , the session key cannot be computed directly due to the cryptographic one-way hash function. Hence, the shared session key is protected in the proposed scheme.
(3)
Forward secrecy
In the proposed scheme, the session keys are computed using the values R i = [ r i ] P and R s = [ r s ] P , which are calculated based on random numbers r i and r s . Even if an adversary obtains the secret key s, the adversary still cannot obtain any information from the previous session keys. Thus, the proposed scheme provides forward secrecy.
(4)
User anonymity
According to Assumption A2, an adversary may extract all of the values { A I D i , B I D i , b ^ i } in the smart card. The I D i is contained in the parameters A I D i and B I D i . However, the adversary needs to invert a one-way hash output, which is impossible in polynomial time, as shown in Theorem 1. As a result, the proposed scheme provides user anonymity.
(5)
User traceability
Following Maitra et al. [31], the server should be able to trace the sender of the login request message by confirming that the sender is indeed a user registered in the database. The proposed scheme still maintains user anonymity because the user’s I D i is hidden and secured by the secret key s in the parameter C I D i = h ( I D i s ) . Therefore, the proposed scheme allows the Server to trace the user.
(6)
Local password verification
The proposed scheme provides wrong password input detection by the smart card during the login phase by checking the value B I D i = h ( h ( I D i ) h p w i ) = B I D i . The incorrect combination of I D i and p w i will be detected before preparing the login request message. Hence, the proposed scheme provides local password verification.
(7)
Local password changeability
The password change/update phase permits the user to modify the password without contacting the Server. Since the smart card can verify the password and identity locally through a remote terminal, it can compute and update the parameters { A I D i * , B I D i * , b ^ i * } . Therefore, the proposed scheme provides efficient local password changeability.

4.3. Resistance to Security Attacks

This section presents the proposed scheme’s ability to withstand several security attacks.
(1)
Offline password-guessing attack
Suppose that an adversary A obtains a lost/stolen smart card S C i and retrieves { A I D i , B I D i , b ^ i } . The adversary A must guess the user U i ’s identity I D i and password p w i to compute b i , h p w i , and B I D i = B I D i = h ( h ( I D i ) h p w i ) . However, according to Assumption A3, it is impossible to guess both I D i and p w i within polynomial time. Hence, the proposed scheme can withstand the offline password-guessing attack.
(2)
Replay attack
By Assumption A1, an adversary A can intercept all of the messages transmitted through the public channel. Since the messages are generated using the random numbers ( r i , r s ) and timestamps ( T i 1 , T i 2 , T s 1 ), the Server S will notice the repeated message submissions. Hence, it is impossible for A to replay intercepted messages. Therefore, the proposed scheme can resist replay attacks.
(3)
Privileged insider attack
In this attack, suppose a privileged insider A as an active adversary who obtains the identity I D i by monitoring data transmitted over a secure channel during the registration phase. In addition, assume that A extracts the values A I D i , B I D i , and b ^ i from a lost/stolen smart card S C i , as in Assumption A2. In the proposed scheme, A cannot launch the password-guessing attack because the password p w i is secured by h p w i = h ( p w i b i ) . The adversary A can try to retrieve the random number b i from b ^ i = h ( I D i p w i ) b i . However, A has to guess both p w i and b i simultaneously within polynomial time, which contradicts Assumption A3. Thus, the proposed scheme can withstand the privileged insider attack.
(4)
Stolen-verifier attack
If an adversary A gains access to the database of registered users, the adversary A can try to extract the I D i of a legal user U i . However, the Server’s database stores the value I D i in C I D i = h ( I D i s ) secured by the collision-resistant one-way hash function. In addition, A also cannot obtain the secret key s since it is protected by ECDLP. It is impossible for A to retrieve I D i . Therefore, the proposed scheme can resist stolen-verifier attacks.
(5)
Key-compromised impersonation attack
Assume an adversary A obtains a compromised or stolen secret key s. Then, the adversary A can try to impersonate a legal user U i to cheat the Server S. Still, the A must first pass the verification check B I D i = B I D i . Furthermore, the A cannot create the login message { D I D i , E I D i , R i , T i 1 } because it is not possible to compute h p w i . Thus, the proposed scheme can withstand the key-compromised impersonation attack.

4.4. Formal Verification Using BAN Logic

This section provides the verification of the mutual authentication property for the proposed scheme using BAN logic [39]. The BAN logic analysis consists of four main steps: (1) defining the verification goals, (2) transforming the proposed scheme to its idealized form, (3) expressing the initial state assumptions, and (4) proving the security goals by using the BAN logic rules as in Table 3.
(1)
Verification goals
First, the BAN logic goals for the proposed scheme are defined and listed as follows.
  • Goal 1: U i ( U i Sk S )
  • Goal 2: U i S U i ( U i Sk S )
  • Goal 3: S ( U i Sk S )
  • Goal 4: S U i ( U i Sk S )
(2)
Idealization of the proposed scheme
Next, the proposed scheme is transformed into the idealized form as follows.
  • Message 1: U i S : I D i M i , ( M i , T i 1 ) T I D i , R i , T i 1
  • Message 2: S U i : R s M i , ( E I D i , R s , T s 1 ) T I D i , T s 1
  • Message 3: U i S : ( R s ) M i , T i 2
(3)
Initial state assumptions
The assumptions made on the initial state of the proposed scheme are listed below.
  • A1: S ( U i M i S ) ;
  • A2: U i ( U i T I D i S ) ;
  • A3: S ( U i T I D i S ) ;
  • A4: U i # ( T s 1 ) ;
  • A5: S # ( T i 1 , T i 2 ) .
(4)
Proof using BAN logic
The security proof analysis is presented based on the goals, initial state assumptions, and BAN logic rules.
  • Step 1: From Message 1, S ( I D i M i , ( M i , T i 1 ) T I D i , R i , T i 1 ) .
  • Step 2: According to Step 1, A3, and applying the message-meaning rule, the statement S U i ( M i , R i , T i 1 ) is deduced.
  • Step 3: By the freshness-conjuncatenation rule and A5 yields, S # ( M i , R i , T i 1 ) .
  • Step 4: From Step 2, Step 3, and the nonce-verification rule, then S U i ( M i , R i , T i 1 ) .
  • Step 5: From Message 3, S ( ( R s ) M i , T i 2 ) .
  • Step 6: Applying the message-meaning rule to Step 5 and A1, then S U i ( R s , T i 2 ) .
  • Step 7: By the freshness-conjuncatenation rule and A5 yields, S # ( R s , T i 2 ) .
  • Step 8: From Steps 6 and 7 using the nonce-verification rule, then S U i ( R s , T i 2 ) .
  • Step 9: By the belief rule, Step 4, and Step 8, S U i ( M i , R i , R s , T i 1 , T i 2 ) .
  • Step 10: From Step 9, A5, and the session key rule, then S ( U i S k S ) (Goal 3).
  • Step 11: From A5, Step 9, Step 10, and the session-key verification rule, then S U i ( U i Sk S ) (Goal 4).
  • Step 12: From Message 2, U i ( R s M i , ( E I D i , R s , T s 1 ) T I D i , T s 1 ) .
  • Step 13: Applying the message-meaning rule, from Step 12 and A2, then the statement U i S ( E I D i , R s , T s 1 ) is obtained.
  • Step 14: By the freshness conjuncatenation rule and A4 yields, U i # ( E I D i , R s , T s 1 ) .
  • Step 15: According to Step 13, Step 14, and applying the nonce verification rule, then U i S ( E I D i , R s , T s 1 ) .
  • Step 16: By the session-key rule, Step 14, and Step 15, then U i ( U i Sk S ) (Goal 1).
  • Step 17: Finally, from A4, Step 15, Step 16, and the session-key verification rule, U i S ( U i Sk S ) (Goal 2).
Based on BAN logic analysis, all of the defined goals are achieved. Therefore, the proposed scheme is demonstrated to provide mutual authentication using the shared session key between U i and S.

5. Performance Analysis

This section explains the performance of the proposed scheme compared to similar schemes and improvements by [29,30,31,32,33]. Since this study focuses on the schemes that have been improved based on Qu and Tan [29], the compared schemes are chosen based on the underlying security of three hard problems in ECC (i.e., ECDLP, ECCDHP, and ECFP) in the general user–server application. Based on the literature search, to the best of the authors’ knowledge, only the works by Huang et al. [30] and Chaudhry et al. [32] fit this scope. The schemes by Maitra et al. [31] and Mehmood et al. [33] are also included in the performance comparison since they proposed enhancements based on Huang et al. [30].
Table 4 summarizes the security goals attainment and resistance to security attacks of every scheme based on the discussions in Section 4. The proposed scheme has been shown to achieve all of the security goals as given in Maitra et al. [31], which are formal security proof, mutual authentication, session key agreement, forward secrecy, user anonymity, user traceability, local password verification, and local password changeability. The proposed scheme has also been shown to withstand replay attacks, offline password-guessing attacks, privileged insider attacks, stolen-verifier attacks, insider attacks, and key-compromised impersonation attacks. Overall, the proposed scheme and Maitra et al. [31] outperformed other considered schemes in terms of security goals attainment. The proposed scheme performs better than all considered schemes based on the resistance to security attacks.
For the computational cost analysis, the approximate running time is based on the performance evaluation by Kilinc and Yanik [41] using the PBC Library [42]. The running times of arithmetic and cryptographic operations were measured using the experimental platform, which is the Ubuntu 12.04.1 LTS 32bit operating system with Intel Pentium Dual CPU E2200 2.20 GHz processor and 2048 MB of RAM. Based on their findings, the order of the time complexity for the elliptic curve point multiplication operation ( T e m ), elliptic curve point addition operation ( T e a ), symmetric encryption/decryption operation ( T s y m ), and hash operation ( T h ) is stated as T e m T e a > T s y m > T h . The estimated running times for T e m , T e a , T s y m , and T h are 2.226 ms, 0.0288 ms, 0.0046 ms, and 0.00023 ms, respectively. The modular multiplication/division operation ( T m ) and the bitwise XOR (⊕) operation recorded negligible running times and are hence ignored.
The computational cost is the total time complexity of operations executed in the user registration, user login, and mutual authentication phases. As shown in Table 5, the proposed scheme requires the computational cost of 7 T e m + 3 T e a + 18 T h and a running time of approximately 15.710 ms. In terms of the number of T e m operations executed, the proposed scheme maintains 7 T e m operations as in Huang et al. [30] and Chaudhry et al. [32], which is four T e m operations less than Maitra et al. [31]. The running times for Qu and Tan [29], Huang et al. [30], Maitra et al. [31], Chaudhry et al. [32], and Mehmood et al. [33] are approximately 20.215 ms, 15.767 ms, 24.521 ms, 15.708 ms, and 9.003 ms, respectively. As seen in Figure 4a, the proposed scheme requires only a 0.02 ms higher running time than Chaudhry et al. [32]. This slight increase in running time is insignificant given that the proposed scheme is more secure than Chaudhry et al. [32] based on Table 4. Furthermore, the proposed scheme’s running time is 8.811 ms less than that of Maitra et al. [31], which is noteworthy considering that both schemes attain the same security goals.
For the smart card storage and message transmission costs analysis, the following assumptions are made. The sizes for the identity I D i , password p w i , and random numbers { b i , r i , r s } are 160 bits each. The hash function outputs { B I D i , b ^ i , E I D i , H s , H i } are 256 bits, assuming the use of the SHA-256 [2] algorithm. The elliptic curve points { A I D i , R i , Z s } are 512 bits each, whereas the x/y-coordinate is 256 bits. The timestamps { T i 1 , T s 1 , T i 2 } are 128 bits.
In the proposed scheme, the parameters { A I D i , B I D i , b ^ i } are stored in the smart card S C i . The storage cost required for the smart card is 512 + 256 + 256 = 1024 bits, which is the highest among other schemes as shown in Figure 4b. The proposed scheme’s storage cost incurs 96 more bits than schemes by [29,30,32,33] since the parameter b ^ i is stored as a hash output to mask the random number b i . Furthermore, the proposed scheme requires a 296-bit higher storage cost than the scheme by Maitra et al. [31] because the parameter A I D i is stored as an elliptic curve point instead of a hash output. Nevertheless, the proposed scheme’s higher storage cost is justified given that the proposed scheme provides better security features than other schemes.
The message transmission cost is the total bit size of the messages { D I D i , E I D i , R i , T i } , { Z s , H s , T s 1 } , and { H i , T i 2 } , which are exchanged during the user login phase and mutual authentication phase. For the proposed scheme, the transmission cost is ( 4 × 256 ) + ( 2 × 512 ) + ( 3 × 128 ) = 2432 bits, which is comparable to that of Maitra et al. [31] and 128 bits lower than [29,30]. However, the proposed scheme’s transmission cost is 384 bits and 512 bits higher than Chaudhry et al. [32] and Mehmood et al. [33], respectively. Note that the proposed scheme and Maitra et al. [31] require clock synchronization, unlike other schemes. Hence, the transmission of timestamps during the login and authentication phases explains the message transmission cost being higher than [32,33], as shown in Figure 4c. Even with timestamps, the proposed scheme and Maitra et al. [31] managed to keep their transmission cost lower than [29,30].
Overall, the computational cost and running time of the proposed scheme are lower than [29,30,31]. In terms of the message transmission cost, the proposed scheme performs the same as Maitra et al. [31]. As the proposed scheme maintains all of the hard problems (ECDLP, ECCDHP, and ECFP) of Qu and Tan [29] and attains all of the security goals of Maitra et al. [31] as shown in Table 5, the higher smart card storage cost is an acceptable trade-off. In conclusion, the proposed scheme is better than all considered schemes.

6. Applications

In the future, it is suggested to investigate the applicability of adopting the three hard problems, i.e., ECDLP, ECCDHP, and ECFP, in developing user/client identification and authentication cryptographic schemes in distributed computer networks [43,44,45]. The integration of distributed computer networks with physical and social systems has evolved tremendously to many applications in cyber–physical systems and cyber–physical social systems. These systems connect many low-powered devices, such as smart mobile applications and wireless sensor nodes, that are deployed in unsupervised environments. The communication and data sharing between the physical components and cyber components demand attention toward security requirements and privacy issues [46,47]. ECC is favored in many public-key-based cryptographic schemes due to its efficiency; hence, it is important to study the feasibility of implementing three hard problems (ECDLP, ECCDHP, and ECFP) in designing secure and efficient schemes.

7. Conclusions

This study highlighted several drawbacks of the scheme by Chaudry et al. The aim of this study was to propose an ECC-based two-factor remote authentication scheme with a session key agreement based on Chaudhry et al.’s scheme to solve these drawbacks. The proposed scheme is provably secure under the ROM using the formal definitions of ECDLP, ECCDHP, and ECFP. Based on the security and performance analyses with other previous schemes, the proposed scheme offers better security attributes and is more efficient in terms of the computational cost and running time. Future work is suggested to build better identification and authentication schemes based on the same hard problems (ECDLP, ECCDHP, and ECFP) for applications in cyber–physical systems.

Author Contributions

Conceptualization, E.S.I.; methodology, F.S.; validation, E.S.I.; formal analysis, F.S.; writing—original draft preparation, F.S.; writing—review and editing, E.S.I.; visualization, F.S.; supervision, E.S.I.; funding acquisition, E.S.I. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by UKM grant number GUP-2020-029.

Data Availability Statement

The data presented in this study is contained within the article.

Acknowledgments

The authors deeply appreciate all of the comments and suggestions from the anonymous reviewers and the editor for improving the paper. The authors would like to thank Universiti Kebangsaan Malaysia, Universiti Teknologi MARA Malaysia, and the Ministry of Higher Education, Malaysia, for providing the facilities and financial support to conduct this research. Sincere thanks to Alena Lee Sanusi and Aziana Ismail for taking the time to proofread our paper.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Lamport, L. Password authentication with insecure communication. Commun. ACM 1981, 24, 770–772. [Google Scholar] [CrossRef] [Green Version]
  2. NIST. FIPS 180-4 Secure Hash Standard (SHS); Technical Report; National Institute of Standard and Technology: Gaithersburg, MD, USA, 2015. [Google Scholar]
  3. Wang, X.M.; Zhang, W.F.; Zhang, J.S.; Khan, M.K. Cryptanalysis and improvement on two efficient remote user authentication scheme using smart cards. Comput. Stand. Interfaces 2007, 29, 507–512. [Google Scholar] [CrossRef]
  4. Chaudhry, S.A.; Farash, M.S.; Naqvi, H.; Kumari, S.; Khan, M.K. An enhanced privacy preserving remote user authentication scheme with provable security. Secur. Commun. Netw. 2015, 8, 3782–3795. [Google Scholar] [CrossRef]
  5. Madhusudhan, R.; Hegde, M. Cryptanalysis and improvement of remote user authentication scheme using smart card. In Proceedings of the 2016 International Conference on Computer and Communication Engineering (ICCCE), Kuala Lumpur, Malaysia, 26–27 July 2016; IEEE: Piscataway, NJ, USA, 2016; pp. 84–89. [Google Scholar]
  6. Rivest, R.L.; Shamir, A.; Adleman, L. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef] [Green Version]
  7. Diffie, W.; Hellman, M. New directions in cryptography. IEEE Trans. Inf. Theory 1976, 22, 644–654. [Google Scholar] [CrossRef] [Green Version]
  8. Miller, V.S. Use of elliptic curves in cryptography. In Proceedings of the Conference on the Theory and Application of Cryptographic Techniques, Linz, Austria, 9–11 April 1985; Springer: Berlin/Heidelberg, Germany, 1985; pp. 417–426. [Google Scholar]
  9. Koblitz, N. Elliptic curve cryptosystems. Math. Comput. 1987, 48, 203–209. [Google Scholar] [CrossRef]
  10. Gura, N.; Patel, A.; Wander, A.; Eberle, H.; Shantz, S.C. Comparing elliptic curve cryptography and RSA on 8-bit CPUs. In Proceedings of the International Workshop on Cryptographic Hardware and Embedded Systems, Cambridge, MA, USA, 11–13 August 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 119–132. [Google Scholar]
  11. Juang, W.S.; Chen, S.T.; Liaw, H.T. Robust and efficient password-authenticated key agreement using smart cards. IEEE Trans. Ind. Electron. 2008, 55, 2551–2556. [Google Scholar] [CrossRef]
  12. Fan, C.I.; Chan, Y.C.; Zhang, Z.K. Robust remote authentication scheme with smart cards. Comput. Secur. 2005, 24, 619–628. [Google Scholar] [CrossRef]
  13. Sun, D.Z.; Huai, J.P.; Sun, J.Z.; Li, J.X.; Zhang, J.W.; Feng, Z.Y. Improvements of Juang et al.’s password-authenticated key agreement scheme using smart cards. IEEE Trans. Ind. Electron. 2009, 56, 2284–2291. [Google Scholar]
  14. Li, X.; Qiu, W.; Zheng, D.; Chen, K.; Li, J. Anonymity enhancement on robust and efficient password-authenticated key agreement using smart cards. IEEE Trans. Ind. Electron. 2010, 57, 793–800. [Google Scholar]
  15. He, D.; Chen, J.; Hu, J. Further improvement of Juang et al.’s password-authenticated key agreement scheme using smart cards. Kuwait J. Sci. Eng. 2011, 38, 55–68. [Google Scholar]
  16. Li, X.; Zhang, Y. A simple and robust anonymous two-factor authenticated key exchange protocol. Secur. Commun. Netw. 2013, 6, 711–722. [Google Scholar] [CrossRef]
  17. Jiang, Q.; Ma, J.; Li, G.; Yang, L. Robust two-factor authentication and key agreement preserving user privacy. Int. J. Netw. Secur. 2014, 16, 229–240. [Google Scholar]
  18. Liu, C.; Ma, C.G. An efficient and provable secure PAKE scheme with robust anonymity. In Proceedings of the International Conference on Information Computing and Applications, Chengde, China, 14–16 September 2012; Springer: Berlin/Heidelberg, Germany, 2012; pp. 722–729. [Google Scholar]
  19. Tsai, J.L.; Lo, N.W.; Wu, T.C. Novel anonymous authentication scheme using smart cards. IEEE Trans. Ind. Inform. 2012, 9, 2004–2013. [Google Scholar] [CrossRef]
  20. Byun, J.W. On the secure design of hash-based authenticator in the smartcard authentication system. Wirel. Pers. Commun. 2019, 109, 2329–2352. [Google Scholar] [CrossRef]
  21. Wang, R.C.; Juang, W.S.; Lei, C.L. Robust authentication and key agreement scheme preserving the privacy of secret key. Comput. Commun. 2011, 34, 274–280. [Google Scholar] [CrossRef]
  22. Wu, S.; Zhu, Y.; Pu, Q. Robust smart-cards-based user authentication scheme with user anonymity. Secur. Commun. Netw. 2012, 5, 236–248. [Google Scholar] [CrossRef]
  23. Chang, C.C.; Lin, I.C.; Wu, C.C. A multipurpose key agreement scheme in ubiquitous computing environments. Mob. Inf. Syst. 2015, 2015, 934716. [Google Scholar] [CrossRef] [Green Version]
  24. Wang, L. Analysis and enhancement of a password authentication and update scheme based on elliptic curve cryptography. J. Appl. Math. 2014, 2014, 247836. [Google Scholar] [CrossRef]
  25. Islam, S.H.; Biswas, G. Design of improved password authentication and update scheme based on elliptic curve cryptography. Math. Comput. Model. 2013, 57, 2703–2717. [Google Scholar] [CrossRef]
  26. Odelu, V.; Das, A.K.; Goswami, A. An efficient ECC-based privacy-preserving client authentication protocol with key agreement using smart card. J. Inf. Secur. Appl. 2015, 21, 1–19. [Google Scholar] [CrossRef]
  27. Madhusudhan, R.; Hegde, M.; Memon, I. A secure and enhanced elliptic curve cryptography-based dynamic authentication scheme using smart card. Int. J. Commun. Syst. 2018, 31, e3701. [Google Scholar]
  28. Kumari, A.; Jangirala, S.; Abbasi, M.Y.; Kumar, V.; Alam, M. ESEAP: ECC based secure and efficient mutual authentication protocol using smart card. J. Inf. Secur. Appl. 2020, 51, 102443. [Google Scholar] [CrossRef]
  29. Qu, J.; Tan, X.L. Two-factor user authentication with key agreement scheme based on elliptic curve cryptosystem. J. Electr. Comput. Eng. 2014, 2014, 16. [Google Scholar] [CrossRef] [Green Version]
  30. Huang, B.; Khan, M.K.; Wu, L.; Muhaya, F.T.B.; He, D. An efficient remote user authentication with key agreement scheme using elliptic curve cryptography. Wirel. Pers. Commun. 2015, 85, 225–240. [Google Scholar] [CrossRef]
  31. Maitra, T.; Obaidat, M.S.; Islam, S.H.; Giri, D.; Amin, R. Security analysis and design of an efficient ECC-based two-factor password authentication scheme. Secur. Commun. Networks 2016, 9, 4166–4181. [Google Scholar] [CrossRef] [Green Version]
  32. Chaudhry, S.A.; Naqvi, H.; Mahmood, K.; Ahmad, H.F.; Khan, M.K. An improved remote user authentication scheme using elliptic curve cryptography. Wirel. Pers. Commun. 2017, 96, 5355–5373. [Google Scholar] [CrossRef]
  33. Mehmood, Z.; Chen, G.; Li, J.; Albeshri, A. An untraceable ECC-based remote user authentication scheme. KSII Trans. Internet Inf. Syst. (TIIS) 2017, 11, 1742–1760. [Google Scholar]
  34. Dolev, D.; Yao, A. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
  35. Kocher, P.; Jaffe, J.; Jun, B. Differential power analysis. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 15–19 August 1999; Springer: Berlin/Heidelberg, Germany, 1999; pp. 388–397. [Google Scholar]
  36. 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] [Green Version]
  37. Sood, S.K.; Sarje, A.K.; Singh, K. Cryptanalysis of password authentication schemes: Current status and key issues. In Proceedings of the 2009 International Conference on Methods and Models in Computer Science (ICM2CS), New Delhi, India, 14–15 December 2009; IEEE: Piscataway, NJ, USA, 2009; pp. 1–7. [Google Scholar]
  38. Wu, F.; Xu, L.; Kumari, S.; Li, X.; Alelaiwi, A. A new authenticated key agreement scheme based on smart cards providing user anonymity with formal proof. Secur. Commun. Netw. 2015, 8, 3847–3863. [Google Scholar] [CrossRef]
  39. Burrows, M.; Abadi, M.; Needham, R.M. A logic of authentication. Proc. R. Soc. Lond. Math. Phys. Sci. 1989, 426, 233–271. [Google Scholar]
  40. Sowjanya, K.; Dasgupta, M.; Ray, S. An elliptic curve cryptography based enhanced anonymous authentication protocol for wearable health monitoring systems. Int. J. Inf. Secur. 2020, 19, 129–146. [Google Scholar] [CrossRef]
  41. Kilinc, H.H.; Yanik, T. A survey of SIP authentication and key agreement schemes. IEEE Commun. Surv. Tutorials 2013, 16, 1005–1023. [Google Scholar] [CrossRef]
  42. Lynn, B. The Pairing-Based Cryptography (PBC) Library. Available online: https://crypto.stanford.edu/pbc/ (accessed on 30 September 2022).
  43. Tsai, J.L. Weaknesses and improvement of Hsu-Chuang’s user identification scheme. Inf. Technol. Control 2010, 39, 48–50. [Google Scholar]
  44. Chang, C.C.; Lee, C.Y. A secure single sign-on mechanism for distributed computer networks. IEEE Trans. Ind. Electron. 2011, 59, 629–637. [Google Scholar] [CrossRef]
  45. Chen, Y.C.; Liu, C.L.; Horng, G. Cryptanalysis of some user identification schemes for distributed computer networks. Int. J. Commun. Syst. 2014, 27, 2909–2917. [Google Scholar] [CrossRef]
  46. Ghaffar, Z.; Ahmed, S.; Mahmood, K.; Islam, S.H.; Hassan, M.M.; Fortino, G. An improved authentication scheme for remote data access and sharing over cloud storage in cyber-physical-social-systems. IEEE Access 2020, 8, 47144–47160. [Google Scholar] [CrossRef]
  47. Lu, Y.; Wang, D.; Obaidat, M.S.; Vijayakumar, P. Edge-assisted intelligent device authentication in cyber-physical systems. IEEE Internet Things J. 2022, 1–14. [Google Scholar] [CrossRef]
Figure 1. Architecture of two-factor remote authentication with multiple users and a single server.
Figure 1. Architecture of two-factor remote authentication with multiple users and a single server.
Mathematics 11 00005 g001
Figure 2. Scheme by Chaudhry et al. [32] based on ECC.
Figure 2. Scheme by Chaudhry et al. [32] based on ECC.
Mathematics 11 00005 g002
Figure 3. The proposed ECC-based remote user password authentication scheme.
Figure 3. The proposed ECC-based remote user password authentication scheme.
Mathematics 11 00005 g003
Figure 4. Comparisons of ECC-based schemes’ performance in terms of (a) running time; (b) smart card storage cost; (c) message transmission cost.
Figure 4. Comparisons of ECC-based schemes’ performance in terms of (a) running time; (b) smart card storage cost; (c) message transmission cost.
Mathematics 11 00005 g004
Table 1. Notations and descriptions.
Table 1. Notations and descriptions.
NotationDescriptionNotationDescription
SServerPBase point on G p of order n such that [ n ] P = O and n is the smallest integer > 0
U i User i Z n * Multiplicative group mod n
A AdversarysSecret key, random integer such that s Z n *
I D i U i ’s identity P p u b Public key, P p u b = [ s ] P G p
p w i U i ’s password h ( · ) One-way hash function, h : { 0 , 1 } * Z n *
S C i U i ’s smart cardSecure channel
pk-bit prime number, k is at least 512 bitsPublic channel
E ( F p ) The set of points on an elliptic curve over a finite field F p String concatenation operation
G p Additive cyclic subgroup of E ( F p ) , where G p = E ( F p ) { O } Bitwise XOR operation
O The point at infinity that is an identity element of E ( F p )
Table 2. BAN logic notations and descriptions.
Table 2. BAN logic notations and descriptions.
NotationDescription
P X P believes X
P X P sees X
P X P once said X
# ( X ) Message X is fresh
X Y Formula X is combined with secret Y
( X ) Y Formula X hashed with secret Y
P K Q P and Q communicate with a shared secret key K
P X Q Only P and Q share the formula X which is a secret
Table 3. BAN logic rules, descriptions, and symbolic forms.
Table 3. BAN logic rules, descriptions, and symbolic forms.
RuleDescriptionSymbolic Form
Message-meaning ruleIf P sees X K and P believes secret K is shared with Q, then P believes Q once said X.
P X K , P ( P K Q ) P Q X
Freshness-conjuncatenation ruleIf P believes X is fresh, then P believes ( X , Y ) is fresh.
P # ( X ) P # ( X , Y )
Nonce-verification ruleIf P believes X is fresh and P believes Q once said X, then P believes Q believes X.
P # ( X ) , P Q X P Q X
Belief ruleIf P believes X and P believes Y, then P believes ( X , Y ) .
P X , P Y P ( X , Y )
Session-key ruleIf P believes Q believes a necessary parameter X of the session key K and P believes X is fresh, then P believes session key K is shared with Q.
P Q X , P # ( X ) P ( P K Q )
Session-key verification rule [40]If P believes that X is fresh and P believes Q believes X and P believes session key K is shared with Q, then P believes Q believes session key K is shared between P and Q.
P # ( X ) , P Q X , P ( P K Q ) P Q ( P K Q )
Table 4. Attainment of security goals and resistance to security attacks of the proposed scheme and other similar schemes.
Table 4. Attainment of security goals and resistance to security attacks of the proposed scheme and other similar schemes.
Schemes
ProposedQu and TanHuang et al.Maitra et al.Chaudhry et al.Mehmood et al.
[29][30][31][32][33]
Attainment of security goals
Formal security proof
Mutual authentication
Session key agreement
Forward secrecy
User anonymity
User traceability
Local password verification
Local password changeability
Resistance to security attacks
Replay attack
Offline password-guessing attack
Privileged insider attack
Stolen-verifier attack
Key-compromised impersonation attack
(): Yes; (): Not disscussed.
Table 5. Computational cost for executed operations in the proposed scheme and other similar schemes.
Table 5. Computational cost for executed operations in the proposed scheme and other similar schemes.
SchemesComputational CostRunning Time
Proposed7 T e m + 3 T e a + 18 T h ≈ 15.710 ms
Qu and Tan [29]9 T e m + 5 T e a + 16 T h ≈ 20.215 ms
Huang et al. [30]7 T e m + 5 T e a + T m + 18 T h ≈ 15.767 ms
Maitra et al. [31]11 T e m + 2 T m + 15 T h ≈ 24.521 ms
Chaudhry et al. [32]7 T e m + 3 T e a + 2 T m + 17 T h ≈ 15.708 ms
Mehmood et al. [33]4 T e m + 2 T e a + 3 T m + 2 T s y m + 14 T h ≈ 9.003 ms
T e m : Elliptic curve multiplication operation, T e a : Elliptic curve point addition operation, T m : Modular multiplication/division operation, T s y m : Symmetric encryption/decryption operation, T h : Hash operation.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Shohaimay, F.; Ismail, E.S. Improved and Provably Secure ECC-Based Two-Factor Remote Authentication Scheme with Session Key Agreement. Mathematics 2023, 11, 5. https://doi.org/10.3390/math11010005

AMA Style

Shohaimay F, Ismail ES. Improved and Provably Secure ECC-Based Two-Factor Remote Authentication Scheme with Session Key Agreement. Mathematics. 2023; 11(1):5. https://doi.org/10.3390/math11010005

Chicago/Turabian Style

Shohaimay, Fairuz, and Eddie Shahril Ismail. 2023. "Improved and Provably Secure ECC-Based Two-Factor Remote Authentication Scheme with Session Key Agreement" Mathematics 11, no. 1: 5. https://doi.org/10.3390/math11010005

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