Breaking and fixing the Zero-knowledge password policy checks protocol by Kiefer and Manulis

Zero-knowledge password policy checks (ZKPPC) were introduced in Kiefer and Manulis’ report from 2014. The protocol aimed to solve the longstanding issue with servers requiring clients to provide their password in plain text to ensure its strength. Their protocol was intended to eliminate the need f...

Full description

Bibliographic Details
Main Author: Bäckström, Anton
Format: Others
Language:English
Published: KTH, Skolan för elektroteknik och datavetenskap (EECS) 2019
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-248431
Description
Summary:Zero-knowledge password policy checks (ZKPPC) were introduced in Kiefer and Manulis’ report from 2014. The protocol aimed to solve the longstanding issue with servers requiring clients to provide their password in plain text to ensure its strength. Their protocol was intended to eliminate the need for users to trust the server to store and handle passwords correctly while simultaneously allowing the server to know that the registered password was strong enough. This thesis has investigated the soundness of the protocol by Kiefer and Manulis and will present three new zero-day vulnerabilities discovered in the process. The vulnerabilities allow a dishonest user to prove adherence to the policy for invalid passwords. Additionally, the thesis presents our new Proof of Inequality which prevents one of these vulnerabilities, as well as an extension for an incomplete part of the protocol. The two remaining zero-day vulnerabilities are weaknesses in the protocol left for future research. === Lösenordspolicykontroller med nollkunskap (Zero-knowledge password policy checks (ZKPPC)) introducerades i Kiefer och Manulis rapport från 2014. Protokollet syftade till att lösa det sedan länge aktuella problemet med servrar som kräver att klienter visar sina lösenord i klartext för att garantera att det är starkt nog. Deras protokoll var ämnat att eliminera behovet för användarna att lita på servern att lagra och hantera lösenord på rätt sätt samtidigt som servern kan veta att det registrerade lösenordet är tillräckligt starkt. Den här avhandlingen har undersökt vettigheten hos protokollet av Kiefer och Manulis och kommer presentera tre nya nolldagssvagheter som upptäcktes under arbetet. Utöver det presenterar den här avhandlingen vårt nya Olikhetsbevis som förebygger en av de här svagheterna, så väl som en utökning av en ofullständig del av protokollet. De två resterande nolldagssvagheterna är svagheter hos protokollet som lämnas för framtida forskning.