Je me demande depuis un moment, pourquoi est-ce que l'exécution de "echo 'helloworld' | openssl passwd -1 -stdin" donne des résultats différents à chaque fois? Si je mets des hachages dans mon / etc / shadow, je peux les utiliser comme mon mot de passe et connexion à mon système, comment ça marche?
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$xlm86SKN$vzF1zs3vfjC9zRVI15zFl1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$/0.20NIp$pd4X9xTZ6sF8ExEGqAXb9/
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$sZ65uxPA$pENwlL.5a.RNVZITN/zNJ1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$zBFQ0d3Z$SibkYmuJvbmm8O8cNeGMx1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$PfDyDWER$tWaoTYym8zy38P2ElwoBe/
Je pense que parce que j'utilise ce hachage pour décrire au système quel doit être mon mot de passe, je dois obtenir les mêmes résultats à chaque fois. Pourquoi pas moi?
Réponses:
Ils ont tous un sel différent . Un sel unique est choisi à chaque fois, car les sels ne doivent jamais être réutilisés. L'utilisation d'un sel unique pour chaque mot de passe les rend résistants aux attaques de la table arc-en-ciel .
la source
En effet, si vous fournissez le sel à la ligne de commande, vous obtenez toujours le même résultat.
la source