Sei sulla pagina 1di 11

CRPIT Volume 105 - Information Security 2010

Multi-Factor Password-Authenticated Key Exchange


Douglas Stebila1 Poornaprajna Udupi2 Sheueling Chang3
1
Information Security Institute
Queensland University of Technology
Brisbane, Queensland, Australia
Email: douglas@stebila.ca
2
Sun Microsystems Laboratories
Santa Clara, California, United States
Email: poornaprajna.udupi@sun.com
3
Email: sheueling.shantz@gmail.com

Abstract of experience have shown that passwords are a much


We consider a new form of authenticated key more popular and easy-to-use form of authentication,
exchange which we call multi-factor password- but are more susceptible to phishing and spyware at-
authenticated key exchange, where session establish- tacks. In this work, we focus on the use of passwords
ment depends on successful authentication of multiple for authentication, since they are easier for users to
short secrets that are complementary in nature, such use and carry between computers than long private
as a long-term password and a one-time response, al- keys.
lowing the client and server to be mutually assured of Phishing can be combated by protocols that pro-
each others identity without directly disclosing pri- vide strong, easy-to-use server-to-client authentica-
vate information to the other party. tion. Password-authenticated key exchange (PAKE)
Multi-factor authentication can provide an en- can make server-to-client authentication easier and
hanced level of assurance in higher-security scenarios resistant to offline dictionary attacks, and addition-
such as online banking, virtual private network access, ally provides a secure key for encryption.
and physical access because a multi-factor protocol is Spyware is more difficult to defend against. If
designed to remain secure even if all but one of the a users computer is compromised by passive spy-
factors has been compromised. ware that records keystrokes and occasionally trans-
We introduce a security model for multi-factor mits this information to an attackers server, then the
password-authenticated key exchange protocols, pro- use of one-time passwords may be effective, since a
pose an efficient and secure protocol called MFPAK, previously used one-time password can not be used
and provide a security argument to show that our pro- again. Active spyware that frequently communi-
tocol is secure in this model. Our security model is an cates with the attackers server and actively alters
extension of the Bellare-Pointcheval-Rogaway secu- the users computer is nearly impossible to defend
rity model for password-authenticated key exchange against without additional trusted hardware.
and accommodates an arbitrary number of symmetric To reduce the damage caused by compromising an
and asymmetric authentication factors. authentication factor, many organizations with high
security requirements such as financial institutions,
Keywords: multi-factor authentication, passwords, governments, and corporate virtual private networks
key exchange, cryptographic protocols (VPNs) are deploying multi-factor authentication,
which depends on a variety of attributes, or factors.
The factors could include: a long-term password, a
1 Introduction set of one-time passwords, a private key, or a biomet-
Phishing and spyware are two of the major security ric. To be effective in practice, factors should have
problems on the Internet today. Phishing, or server different, complementary natures of compromise. For
impersonation, occurs when a malicious server con- example, one-time passwords cannot all be compro-
vinces a user to reveal sensitive personal informa- mised unless one obtains the sheet of paper listing
tion, such as a username and password, to a mali- all the one-time passwords or the device generating
cious server instead of the real server. Additionally, the one-time passwords, whereas a biometric read by
many users computers are compromised with spy- a trusted device (such as a secure fingerprint reader)
ware, which can record users keystrokes (and thus should not be able to be reproduced without the pres-
passwords) and transmit this information to a mali- ence of the person in question (or at least their finger).
cious party. These attacks are possible not because Contributions. Our goal is to design a framework
of the break of any cryptographic protocol but be- for multi-factor authentication protocols that pro-
cause of externalities such as social engineering and vides flexibility in the number and nature of factors.
software bugs. Protocols secure in this framework should provide
In theory, these attacks can be addressed in part strong mutual authentication, convey the authenti-
by using trusted cryptographic devices that can store cation secrets in a secure manner, and remain secure
private keys and perform cryptographic operations, even if all but one of the authentication factors is
but such devices are difficult to deploy and use. Years compromised. The authentication secrets can be low-
Copyright 2010,
c Australian Computer Society, Inc. This pa- entropy secrets, such as passwords. Using multiple
per appeared at the Australasian Information Security Confer- low-entropy secrets can allow for passwords that may
ence (AISC), Brisbane, Australia. Conferences in Research and have different modes of compromise, such as a mem-
Practice in Information Technology (CRPIT), Vol. 105, Colin orized long-term password and a one-time password
Boyd and Willy Susilo, Ed. Reproduction for academic, not-for generated from a hardware device or transmitted over
profit purposes permitted provided this text is included. a mobile phone text message.
First, we define a security model which is an exten-

56
Proc. 8th Australasian Information Security Conference (AISC 2010), Brisbane, Australia
sion of the Bellare-Pointcheval-Rogaway model (Bel- Zimmer (Pointcheval & Zimmer 2008) presented a
lare et al. 2000) for PAKE. Our model allows for an multi-factor authentication scheme using a password,
arbitrary number of authentication factors, which can a long cryptographic secret, and biometric data; their
be either symmetric or asymmetric. Our security def- scheme has a formal security argument in a variant of
inition formalizes the notion that a multi-factor pro- the BPR model that shares some features with ours.
tocol should remain secure even if all but one of the There are also non-cryptographic approaches to
factors has been compromised. multi-factor authentication, but these do not provide
Next, we present an efficient multi-factor proto- as strong protection for the authentication factors.
col that is secure in this model under standard cryp- In a multi-channel system, the second factor is de-
tographic assumptions in the random oracle model. livered over a separate channel (for example, via an
Our protocol combines facets of the PAK protocol SMS text message on a mobile phone), which the user
(MacKenzie 2002) for symmetric factors and the then inputs into their web browser along side their
PAK-Z+ protocol (Gentry et al. 2005) for asymmet- password. In a multi-layer system, software installed
ric factors. We discuss how many different types of on the server evaluates additional attributes such as
factors long-term passwords, one-time passwords, an HTTP cookie, IP address, and browser identifica-
biometrics, and even private keys can be used in tion string to heuristically analyze whether the user
our protocol. is likely to be authentic. Some multi-layer systems
Our work differs from previous work in PAKE try to offer additional reassurance to the user of the
because it uses multiple authentication factors and servers identity by presenting the user with a cus-
maintains security even if some are compromised. tomized image or string. While these multi-channel
Others have considered some aspects of multi-factor and multi-layer approaches can offer some increased
authentication, but these have either used at least assurance, they can be defeated by non-cryptographic
one factor that is a long cryptographic secret (Yang means such as sophisticated man-in-the-middle at-
et al. 2006, Park & Park 2004, Yoon & Yoo 2006, tacks and spyware, and have been shown to be easily
Pointcheval & Zimmer 2008), or have not pro- ignored by users (Schecter et al. 2007).
vided strong server-to-client authentication resistant
to man-in-the-middle attacks. 2 Security for multi-factor protocols
Outline. The rest of our paper proceeds as follows. In a multi-factor PAKE protocol, multiple authen-
In Section 2, we describe the security model for multi- tication secrets of complementary natures, such as
factor PAKE. In Section 3, we present our protocol a long-term password and a one-time password, are
MFPAK and discuss its efficiency; we show through used. We support two general types of authentication
a formal analysis that the MFPAK protocol is secure factors: symmetric and asymmetric.
and discuss how various types of factors can be used. The authentication secrets must be used in a way
Section 4 concludes the paper with what we believe that the client can convince the server that it knows
are interesting directions for future research. Ap- all the authentication secrets, and that the server can
pendix A presents the one of the cases for our security convince the client that it knows all the authenti-
proof for the MFPAK protocol; the rest appear in the cation secrets: this provides mutual authentication.
full version of the paper (Stebila et al. 2009). However, the protocol must be carefully designed to
1.1 Related work not reveal any information about the authentication
secrets to a passive or even active adversary.
Password-authenticated key exchange was first intro- Secure communications often involve both authen-
duced by Bellovin and Merritt in 1992 (Bellovin & tication and encryption so, in addition to providing
Merritt 1992) as the encrypted key exchange (EKE) authentication, we want protocols that establish an
protocol, in which the client and server shared the ephemeral shared secret key between client and server
plaintext password and exchanged encrypted infor- that can be used, for example, for bulk encryption.
mation to allow them to derive a shared session key.
A later variant by Bellovin and Merritt, Augmented Informal security criteria. The general security
EKE (A-EKE) (Bellovin & Merritt 1993), removed the criteria we use for multi-factor PAKE is that the pro-
requirement that the server have the plaintext pass- tocol should remain secure even if all but one authen-
word, instead having a (non-trivial) one-way trans- tication factor is known to an adversary. We identify
formation of the password, which alone is not suffi- four security properties such a protocol should have:
cient to impersonate the user. The former is called 1. Strong multi-factor server-to-client authentica-
a symmetric password-based protocol, because both tion: without knowledge of all of the authentica-
client and server share the same plaintext password tion factors, a server cannot successfully convince
(or a trivial transformation of it), whereas the latter a client of its identity.
is called asymmetric. The dominant model for the 2. Strong multi-factor client-to-server authentica-
security of PAKE protocols was proposed by Bellare, tion: without knowledge of all of the authentica-
Pointcheval, and Rogaway (Bellare et al. 2000) and tion factors, a client cannot successfully convince
extended by Gentry, MacKenzie, and Ramzan (Gen- a server of its identity.
try et al. 2005) to accommodate asymmetric proto- 3. Authentication secrets protected: no useful in-
cols. formation about the authentication secrets is re-
Many PAKE protocols have been developed, in- vealed during the authentication process.
cluding PAK (Boyko et al. 2000, MacKenzie 2002) and 4. Secure session key establishment: at the end
PAK-Z+ (Gentry et al. 2005) which are relevant to of the protocol, an honest client and an honest
our construction. Although universally composable server end up with a secure shared session key
constructions are attractive to consider when com- suitable for bulk encryption if and only if the
bining primitives, the existing work on universally mutual authentication is successful; otherwise no
composable PAKE (Canetti et al. 2005) is only sym- session is established.
metric, not asymmetric, and thus unsuitable for our 2.1 Security model
approach.
A number of two-factor authentication schemes We define a model for the security of multi-factor
have been proposed that rely on a short password PAKE that allows one to argue that a protocol is se-
and a long cryptographic secret (Park & Park 2004, cure by giving upper bounds on the probability that
Yang et al. 2006, Yoon & Yoo 2006). Pointcheval and an adversary can break server-to-client or client-to-
server authentication, or determine the session key

57
CRPIT Volume 105 - Information Security 2010
established; the authentication secrets are protected RevealSKP (U, i): If user instance U i has ac-
from offline dictionary attacks as well. cepted, then returns session key sk held by U i .
This model is an extension of the model for PAKE RevealFactorP (C, S, `): Returns the `th factor
proposed by Bellare, Pointcheval, and Rogaway (Bel-
lare et al. 2000) and modified by Gentry, MacKenzie, pw`C,S held by client C with server S.
and Ramzan (Gentry et al. 2005). The model allows RevealFactorVP (S, C, `): If ` is an asymmetric
for an arbitrary number of authentication factors, and factor: returns the `th factors verifier pw`C,S held
each factor can be either symmetric or asymmetric. by server S with client C.
Participants. In this model, each interacting party The RevealFactor and RevealFactorV queries model
is either a client or a server, is identified by a unique the adversary learning the authentication secrets,
fixed length string, and the identifier is a member which corresponds to weak corruption in the Bellare-
of either the set Clients or Servers, respectively, with Pointcheval-Rogaway model. We do not allow the ad-
Parties = Clients Servers. versary to modify stored authentication secrets (also
Each authentication factor can be one of two types: called strong corruption).
symmetric or asymmetric. Suppose there are n fac-
tors; let Is denote the indices of symmetric factors and Definition 2.1 (Freshness) An instance U i with
Ia denote the indices of asymmetric factors. For each partner id U 0 is fresh in the `th factor (with forward-
client-server pair (C, S) Clients Servers, n authen- secrecy) if and only if none of the following events
tication factors exist. The `th authentication factor occur:
pw`C,S is chosen uniformly at random from the set 1. a RevealSK(U, i) query occurs;
0
Passwords` and is stored by the client. For symmetric 2. a RevealSK(U 0 , j) query occurs, where U j is the
factors, the server also stores pw`C,S ; for asymmet- partner instance of U i , if it exists;
ric factors, the server stores a verifier pw`C,S , which 3. if U Clients: RevealFactor(U, U 0 , `) (and/or
is some non-trivial transformation of pw`C,S . (The RevealFactorV(U 0 , U, `) if the `th factor is asym-
metric) occurs before the Test query, and
notion of non-trivial transformation will be clear Send(U, i, M ) occurs for some string M ;
in the freshness definition below, but intuitively the
transformation should be such that compromise of the 4. if U Servers: RevealFactor(U 0 , U, `) occurs be-
verifier alone should not be sufficient to impersonate fore the Test query, and Send(U, i, M ) occurs for
the user without performing a dictionary attack.) some string M .
Execution of the protocol. During execution, a This notion of freshness accommodates the idea that
party may have multiple instances of the protocol run- an instance should remain fresh even if all but one
ning. Each instance i of a party U Parties is treated of the authentication factors has been fully compro-
as an oracle denoted by U i . mised. If an instance is fresh in all of its factors, then
In a protocol, there is a sequence of messages, it is also fresh in the original notion of freshness for
called flows, starting with a flow from the client in- PAKE.
stance, responded to by a server instance, and so on. Adversarys goals. For session key security, the
After some number of flows, an instance may accept, goal of an adversary is to guess the bit b used in the
at which point it hold a session key sk, partner id pid, Test query of an instance that is fresh in at least one
and session id sid. Subsequently, it may terminate. of its factors; this corresponds to the ability of an ad-
Two instances C S
i and j are said to be partnered if versary to distinguish the session key from a random
they both accept, hold (pid, sid, sk) and (pid0 , sid0 , sk0 ), string of the same length. Let Succake -f` (A) be the
P
respectively, with pid = S, pid0 = C, sid = sid0 , and event that the adversary A makes a single Test query
sk = sk0 , and no other instance accepts with session to some fresh in the `th factor instance U i that has
id equal to sid. Alternatively, an instance may reject accepted and A eventually outputs a bit b0 , where
at any point in time, meaning it is no longer accepted b0 = b and b is the randomly selected bit in the Test
or terminated. query. The ake-f` advantage ofA attacking P is de-
Queries allowed. The protocol is determined by fined to be Advake -f` (A) = 2 Pr Succake-f` (A) 1.
P P
how participants respond to inputs from the environ-
ment, and the environment is considered to be con- We can define similar notions for client-to-server,
trolled by the adversary, which is formally a proba- server-to-client, and mutual authentication. For the
bilistic algorithm that issues queries to a challenger security experiments involving authentication, the
c2s-f`
which simulates parties oracle instances. For a pro- Test query is prohibited. We define AdvP (A) to be
tocol P , the queries that the adversary can issue are the probability that a server instance Sj with partner
defined as follows (where clear by the setting, we may id C terminates without having a partner oracle be-
omit the subscript P ): fore the RevealFactor query in point 4 of the definition
s2c-f`
ExecuteP (C, i, S, j): Causes client instance C i of freshness in the `th factor. We define AdvP (A)
and server instance Sj to faithfully execute pro- to be the probability that a client instance C i with
tocol P and returns the resulting transcript. partner id S terminates without having a partner or-
SendP (U, i, M ): Sends message M to user in- acle before the Reveal queries in point 3 of the defini-
stance U tion of freshness in the `th factor. Finally, we define
i , which faithfully performs the appro- -f` (A) = max{Advc2s-f` (A), Advs2c-f` (A)}.
priate portion of protocol P based on its current AdvmaP P P
state and the message M , updates its state as We overload the Adv (and corresponding Pr(Succ))
appropriate, and returns any resulting messages. notation: AdvN N
P (t, qse , qex , qro ) = maxA {AdvP (A)},
TestP (U, i): If user instance U i has accepted, where the maximum is taken over all adversaries run-
then the following happens: the challenger ning in time at most t, making at most qse and qex
chooses b R {0, 1}; if b = 1, then return the ses- queries of type SendP and ExecuteP , respectively, and
sion key of Ui , otherwise return a random string
at most qro random oracle queries.
of the same length as the session key. This query
may only be asked once. Definition 2.2 (Secure multi-factor protocol)
Let be a security parameter. A protocol P is

58
Proc. 8th Australasian Information Security Conference (AISC 2010), Brisbane, Australia
a secure multi-factor password authenticated key the security model from the standard BPR setting.
agreement protocol if there exists a negligible (in ) Paterson and Stebila (Paterson & Stebila 2009) do
 and small constants ` , ` {1, . . . , n}, such that, present an alteration to the BPR security model that
for all polynomially-bounded adversaries A, accommodates the compromise of previous (and fu-
` qse ture) one-time passwords and we apply their ideas to
` +  ,
allow for symmetric factors using one-time passwords
|Passwords | as follows.


-f` (A)
if the `th factor is symmetric,
Advake
P ` ((1b`co )qse +b`co qro ) Adjusting the model. We can alter the security


|Passwords` |
+ , definition of a multi-factor protocol to allow a sym-

if the `th factor is asymmetric, metric factor that corresponds to a one-time pass-
word by applying the ideas of Paterson and Stebila
-f` (A), (Paterson & Stebila 2009). Let ` be the index of a
and the corresponding bound applies for AdvmaP symmetric factor for which we wish to use one-time
`
where, for asymmetric factors `, bco = 1 if A makes passwords. Let Indices` be the set of indices of one-
a RevealFactorV(, , `) query and 0 otherwise.
time passwords, and let ch Indices` . When a party
Intuitively, this notion of security says that any is activated, they are activated with the index of the
polynomially-bounded adversary can only do negli- one-time password to use for that instance; a party
gibly better than doing an online dictionary attack at can only be activated once for each ch Indices` . Let
any unknown factors and can gain no advantage by {pw`C,S,ch } be the set of one-time passwords between
doing an offline dictionary attack. Ideally, ` would C and S, indexed by ch; each such password is cho-
be 1, indicating the adversary can only rule out one sen uniformly at random from Passwords` . We add an
password with each online guess; however, a protocol additional parameter ch to the RevealFactor query:
can still be secure as long as ` is small compared to RevealFactorP (C, S, ch, `): Returns the `th factor
|Passwords` |. pw`C,Sch held by client C with server S for one-
Since an instance that is fresh in all of its factors
is also fresh in the original ake notion of PAKE, we time password indexed by ch.
have that The definition of freshness in the `th factor of U i is
adjusted as well, replacing points 3 and 4 in Defini-
tion 2.1 with:
n o
Advake Advake -f` (A) .
P (A) min P 3. if U Clients: RevealFactor(U, U 0 , ch, `) occurs
`{1,...,n}
before the Test query, and Send(U, i, M ) occurs
By providing bounds for each factor, we can pro- for some string M , where ch is the index of the
vide greater granularity in relating the security of one-time password with which U i was activated;
factors to their risks of compromise. For example, 4. if U Servers: RevealFactor(U 0 , U, ch, `) occurs
lower entropy factors (represented by smaller values before the Test query, and Send(U, i, M ) occurs
of |Passwords` |) may be physically distributed and se- for some string M , where ch is the index of the
cured in different ways than higher entropy factors, or one-time password with which U i was activated.
may be used for a shorter period of time. This con- The definitions of authentication are adjusted analo-
trasts with the approach of (Pointcheval & Zimmer gously as well.
2008), in which there is a single notion of freshness Paterson and Stebila go on to show that any se-
and a single bound over all factors. cure PAKE protocol can be used in the natural way to
build to a secure one-time PAKE protocol, by using
2.2 Using one-time passwords the one-time password in place of the password. This
The model presented in Section 2.1 uses long-term holds even when the one-time passwords are pseudo-
authentication secrets that do not change over time. randomly generated or time-dependent. This means
However, multi-factor authentication may include a that our MFPAK protocol in the next section can eas-
factor that varies, such as a one-time password. Such ily accommodate one-time passwords as authentica-
a factor may be the response to a challenge, or may tion factors.
vary with time. The benefit of a one-time password
is that the compromise of a single one-time password 3 MFPAK: a multi-factor password-
should not affect the security for a different one-time authenticated key exchange protocol
password. One-time passwords offer some protection
against passive spyware, as previously compromised MFPAK is the first PAKE protocol that uses multiple
one-time passwords are useless. low-entropy authentication factors. It allows for an
Although at first glance it may seem impracti- arbitrary number of factors which can be asymmetric
cal for a user to store a large number of passwords, or symmetric, and these factors can be independently
this is actually quite practical and is already being changed as users need to change their passwords. Our
done in the real world: for example, some Euro- approach is much more efficient, in terms of number
pean banks issue paper lists of one-time passwords of expensive operations, than the nave approach of
to users (Nordea Bank 2009), and corporations issue combining existing PAKE protocols as black boxes:
hardware devices for pseudorandomly generating one- we add no expensive operations for each additional
time passwords for virtual private network (VPN) ac- symmetric factor, and only one additional expensive
cess (RSA Security Inc. 2009) or electronic commerce operation (signature generation/verification) for each
(Blizzard Entertainment 2009). Even though a user party for each asymmetric factor.
may be carrying as much data as in a cryptographic 3.1 Design ideas
key, one-time passwords offer usability benefits: car-
rying a cryptographic key requires a hardware inter- We designed MFPAK by considering two existing one-
face or carefully managed private key files, whereas factor protocols as our building blocks: the asymmet-
one-time passwords can be easily entered in only a ric password protocol PAK-Z+ for asymmetric fac-
few keystrokes. tors, and the symmetric password protocol PAK for
Abdalla et al. (Abdalla et al. 2005) present a symmetric factors. These two protocols are simi-
protocol for the use of one-time passwords in an au- lar in structure which allows us to gain some effi-
thenticated key exchange protocol but do not alter ciency improvements. All factors are tightly inte-

59
CRPIT Volume 105 - Information Security 2010
grated into the authentication and key exchange pro- tacks (Goldwasser et al. 1988). Let (v, V ) Gen(1 ),
cesses. The underlying session key agreement comes where v is a private key and V is the correspond-
from a hashed Diffie-Hellman construction. Authen- ing public key. Recall that pw`C,S denotes client Cs
tication for asymmetric factors is done using a digital
signature scheme, while for symmetric factors it is password for server S for the `th factor, and pw`C,S
done using hash functions. denotes the corresponding value held by the server,
Shielded ephemeral key. One of the main efficiency which may be equal to pw`C,S for symmetric factors
and security gains in the MFPAK protocol comes in and is some non-trivial transformation of pw`C,S for
the first flow from the client to the server. In this flow, asymmetric factors.
the client shields its ephemeral public key by multi- The user registration stage of MFPAK is given in
plying it by (the hash of) each factor. The client is Figure 1. This stage should be completed over a pri-
made to commit to those values, thereby preventing vate, authentic channel. The user registration stage
a malicious client from making an offline dictionary can be altered in the obvious way to have authentica-
attack later on. Moreover, the server must use the tion secrets chosen by the server and supplied to the
same values to unshield the clients ephemeral public client, if necessary.
key or Diffie-Hellman key agreement will fail, thereby The login stage of MFPAK is given in Figure 2.
committing the server to its choice of values. By do- This stage can be completed over a public, untrusted
ing this multiple shielding operation, the client and channel. A client C initiates the login stage with a
server achieve mutual authentication, the client saves server S.
expensive operations compared to running multiple
protocols separately, and the authentication secrets 3.3 Nature of the factors
are protected. The MFPAK protocol can accommodate a wide vari-
Digital signature for asymmetric factors. Authen- ety of authentication secrets using either symmetric
tication for asymmetric factors comes from using a or asymmetric factors, as we note below. Our ap-
digital signature scheme, where the (short) authen- proach offers improved functionality compared with
tication secret is used to shield the digital signature the nave way of combining multiple authentication
private key which is stored on the server. During secrets by simply concatenating them into one long
the login stage of the protocol, the server returns the string: with concatenation, one cannot easily com-
shielded private key, which the client can unwrap only bine passwords that change over time (symmetric fac-
if she knows the correct password. The client uses the tors) with long-term passwords (asymmetric factors)
private key to perform a signing operation which the because the server does not store the plaintext pass-
server verifies using the public key. This allows for word.
asymmetry: the compromise of the servers database Long-term passwords. Long-term passwords are
is not enough to impersonate the client to the server best accommodated as an asymmetric factor, but can
without a dictionary attack. This technique, as used be treated asymmetrically as well. Since long-term
in PAK-Z+ (Gentry et al. 2005), is an instantiation passwords do not change frequently (or at all), we
of the generic technique proposed by Gentry et al. should reduce the damage that can be caused by com-
(Gentry et al. 2006) for asymmetric password-based promise of the server database containing data for
authentication. It is important to note that the dig- these factors. Although we can never prevent dic-
ital signature scheme is not used in its normal sense tionary attacks against the servers database, we can
with published or certified public keys, but simply as raise the amount of work an attacker needs to do by
a convenient asymmetric construction. using asymmetric factors.
Hash function for symmetric factors. The hash of One-time passwords. One-time passwords are usu-
a symmetric factor is stored on the server. The server ally best accommodated as symmetric factors. Asym-
proves its knowledge of a symmetric factor by hashing metric factors could be used, but the costs for asym-
it with the session key; the client does the same. metric factors may not be worth it for one-time pass-
3.2 Protocol specification words. It may be more efficient to generate one-
time passwords from a seed using a challenge-response
The MFPAK protocol, like many other protocols, con- mechanism or a time-dependent generator. For fac-
tains two stages: a user registration stage, completed tors that employ a challenge-response mechanism, an
once per client-server pair, and a login stage, com- initial message from the server to the client convey-
pleted each time a user attempts to login. For conve- ing the challenge can be added to the beginning of
nience in presentation of the login stage, we assume the login stage of the protocol.
there is at least one symmetric factor and one asym- Cryptographic keys. Although our primary moti-
metric factor; however, the protocol can be altered in vation has been the use of short strings as authentica-
the natural way to deal with exclusively symmetric tion secrets so users can easily carry their authentica-
or exclusively asymmetric factors. The number and tion secrets between computers, there is nothing pre-
type of factors are fixed and publicly known. venting a password-based protocol from using high-
Ingredients and notation. Let be a cryptographic entropy secrets (that is, cryptographically large keys)
security parameter. The notation z R Z denotes an as opposed to low-entropy secrets. We can directly
element z selected uniformly at random from a set
Z. Angle brackets hi denote a list, and || denotes use a cryptographic key as pw`C,S in either the sym-
concatenation. The protocol operates over a finite metric or asymmetric case. In the asymmetric case, it
cycle group G of order q, generated by g, for which would be possible to further streamline the protocol
the Computational Diffie-Hellman (CDH) assumption by having the user store the private key v` from the
holds. The function Acceptable() tests whether an el- digital signature scheme, and adjust the remainder of
ement is in G (or, for efficiency reasons, a group con- the protocol as follows: set pw`C,S v` ; in the regis-
taining G; see (MacKenzie 2002, 4)). It makes use of tration stage, the server stores pw`C,S h` , `1 , V` i;
a number of random hash functions based on random in the login stage, the server omits steps 15 and 16
oracles (Bellare & Rogaway 1993): H1 maps {0, 1} for this factor and the client omits steps 2225 for
to group elements (such as (Coron & Icart 2009) for this factor. We recommend, however, that situations
hashing into elliptic curve groups), while all other using exclusively cryptographically large keys should
hash functions Hi map {0, 1} to {0, 1} . We also em- consider traditional authenticated key exchange pro-
ploy a signature scheme S = (Gen, Sign, Verify) that tocols as the security models (Canetti & Krawczyk
is existentially unforgeable under chosen message at-

60
Proc. 8th Australasian Information Security Conference (AISC 2010), Brisbane, Australia
MFPAK User Registration
Client C Server S
for ` {1, . . . , n}:
1. store pw`C,S R Passwords`
2. ` H1 (C, S, `, pw`C,S )
for ` Ia :
3. (v` , V` ) R Gen(1 )
4. v`0 H2 (C, S, `, pw`C,S ) v`
5. v`00 H3 (`, v` )
C,{` },{V` },{v`0 },{v`00 }
6.
for ` Is :
7. store pw`C,S h` , `1 i
for ` Ia :
8. store pw`C,S h` , `1 , V` , v`0 , v`00 i

Figure 1: The user registration stage of the MFPAK protocol.

2001, LaMacchia et al. 2007) are stronger and offer re- ply by running PAK and PAK-Z+ in parallel indepen-
sistance to ephemeral key leakage in addition to static dently.
key leakage.
Biometrics. Pointcheval and Zimmer (Pointcheval 3.5 Security analysis
& Zimmer 2008) describe in detail the use of biomet- The main idea of the security argument is that, if one
ric templates in an authenticated key exchange pro- factor, say the ` th factor, remains uncompromised,
tocol. They use secure sketches and fuzzy extractors then the difficulty of breaking MFPAK is related to
to safely see if two biometric templates match. the difficulty of breaking the corresponding one of ei-
An alternative approach is to use fuzzy vaults, ther PAK (for a symmetric factor) or PAK-Z+ (for an
which were introduced by Juels and Sudan (Juels & asymmetric factor), each which is in turn related to
Sudan 2002). They allow a secret to be embedded in a solving the Computational Diffie-Hellman problem.
vault which is locked by a set of fuzzy values, such as For both symmetric and asymmetric factors, we
the minutiae of a fingerprint. Fuzzy vaults could for describe a procedure (specified by a modifier M)
example be used in a multi-factor protocol as follows: to transform an adversary A against MFPAK with
the user receives the fuzzy vault, uses her biometric to the ` th factor uncompromised into an adversary A
unlock the vault, and then uses the embedded secret against the corresponding one of the two underly-
value as another factor in the multi-factor protocol. ing protocols (PAK and PAK-Z+, respectively). The
Because of the privacy issues surrounding biomet- transformations are such that, if the oracle instance
rics, we are not suggesting that biometrics navely in MFPAK against which the Test query is directed
be used in our construction immediately, as there are is fresh in the ` th factor, then the corresponding or-
numerous issues to consider. For example, should the acle instance is also fresh in the corresponding at-
fuzzy vault be transmitted unencrypted or encrypted tack on PAK (resp., PAK-Z+). This is possible be-
under the session key derived from the other factors? cause of the design of the MFPAK protocol: it essen-
Should the secret embedded in the vault contain error tially runs both PAK and PAK-Z+ together while still
correcting information, as suggested in (Juels & Su- capturing the security of each independently. This
dan 2002), or not? (We think not, as error correcting design characteristic allows the relatively straightfor-
information allows an offline dictionary attacker to ward (although lengthy) security argument.
detect whether it has the right input, whereas lack of Our formal argument proceeds by considering four
error correction information would ideally mean the cases, two corresponding to an asymmetric factor be-
attacker needs to do an online dictionary attack.) ing uncompromised and two corresponding a symmet-
The use of biometrics in authenticated key exchange ric factor being uncompromised. The cases are:
merits further study. 1. Asymmetric factor uncompromised, U
Clients: no RevealFactorMFPAK (U , U 0 , ` ) or
3.4 Efficiency RevealFactorVMFPAK (U 0 , U , ` ) query.
In many e-commerce and online banking situations, 2. Asymmetric factor uncompromised, U
the performance-limiting factor is the number of con- Servers: no RevealFactorMFPAK (U 0 , U , ` ) query.
nections a server can handle, and this is in turn lim- 3. Symmetric factor uncompromised, U Clients:
ited by the number of expensive operations required no RevealFactorMFPAK (U , U 0 , ` ) query.
by the cryptographic protocol. MFPAK can increase 4. Symmetric factor uncompromised, U Servers:
security without a substantial additional computa- no RevealFactorMFPAK (U 0 , U , ` ) query.
tional burden on the server. These four cases are combined probabilistically to
Figure 3 compares the number of expensive op- give the overall result. The details are provided in
erations (group exponentiations and signature gener- Appendix A. Throughout, we assume passwords are
ation / verification) performed by a nave combina- uniformly distributed. The resulting security state-
tion of PAK and PAK-Z+ versus the MFPAK proto- ment is as follows:
col. MFPAK has a fixed overhead of two group expo-
nentiations each on client and server side. For each Theorem 3.1 Let be a security parameter. Let G
symmetric factor, there are no additional expensive be a finite cyclic group generated by g and let S be a
operations (only multiplications and hashes, not ex- signature scheme. Let A be an adversary that runs
ponentiations); for each asymmetric factor, there is in time polynomial in , and makes at most qse and
one additional expensive operation on each side (sig- qex queries of type Send and Execute, respectively, and
nature generation by the client, signature verification at most qro queries to the random oracle. If ` is an
by the server). This makes MFPAK much more ef- asymmetric factor, then let bco = 1 if A makes a
ficient, in terms of number of expensive operations, RevealFactorV(, , `) query to a server, and 0 other-
than if one were to make a multi-factor scheme sim- wise. Then MFPAK is a secure multi-factor PAKE

61
CRPIT Volume 105 - Information Security 2010
MFPAK Login
Client C Server S
1. x R Zq
2. X gx
for ` {1, . . . , n}:
3. ` H1 (C, S, `, pw`C,S )
mX n
Q
4. `=1 `
C,m
5.
6. reject if Acceptable(m)
7. y R Zq
8. Y gy
for ` Is :
9. lookup h` , `1 i pw`C,S
for ` Ia :
10. lookup h` , `1 , V` , v`0 , v`00 i pw`C,S
1
X m n
Q
11. `=1 `
12. X y
13. sid hC, S, m, Y i
14. k H4 (sid, , 1 , . . . , n )
for ` Ia :
15. a0` H5 (sid, , `, ` )
16. a` a0` v`0
Y,k,{a` },{v`00 }
17.
18. Yx
19. sid hC, S, m, Y i
20. reject if k 6= H4 (sid, , 1 , . . . , n )
21. k0 H6 (sid, , 1 , . . . , n )
for ` Ia :
22. a0` H5 (sid, , `, ` )
23. v`0 a0` a`
24. v` H2 (C, S, `, pwC,S,` ) v`0
25. reject if v`00 6= H3 (`, v` )
26. s` Signv` (sid)
k0 ,{s` }
27.
28. reject if k0 6= H6 (sid, , 1 , . . . , n )
for ` Ia :
29. reject if VerifyV` (sid, s` )
30. sk H7 (sid, , 1 , . . . , n ) sk H7 (sid, , 1 , . . . , n )

Figure 2: The login stage of the MFPAK protocol.


PAK & PAK-Z+ MFPAK
Operation
Client Server Client Server
exponentiations 2|Is | + 2|Ia | 2|Is | + 2|Ia | 2 2
signature generation |Ia | 0 |Ia | 0
signature verification 0 |Ia | 0 |Ia |
total 2|Is | + 3|Ia | 2|Is | + 3|Ia | 2 + |Ia | 2 + |Ia |

Figure 3: Comparison of expensive operations for combined PAK & PAK-Z+ and MFPAK.

protocol, with have provided a security argument showing that our


16((1b )q +b q ) new protocol, MFPAK, is secure in this model. Our
co se co ro
+ , multi-factor authentication protocol offers enhanced
|Passwords` |


authentication protection through the use of comple-
if the `th factor is symmetric,

Advake -f` mentary factors, such as a long-term password and
MFPAK (A) 4qse
|Passwords
`| +  , a one-time challenge/response. The construction is


if the `th factor is asymmetric, quite efficient in terms of the number of operations
per factor; for example, a two-factor version of our
protocol using a long-term password and one-time
where  is a negligible function of , and = |Clients| challenge/response has the same efficiency as the one-
|Servers|; a similar bound exists for Advma -f`
MFPAK (A). factor protocol PAK-Z+. The protocol remains secure
even if all but one of the authentication factors is fully
As with any formal security argument, a proof of known to an adversary. Our multi-factor protocol is
security does not imply security against all forms of resistant to man-in-the-middle and impersonation at-
attack. A protocol may be vulnerable to attack meth- tacks, providing enhanced authentication in the face
ods not described by the security model. Nonetheless, of more complex threats like phishing.
a security proof is valuable as a heuristic that the pro- Other recent work in the field of PAKE protocols
tocol is resistant to at least some types of attacks. has focused on protocols where the sequence of flows
fits existing network protocols such as SSL/TLS. An
4 Conclusion and future work open question is to design a provably secure multi-
factor PAKE protocol with support for asymmetric
We have presented a security model for multi-factor factors that fits within the message flow of SSL/TLS.
password-authenticated key exchange protocols that Additionally, multi-factor protocols supporting an
can accommodate an arbitrary number of factors. We

62
Proc. 8th Australasian Information Security Conference (AISC 2010), Brisbane, Australia
arbitrary number of factors could be designed where Gentry, C., MacKenzie, P. & Ramzan, Z. (2006), A method
some factors are optional and the number of factors for making password-based key exchange resilient to server
used corresponds to differing levels of access depend- compromise, in C. Dwork, ed., Advances in Cryptology
ing on the application situation: one factor could be Proc. CRYPTO 2006, Vol. 4117 of LNCS, Springer, pp. 142
used for read-only access, two factors for small-value 159.
transactions, and three factors for large-value trans- Goldwasser, S., Micali, S. & Rivest, R. L. (1988), A digital sig-
actions. nature scheme secure against adaptive chosen-message at-
An interesting future direction would be to fur- tacks, SIAM Journal on Computing 17(2), 281308.
ther investigate the use of biometric information in
a multi-factor authenticated key exchange protocol. Juels, A. & Sudan, M. (2002), A fuzzy vault scheme, in Proc.
IEEE International Symposium on Information Theory
We have outlined some ideas involving fuzzy vaults, (ISIT) 2002, IEEE Press, p. 408. Full version available as
but consideration of the privacy and security require- URL: http://www.rsa.com:80/rsalabs/node.asp?id=2061
ments requires further research.
LaMacchia, B., Lauter, K. & Mityagin, A. (2007), Stronger
Acknowledgements security of authenticated key exchange, in W. Susilo, J. K.
This research performed while D.S. was at the Uni- Liu & Y. Mu, eds, First International Conference on Prov-
versity of Waterloo and S.C. was at Sun Microsys- able Security (ProvSec) 2007, Vol. 4784 of LNCS, Springer,
pp. 116.
tems Laboratories. D.S. was supported in part by an
NSERC Canada Graduate Scholarship. The authors MacKenzie, P. (2002), The PAK suite: Protocols for password-
gratefully acknowledge helpful discussions with Alfred authenticated key exchange, Technical Report 2002-46, DI-
Menezes, Bodo Moller, Michele Mosca, and Berkant MACS Center, Rutgers University.
Ustaoglu, and appreciate the feedback of anonymous URL: http://dimacs.rutgers.edu/TechnicalReports/
referees. abstracts/2002/2002-46.html

Nordea Bank (2009), Netbank security.


References URL: http://www.nordea.ee/Private+customers/E-
channels++Netbank/Netbank/Netbank+Security/
Abdalla, M., Chevassut, O. & Pointcheval, D. (2005), One-
936612.html
time verifier-based encrypted key exchange, in (Vaude-
nay 2005), pp. 4764. Full version available as URL: Park, Y. M. & Park, S. G. (2004), Two factor authenticated key
http://www.di.ens.fr/mabdalla/papers/ACP05-letter.pdf exchange (TAKE) protocol in public wireless LANs, IEICE
Transactions on Communications E87-B(5), 13821385.
Bellare, M., Pointcheval, D. & Rogaway, P. (2000), Authen-
ticated key exchange secure against dictionary attacks, in Paterson, K. G. & Stebila, D. (2009), One-time-
(Preneel 2000), pp. 139155. password-authenticated key exchange. URL:
http://eprint.iacr.org/2009/430
Bellare, M. & Rogaway, P. (1993), Random oracles are practi-
cal: a paradigm for designing efficient protocols, in Proc. 1st Pointcheval, D. & Zimmer, S. (2008), Multi-factor authenti-
ACM Conference on Computer and Communications Secu- cated key exchange, in S. M. Bellovin & R. Gennaro, eds,
rity (CCS) (1993), ACM, pp. 6273. Applied Cryptography and Network Security (ACNS) 2008,
Vol. 5037 of LNCS, Springer, pp. 277295.
Bellovin, S. M. & Merritt, M. (1992), Encrypted key exchange:
Password-based protocols secure against dictionary attacks, Preneel, B., ed. (2000), Advances in Cryptology Proc. EU-
in Proceedings of the 1992 IEEE Computer Society Confer- ROCRYPT 2000, Vol. 1807 of LNCS, Springer.
ence on Research in Security and Privacy, IEEE.
RSA Security Inc. (2009), RSA SecurID.
Bellovin, S. M. & Merritt, M. (1993), Augmented encrypted URL: http://www.rsa.com/node.aspx?id=1156
key exchange: a password-based protocol secure against dic-
tionary attacks and password file compromise, in Proc. 1st Schecter, S., Dhamija, R., Ozment, A. & Fischer, I. (2007),
ACM Conference on Computer and Communications Secu- The emperors new security indicators: An evaluation of
rity (CCS) (1993), pp. 244250. website authentication and the effect of role playing on us-
ability studies, in Proc. IEEE Symposium on Security and
Blizzard Entertainment (2009), Blizzard authenticator. Privacy (S&P) 2007, IEEE Press, pp. 5165.
URL: http://eu.blizzard.com/support/article.xml?locale=
en GB&articleId=28152 Stebila, D., Udupi, P. & Chang, S. (2009), Multi-factor
password-authenticated key exchange (full version).
Boyko, V., MacKenzie, P. & Patel, S. (2000), Provably se- URL: http://eprint.iacr.org/2008/214
cure Password-Authenticated Key exchange using Diffie-
Hellman, in (Preneel 2000), pp. 156171. Full version avail- Vaudenay, S., ed. (2005), Public Key Cryptography (PKC)
able as URL: http://eprint.iacr.org/2000/044 2005, Vol. 3386 of LNCS, Springer.
Canetti, R., Halevi, S., Katz, J., Lindell, Y. & MacKenzie, Yang, G., Wong, D. S., Wang, H. & Deng, X. (2006), For-
P. (2005), Universally composable password-based key ex- mal analysis and systematic construction of two-factor au-
change, in R. Cramer, ed., Advances in Cryptology Proc. thentication scheme (short paper), in P. Ning, S. Qing &
EUROCRYPT 2005, Vol. 3494 of LNCS, Springer, pp. 404 N. Li, eds, Proc. 8th International Conference on Infor-
421. mation and Communications Security (ICICS) 2006, Vol.
4307 of LNCS, Springer, pp. 8291. Full version available as
Canetti, R. & Krawczyk, H. (2001), Analysis of key- URL: http://eprint.iacr.org/2006/270
exchange protocols and their use for building secure
channels, in B. Pfitzmann, ed., Advances in Cryptol- Yoon, E.-J. & Yoo, K.-Y. (2006), An optimized two factor au-
ogy Proc. EUROCRYPT 2001, Vol. 2045 of LNCS, thenticated key exchange protocol in PWLANs, in V. N.
Springer, pp. 453474. Full version available as URL: Alexandrov, G. D. van Albada, P. M. Sloot & J. Don-
http://eprint.iacr.org/2001/040 garra, eds, Computational Science ICCS 2006, Vol. 3992
of LNCS, Springer, pp. 10001007.
Coron, J.-S. & Icart, T. (2009), A random oracle into elliptic
curves. URL: http://eprint.iacr.org/2009/340

Gentry, C., MacKenzie, P. & Ramzan, Z. (2005), PAK-Z+.


Contribution to the IEEE P1363-2000 study group for Fu-
ture PKC Standards.
URL: http://grouper.ieee.org/groups/1363/WorkingGroup
/presentations/pakzplusv2.pdf

63
CRPIT Volume 105 - Information Security 2010
A Security analysis A.2 Case 1: Attacking a client instance,
This section contains the details of the security anal- asymmetric factor uncompromised
ysis supporting Theorem 3.1. This case addresses impersonation of the server when
It is helpful to be able to refer to the action of the instance being attacked is a client instance and
a party upon receipt of a message. We use the no- the uncompromised ` th factor is asymmetric.
tation ClientActioniP and ServerActioniP to The modifier M first uniformly at random guesses
refer to the portion of the protocol P performed U R Clients and U 0 R Servers as its guess of who
by the client or server, respectively, after the ith the adversary A will end up attacking. If the attacker
flow. Thus, MFPAK as described in Figure 2 spec- ends up attacking the pair of users the modifier has
ifies ClientAction0MFPAK , ServerAction1MFPAK , guessed, then we will show how to transform the at-
ClientAction2MFPAK , and ServerAction3MFPAK tack into an attack on PAK-Z+.
Let GuessCS be the event that the modifier M
A.1 Ingredients correctly guesses U and U 0 . Then
Computational Diffie-Hellman assumption.
MFPAK operates over a finite cycle group G for which Pr(GuessCS) = Pr((U correct) (U 0 correct)) (1)
the Computational Diffie-Hellman (CDH) assump- 1
tion holds. Let G be a finite cyclic group of or- . (2)
|Clients| |Servers|
der q, let g be a generator of G, and let texp be
the time it takes to perform an exponentiation in For this case, we assume that
G. Let Acceptable : G {true, false} such that no RevealFactorMFPAK (U , U 0 , ` ) or
Acceptable(z) = true if and only if z G, where G is RevealFactorVMFPAK (U 0 , U , ` ) query is issued
a specified abelian group which has G as a subgroup. against M: this case models server imper-
For two values X and Y , define DH(X, Y ) = X y , if sonation in the ` th factor, which is why no
Acceptable(X) and Y = g y , or DH(X, Y ) = Y x , if RevealFactorVMFPAK (U 0 , U , ` ) query is allowed.
Acceptable(Y ) and X = g x . Let A be a probabilis- Furthermore, no RevealFactorMFPAK (U , U 0 , ` ) is
tic algorithm with input (G, g, X, Y ) that outputs a allowed because an adversary can easily recover the

subset of G, and define verifier pw`U ,U 0 from the secret pw`U ,U 0 and one
interaction with U 0 .
Advcdh
G,g (A) = Pr (DH(X, Y ) A(G, g, X, Y ) : The modifier M does the following to convert an
(x, y) R Zq , X = g x , Y = g y ) . MFPAK adversary A into a PAK-Z+ adversary A .
Password preparation. For each (C, S, `)
Let Advcdh cdh
G,g (t, n) = maxA {AdvG,g (A)} where the
Clients Servers {1, . . . , n} \ {(U , U 0 , ` )}, M sets
maximum is taken over all algorithms running in time pw`C,S R Passwords` and constructs the correspond-
t and outputting a subset of size at most n. The CDH ing pw`C,S . Of all the authentication secrets, only
assumption is that, for any probabilistic polynomial

time algorithm A, Advcdh pw`U ,U 0 and pw`U ,U 0 remain unknown to M at this


G,g (A) is negligible.
point. Compute
Qn the corresponding ` , for ` 6= ` , and
Random hash functions. MFPAK makes use of a set `=1,`6=` ` .
number of random hash functions based on random
oracles (Bellare & Rogaway 1993). A random hash Instantiation of PAK-Z+ simulator. We instan-
function H : {0, 1} {0, 1}k is constructed by se- tiate the PAK-Z+ simulator SPAK-Z+ with the
lecting each bit of H(x) uniformly at random and following random oracles: Hi (C, S, pwC,S ) :=
independently for every x {0, 1} . We make use Hi (C, S, ` , pwC,S ) for i = 1, 2; H3 (v) := H3 (` , v);

of a number of independent random hash functions


H1 , H2 , . . . , which can be constructed from a single H4 (hC,S, m, Y i, , 1 )
random hash function H by setting H` (x) = H(`||x). :=H4 (hC, S, m , Y i, , 1 , . . . , , . . . , n )
Constructing a hash function that outputs elements
of a group instead of {0, 1} is also possible and ef- k`Ia ,`6=` H5 (hC, S, m , Y i, , `, ` ) ;
ficient, and in fact all of the hash functions used in
MFPAK are into the group G. H5 (hC, S, m, Y i, , 1 ) := H5 (hC, S, m
, Y i, , ` , ); and H7 (hC, S, m, Y i, , 1 ) :=
Signature scheme. MFPAK makes use of a sig-
nature scheme S = (Gen, Sign, Verify) that is exis- H7 (hC, S, m , Y i, , 1 , . . . , , . . . , n ).1 These
tentially unforgeable under chosen message attacks starred functions are independent random oracles
(Goldwasser et al. 1988). Let (v, V ) Gen(1 ), if the corresponding unstarred functions are. The
where v is a private key and V is the correspond- above construction is possible since {` }`6=` and
ing public key. Let tGen be the runtime of Gen(1 ), are fixed and known to M because of the guesses
and tsig be the runtime of Sign and Verify. A forger made at the beginning of this case. By using a
F is given a public key V and must forge signa- concatenation of random oracles, the PAK system
tures; it can query an oracle that returns Signv (m) computes the values we need in Ms handling of
for any messages m of its choice. It succeeds if it can Execute and Send queries.
output a forgery (m, ) such that VerifyV (m, ) = Further, SPAK-Z+ is instantiated with the following
true, where m was not queried to the signing or- signature scheme (Gen, Sign , Verify ):
acle. Let Succeu -cma (F) = Pr(F succeeds), and
eu-cma
S,
-cma (F) where Signv (hC, S, m, Y i) := Signv (hC, S, m , Y i)
SuccS, (t, qSign ) = maxF Succeu

S, VerifyV (hC, S, m, Y i, s) := VerifyV (hC, S, m , Y i, s).
the maximum is taken over all forgers running in
time t and making at most qSign queries to the sign- Since the transformation that sends hC, S, m, Y i 7
ing oracle. A signature scheme S is existentially un- hC, S, m , Y i is just a permutation, it follows that
forgeable under chosen message attacks (eu-cma) if, (Gen, Sign , Verify ) is an eu-cma signature scheme
for any probabilistic polynomial time algorithm F, whenever (Gen, Sign, Verify) is.
Succeu -cma (F) is negligible.
S, 1
Note that we do not need to instantiate H6 because this oracle
is not used by PAK-Z+.

64
Proc. 8th Australasian Information Security Conference (AISC 2010), Brisbane, Australia
Ms handling of As queries. The modifier M per- 4. If M = hC, mi and (C, U ) = (U , U 0 ):
forms the following modifications to the queries of A. (a) Set m m 1 .
The main goal is for M to simulate all queries except (b) Send a SendPAK-Z+ (U, i, hC, mi) query to
for ones that are related to the U and U 0 guessed SPAK-Z+ and receive hY, k, a, v 00 i.
at the beginning of the case: these queries are passed
to the underlying PAK-Z+ simulator SPAK-Z+ . (c) Extract k as the first component of k.
(d) Extract {a0` }`Ia ,`6=` from the remaining
RevealFactor(C, S, `): |Ia | 1 components of k.
1. If (C, S, `) 6= (U , U 0 , ` ): (e) Compute {a` }`Ia ,`6=` .
Return pw`C,S . (f) Set a` a.
2. If (C, S, `) = (U , U 0 , ` ): (g) Set v`00 v 00 .
Reject; if this query occurs, then Ms guess of (h) Return hC, m, Y, k, {a` }, {v`00 }i.
U and U 0 at the beginning of this case was 5. If M = hY, k, {a` }, {v`00 }i and (U, U 0 ) 6=
incorrect. (U , U 0 ), where U 0 is the partner of U :
RevealFactorV(S, C, `): Perform ClientAction2MFPAK and return
1. If (C, S, `) 6= (U , U 0 , ` ): hk 0 , {s` }i.
Return pw`C,S . 6. If M = hY, k, {a` }, {v`00 }i and (U, U 0 ) =
2. If (C, S, `) = (U , U 0 , ` ): (U , U 0 ), where U 0 is the partner of U :
Reject; if this query occurs, then Ms guess of (a) Verify {v`00 }`Ia ,`6=` .
U and U 0 at the beginning of this case was (b) Set k 0 kk`Ia ,`6=` a0` .
incorrect. (c) Send a SendPAK-Z+ (U, i, hY, k, a` , v`00 i)
Test(U, i): query to SPAK-Z+ and receive hsi.
1. If U = U : (d) Set k 0 R range(H6 ) and store.
Send a TestPAK-Z+ (U, i) query to PAK-Z+ simu- (e) Compute {s` }`Ia ,`6=` .
lator SPAK-Z+ and return the result to A. (f) Set s` s.
2. If U 6= U :
Reject; if this query occurs, then Ms guess of (g) Return hk 0 , {s` }i.
U at the beginning of this case was incorrect. 7. If M = hk 0 , {s` }i and (U 0 , U ) 6= (U , U 0 ), where
RevealSK(U, i): U 0 is the partner of U :
1. If U = U or U = U 0 : Perform ServerAction3MFPAK .
Send a RevealSKPAK-Z+ (U, i) query to PAK-Z+ 8. If M = hk 0 , {s` }i and (U 0 , U ) = (U , U 0 ), where
simulator SPAK-Z+ and return the result to A. U 0 is the partner of U :
2. Otherwise: (a) Reject if k 0 is not the same as the k 0 gener-
Return sk for instance U i . ated in Case 6 above.
Execute(C, i, S, j): (b) Verify {s` }`Ia ,`6=` .
1. If (C, S) 6= (U , U 0 ): (c) Send a SendPAK-Z+ (U, i, hs` i) query to
M performs ExecuteMFPAK (C, i, S, j) with all the SPAK-Z+ .
values it has and returns the transcript. Differences from MFPAK simulator. We must now
2. If (C, S) = (U , U 0 ): analyze the differences between a true MFPAK simu-
M will use the PAK-Z+ simulator SPAK-Z+ to lator and the view presented to the MFPAK adversary
obtain a transcript for this query. A by the modifier M.
(a) Send an ExecutePAK-Z+ (C, i, S, j) query to First we note that the distributions of generated
SPAK-Z+ and receive hC, m, Y, k, a, v 00 , si. passwords exactly match the MFPAK specifications.
(b) Set m m . Furthermore, all the generated passwords exactly
(c) Set k 0 R range(H6 ). match the PAK-Z+ specifications.
Next, we note that Ms handling of As queries
(d) Extract k as the first component of k. precisely matches what an MFPAK simulator would
(e) Extract {a0` }`Ia ,`6=` from the remaining do except in a small number of cases. The mes-
|Ia | 1 components of k. sages received from and forwarded from the use of
(f) Compute {a` }`Ia ,`6=` . the PAK-Z+ simulator SPAK-Z+ can by inspection be
(g) Set a` a. seen to match what the MFPAK simulator would do
(h) Set v`00 v 00 . because SPAK-Z+ is using the specially constructed
(i) Compute {s` }`Ia ,`6=` . random oracles Hi . The differences between M and
(j) Set s` s. what a true MFPAK simulator would do are as follows:
RevealFactor(C, S, `) when (C, S, `) =
(k) Return hC, m, Y, k, {a` }, {v`00 }, k 0 , {s` }i to
A. (U , U 0 , ` ), RevealFactorV(S, C, `) when
Send(U, i, M ): (C, S, `) = (U , U 0 , ` ), and Test(U, i) when
U 6= U :
If M is not a valid protocol message in a meaning- The modifier M rejects here, while a true
ful sequence, then reject as would be done in MFPAK. MFPAK simulator should not. If M correctly
1. If M = hstart, Si and (U, S) 6= (U , U 0 ): guessed U and U 0 at the beginning of this
Perform ClientAction0MFPAK and return case, then none of these queries would occur,
hU, mi. for if one did then the instance

in which a Test
query is directed to U would not be fresh in
2. If M = hstart, Si and (U, S) = (U , U 0 ): the ` th factor.
i
(a) Send a SendPAK-Z+ (U, i, M ) query to Execute(C, i, S, j) when (C, S) = (U , U 0 ),
SPAK-Z+ and receive hU, mi.
(b) Set m m . Send(U, i, M ) when M = hY, k, a, v 00 i and
(c) Return hU, mi. (U, U 0 ) = (U , U 0 ), where U 0 is the partner
3. If M = hC, mi and (C, U ) 6= (U , U 0 ): of U , and Send(U, i, M ) when M = hk 0 , si and
Perform ServerAction1MFPAK and return (U, U 0 ) = (U 0 , U ), where U 0 is the partner of
hY, k, {a` }, {v`00 }i. U:

65
CRPIT Volume 105 - Information Security 2010
The modifier M generated a random value k 0 4. Symmetric factor uncompromised, U Servers:
for this instance instead of generating k 0 = no RevealFactorMFPAK (U 0 , U , ` ) query.
H6 (sid, , 1 , . . . , n ). Since H6 is a random or- The proofs for each of these cases proceed in an
acle, this substitution is distinguishable by the analogous manner. For case 2, the modifier simulates
adversary A if and only if A queries H6 on the an MFPAK system to the adversary using an underly-
arguments sid, , 1 , . . . , n . But if that occurs, ing PAK-Z+ system and assuring that the underlying
then A must know ` . These are the same in- system remains fresh. For cases 3 and 4, the modifier
puts to the H7 oracle used to compute the ses- simulates an MFPAK system to the adversary using an
sion key in the PAK-Z+ simulation SPAK-Z+ , so underlying PAK system and assuring that it remains
the same adversary could distinguish the output fresh.
of TestPAK-Z+ (U , i) received from SPAK-Z+ . The The details for these three cases appear in the full
latter event corresponds to the event Succake version of the paper (Stebila et al. 2009).
PAK-Z+ ,
and so the substitution is distinguishable with A.4 Overall result
probability at most Pr(Succake PAK-Z+ (A)). By combining cases 1 and 2, we can obtain a result for
Let Dist1 |GuessCS be the event that the simulation instances that are fresh in the ` th factor when that
M is distinguishable from a real MFPAK simulator factor is asymmetric, and by combining cases 3 and 4
from As perspective given that the modifier correctly we can obtain a result for instances that are fresh in
guessed U and U 0 at the beginning of this case. the ` th factor when that factor is symmetric.
Then Pr(Dist1 |GuessCS) 3 Pr(Succake PAK-Z+ (A)) by For the ake-f` advantage for an asymmetric factor,
the argument above. we have
Result for case 1. Let U Clients, U 0 Servers  
-f` (t, q , q , q ) |Clients| |Servers|
and let E1 be the event that neither Pr SuccakeMFPAK se ex ro
RevealFactorMFPAK (U , U 0 , ` ) nor 8 Pr (SuccPAK-Z+ (t0 , qse , qex , qro
0
)) ,
RevealFactorVMFPAK (U 0 , U , ` ) occurs. The in-
stance involving U , U 0 in SPAK-Z+ is fresh if and where t0 t + n(qro + 1)texp + qex (3texp + |Ia |tsig ) +
only if the corresponding instance in M is fresh in 0
the ` th factor. Thus, if event E1 occurs and event qse (3texp + |Ia |tsig ), qro n(qro + z + 6qex + 5qse ), and
GuessCS occurs, then, whenever A wins against M, z = max{qse + qex , |Clients| |Servers|}.
A wins against SPAK-Z+ , except with probability at For the ake-f` advantage for a symmetric factor,
most Pr(Dist1 |GuessCS). Therefore, we have
 
Pr Succake -f`
MFPAK (t, qse , qex , qro ) |Clients| |Servers|
 
Pr Succake -f` (t, q , q , q )|E , GuessCS
M se ex ro 1

0 0
 2 Pr (SuccPAK (t00 , qse , qex , qro
00
)) ,
Pr Succake PAK-Z+ (t , qse , qex , qro ) ,
00
where qro n(2qro + 1 + 4z + 6qex + 5qse ), t00 t +
0
where qro n(qro + z + 6qex + 4qse ), t0 t + n(qro + z|Ia |tGen +(qro +1)texp +qex (3texp +|Ia |tsig )+qse (3texp +
1)texp + qex (3texp + |Ia |tsig ) + qse (2ntexp + |Ia |tsig ), and |Ia |tsig ), and z = max{qse + qex , |Clients| |Servers|}.
z = min{qse + qex , |Clients| |Servers|}. Moreover, In each case, a similar bound applies for Advma -f`
MFPAK .
  Substituting the security statements for PAK
Pr Succake
-f` (t, q , q , q )|E , GuessCS (MacKenzie 2002, Thm. 6.9) and PAK-Z+ (Gentry
MFPAK se ex ro 1
et al. 2005, Thm. 5.1) and simplifying the expres-

-f` (t, q , q , q )|E , GuessCS
 sions, we obtain the following theorem describing the
Pr Succake M se ex ro 1 security of MFPAK:
Pr(Dist1 |GuessCS) . Theorem A.2 Let G be a finite cyclic group gener-
ated by g and let S be a signature scheme with secu-
Combining these two expressions yields the following rity parameter . Let A be an adversary that runs
result: in time t and makes at most qse and qex queries of
Lemma A.1 Let U Clients, U 0 Servers, and type Send and Execute, respectively, and at most qro
suppose that neither queries to the random oracle. Let bco = 1 if A makes
RevealFactorMFPAK (U , U 0 , ` ) nor a RevealFactorV(, , `) query to a server, and 0 other-
wise. Then MFPAK is a secure multi-factor password-
RevealFactorVMFPAK (U 0 , U , ` ) occurs (which is authenticated key exchange protocol, with
event E1 ). Then
16((1b )q +b q )
co se co ro

-f`
 + ,
Pr Succake |Passwords` |

MFPAK (t, qse , qex , qro )|E1 , GuessCS


if the `th factor is symmetric,

Advake -f`
MFPAK (A) 4qse
 
0 0
4 Pr SuccakePAK-Z+ (t , q , q , q ) , ` +  ,
|Passwords |
se ex ro



if the `th factor is asymmetric,
0
where qro n(qro + z + 6qex + 4qse ), t0 t + n(qro +
eu-cma 0
1)texp + qex (3texp + |Ia |tsig ) + qse (2ntexp + |Ia |tsig ), and where  = 8qse Advcdh 0 02
G,g (t , qro )+6qse SuccS, (t , qse )+
z = min{qse + qex , |Clients| |Servers|}, and a similar 5(qse +qex )(qro +qse +qex )
and = |Clients||Servers|, for t0 =
bound exists for Advs2c -f` |G|
MFPAK . 02 0
t + (z|Ia | + 8(qro + |Ia |qse + |Ia |qex ))texp , qro = n(2qro +
A.3 Remaining cases 4z + 6qex + 5qse ), and z = max{qse + qex , |Clients|
|Servers|}; a similar bound exists for Advma -f`
The remaining cases are as follows: MFPAK (A).
2. Asymmetric factor uncompromised, U
Servers: no RevealFactorMFPAK (U 0 , U , ` ) query.
3. Symmetric factor uncompromised, U Clients:
no RevealFactorMFPAK (U , U 0 , ` ) query.

66

Potrebbero piacerti anche