C'est quoi un KDF, exactement ?
Un KDF (Key Derivation Function)transforme un mot de passe humain / court, mémorisable, potentiellement faible / en une clé cryptographique forte. C'est la fonction qui se place entre “l'utilisateur tape son mot de passe maître” et “les données sont déchiffrées”.
Un bon KDF doit rendre la force brute coûteuse : si deviner un mot de passe nécessite 100ms sur votre machine, un attaquant avec 1000 GPU ne peut tester que ~600 000 mots de passe par seconde. Si votre mot de passe a 8 caractères alphanumériques, c'est 3 jours de calcul maximum. Avec 12 caractères, c'est des millions d'années.
La différence entre les KDF modernes se joue sur une question : un attaquant peut-il paralléliser massivement cette opération sur GPU ou ASIC ?
Le problème des GPU : pourquoi bcrypt et PBKDF2 sont dépassés
Un GPU moderne contient des milliers de cœurs parallèles. Pour des fonctions qui ne consomment que du CPU et de la bande passante mémoire classique, un attaquant peut lancer des milliers de tentatives simultanées.
Comparaison de la résistance aux attaques GPU :
* Approximations sur RTX 4090 avec hashcat. Les valeurs varient selon la config exacte.
PBKDF2 permet 1,5 million de tentatives par seconde sur un GPU grand public. Argon2id, grâce à sa contrainte mémoire, n'en permet que 50. Un facteur 30 000.
Comparatif détaillé
Acceptable pour les anciens systèmes. Ne pas utiliser pour du nouveau code.
Standardisé NIST/FIPS. Utilisé partout malgré sa faiblesse. À éviter si possible.
Bien mais paramétrage complexe et implémentations parfois incorrectes.
Gagnant du Password Hashing Competition (PHC). Standard de fait en 2026.
Argon2id : comment ça marche ?
Argon2id est le lauréat du Password Hashing Competition (PHC), un concours académique organisé en 2015 sur le modèle du concours AES du NIST. Il combine les deux variantes Argon2i et Argon2d :
- Argon2dRésistant aux attaques GPU et ASIC grâce aux accès mémoire dépendants des données. Vulnérable aux attaques side-channel.
- Argon2iAccès mémoire indépendants des données (protection side-channel). Légèrement moins résistant aux GPU.
- Argon2idHybride : première moitié Argon2i (protection side-channel), deuxième moitié Argon2d (résistance GPU/ASIC). Le meilleur des deux mondes.
Les trois paramètres clés à configurer :
Pourquoi PBKDF2 est encore partout malgré ses faiblesses
PBKDF2 a été standardisé par le NIST (SP 800-132) et approuvé FIPS. Dans des environnements très réglementés / administration, défense, compliance financière / la certification FIPS est souvent une obligation contractuelle, pas un choix technique.
C'est pour ça que 1Password, Bitwarden et la plupart des gestionnaires cloud utilisent PBKDF2 (avec 600 000+ itérations). Ce n'est pas de l'incompétence / c'est une contrainte de conformité.
Kyber n'a pas ces contraintes. On peut choisir l'algorithme le plus sûr sans avoir à cocher des cases de compliance gouvernementale. Le choix d'Argon2id était donc évident.
L'interaction avec les algorithmes post-quantiques
Un point souvent ignoré : Argon2id et Kyber1024 sont complémentaires, pas redondants.
Argon2id protège contre la force brute sur le mot de passe maître humain. Kyber1024 protège le chiffrement du coffre lui-mêmecontre les ordinateurs quantiques. L'un s'attaque au problème de l'entropie humaine faible ; l'autre à la menace quantique future.
Sans Argon2id, même avec Kyber1024, un attaquant pourrait forcer le mot de passe maître sur GPU. Sans Kyber1024, même avec Argon2id parfait, un ordinateur quantique pourrait casser le chiffrement du coffre directement. Les deux couches sont nécessaires.
Recommandation finale
Pour tout nouveau système en 2026, utilisez Argon2id avec au minimum :
t_cost = 3 # 3 itérations
p_cost = 1 # 1 thread
C'est exactement les paramètres utilisés dans Kyber. Ces valeurs suivent les recommandations OWASP 2026 (section “Password Storage Cheat Sheet”).