图:Simpsons contributor · CC BY-SA 3.0 · Wikimedia Commons
- 类型
- 密码杂凑函数
- 发现 / 发明时间
- 1992 年
- 发现者 / 提出者
- Hans Dobbertin、Antoon Bosselaers、Bart Preneel
- 学科
- 数学
相关科学家
百科正文
RIPEMD-160是以原始版RIPEMD所改进的160位元版本,而且是RIPEMD系列中最常见的版本。RIPEMD-160是设计给学术社群所使用的,刚好相对于国家安全局所设计SHA-1和SHA-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。但这个问题不会发生在RIPEMD-160.
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
以上内容摘自维基百科「RIPEMD」,按 CC BY-SA 4.0 使用,去掉了参考文献、外部链接等尾部小节,公式改写成了纯文本。全文、配图和出处见原文。