Keywords

1 Introduction

It’s easy to access Internet resources in the cloud environment. In order to protect the users could have the access right to obtain the resources provided by the remote server, the remote user authentication schemes were proposed [1,2,3,4,5,6,7,8,9,10,11]. Furthermore, it’s also important to protect the legal users’ privacy and confidentiality. To authenticate a user from Internet, many user authentication schemes had been proposed in past decades. Many schemes were applied a smart card to authenticate the legal users [12,13,14,15,16,17,18,19,20,21]. One of these schemes was developed for multi-servers [22,23,24,25,26,27]. One of these schemes was developed for biometrics [28,29,30]. One of these schemes was applied passwords for generating session key [31, 32].

In 2012, Li, Liu, and Wu proposed a secure remote user authentication to withstand the spoofing attack, forgery attack, and password guessing attack [33]. Unfortunately, Feng, Chao, and Hwang found the security of Li-Liu-Wu’s scheme was vulnerable to password guessing attacks [34]. In 2012, Yoon et al. proposed an efficient remote user authentication scheme [35]. Unfortunately, Chen, Liang, and Hwang found their scheme is insecure to against the password guessing attack [36]. In 2014, Huang, Chang, Yu proposed a user authentication scheme which is based on timestamp [37]. Huabg et al. claimed their scheme could withstand the impersonated attack and more secure than other schemes. However, Feng, Liang, Hwang found that their scheme was vulnerable to the legal user’s smart card and password guessing attack [38].

Recently, Hou and Wang proposed a robust and efficient user authentication scheme based on elliptic curve cryptosystem [39]. Hou-Wang’s scheme is practical. They claimed that their scheme could against the off-line password guessing, DoS, spoofing, replay, parallel session, and impersonation attacks. In this article, we will show that Hou-Wang’s scheme is vulnerable to the guessing attack with smart card. In this article, we also propose an improved Hou-Wang’s user authentication scheme to withstand the vulnerability in their scheme.

2 Review of Hou-Wang Scheme

There are two main participants in Hou-Wang’s scheme: a user Ui and server S [39]. We briefly describe Hou-Wang’s scheme as follows.

The Registration Phase. In this registration phase, a new user (Ui) needs to apply to the server for as a legal user. After the phase, the server will make and issue a smart card for the new user (Ui). The smart card contains the following five parameters: {Bi, H(), G, Ek(), and Dk()}, here Bi = EAi(H(x || ni) || niG); Ai = H(IDi || PWi); where H() denotes a hash function; IDi and PWi denote an identity and password of the new user, respectively. x and ni denote a server’s master secret key and a random number for Ui, respectively. G denotes a public base point of elliptic curve; Ek() and Dk() denote an enciphering and deciphering algorithms with the secret key k, respectively. The server S maintains and keeps a registration table with two columns: H(IDi ⊕ x)G and ni.

The Login Phase. In this phase, when the user (Ui) wants to have the access right to obtain the resources provided by the remote server, Ui keys in his/her identity (IDi) and password (PWi) to the client devise with smart card. The smart card sends {Ci, Di} to the server S: Ai = H(IDi || PWi); Bi = EAi(H(x || ni) || niG); H(x || ni) || niG = DAi(Bi); Ci = t G; Ki = t Pubs; Di = EKi(IDi || H(x || ni)), where t denotes a random nonce in Zp*. Pubs is the server’s public key, Pubs = x G.

The Authentication and Session Key Exchange Phase. In this authentication and session key exchange phase, the server (S) verifies Ui as follows.

  1. (1)

    After receiving {Ci, Di}, the server calculates and obtains the deciphering key Ki, Ui, and H(x || ni) as follows: K’i = x Ci; ID’i || H(x’ || n’i) = DK’i(Di). Next, S computes H(ID’i ⊕ x)G and retrieves the random number ni of Ui from the registration table. 

  2. (2)

    S computes H(x || ni) and then verifies H(x || ni) is whether or not equal to H(x’ || n’i). If it is not holds, S terminates this phase. Next, S sends {Ei, Fi} to Ui, where Ei = s G; Fi = s Ci + niG, where s denotes a random nonce in Zp*.

  3. (3)

    The smart card checks Ei and Fi. The server also authenticates the legal user. Finally, the server and smart card share the session key SK = stG.

3 The Weakness and the Improved of Hou-Wang Scheme

In this section, we show the weakness of Hou-Wang’s remote user authentication scheme [39]. The main weakness of Hou-Wang’s scheme is that their scheme could not against the on-line password guessing attack with user’s smart card (SC for short). A user Ui’s smart card may be lost or stolen by an adversary. The adversary could try to guess the user’s password.

  1. (1)

    The adversary inserts the user Ui’s smart card to his/her client device. Next, the adversary keys in the identity of the user Ui and guesses a password PW’i.

  2. (2)

    SC sends {Ci, Di} to the server S: A’i = H(IDi || PW’i); Bi = EAi(H(x || ni) || niG); H’(x || ni) || n’iG = DA’i(Bi); Ci = t G; Ki = t Pubs; Di = EKi(IDi || H’(x || ni)).

  3. 3)

    The server performs Steps (1) and (2) in the authentication and session key exchange phase to verify the user (adversary) legally. If the guessing password by the adversary is correct, the adversary will receive {Ei, Fi} from the server. Otherwise, the adversary guesses the other password PW’i and repeats Step (1).

In order to improve the weakness of Hou-Wang’s remote user authentication scheme, we propose an improvement of Hou-Wang’s scheme in this section. The password changing and the smart revocation phases are the same as that in Hou-Wang’s scheme.

The Registration Phase. In this phase, a new user (Ui) needs to apply to the server for as a legal user. After the phase, the server will make and issue a smart card for Ui. The smart card contains {Bi, H(), G, Ek(), and Dk()}, where Bi = EAi(H(x || ni) || niG); Ai = H(IDi || PWi). The server S maintains and keeps a registration table with three columns: H(IDi ⊕ x)G, ni, and counter (see Table 1). The counter is used to record the times of failing to login the server.

Table 1 The registration table

The Login Phase. This phase is similar to that of Hou-Wang scheme. In this phase, when Ui wants to have the access right to obtain the resources provided by the remote server, Ui keys in his/her identity (IDi) and inputs his/her password (PWi) to the client devise with smart card. The smart card sends {Ci, Di} to the server S: Ai = H(IDi || PWi); H(x || ni) || niG = DAi(Bi); Ci = t G; Ki = t Pubs; Di = EKi(IDi || H(x || ni)).

The Authentication and Session Key Exchange Phase. In this authentication and session key exchange phase, S verifies Ui as follows (see Fig. 1).

Fig. 1
figure 1

The authentication and session key exchange phase of our scheme

  1. (1)

    After receiving {Ci, Di}, the server calculates and obtains the deciphering key Ki, the Ui identity, and H(x || ni) as follows: K’i = x Ci; ID’i || H(x’ || n’i) = DK’i(Di).

  2. (2)

    S computes H(ID’i ⊕ x)G and retrieves the random number ni of Ui from Table 1.

  3. (3)

    S computes H(x || ni) and then verifies H(x || ni) is whether or not equal to H(x’ || n’i). If it is not holds, the server stops this procedure and adds 1 to the counter in Table 1. If the counter is greater than 3, the server removes the user’s information from registration table. The user needs to re-makes a registration for sharing the server’s resource.

  4. (4)

    The server S sends {Ei, Fi} to the user Ui, where Ei = s G; Fi = s Ci + ni G, where s denotes a random nonce in Zp*.

  5. (5)

    The smart card computes F’i = tEi + ni and then checks F’i is whether or not equal to Fi. If it holds, computes and sends the verification message Ri to the server: Ri = H(tEi || Ei || Ci).

  6. (6)

    The server computes R’i = H(sCi || Ei || Ci) and checks R’i whether equal to Ri. If it holds, S thus authenticates the legal user.

  7. (7)

    The server and the smart card share the session key SK = stG.

Subsequent paragraphs, however, are indented.

4 Conclusions

In summary, we have shown that the weakness of Hou-Wang’s remote user authentication scheme. Hou-Wang’s scheme could not against the on-line password guessing attack with smart card. In this article, we also proposed an improvement of Hou-Wang’s remote user authentication scheme to improve the weakness in Hou-Wang’s scheme.