Hash函数的性质 。Hash与加密的对比 Hello,world. NhbXBsZSBzZW50ZW5jZS A sample sentence to E B0byBzaG93IEVuY3J5cHR show encryption. pb24KsZSBzZ Hello,world. NhbXBsZSBzZW50ZW5jZS A sample sentence to B0byBzaG93IEVuY3J5cHR show encryption. pb24KsZSBzZ 加密是双向的,需要使用密钥 This is a clear text that can easily read without using 52f21cf7c7034a20 the key.The sentence is 17a21e17e061a863 longer than the text above. Hash是单向的,没有解hash
Hash函数的性质 Hash与加密的对比 Hello, world. A sample sentence to show encryption. E NhbXBsZSBzZW50ZW5jZS B0byBzaG93IEVuY3J5cHR pb24KsZSBzZ k Hello, world. A sample sentence to show encryption. D NhbXBsZSBzZW50ZW5jZS B0byBzaG93IEVuY3J5cHR pb24KsZSBzZ k 加密是双向的,需要使用密钥 h 52f21cf7c7034a20 17a21e17e061a863 This is a clear text that can easily read without using the key. The sentence is longer than the text above. • Hash是单向的,没有解hash
迭代型Hash函数的一般结构 。1979年,Merklez基于压缩函数f提出了一个Hash函数的一般结构。 ■函数的输入m被分为L个分组m,m1,,mL-1,每个分组的长度为 b比特。 ■如果最后一个分组的长度不够的话,需对其进行填充,最后一个 分组还包括消息m的长度值。 110 1m1 1mL-1 CV。=IW CV=CV-1,m-1),1≤iL h(m)=CVL
迭代型Hash函数的一般结构 1979年,Merkle基于压缩函数f提出了一个Hash函数的一般结构。 函数的输入m被分为L个分组m0 , m1 , …, mL-1,每个分组的长度为 b比特。 如果最后一个分组的长度不够的话,需对其进行填充,最后一个 分组还包括消息m的长度值。 CV0 =IV CVi =f(CVi-1 , mi-1 ), 1≤i≤L h(m)=CVL
迭代型Hash函数的一般结构 ·压缩函数f ■函数的输入:上一轮(第i1轮)输出的n比特值CV1一链接变量, 和在本轮(第轮)要输入的b比特消息分组。 ■函数的输出:为n比特值CV,CV又将作为下一轮的输入。 ■算法开始时还需要对链接变量指定一个比特长的初始值IV,最 后一轮输出的链接变量CV,就是最终产生的Hash值
迭代型Hash函数的一般结构 压缩函数f 函数的输入:上一轮(第i-1轮)输出的n比特值CVi-1——链接变量, 和在本轮(第i轮)要输入的b比特消息分组。 函数的输出:为n比特值CVi,CVi又将作为下一轮的输入。 算法开始时还需要对链接变量指定一个n比特长的初始值IV,最 后一轮输出的链接变量CVL就是最终产生的Hash值
例 9 5.2Hash函数MD5
5.2 Hash函数MD5
Hash函数MD5 网 9 算法描述 MD5压缩函数
MD5压缩函数 Hash函数MD5 算法描述