web-dev-qa-db-ja.com

nodejs - Bcryptの2つのハッシュパスワードを比較する方法

こんにちは私は解決策を検索した後、この問題に関していくつかの助けが必要です、そしてまだ見つけられなかった、

2つのハッシュパスワードを比較したいのと同じパスワードのBcrypt、どうすればいいですか。

例えば:

Bcryptの同じパスワードから来た2つのハッシュパスワードがあります。

var password = E@Js#07Do=U$
var hash1 = $2a$10$fKAyjaG0pCkisZfRpKsBxursD6QigXQpm1TaPBDZ4KhIZRguYPKHe
var hash2 = $2a$10$mgApOcRIp7RSK3lRIIlQ5e/GjVFbxAFytGAEc0Bo17..r8v2pPR22
// that's not working for me
bcrypt.compare(passwordHash, userPasswordLoginHash, function(err, isMatch) {
   if (err) throw err;
   if(isMatch){
      console.log('correct password!')
   }
   callback(null, isMatch);
});
 _

bcryptjs NPMパッケージを使用して、それらを比較するにはどうすれば、それらが同じパスワードから来たと判断できますか?

4
hadar

「Bcrypt libを使って、プレーンテキストのパスワードを同じlibを使ってハッシュされたものと比較します。」

問題はマイクロサービスアーキテクチャであり、それは非常に安全ではありません。フロントエンドがバックエンドに隠されていないパスワードを渡している場合は、システムバックエンドのDBのハッシュに対して比較される前に、隠されていないパスワードが(おそらく複数の場所で)ログインしています。

1
TLL