chiffrer/déchiffrer les mots de passe avec node.js
Je travaille avec le bcrypt
module nodejs.
Je suis satisfait de chiffrer et de comparer les mots de passe, mais il semble impossible à décrypter.
Je me demande:
- Comment crypter/décrypter les mots de passe avec nodejs (qui module ou de la méthode utilisez-vous) ?
- Est-il un truc pour déchiffrer les mots de passe codés avec le
bcrypt
module ?
Merci !
OriginalL'auteur Ludo | 2013-02-14
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas de déchiffrer les mots de passe avec bcrypt -- c'est un algorithme. Ce que vous faire est de stocker la valeur de hachage de l'original (salé) mot de passe. Ensuite, vous hachage (salé) suppose. Si les hachages de match, alors la conjecture est correcte.
Par exemple, vous pourriez faire ceci:
Notez que je n'ai pas salé cela, vous aurez besoin de le faire.node-bcrypt
sels de la table de hachage par défaut.Avez-vous besoin de connaître leur mot de passe ou vous avez juste besoin de savoir leur nom et qu'ils pourraient avec succès connecté? C'est ce que axternal login Api comme Facebook connect fournir, l'authentification est effectuée sur facebook.com, pas sur votre domaine et facebook redirige l'utilisateur vers appopriate chemin d'accès spécifié avec son hachage et puis vous savez que l'utilisateur est authentifié.
J'ai besoin d'un mot de passe, je générer automatiquement sur le serveur lors de l'facebook inscription pour l'afficher sur la page d'administration de l'utilisateur.
Vous ne devriez pas afficher un mot de passe à l'utilisateur. Ils doivent savoir que leur mot de passe, et dans le cas où ils l'oublient, offre un mécanisme pour en créer un nouveau (peut-être en envoyant un lien pour réinitialiser à leur adresse e-mail enregistrée). Ouvertement l'affichage d'un mot de passe des utilisateurs est une idée horrible (n'en déplaise). Imaginez une situation où quelqu'un détourne d'une session. Si détournés mot de passe des utilisateurs est affiché pour le pirate, le pirate de l'air a maintenant le mot de passe réel, et pas seulement accès à la session. Pour cette même raison, vous devez exiger un mot de passe sur les changements à l'information sensible.
Si vous auto-générer, par e-mail une FOIS ou l'afficher une FOIS lors de l'inscription. Après cela, vous ne devriez jamais avoir besoin de montrer ouvertement leur mot de passe.
OriginalL'auteur Roger Lipscombe
Bien meilleure façon de le faire est d'utiliser ce nœud module https://github.com/davidwood/node-password-hash capable de crypter votre mot de passe et aussi de permettre à veify version cryptée avec le réel.
OriginalL'auteur khurrum qureshi