En général, je suis fortement en faveur de ne pas restreindre les types de caractères autorisés dans les mots de passe. Cependant, rappelez-vous que vous devez comparer quelque chose à quelque chose de stocké qui peut être le mot de passe ou un hash. Dans le premier cas, vous devez vous assurer que la comparaison est faite correctement, ce qui est beaucoup plus complexe avec l'Unicode qu'avec l'ASCII seul ; dans le second cas, vous devez vous assurer que le hachage est exactement le même à chaque fois qu'il est saisi. Les formulaires de normalisation peuvent aider ici ou être une malédiction, selon la personne qui les applique.
Par exemple, dans une application sur laquelle je travaille, j'utilise un hachage sur une conversion UTF-8 du mot de passe qui a été normalisé au préalable pour éliminer les problèmes potentiels de combinaison de caractères et autres.
Le plus gros problème de l'utilisateur mai Le problème est qu'ils ne peuvent pas le saisir à certains endroits, comme sur une autre disposition de clavier. C'est déjà le cas pour l'un de mes mots de passe, mais cela n'a jamais posé de problème jusqu'à présent. Et après tout, c'est une décision que l'utilisateur doit prendre en choisissant son mot de passe et non une décision que l'application devrait prendre à sa place. Je doute qu'il y ait des utilisateurs qui utilisent volontiers un Unicode arbitraire dans leurs mots de passe sans penser aux problèmes qui peuvent survenir lorsqu'ils utilisent une autre disposition de clavier. (Cela peut être un problème pour les services basés sur le web plus qu'autre chose, cependant).
Il existe cependant des cas où Unicode est interdit à juste titre. C'est le cas de TrueCrypt, qui impose l'utilisation de la disposition du clavier américain pour les mots de passe au démarrage (pour le cryptage intégral). Il n'y a pas d'autre disposition possible et, par conséquent, l'Unicode ou toute autre disposition de clavier ne fait que créer des problèmes.
Cependant, cela n'explique pas pourquoi ils interdisent l'Unicode dans les mots de passe normaux. Un avertissement serait bienvenu, mais l'interdire purement et simplement est une erreur à mes yeux.
5 votes
Quelle est votre source pour les exigences de mot de passe de google/ms ?
2 votes
Cette question a été posée en 2011. Nous sommes en 2018 et l'API d'authentification de Google prend désormais en charge les mots de passe unicode.