eggjs密码加密
策略
-
前端先用md5加密一遍,然后传到后端
-
后端再用哈希函数再加密一遍,放到数据库
-
其实现在都是手机号验证码登录,大家都不记密码了。。。
前端加密
-
安装crypto-js
cnpm install -S crypto-js
后端加密
-
安装
egg-bcrypt加密插件cnpm install -S egg-bcrypt -
打开
config/plugin.js,找到如下内容module.exports = { //里面添加下面四行 bcrypt : { enable: true, package: 'egg-bcrypt', } } -
在
config/config.default.js中,指定saltRoundsexports.bcrypt = { saltRounds: 10 }- 默认就是10
-
在service中使用
- 加密
const 哈希加密后的密码 = await this.ctx.genHash(密码) - 验证
const 结果 = await this.ctx.compare(密码, 哈希加密后的密码)
- 加密