Spring Boot : écrire le serveur (école d'ingénieur) · Chapitre 8 · Application directe du cours
Le coût d'une empreinte
Sécuriser l'application · niveau 2
Énoncé
Une vérification BCrypt de coût 10 a pris 80 ms sur la machine de la démonstration. Un attaquant a volé la table des utilisateurs et veut essayer un dictionnaire de 100 millions de mots de passe sur l'empreinte de l'administrateur. Combien de temps lui faut-il sur un seul cœur ? Et si les mots de passe avaient été hachés par une fonction rapide, à 10 millions d'essais par seconde ? Que change le sel ?
Corrigé
, soit environ 92 jours de calcul pour un seul cœur, et pour une seule empreinte. Avec une fonction rapide à essais par seconde : 10 secondes. La lenteur voulue de BCrypt multiplie le travail de l'attaquant par près d'un million. Le sel empêche, lui, de mutualiser ce travail : sans sel, on calculerait une fois l'empreinte de chaque mot du dictionnaire et on la comparerait à toutes les empreintes volées (ou à des tables précalculées) ; avec un sel par compte, tout est à refaire pour chaque compte. Un mot de passe absent du dictionnaire, long et aléatoire, reste la meilleure défense.
100 % gratuit
La suite du chapitre est sur Adloun
- 9 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.