BCrypt算法
Bcrypt是一种单向加密算法,不可反向破解生成明文密码;
BCrypt加密逻辑
Bcrypt有四个变量:
- saltRounds:一个正整数,表示hash杂凑次数,数值越高越安全,默认为10次;
- myPassword:明文密码字符串
- salt:盐,一个128bits随机字符串,即22个随机字符
- myHash:对加盐后的明文密码进行hash算法
每次明文密码传送过来后,对明文密码加盐并循环进行hash后,得到myHash,然后拼接BCrypt版本号+ salt + myHash得到最后的BCrypt密码;如下图:
