部分参考来自:https://blog.csdn.net/nicexibeidage/article/details/79862618
VUE做法:
安装: npm install bcryptjs.
引入import bcrypt from ‘bcryptjs’
var salt = bcrypt.genSaltSync(12); //定义密码加密的计算强度,默认10
var hash = bcrypt.hashSync(明文密码, salt); //变量hash就是加密后的密码
F12看到的样子~~
node做法
安装: npm install bcryptjs.
引入 const bcrypt= require(‘bcryptjs’)
let pass = bcrypt.compareSync(库里的明文密码, 传入的密码)
//true 就是解密正确,
特做补充:
-
密码强度一般在10-12。默认是10,太强会导致速度变慢。
const pass = require('bcryptjs).hashSync(val,12)
-
compareSync可运用于:验证密码
参数一必须是明文密码,参数二是已经加密过的数据里的密码
-
可在node中使用,都是js,代码不变。
-
它是不可逆的。是现在比较流行的方案
-
安全性比MD5好。同个字符串加密后的值是不一样的
坑:
- 不要散列(加密)两次
第一次密码为123,散列成$2a$10$m1E8SorTJkfUqIjCoHi
。再次散列的话,密码就是这个…了。