Sunteți pe pagina 1din 5

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. Citation


information: DOI 10.1109/TDSC.2015.2490064, IEEE Transactions on Dependable and Secure Computing
IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 1, NO. 1, JANUARY 2013
IEEE TRANSACTION ON DEPENDABLE AND SECURE COMPUTING, VOLUME 14, NO 5, SEP-OCT-2017
1
573

Security Analysis of Password-Authenticated


Key Retrieval
SeongHan Shin, Non-Member, IEEE, and Kazukuni Kobara, Non-Member, IEEE

AbstractA PAKR (Password-Authenticated Key Retrieval) protocol and its multi-server system allow one party (say, client),
who has a memorable password, to retrieve a long-term static key in an exchange of messages with at least one other party
(say, server) that has a private key associated with the password. In this paper, we analyze the only PAKR (named as PKRS-1)
standardized in IEEE 1363.2 [9] and its multi-server system (also, [12]) by showing that any passive/active attacker can find
out the clients password and the static key with off-line dictionary attacks. This result contradicts the security claims made for
PKRS-1 (see Clause 10.2 of IEEE 1363.2 [9]).

Index TermsPassword authentication, key retrieval, on-line/off-line dictionary attacks, IEEE 1363.2.

1 I NTRODUCTION possible password candidates, in an attempt to deter-


mine the correct one. The latter attacks are possible
T HE problem of safely storing clients long-term
static keys (e.g., symmetric keys, signature keys
for digital signatures or decryption keys for public-
since passwords are chosen from a relatively-small
dictionary that allows the exhaustive searches. While
key encryptions) can be addressed with credential on-line dictionary attacks can be prevented by taking
services (including cloud services or SSO (Single Sign- appropriate countermeasures (e.g., lock-up accounts
On)), which also solve many usability constraints for after some consecutive failures), off-line dictionary
clients. Consider a roaming client who accesses a attacks can not be avoided by such countermeasures.
network from different locations in order to retrieve As an approach for the roaming model, Ford and
his/her static keys (e.g., for temporal use of PKI Kaliski [5] proposed some protocols (later, named as
(Public-Key Infrastructures)). This kind of roaming PAKR (Password-Authenticated Key Retrieval)) using
model can be supported by a credentials server that multiple n servers, each of which holds a share of
authenticates the client and then assists in download- static keys, in order to provide security of pass-
ing static keys for the client. words/static keys against server compromises. That
For authentication in the roaming model, sev- is, even if an attacker takes full control of up to
eral works [15], [13], [16], [17], [6] utilized PAKE n 1 servers, the attacker will not be able to verify
(Password-Authenticated Key Exchange) protocols a single guess for the password and get any infor-
that provide password-only authentication and estab- mation about the static key. In order to prevent off-
lishment of temporal session keys to protect subse- line dictionary attacks, PAKR protocols in [5] rely on
quent communications. The concept of PAKE pro- a prior server-authenticated secure channel such as
tocols was introduced by Bellovin and Merritt [3], SSL/TLS which means it may be vulnerable to web-
[4] where a client remembers a short password only spoofing/phishing attacks. In [12], Jablon proposed
(without any storage devices) and the corresponding a PAKR protocol using multiple servers which does
server authenticates the client with the password or not need a prior server-authenticated secure chan-
its verification data for verifying the clients knowl- nel. Also, see [2] for another PAKR based on the
edge of the password (see [8], [11] and references unique blind signature [1]. Differently from password-
therein). However, one should be very careful about enabled PKI [15], [13], [16], [17] utilizing PAKE pro-
two major attacks on passwords: on-line and off-line tocols, the retrieved static key in PAKR [5], [12], [2]
dictionary attacks. The on-line dictionary attacks are is derived from both the clients password and the
performed by an attacker who impersonates one party servers private key.1
so that the attacker can sieve out possible password
candidates one by one. On the other hand, the off- 1.1 Our Contributions
line dictionary attacks are performed off-line and in Based on [5], [12], PKRS-1 (Password-authenticated
parallel where an attacker exhaustively enumerates all Key Retrieval Scheme, version 1) has been standard-
ized and was included in IEEE 1363.2 standard [9].
S. H. Shin and K. Kobara are with the Research Institute for Secure In this paper, we revisit PKRS-1 and its multi-server
Systems (RISEC), National Institute of Advanced Industrial Science
and Technology (AIST), Ibaraki, 305-8568 Japan.
1. In addition, the retrieved static key can be used to encrypt the
E-mail: seonghan.shin@aist.go.jp
clients signature/decryption keys for a later use.
1545-5971 (c) 2015
2017 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
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. Citation
information: DOI 10.1109/TDSC.2015.2490064, IEEE Transactions on Dependable and Secure Computing
IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL.
574 1, NO. 1, JANUARY
IEEE TRANSACTION 2013 AND SECURE COMPUTING, VOLUME 14, NO 5, SEP-OCT-2017
ON DEPENDABLE 2

system (also, [12]) to show that any passive/active Step 1: First, client C computes a generator value
H(pw)
attacker can find out the clients password and the R ga gb (by REDP-2 (Random Element
(long-term) static key with off-line dictionary attacks. Derivation Primitive, version 2) in Clause 8.2.18 of
This result contradicts the security claims made for IEEE 1363.2 [9]) from his/her password pw. Also,
PKRS-1 (see Clause 10.2 of IEEE 1363.2 [9]). Note that the client selects a random secret s from the range
PKRS-1 is the only PAKR (Password-Authenticated [1, q 1] and computes a blinded password value
Key Retrieval) in IEEE 1363.2 standard [9]. WC Rs . Then, client C sends the first message
(C, WC ) to server S.
1.2 Notation C S : (C, WC )
Here, we explain some notation to be used throughout
Step 2: After receiving (C, WC ), server S checks if WC
this paper. Let G be a finite, cyclic subgroup of prime
is in [1, p 1]. If not, it outputs invalid and stops
order q of the multiplicative group Z?p where p = aq+1
(Server validation 1). The server also checks whether
is a prime and a is an integer. Let ga and gb be two
WC is a valid value or not (i.e., the order check of
distinct generators of G in which the group operation
WC ). If (WC )q 6 1, it outputs invalid and stops
is denoted multiplicatively. Note that an exponential
(Server validation 2).3 Otherwise, server S computes a
relationship between ga and gb should be unknown.
permuted blinded password value WS (WC )u with
The (p, q, ga , gb ) are public to everyone and (p, q) are
its private key u. Then, server S sends the second
called domain parameters. In the aftermath, all the
message (S, WS ) to client C.
subsequent arithmetic operations are performed in
modulo p unless otherwise stated. S C : (S, WS )
Let k be the security parameter for hash functions.
Let {0, 1}? denote the set of finite binary strings and Step 3: After receiving (S, WS ), client C checks if WS
{0, 1}k the set of binary strings of length k. We use two is in [1, p 1]. If not, it outputs invalid and stops
different hash functions H and H where H : {0, 1}? (Client validation 1). The client also checks whether
Z?q and H : {0, 1}? {0, 1}k . Let KDF be the key WS is a valid value or not (i.e., the order check of
derivation function, which can be instantiated with a WS ). If (WS )q 6 1, it outputs invalid and stops
secure one-way hash function H (see Section 12.3 and (Client validation 2). Otherwise, client C computes
11 of [9]), and P be the key derivation parameter for a permuted password value Z (WS )1/s with the
KDF. Also, let A, B be the concatenation of bit strings secret s, and then derives a static key K = KDF(Z, P )
of A and B in {0, 1}? . Let C and S be the identities of from Z where P is the key derivation parameter.
client and server, respectively, with each identity ID
{0, 1}? . 2.2 Key Confirmation Operation
In general, any invoking application that uses
2 PKRS-1 the key establishment operation of Section 2.1 is
In this section, we describe PKRS-1 (Clause 10.2 and required to execute a key confirmation operation.
Annex D.2.2.3.4 of IEEE 1363.2 [9]) based on [5], [12] The following key confirmation operation is included in
in detail. The PKRS-1 consists of key establishment Annex D.2.2.3.4.2 of IEEE 1363.2 [9], but it is not
operation phase and key confirmation operation described in [5], [12].4 As in NOTE 6 in Clause
phase for an invoking application. 10.2.2 of IEEE 1363.2 [9], this operation is important
in order to prevent disclosure of the clients password
pw to other parties (particularly, an attacker who
2.1 Key Establishment Operation impersonates server S). Before this operation, server
Whenever client C needs to retrieve a static key with S has a key confirmation value VS = H(Z). During
the assistance of server S, they execute the below the key confirmation operation, client C confirms
key establishment operation over insecure networks. that the permuted password value Z (or equivalently,
Before this operation, client C just remembers the static key K derived from Z) is correct before
his/her password pw and server S has its private revealing any information about Z to other parties.
key u [1, q 1] that corresponds to the password
pw.2 During the key establishment operation, client 3. If the order of WC has too many small factors, a Pohlig-
Hellman decomposition attack [14] on the servers private key u
C and server S exchange values, and then client C is possible. This attack can be prevented by 1) the order check of
retrieves a static key K derived from both the clients WC (see Annex A.16.6 of IEEE 1363-2000 [7]) or 2) the selection of
password pw and the servers associated private key domain parameters such as a safe prime p = 2q + 1 or a secure
prime p = aq + 1 s.t. (a/2) is also a prime.
u. 4. This key confirmation operation is one of the three possible
ways described in Annex D.2.2.3.4.2 of IEEE 1363.2 [9]. Another
way is a key confirmation operation for multiple servers, and the
2. Note that the servers private key does not, in itself, contain other way for a key confirmation is to use a separately secured
sufficient information to allow the server to determine the clients channel between the client and the server. The attack of Section
password or the retrieved static key. 3.1 only works for this key confirmation operation.
1545-5971 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
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. Citation
information: DOI 10.1109/TDSC.2015.2490064, IEEE Transactions on Dependable and Secure Computing
IEEE TRANSACTIONS
IEEE TRANSACTION ON DEPENDABLE
ON DEPENDABLE AND
AND SECURE SECUREVOLUME
COMPUTING, COMPUTING,
14, NO 5, VOL. 1, NO. 1, JANUARY 2013
SEP-OCT-2017 575 3

and
u
Step 4: The server S sends the key confirmation H(pw0 )

Z 0 ga gb
value VS to client C. gau . (2)
uH(pw0 ) uH(pw0 )
S C : VS gb gb
After eavesdropping the key confirmation value VS
Step 5: After receiving VS , client C checks correctness
between client C and server S, the attacker tests if VS
of the permuted password value Z by verifying if VS uH(pw)
is equal to H(gau gb ) for all possible password
f
is equal to H(Z).
f With this test, attacker A can find
candidates pw.
u
out the clients password pw(= pw) f from which the

H(pw)
Note that Z Ru ga gb .
retrieved static key K is also easily derived because
uH(pw)
K = KDF(Z( gau gb ), P ).
3 S ECURITY A NALYSIS OF PKRS-1
In this section, we analyze PKRS-1 of Section 2 in Remark 3.1: The fundamental problem that
terms of security of the clients password as well as makes the above attack possible is in the
the static key. According to Clause 10.2 of IEEE 1363.2 computation of the generator value R defined
[9], it is clearly stated that PKRS-1 prevents both an by REDP-2 (Clause 8.2.18 of IEEE 1363.2 [9]). If R
active attacker (who impersonates the client) and a passive defined by REDP-1 (Clause 8.2.16 of IEEE 1363.2 [9])
attacker (who eavesdrops the values exchanged between the is used, this attack is not applicable. Note that the
legitimate client and server) from being able to derive the generator value R in PKRS-1 should be computed
clients password pw, the servers private key u, or the by either REDP-1 or REDP-2.
retrieved static key K, even with off-line dictionary attacks
on the password. Remark 3.2: PKRS-1 is comparable to Key Re-
trieval Mechanism 1 of ISO/IEC 11770-4 [10]. The
3.1 An Attack on PKRS-1 main differences in the latter are that there are no
Here, we show an attack on PKRS-1 where a pas- descriptions about key confirmation operations and
sive/active attacker can find out the clients password REDP-2. Even if the key confirmation operation of
pw and the retrieved static key K with off-line dictio- Section 2.2 is combined with Key Retrieval Mecha-
nary attacks. The success probability of this attack is nism 1, the above attack is not applicable since only
1. REDP-1 (named as the random element derivation
Consider an attacker A who impersonates client function R in ISO/IEC 11770-4 [10]) is used.
C without knowing the password pw. The attacker
executes the following key establishment operation 3.2 Multi-Server System of PKRS-1
of Section 2.1 with server S. From Annex D.2.2.3.4.1 of IEEE 1363.2 [9], PKRS-1
is extended for a multi-server system [5], [12] where
Step 1: First, attacker A computes a generator the key shares established between client C and each
H(pw0 )
value R0 ga gb where pw0 is a guessed server Si are combined into the static key. However,
password. Also, the attacker selects a random secret the above attack of Section 3.1 can be readily applied
s from the range [1, q 1] and computes a blinded to the multi-server system of PKRS-1. For more con-
password value WC0 (R0 )s . Then, attacker A sends creteness, we show that PAKR using multiple servers
the first message (C, WC0 ) to server S. [12] is insecure in Section 5.
A S : (C, WC0 )
4 PAKR USING M ULTIPLE S ERVERS
Step 2: Same as Step 2 of Section 2.1 In this section, we describe PAKR using multiple
servers (for short, PAKR-M) [12] in detail where client
Step 3: After receiving (S, WS0 (WC0 )u ), attacker A C uses his/her password pw to retrieve the static key
computes a permuted password value Z 0 (WS0 )1/s K from key shares that have been distributed and
with the secret s. stored with n servers Si (1 i n). By using multiple
servers, PAKR-M and [5] can reduce vulnerabilities
Next, the attacker repeats the above operation with such as exposure of passwords and/or static keys
another guessed password pw00 (6= pw0 ) so as to get due to (up to n 1) server compromises. Note that
Z 00 (WS00 )1/s where WS00 (WC00 )u , WC00 (R00 )s and PAKR-M mainly differs from [5] in that the former
H(pw00 )
R00 ga gb . does not require a prior server-authenticated secure
Let w (H(pw0 )H(pw00 )) mod q. From Z 0 and Z 00 , channel (e.g., SSL/TLS) between client C and each
attacker A obtains gbu and gau as follows: server Si . The PAKR-M consists of enrollment phase
 0 1/w  0 u 1/w H(pw0 )
!u/w and authenticated retrieval (i.e., key establishment
Z (R ) ga gb
u H(pw00 )
gbu (1)plus key confirmation) phase. See Section 4.2 and 4.3
Z 00 (R00 ) ga g of [12] for the specific description of PAKR-M.
b
1545-5971 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
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. Citation
information: DOI 10.1109/TDSC.2015.2490064, IEEE Transactions on Dependable and Secure Computing
IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL.
576 IEEE 1, NO. 1, JANUARY
TRANSACTION 2013
ON DEPENDABLE 4
AND SECURE COMPUTING, VOLUME 14, NO 5, SEP-OCT-2017

4.1 Notation for PAKR-M Step 3: After receiving (Si , WSi , EK (SigK), VS ), client
Here, we explain additional notation for PAKR-M. C computes the permuted password value Zi
The PAKR-M uses specific domain parameters (p, q) (WSi )1/s with the secret s for each i (1 i
where p = aq + 1 is a secure prime such that (a/2) n). From all Zi , the client derives the static key
is also a prime. Let (SigK, V erK) be the signature K = H(Z1 , Z2 , , Zn ) and checks whether the
and verification key pair for digital signatures, and received key confirmation value VS is valid or
SignSigK (msg) be the signature of message msg with not. If VS 6= H(K, R), it outputs invalid and
signature key SigK. Also, let EK () and DK () be stops. Otherwise, client C recovers the signature key
the encryption/decryption with symmetric key K SigK = DK (EK (SigK)) and generates a signature
satisfying msg = DK (EK (msg)). = SignSigK (WC ) with SigK. Then, the client sends
the third message to all servers Si .

4.2 Enrollment C Si :
In the enrollment phase, client C registers a set of Step 4: After receiving , server Si checks whether the
credentials to each server Si (1 i n). This phase signature is valid or not with the verification key
should be done securely and is performed only once V erK. If is valid, server Si removes (C, WC , V erK)
between client C and server Si . from the list Listi . Otherwise, the WC is counted as
First, client C who remembers his/her password an on-line dictionary attack on the password pw.
H(pw)
pw computes a generator value R ga gb (see
Section 4.3 of [12]). For server Si , the client selects a
random private key ui from the range [1, q 1] and
5 S ECURITY A NALYSIS OF PAKR-M
computes a permuted password value (i.e., key share) Similarly to Section 3.1, we show an attack on PAKR-
Zi Rui . By combining all Zi , client C derives a static M where an active attacker can find out the clients
key K = H(Z1 , Z2 , , Zn ) and a key confirmation password pw and the retrieved static key K with off-
value VS = H(K, R). Second, the client generates line dictionary attacks. Of course, the success proba-
a signature/verification key pair (SigK, V erK) for bility of this attack is 1.
digital signatures, and an encryption EK (SigK) of Consider an attacker A who impersonates client
SigK with the static key K. Finally, client C registers a C without knowing the password pw. The attacker
set of credentials (C, ui , V erK, EK (SigK), VS ) to each executes the following authenticated retrieval of
server Si . Section 4.3 with server Si (1 i n).
After the enrollment phase, client C just remembers
the password pw and server Si has the set of creden- Step 1: First, attacker A computes a generator
H(pw0 )
tials (C, ui , V erK, EK (SigK), VS ). value R0 ga gb where pw0 is a guessed
password. Also, the attacker selects a random secret
4.3 Authenticated Retrieval s from the range [1, q 1] and computes a blinded
password value WC0 (R0 )s . Then, attacker A sends
In the authenticated retrieval phase, client C retrieves the first message (C, WC0 ) to all servers Si .
the static key K (from key shares Zi ) with the
assistance of server Si (1 i n) over insecure A Si : (C, WC0 )
networks whenever K is needed.
Step 2: Same as Step 2 of Section 4.3
Step 1: First, client C computes the generator
H(pw) Step 3: After receiving (Si , WS0 i
value R ga gb from his/her password pw. 0 ui
(WC ) , EK (SigK), VS ), attacker A computes a
Also, the client selects a random secret s from the
permuted password value Zi0 (WS0 i )1/s with the
range [1, q 1] and computes a blinded password
secret s for each i (1 i n), and then stops.
value WC Rs . Then, client C sends the first
message (C, WC ) to all servers Si .
Step 1: Again, attacker A computes a generator
H(pw00 )
C Si : (C, WC ) value R00 ga gb with another guessed
password pw00 (6= pw0 ). Also, the attacker selects a
Step 2: After receiving (C, WC ), server Si adds random secret s [1, q1] and computes WC00 (R00 )s .
(C, WC , V erK) to the list Listi that is used to dis- Then, attacker A sends (C, WC00 ) to all servers Si .
tinguish honest clients behaviors from on-line dictio-
nary attacks on the password. The server computes A Si : (C, WC00 )
a permuted blinded password value WSi (WC )ui
with its private key ui . Then, server Si sends the Step 2: Same as Step 2 of Section 4.3
second message (Si , WSi , EK (SigK), VS ) to client C.
Step 3: After receiving (Si , WS00i
Si C : (Si , WSi , EK (SigK), VS ) (WC00 )ui , EK (SigK), VS ), attacker A computes
1545-5971 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
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. Citation
information: DOI 10.1109/TDSC.2015.2490064, IEEE Transactions on Dependable and Secure Computing
IEEE TRANSACTION
IEEE ON DEPENDABLE
TRANSACTIONS AND SECUREAND
ON DEPENDABLE COMPUTING,
SECURE VOLUME 14, NO 5, SEP-OCT-2017
COMPUTING, VOL. 1, NO. 1, JANUARY 2013 577
5

Zi00 (WS00i )1/s with the secret s for each i (1 i n). [2] X. Boyen, Hidden Credential Retrieval from a Reusable Pass-
Let w (H(pw0 ) H(pw00 )) mod q. From Zi0 and Zi00 , word, In Proc. of ASIACCS 2009, pp. 228-238, ACM Press,
2009.
attacker A obtains gbui and gaui for each i as follows: [3] S. M. Bellovin and M. Merritt, Encrypted Key Exchange:
 0 1/w Password-based Protocols Secure against Dictionary Attacks,
Zi ui Zi0 In Proc. of IEEE Symposium on Security and Privacy, pp. 72-84,
g and gaui . (3) IEEE Computer Society, 1992.
Zi00 b u H(pw0 )
gb i [4] S. M. Bellovin and M. Merritt, Augmented Encrypted Key
Exchange: A Password-based Protocol Secure against Dictio-
Now, the attacker tests if the key confirmation value nary Attacks and Password File Compromise, In Proc. of ACM
VS is equal to H(K, e ga g H(pw) f
), where K e = H(gau1 CCS93, pp. 244-250, ACM Press, 1993.
b [5] W. Ford and B. S. Kaliski, Server-Assisted Generation of
u1 H(pw) u2 u2 H(pw) un un H(pw)
gb , ga gb , , ga gb ), for all
f f f
a Strong Secret from a Password, In Proc. of the 9th IEEE
possible password candidates pw. f With this test, at- International Workshops on Enabling Technologies: Infrastructure
for Collaborative Enterprises (WET-ICE 2000), pp. 176-180, IEEE
tacker A can find out the clients password pw(= pw) f Press, 2000.
and static key K(= K). e Also, the attacker recovers the [6] L. Fang, S. Meder, O. Chevassut, and F. Siebenlist, Secure
signature key SigK = DK (EK (SigK)) and generates a Password-based Authenticated Key Exchange for Web Ser-
vices, In Proc. of the ACM Workshop on Secure Web Services
valid signature = SignSigK (WC0 , WC00 ). Then, attacker (SWS), ACM, 2004.
A sends the third message to all servers Si . [7] IEEE 1363, IEEE Standard Specifications for Public-Key Cryp-
tography, IEEE Std 1363TM -2000, IEEE Computer Society,
A Si : 2000.
[8] Submissions to IEEE P1363.2. http://grouper.ieee.org/
As above, executing the authenticated retrieval groups/1363/passwdPK/submissions.html.
[9] IEEE 1363.2, IEEE Standard Specifications for Password-
phase of PAKR-M two times is enough for attacker based Public-Key Cryptographic Techniques, IEEE Std
A to get the clients password pw, the static key K 1363.2TM -2008, IEEE Computer Society, January 2009.
and the signature key SigK. [10] ISO/IEC 11770-4, Information TechnologySecurity
TechniquesKey ManagementPart 4: Mechanisms Based
on Weak Secrets, International Standard ISO/IEC 11770-
Remark 5.1: Let G be a full-domain hash function 4:2006(E), May 2006.
mapping from {0, 1}? to Z?p . If a generator value R = [11] Research Papers on Password-based Cryptography. http://
www.jablon.org/passwordlinks.html.
G(pw)a as in Table 1 of [12] is used, the above attack [12] D. P. Jablon, Password Authentication Using Multiple
is not applicable. Also, this attack does not work for Servers, In Proc. of CT-RSA 2001, LNCS 2020, pp. 344-360,
[5] because the latter uses a safe prime p = 2q + 1 Springer-Verlag, 2001.
[13] T. Kwon, Virtual Software Tokens - A Practical Way to Secure
and computes a generator value R = G(pw)2 . PKI Roaming, In Proc. of the Infrastructure Security (InfraSec),
LNCS 2437, pp. 288-302. Springer-Verlag, 2002.
[14] P. C. van Oorschot and M. J. Wiener, On Diffie-Hellman Key
6 C ONCLUDING R EMARKS Agreement with Short Exponents, In Proc. of EUROCRYPT96,
LNCS 1070, pp. 332-343, Springer-Verlag, 1996.
In this paper, we have analyzed PKRS-1 (standardized [15] R. Perlman and C. Kaufman, Secure Password-based Protocol
in IEEE 1363.2 [9]) and its multi-server system (also, for Downloading a Private Key, In Proc. of Network and
Distributed System Security Symposium, Internet Security, 1999.
[12]) by showing that any passive/active attacker can [16] R. Sandhu, M. Bellare, and R. Ganesan, Password Enabled
find out the clients password pw and the (long-term) PKI: Virtual Smartcards vs. Virtual Soft Tokens, In Proc. of
static key K with off-line dictionary attacks. Notice the 1st Annual PKI Research Workshop, pp. 89-96, 2002.
[17] X. Wang, Intrusion-Tolerant Password-Enabled PKI, In Proc.
that these attacks are always possible regardless of of the 2nd Annual PKI Research Workshop, pp. 44-53, 2003.
the selection of domain parameters (p, q) for PKRS-1
and its multi-server system [12].
This result is imperative for practition-
ers/implementers because PKRS-1 is the only
PAKR (Password-Authenticated Key Retrieval)
included in IEEE 1363.2 standard [9] and deployment
of PKRS-1 for real-world applications can result in
a total compromise of security. Consequently, it is
inevitable to revise IEEE 1363.2 standard [9] NOT to
use the REDP function (i.e., REDP-2) for the generator
value in PKRS-1 and its multi-server system.5

R EFERENCES
[1] A. Boldyreva, Threshold Signatures, Multisignatures and
Blind Signatures based on the Gap-Diffie-Hellman-Group Sig-
nature Scheme, In Proc. of PKC 2003, LNCS 2567, pp. 31-346,
Springer-Verlag, 2003.

5. Though REDP-2 is also used in the PAK/SPEKE family [9],


these attacks shown in this paper are not applicable.
1545-5971 (c) 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

S-ar putea să vă placă și