当前位置:K88软件开发文章中心电脑基础基础应用01 → 文章内容

浅谈MD5和SHA-1被破解和应用改进策略

减小字体 增大字体 作者:佚名  来源:翔宇亭IT乐园  发布时间:2018-12-31 12:31:22

的你,不幸被人家“借用”了身份,发了一些非常不堪入目或者无理攻击他人的帖子,那你就应该知道怎么回事了。目前关于利用她的研究成果进行攻击的报道还没有出现,以上可能攻击的方法是我根据自己研究经验进行的推测,如果出现类似手法,与本人无关。

2 对电子商务安全的影响

MD5在电子商务系统中有着非常重要的应用。很多系统中把MD5算法用于使用者的身份鉴别和数字签名。现在我举个简单的例子,来说明MD5被破解后会给我们带来什么。

假设本地一个销售公司建立了一个电子产品网络购物中心,提供面向本地的网上订购、当天送货上门的服务。我知道这个公司信誉不错,而且打算购买一个MP3,首先是要在他们的网站上注册,输入我的登陆身份信息和真实的具体个人信息,包括:姓名、送货地址、联系电话、身份证号码等,完成注册。接着我挑选产品,将我喜欢的MP3放进电子购物篮,订购完成,公司会打电话来确认所填信息是否正确,确认信息正确后以后就会送货上门了,我收到送来的MP3再付钱,交易成功!

在系统后台,为了保护客户隐私并防止网络攻击,该系统将做了以下处理:对用户提交的身份信息进行一系列格式化、加密和数字签名等操作,并用MD5算法计算消息摘要来防止篡改,形成一个电子证书(如果比较正规的是采用CCITT X.509 国际标准),用户身份通过为用户颁发的电子证书进行识别。用户的电子证书可以导入到客户端浏览器中,当客户端向服务器提出登录请求时,系统自动从电子证书中获取用户身份信息,并计算消息摘要来判断证书是否被篡改过。每次交易时候,系统只要验证数字证书就行了,一般不需要输入用户名和密码,多年来这种方法一直被认为是安全的。

但是不幸的事情发生了,利用王小云教授的发现,用户证书完全是可以被伪造!(据说最近国际密码专家Lenstra利用王小云教授的方法,甚至伪造了符合X.509标准的数字证书。)一个对我非常不友好的人伪造了我的用户证书,进入系统后成功修改了用于确认的联系信息,并不辞辛苦的为我定购了许多大宗电子商品,最后当公司把这些商品堆在我面前时候并叫我签单时,我惊呆了!这一切,似乎听起来不可思议,但是对于许多真正的网上电子商务系统而言,网络在线支付和信用卡支付是很普遍的,可信部门(目前包括我国在内有许多数字证书认证中心)的数字证书就是用户的网络身份证,代表了用户的信誉,MD5和SHA-1算法被用来保证这些证书的完整性和不可篡改性。而MD5和SHA-1算法被破解将导致这些数字证书可以伪造,由此造成的信誉和经济损失将是难以估量的。

不过要伪造一份真正有意义的数字证书也是非常困难的,从目前来看,这种伪造技术还不实用,但是根据最近的迹象表明,国外的某些黑客组织由于受该研究成果的影响与刺激,对银行信用卡系统又开始表现出浓厚的兴趣了。

3 对电子政务安全影响

电子政务是政府机构运用现代计算机和网络技术,将其管理和服务职能转移到网络上去完成,同时实现政府组织结构和工作流程的重组优化,超越时间、空间和部门分隔的制约,向全社会提供优质高效、规范透明和全方位的管理与服务。

一般应具有公务邮件、收发文管理、公文审批、部门简报等主要功能,以及日程安排、个人事务管理、档案管理、红头文件签章、笔迹签批保留的辅助功能。政府的电子文件代表着权威,具有法律和行政效率,如果文件在网上传递过程中被修改,例如:把审批的公文中的不同意去掉“不”字,那后果是不堪设想的。目前在电子政务系统中为了防止被篡改,传送和保存这些电子公文的时候往往会利用MD5或者SHA-1算法生成这些电子公文的数字摘要,一旦电子公文被恶意篡改,启用这些电子公文时候重新生成数字摘要检查时候就会被发现,从而篡改后的公文将失去效力。

王小云教授从理论上说明这种保证电子公文的原始完整性的方法有缺陷,但是在实际中,要伪造有特定含义的电子公文与原始公文具有相同的数字摘要的可能性非常非常小,可以说是几乎不太可能的(这点是由她的破解算法决定的)。因此MD5或者SHA-1来保证类似与电子公文这种的具有一定意义的电子文件不被篡改还是有应用价值的。

4 应用改进策略

寻找一个MD5的碰撞已经解决了,那一组呢?就不那么容易了,那么我们在找不到更合适的替代算法之前,不妨使用以下方案:

散列向量组。具体的办法是依次取要求散列的内容的一半,或者特定交叉部分,形成一个散列向量组来替代原来的散列值。

5 结语

王小云教授的成果具有非常重要的理论意义,对密码学本身的发展具有一定的推动作用,为哈希函数的密码分析学提供了一条道路,有兴趣的朋友可以看一下她的论文,论文题目是《Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD》。

她的发现说明MD5、SHA-1已经不能用身份验证,更不能用于数字签名,另外在理论上说明数字摘要算法用于数据的完整性鉴别具有缺陷。不过她的方法也不是万能的,由于方法上的限制,要构造具有特定语义的碰撞几乎是不可能的,因此并不是所有的采用MD5算法的应用都因此被彻底的打倒,在实际中,MD5和SHA-1算法经常与其它算法一起使用,或者进行了很多变形,因此攻破使用MD5或者SHA-1算法的系统并不是想象中那么容易,所以她的发现要在实际中能够发挥什么作用还要看以后的实践了。不管怎么说,她的发现的确是信息安全学界的一场地震,王小云教授也是我们国人的骄傲!


上一页  [1] [2] 


浅谈MD5和SHA-1被破解和应用改进策略