这次给大家带来如何操作nodejs对密码进行加密,操作nodejs对密码进行加密的注意事项有哪些,下面就是实战案例,一起来看一下。
一、关于node加密模块crypto的介绍
其实就是使用MD5加密的,不太安全,在实际开发中根据自己的方案进行加盐处理
二、在路由视图中使用加密方式
1、导入node自带的加密模块(不需要安装)
//导入加密模块
const crypto = require("crypto");2、做一个用户注册,密码加密的视图
用户注册
router.post("/regest",(req,res)=>{
console.log(req.body);
let name = req.body.username;
let password = req.body.password;
let md5 = crypto.createHash("md5");
let newPas = md5.update(password).digest("hex");
db("insert into user1(name,password) values(?,?)",[name,newPas],(err,data)=>{
if (err){
res.send("注册失败");
}
console.log(data);
if (data){
res.send("注册成功");
}
})
});三、用户登录进行密码校验
1、把用户输入的密码用同样的方式加密处理
2、把加密后的密码与数据库中匹配
router.post("/login",(req,res)=>{
let name = req.body.username;
let password = req.body.password;
let md5 = crypto.createHash("md5");
let newPas = md5.update(password).digest("hex");
db("select * from user1 where name = ?",[name],(err,data)=>{
console.log(data[0].password);
if (err){
res.send("发生错误");
}
if (data){
if (data[0].password === newPas){
res.send("登录成功");
}else {
res.send("用户名或密码错误");
}
}
})
})
用户登录
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:










