Skip to content

Glossary

PBKDF2

PBKDF2 dérive une clé en répétant un HMAC des milliers de fois avec un sel — le KDF derrière Bitwarden, LastPass, WPA2 et bien d'autres.

PBKDF2 (Password-Based Key Derivation Function 2) transforme un mot de passe et un sel en une clé de longueur fixe en exécutant un HMAC — généralement HMAC-SHA1, HMAC-SHA256 ou HMAC-SHA512 — de façon répétée, chaque tour réinjectant son résultat dans le suivant. Le nombre d'itérations est le réglage ajustable : plus de tours signifie plus de travail par tentative, aussi bien pour une connexion légitime que pour une tentative de cassage.

Contrairement aux fonctions résistantes à la mémoire comme Argon2 ou scrypt, PBKDF2 ne nécessite presque aucune RAM, ce qui le rend nettement moins coûteux à attaquer sur GPU pour un même nombre d'itérations. Il reste pourtant massivement déployé car il est simple, normalisé (RFC 2898) et suffisamment ancien pour bénéficier d'un support matériel et logiciel partout.

PBKDF2 apparaît constamment sur ce site : les coffres Bitwarden et LastPass, le format Cloud Keychain de 1Password, les handshakes WPA2, et les types de hash dédiés pbkdf2-hmac-sha1/pbkdf2-sha256 en dérivent tous leur clé de cette façon — voir casser les coffres de gestionnaires de mots de passe pour comprendre comment le nombre d'itérations choisi par chacun détermine directement combien de tentatives par seconde un GPU peut tester.