位置:51电子网 » 技术资料 » 模拟技术

报文摘要算法就是一种散列函数

发布时间:2014/10/4 16:26:39 访问次数:666

   报文摘要算法就是一种散列函数。这种散LM1877M-9列函数也叫做密码编码的检验和,因为它的性质和前面我们多次提到的检验和十分相似。我们知道,检验和是用来防止通信时偶然出现的差错,但报文摘要算法却是防止报文被人恶意篡改。

   报文摘要算法是精心选择的一种单向(olle-wa。y)函数。我们知道,检验和算法也是单向的。这就是说,给出一个很长的报文,我们可以非常容易地计算出它的检验和。检验和的长度固定,而且很短。但我们不可能进行逆计算,由检验和把原始的报文计算出来。报文摘要也有类似的性质。我们可以很容易地计算出一个长报文X的报文摘要Fr,可是要想从报文摘要Ⅱ反过来找到原始的报文X,则实际上是不可能的。此外,若想找到任意两个报文,使得它们具有相同的报文摘要,那么实际上也是不可能的。

   上述的概念表明:若(屺〃)是发送者产生的“报文和报文摘要对”,贝刂攻击者不可能伪造出另一个报文,使得该报文与M具有同样的报文摘要H。发送者还可以对报文摘要fr进行数字签名,使报文成为可检验的又不可否认的。

   RFC1321提出的报文摘要算法MD5已获得了广泛的应用。它可对任意长的报文进行运算,然后得出128位的Mp5报文摘要代码。MD5的算法大致的过程如下:

   (1)先把任意长的报文按模卢4计算其余数(“位),追加在报文的后面。

   (2)在报文和余数之间填充1~5I2位,使得填充后的总长度是5I2的整数倍。填充的首位是1,后面都是0。

   (3)把追加和填充后的报文分割为一个个512位的数据块,每个512位的报文数据再分

成4个128位的数据块依次送到不同的散列函数进行4轮计算。每一轮又都按32位的小数据块进行复杂的运算。一直到最后计算出MD5报文摘要代码(128位)。

   这样得出的MD5报文摘要代码中的每一位都与原来报文中的每一位有关。Ⅱve蜕提出一个猜想,即根据给定的W1D5报文摘要代码找出原来报文的难度,其所需的操作量级为212:。到目前为止,还没有任何分析可以证明这种猜想是错误的。

   报文摘要算法就是一种散列函数。这种散LM1877M-9列函数也叫做密码编码的检验和,因为它的性质和前面我们多次提到的检验和十分相似。我们知道,检验和是用来防止通信时偶然出现的差错,但报文摘要算法却是防止报文被人恶意篡改。

   报文摘要算法是精心选择的一种单向(olle-wa。y)函数。我们知道,检验和算法也是单向的。这就是说,给出一个很长的报文,我们可以非常容易地计算出它的检验和。检验和的长度固定,而且很短。但我们不可能进行逆计算,由检验和把原始的报文计算出来。报文摘要也有类似的性质。我们可以很容易地计算出一个长报文X的报文摘要Fr,可是要想从报文摘要Ⅱ反过来找到原始的报文X,则实际上是不可能的。此外,若想找到任意两个报文,使得它们具有相同的报文摘要,那么实际上也是不可能的。

   上述的概念表明:若(屺〃)是发送者产生的“报文和报文摘要对”,贝刂攻击者不可能伪造出另一个报文,使得该报文与M具有同样的报文摘要H。发送者还可以对报文摘要fr进行数字签名,使报文成为可检验的又不可否认的。

   RFC1321提出的报文摘要算法MD5已获得了广泛的应用。它可对任意长的报文进行运算,然后得出128位的Mp5报文摘要代码。MD5的算法大致的过程如下:

   (1)先把任意长的报文按模卢4计算其余数(“位),追加在报文的后面。

   (2)在报文和余数之间填充1~5I2位,使得填充后的总长度是5I2的整数倍。填充的首位是1,后面都是0。

   (3)把追加和填充后的报文分割为一个个512位的数据块,每个512位的报文数据再分

成4个128位的数据块依次送到不同的散列函数进行4轮计算。每一轮又都按32位的小数据块进行复杂的运算。一直到最后计算出MD5报文摘要代码(128位)。

   这样得出的MD5报文摘要代码中的每一位都与原来报文中的每一位有关。Ⅱve蜕提出一个猜想,即根据给定的W1D5报文摘要代码找出原来报文的难度,其所需的操作量级为212:。到目前为止,还没有任何分析可以证明这种猜想是错误的。

热门点击

 

推荐技术资料

泰克新发布的DSA830
   泰克新发布的DSA8300在一台仪器中同时实现时域和频域分析,DS... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!