MD5碰撞后时代,MD5还有存在的意义吗?

MD5是一种HASH函数,又称杂凑函数,由32位16进制组成,在信息安全范畴有广泛和首要运用的暗码算法,它有类似于指纹的运用。在网络安全协议中, 杂凑函数用来处理电子签名,将冗长的签名文件紧缩为一段一起的数字信息,像指纹辨别身份相同保证正本数字签名文件的合法性和安全性。在前面提到的SHA- 1和MD5都是现在最常用的杂凑函数。经过这些算法的处理,初始信息即使只更动一个字母,对应的紧缩信息也会变为大相径庭的“指纹”,这就保证了经过处理 信息的唯一性。为电子商务等提供了数字认证的可能性。

  安全的杂凑函数在设计时有必要满意两个请求:其一是寻找两个输入得到相同的输出值在计算上是不可行的,这便是我们一般所说的抗磕碰的;其二是找一个输 入,能得到给定的输出在计算上是不可行的,即不可从效果推导出它的初始状况。现在运用的首要计算机安全协议,如SSL,PGP都用杂凑函数来进行签名,一 旦找到两个文件可以发作相同的紧缩值,就可以假造签名,给网络安全范畴带来无量危险。

  MD5便是这样一个在国内外有着广泛的运用的杂凑函数算法,它曾一度被认为是非常安全的。但是MD5也不会完全不重复,从概率来说16的32次
方遍历后至少出现两个相同的MD5值,但是16的32次方有多大?3402823669209384634633746074317.7亿,就算全世界最
快的超级计算机也要跑几十亿年才能跑完。可是,王小云教授发现,可以很快的找到MD5的“磕碰”,便是两个文件可以产生相同的“指纹”。这意味着,当你在
网络上运用电子签名签署一份合同后,还可能找到其他一份具有相同签名但内容悬殊的合同,这么两份合同的真伪性便无从辨别。王小云教授的研究效果证明了利用
MD5算法的磕碰可以严重威胁信息体系安全,这一发现使现在电子签名的法律效力和技能体系受到应战。因此,业界专家普林斯顿计算机教授Edward
Felten等强烈呼吁信息体系的设计者赶快更换签名算法,而且他们侧重这是一个需要当即处理的疑问。

一石击起千层浪,MD5的破译引起了暗码学界的剧烈反应。专家称这是暗码学界这些年“最具实质性的研究进展”,各个暗码学相关网站竞相报导这一惊人打破。
  MD5破解专项网站关闭
    
MD5破解工程威望网站http://www.md5crk.com/是为了揭露搜集专门针对MD5的攻击而建立的,网站于2004年8月17日宣告:
“我国研究人员发现了完整MD5算法的磕碰;Wang, Feng,
Lai与Yu发布了MD5、MD4、HAVAL-128、RIPEMD-128几个Hash函数的磕碰。这是这些年暗码学范畴最具实质性的研究进展。运用
他们的技能,在数个小时内就可以找到MD5磕碰。……因为这个里程碑式的发现,MD5CRK项目将在随后48小时内完毕”。
  对此, Readyresponse主页专门转发了该报导,几个其它网站也进行了报导。
  威望网站相继宣布谈论或许报告这一重大研究效果
  经过计算,在论文发布两周之内,已经有近400个网站发布、引证和谈论了这一效果。国内的很多新闻网站也以“演算法安全加密功用露出破绽 暗码学界一片哗然”为题报导了这一暗码学界的重大事件,该音讯在各新闻网站上屡次转发。

MD5破解作业的首要成员王小云教授是一个衰弱、拘谨的女子,厚厚的镜片透射出双眸中数学的灵光。她于1990年在山东大学师从闻名数学家潘承洞教授攻读
数论与密码学专业博士,在潘先生、于秀源、展涛等多位闻名教授的悉心指导下,她成功将数论知识应用到密码学中,取得了很多突出效果,先后取得863项目资
助和国家自然科学基金项目赞助,并且取得部级科技进步奖一项,撰写论文二十多篇。王小云教授从上世纪90年代末开端进行HASH函数的研讨,她所带领的于
红波、王美琴、孙秋梅、冯骐等构成的密码研讨小组,同中科院冯登国教授,上海交大来学嘉等闻名学者密切协作,经过长时刻持之以恒的尽力,找到了破解
HASH函数的关键技术,成功的破解了MD5和其它几个HASH函数。
  这些年她的作业得到了山东大学和数学院领导的大力支持,格外投资建设了信息安全实验室。山东大学校长展涛教授高度重视王小云教授突出的科研效果。
2004年6月山东大学领导听取王小云教授的作业介绍后,展涛校长亲身签发约请函约请国内闻名信息安全专家参与2004年7月在威海举办的“山东大学信息
安全研讨学术研讨会”,数学院院长刘建亚教授安排和掌管了会议,会上王小云教授发布了MD5等算法的一系列研讨效果,专家们对她的研讨效果给予了充沛的肯
定,对其持之以恒的科研情绪大加赞扬。一位院士说,她的研讨水平肯定不比世界上的差。这位院士的定论在时隔一个月以后的世界密码会上得到了验证,国外专家
如此强烈的反应表明,我们的作业可以说不光不比世界上的差,并且是在破解HASH函数方面已抢先一步。加拿大CertainKey公司早前宣告将给予发现
MD5算法第一个磕碰人员必定的奖赏,CertainKey的初衷是使用并行计算机经过生日进犯来寻觅磕碰,而王小云教授等的进犯相对生日进犯需要更少的
计算时刻。

由于MD5的破译,引发了对于MD5 商品是不是还能够运用的大争辩。在麻省理工大学Jeffrey I.
Schiller教授掌管的自己论坛上,许多暗码学家在标题为“Bad day at the hash function
factory”的争辩中宣布了具有价值的定见。这次世界暗码学会议的总主席Jimes
Hughes宣布谈论说“我信任这(破解MD5)是真的,而且假如碰撞存在,HMAC也就不再是安全的了,…… 我以为咱们应当抛开MD5了。”
Hughes主张,程序设计人员最佳开始放弃MD5。他说:“已然如今这种算法的缺点已露出出来,在有用的进犯发动之前,如今是撤离的时机。”
 同样,在普林斯顿大学教授Edwards
Felton的自己网站上,也有相似的谈论。他说:“留给咱们的是什么呢?MD5现已受了重伤;它的应用就要筛选。SHA-1依然活着,但也不会很长,必
须立即替换SHA-1,可是选用什么样的算法,这需要在暗码研究人员到达一致。”
  暗码学家Markku-Juhani称“这是HASH函数剖析范畴激动人心的时间。”
       而闻名计算机公司SUN的LINUX专家Val Henson则说:“曾经咱们说"SHA-1能够定心用,别的的不是不安全即是不知道", 如今咱们只能这么总结了:"SHA-1不安全,别的的都完了"。
 对于王小云教授等破译的以MD5为代表的Hash函数算法的陈述,美国国家技能与规范局(NIST)于2004年8月24日宣布专门谈论,谈论的首要内
容为:“在近来的世界暗码学会议(Crypto
2004)上,研究人员宣布他们发现了破解数种HASH算法的办法,其间包含MD4,MD5,HAVAL-128,RIPEMD还有
SHA-0。剖析标明,于1994年代替SHA-0成为联邦信息处理规范的SHA-1的削弱条件的变种算法能够被破解;但完好的SHA-1并没有被破解,
也没有找到SHA-1的碰撞。研究结果阐明SHA-1的安全性暂时没有问题,但随着技能的发展,技能与规范局计划在2010年之前逐步筛选SHA-1,换
用别的更长更安全的算法(如SHA-224、SHA-256、SHA-384和SHA-512)来代替。”

这是几位暗码学家运用的是“结构前缀磕碰法”(chosen-prefix collisions)来进行这次攻击(是王小云所运用的攻击办法的改进版本)。

他们所运用的计算机是一台 Sony PS3,且仅用了不到两天。

他们的定论:MD5 算法不该再被用于任何软件完整性查看或代码签名的用处!

那是不是MD5就此没有用处了呢?非也,对于文件来说碰撞可能容易,但是对于限定长度的密码或者密文来说,MD5作为一种高性能高安全的数字签名算法来说,还是非常实用的。

文章转载自: http://www.ttmd5.com/article.php?id=12

时间: 2024-10-21 17:12:06

MD5碰撞后时代,MD5还有存在的意义吗?的相关文章

使用Python计算指定目录md5,根据md5找查到相同的文件并打印

实现代码如下: #!/usr/bin/python #*-*coding:utf8*-* import os import sys import hashlib def md5sum(data):     with open(data, "rb") as f:         md5 = hashlib.md5()         for i in f.read(4096):             if i:                 md5.update(i)        

C#中简单调用MD5方法以及MD5简介

MD5简介:          MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2.MD3和MD4发展而来.MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法.换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数. MD5算法: 第一

windows md5 和linux md5 比较

windows: certutil -hashfile xxx.tar.gz MD5 linux: md5sum xxx.tar.gz 如图: 原文地址:https://blog.51cto.com/860143/2425176

java加密算法小结(2)--MD5加密算法

上一篇文章整理了Base64算法的相关知识,严格来说,Base64只能算是一种编码方式而非加密算法,这一篇来整理一下一个被广泛应用的加密算法---MD5. 简单了解 MD5(Message Digest Algorithm 5),翻译过来是消息摘要算法第五版,按照惯例,我们推理可能也有MD2,MD3这样名字的历史版本.. 即使完全不了解这个算法的原理,我们也可以从命名中看出一些眉道,所谓摘要,就是一个简短的概括,像我写过的毕业论文,上来第一部分就是摘要,它对后面长篇大论的文章做了一个简短有力的概

java加密算法小结--MD5加密算法

上一篇文章整理了Base64算法的相关知识,严格来说,Base64只能算是一种编码方式而非加密算法,这一篇来整理一下一个被广泛应用的加密算法---MD5. 简单了解 MD5(Message Digest Algorithm 5),翻译过来是消息摘要算法第五版,按照惯例,我们推理可能也有MD2,MD3这样名字的历史版本.. 即使完全不了解这个算法的原理,我们也可以从命名中看出一些眉道,所谓摘要,就是一个简短的概括,像我写过的毕业论文,上来第一部分就是摘要,它对后面长篇大论的文章做了一个简短有力的概

基于NVIDIA GPU的MD5加速穷举(CUDA)

声明:本文仅限于技术分享,请勿将代码用于非法用途,利用本文代码所产生的各种法律问题,与本文作者无关. 1. 摘要: MD5为非常普遍使用的消息摘要算法,很多应用系统采用该算法加密密码,在计算文件摘要值以验证文件是否被篡改方面也普遍使用, MD5服务安全方面很多年,随着计算机技术的发展,该算法已经很不安全,穷举遍历的代价也变得没那么高,笔者建议至少采用(SHA1+盐值) 方法加密新建设的应用系统,由于目前很多网站大量的用户名密码泄露,个人的信息安全也越来越重要,目前很多系统采用的加密算法有: 1>

iPhone6plus 的 iOS 11 GM和正式版安装包的 md5一模一样

同上:chens-MacBook-Air:~ chen$ md5 /Users/chen/Downloads/iPhone_5.5_11.0_15A372_Restore.ipsw MD5 (/Users/chen/Downloads/iPhone_5.5_11.0_15A372_Restore.ipsw) = 0473f217af0f20e138649385de6db6c7GM 版本的 md5 chens-MacBook-Air:~ chen$ md5 /Users/chen/Download

    MD5,MySQL,SHA解密 - 利用GPU进行密码破解

使用方法: 1 打开命令行cmd 然后切换到egb的目录,假设你的文件夹在f盘,则输入:  f:2. 在当前目录输入: egb.exe /info查看你的电脑是否支持使用CUDA3. 可以将要破解的文件放置到当前目录4. 回到命令窗口,输入: egb.exe MD5 Settings/MD5.ini password.txt5. 上面的MD5表示使用MD5解密方式,而Settings/MD5.ini则是具体的配置文件.程序内置了72中不同类型的解密配置文件,可以自己浏览一下. 而passwd.t

C/C++使用openssl进行摘要和加密解密(md5, sha256, des, rsa)

openssl里面有很多用于摘要哈希.加密解密的算法,方便集成于工程项目,被广泛应用于网络报文中的安全传输和认证.下面以md5,sha256,des,rsa几个典型的api简单使用作为例子. 算法介绍 md5:https://en.wikipedia.org/wiki/MD5 sha256:https://en.wikipedia.org/wiki/SHA-2 des: https://en.wikipedia.org/wiki/Data_Encryption_Standard rsa: htt