Paper 2006/276

Mitigating Dictionary Attacks on Password-Protected Local Storage

Ran Canetti, Shai Halevi, and Michael Steiner

Abstract

We address the issue of encrypting data in local storage using a key that is derived from the user's password. The typical solution in use today is to derive the key from the password using a cryptographic hash function. This solution provides relatively weak protection, since an attacker that gets hold of the encrypted data can mount an off-line dictionary attack on the user's password, thereby recovering the key and decrypting the stored data. We propose an approach for limiting off-line dictionary attacks in this setting without relying on secret storage or secure hardware. In our proposal, the process of deriving a key from the password requires the user to solve a puzzle that is presumed to be solvable only by humans (e.g, a CAPTCHA). We describe a simple protocol using this approach: many different puzzles are stored on the disk, the user's password is used to specify which of them need to be solved, and the encryption key is derived from the password and the solutions of the specified puzzles. Completely specifying and analyzing this simple protocol, however, raises a host of modeling and technical issues, such as new properties of human-solvable puzzles and some seemingly hard combinatorial problems. Here we analyze this protocol in some interesting special cases.

Metadata
Available format(s)
PDF PS
Category
Cryptographic protocols
Publication info
Published elsewhere. extended abstract appeared in Crypto 2006
Keywords
CAPTCHAsHuman-computer interactionInkblotsPasswordsPuzzlesStorage encryption
Contact author(s)
shaih @ alum mit edu
History
2006-08-17: received
Short URL
https://ia.cr/2006/276
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2006/276,
      author = {Ran Canetti and Shai Halevi and Michael Steiner},
      title = {Mitigating Dictionary Attacks on Password-Protected Local Storage},
      howpublished = {Cryptology ePrint Archive, Paper 2006/276},
      year = {2006},
      note = {\url{https://eprint.iacr.org/2006/276}},
      url = {https://eprint.iacr.org/2006/276}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.