Ⅰ md5 为什么 加盐

原因:盐被称作“Salt值”,这个值是由系统随机生成的,并且只有系统知道。即便两个用回户使用了同一个密码答,由于系统为它们生成的salt值不同,散列值也是不同的。

MD5算法的原理可简要的叙述为:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

(1)加密摘要盐扩展阅读:

MD5相对MD4所作的改进:

1、增加了第四轮。

2、每一步均有唯一的加法常数。

3、减弱第二轮中函数的对称性。

4、第一步加上了上一步的结果,这将引起更快的雪崩效应(就是对明文或者密钥改变 1bit 都会引起密文的巨大不同)。

5、改变了第二轮和第三轮中访问消息子分组的次序,使其更不相似。

6、近似优化了每一轮中的循环左移位移量以实现更快的雪崩效应,各轮的位移量互不相同。

Ⅱ 什么是md5盐值

简单说就是为了使相同的密码拥有不同的hash值的一种手段 就是盐化,盐值就是在密码hash过程中添加的额外的随机值。

md5是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。

(2)加密摘要盐扩展阅读

MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。比如,在Unix下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如:

MD5 (tanajiya.tar.gz) =

这就是tanajiya.tar.gz文件的数字签名。MD5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的MD5信息摘要。为了让读者朋友对MD5的应用有个直观的认识,笔者以一个比方和一个实例来简要描述一下其工作过程:

地球上任何人都有自己独一无二的指纹,这常常成为司法机关鉴别罪犯身份最值得信赖的方法;与之类似,MD5就可以为任何文件(不管其大小、格式、数量)产生一个同样独一无二的“数字指纹”,如果任何人对文件做了任何改动,其MD5值也就是对应的“数字指纹”都会发生变化。

参考资料来源:网络-MD5