【摘要】:MD5与SHA-1两种算法,都是以MD4为基础设计的,算法结构类似。抗攻击的强度MD5和SHA-1的消息摘要长度分别为128bit和160bit,用穷举式搜索攻击MD5和SHA-1两种算法,如果寻找具有给定消息摘要的消息,分别需要做2128和2160次运算,如果寻找具有相同消息摘要的两个不同消息,分别需要做264和280次运算。所以SHA-1抗击穷举式搜索攻击的强度高于MD5抗击穷举式搜索攻击的强度。数据的存储方式MD5使用Little-endian方式,SHA-1使用Big-endian方式。
MD5与SHA-1两种算法,都是以MD4为基础设计的,算法结构类似。两个算法描述起来都较为简单,实现起来也较为简单,均不需要较大的程序和代换表。
两种算法具有如下不同点。
(1)抗攻击的强度
MD5和SHA-1的消息摘要长度分别为128bit和160bit,用穷举式搜索攻击MD5和SHA-1两种算法,如果寻找具有给定消息摘要的消息,分别需要做2128和2160次运算,如果寻找具有相同消息摘要的两个不同消息,分别需要做264和280次运算。所以SHA-1抗击穷举式搜索攻击的强度高于MD5抗击穷举式搜索攻击的强度。
(2)速度和效率(www.xing528.com)
两种算法结构上类似。比较起来,SHA-1的迭代步数(80步)多于MD5的迭代步数(64步),所用的缓冲区(160位)大于MD5使用的缓冲区(128位),因此在相同硬件上实现时,SHA-1的速度要比MD5的速度慢,MD5的执行效率比SHA-1高。
(3)数据的存储方式
MD5使用Little-endian方式,SHA-1使用Big-endian方式。两种方式相比看不出哪个更具优势,之所以使用两种不同的存储方式是因为设计者最初实现各自的算法时,使用机器的存储方式不同。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。