Printer Friendly

Security enhanced anonymous multiserver authenticated key agreement scheme using smart cards and biometrics.

1. Introduction

With the rapid growth of internet technology, a system providing various services using the network often consists of many different servers around the world. The distribution of the remote system hardware allows its users to access resources efficiently and conveniently. In multiple server environments, an authentication mechanism is required to achieve a high level of security [1]. Lamport [2] first proposed a password authentication scheme for communication through an insecure channel. However, Lamport's scheme requires the server to manage a password table and is, thus, vulnerable to stolen-verifier attacks. To resist this attack, several researchers proposed improved password-based authentication schemes using smart cards. But, these schemes are still easily broken by simple dictionary attacks due to the low entropy of passwords and because the information stored in smart cards could be extracted by physically monitoring power consumption [3, 4]. Therefore, many other researchers have combined users' biometrics and passwords to enhance the security of their user authentication schemes for multiserver environments; see, for example, references [5-7] for earlier work in this domain. Every human being has a different biometrics, and thus, it is difficult for the adversary to compute the biometric information [8, 9].

Relatively recently, D. Yang and B. Yang [10] and Yoon and Yoo [11] independently introduced a biometric-based multiserver authentication scheme. But, these schemes still do not consider user anonymity which has been identified as a major security property for privacy protection in many applications, including location-based services, anonymous web browsing, e-voting, and mobile roaming services. Moreover, D. Yang and B. Yang's scheme requires users to perform expensive exponentiation operations, while Yoon and Yoo's scheme, as demonstrated by He [12], is vulnerable to a privileged insider attack, a masquerade attack, and a stolen smart card attack.

Recently, Chuang and Chen [13] proposed an anonymous multiserver authenticated key agreement scheme to address the weaknesses in the D. Yang and B. Yang's scheme [10] and the Yoon-Yoo scheme [11]. This scheme is based on nonces and is very efficient in that it only requires users to perform hash function evaluations. Chuang and Chen claimed that their scheme satisfies all the desired security-related properties: anonymity, absence of verification tables, mutual authentication, resistance to forgery attack, resistance to modification attacks, resistance to replay attacks, fast error detection, resistance to off-line guessing attacks, resistance to insider attacks, simple and secure password choice and modification, biometric template protection, and session key agreement. However, we found that Chuang and Chen's scheme has various security problems. According to our analysis given in this paper, Chuang and Chen's scheme is vulnerable to a masquerade attack, a smart card attack, a user impersonation attack, and a denial-of-service (DoS) attack and does not achieve perfect forward secrecy. To solve these security problems with Chuang and Chen's scheme, we propose an improved anonymous multiserver authenticated key agreement scheme using a smart card together with biometrics and passwords.

The remainder of this paper is organized as follows. Section 2 describes security and efficiency requirements for anonymous user authentication schemes in multiserver environments. Section 3 briefly reviews Chuang and Chen's authentication scheme, while Section 4 provides a detailed security analysis on the scheme. Section 5 presents our security-enhanced authentication scheme and shows how the security weaknesses of Chuang and Chen's scheme are addressed in our scheme. Section 6 analyzes our scheme in terms of both security and efficiency Section 7 concludes the paper.

2. Requirements for Multiserver Authentication Schemes

Most conventional password authentication methods, when they are deployed in a multiple server environment, require each network user not only to log into various remote servers repetitively but also to remember many sets of identities and passwords. Such inefficiency and complexity easily lead to the exposure of users' identities and passwords and necessarily make it difficult to manage the shared secret keys among the involved participants. Moreover, those conventional authentication methods usually do not provide user anonymity. In contrast, an anonymous multiserver authentication scheme is designed to allow users to be authenticated by multiple servers via only one registration with the registration center [1]. Figure 1 shows a framework of an anonymous user authentication system in a multiserver environment.

2.1. Security Properties. Various security requirements for a multiserver authentication scheme have been suggested in the previous studies [1, 7, 10, 13-24]. The most essential security properties include the following.

(S1) Anonymity: anonymity is of increasing importance and is achieved when the user's identity is not disclosed to an unauthorized party.

(S2) Mutual authentication: mutual authentication means that the two parties, user and server, authenticate each other. That is, both user and server are assured of each other's identity.

(S3) Session key agreement: the user and server securely agree on a session key to be used for protecting their subsequent communications.

(S4) Perfect forward secrecy: perfect forward secrecy means that a session key derived from a set of long-term keys will not be compromised if one of the long-term keys is compromised in the future.

2.2. Attack Resistance. To achieve these security properties, a multiserver authentication scheme has to resist various kinds of attacks. The most typical attacks include the following

(A1) Replay attack: an adversary intercepts data transmissions for the purpose of making use of that data in some manner. Typically, this type of attack involves copying and possibly altering the data in various ways before releasing it for delivery to the intended recipient.

(A2) Modification attack: an adversary intercepts the authentication message and attempts to modify it for illegal authentication.

(A3) Stolen-verifier attack: an adversary steals the password-verifier from the server and directly uses it to masquerade as a legitimate user.

(A4) Off-line guessing attack: an adversary guesses a password and verifies it in an off-line environment. The information stored in the smart card is often used in such an attack.

(A5) Forgery attack: a malicious yet legitimate user attempts to forge an authentication message of another legitimate user.

(A6) Insider attack: an insider attack literally means an attack mounted by a malicious insider. Malicious insiders have a distinct advantage over external adversaries because they have an authorized system access and also may be familiar with the network architecture and system policies/procedures. Typically, malicious insiders want to acquire users' private information such as their password and biometrics.

(A7) Masquerade attack: an adversary is authenticated by the server using a fake user ID.

(A8) Smart card attack: an adversary is authenticated by the server by using only the information obtained from a user's smart card but without the password or biometrics of the user.

(A9) User impersonation attack: an adversary impersonates a legitimate user using only the user's smart card but without the password or biometric of the user.

(A10) DoS Attack. A DoS attackis any event that diminishes or eliminates a network's capability of performing its expected function. In other words, an adversary mounts a DoS attack to make the server unavailable.

2.3. Efficiency Measures. Efficiency is an important consideration in evaluating any schemes or protocols. The efficiency of a multiserver authentication scheme can be measured by the following metrics.

(E1) Single registration: a single point of registration ought to allow users to gain access to all the servers in the system.

(E2) Simple and secure password modification: the system should allow users to choose and change their passwords easily and securely. In other words, each user should be able to change their passwords without the help of any third trusted party once the authenticity of the user is verified by its smart card.

(E3) Fast error detection: the smart card needs to check the user's incorrect password or any other discrepancy quickly.

(E4) Low computational cost: the computational cost incurred by the scheme should be minimized for the participants.

3. A Review of Chuang and Chen's Scheme

This section describes Chuang and Chen's anonymous multiserver authenticated key agreement scheme which involves four phases: server registration, user registration, login and authentication, and password change. For convenience, the notations used throughout this paper are summarized in Notation Section.

3.1. The Server Registration Phase. The application server sends the RC a join message if it would like to become an authorized server. Then, the RC replies with the key (PSK) to the server through a secure channel. And then, the authorized server uses the PSK to check the user's authentication message. If the server needs to obtain the PSK from the RC to perform the authentication phase every session, authentication delay and the communication cost between the RC and the servers will increase substantially, but this scheme and proposed scheme register only once so they are efficient.

3.2. The User Registration Phase. For a user [user.sub.i], this phase is performed only once when [user.sub.i] registers itself with the registration center RC.

(1) [user.sub.i] chooses his identity [UID.sub.i] and password [PW.sub.i] freely and inputs his biometrics [BIO.sub.i] and sends the identity [user.sub.i] and h([PW.sub.i] [direct sum] [BIO.sub.i]) to RC via a secure channel.

(2) RC computes [A.sub.i] = h([UID.sub.i][parallel]x) and [B.sub.i] = [h.sup.2]([UID.sub.i][parallel]x) = h([A.sub.i]) and [C.sub.i] = h([PW.sub.i][parallel][BIO.sub.i]) [direct sum] [B.sub.i] and [D.sub.i] = PSK [direct sum] [A.sub.i] and issues [user.sub.i] a smart card loaded with <[UID.sub.i], h(), [B.sub.i], [C.sub.i], [D.sub.i]>.

3.3. The Login and Authentication Phase. In this phase, [user.sub.i] logs in to the smart card and is authenticated by [server.sub.j]. In login phase, is executed to check the user's legality. The smart card can detects an error event immediately using the user's identification, password, and biometrics information. And then, the smart card computes <[AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i]> for the authentication. In authentication phase, the smart card sends authentication messages to the [server.sub.j] after the [user.sub.i] finishes the login phase successfully. The smart card never send user's real identity to execute the authentication phase for providing the user's anonymity. During the phase, the session-key establishment is conducted between [user.sub.i] and [server.sub.j]. Algorithm 1 depicts how the login and authentication phase works.

3.4. The Password Change Phase. One of the general guidelines to get better password security is to ensure that passwords are changed at regular intervals. Chuang and Chen's scheme allows legitimate users to freely change their passwords:

(1) [user.sub.i] inserts his smart card into a card reader and enters both the current password [PW.sub.i] and the new password [PW.sup.*.sub.i].

(2) The smart card checks [UID.sub.i] and h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [C.sub.i] = [B.sub.i].

(3) The smart card computes [C.sup.*.sub.i] = [C.sub.i] [direct sum] h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] h([PW.sup.*.sub.i] [direct sum] [BIO.sub.i]) and replaces [C.sub.i] with [C.sup.*.sub.i].

ALGORITHM 1: Login and authentication phase of Chuang and Chen's
scheme.

[User.sub.i]Smart card[Server.sub.j]

enters [UID.sub.i] and
  [PW.sub.i]
inputs [BIO.sub.i]
   using sensors

<[UID.sub.i], [PW.sub.i], [BIO.sub.i])
          [right arrow]

         checks [UID.sub.i]
   checks h([PW.sub.i] [direct sum]
                [BIO.sub.i]) [direct sum]
                  [C.sub.i] = [B.sub.i]
         generates [N.sub.1]
        [M.sub.1] = h([B.sub.i])
                 [direct sum] [N.sub.1]
  [AUID.sub.i] = h([N.sub.1])
               [direct sum] [UID.sub.i]
         [M.sub.2] = h([N.sub.1][parallel]
             [AUID.sub.i][parallel][D.sub.i])

<[AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i])
                  [right arrow]

                                                 [A.sub.i] = [D.sub.i]
                                                      [direct sum] PSK
                                    [N.sub.1] = [M.sub.1] [direct sum]
                                                  [h.sup.2]([A.sub.i])
      checks h([N.sub.1][parallel][AUID.sub.i]
                                      [parallel][D.sub.i]) = [M.sub.2]
                           generates [N.sub.2]
 [SK.sub.ij] = h([N.sub.1][parallel][N.sub.2])
            [M.sub.3] = [N.sub.2] [direct sum]
                                                  [h.sup.2]([N.sub.1])
 [M.sub.4] = h([SID.sub.j][parallel][N.sub.2])

           <[SID.sub.i], [M.sub.3], [M.sub.4]>
                      [left arrow]

  computes [h.sup.2([N.sub.1])]
           [N.sub.2] = [M.sub.3] [direct sum]
                  [h.sup.2]([N.sub.1])
     checks h([SID.sub.j][parallel]
                 [N.sub.2]) = [M.sub.4]
     [SK.sub.ij] = h([N.sub.1][parallel]
                      [N.sub.2])

                               <[SK.sub.ij] [direct sum] h([N.sub.2])>
                   [right arrow]

                           checks h([N.sub.2])


4. Security Vulnerabilities in Chuang and Chen's Scheme

We analyze Chuang and Chen's scheme and figure out some security vulnerabilities. Their scheme is vulnerable to the masquerade attack, smart card attack, user impersonation attack, and DoS attack and does not achieve perfect forward secrecy.

4.1. A Masquerade Attack. Chuang and Chen's scheme is vulnerable to user masquerade attack. An adversary can be authenticated to another [server.sub.k] using the messages that [user.sub.i] sends to [server.sub.j] for authentication. Figure 2 describes the masquerade attack on Chuang and Chen's scheme. When the [user.sub.i] wants to be authenticate with [server.sub.j], the [user.sub.i] logs on the smart card and then sends a message (1) to the [server.sub.j]. After an adversary intercepts the message (1), the adversary will send it to another server [server.sub.k]. This is because that message (1) does not include about the [server.sub.j] as follows:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (1)

So the [server.sub.k] executes operation (2) and sends the message (3) to the adversary without any suspicion of the attack. The adversary forwards the message (3) to the [user.sub.i]. The [user.sub.i] does not check the [SID.sub.j] of the [server.sub.j]. It only checks the sameness with the SID of [M.sub.4] and the SID of the message (3) as follows:

Message (3) = <[SID.sub.j], [M.sub.3], [M.sub.4]>, [M.sub.4] = h([SID.sub.j][parallel][N.sub.2]). (2)

So the [user.sub.i] executes operation (4) and sends message (5) to [server.sub.j] without any suspicion of the attack. Then, an adversary intercepts the message (5) and sends it to another [server.sub.k]. Finally, the adversary can be authenticated with [server.sub.k]. Therefore, the adversary can masquerade as a legitimate user to [server.sub.k]. In this way, the scheme becomes vulnerable to the masquerade attack.

The [server.sub.k] cannot check whether [user.sub.i] wants to be authenticated by [server.sub.k] or not. Thus [server.sub.k] authenticates all legitimate messages though these message are not sent to [server.sub.k]. And [user.sub.i] does not check whether [server.sub.j] wants to be authenticated with [user.sub.i]. Thus [user.sub.i] authenticates all legitimate messages though these message are sent by [server.sub.k]. The [user.sub.i] only checks whether SID in message (3) and SID in [M.sub.4] are the same or not. To solve this problem, the destination of message is added to authentication messages. So the information about SID of [server.sub.j] has to be added to the message (1), and this means that [user.sub.i] want to be authenticated with [server.sub.j], not [server.sub.k]. And the information about AUID of [user.sub.i] has to be added to message (3); it means that the [server.sub.j] wants to be authenticated with anonymous [user.sub.i].

4.2. A Smart Card Attack. When an adversary gets or steals the user's smart card, the adversary can compute the session key between the [user.sub.i] and [server.sup.j] without the user's password or biometric information. So the adversary can decrypt the all encrypted communications between the [user.sub.i] and [server.sub.j] because the adversary can compute all previous session keys. Algorithm 2 describes the smart card attack on Chuang and Chen's scheme.

When the adversary obtains the user's smart card, the adversary can extract information about the smart card using a side-channel attack such as SPA (simple power analysis) or DPA (differential power analysis). The adversary can obtain [B.sub.i] in the user's smart card and [M.sub.1], [M.sub.3] in the public communication channel. Then, the adversary can compute [N.sub.1] using [M.sub.1] and h([B.sub.i]) and [N.sub.2] using [M.sub.3] and [h.sup.2]([N.sub.1]). Finally, the adversary can determine the session key user and server using [N.sub.1] and [N.sub.2]. This scheme uses the combination values with a password and biometrics, so the adversary cannot compute the user's password. However, using the smart card attack, the adversary can compute the session key between the [user.sub.i] and the [server.sub.j] without the information about user's password or biometrics.

Kocher et al. and Messerges et al. pointed out that confidential information stored in all existent smart cards could be extracted by physically monitoring power consumption [3, 4]. If a user loses his smart card, all secrets in the smart card may be revealed to the adversary. Using this information, the adversary can determine the session key between the [user.sub.i] and [server.sub.j]. To solve this problem, it is necessary to add authentication value that adversary cannot reveal using the side-channel attack. In other words, it is necessary to add the value that only legitimate user and server can compute using the secret information, which the adversary cannot know or compute.

4.3. A User Impersonation Attack. In Chuang and Chen's scheme, an adversary can be authenticated with the server using user's smart card without user's password or biometrics, so the adversary can impersonate the legitimate user. It is critical problem that the adversary can be authenticated with the server using user's smart card only. Figure 3 describes the user impersonation attack on Chuang and Chen's scheme. As described above, the adversary can illegally extract the secret values including [B.sub.i] from the user's smart card by some means. And he can intercept the message (1) = <[AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i]> and acquire the [AUID.sub.i], [M.sub.1], and [D.sub.i].

Next procedure for user impersonation attack occurs in the following steps. The adversary computes the [N.sub.1] using [M.sub.1] and h([B.sub.i]). And then, he can figure out the [UID.sub.i] using [AUID.sub.i] and h([N.sub.1]). Next, the adversary generates another random nonce [N.sub.A1] and computes [M.sub.A1], [AUID.sub.Ai], and [M.sub.A2]. Next, the adversary sends [AUID.sub.Ai], [M.sub.A1], [M.sub.A2], and [D.sub.i] to [server.sub.j]. The adversary can be authenticate to [server.sub.j] because he knows [B.sub.i], [N.sub.A1], and [UID.sub.i] and the [server.sub.j] cannot figure out the difference between the adversary and legitimate user. The user's password and biometric information are not used in authentication phase, so [server.sub.j] authenticates the adversary without doubt. [server.sub.j] does not store user's password or biometric information because Chuang and Chen's scheme is designed for anonymous user. Therefore, server cannot check the password or biometric information for authentication. To solve this problem, it is necessary to add the shared value between the user and servers. The share value can be computed by only the legitimate user using user's password and biometircs in login and authentication phase, and never be stored in the smart card.

4.4. A DoS Attack. The DoS attack is an attempt to make a machine or network resource unavailable to its intended users. Although the means to carry out motives for and targets of the DoS attack may vary, it generally consists of efforts to temporarily or indefinitely interrupt or suspend services of a host connected to the networks. In Chuang and Chen's scheme, an adversary can implement the DoS attack without difficulty. Figure 4 describes DoS attack on Chuang and Chen's scheme. The adversary gets the previous message (1) from a legitimate user and sends it to the [server.sub.j]. Then, the [server.sub.j] executes operation (2) and sends message (3) to the [user.sub.i]. The processes of operation (2) include executing the hash function 7 times, calculating the exclusive-or operation 3 times, and generating a random nonce once. The adversary can attempt to make the server or network resource unavailable if he uses a lot of intercepted authentication messages.

ALGORITHM 2: Smart card attack on Chuang and Chen's scheme.

(i) Adversary gets(steals) user's smart card.

   [??] Extracting the information of smart card.
   [??] (Using SPA and DPA ... etc) [??] Obtains [B.sub.i]

(ii) Adversary gets M1 and M3 in public channel.

   [??] [N.sub.1] = [M.sub.1] [direct sum] h([B.sub.i])
   [??] [N.sub.2] = [M.sub.3] [direct sum] [h.sup.2]([N.sub.1])
   [??] [SK.sub.ij] = [h.sup.2]([N.sub.1][parallel][N.sub.2])

(iii) Adversary can compute the session key [SK.sub.ij] between
   [User.sub.i] and [Server.sub.j].

ALGORITHM 3: No perfect forward secrecy on Chuang and Chen's scheme.

(i) Adversary got [M.sub.P1] and [M.sub.P3] in previous public
    channel.

(ii) Adversary knew one of user's long-term secret: [A.sub.i]

   [??] Adversary has [A.sub.i], [M.sub.P1] and [M.sub.P3]
   [??] [N.sub.P2] = [M.sub.P1] [direct sum] [h.sup.2]([A.sub.i])
   [??] [N.sub.P2] = [M.sub.P3] [direct sum] [h.sup.2]([N.sub.P1])
   [??] [SK.sub.Pij] = [h.sup.2]([N.sub.P1][parallel][N.sub.p2])

(iii) Adversary can compute all of previous session key [SK.sub.Pij].


In Chuang and Chen's scheme, server j does not check the freshness of authentication message from [user.sub.i]. Thus, when an adversary sends the intercepted authentication messages to [server.sub.j], the [server.sub.j] cannot know whether the message is current or outdated. So, [server.sub.j] executes a lot of operations. To resist the DoS attack, the [server.sub.j] has to check the freshness of messages using the timestamp or other means.

4.5. No Perfect Forward Secrecy. Perfect forward secrecy means that a session key derived from a set of long-term keys will not be compromised if one of the long-term keys is compromised in the future. Chuang and Chen's scheme does not achieve perfect forward secrecy. So the adversary can compute the all session key between the [user.sub.i] and [server.sub.j] if the adversary knows the one of long-term keys [A.sub.i] in future. Algorithm 3 describes why Chuang and Chen's scheme does not achieve perfect forward secrecy. First, the adversary got [M.sub.P1] and [M.sub.P3] in previous communication between [user.sub.i] and [server.sub.j]. Next, the adversary knows one of user's long-term secrets [A.sub.i]. So the adversary can calculate [N.sub.P1] from [N.sub.P1] = [M.sub.P1] [direct sum] [h.sup.2]([A.sub.i]) and [N.sub.P2] from [N.sub.P2] = [M.sub.P3] [direct sum] [h.sup.2]([N.sub.P1]). Finally, the adversary can compute the previous session key [SK.sub.Pij] using [N.sub.P1] and [N.sub.P2] Therefore, this scheme does not achieve perfect forward secrecy.

In Chuang and Chen's scheme, [A.sub.i] is a secure shared key among RC and authenticated [user.sub.i]. The RC computes [A.sub.i] using [UID.sub.i] and secret value x. And then, The RC sends the h([A.sub.i]) to [user.sub.i] within user's smart card. The h([A.sub.i]) is unchanged even if [user.sub.i] changes his password. So [A.sub.i] is one of the long-term keys. If an adversary got the [M.sub.P1] and [M.sub.P3] in previous public channel and knows [A.sub.i] at present, the adversary can compute the previous session key between the [user.sub.i] and [server.sub.j]. To solve this problem, it is needed that the adversary cannot compute the [N.sub.1] and [N.sub.2] using only [A.sub.i]. By adding another secret information, it is necessary that the adversary cannot compromise the session key between [user.sub.i] and [server.sub.j].

5. Our Proposed Scheme

Our proposed scheme improves Chuang and Chen's scheme in various aspects: (1) it checks the destination of messages and so it prevents the masquerade attack, (2) it withstands the smart card attack and the user impersonation attack even when the information in the smart card is disclosed, (3) it resists DoS attacks by checking the freshness of messages, and (4) it protects the security of previously-established session keys even when the adversary knows the long-term key [A.sub.i], thereby achieving perfect forward secrecy.

5.1. Countermeasures. The vulnerability of Chuang and Chen's scheme to the masquerade attack is due to the fact that

(i) there is no way for [server.sub.j] to check whether the user wants to be authenticated with it or with another server, [server.sub.k];

(ii) [user.sub.i] cannot check whether the server wants to be authenticated with him or with another user, [user.sub.j].

This design flaw allows the adversary to be authenticated with [server.sub.k] using [user.sub.i]'s message directed to [server.sub.j]. Therefore, to prevent the masquerade attack, we suggest to modify the computations of [M.sub.2] and [M.sub.4] from [M.sub.2] = h([N.sub.1][parallel][AUID.sub.i][parallel][D.sub.i]) and [M.sub.4] = h([SID.sub.j][parallel][N.sub.2]) to

[M.sub.2] = h([N.sub.1][parallel][AUID.sub.i][parallel][D.sub.i][parallel][SID.sub.i]), [M.sub.4] = h([SID.sub.j][parallel][N.sub.2][parallel][AUID.sub.i]). (3)

The server ID, [SID.sub.j], and the anonymous user ID, [AUID.sub.i], are now included as part of the inputs of the hash function. The inclusion of [SID.sub.j] and [AUID.sub.i] allows [server.sub.j] and [user.sub.i] to confirm the destination of the messages [M.sub.2] and [M.sub.4], respectively, and therefore effectively prevents the masquerade attack.

The Dos attack is possible because [server.sub.j] performs all its operations without checking the freshness of incoming messages, and thus it can be prevented by modifying the computation of [M.sub.2] to

[M.sub.2] = h([N.sub.1][parallel][AUID.sub.i][parallel][D.sub.i][SID.sub.j][parallel][T.sub.i], (4)

where [T.sub.i] is the timestamp retrieved by [user.sub.i] and sent to [server.sub.j]. The inclusion of the timestamp [T.sub.i] to the computation of [M.sub.2] enables [server.sub.j] to check and confirm the freshness of the user's authentication message and prevents the DoS attack. Due to this modification, the authentication message of [user.sub.i] should be also modified as follows:

<[AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i]> ([AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i], [T.sub.i]). (5)

We next present a possible way of eliminating the vulnerability of Chuang and Chen's scheme to the smart card attack. Recall that this vulnerability is due to that the value [B.sub.i] stored in the smart card together with [M.sub.1] and [M.sub.3] exchanged between [user.sub.i] and [server.sub.j] enables the adversary to compute [N.sub.1] and [N.sub.2] and thereby to derive the session key [SK.sub.ij] = [h.sup.2]([N.sub.1][parallel][N.sub.2]). Therefore, to prevent the smart card attack, we suggest to modify the computations of [M.sub.1] and [M.sub.3] from [M.sub.1] = h([B.sub.i]) [direct sum] [N.sub.1] and [M.sub.3] = [N.sub.2] [direct sum] [h.sup.2]([N.sub.1]) to

[M.sub.1] = h([B.sub.i]) [direct sum] [N.sub.1] [direct sum] h(PSK), [M.sub.3] = [N.sub.2] [direct sum] [h.sup.2]([N.sub.1]) [direct sum] h(PSK). (2)

With this modification, the adversary now cannot compute [N.sub.1] and [N.sub.2] without the hash value h(PSK). To make this countermeasure work, we add a new value [E.sub.i] = h(PSK) [direct sum] h([PW.sub.i] [direct sum] [BIO.sub.i]) to [user.sub.i]'s smart card so that only [user.sub.i] can extract h(PSK) from its password and biometrics.

However, with the modifications described above, Chuang and Chen's scheme is still vulnerable to the user impersonation attack as the adversary can obtain h([PW.sub.i] [direct sum] [BIO.sub.i]) from [B.sub.i] and [C.sub.i] = h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [B.sub.i] which are stored in the smart card. To prevent the user impersonation attack, we modify the computation of [C.sub.i] to

[C.sub.i] = h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [B.sub.i] [direct sum] h(PSK). (7)

The adversary now cannot calculate h([PW.sub.i] [direct sum] [BIO.sub.i]) as it does not know h(PSK).

Finally, to provide the perfect forward secrecy in our proposed scheme, we modify the computation of [D.sub.i] from [D.sub.i] = PSK [direct sum] [A.sub.i] to

[D.sub.i] = PSK [direct sum] [A.sub.i] [direct sum]h(PSK). (8)

With this modification, the adversary cannot derive PSK from the long-term key [A.sub.i] and, thus, cannot compute [N.sub.1], [N.sub.2], and the previous session key [SK.sub.ij] = h([N.sub.1][parallel][N.sub.2]).

The password update phase should be also modified for consistency purpose (see Section 5.5 for details). Combining all the modifications above together yields an improved authentication scheme described in the following subsections.

5.2. The Server Registration Phase. The application server sends a message for join to the RC when they want to become an authorized server. Then, the RC sends the key(PSK) to the server using secure communication. And then, the server is ready to compute h(PSK) for user authentication. Next, the authorized server uses the shared information like PSK and h(PSK) to check the user's legitimacy in authentication phase.

5.3. The User Registration Phase. The registration phase of proposed scheme is described in Algorithm 4. [user.sub.i] needs to perform the user registration phase with the registration center using a secure channel. In this phase, RC sends to [user.sub.i] the information about PSK and h(PSK). PSK is included in [D.sub.i] = PSK [direct sum] [A.sub.i] [direct sum] h(PSK). [user.sub.i] can be authenticated with [server.sub.j] using [D.sub.i] but cannot compute the PSK and [A.sub.i] even if he knows the [D.sub.i] and h(PSK). And [user.sub.i] can calculate the h(PSK) using user's password and biometrics from [E.sub.i] = h(PSK) [direct sum] h([PW.sub.i] [direct sum] [BIO.sub.i]). In other words, the [user.sub.i] receives the hidden PSK and h(PSK) in [D.sub.i] and [E.sub.i], respectively, included in smart card for user's login and authentication. Detailed steps are explained as follows.

ALGORITHM 4: Our registration phase.

[User.sub.i]                                        Registraion center

Secure, <[UID.sub.i], [PW.sub.i], [BIO.sub.i])
              [right arrow]

                                 [A.sub.i] = h([UID.sub.i][parallel]x)
          [B.sub.i] = [h.sup.2]([UID.sub.i][parallel]x) = h([A.sub.i])
       [C.sub.i] = h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum]
                                                             [B.sub.i]
            [D.sub.i] = PSK [direct sum] [A.sub.i] [direct sum] h(PSK)
[E.sub.i] = h(PSK) [direct sum] h([PW.sub.i] [direct sum] [BIO.sub.i])

 Secure, <[UID.sub.i], [C.sub.i], [D.sub.i], [E.sub.i])
                  [left arrow]


(1) The [user.sub.i] sends [UID.sub.i] and h([PW.sub.i] [direct sum] [BIO.sub.i]) to the RC through a secure channel.

(2) After receiving the [user.sub.i]'s information, the RC computes the authentication parameters for the [user.sub.i] as follows:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (9)

(3) The RC stores these authentication parameters <[UID.sub.i], h(), [B.sub.i], [C.sub.i], [D.sub.i], [E.sub.i]> in a smart card and sends the smart card to [user.sub.i] via a secure channel.

The RC does not store the user's password or biometrics information. Therefore, our proposed scheme is secure against a stolen-verifier attack. The registered user cannot fake another legitimate user successfully though the user obtains these parameters <[UID.sub.i], h(), [B.sub.i], [C.sub.i], [D.sub.i], [E.sub.i]>. This is because that the user does not know the secret value x and PSK. The authenticated user can only compute h(PSK) using his password and biometrics.

5.4. The Login and Authentication Phases. The login and authentication phases for the proposed scheme are described in Algorithm 5. In the login phase, the smart card checks the legitimacy of the user. The smart card checks an error event immediately using identification, password, and biometric information. Detailed steps of the login phase are explained as follows.

ALGORITHM 5: Our login and authentication phase.

[User.sub.i]                 Smart card                 [Server.sub.j]

enters [UID.sub.i] and [PW.sub.i]
inputs [BIO.sub.i] using sensors

<[UID.sub.i], [PW.sub.i], [BIO.sub.i]>
         [right arrow]

                         checks [UID.sub.i]
                         checks h([PW.sub.i]
                      [direct sum] [BIO.sub.i])
                      [direct sum] [C.sub.i] =
                             [B.sub.i]
                         h(PSK) = [E.sub.i]
                      [direct sum] h([PW.sub.i]
                      [direct sum] [BIO.sub.i])
                     generates a nonce [N.sub.1]
                       generates a timestamp
                             [T.sub.i]
                      [M.sub.i] = h([B.sub.i])
                      [direct sum] [N.sub.1]
                        [direct sum] h(PSK)
                    [AUID.sub.i] = h([N.sub.1])
                     [direct sum] [UID.sub.i]
                     [M.sub.2] = h([N.sub.1]
                     [parallel][AUID.sub.i]
                  [parallel][D.sub.i][parallel]
                     [SID.sub.j]|[T.sub.i])

             [AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i], [T.sub.i])
                                     [right arrow]

                                     checks the freshness of [T.sub.i]
                                    [A.sub.i] = [D.sub.i] [direct sum]
                                               PSK [direct sum] h(PSK)
                                    [N.sub.1] = [M.sub.1] [direct sum]
                              [h.sup.2]([A.sub.i]) [direct sum] h(PSK)
                              checks h([N.sub.1][parallel][AUID.sub.i]
                              [parallel][D.sub.i][parallel][SID.sub.j]
                                               |[T.sub.i]) = [M.sub.2]
                                                   generates [N.sub.2]
                                             [SK.sub.ij] = h([N.sub.1]
                                                  [parallel][N.sub.2])
                                    [M.sub.3] = [N.sub.2] [direct sum]
                                     [h.sup.2]([N.sub.1]) [direct sum]
                                                                h(PSK)
                                   [M.sub.4] = h([SID.sub.j][parallel]
                                      [N.sub.2][parallel][AUID.sub.i])

                                   <[SID.sub.j], [M.sub.3], [M.sub.4])
                                              [left arrow]

                 computes [h.sup.2]([N.sub.1])
                [N.sub.2] = [M.sub.3] [direct sum]
                [h.sup.2]([N.sub.1]) [direct sum]
                             h(PSK)
                 checks h([SID.sub.j][parallel]
                [N.sub.2][parallel][AUID.sub.i]) =
                           [M.sub.4]
                      [SK.sub.ij] = h([N.sub.1]
                         [parallel][N.sub.2])

                               <[SK.sub.ij] [direct sum] h([N.sub.2])>
                                             [right arrow]

                                                   checks h([N.sub.2])


(1) The [user.sub.i] inserts his smart card into a card reader and enters his [UID.sub.i] and [PW.sub.i]. Then, the [user.sub.i] inputs his biometric information [BIO.sub.i] using the sensor.

(2) The smart card checks the [UID.sub.i] and confirms that [B.sub.i] in smart card is same to h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [C.sub.i]. If all information is accurate, then the smart card generates a random nonce [N.sub.1] and a timestamp [T.sub.i] and computes the h(PSK) using [E.sub.i] and h([PW.sub.i] [direct sum] [BIO.sub.i]). Next the smart card computes the following:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (10)

In the authentication phase, the smart card sends an authentication message to the server after the [user.sub.i] finishes the login phase successfully. The proposed scheme only uses the anonymous identity [AUID.sub.i] to perform the authentication phase. The detailed steps of the authentication phase are explained as follows.

(3) The smart card sends the message ([AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i], [T.sub.i]) to the [server.sub.j] for the user's authentication.

(4) The [server.sub.j] confirms the legality of the [user.sub.i] and the freshness of authentication message. First, the [server.sub.j] checks the freshness of [T.sub.i]. If [T.sub.i] is not fresh, the [server.sub.j] rejects the user's request. The [server.sub.j] uses PSK and h(PSK) to obtain [A.sub.i] from the [D.sub.i]. The [server.sub.j] computes the value of [N.sub.1] ([N.sub.1] = [M.sub.1] [direct sum] [h.sup.2]([A.sub.i]) [direct sum] h(PSK)) and then confirms whether h([N.sub.1][parallel][AUID.sub.i][parallel][D.sub.i][parallel][SID.sub.j][parallel][T.sub.i]) is same to [M.sub.2]. If the result of [M.sub.2] is not same, the [server.sub.j] terminates this session. Then, the [server.sub.j] computes [UID.sub.i] using h([N.sub.1]) and checks the legitimacy of [UID.sub.i]. Next, the [server.sub.j] generates a random nonce [N.sub.2] and computes the following:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (11)

(5) The [server.sub.j] sends back the authentication message <[SID.sub.j], [M.sub.3], [M.sub.4]) to the smart card.

(6) The smart card confirms the legality of the [server.sub.j]. It computes [h.sup.2]([N.sub.1]) and then calculates [N.sub.2] using [M.sub.3],[ .sup.h2]([N.sub.1]), and h(PSK). Next, the smart card checks whether

h([SID.sub.j][parallel][N.sub.2][parallel][AUID.sub.i]) = [M.sub.4]. (12)

Next, the smart card computes the session key [SK.sub.ij] As h([N.sub.1][parallel][N.sub.2]). Finally, the smart card computes [SK.sub.ij] [direct sum] h([N.sub.2]).

(7) The smart card sends the message <[SK.sub.ij] [direct sum] h([N.sub.2])> to the [server.sub.j].

(8) The [server.sub.j] uses the session key [SK.sub.ij] for checking [SK.sub.ij] [direct sum] h([N.sub.2]), anf if h([N.sub.2]) is correct, the [server.sub.j] authenticates the [user.sub.i]. From now on, the [server.sub.j] can communicate securely with [user.sub.i] using the [SK.sub.ij]

5.5. The Password Change Phase. The password change phase for the proposed scheme is described in Algorithm 6. The proposed password change phase is executed when the [user.sub.i] wants to update his password. In this phase, the [user.sub.i] can easily change his password without any assistance from the registration center. Detailed processes are as follows.

(1) The [user.sub.i] inserts his smart card into a card reader and enters both the current password [PW.sub.i] and the new password [PW.sup.*.sub.i] with [UID.sub.i] and [BIO.sub.i].

(2) The smart card checks [UID.sub.i] and computes h(PSK) = [E.sub.i] [direct sum] h([PW.sub.i] [direct sum] [BIO.sub.i]) and then checks whether

h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [C.sub.i] [direct sum] h(PSK) = [B.sub.i]. (13)

(3) The smart card computes [C.sup.*.sub.i] = [C.sub.i] [direct sum] h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] h([PW.sup.*.sub.i] [direct sum] [BIO.sub.i]) and then replaces [C.sub.i] with [C.sup.*.sub.i].

6. Analysis of Our Scheme

An anonymous multiserver authenticated key agreement scheme has three important requirements: the security properties, the attack resistance, and the efficiency, so it needs to analyze the proposed scheme using them. In this section, we explain how the proposed scheme is satisfied with the requirements and compare the proposed scheme with other authentication schemes.

6.1. Security Properties

(S1) Anonymity: in the proposed scheme, an adversary cannot compute the user's real identity [UID.sub.i] without h([N.sub.1]) because the real identity of user is always converted using [AUID.sub.i] = h([N.sub.1]) [direct sum] [UID.sub.i]. Only legitimate server can compute and check the user's real identity, because the server has the PSK and can compute the [N.sub.1] from [N.sub.1] = [M.sub.1] [direct sum] [h.sub.2]([A.sub.i]) [direct sum] h(PSK) using the PSK, [M.sub.1], and [A.sub.i]. Thus, only authorized server confirms the UID of user. As a result, the adversary cannot obtain the user's real identity, but legitimate [user.sub.i] can anonymously be authenticated with [server.sub.j].

ALGORITHM 6: Our password change phase.

[User.sub.i]                                                Smart card

      Secure, <[UID.sub.i], [PW.sub.i], [PW.sup.*.sub.i], [BIO.sub.i])
                          [right arrow]

                                                    checks [UID.sub.i]
    computes h(PSK) = [E.sub.i] [direct sum] h([PW.sub.i] [direct sum]
                                                          [BIO.sub.i])
  checks h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [C.sub.i]
                                                          [direct sum]
                                                    h(PSK) = [B.sub.i]
                                  inputs new password [PW.sup.*.sub.i]
        computes [C.sup.*.sub.i] = [C.sub.i] [direct sum] h([PW.sub.i]
                                             [direct sum] [BIO.sub.i])
             [direct sum] h([PW.sup.*.sub.i] [direct sum] [BIO.sub.i])
                               replaces [C.sub.i] with [C.sup.*.sub.i]


(S2) Mutual authentication: the mutual authentication means that two parties authenticate each other. In proposed scheme, the user and server authenticated each other using [N.sub.1], N2, h(PSK), and Di. In the authentication phase, the server authenticates the user if the [M.sub.2] is correct as follows:

[M.sub.2] = h([N.sub.1][parallel][AUID.sub.i][parallel][D.sub.i][parallel][SID.sub.j][parallel][T.sub.i]). (14)

And the user authenticates the server using [M.sub.4] and [N.sub.2]; it checks whether the [M.sub.4] is correct as follows:

[M.sub.4] = h ([SID.sub.j][paralle][N.sub.2][paralle][AUID.sub.i]). (15)

Though an adversary intercepts the messages and wants to fake a legitimate user/server, the adversary cannot compute the accurate values, so it cannot send valid reply message to the user/server. This is because that the adversary does not know the secret key PSK, h(PSK) and random nonce [N.sub.1] and [N.sub.2].

(53) Session key agreement: in the proposed scheme, the user and server can share the session key after the authentication phase. Then, they can communicate securely using the shared session key, which encrypts the communication packets. The session key is generated using h([N.sub.1][parallel][N.sub.2]). [N.sub.1] and [N.sub.2] change in every session, so session key is different in each session. Therefore, it is difficult for the adversary to compute the session key from the intercepted messages.

(54) Perfect forward secrecy: the proposed scheme computes the session key between the [user.sub.i] and [server.sub.j] as follows:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (16)

Though the user's long-term key [A.sub.i] is compromised, the adversary cannot compute [N.sub.1] or [N.sub.2] because the adversary cannot calculate the h(PSK) and PSK, so it cannot generate session key between [user.sub.i] and [server.sub.j]. Therefore, the proposed scheme achieves perfect forward secrecy. Table 1 shows the analysis on the security properties of various multisever authenticated key agreement schemes.

6.2. Attack Resistance

(A1) Replay attack resistance: the proposed scheme is secure against replay attack by adding the random nonce [N.sub.1] and the timestamp [T.sub.i] into the message. Though an adversary intercepts the previous authentication message ([AUID.sub.i], [M.sub.1], [M.sub.2], [D.sub.i], [T.sub.i]) and sends it to the server, the server can check the illegality of the request using checking [N.sub.1] and [T.sub.i] as follows:

checks [M.sub.2] = h ([n.sub.1][parallel][AUID.sub.i][parallel][D.sub.i][parallel][SID.sub.i]|[T.sub.i]). (17)

So the proposed scheme can prevent the replay attack using [N.sub.1] and [T.sub.i] because the adversary cannot compute another [M.sub.2] in [T.sub.i]

(A2) Modification attack resistance: the adversary can intercept the authentication message and attempt to modify it for illegal authentication. Using a one-way hash function, the proposed scheme checks whether authentication information is modified or not. The adversary cannot obtain the random nonce [N.sub.i] or h(PSK), so the adversary cannot compute a legitimate authentication message. Therefore, the server and user can check whether the authentication message is modified by the adversary or not. Therefore, the proposed scheme is secure against modification attack.

(A3) Stolen-verifier attack resistance: the registration center and application servers do not have the user's ID/password table or the biometrics. The application server [server.sub.j] authenticates the legitimate user using h(PSK) and [D.sub.i]. Therefore, the adversary cannot obtain the authentication information about legitimate users even if the adversary gets the authority to access the database of the RC or application servers. Thus, proposed scheme is secure against stolen-verifier attack.

(A4) Off-line guessing attack resistance: an adversary can extract the information stored in smart card using a side-channel attack such as SPA or DPA. So the adversary can know [UID.sub.i], [B.sub.i], [C.sub.i], [D.sub.i], and [E.sub.i], but he cannot figure out a user's password because h(PSK), PSK, [BIO.sub.i], and x are unknown to the adversary. In proposed scheme, the user's password is always used with the biometrics of the [user.sub.i] h([PW.sub.i] [direct sum] [BIO.sub.i]), which are protected by the one-way hash function. Therefore, the adversary cannot calculate the user's password because biometric information has high entropy. Moreover, the adversary cannot figure out the biometrics because it is impossible for any two people to have the same biometrics template. Therefore, the proposed scheme is secure on off-line guessing attack.

(A5) Forgery attack resistance: a legitimate user cannot attempt to forge another legitimate user. The legitimate [user.sub.i] can know his parameters ([UID.sub.i], [B.sub.i], [C.sub.i], [D.sub.i], [E.sub.i], [PW.sub.i] and [BIO.sub.i]). However the [user.sub.i] cannot calculate another user's real identity because another user's anonymous identity [AUID.sub.i] changes in every session and is protected using a random nonce; [AUID.sub.i] = h([N.sub.1]) [direct sum] [UID.sub.i]. Therefore, the proposed scheme is secure against the forgery attack.

(A6) Insider attack resistance: in the proposed scheme, the [user.sub.i] never send plain [PW.sub.i] and [BIO.sub.i] to the registration center RC. The [user.sub.i] sends only h([PW.sub.i] [direct sum] [BIO.sub.i]), so the RC cannot obtain the user's password or biometrics. And the RC cannot compute the [PW.sub.i] using h([PW.sub.i] [direct sum] [BIO.sub.i]) because the biometric information has high entropy. Moreover, h([PW.sub.i] [direct sum] [BIO.sub.i]) is sent through a secure channel and needs not store in the database of RC. So, it is difficult for even insider adversary to figure out user's [PW.sub.i] and [BIO.sub.i]. Therefore, the proposed scheme is secure against the insider attack.

(A7) Masquerade attack resistance: the masquerade attack means that an adversary is authenticated with the legitimate server using a fake or real authentication information such as the authentication messages. In Chuang and Chen's scheme, the adversary uses the authentication message between [user.sub.i] and [server.sub.j] to gain unauthorized access of [server.sub.k]. This problem occurred because [user.sub.i] and [server.sub.j] cannot check the destination of authentication message. To solve this problem, the proposed scheme uses [AUID.sub.i] and [SID.sub.j] including [M.sub.2] as follows:

[M.sub.2] = h([N.sub.1][parallel][AUID.sub.i][parallel][D.sub.i][parallel][SID.sub.j][parallel][T.sub.i]). (18)

[AUID.sub.i] includes [UID.sub.i]. So the [server.sub.j] can check whether [user.sub.i] wants to be authenticated with [server.sub.j] or not. And also [M.sub.4] include [AUID.sub.i] and [SID.sub.j] as follows:

[M.sub.4] = h ([SID.sub.j][parallel][N.sub.2][parallel][AUID.sub.i]). (19)

So the [user.sub.i] can check whether [server.sub.j] wants to be authenticated with [user.sub.i] or not. The adversary cannot compute [M.sub.2] and [M.sub.4] because the adversary cannot compute [N.sub.1] and [N.sub.2]. Therefore the proposed scheme is resistant to the masquerade attack.

(A8) Smart card attack resistance: In the proposed scheme, the smart card stores various information such as <[UID.sub.i], [B.sub.i], [C.sub.i], [D.sub.i], [E.sub.i], h()>. An adversary can obtain all information stored in user's smart card using SPA or DPA. But the adversary cannot compute the session key between [user.sub.i] and [server.sub.j] using [M.sub.1] and [M.sub.3] because the adversary cannot compute h(PSK) using obtained information as follows:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (20)

Though the adversary obtains [B.sub.i] and [M.sub.1], the adversary cannot compute [N.sub.1] because of the ignorance about h(PSK). Thus the adversary cannot compute [N.sub.2] and [SK.sub.ij]. Therefore the proposed scheme is secure against smart card attack.

(A9) User impersonation attack resistance: in Chuang and Chen's scheme, an adversary can impersonate the legitimate user using only user's smart card because the adversary can be authenticated to the serverj using user's smart card without user's password or biometrics. However, the proposed scheme uses h(PSK) for protecting [D.sub.i], [N.sub.1], [N.sub.2], [M.sub.1], and [M.sub.3]. For example, even though the adversary knows [M.sub.1] and Bi in M1 = [N.sub.1] [direct sum] h([B.sub.i]) [direct sum] h(PSK), the adversary cannot compute [N.sub.1] without h(PSK), so he cannot generate the [SK.sub.ij]. The adversary cannot know h(PSK) without user's password or biometric. So the adversary cannot impersonate a legal user. Therefore the proposed scheme is secure against the user impersonation attack.

(A10) DoS attack resistance: the proposed scheme checks the freshness of message using timestamp, so it is useless that an adversary sends the previous message to the server. Moreover, the proposed scheme uses [M.sub.2] = h([N.sub.1][parallel][AUID.sub.i][parallel][D.sub.i][parallel][SID.sub.j][parallel][T.sub.i]) that includes timestamp [T.sub.i]. The server can check the freshness and legality of [M.sub.2] because [M.sub.2] and the timestamp do not match even though the adversary sends the previous [M.sub.2] with the current timestamp. Therefore the proposed scheme is more secure against the DoS attack than Chuang and Chen's scheme.

The proposed scheme is more secure than Chuang and Chen's scheme against the masquerade attack, smart card attack, user impersonation attack, and DoS attack, and also it achieves perfect forward secrecy. Moreover, the proposed scheme is also satisfactory with regard to the anonymity, mutual authentication, session key agreement, replay attack resistance, modification attack resistance, stolen-verifier attack resistance, off-line guessing attack resistance, forgery attack resistance, and insider attack resistance.

Table 2 shows the analysis on attack resistance of various multisever authenticated key agreement schemes.

6.3. Efficiency. The efficiency measures include single registration, simple and secure password modification, fast error detection, and low computational cost. In performance, the proposed scheme has similar computational with Chuang and Chen's scheme. Chuang and Chen's scheme has slightly lower computational cost than the proposed scheme, but it is vulnerable to various attacks. The proposed scheme has a little higher computational cost, but it is more secure than Chuang and Chen's scheme. In other words, the proposed scheme solves security problems using similar computational cost as compared with Chuang and Chen's scheme.

(E1) Single registration: in the proposed scheme, a user can be authenticated with various servers. However, the user does not need to register with every servers. To use the server's services, the user registers only one time with the registration center. The proposed scheme provides single registration so the user can anonymously use multiserver system using one registration.

(E2) Simple and secure password modification: in the proposed scheme, the user can change the user's password conveniently so that it is easy for the user to change the password anytime. And, the password change phase does not need any communication with the RC. Moreover, an adversary cannot change the password even though the adversary can obtain the smart card and the user's password. This is because that the smart card can check the incorrect biometric information using [PW.sub.i], [BIO.sub.i], [C.sub.i], and [B.sub.i]. The smart card verifies whether h([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [C.sub.i] is the same to [B.sub.i] as follows:

checks [B.sub.i] = h ([PW.sub.i] [direct sum] [BIO.sub.i]) [direct sum] [C.sub.i]. (21)

(E3) Fast error detection: during the login and password change phases, the smart card detects the error or mistake immediately when the adversary inputs the wrong identification, password, and biometrics information. The smart card can check the error or mistake without the RC's assistance. Therefore the proposed scheme provides fast error detection.

In Table 3, we use the following notations: "x": that there is no computational cost in that phase, n: the number of users, m: the number of application servers, [C.sub.h]: executing time of one-way hash function, [C.sub.F]: executing time of the fuzzy extractor, [C.sub.ECC]: executing time of the elliptic curve encryption or decryption operation, and [C.sub.EXP]: executing time of the exponential operation. [C.sub.EXP] is higher than [C.sub.ECC]. And [C.sub.EXP] and [C.sub.ECC] are considerably higher than [C.sub.H]. Therefore, the comparison of computational cost on abovementioned operations is as follows:

[C.sub.EXP] > [C.sub.ECC] > [C.sub.h]. (22)

And the hash function is generally executed quickly, so it is about 1000 times faster than asymmetric encryption. In D. Yang and B. Yang's scheme, the exponential operation is executed. In Yoon and Yoo's scheme, the elliptic curve encryption or decryption operation is executed. But in chuang and chen's scheme and proposed scheme, they use only one-way hash function. Therefore, Chuang and Chen's scheme and proposed scheme are faster than both D. Yang and B. Yang's scheme and Yoon and Yoo's scheme. And our proposed scheme adds only one [C.sub.h] on RC's operation in the registration phase and also adds only one [C.sub.h] on server's operation in authentication phase in comparison with Chuang and Chen's scheme. [C.sub.h] has a little computational cost. Therefore, our proposed scheme has similar computational cost as compared with chuang and chen's scheme, but chuang and chen's scheme has security vulnerabilities on the masquerade attack, smart card attack, user impersonation attack, and DoS attack as well as no perfect forward secrecy. Our proposed scheme similarly maintains the computational performance and solves the security problems of chuang and chen's scheme. Therefore, the proposed scheme is the security enhanced anonymous multiserver authenticated key agreement scheme using the smart card and biometrics.

7. Conclusion

Chuang and Chen proposed an anonymous multiserver authenticated key agreement scheme. This scheme is efficient in that it only requires users to perform hash function evaluations but has various security vulnerabilities. So, we show that this scheme is vulnerable to a masquerade attack, a smart card attack, a user impersonation attack, and a DoS attack and does not achieve perfect forward secrecy. To solve the security problems of chuang and chen's scheme, we propose a security enhanced anonymous multiserver authenticated key agreement scheme using smart cards and biometrics. And also, we show how the security weaknesses of chuang and chen's scheme are addressed in our scheme and lastly analyze our scheme in terms of both security and efficiency.

Notations

x:                               A secret value of the registration
                                 center
RC:                              The registration center
[UID.sub.i]:                     The identification of [user.sub.i]
[SID.sub.j]:                     The identification of [server.sub.j]
[AUID.sub.i]:                    The anonymous identification of
                                 [user.sub.i]
[PW.sub.i]:                      The password of [user.sub.i]
[BIO.sub.i]:                     The biometrics information of
                                 [user.sub.i]
h():                             A secure one-way hash function
[M.sub.i]:                       ith authenticator exchanged between
                                 [user.sub.i] and [server.sub.j]
[N.sub.i]:                       A random nonce
PSK:                             A secure pre-shared key among RC and
                                 servers
[parallel]:                      A string concatenation operation
[direct sum]:                             A string XOR operation
[left and right arrow]:          Communication through a public channel
[left and right arrow] Secure:   Communication through a secure
                                 channel.


http://dx.doi.org/10.1155/2014/281305

Conflict of Interests

The authors do not have a direct financial relation with any institution or organization mentioned in the paper that might lead to a conflict of interests for any of them.

Acknowledgments

This research was supported by the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Science, ICT, and Future Planning (2014R1A1A2002775).

References

[1] Y. P. Liao and S. S. Wang, "A secure dynamic ID based remote user authentication scheme for multi-server environment," Computer Standards and Interfaces, vol. 31, no. 1, pp. 24-29, 2009.

[2] L. Lamport, "Password authentication with insecure communication," Communications of the ACM, vol. 24, no. 11, pp. 770-772, 1981.

[3] P. Kocher, J. Jaffe, and B. Jun, "Differential power analysis," in Advances in Cryptology--CRYPTO '99, Lecture Notes in Computer Science, pp. 388-397, Springer, Berlin, Germany, 1999.

[4] T. S. Messerges, E. A. Dabbish, and R ... Sloan, "Examining smart-card security under the threat of power analysis attacks," IEEE Transactions on Computers, vol. 51, no. 5, pp. 541-552, 2002.

[5] C. C. Chang and J. S. Lee, "An efficient and secure multi-server password authentication scheme using smart cards," Computer Communications, vol. 32, no. 4, pp. 611-618, 2009.

[6] M. K. Khan and J. Zhang, "An efficient and practical fingerprint-based remote user authentication scheme with smart cards," in Information Security Practice and Experience 2006, pp. 260-268, Springer, Berlin, Germany, 2006.

[7] W. C. Ku, S. T. Chang, and M. H. Chiang, "Further cryptanalysis of fingerprint-based remote user authentication scheme using smartcards," Electronics Letters, vol. 41, no. 5, pp. 240-241, 2005.

[8] C.-T. Li and M.-S. Hwang, "An efficient biometrics-based remote user authentication scheme using smart cards," Journal of Network and Computer Applications, vol. 33, no. 1, pp. 1-5, 2010.

[9] X. Li, J. W. Niu, J. Ma, W. D. Wang, and C. L. Liu, "Cryptanalysis and improvement of a biometrics-based remote user authentication scheme using smart cards," Journal of Network and Computer Applications, vol. 34, no. 1, pp. 73-79, 2011.

[10] D. Yang and B. Yang, "A biometric password-based multi-server authentication scheme with smart card," in Proceedings of the International Conference on Computer Design and Applications (ICCDA '10), vol. 5, pp. 554-559, Qinhuangdao, China, June 2010.

[11] E.-J. Yoon and K.-Y. Yoo, "Robust biometrics-based multiserver authentication with key agreement scheme for smart cards on elliptic curve cryptosystem," The Journal of Supercomputing, vol. 63, no. 1, pp. 235-255, 2013.

[12] D. He, "Security flaws in a biometrics-based multi-server authentication with key agreement scheme," IACR Cryptology ePrint Archive, vol. 365, 2011.

[13] M. C. Chuang and M. C. Chen, "An anonymous multi-server authenticated key agreement scheme based on trust computing using smart cards and biometrics," Expert Systems with Applications, vol. 41, no. 4, pp. 1411-1418, 2014.

[14] W. J. Tsaur, "A flexible user authentication scheme for multiserver internet services," in Networking--ICN2001, pp. 174-183, Springer, Berlin, Germany, 2001.

[15] L. Li, I. Lin, and M. Hwang, "A remote password authentication scheme for multiserver architecture using neural networks," IEEE Transactions on Neural Networks, vol. 12, no. 6, pp. 1498-1504, 2001.

[16] I. C. Lin, M. S. Hwang, and L. H. Li, "A new remote user authentication scheme for multi-server architecture," Future Generation Computer Systems, vol. 19, no. 1, pp. 13-22, 2003.

[17] J. Kim, D. Lee, W. Jeon, Y. Lee, and D. Won, "Security analysis and improvements of two-factor mutual authentication with key agreement in wireless sensor networks," Sensors, vol. 14, pp. 6443-6462, 2014.

[18] J. Nam, J. Paik, and D. Won, "Security improvement on Wu and Zhu's protocol for password-authenticated group key exchange," IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences, vol. E94-A, no. 2, pp. 865-868, 2011.

[19] W. Tsaur, C. Wu, and W. Lee, "An enhanced user authentication scheme for multi-server internet services," Applied Mathematics and Computation, vol. 170, no. 1, pp. 258-266, 2005.

[20] T. Wu and C. Hsu, "Efficient user identification scheme with key distribution preserving anonymity for distributed computer networks," Computers and Security, vol. 23, no. 2, pp. 120-125, 2004.

[21] W. S. Juang, "Efficient multi-server password authenticated key agreement using smart cards," IEEE Transactions on Consumer Electronics, vol. 50, no. 1, pp. 251-255, 2004.

[22] J. Nam, K. K. R. Choo, J. Kim, H. K. Kang, J. Paik, and D. Won, "Password-only authenticated three-party key exchange with provable security in the standard model," The Scientific World Journal, vol. 2014, Article ID 825072, 11 pages, 2014.

[23] Y. Choi, D. Lee, J. Kim, J. Jung, J. Nam, and D. Won, "Security enhanced user authentication protocol for wireless sensor networks using elliptic curves cryptography," Sensors, vol. 14, pp. 10081-10106, 2014.

[24] W. Jeon, J. Kim, J. Nam, Y. Lee, and D. Won, "An enhanced secure authentication scheme with anonymity for wireless environments," IEICE Transactions on Communications, vol. 95, no. 7, pp. 2505-2508, 2012.

Younsung Choi, (1) Junghyun Nam, (2) Donghoon Lee, (1) Jiye Kim, (1) Jaewook Jung, (1) and Dongho Won (1)

(1) Department of Computer Engineering, Sungkyunkwan University, 2066 Seoburo, Suwon, Gyeonggido 440-746, Republic of Korea

(2) Department of Computer Engineering, Konkuk University, 268 Chungwondaero, Chungju, Chungcheongbukdo 380-701, Republic of Korea

Correspondence should be addressed to Dongho Won; dhwon@security.re.kr

Received 14 March 2014; Revised 28 July 2014; Accepted 29 July 2014; Published 8 September 2014

Academic Editor: Fei Yu

TABLE 1: Comparison of security properties.

Security properties            D. Yang and B. Yang    Yoon and Yoo
                                   scheme [10]         scheme [11]

(S1) Anonymity                          X                   X
(S2) Mutual authentication             ()                  ()
(S3) Session key agreement             ()                  ()
(S4) Perfect forward secrecy           ()                  ()

Security properties            Chuang and Chen    Our scheme
                                 scheme [13]

(S1) Anonymity                        ()                ()
(S2) Mutual authentication            ()                ()
(S3) Session key agreement            ()                ()
(S4) Perfect forward secrecy          ()                ()

TABLE 2: Comparison of attack resistance.

Attack resistance                 D. Yang and B. Yang    Yoon and Yoo
                                       scheme [10]        scheme [11]

(A1) Replay attack                         ()                   X
(A2) Modification attack                   ()                   ()
(A3) Stolen-verifier attack                ()                   ()
(A4) off-line guessing attack              ()                   X
(A5) Forgery attack                        ()                   X
(A6) Insider attack                        X                    X
(A7) Masquerade attack                     X                    X
(A8) Smart card attack                     ()                   X
(A9) User impersonation attack             ()                   ()
(A10) DoS attack                           X                    X

Attack resistance                 Chuang and Chen    Our scheme
                                    scheme [13]

(A1) Replay attack                       ()              ()
(A2) Modification attack                 ()              ()
(A3) Stolen-verifier attack              ()              ()
(A4) off-line guessing attack            ()              ()
(A5) Forgery attack                      ()              ()
(A6) Insider attack                      ()              ()
(A7) Masquerade attack                   X               ()
(A8) Smart card attack                   X               ()
(A9) User impersonation attack           X               ()
(A10) DoS attack                         X               ()

TABLE 3: Comparison of efficiency measures.

Efficiency measures          D. Yang and B. Yang       Yoon and Yoo
                                 scheme [10]            scheme [11]

(E1) Single registration             ()                     ()
(E2) S/S PW modification             ()                     ()
(E3) Fast error detection            ()                     ()

                                 (E4) Low computational cost

Registration user                    ...                 [C.sub.h]
Registration server                  ...                    ...
Registration RC             n(3[C.sub.h] + Cexp +    (n + m)[C.sub.h]
                                  [C.sub.F])
Login user                   4[C.sub.h] + Cexp +       2[C.sub.h] +
                                  [C.sub.F]             [C.sub.ECC]
Login server                         ...                    ...
Authentication user              [C.sub.h] +           3[C.sub.h] +
                                 [C.sub.EXP]            [C.sub.ECC]
Authentication server            3[C.sub.h] +          S[C.sub.h] +
                                 2[C.sub.EXP]          2[C.sub.ECC]
Authentication RC                    ...                7[C.sub.h]
PW change user              3[C.sub.h] + [C.sub.F]      2[C.sub.h]
PW change RC                         ...                    ...

Efficiency measures         Chuang and Chen       Our scheme
                              scheme [13]

(E1) Single registration           ()                 ()
(E2) S/S PW modification           ()                 ()
(E3) Fast error detection          ()                 ()

                              (E4) Low computational cost

Registration user              [C.sub.h]          [C.sub.h]
Registration server               ...                ...
Registration RC              n(2[C.sub.h])     n(2[C.sub.h]) +
                                                  [C.sub.h]
Login user                     4[C.sub.h]         4[C.sub.h]

Login server                      ...                ...
Authentication user            S[C.sub.h]         S[C.sub.h]

Authentication server          8[C.sub.h]         9[C.sub.h]

Authentication RC                 ...                ...
PW change user                 3[C.sub.h]         3[C.sub.h]
PW change RC                      ...                ...
COPYRIGHT 2014 Hindawi Limited
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2014 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Title Annotation:Research Article
Author:Choi, Younsung; Nam, Junghyun; Lee, Donghoon; Kim, Jiye; Jung, Jaewook; Won, Dongho
Publication:The Scientific World Journal
Article Type:Report
Date:Jan 1, 2014
Words:11067
Previous Article:Effective multifocus image fusion based on HVS and BP neural network.
Next Article:Formation of three-way scanning electron microscope moire on micro/nanostructures.
Topics:

Terms of use | Privacy policy | Copyright © 2019 Farlex, Inc. | Feedback | For webmasters