Key Derivation
La dérivation de clés est le processus de génération de clés de chiffrement à partir de mots de passe à faible entropie ou de clés maîtresses à forte entropie, à l'aide de KDF (ex. PBKDF2, scrypt, Argon2) pour renchérir la force brute.
Objectif
Transformer les mots de passe humains (faible entropie) en clés de chiffrement suffisamment longues tout en résistant aux attaques par dictionnaire et tables arc-en-ciel.
Mécanisme
Un KDF prend un mot de passe, un sel, des paramètres d'itération/coût et une longueur de sortie, et produit une clé pseudo-aléatoire. Les itérations multiplient le coût par tentative ; le sel empêche les tables précalculées ; les KDF gourmands en mémoire (scrypt/Argon2) résistent en plus au parallélisme GPU/ASIC.
Cas d’usage
- Stockage chiffré des mots de passe utilisateur
- Dérivation de clé maîtresse pour le chiffrement de disque
- Dérivation de clés de session TLS (HKDF)
- Génération de jetons d'API
Exemples
- entrée
password + salt + 100000 itersOutput256-bit keyIterations multiply the cost
Erreurs courantes
- Hashing passwords with a raw SHA (no salt, no iterations)
- Use PBKDF2, scrypt, or Argon2
Termes associés
PBKDF2
PBKDF2 (Password-Based Key Derivation Function 2) est le KDF normalisé dans PKCS#5 qui dérive des clés de mots de passe via un HMAC itéré, largement utilisé pour le hachage de mots de passe et la dérivation de clés. GLOSSAIRE
scrypt
scrypt est une fonction de dérivation de clés (KDF) à mémoire coûteuse conçue par Colin Percival : elle résiste à la force brute parallèle sur GPU/ASIC grâce à d'importants besoins mémoire et sert au hachage de mots de passe et à la dérivation de clés. GLOSSAIRE
Salt
Un sel est une valeur aléatoire ajoutée lors du hachage de mots de passe afin que des mots de passe identiques produisent des hachés différents, ce qui neutralise les tables arc-en-ciel et la détection de mots de passe identiques. GLOSSAIRE
Hash Salting
Le salage de hachage consiste à ajouter un sel aléatoire à l'entrée du hachage afin que des entrées identiques produisent des hachés différents, vainquant les tables arc-en-ciel et la détection de collisions. GLOSSAIRE
Outils associés
Dérivation de clé PBKDF2
Derive a key from a password using PBKDF2 (RFC 2898) with Web Crypto API. Gratuit, privé et 100% côté client. OUTIL
Dérivation de clé scrypt
Derive a key from a password using scrypt (memory-hard KDF). Gratuit, privé et 100% côté client. OUTIL
Générateur de hash bcrypt
Hash passwords with bcrypt or verify bcrypt hashes. Gratuit, privé et 100% côté client. OUTIL