加密算法

一、MD5

MD5是一种加密算法,在调用这个算法的时候,提供一个密码明文,调用的结果得到一个32位长度的密文。相同的字符串,如果多次调用Md5算法,结果完全一样,并且无法被逆向解密。

二、bcrypt加密算法

在项目中使用bcrypt加密算法的步骤
  • 安装: 终端运行npm i node-pre-gyp -g

  • 在项目根目录中,打开终端,运行 cnpm install bcrypt -s

  • 导入bcrypt

    const bcrypt = require('bcrypt')

  • 定义幂次

    const saltRounds = 10 //2^10

  • 调用bcrypt.hash('被加密的密码',循环的幂次,回调函数)加密

bcrypt.hash('123'.saltRounds,(err,pwsCryped) => {
    console.log(pwdCryped)//$2b$10$xFy.Cj21ZvsACgFLhWLj7OF.0gGLWze3Q2/gNsBjP/YvNid5Rs.y
})
  • 调用 bcrypt.compare('用户输入的密码','数据库中记录的密码',回调函数)对比密码是否正确:
bcrypt.compare('123','$2b$10$xFy.Cj21ZvsACgFLhWLj7OF.0gGLWze3Q2/gNsBjP/YvNid5Rs.y',(err,res)=>{
    console.log(res)//是一个布尔值
})
原文地址:https://www.cnblogs.com/jaelynl/p/10316006.html