MD5散列函数
作者:互联网
MD5
MD5是一种散列函数,使用的是hash算法,对原始消息做有损的压缩计算,无论消息的长度字节是多少,都会生成一个固定长度的消息摘要
1.不可逆
在不知道原始数据的情况下是无法通过16个字节的摘要还原出原始的消息的
2.单向性
当知道这个原始消息的,算法位MD5,迭代次数为1时可以得到一模一样的消息摘要
3.恒定性
每个人每次计算出的消息摘要都是一样的,每次运行MD5产生的消息摘要都是恒定的
4.不可预测性
当密码中的一位数据改变后他的MD5加密后的值会很不同,比如0000经过MD5加密后为14474e4033ac29cc,当密码改为0001后经过MD5加密为6c32d477f7fa1c3e我们无法根据规律来推算加密后的值
没有加盐的MD5
现在网站的用户密码大多数要求为8~15位,这是一个有限的集合,黑客可以根据彩虹表将密码还原出来
加盐的MD5
密码+用户名(盐)作为输入参数,当然这个盐也可以是其他的,加盐以后市面上的大多数彩虹表就没用了
提高迭代次数
提高迭代次数可以抵挡彩虹表破解,但是每次进行MD5加密都需要进行计所以会消耗CPU
标签:加密,函数,摘要,密码,加盐,消息,散列,MD5 来源: https://blog.csdn.net/weixin_46014027/article/details/111476166