Not-a-Hub
Not-a-Hub copied to clipboard
Le mythe des classes de caractères dans les mots de passe
Sujet de l'article
Hello,
J'aimerais proposer d'écrire un petit article pour debunk à l'aide des mathématiques combinatoire le mythe comme quoi imposer des classes de caractères dans un mot de passe renforcerait sa sécurité.
Le postulat serait simple, dans un mot de passe de minimum 8 caractères, si on demande d'avoir au minimum une majuscule, alors on sait que pour au moins un des caractères du mdp il n'y aura que 26 choix possible: une lettre majuscule. On répèterait la même chose pour une lettre minuscule, un chiffre et un caractère spécial et on ferait le calcul du nombre de combinaisons possible.
Ensuite on répèterait la même chose mais en imposant que des lettres minuscule, on calculerait les combinaisons possibles et on verrait à partir de quel longueur on atteint la sécurité du 1e mot de passe. (spoiler: 10 lettres).
On ferait ensuite le calcul mais en n'imposant plus aucune règle, càd qu'on laisserait l'utilisateur utiliser les caractères qu'il veut (limité au même alphabet) et on regarderait quand est-ce qu'on atteint le même niveau de sécurité (spoiler: 7 caractères).
Il y aurait ensuite une section pour présenter d'autres désavantages des classes de caractère. comme par exemple ceux qui utilisent des password-manager et qui vont générer des mots de passe de 20 caractères complètement aléatoires. Il n'y a pas de garanti qu'il y aura chacune des classe de caractère présente et pourtant il s'agit ici d'un mot de passe beaucoup plus sécurisé.
La conclusion serait d'inviter le monde à changer sa politique par défaut d'un minimum de 8 caractères avec des classes imposés à un minimum de 10 caractères sans classes imposés. La sécurité pour ceux qui n'utilisent que des lettres minuscule serait assuré par les 2 caractères en plus et la sécurité pour tous les autres utilisateurs plus sérieux serait augmenté.
En terme de post-conclusion, un rappel qu'un mot de passe seul n'est pas suffisant, qu'il faut aussi TLS, un hash lent et un salt avec une explication ne sont pas abordés dans le présent article et en donnant des liens vers des ressources externes. On pourrait aussi penser rédiger qqch en français à ces sujets là et également le publier sur le blog.