crypro实现用户密码的加密
在实际的项目中,只要涉及到用户的信息,就是十分重要的.设想一下数据库里面存放的用户的密码是明文的形式,后果是有多严重.所以今天给大家分享一下express中怎样实现用户密码的加密.
一:操作步骤
1.搭建好express环境
2.下载crypto模块
命令:npm install crypto 这是在局部安装(方便项目的移植,)
命令:npm install crypto -g 全局安装(安装过一次之后,以后就可以直接使用了)
3.封装成一个js文件,方便直接调用,避免每次使用都从头开始设置
const crypto = require("crypto"); //引入自己下载好的crypto模块module.exports = { //把加密的功能封装成一个对象并且输出出去(即暴露此功能模块对象) autograph:"my name is ydb", //这里可以不要,但是现在使用的是md5加密模式,不要这里的自定义字符串,别人拿到你的加密密码,还是可以通过md5解密器进行暴力破解的,加上此字符串就不能进行暴力破解了 md5:function (pass) { const md5 = crypto.createHash("md5"); //设置加密模式为md5 md5.update(pass+this.autograph); //把传入的用户密码和自定义的字符串进行编译的到加密过后的密码 const result = md5.digest("hex"); //设置密码格式为16进制 return result;//返回后加密过后的密码 }}
4.之后需要加密操作就直接使用require引入上面写好的js文件
例如: const crypto = require("js文件路径");
const newpass = crypto.md5(oldpass)
此时newpass就是加密过后的密码