Question Les espaces sont-ils des composants valables d'un mot de passe? [fermé]


L'espace est-il un composant valide d'un mot de passe ou non? J'essaie de sauvegarder les 10 derniers mots de passe dans un chaîne dans la base de données et doivent trouver un bon délimiteur pour eux. Je pense que l'espace est peut-être un bon candidat. Qu'est-ce que tu penses?


4
2018-02-22 13:23


origine


Comme @Bart dit - HASH le mot de passe. Lisez ceci pour aider à expliquer pourquoi: security.blogoverflow.com/2011/11/... - Rory Alsop


Réponses:


Cela dépend de votre politique de mot de passe. Je connais pas mal de sites / systèmes où l’espace est un caractère valide pour un mot de passe. Pour être du bon côté, vous pouvez vérifier les espaces dans le mot de passe et échapper à ceux-ci.

Oh, et comme une courte mise à jour: Essayez de réparer la conception de la base de données. Comme vous avez une relation 1: n, vous devez enregistrer chaque mot de passe séparément et connecter chaque entrée à l'utilisateur concerné.


6
2018-02-22 13:25





Les espaces sont normalement valables. Je me méfierais de tout délimiteur, car c'est une forme de sécurité à travers l'obscurité que quelqu'un ne le craquera pas ou ne le trouvera pas accidentellement par la suite et vous devrez trouver le bogue.

J'utiliserais une entrée séparée pour chacun.

Vous ne mentionnez pas ce qu'est une application ... si vous faites l’application, vous pourriez essayer de faire quelque chose pour appliquer votre propre politique qui effacerait et stériliserait l’entrée, ou vous devriez hacher plus judicieusement le mot de passe (vous avez généralement ne voulez pas que les mots de passe réels soient enregistrés) et le hash n’aurait pas le mot de passe. Ensuite, je suppose que vous pouvez utiliser n'importe quel délimiteur que vous voulez tant qu'il ne fait pas partie de l'espace de noms de hachage des caractères.


5
2018-02-22 13:48



+2 pour le hachage. Le hachage avec encodage hexadécimal a pour avantage que vous n'obtiendrez que 0123456789ABCDEF, et que vous pouvez utiliser tout ce qui ne les délimite pas. (Et a l'avantage de sécurité supplémentaire qu'il est plus difficile de récupérer un mot de passe à partir de votre base de données volée) - Jason
L'idée de hachage est bonne SI le mot de passe ne doit pas être stocké en texte clair. Bien que je suppose également que cela signifie un mot de passe récent, «étudiant» n’a pas mentionné le but réel du stockage des mots de passe. - DaDaDom
@DaDaDom: Même si l'histoire récente des mots de passe, vous venez de prendre leur mot de passe entré, hash it, comparer à ce qui est dans l'histoire des hachages ... si les hachages correspondent, il a été récemment utilisé. Les mots de passe en texte clair sont généralement une mauvaise idée. - Bart Silverstrim
J'utilise souvent des phrases de 2 à 4 mots, avec des espaces, comme phrase secrète - en particulier parce que l'espace est un caractère de mot de passe peu commun, ce qui le rend moins susceptible d'être fissuré (il est aussi rapide à taper qu'une phrase normale) ). Je suis toujours agacé quand je trouve le service rare qui ne me permet pas d'utiliser des espaces. Les hachages seraient bien ... ou si vous voulez vraiment stocker du texte en clair, échappez simplement au délimiteur dans les chaînes de mot de passe. - Josh
NE PAS CONSERVER DE MOTS DE PASSE INUTILISES DANS VOTRE BASE DE DONNEES. - Ken Liu


Vous ne pouvez pas compter sur l'espace, car il s'agit d'un mot de passe valide sur la plupart des systèmes, surtout maintenant que les mots de passe sont les nouveaux mots de passe.

Selon ce que vous faites / comment vous le faites, vous pouvez utiliser un caractère ASCII 0x00, un autre caractère que l'on ne trouve généralement pas sur un clavier ou unicode?

Personnellement, je ne tenterais pas de les concaténer en une seule chaîne, je stockerais probablement une entrée pour chaque mot de passe.


1
2018-02-22 13:32