Je rage à chaque fois que je vois des règles complexes sur les mots de passe saisis. J’ai l’impression qu’on a échoué à expliquer la sécurité.
Une fois qu’on exclut les mots de passe uniquement en chiffres, il n’y a quasiment plus que la longueur du mot de passe qui compte. Vous voulez un mot de passe sûr avec uniquement des lettres ? Il suffit d’ajouter un unique caractère supplémentaire. Autant dire pas grand chose quand on est déjà à 9 ou 10.
En réalité la différence est encore plus réduite que ça parce qu’en demandant d’ajouter des chiffres et symboles ce sont toujours les mêmes qui apparaissent, mis à la fin ou en remplacement des mêmes lettres (a qui donne @ par exemple).
Pire : Pour retenir un mot de passe complexe avec majuscules, chiffres et symboles, l’utilisateur risque de mettre quelque chose de connu ou déjà utilisé ailleurs. On est parfois dans le contre-productif.
Si vous deviez utiliser des règles de saisie du mot de passe, gardez n’en qu’une : la longueur. Le reste c’est de la littérature.
Maintenant, et si vous changiez de stratégie ? Aidez l’utilisateur et expliquez-lui ce qu’il se passe au lieu de lui apporter des contraintes.
Commencez par lui proposer un mot de passe par défaut, avec une liste de mots connus et à orthographe simple.
Proposez ensuite un indicateur pour la force du mot de passe. Là vous pouvez prendre en compte la longueur mais aussi la présence dans la base Have I Been Pwnd.
Une fois passé le strict minimum, c’est à l’utilisateur de décider ce qu’il veut. Ne lui imposez pas un mot de passe de 12 caractères pour réaliser un sondage sur la date de sa prochaine soirée entre amis.
Votre rôle c’est de lui donner les clefs pour faire son choix, pas de le faire à sa place.
L’indicateur de complexité peut tout à fait avoir plusieurs paliers en fonction de la présence de différentes classes de caractères. Vous pouvez aussi essayer de détecter des dates, le fait que le dernier caractère soit juste un chiffre ou un point d’exclamation, et des suites un peu trop classiques comme 123 ou ou azerty.
Si vous détectez des espaces alors c’est probablement une phrase (s’il y a des petits mots facilement reconnaissables comme « le », « la », « il », « ce », « est », etc. ) ou des suites de mots (dans le cas contraire). Vous pouvez là aussi adapter votre calcul de complexité et la longueur recommandée.
Au bout d’une certaine résistance parlons uniquement amélioration.
Laisser un commentaire