Lỗi giải mã hóa mật khẩu bằng bcrypt



  • Chào anh chị!
    Em có sử dụng bcrypt để mã hóa mật khẩu trong node js nhưng khi compare nó toàn báo false. Giúp em với!
    Hàm hash và compare:

    0_1506134164342_image.png

    Goi hàm compare:
    0_1506134264757_image.png



  • Theo mình nghĩ, bị bất đồng bộ, khi nó chưa giải mã xong, đã chạy tới phần kiểm tra status rồi
    Bạn thử code mình

    bcrypt.compare(password, userInfo.password, function (err, resultPassword) {
                    if (err)
                        return done(err);
                    if (resultPassword === false)
                        return done(null, false, { message: 'Wrong password !!!' });
                    if (userInfo.status === false)
                        return done(null, false, { message: 'Your User has been locked' });
                    return done(null, userInfo);
                });

  • Global Moderator

    @CayBap Bạn kiểm tra lại đoạn mã tạo hash, có cùng saltRound ko ?

    var salt = bcrypt.genSaltSync(saltRounds);
    var hash = bcrypt.hashSync(myPlaintextPassword, salt);
    // Store hash in your password DB.
    

    Tech-nông
    Twitter: @nhubaovu
    Profile: about.me/vunb

    0


  • Em cảm ơn! Do trong trường password em để thiếu kí tự nên khi đẩy vào pị hụt, khi em truy xuất lại nó vì sai.


Log in to reply