Abstract
In Crypto’21 Gu, Jarecki, and Krawczyk [25] showed an asymmetric password authenticated key exchange protocol (aPAKE) whose computational cost matches (symmetric) password authenticated key exchange (PAKE) and plain (i.e. unauthenticated) key exchange (KE). However, this minimal-cost aPAKE did not match prior aPAKE’s in round complexity, using 4 rounds assuming the client initiates compared to 2 rounds in an aPAKE of Bradley et al. [13].
In this paper we show two aPAKE protocols (but not strong aPAKEs like [13, 30]), which achieve optimal computational cost and optimal round complexity. Our protocols can be seen as variants of the Encrypted Key Exchange (EKE) compiler of Bellovin and Merritt [7], which creates password-authenticated key exchange by password-encrypting messages in a key exchange protocol. Whereas Bellovin and Merritt used this method to construct a PAKE by applying password-encryption to KE messages, we construct an aPAKE by password-encrypting messages of a unilaterally authenticated Key Exchange (ua-KE). We present two versions of this compiler. The first uses salted password hash and takes 2 rounds if the server initiates. The second uses unsalted password hash and takes a single simultaneous flow, thus simultaneously matching the minimal computational cost and the minimal round complexity of PAKE and KE.
We analyze our aPAKE protocols assuming an Ideal Cipher (IC) on a group, and we analyze them as modular constructions from ua-KE realized via a universally composable Authenticated Key Exchange where the server uses one-time keys (otk-AKE). We also show that one-pass variants of 3DH and HMQV securely realize otk-AKE in the ROM. Interestingly, the two resulting concrete aPAKE’s use the exact same protocol messages as variants of EKE, and the only difference between the symmetric PAKE (EKE) and asymmetric PAKE (our protocols) is in the key derivation equation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
Actual protocols diverge from Fig. 1 in some technicalities, e.g. session key derivation uses a hash of \( k \), but crucially \(\mathsf {H}\) inputs include a salt in \(\mathsf {OKAPE}\)-\(\mathsf {HMQV}\) and server/user identifiers in \(\mathsf {aEKE}\)-\(\mathsf {HMQV}\): We come back to this last point below.
- 3.
- 4.
We should note that a cost-saving implementation which walks through consecutive values e.g. \(X_i=g^{x+i}\) for \(i=0,1,...\) to find \(X_i\) which is the Elligator2 domain, and encrypts that \(X_i\) under a password, would leak information about the password if the adversary learns the length of this walk from timing information.
References
Facebook stored hundreds of millions of passwords in plain text. https://www.theverge.com/2019/3/21/18275837/facebook-plain-text-password-storage-hundreds-millions-users
Google stored some passwords in plain text for fourteen years. https://www.theverge.com/2019/5/21/18634842/google-passwords-plain-text-g-suite-fourteen-years
Abdalla, M., Barbosa, M., Bradley, T., Jarecki, S., Katz, J., Xu, J.: Universally composable relaxed password authenticated key exchange. In: Micciancio, D., Ristenpart, T. (eds.) CRYPTO 2020. LNCS, vol. 12170, pp. 278–307. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-56784-2_10
Abdalla, M., Pointcheval, D.: Simple password-based encrypted key exchange protocols. In: Menezes, A. (ed.) CT-RSA 2005. LNCS, vol. 3376, pp. 191–208. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-30574-3_14
Andreeva, E., Bogdanov, A., Dodis, Y., Mennink, B., Steinberger, J.P.: On the indifferentiability of key-alternating ciphers. In: Canetti, R., Garay, J.A. (eds.) CRYPTO 2013. LNCS, vol. 8042, pp. 531–550. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40041-4_29
Bellare, M., Pointcheval, D., Rogaway, P.: Authenticated key exchange secure against dictionary attacks. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 139–155. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45539-6_11
Bellovin, S.M., Merritt, M.: Encrypted key exchange: password-based protocols secure against dictionary attacks. In: IEEE Computer Society Symposium on Research in Security and Privacy - S&P 1992, pp. 72–84. IEEE (1992)
Benhamouda, F., Pointcheval, D.: Verifier-based password-authenticated key exchange: new models and constructions. IACR Cryptology ePrint Archive 2013:833 (2013)
Bernstein, D.J., Hamburg, M., Krasnova, A., Lange, T.: Elligator: elliptic-curve points indistinguishable from uniform random strings. In: ACM Conference on Computer and Communications Security - CCS 2013 (2013)
Bernstein, D.J., et al.: Gimli: a cross-platform permutation. Cryptology ePrint Archive, Report 2017/630 (2017). http://eprint.iacr.org/2017/630
Bertoni, G., Daemen, J., Peeters, M., Van Assche, G.: Keccak. In: Johansson, T., Nguyen, P.Q. (eds.) EUROCRYPT 2013. LNCS, vol. 7881, pp. 313–314. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38348-9_19
Boyko, V., MacKenzie, P., Patel, S.: Provably secure password-authenticated key exchange using Diffie-Hellman. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 156–171. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45539-6_12
Bradley, T., Jarecki, S., Xu, J.: Strong asymmetric PAKE based on trapdoor CKEM. In: Boldyreva, A., Micciancio, D. (eds.) CRYPTO 2019. LNCS, vol. 11694, pp. 798–825. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26954-8_26
Brier, E., Coron, J.-S., Icart, T., Madore, D., Randriam, H., Tibouchi, M.: Efficient indifferentiable hashing into ordinary elliptic curves. In: Rabin, T. (ed.) CRYPTO 2010. LNCS, vol. 6223, pp. 237–254. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14623-7_13
Canetti, R., Halevi, S., Katz, J., Lindell, Y., MacKenzie, P.: Universally composable password-based key exchange. In: Cramer, R. (ed.) EUROCRYPT 2005. LNCS, vol. 3494, pp. 404–421. Springer, Heidelberg (2005). https://doi.org/10.1007/11426639_24
Coron, J.-S., Dodis, Y., Mandal, A., Seurin, Y.: A domain extender for the ideal cipher. In: Micciancio, D. (ed.) TCC 2010. LNCS, vol. 5978, pp. 273–289. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11799-2_17
Dachman-Soled, D., Katz, J., Thiruvengadam, A.: 10-round Feistel is indifferentiable from an ideal cipher. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016. LNCS, vol. 9666, pp. 649–678. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49896-5_23
Daemen, J., Hoffert, S., Assche, G.V., Keer, R.V.: The design of Xoodoo and Xoofff. 2018, 1–38 (2018)
Dai, Y., Seurin, Y., Steinberger, J., Thiruvengadam, A.: Indifferentiability of iterated Even-Mansour ciphers with non-idealized key-schedules: five rounds are necessary and sufficient. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017. LNCS, vol. 10403, pp. 524–555. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63697-9_18
Dai, Y., Steinberger, J.: Indifferentiability of 8-round Feistel networks. In: Robshaw, M., Katz, J. (eds.) CRYPTO 2016. LNCS, vol. 9814, pp. 95–120. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53018-4_4
Dodis, Y., Stam, M., Steinberger, J., Liu, T.: Indifferentiability of confusion-diffusion networks. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016. LNCS, vol. 9666, pp. 679–704. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49896-5_24
Fouque, P.-A., Joux, A., Tibouchi, M.: Injective encodings to elliptic curves. In: Boyd, C., Simpson, L. (eds.) ACISP 2013. LNCS, vol. 7959, pp. 203–218. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39059-3_14
Freitas Dos Santos, B., Gu, Y., Jarecki, S., Krawczyk, H.: Asymmetric PAKE with low computation and communication. IACR Cryptology ePrint Archive, 2022 (2022). https://ia.cr/2022
Gentry, C., MacKenzie, P., Ramzan, Z.: A method for making password-based key exchange resilient to server compromise. In: Dwork, C. (ed.) CRYPTO 2006. LNCS, vol. 4117, pp. 142–159. Springer, Heidelberg (2006). https://doi.org/10.1007/11818175_9
Gu, Y., Jarecki, S., Krawczyk, H.: KHAPE: asymmetric PAKE from key-hiding key exchange. In: Malkin, T., Peikert, C. (eds.) CRYPTO 2021. LNCS, vol. 12828, pp. 701–730. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-84259-8_24, https://ia.cr/2021/873
Halevi, S., Krawczyk, H.: One-pass HMQV and asymmetric key-wrapping. In: Catalano, D., Fazio, N., Gennaro, R., Nicolosi, A. (eds.) PKC 2011. LNCS, vol. 6571, pp. 317–334. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19379-8_20
Holenstein, T., Künzler, R., Tessaro, S.: The equivalence of the random oracle model and the ideal cipher model, revisited. In: STOC 2011 (2011)
Hwang, J.Y., Jarecki, S., Kwon, T., Lee, J., Shin, J.S., Xu, J.: Round-reduced modular construction of asymmetric password-authenticated key exchange. In: Catalano, D., De Prisco, R. (eds.) SCN 2018. LNCS, vol. 11035, pp. 485–504. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-98113-0_26
Jablon, D.P.: Extended password key exchange protocols immune to dictionary attacks. In: 6th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE 1997), pp. 248–255, Cambridge, MA, USA, 18–20 June 1997. IEEE Computer Society (1997)
Jarecki, S., Krawczyk, H., Xu, J.: OPAQUE: an asymmetric PAKE protocol secure against pre-computation attacks. In: Nielsen, J.B., Rijmen, V. (eds.) EUROCRYPT 2018. LNCS, vol. 10822, pp. 456–486. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-78372-7_15
Jarecki, S., Krawczyk, H., Xu, J.: On the (in)security of the Diffie-Hellman oblivious PRF with multiplicative blinding. In: Garay, J.A. (ed.) PKC 2021. LNCS, vol. 12711, pp. 380–409. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-75248-4_14
Jutla, C.S., Roy, A.: Smooth NIZK arguments. In: Beimel, A., Dziembowski, S. (eds.) TCC 2018. LNCS, vol. 11239, pp. 235–262. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03807-6_9
Kim, T., Tibouchi, M.: Invalid curve attacks in a GLS setting. In: Tanaka, K., Suga, Y. (eds.) IWSEC 2015. LNCS, vol. 9241, pp. 41–55. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22425-1_3
Krawczyk, H.: SKEME: a versatile secure key exchange mechanism for internet. In: 1996 Internet Society Symposium on Network and Distributed System Security (NDSS), pp. 114–127 (1996)
Krawczyk, H.: HMQV: a high-performance secure Diffie-Hellman protocol. In: Shoup, V. (ed.) CRYPTO 2005. LNCS, vol. 3621, pp. 546–566. Springer, Heidelberg (2005). https://doi.org/10.1007/11535218_33
Marlinspike, M., Perrin, T.: The X3DH key agreement protocol (2016). https://signal.org/docs/specifications/x3dh/
McQuoid, I., Rosulek, M., Roy, L.: Minimal symmetric PAKE and 1-out-of-n OT from programmable-once public functions. In: Ligatti, J., Ou, X., Katz, J., Vigna, G. (eds.) CCS 2020: 2020 ACM SIGSAC Conference on Computer and Communications Security, Virtual Event, USA, 9–13 November 2020. https://eprint.iacr.org/2020/1043
Pointcheval, D., Wang, G.: VTBPEKE: verifier-based two-basis password exponential key exchange. In: ASIACCS 2017, pp. 301–312. ACM Press (2017)
Schmidt, J.: Requirements for password-authenticated key agreement (PAKE) schemes, April 2017. https://tools.ietf.org/html/rfc8125
Shallue, A., van de Woestijne, C.E.: Construction of rational points on elliptic curves over finite fields. In: Hess, F., Pauli, S., Pohst, M. (eds.) ANTS 2006. LNCS, vol. 4076, pp. 510–524. Springer, Heidelberg (2006). https://doi.org/10.1007/11792086_36
Shoup, V.: Security analysis of SPAKE2+. IACR Cryptol. ePrint Arch. 2020, 313 (2020)
Tibouchi, M.: Elligator squared: uniform points on elliptic curves of prime order as uniform random strings. In: Christin, N., Safavi-Naini, R. (eds.) FC 2014. LNCS, vol. 8437, pp. 139–156. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45472-5_10
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
A Universally Composable Asymmetric PAKE Model

adapted from [25]
\(\mathcal {F}_{\mathsf {aPAKE}}\): asymmetric PAKE functionality
We include for reference the UC aPAKE definition in the form of a functionality \(\mathcal {F}_{\mathsf {aPAKE}}\), shown in Fig. 9. This functionality is largely as it was originally defined by Gentry, Mackenzie, and Ramzan [24], but it adopts few notational modifications introduced by Gu et al. [25]. These include naming what amounts to user accounts explicitly as \(\mathsf {uid}\) instead of generic-sounding \(\mathsf {sid}\), using \(\mathsf {sid}\) instead of \(\mathsf {ssid}\) as a session-identifier for on-line authentication attempts, and using only pairs \((\mathsf {S},\mathsf {uid})\) to identify server password files and not \((\mathsf {S},\mathsf {U},\mathsf {uid})\) tuples as in [24].
Because in this paper we differentiate between unsalted and (publicly) salted aPAKE’s, an explicit support for unsalted aPAKE’s is reflected in aPAKE functionality \(\mathcal {F}_{\mathsf {aPAKE}}\) by introducing a slight modification in the functionality of [25]. These modifications are highlighted in Fig. 9, and they all concern a client-side usage of the user account field \(\mathsf {uid}\). As we mention in the introduction, the round-minimal protocol \(\mathsf {aEKE}\) is unsalted, and to enforce the aPAKE contract defined by [24], which is that a single real-world offline dictionary attack operation must correspond not only to a single password guess but also to a unique user password file, identified by a unique pair \((\mathsf {S},\mathsf {uid})\), the client must get as environment’s inputs both the server identifier \(\mathsf {S}\) and the user account identifier \(\mathsf {uid}\). This is reflected in including \(\mathsf {uid}\) in the inputs to \(\mathsf {CltSession}\) command in Fig. 9. However, since the client now performs computation on a fixed \(\mathsf {uid}\), honest client and server sessions will not agree on the same output key unless they run not only on the same password \( pw \) but also on the same \(\mathsf {uid}\). Hence the \(\mathsf {NewKey}\) processing now includes \(\mathsf {uid}\)-equality enforcement. Finally, for the same reason, an online password test \(\mathsf {TestPwd}\) must specify the \(\mathsf {uid}\) field in addition to password guess \( pw ^*\).
Functionality \(\mathcal {F}_{\mathsf {aPAKE}}\) currently allows both the server and the client sessions to leak the account identifier \(\mathsf {uid}\) input to the adversary. The server-side leakage of this information was inherent (although not immediate to observe) in the original aPAKE functionality of [24], and it was adopted by subsequent works, including e.g. [25, 30]. Now, however, we also introduce client-side leakage of the same information. The \(\mathsf {uid}\) has to be transmitted from the client to the server before the protocol starts, but it is not clear that the cryptographic protocol should leak it. We leave plugging this leakage and/or verifying whether it is necessary in known aPAKEs, including ours, to future work.
Client-to-Server Entity Authentication. Since our protocol \(\mathsf {OKAPE}\) shown includes client-to-server authentication (it is not optional, and the protocol is insecure without it), it realizes an aPAKE functionality amended by client-to-server entity authentication. We use \(\mathcal {F}_{\mathsf {aPAKE}\text {-}\mathsf {cEA}}\) to denote the variant of aPAKE functionality with uni-directional client-to-server entity authentication, and we include it in Fig. 10. Since protocol \(\mathsf {OKAPE}\) is a salted aPAKE, it does not need the \(\mathsf {uid}\) input on the client side, so the \(\mathcal {F}_{\mathsf {aPAKE}\text {-}\mathsf {cEA}}\) functionality in Fig. 10 incorporates all the code of functionality \(\mathcal {F}_{\mathsf {aPAKE}}\) but without the \(\mathsf {uid}\)-related modifications. To simplify \(\mathsf {NewKey}\) processing functionality \(\mathcal {F}_{\mathsf {aPAKE}\text {-}\mathsf {cEA}}\) in Fig. 10 assumes that the client party terminates first, so if two honest parties are connected then the client party computes its session key output first, and it is always the server party which can potentially get the same key copied by the functionality. One could define it more generally but we expect that in most aPAKE protocols with unilateral client-to-server explicit authentication the server will indeed be the last party to terminate.
B Simulator for Proof of Theorem 3
Because of space constraints, we refer the reader to [23] for a complete proof of Theorem 3, and provide here an abridged version containing only the overall proof strategy and the description of the simulator.
To prove the theorem we need to construct a simulator, denoted \(\mathsf {SIM}\), such that the environment’s view of the real-world security game, i.e. an interaction between the adversary \(\mathcal {A}\) (whom we consider as a subprocedure of the environment \(\mathcal {Z}\)) and honest parties following protocol \(\mathsf {OKAPE}\), is indistinguishable from the environment’s view in the ideal-world interaction between \(\mathcal {A}\), \(\mathsf {SIM}\), and the functionality \(\mathcal {F}_{\mathsf {aPAKE}\text {-}\mathsf {cEA}}\).
Simulator Construction. We show an overview of our simulation strategy in Fig 11, which gives the top-level view of the real world execution compared to the ideal world execution which involves the simulator \(\mathsf {SIM}\) shown in Figs. 12 and 13 as well as the simulator \(\mathsf {SIM}_{\mathsf {AKE}}\) for the \(\mathsf {otkAKE}\) subprotocol. The description of simulator \(\mathsf {SIM}\) is split into two parts as follows: Fig. 12 contains the \(\mathsf {SIM} \text{ pt.1 }\) part of the diagram in Fig 11, i.e. it deals with adversary’s ideal cipher and hash queries, and in addition with the compromise of password files. Figure 13 contains the \(\mathsf {SIM} \text{ pt.2 }\) part of the diagram in Fig 11 dealing with on-line aPAKE sessions. We rely on the fact that protocol \(\mathsf {otkAKE}\) realizes functionality \(\mathcal {F}_{\mathsf {otkAKE}}\), so we can assume that there exists a simulator \(\mathsf {SIM}_{\mathsf {AKE}}\) which exhibits this UC-security of \(\mathsf {otkAKE}\). Our simulator \(\mathsf {SIM}\) uses simulator \(\mathsf {SIM}_{\mathsf {AKE}}\) as a sub-procedure. Namely, \(\mathsf {SIM}\) hands over to \(\mathsf {SIM}_{\mathsf {AKE}}\) the simulation of all \(\mathsf {C}\)-side and \(\mathsf {S}\)-side AKE instances where parties run on either honestly generated or adversarial AKE keys. \(\mathsf {SIM}\) employs \(\mathsf {SIM}_{\mathsf {AKE}}\) to generate such keys - in \(\mathsf {H}\) queries, password file compromise and in \(\mathsf {IC}\) decryption queries - see Fig. 12, and then it hands off to \(\mathsf {SIM}_{\mathsf {AKE}}\) the handling of all AKE instances that run on such keys, see Fig. 13.
Rights and permissions
Copyright information
© 2022 International Association for Cryptologic Research
About this paper
Cite this paper
Dos Santos, B.F., Gu, Y., Jarecki, S., Krawczyk, H. (2022). Asymmetric PAKE with Low Computation and communication. In: Dunkelman, O., Dziembowski, S. (eds) Advances in Cryptology – EUROCRYPT 2022. EUROCRYPT 2022. Lecture Notes in Computer Science, vol 13276. Springer, Cham. https://doi.org/10.1007/978-3-031-07085-3_5
Download citation
DOI: https://doi.org/10.1007/978-3-031-07085-3_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-07084-6
Online ISBN: 978-3-031-07085-3
eBook Packages: Computer ScienceComputer Science (R0)