Passwords are ubiquitous and most commonly used to authenticate users when logging into online services. Using high entropy passwords is critical to prevent unauthorized access and password policies emerged to enforce this requirement on passwords. However, with current methods of password storage, poor practices and server breaches have leaked many passwords to the public. To protect one's sensitive information in case of such events, passwords should be hidden from servers. Verifier-based password authenticated key exchange, proposed by Bellovin and Merrit (IEEE S\&P, 1992), allows authenticated secure channels to be established with a hash of a password (verifier). Unfortunately, this restricts password policies as passwords cannot be checked from their verifier. To address this issue, Kiefer and Manulis (ESORICS 2014) proposed zero-knowledge password policy check (ZKPPC). A ZKPPC protocol allows users to prove in zero knowledge that a hash of the user's password satisfies the password policy required by the server. Unfortunately, their proposal is not quantum resistant with the use of discrete logarithm-based cryptographic tools and there are currently no other viable alternatives. In this work, we construct the first post-quantum ZKPPC using lattice-based tools. To this end, we introduce a new randomised password hashing scheme for ASCII-based passwords and design an accompanying zero-knowledge protocol for policy compliance. Interestingly, our proposal does not follow the framework established by Kiefer and Manulis and offers an alternate construction without homomorphic commitments. Although our protocol is not ready to be used in practice, we think it is an important first step towards a quantum-resistant privacy-preserving password-based authentication and key exchange system.
翻译:在登录在线服务时,密码是无处不在的,而且最常用的密码是用来验证用户的。使用高级加密密码对于防止未经授权的访问至关重要,而且为了执行密码方面的这一要求而出现密码政策。然而,由于目前的密码存储方法、不良做法和服务器违规现象,许多密码已经向公众泄露。为了在这类事件发生时保护一个人的敏感信息,密码应该隐藏在服务器上。由Bellovin和Merrit(IEEEEE S ⁇ P,1992年)提议的基于验证的密码验证密钥交换,允许用一个口令(vergier)建立经认证的安全渠道。不幸的是,这限制了密码政策,因为密码无法从校验者那里检查。为了解决这个问题,Kiefer和Manulis(ESORICS,2014年)提议对密码政策进行零知识化检查。ZKPPC协议允许用户在零知识中证明,用户的密码已经满足了服务器所要求的密码政策。不幸的是,他们的建议不是用离散的对口对口对口码码(Ver)的密码(Verental-alputimational) pral pril prill prill KP) ad 策略框架可以用来为我们的第一个不使用一个新的定义工具。