You are on page 1of 11

This article has been accepted for publication in a future issue of this journal, but has not been

fully edited. Content may change prior to final publication.


IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
1

Efficient Two-Server Password-Only


Authenticated Key Exchange
Xun Yi∗ , San Ling and Huaxiong Wang

Abstract—Password-Authenticated Key Exchange (PAKE) is where a client and a server, who share a password, authenticate
each other and meanwhile establish a cryptographic key by exchange of messages. In this setting, all the passwords necessary to
authenticate clients are stored in a single server. If the server is compromised, due to, for example, hacking or even insider attack,
passwords stored in the server are all disclosed. In this paper, we consider a scenario where two servers cooperate to authenticate a
client and if one server is compromised, the attacker still cannot pretend to be the client with the information from the compromised
server. Current solutions for two-server PAKE are either symmetric in the sense that two peer servers equally contribute to the
authentication or asymmetric in the sense that one server authenticates the client with the help of another server. This paper presents
a symmetric solution for two-server PAKE, where the client can establish different cryptographic keys with the two servers, respectively.
Our protocol runs in parallel and is more efficient than existing symmetric two-server PAKE protocol, and even more efficient that
existing asymmetric two-server PAKE protocols in terms of parallel computation.

Index Terms—Password-authenticated key exchange, dictionary attack, Diffie-Hellman key exchange, ElGamal encryption

1 I NTRODUCTION Recent research advances in password-based authen-


tication have allowed a client and a server mutually
N OWADAYS , passwords are commonly used by peo-
ple during a log in process that controls ac-
cess to protected computer operating systems, mobile
to authenticate with a password and meanwhile to es-
tablish a cryptographic key for secure communications
after authentication. In general, current solutions for
phones, cable TV decoders, automated teller machines
password-based authentication follow two models.
(ATMs) and etc. A computer user may require pass-
The first model, called PKI-based model, assumes that
words for many purposes: logging in to computer ac-
the client keeps the server’s public key in addition to
counts, retrieving e-mail from servers, accessing pro-
share a password with the server. In this setting, the
grams, databases, networks, web sites, and even reading
client can send the password to the server by public key
the morning newspaper online.
encryption. Gong, Lomas, Needham, and Saltzer [15],
Earlier password-based authentication systems trans-
[22] were the first to present this kind of authentication
mitted a cryptographic hash of the password over a
protocols with heuristic resistant to offline dictionary
public channel which makes the hash value accessible to
attacks, and Halevi and Krawczyk [16] were the first
an attacker. When this is done, and it is very common,
to provide formal definitions and rigorous proofs of
the attacker can work offline, rapidly testing possible
security for PKI-based model.
passwords against the true password’s hash value. Stud-
The second model is called password-only model.
ies have consistently shown that a large fraction of user-
Bellovin and Merritt [4] were the first to consider authen-
chosen passwords are readily guessed automatically. For
tication based on password only, and introduced a set
example, according to Bruce Schneier, examining data
of so-called “encrypted key exchange” (EKE) protocols,
from a 2006 phishing attack, 55% of MySpace passwords
where the password is used as a secret key to encrypt
would be crackable in 8 hours using a commercially
random numbers for key exchange purpose. Formal
available Password Recovery Toolkit capable of testing
models of security for the password-only authentication
200,000 passwords per second in 2006 [26].
were firstly given independently by Bellare, Pointcheval
and Rogaway [3], and Boyko, MacKenzie, Patel and
• Xun Yi is with the School of Engineering and Science, Victoria University,
Melbourne, Victoria 8001, Australia. This work was done during his
Swaminathan [8]. Katz et al. [19] were the first to give
visit to Division of Mathematical Sciences, the School of Physical and a password-only authentication protocol which is both
Mathematical Sciences, Nanyang Technological University, Singapore, practical and provably-secure under standard crypto-
and partially supported by the Singapore National Research Foundation
Competitive Research Program grant NRF-CRP2-2007-03.
graphic assumption.
Based on the identity-based encryption technique [5],
• S. Ling and H. Wang are with Division of Mathematical Sciences, the [6], Yi, Tso and Okamoto [32], [33], [34] suggested an
School of Physical and Mathematical Sciences, Nanyang Technological
University, Singapore 637371. This work was partially supported by the
identity-based model where the client needs to remem-
Singapore National Research Foundation Competitive Research Program ber the password only while the server keeps the pass-
grant NRF-CRP2-2007-03. word in addition to private keys related to its identity.
Manuscript received March 16, 2012; revised June 30 and August 22, 2012. In this setting, the client can encrypt the password based

Digital Object Indentifier 10.1109/TPDS.2012.282 1045-9219/12/$31.00 © 2012 IEEE


This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
2

on the identity of the server. This model is between the operate on the encryption of the password on the basis
PKI-based and the password-only models. of the homomorphic properties of ElGamal encryption
Typical protocols for password-based authentication scheme. For example, given E(g2pw , pk2 ), S1 can construct
assume a single server stores all the passwords necessary E(Ag2pw , pk2 ) and E(g2a·pw , pk2 ) for any group element A
to authenticate clients. If the server is compromised, and integer a without the knowledge of the encryption
due to, for example, hacking, or installing a “Trojan key pk2 .
horse”, or even insider attack, user passwords stored Security analysis has shown that our protocol is secure
in the server are disclosed. To address this issue, two- against both passive and active attacks in case that
server password-based authentication protocols were one server is compromised. Performance analysis has
introduced in [9], [20], [29], [30], [31], [18], where two shown that our protocol is more efficient than existing
servers cooperate to authenticate a client on the basis of symmetric and asymmetric two-server PAKE protocols
password and if one server is compromised, the attacker in terms of parallel computation.
still cannot pretend to be the client with the information Our protocol can be applied in distributed systems
from the compromised server. where multiple servers exist. For example, Microsoft
Current solutions for two-server PAKE are either sym- Active Directory Domain Service (AD DS) is the founda-
metric in the sense that two peer servers equally con- tion for distributed networks built on Windows Server
tribute to the authentication, such as [20], or asymmetric operating systems that use domain controllers. AD DS
in the sense that one server authenticates the client with provides structured and hierarchical data storage for
the help of another server, such as [30], [18]. A symmetric objects in a network such as users, computers, printers,
two-server PAKE protocol, e.g., Katz et al.’s protocol and services. AD DS also provides support for locating
[20], can run in parallel and establishes secret session and working with these objects. For a large enterprise
keys between the client and two servers, respectively. running its own domain, there must be two AD DS
In case one of the two servers shuts down due to the domain controllers, for fault-tolerance purpose. To au-
denial-of-service attack, another server can continue to thenticate a user on a network, the user usually needs to
provide services to authenticated clients. In terms of provide his/her identification and password to one AD
parallel computation and reliable service, a symmetric DS domain controller. Based on our two-server PAKE
protocol is superior to an asymmetric protocol. So far, protocol, we can split the user’s password into two parts
only Katz et al.’s two-server PAKE protocol [20] has and store them, respectively, on the two AD DS domain
been symmetric. But their protocol is not efficient for controllers, which can then cooperate to authenticate the
practical use. An asymmetric two-server PAKE protocol user. Even if one domain controller is compromised, the
runs in series and only the front-end server and the system can still work. In this way, we can achieve more
client need to establish a secret session key. Current secure AD DS.
asymmetric protocols, e.g., Yang et al.’s protocol [30], The rest of this paper is organized as follows. We
[31] and Jin et al.’s protocol [18], need two servers to introduce related works in Section 2, and two crypto-
exchange messages for several times in series. These graphic building blocks of our protocol, Diffie-Hellman
asymmetric designs are less efficient than a symmetric key exchange protocol and ElGamal encryption scheme,
design which allows two servers to compute in parallel. in Section 3, and describe our two-server PAKE protocol
In this paper, we propose a new symmetric solution in Section 4. Security and performance analysis of our
for two-server PAKE. In all existing two-server PAKE protocol is done in Sections 5 and 6, respectively and
protocols, two servers are provided random password Conclusions are drawn in the last section.
shares pw1 and pw2 subject to pw1 + pw2 = pw. In our
protocol, we provide one server S1 with an encryption of
the password E(g2pw , pk2 ), and another server S2 with an 2 R ELATED W ORKS
encryption of the password E(g2pw , pk1 ), where pk1 and In a single-server PAKE protocol, if the server is com-
pk2 are the encryption keys of S1 and S2 , respectively. promised, user passwords stored in the server are all
In addition, two servers are provided random password disclosed. To address this issue, in 2000, Ford and Kaliski
shares b1 and b2 subject to b1 ⊕ b2 = H(pw), where H is [13] proposed the first threshold PAKE protocol in the
a hash function. Like [20], [31], [18], the password pw is PKI-based model, in which n servers cooperate to au-
secret unless the two servers collude. thenticate a client. Their protocol remains secure as long
Although we use the concept of public key cryptosys- as n − 1 or few servers are compromised. Subsequently,
tem, our protocol follows the password-only model. The in 2001, Joblon [17] removed the requirement for PKI
encryption and decryption key pairs for the two servers and suggested a protocol with the similar property in
are generated by the client and delivered to the servers the password-only model. Both the threshold PAKE
through different secure channels during the client reg- protocols were not shown to be secure formally. In
istration, as the client in any two-server PAKE protocol 2002, MacKenzie et al. [24] gave a protocol in the PKI-
sends two halves of the password to the two servers based setting, which requires only t out of n servers to
in secret, respectively. In fact, a server should not know cooperate in order to authenticate a client and is secure
the encryption key of another server and is restricted to as long as t − 1 or fewer servers are compromised. They
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
3

were the first to provide a formal security proof for their [31], with the help of CS, where a, (a1 , b1 ), and b2 are
threshold PAKE protocol in the random oracle model. randomly chosen by the client, SS and CS, respectively.
In 2003, Di Raimondo and Gennaro [11] proposed a The security of Yang et al.’s protocol in [30] is based
protocol in the password-only setting, which requires on an assumption that the back-end server cannot be
less than 1/3 of the servers to be compromised, with compromised by an active adversary. This assumption
a formal security proof in the standard model. was later removed in [31] at the cost of more com-
putation and communication rounds. The advantage of
In 2003, Brainard et al. [9] developed the first two-
Yang et al.’s protocols [30], [31] is efficiency for practical
server protocol in the PKI-based setting. Their proto-
use. Yang et al.’s protocols are more efficient than Katz
col and its variant [27] assume a secure channel be-
et al.’s protocols [20] in terms of communication and
tween the client and the server(s), which would be
computation complexities, but its disadvantage is the
in practice implemented using public key techniques
protocol structure which requires two servers to compute
such as SSL. In 2005, Katz et al. [20] proposed the
in series and needs more communication rounds.
first two-server password-only authenticated key ex-
change protocol with a proof of security in the standard In 2007, Jin et al. [18] further improved Yang et al.’s
model. Their protocol extended and built upon the Katz- protocol [31] and proposed a two-server PAKE protocol
Ostrovsky-Yung PAKE protocol [19], called KOY proto- with less communication rounds. In their protocol, the
col for brevity. In their protocol, a client C randomly client sends B = g1a g2π to SS; SS forwards B1 = B/g1b1 g2π1
(a−b )b
chooses a password pw, and two servers A and B are to CS; CS returns A1 = g1b2 , B2 = (B1 /g2π2 )b2 = g1 1 2
b1 b 3 ab2 b3
provided random password shares pw1 and pw2 subject to SS; SS computes B3 = (B2 A1 ) = g and
to pw1 + pw2 = pw. At high level, their protocol can responds A2 = Ab13 , S1 = H(B3 ) to the client, where
be viewed as two executions of the KOY protocol, one H is a hash function. Next, SS and the client authen-
between the client C and the server A, using the server ticate each other by checking if they can agree on the
B to assist with the authentication, and one between same secret session key g1ab2 b3 , where a, (b1 , b3 ), b2 are
the client C and the server B, using the server A to randomly chosen by the client, SS and CS, respectively.
assist with the authentication. The assistance of the other The advantage of Jin et al.’s protocol is that it needs less
server is necessary since the password is split between communication rounds than Yang et al.’s protocol in [31]
two servers. In the end of their protocol, each server without introducing additional computation complexity.
and the client agree on a secret session key. Katz et al.’s Like Yang et al.’s protocols, the disadvantage of Jin et
protocol [20] is symmetric where two servers equally al.’s protocol is the protocol structure which requires two
contribute to the client authentication and key exchange. servers to compute in series.
For their basic protocol secure against a passive ad- In this paper, we propose a new symmetric two-
versary, each party performs roughly twice the amount server PAKE protocol which supports two servers to
of works as the KOY protocol. For the protocol secure compute in parallel and meanwhile keeps efficiency for
against active adversaries, the work of the client remains practical use. Our protocol needs only four communi-
the same but the work of the servers increase by a factor cation rounds for the client and two servers mutually
of roughly 2-4. The advantage of Katz et al.’s protocols to authenticate and simultaneously to establish secret
is the protocol structure which supports two servers to session keys. Our protocol is more efficient than existing
compute in parallel, but its disadvantage is inefficiency symmetric two-server PAKE protocol, such as Katz et
for practical use. al.’s protocol [20]. In terms of parallel computation, our
protocol is even more efficient than existing asymmetric
Built on Brainard et al.’s work [9], in 2005, Yang et two-server PAKE protocols, such as Yang et al.’s protocol
al. [29] suggested an asymmetric setting, where a front- [30] and Jin et al.s protocol [18].
end server, called service server (SS), interacts with the
client, while a back-end server, called control server
(CS), helps SS with the authentication, and only SS 3 P RELIMINARIES
and the client agree on a secret session key in the
end. They proposed a PKI-based asymmetric two-server 3.1 Diffie-Hellman Key Exchange Protocol
PAKE protocol in [29] in 2005 and several asymmetric The Diffie-Hellman key exchange protocol [10] was in-
password-only two-server PAKE protocols in [30], [31] in vented by Diffie and Hellman in 1976. It was the first
2006. In their password-only protocol [30], [31], the client practical method for two users to establish a shared
initiates a request, and SS responds with B = B1 B2 , secret key over an unprotected communications channel.
where B1 = g1b1 g2π1 and B2 = g1b2 g2π2 are generated by SS Although it is a non-authenticated key exchange proto-
and CS on the basis of their random password shares π1 col, it provides the basis for a variety of authenticated
and π2 , respectively, and then the client can obtain g1b1 +b2 protocols. Diffie-Hellman key exchange protocol was
by eliminating the password π (= π1 + π2 ) from B, i.e., followed shortly afterward by RSA [25], the first practical
computing B/g2π . Next, SS and the client authenticate public key cryptosystem.
each other by checking if they can agree on the same Consider two users Alice and Bob, who know nothing
a(b +b ) aa (b +b )
secret session key, either g1 1 2 [30] or g1 1 1 2 about each other, but wish to establish secure commu-
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
4

nications between them, Diffie-Hellman key exchange ElGamal encryption scheme is a probabilistic encryp-
protocol can be used as follows. tion scheme. If encrypting the same message with ElGa-
1) Alice and Bob agree on a cyclic group G of large mal encryption scheme several times, it will, in general,
prime order q with a generator g. yield different ciphertexts. Tsiounis Yung [28] proved
2) Alice randomly chooses an integer a from Z∗q and ElGamal encryption scheme to be semantically secure
computes X = g a , while Bob randomly chooses an under the DDH assumption. ElGamal encryption scheme
integer b from Z∗q and computes Y = g b . Then Alice has useful homomorphic properties as follows:
and Bob exchange X and Y . • Given an encryption of m, E(m, y) = (A, B), one
3) Alice computes the secret key k1 = Y a = g ba , while can compute (A, γB) = E(γm, y) for any γ in G,
Bob computes the secret key k2 = X b = g ab . an encryption of γm, and one can also compute
It is obvious that k1 = k2 and thus Alice and Bob have (Aα , B α ) = E(mα , y) for any α in Z∗q , an encryption
agreed on the same secret key, by which the subsequent of mα .
• Given encryptions of m1 and m2 , E(m1 , y) =
communications between them can be protected.
Diffie-Hellman key exchange protocol is secure against (A1 , B1 ) and E(m2 , y) = (A2 , B2 ), one can com-
any passive adversary, who cannot interact with Alice pute (A1 A2 , B1 B2 ) = E(m1 m2 , y), an encryption of
and Bob, attempting to determine the secret key solely m1 m2 .
based upon observed data. The security is built on
the well-known Computational Diffie-Hellman (CDH) 4 T WO -S ERVER PASSWORD -O NLY AUTHEN -
and Decisional Diffie-Hellman (DDH) assumptions as TICATION AND K EY E XCHANGE
follows. 4.1 Our Model
CDH Assumption: Consider a cyclic group G of large
In our system, there exist two servers S1 and S2 and a
prime order q with a generator g. The CDH assumption
group of clients. The two servers cooperate to authenti-
states that, given (G, g, g a , g b ) for randomly chosen a, b
cate clients and provide services to authenticated clients.
from Z∗q , it is computationally intractable to compute the
Prior to authentication, each client C chooses a pass-
value g ab .
word pwC and generates the password authentication
DDH Assumption: Consider a cyclic group G of large (1) (2)
information AuthC and AuthC for S1 and S2 , respec-
prime order q with a generator g. The DDH assumption
tively, such that nobody can determine the password
states that, given (G, g, g a , g b ) for randomly chosen a, b (1) (2)
from Z∗q , the value g ab looks like a random element in pwC from AuthC or AuthC unless S1 and S2 collude.
(1) (2)
G. This intuitive notion is formally stated by saying that The client sends AuthC and AuthC to S1 and S2 ,
no probabilistic polynomial time (PPT) algorithm can respective, through different secure channels during the
distinguish the following two probability distributions client registration. After that, the client remembers the
with a probability more than 1/2 plus a non-negligible password only, and the two servers keep the password
value. authentication information. Like all existing solutions
a b ab for two-server PAKE, we assume the two servers never
• (g , g , g ), where a and b are randomly and inde-
collude in order to reveal the password of the client.
pendently chosen from Z∗q .
a b c When the two servers cooperate to authenticate a
• (g , g , g ), where a, b, c are randomly and indepen-
client C, we assume that the client C can broadcast
dently chosen from Z∗q .
a message to both of S1 and S2 simultaneously, but
stress that we do not assume a broadcast channel and,
3.2 ElGamal Encryption Scheme in particular, an attacker can deliver different messages
to the two servers or refuse to deliver a message to a
The ElGamal encryption scheme was invented by El-
server. In our protocol, the client and the two servers
Gamal in 1985 [12] on the basis of Diffie-Hellman key
communicate through a public channel which may be
exchange protocol. It consists of key generation, encryp-
eavesdropped, delayed, replayed, and even tampered by
tion, and decryption algorithms as follows.
an attacker.
1) Key Generation: On input a security parameter Our protocol is symmetric if two peer servers equally
k, it publishes a cyclic group G of large prime contribute to the authentication in terms of computation
order q with a generator g. Then it chooses a and communication.
decryption key x randomly from Z∗q and computes
an encryption key y = g x . Definition 1. Our protocol is correct if each server estab-
2) Encryption: On inputs a message m ∈ G and the lishes a secret session key with the client in the end.
encryption key y, it chooses an integer r randomly An adversary in our system is either passive or ac-
from Z∗q and outputs a ciphertext C = E(m, y) = tive. We consider both online dictionary attack, where
(A, B) = (g r , m · y r ). an attacker attempts to login repeatedly, trying each
3) Decryption: On inputs a ciphertext (A, B), and the possible password, and offline dictionary attack, where
decryption key x, it outputs the plaintext m = an adversary derives information about the password
D(C, x) = B/Ax . from observed transcripts of log sessions. The online
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
5

R
Public: G, q, g1 , g2 , H : {0, 1}∗ → Zq
x1 , x2 , a1 , a2 , b1 ← Z∗q
(1)
AuthC = {x1 , a1 , b1 , (A2 , B2 )}
y1 ← g1x1 , y2 ← g1x2 - Server S1
pwC a1 Secure Channel 1
(A1 , B1 ) ← (g1a1 , g2 y1 )
a2 pwC a2
(A2 , B2 ) ← (g1 , g2 y2 ) Client C (pwC )
b2 ← H(pwC ) ⊕ b1
(2)
(1) AuthC = {x2 , a2 , b2 , (A1 , B1 )}
AuthC ← {x1 , a1 , b1 , (A2 , B2 )} - Server S2
(2) Secure Channel 2
AuthC ← {x2 , a2 , b2 , (A1 , B1 )}

Fig. 1. Registration of our protocol

dictionary attack cannot be prevented by cryptographic two servers collude. It is well-known that the discrete
means but can be easily detected and suspended once logarithm problem is hard, and our model assumes that
the authentication fails several times. the two servers never collude.
We assume that an adversary can compromise one
server only and obtain all information stored in the 4.2.2 Registration
server. A passive adversary is able to monitor the com- Prior to authentication, each client C is required to
munications among the client and two servers. An active register both S1 and S2 through different secure chan-
adversary is able to pretend to be both one server and nels. First of all, the client C generates decryption and
the client to communicate with the honest server or encryption key pairs (xi , yi ) where yi = g1xi for the server
pretend to be both two servers to communicate with the Si (i = 1, 2) using the public parameters published by
legal client, deviate in an arbitrary way from the actions the two servers. Next, the client C chooses a password
prescribed by the protocol. pwC and encrypts the password using the encryption key
In our protocol, the adversary attempts to learn the yi , i.e., E(g2pwC , yi ) = (Ai , Bi ) = (g1ai , g2pwC yiai ) (i = 1, 2)
secret session key established between the client and the where ai is randomly chosen from Z∗q , according to El-
honest server. In an active attack, an adversary can learn Gamal encryption. Then, the client C randomly chooses
the secret session key between the client and the honest b1 from Z∗q and lets b2 = H(pwC ) ⊕ b1 , where ⊕ stands
server if the adversary can determine the password of for exclusive OR of two -bit blocks. At last, the client
the client. C delivers the password authentication information
(1)
In general, we say that our protocol is secure if no AuthC = {x1 , a1 , b1 , E(g2pwC , y2 )} to S1 through a secure
adversary can succeed in any passive and active attacks channel, and the password authentication information
in case that one server is compromised. We will define (2)
AuthC = {x2 , a2 , b2 , E(g2pwC , y1 )} to S2 through another
when an adversary succeeds in a passive attack or an secure channel. After that, the client C remembers the
active attack later in Section 5. password pwC only. The detailed process of registration
is depicted in Fig. 1.
4.2 Our Protocol Remark: The two secure channels are necessary for all
Our protocol runs in three phases - initialization, regis- two-server PAKE protocols, where a password is split
tration and authentication. into two parts, which are securely distributed to the
two servers, respectively, during registration. Although
4.2.1 Initialization we refer to the concept of public key cryptosystem,
the encryption key of one server should be unknown
The two peer servers S1 and S2 jointly choose a cyclic
to another server and the client needs to remember a
group G of large prime order q with a generator g1 and
password only after registration.
a secure hash function H : {0, 1}∗ → Zq , which maps a
message of arbitrary length into an -bit integer, where
4.2.3 Authentication and Key Exchange
 = log2 q. Next, S1 randomly chooses an integer s1 from
Z∗q and S2 randomly chooses an integer s2 from Z∗q , and Assume that the two servers S1 and S2 have received the
S1 and S2 exchange g1 s1 and g1 s2 . After that, S1 and S2 password authentication information of a client C during
jointly publish public system parameters G, q, g1 , g2 , H the registration, there are five steps for the two servers
where g2 = g1s1 s2 . S1 and S2 to authenticate the client C and establish
secret session keys with the client C in terms of parallel
Remark: In most of existing two-server PAKE protocols computation.
such as [30], [31], [18], it is assumed or implied that
Step 1 . The client C randomly chooses an integer
the discrete logarithm of g2 to the base g1 is unknown
r from Z∗q , computes R = g1r g2−pwC and then
to anyone. Otherwise, their protocols are insecure. Our
broadcasts a request message M1 = {C, Req, R}
initialization can ensure that nobody is able to know
to the two servers S1 and S2 .
the discrete logarithm of g2 to the base g1 unless the
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
6

Public: G, q, g1 , g2 , H : {0, 1}∗ → Z∗q

Client C Server S1 Server S2


(1) (2)
(pwC ) (AuthC = {x1 , a1 , b1 , A2 , B2 }) (AuthC = {x2 , a2 , b2 , A1 , B1 })
R
Step 1: r ← Z∗q
−pwC M1 = {C, Req, R}
R ← g1r g2 - -
Broadcasting
R R
Step 2: r1 ← Z∗q Step 2: r2 ← Z∗q
M2 = {A2 , B2 }
A2 ← Ar21 - A1 ← Ar12
B2 ← (R · B2 )r1  B1 ← (R · B1 )r2
M3 = {A1 , B1 }
R R
Step 3: r1 ← Z∗q Step 3: r2 ← Z∗q
−1  −1 
R1 ← A1 a1 r1 R2 ← A2 a2 r2

 
K1 ← (B1 /A1 x1 )r1 K2 ← (B2 /A2 x2 )r2
h1 ← H(K1 , 0) ⊕ b1 h2 ← H(K2 , 0) ⊕ b2
 M4 = {S1 , R1 , h1 }

Step 4: K1 ← R1r  M5 = {S2 , R2 , h2 }

K2 ← R2r
if H(K1 , 0) ⊕ H(K2 , 0) ⊕ h1 ⊕ h2 = H(pwC )
M6 = {h1 , h2 }
{ h1 = H(K1 , 1) ⊕ H(K1 , 0) ⊕ h1 - -
Broadcasting
h2 = H(K2 , 1) ⊕ H(K2 , 0) ⊕ h2
SK1 = H(K1 , 2) Step 5: if H(K1 , 1) ⊕ b1 = h1 Step 5: if H(K2 , 1) ⊕ b2 = h2
SK2 = H(K2 , 2) } SK1 ← H(K1 , 2) SK2 ← H(K2 , 2)
else return ⊥ else return ⊥ else return ⊥

Fig. 2. Authentication and key exchange of our symmetric protocol

Step 2 . On receiving M1 , the server S1 randomly chooses an integer r2 from Z∗q , computes
chooses an integer r1 from Z∗q and computes a−1 
2 r2
R2 = A2
x 
A2 = Ar21 K2 = (B2 /A2 2 )r2
B2 = (R · B2 )r1 . h2 = H(K2 , 0) ⊕ b2
and replies M5 = {S2 , R2 , h2 } to the client C.
The server S2 randomly chooses an integer r2
Step 4 . After receiving M4 and M5 , the client C com-
from Z∗q and computes
putes
K1 = R1 r , K2 = R2 r
A1 = Ar12
B1 = (R · B1 )r2 . and checks if
H(K1 , 0) ⊕ H(K2 , 0) ⊕ h1 ⊕ h2 = H(pwC )
Then, S1 and S2 exchange M2 = (A2 , B2 ) and
If so, the two servers S1 and S2 are authentic.
M3 = (A1 , B1 ).
The client C computes
Step 3 . On receiving (A1 , B1 ), the server S1 randomly
chooses an integer r1 from Z∗q , computes h1 = H(K1 , 1) ⊕ H(K1 , 0) ⊕ h1
h2 = H(K2 , 1) ⊕ H(K2 , 0) ⊕ h2
a−1 
1 r1
R1 = A1 and then broadcasts M6 = {h1 , h2 }. At last, the
K1 =
x 
(B1 /A1 1 )r1 client C sets the secret session keys with S1 and
S2 as SK1 = H(K1 , 2) and SK2 = H(K2 2),
h1 = H(K1 , 0) ⊕ b1 respectively.
Step 5 . On receiving M6 , the server S1 checks if
and replies M4 = {S1 , R1 , h1 } to the client C.
On receiving (A2 , B2 ), the server S2 randomly H(K1 , 1) ⊕ b1 = h1
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
7

If so, S1 concludes that the client C is authentic 5 S ECURITY OF O UR P ROTOCOL


and sets the secret session key with the client In this section, we will provide security proof of our
C as SK1 = H(K1 , 2). protocol against the passive attack and the active attack,
The server S2 checks if respectively.
H(K2 , 1) ⊕ b2 = h2
5.1 Security Against Passive Attack
If so, S2 concludes that the client C is authentic
and sets the secret session key with the client Since our protocol is symmetric, we only consider the
C as SK2 = H(K2 , 2). passive attack, where the passive adversary A, who has
The detailed process of authentication and key ex- compromised the server S2 and is able to play the role
change is illustrated in Fig. 2. of S2 and monitor all communications between S1 and
C, attempts to learn the secret session key established
4.2.4 Correctness between the server S1 and the client C.
The detailed authentication and key exchange of our The hash function is for authentication purpose in-
protocol has been described as above. From Fig. 2, we stead of key exchange purpose. To simplify the security
can see that the two peer servers S1 and S2 equally con- analysis, we treat K1 instead of SK1 = H(K1 , 2) as the
tribute to the authentication and key exchange. There- secret session key derived by the server S1 for the client
fore, our protocol is symmetric. C, and treat K1 instead of SK1 = H(K1 , 2) as the secret
We need to show the client has established the secret session key derived by the client C for the server S1 , and
session keys with the two servers, respectively. If the two ignore the communication of hash values in our protocol.
servers and the client all follow our protocol, we have Like [3], [19], [20], [21], we define the security of our
protocol with a game, where after establishing a secret
Theorem 1. Our protocol is correct, i.e., with reference to
session key K1 (K1 ), the adversary A is provided with
Fig. 1 and Fig. 2, we have SK1 = SK1 and SK2 = SK2 .
either K1 (K1 ) or an random element in G with equally
Proof: Since R = g1r g2−pwc , A1 = g1a1 , B1 = probability to guess. A wins the game if A can guess
g1pwC y1a1 , A1
= Ar12 , B1 = (RB1 )r2 , we have correctly.
A1 = (g1a1 )r2 = g1r2 a1 Definition 2. Our protocol (without communication of
B1 = (g1r g2−pwC g2pwC y1a1 )r2 = g1rr2 y1r2 a1 . hash values) is secure against the passive attack if no
probabilistic polynomial time (PPT) adversary can win
We can see (A1 , B1 ) is an ElGamal encryption of g1rr2 by the above game with a probability more than 1/2 plus
the encryption key y1 of the server S1 . a non-negligible value.
Because y1 = g1x1 , we have
x  
Theorem 2. Under the DDH assumption, our protocol
K1 = (B1 /A1 1 )r1 = (g1rr2 y1r2 a1 /(g1r2 a1 )x1 )r1 (without communication of hash values) is secure against
 rr1 r2
= (g1rr2 y1r2 a1 /y1r2 a1 )r1 = g1 . the passive attack.

In addition, Proof. If our protocol is insecure against the passive


attack, i.e., the passive adversary A can win the above
a−1 
1 r1
−1  r1 r2
R1 = A1 = (g1r2 a1 )a1 r1 = g1 game with a probability more than 1/2 plus a non-
 r
K1 = R1 = g 1
rr1 r2
. negligible value, we can use A as a subroutine to solve
the DDH problem as follows.
Therefore, K1 = K1 . By the symmetric property, we can Suppose that we challenge a DDH problem
prove K2 = K2 in the same way. (g1a , g1b , Z) where Z is either g1ab or a random
Because h1 = H(K1 , 0) ⊕ b1 , h2 = H(K2 , 0) ⊕ b2 , we element in G with equal probability. First of all,
have we run the initialization and the registration for
H(K1 , 0) ⊕ H(K2 , 0) ⊕ h1 ⊕ h2 the client C and forward {x2 , a2 , b2 , A1 , B1 } =
  {x2 , a2 , b2 , (g1b )a1 , g1−a g2pwC Z(g1b )x1 a1 } to the adversary A.
= H(K1 , 0) ⊕ H(K2 , 0) ⊕ H(K1 , 0) ⊕ b1 ⊕ H(K2 , 0) ⊕ b2
Under the DDH assumption, the ElGamal encryption
= b1 ⊕ b2 = H(pwC ) scheme is semantically secure [12] and thus A is unable
In view of this, the client C accepts the messages M4 to distinguish an encryption of g2pwC from the encryption
−a pwC b x1
and M5 , broadcasts h1 = H(K1 , 1) ⊕ H(K1 , 0) ⊕ h1 , h2 = of g1 g2 Z under the encryption key (g1 ) without
 
H(K2 , 1) ⊕ H(K2 , 0) ⊕ h2 to two servers S1 and S2 , and knowledge of the decryption key x 1 . With reference

computes two secret session keys SK1 = H(K1 , 2) and  to Fig. 2, we let the client C broadcast R = g1a g2−pwC
SK2 = H(K2 , 2). to S1 and S2 (played by the passive adversary A),
At last, because H(K1 , 1)⊕b1 = H(K1 , 1)⊕(H(K1 , 0)⊕ which follow the protocol and exchange {A1 , B1 }
   a−1 b r
h1 ) = h1 , the server S1 accepts the message M6 and and {A2 , B2 }.x In S1 , we let R1 = (A1 ) 1 = (g1 ) 2 ,

  1 r2
computes the secret session key SK1 = H(K1 , 2). It is K1 = B1 /A1 = Z , where r2 is randomly chosen
obvious that SK1 = SK1 because K1 = K1 . In the same by A, and then S1 replies C with {R1 }. In S2 , the
−1  r r
way, we can prove that SK2 = SK2 .  passive adversary A computes R2 = (A2 )a2 r2 = g11 2 ,
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
8

x  
K2 = (B2 /A2 2 )r2 = (g a )r1 r2 with knowledge of Theorem 3. Under the DDH, vDDH1 and vDDH2 as-
(x2 , a2 ), where r1 , r2 are randomly chosen by S1 and A, sumptions, our protocol (without communication of hash
respectively, and then A replies C with {R2 }. After the values) is secure against the active attack to the honest
client C receives R1 and R2 , we let K1 = Z r2 . server.
In this experiment, the exchanged messages are avail-
able to A. When Z = g ab , this experiment is exactly the Proof. We provide a sketch of security proof in Section
same as our protocol in the view of A. 1 of our supplement.
Next, A is provided K1 (K1 ) or a random element Next, we consider the active attack to the client C,
in G with equal probability. If A guesses correctly, we where an active adversary A, who has compromised
conclude Z = g ab . Otherwise, we conclude Z is a the server S2 and pretends to be the servers S1 and
random element in G. Since A can win the game with a S2 to communicate with the client C, attempts to learn
probability more than 1/2 plus a non-negligible value, the secret session key K1 derived by C for S1 after C
we can distinguish g ab from a random element in G in accepts the messages M4 and M5 . Because the client
the DDH problem with a probability more than 1/2 plus authenticates the messages M4 and M5 by hash function
a non-negligible value. This contradicts with the DDH H, we will take in account the communication of hash
assumption. Therefore, our protocol is secure against the values in this security analysis. We define the security
passive attack and the theorem is proved.  of our protocol with a game, where after accepting the
messages M4 and M5 , the client C computes K1 , and
5.2 Security Against Active Attack the adversary A is provided with either the secret session
key SK1 = H(K1 , 2) or an random element with equally
We first consider the active attack to the honest server, probability to guess. A wins the game if A can guess
where an active adversary A, who has compromised correctly.
S2 and pretend to be the server S2 and the client C
to communicate with the server S1 , attempts to learn Definition 4. Our protocol is secure against the active
the secret session key K1 derived by S1 for C. Like our attack to the client C if no probabilistic polynomial time
security analysis on the passive attack, we ignore the (PPT) adversary can win the above game with a probabil-
communication of hash values. We define the security ity more than Q/N plus a non-negligible value, where N
of our protocol with a game, where after the server S1 is the size of the dictionary D from which the password is
computes K1 , the adversary A is provided with either randomly chosen and Q is the number of queries that the
K1 or an random element in G with equally probability adversary can try.
to guess. A wins the game if A can guess correctly.
Theorem 4. Under the DDH, vDDH1 and vDDH2 as-
Definition 3. Our protocol is secure against the active sumptions, our protocol (with communications of hash
attack to the honest server if no probabilistic polynomial values) is secure against the active attack to the client if
time (PPT) adversary can win the above game with a the hash function H is one-way and collision-free.
probability more than Q/N + 1/2 plus a non-negligible
value, where N is the size of the dictionary D from which Remark. A hash function H is said to be one-way if
the password is randomly chosen and Q is the number of given a hash value h, it is computationally infeasible
queries that the adversary can try. to find some input x such that H(x) = h. If, given
a message x, it is computationally infeasible to find a
To prove the security of our protocol against the active
message y not equal to x such that H(x) = H(y) then
attack, we need two variants of the decisional Diffie-
H is said to be a weakly collision-free hash function. A
Hellman (DDH) assumption as follows.
strongly collision-free hash function H is one for which
vDDH1 Assumption: Consider a cyclic group G of
it is computationally infeasible to find any two messages
large prime order q with a generator g. The vDDH1
x and y such that H(x) = H(y).
assumption states that, given (G, g, g a , g ab ) for randomly
chosen a, b from Z∗q , no probabilistic polynomial time Proof. We provide a sketch of security proof in Section
(PPT) algorithm can distinguish g b from a random ele- 2 of our supplement.
ment in G with a probability more than 1/2 plus a non- Our protocol provides explicit authentication in the
negligible value. sense that each party know that other parties have
vDDH2 Assumption: [7]: Consider a cyclic group G established their secret session keys correctly if the
of large prime order q with a generator g. The vDDH2 message authentication by the party succeeds. If the
assumption states that, given (G, g, h, g a ) for randomly client C accepts the messages M4 and M5 , the client C
chosen a from Z∗q and h from G, no probabilistic poly- is confirmed that the servers S1 and S2 will compute
nomial time (PPT) algorithm can distinguish ha from a their secret session keys with the client C correctly. If
random element in G with a probability more than 1/2 the server S1 accepts the message M6 , the server S1 is
plus a non-negligible value. confirmed that the client C has computed the same secret
Remark: The vDDH2 assumption has been used in [30], session key SK1 , and the client C and the server S2 have
[18] to prove the security of their protocols. established their secret session key correctly.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
9

Participants KMTG Protocol Our Protocol


comm. > 15L comm. 3L + 4
Client comp. > 20 comp. 4
rounds 3 rounds 3
comm. > 19L comm. 6L + 3
Server comp. > 26 comp. 5
rounds 5 rounds 4

TABLE 1
Performance comparison of our protocol with KMTG protocol

Participants YDB Protocol JWX Protocol Our Protocol


comm. 4L + 2 comm. 6L + 2 comm. 3L + 4
Client C comp. 5 comp. 6 comp. 4
rounds 6 rounds 3 rounds 3
comm. 8L + 3 comm. 11L + 3 comm. 6L + 3
Server S1 comp. 6 comp. 8 comp. 5
(SS) rounds 10 rounds 6 rounds. 4
comm. 4L + 1 comm. 5L + 1 comm. 6L + 3
Server S2 comp. 3 comp. 4 comp. 5
(CS) rounds 4 rounds 3 rounds 4
Total comm. 8L + 3 comm. 11L + 3 comm. 6L + 3
Running Time comp. 9 comp. 12 comp. 5
(Server Side) rounds 10 rounds 6 rounds 4

TABLE 2
Performance comparison of our protocol with YDB and JWX protocols

6 P ERFORMANCE A NALYSIS change sessions between the client and two servers, re-
In this section, we analyze the performance of our pro- spectively. At the end, both servers confirm to each other
tocol and compare our protocol with existing protocols the outcome of the authentication process. This solution
for two-server password-only authentication and key can be constructed with any existing efficient two-party
exchange. password-authenticated key exchange protocol, like [1],
With reference to Fig. 2, we can see that both servers [2], but is impractical because the client is required to
in our protocol equally contribute to authentication and remember two passwords, a different one for each sever.
key exchange and have the same communication and To the best of our knowledge, Katz et al.’s protocol
computation complexity. We only need to analyze the [20], called the KMTG protocol for brevity, is the only
performance of one server. existing symmetric protocol for two-server password-
As far as the server S1 is concerned, it receives M1 only authentication and key exchange. The performance
from the client C, exchanges M2 , M3 with the server comparison of our protocol with the KMTG protocol
S2 , replies M4 to C, and receives M6 from C. The total is shown in Tab. 1. From Tab. 1, we can see that our
communication complexity for S1 is 6L + 3, where L is protocol is much more efficient than the KMTG protocol
the size of a group element in G and  is the size of the in both the client and the server sides.
hash value, i.e., log2 q. The total computation complexity The performance comparison of our protocol with Jin
for S1 is 5 exponentiations in G. et al.’s protocol [18], called the JWX protocol for brevity,
The client C broadcasts M1 to S1 and S2 , receives M4 and Yang et al.’s protocol [30], called the YDB protocol
and M5 from S1 and S2 , respectively, and broadcasts for brevity, is shown in Tab. 2.
M6 to S1 and S2 . The total communication complexity From Tab. 2, we can see that (1) our protocol in the
for C is 3L + 4, almost half of the communication client side is more efficient than both the YDB protocol
complexity for S1 . The total computation complexity is and the JWX protocol; (2) our protocol in one of two
4 exponentiation. servers is more efficient than both the YDB protocol and
In terms of parallel computation, our protocol has four the JWX protocol in the Service Server (SS); but (3) our
communication rounds only. The client C broadcasts M1 protocol in another server is slightly less efficient than
to the two servers S1 and S2 in the first round; S1 and the YDB protocol and the JWX protocol in the Control
S2 exchange M2 and M3 in the second round; S1 and Server (CS).
S2 both reply C with M4 and M5 in the third round; C Note that the YDB protocol and the JWX protocol are
broadcasts M6 in the last round. The client C is involved asymmetric, where only the front-end server and the
in three communication rounds. client agree on a secret session key in the end. Our
A naive solution for two-server password-only au- protocol is symmetric, where the client agrees on two
thentication and key exchange can be implemented by different secret keys with the two servers in the end,
running two parallel password-authenticated key ex- respectively. In addition, the YDB protocol and the JWX
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
10

protocol run in series, while our protocol runs in parallel. [8] Boyko, V., Mackenzie, P., and Patel, S. (2000) Provably secure
In terms of parallel computation, our symmetric pro- password-authenticated key exchange using Diffie-Hellman. Proc.
Eurocrypt’00, pp. 156-171.
tocol has a feature that the total running time in the [9] Brainard, J., Jueles, A., Kaliski, B. S. and Szydlo, M. (2003) A new
two-server side is equal to the total running time of two-server approach for authentication with short secret. Proc.
one server, i.e., transmitting 6L + 3 bits and computing USENIX Security’03, pp. 201-214.
[10] Diffie, W. and Hellman, M. E. (1976) New directions in cryptog-
5 modular exponentiations in 4 rounds. However, in raphy. IEEE Trans. Information Theory, IT-22, 644-654.
the asymmetric YDB protocol and the asymmetric JWX [11] Di Raimondo, M. and Gennaro, R. (2003) Provably secure thresh-
protocol, the total running time in the two-server side old password authenticated key exchange. Proc. Eurocrypt’03,
pp. 507-523.
is equal to the sum of two servers’ running time, i.e., [12] ElGamal, T. (1985) A public key cryptosystem and a signature
transmitting 8L + 3 bits and computing 9 modular scheme based on discrete logarithms. IEEE Transactions on Infor-
exponentiations in 10 rounds in the YDB protocol, and mation Theory, 31, 469-472.
[13] Ford, W. and Kaliski Jr, B. S. (2000) Server-assisted generation
transmitting 11L + 3 bits and computing 12 modular of a strong secret from a password. Proc. IEEE 9th International
exponentiations in 6 rounds in the JWX protocol. Even Workshop on Enabling Technologies: Infrastructure for Collabo-
if the pre-computation is allowed, the two servers in rative Enterprises, pp. 176-180.
[14] Goldreich, O. and Lindell, Y. (2001) Session-key generation using
the YDB protocol or the JWX protocol still need to human passwords only. Proc. Crypto’01, pp. 408-432.
compute 7 modular exponentiations in series. Therefore, [15] Gong, L., Lomas, T. M. A., Needham, R. M. and Saltzer, J.
our protocol is even more efficient than the asymmetric H. (1993) Protecting poorly-chosen secret from guessing attacks.
IEEE J. on Selected Areas in Communications, 11(5), 648-656.
YDB protocol and the asymmetric JWX protocol in terms [16] Halevi, S. and Krawczyk, H. (1999) Public-key cryptography
of the total running time. and password protocols. ACM Transactions on Information and
Our protocol need more storage to keep the password System Security, 2(3), 230–268.
[17] Jablon, D (2001) Password authentication using multiple servers.
authentication information in the two servers than the Proc. RSA-CT’01, pp. 344-360.
YDB protocol and the JWX protocol. Because of rapidly [18] Jin, H., Wong, D. S. and Xu, Y (2007) An efficient password-only
declining data storage costs, the difference in storage two-server authenticated key exchange system. Proc. ICICS’07,
pp. 44-56.
costs between our protocol and the YDB and JWX pro- [19] Katz, J., Ostrovsky, R. and Yung, M. (2001) Efficient password-
tocols is not significant. authenticated key exchange using human-memorable passwords.
Proc. Eurocrypt’01, pp. 457-494.
[20] Katz, J., MacKenzie, P., Taban, G. and Gligor, V. (2005) Two-server
7 C ONCLUSION password-only authenticated key exchange. Proc. ACNS’05, pp. 1-
16.
In this paper, we have presented a symmetric protocol [21] Katz, J. and Yung, M. (2003) Scalable protocols for authenticated
for two-server password-only authentication and key ex- group key exchange. Proc. Crypto’03, pp. 110-125.
change. Security analysis has shown that our protocol is [22] Lomas, T. M. A., Gong, L., Saltzer, J. H. and Needham, R. M.
(1989) Reducing risks from poorly-chosen keys. ACM Operating
secure against passive and active attacks in case that one Systems Review, 23(5), 14-18.
of the two servers is compromised. Performance analy- [23] MacKenzie, P., Patel, S. and Swaminathan, R. (2000) Password-
sis has shown that our protocol is more efficient than authenticated key exchange based on RSA. Proc. Asiacrypt’00,
pp. 599-613.
existing symmetric and asymmetric two-server PAKE [24] Mackenize, P., Shrimpton, T. and Jakobsson, M. (2002) Threshold
protocols. password-authenticated key exchange. Proc. Crypto’02, pp. 385-
400.
[25] Rivest, R., Shamir, A. and Adleman, L. (1978) A method for
ACKNOWLEDGMENT obtaining digital signatures and public-key cryptosystems. Com-
munications of the ACM, 21(2), 120-126.
We would like to appreciate valuable comments from [26] http://www.schneier.com/blog/archives/2006/12/realworld
blind reviewers. These comments are really helpful for passw.html
us to improve this paper. [27] Szydlo, M. and Kaliski, B. (2005) Proofs for two-server password
authentication. Proc. RSA-CT’05, pp. 227-244.
[28] Tsiounis, Y. and Yung, M. (1998) On the security of ElGamal based
R EFERENCES [29]
encryption. Proc. PKC’98, pp. 117-134.
Yang, Y., Bao, F and Deng, R. H (2005) A new architecture for
[1] Abdalla, M. and Pointcheval, D. (2005) Simple password-based authentication and key exchange using password for federated
encrypted key exchange protocols. Proc. CT-RSA 2005, pp. 191- enterprise. Proc. SEC’05, pp. 95-111.
208. [30] Yang, Y., Deng, R. H and Bao, F. (2006) A practical password-
[2] Abdalla, M., Chevassut, O. and Pointcheval, D (2005) One-time based two-server authentication and key exchange system. IEEE
verifier-based encrypted key exchange. Proc. PKC 2005, pp. 47-64. Trans. Dependable and Secure Computing, 3(2), 105-114.
[3] Bellare, M., Pointcheval, D. and Rogaway, P. (2000) Authenti- [31] Yang, Y., Deng, R. H. and Bao, F. (2006) Fortifying password
cated key exchange secure against dictionary attacks. Proc. Eu- authentication in integrated healthcare delivery systems. Proc.
rocrypt’00, pp. 139-155. ASIACCS’06, pp. 255-265.
[4] Bellovin, S. and Merritt, M. (1992) Encrypted key exchange: [32] Yi, X., Tso, R. and Okamoto, E. (2009) ID-based group password-
Password-based protocol secure against dictionary attack. Proc. authenticated key exchange. Proc. IWSEC’09, pp. 192-211.
1992 IEEE Symposium on Research in Security and Privacy, [33] Yi, X., Tso, R. and Okamoto, E. (2011) Three-party password-
pp. 72-84. authenticated key exchange without random oracles. Proc. SE-
[5] Boneh, D. and Franklin, M. (2001) Identity based encryption from CRYPT’11, pp. 15-24.
the Weil pairing. Proc. Crypto’01, pp. 213-229. [34] Yi, X., Tso, R. and Okamoto, E. (2012) Identity-based password-
[6] Boneh, D and Franklin, M. (2003) Identity based encryption from authenticated key exchange for client/server model. Proc. SE-
the Weil pairing. SIAM Journal of Computing, 32(3), 586-615. CRYPT’12.
[7] Boneh, D (1998) The decisional Diffie-Hellman problem. Proc.
Third International Algorithmic Number Theory Symposium,
pp. 241-250.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
11

Xun Yi is an Associate Professor with School


of Engineering and Science, Victoria University,
Australia. His research interests include applied
cryptography, computer and network security,
mobile and wireless communication security,
and privacy-preserving data mining. He has pub-
lished more than 100 research papers in interna-
tional journals, such as IEEE Trans. Knowledge
and Data Engineering, IEEE Trans. Wireless
Communication, IEEE Trans. Dependable and
Secure Computing, IEEE Trans. Circuit and Sys-
tems, and conference proceedings. He has ever undertaken program
committee members for more than 20 international conferences. He is
leading a few of Australia Research Council (ARC) Discovery Projects.

San Ling received the B.A. degree in mathe-


matics from the University of Cambridge and the
Ph.D. degree in mathematics from the University
of California, Berkeley. Since April 2005, he has
been a Professor with the Division of Mathemat-
ical Sciences, School of Physical and Mathe-
matical Sciences, in the Nanyang Technological
University, Singapore. Prior to that, he was with
the Department of Mathematics, National Uni-
versity of Singapore. His research fields include:
arithmetic of modular curves and application of
number theory to combinatorial designs, coding theory, cryptography
and sequences.

Huaxiong Wang Huaxiong Wang received a


PhD in Mathematics from University of Haifa,
Israel in 1996 and a PhD in Computer Sci-
ence from University of Wollongong, Australia
in 2001. He joined NTU in 2006 and is cur-
rently an Associate Professor in the Division of
Mathematical Sciences. He is also an Honorary
Fellow at Macquarie University, Australia. His
research interests are cryptography, information
security, coding theory, combinatorics and the-
oretical computer science. He has been on the
editorial board of three international journals: Designs, Codes and
Cryptography (2006 2011), the Journal of Communications (JCM)
and Journal of Communications and Networks. He was the Program
Co-Chair of 9th Australasian Conference on Information Security and
Privacy (ACISP’04) in 2004 and 4th International Conference on Cryp-
tology and Network Security (CANS05) in 2005, and has served in
the program committee for more than 70 international conferences. He
received the inaugural Award of Best Research Contribution from the
Computer Science Association of Australasia in 2004.

You might also like