[关闭]
@1qaz 2017-02-23T14:29:11.000000Z 字数 676 阅读 825

SHA1

未分类


MD-SHA系列哈希函数是最为知名的哈希函数,MD5,SHA-1和SHA-2都被广泛的使用过。1990年MD4算法被提出,但是被很快发现了严重的安全问题,在1992年被MD5算法取代。

MD5算法在之后的十几年内被软件行业广泛使用,直到2004年中国密码学家王小云在国际密码讨论年会(CRYPTO)上展示了MD5算法的碰撞并给出了第一个实例。该攻击复杂度很低,在普通计算机上只需要几秒钟的时间。

在2005年王小云与其同事提出了对SHA-1算法的碰撞算法,不过复杂度为2的69次方,在实际情况下难以实现。
2005 EUROCRYPT,How to Break MD5 and Other Hash Functions, best paper

在2008年的CCC大会上,研究人员利用MD5碰撞来伪造合法CA证书,从而攻破HTTPS的安全体系。
2009 Crypto, "Chosen-prefix Collisions for MD5 and Applications",best paper

2012年在中东大范围爆发的火焰病毒,包含了一个伪造的数字签名,就是利用MD5碰撞伪造了合法的微软签名来逃避杀毒软件的查杀。

SHA-1算法在被发现理论上的攻击后,在2011年被NIST正式废弃,但是工业界对SHA-1的淘汰还处于比较缓慢的进程中,2014年主流浏览器如Chrome宣布开始逐步取消对SHA-1证书的支持,2017年后不再支持。

2013年Marc Stevens,也是这次SHA-1碰撞的作者之一,提出了当时最好的攻击复杂度,2的61次方,之后他又提出了在GPU上的高效实现。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注