MD5加密
程序员文章站
2022-07-16 15:40:00
...
MD5
MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。
加盐
盐被称作“Salt值”,这个值是由系统随机生成的,并且只有系统知道。即便两个用户使用了同一个密码,由于系统为它们生成的salt值不同,散列值也是不同的。
在koa2项目开发中,用户的密码需要进行加密处理,并加盐。
如何实现盐值的随机呢?
Uuid
UUID是国际标准化组织(ISO)提出的一个概念。
UUID是一个128比特的数值,这个数值可以通过一定的算法计算出来。
为了提高效率,常用的UUID可缩短至16位。
UUID用来识别属性类型,在所有空间和时间上被视为唯一的标识。
使用:npm install node-uuid
//生成uuid的方法
function generateId() {
return uuid.v4;
}
为每个用户生成一个uuid,将uuid作为盐值对用户密码进行加密
npm install md5
封装md5
使用封装函数进行加密:
加密完成以后将盐值和加密以后的密码同时存入数据库中,以便进行验证:
参考:老师的课件