跳转到内容

RIPEMD

维基百科,自由的百科全书
RIPEMD
概述
设计者Hans Dobbertin英语Hans Dobbertin, Antoon Bosselaers and Bart Preneel英语Bart Preneel
首次发布1996
认证RIPEMD-160: CRYPTREC英语CRYPTREC (监控)
细节
摘要长度128, 160, 256, 320 位元
一个RIPEMD160哈希算法压缩函数的子块

RIPEMDRACE原始完整性校验讯息摘要)是一种加密哈希函数,由鲁汶大学Hans Dobbertin英语Hans Dobbertin、Antoon Bosselaers和Bart Prenee英语Bart Prenee组成的COSIC研究小组发布于1996年。RIPEMD是以MD4为基础原则所设计的,而且其表现与更有名的SHA-1类似.

RIPEMD-160是以原始版RIPEMD所改进的160位元版本,而且是RIPEMD系列中最常见的版本。RIPEMD-160是设计给学术社群所使用的,刚好相对于国家安全局所设计SHA-1SHA-2算法。另一方面,RIPEMD-160比SHA-1较少使用,所以可能造成RIPEMD-160比SHA还不常被审查。另外,RIPEMD-160并没有任何专利所限制。

同时也存在着128,256-320位元的这种算法,称为RIPEMD-128,RIPEMD-256和RIPEMD-320。128位版本的用意仅是取代原始版RIPEMD,因为原版也同样是128位元,并且被发现有潜在的安全问题。而256和320位版本只有减少碰撞发生的机率,但没有提升安全等级(就抵御原像攻击而言)。不过,RIPEMD的设计者们没有真正设计256和320位元这2种标准,他们只是在128位元和160位元的基础上,修改了初始参数和s-box来达到输出为256和320位元。所以,256位的强度和128相当,而320位的强度和160位相当。且RIPEMD建立在md的基础之上,所以其添加数据的方式和md5完全一样。

在2004年八月,据回报有个碰撞发生于原始版的RIPEMD。[1]但这个问题不会发生在RIPEMD-160.[2]

RIPEMD-160范例

[编辑]

160位元的RIPEMD-160哈希值是以40位的十六进制所表示。下面表明了43字节ASCII码的输入与其对应的RIPEMD-160哈希值:

RIPEMD-160("The quick brown fox jumps over the lazy dog")=
37f332f68db77bd9d7edd4969571ad671cf9dd3b

RIPEMD-160能表现出理想的雪崩效应(例如将 d 改成 c,即微小的变化就能产生一个完全不同的哈希值):

RIPEMD-160("The quick brown fox jumps over the lazy cog")=
132072df690933835eb8b6ad0b77e7b6f14acad7

0字串长度的哈希值表示为:

RIPEMD-160("")= 
9c1185a5c5e9fc54612808977ee8f548b2258d31

参见

[编辑]

参考文献

[编辑]
  1. ^ Wang, Xiaoyun; Feng, Dengguo; Lai, Xuejia; Yu, Hongbo, Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD, 2004-08-17 [2017-03-03] 
  2. ^ Mendel, Florian; Pramstaller, Norbert; Rechberger, Christian; Rijmen, Vincent, Katsikas, Sokratis K.; López, Javier , 编, On the Collision Resistance of RIPEMD-160 4176, Springer Berlin Heidelberg: 101–116, 2006 [2017-03-03], ISBN 978-3-540-38341-3, doi:10.1007/11836810_8 

外部链接

[编辑]