微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在节点 js 中使用 bcrypt 加密密码?

如何解决如何在节点 js 中使用 bcrypt 加密密码?

早上好 我在节点 js 中使用 bcrypt 加密密码有问题 我的比较变量返回 false 我的代码在我的数据库中插入我的密码(法语中的 motDePasse)

// con.escapeId(sorter);
  //ICI CRYPTAGE DE motDePasse bcrypt 
  motDePasse =  bcrypt.hashSync(motDePasse,10);
  //var sql = "INSERT INTO `users` (`id`,`first_name`,`last_name`,`telephone`,`user_name`,`password`,`adresseMail`,`rue`,`codePostal`,`ville`,`confirmation`) VALUES (NULL,'"+con.escapeId(nom)+"','"+con.escapeId(prenom)+"','"+con.escapeId(telephone)+"','"+con.escapeId(pseudo)+"','"+con.escapeId(motDePasse)+"','"+con.escapeId(adresseMail)+"','"+con.escapeId(rue)+"','"+con.escapeId(codePostal)+"','"+con.escapeId(ville)+"','"+confirmation+"')";
    var sql = "INSERT INTO `users` (`id`,'"+nom+"','"+prenom+"','"+telephone+"','"+pseudo+"','"+motDePasse+"','"+adresseMail+"','"+rue+"','"+codePostal+"','"+ville+"','"+confirmation+"')";

  con.query(sql,function (err,result) {
    if (err) throw err;
    console.log("1 record inserted");

和我选择密码的代码

con.query("SELECT * FROM `users` WHERE `user_name`='"+login+"'",result) {
    //con.query("SELECT * FROM `users` WHERE `user_name`='"+login+"' and password = '"+password+"'",result) {  
    if (err) throw err;
    
    const comparison =  bcrypt.compareSync(password,result[0].password);
    console.log("comparison:"+comparison);

const 比较返回 false 我不明白为什么 谢谢你的帮助 :) 我已经听从了你的好建议 这是我的新代码

/ICI CRYPTAGE DE motDePasse bcrypt 
   bcrypt.genSalt(10,function(err,salt) {//---
           bcrypt.hash(motDePasse,salt,hash) {
           console.log("hash:"+hash);
           
           
  
  
    var sql = "INSERT INTO `users` (`id`,'"+hash+"','"+confirmation+"')";

con.query("SELECT * FROM `users` WHERE `user_name`= ?",[login],result) {  
    if (err) throw err;
    console.log("password:"+password);
    bcrypt.compare(password,result[0].password,result) {
            console.log("result:"+result);
           });
当我直接在我的代码中通过我的哈希时它正在工作 结果为真 问题来自MysqL 感谢您的帮助 问题来自

let motDePasse=req.body.motDePasse.replace(/<[^>]+>/g,'');

删除它,一切都很好,感谢您的帮助:)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。