【IT168 应用】我们知道MD5加密密码已经成为网络的主流,我们在“Hack”的时候,无论是网站、博客还是论坛,得到的管理员密码通常都是经过MD5加密的。所幸,现在网络上有不少能够在线破解MD5加密的网站,能够在极短的时间内得到密码原文,让MD5加密形同虚设。一般经过MD5加密的密文长度为16或者32位,但是现在却出现了长度为40位的MD5密文,到底这是一种怎样的加密方法,又该如何进行破解呢?请看本文。
MD5是什么?
Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。该算法的文件号为RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc. April 1992)MD5最广泛被用于各种软件的密码认证和钥匙识别上。通俗的讲就是人们讲的序列号。
我们常常在某些软件下载站点的某软件信息中看到其MD5值,它的作用就在于我们可以在下载该软件后,对下载回来的文件用专门的软件(如Windows MD5 Check等)做一次MD5校验,以确保我们获得的文件与该站点提供的文件为同一文件。利用MD5算法来进行文件校验的方案被大量应用到软件下载站、论坛数据库、系统文件安全等方面。
普通MD5密文的破解
随着那些在线MD5密文破解网站的兴起,一些常用的MD5密码都能在1秒钟之内破解。即使是一些较为复杂的,也能够通过破解网站的后台破解系统进行挂机破解。因此,MD5加密已经不存在神秘感,破解亦易如反掌。
破解简单MD5码
假设我们的密码为admin,那么经过MD5加密得到密文为:7a57a5a743894a0e(16位)、21232f297a57a5a743894a0e4a801fc3(32位)。让我们用在线破解网站来破解下密码原文吧,打开MD5在线破解网站:http://www.cmd5.com/,将16位或者32位密文填入到文本框中,点击“解密”按钮,看,不到一秒钟密码原文就出来了。
40位MD5密文只是障眼法
以密码admin为例,40位的MD5密文为:7a57a5a743894a0e4a801fc343894a0e4a801fc3。乍一看MD5加密的痕迹明显,但是把它复制到破解网站中进行破解却无法得出答案。到底这串密文出自何处呢?让我们来仔细观察下,比对16位的MD5密文,你会发现什么?对,我们会发现这串密文的前16位和16位加密的MD5密文完全相同!
再来看后面的24位,我们会发现它是在两个4a801fc3之间夹杂了一个43894a0e,再以4a801fc去比对32位MD5密文,会发现4a801fc3是32位MD5密文的后8位,而43894a0e则是16位MD5密文的后8位。所以,这串40位的密文我们可以这样理解:首先对admin进行16位的MD5加密,再在后面添上32位MD5密文的后8位,最后把后16位密文(43894a0e4a801fc3)来个重复,就诞生了40位MD5加密密文了。
OK,到这里答案已经揭晓了,原来40位的密文只是障眼法!知道原理,以后我们看见这种加密密文,可以直接把前16位拿出去破解就可以了,后面的统统没用,不用去管它。当然,如果程序员对原来的MD5加密进行的改进,变成了二次加密或多次,那么40位的MD5密文就不止这么简单了。不过这是较为特殊的情况,一般用上文介绍的方法都可以轻松搞定。
作者创造出这样的加密方式自有他的道理,因为这样加密的好处是不言而喻的:通常黑客认为MD5只有16位和32位两种加密方式,被这样的加密方式一加密,尽管看上去极像了MD5加密,但是因为位数不同所以没法用在线破解网站和工具进行破解,黑客就会认为这是另一种加密方式了,从而放弃入侵,混淆视听的目的就达到了。