加密算法
Posted jaelynl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了加密算法相关的知识,希望对你有一定的参考价值。
一、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)//是一个布尔值
})
以上是关于加密算法的主要内容,如果未能解决你的问题,请参考以下文章
有人可以解释啥是 SVN 平分算法吗?理论上和通过代码片段[重复]
片段(Java) | 机试题+算法思路+考点+代码解析 2023
Express实战 - 应用案例- realworld-API - 路由设计 - mongoose - 数据验证 - 密码加密 - 登录接口 - 身份认证 - token - 增删改查API(代码片段