前端使用bcryptjs加密密码

1.使用bcryptjs库将密码进行哈希加密,安装bcryptjs库(哈希加密是单向的,不可逆)

npm install bcryptjs
# 或者
yarn add bcryptjs
2.引入bcryptjs
import bcrypt from "bcryptjs";

3.使用compare方法对比加密的密码和未加密的是否相同

const hashedPassword = "$2a$10$1QIPcVZ/K7yuIDFr5ewsG.vwH6shTLnP/FfLE1AeQ9NEurKYHTAMa";
const userProvidedPassword = "你的输入值";
​
bcrypt.compare(userProvidedPassword, hashedPassword, function(err, result) {
    if (result) {
        console.log("密码匹配");
    } else {
        console.log("密码不匹配");
    }
});

4.使用hashSync方法进行哈希加密

const newPassword = "222";
const saltRounds = 10; // 你可以根据需要调整工作因子的值
​
const hashedPassword = bcrypt.hashSync(newPassword, saltRounds);

saltRounds表示工作因子的值,它影响哈希的计算强度。通常,10是一个合理的默认值,但你可以根据你的需求选择不同的值。hashedPassword 现在包含了加密后的密码,你可以将其用于保存或传递给后端存储。

💥💥请注意   

        一旦密码被哈希,通常是不可逆的,因此无法从哈希值中还原原始密码。在验证用户输入的密码时,你应该使用相同的哈希算法对用户提供的密码进行哈希,然后将哈希后的值与之前存储的哈希值进行比较。

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值