第八十九章 红与黑的碰撞·迷雾 9

  父亲邹成凯的话使邹道更加坚定了自己的判断:曹经波一定参过军,甚至可能不是一般的士兵。他把曹经波的履历从头到尾浏览了一遍,可惜,没什么发现。
  他不死心,把光标移到首页,又看了一遍,这次比刚才看得更慢、更仔细。
  终于,他发现了一点不对劲的地方:曹经波的履历,出生到学生时代以及进入警察系统后每次出警任务,荣立功勋都记载得明明白白,唯独少了进入警察系统之前的记录。邹道把鼠标移到学生时代的末尾,意外地发现段末句号后面有一个字体颜色为蓝色的斜杠。他点击鼠标左键将斜杠选中,敲了一下回车,如他所料,跳出来一个隐藏的超链接,那是一个文件扩展名为.md5的文件,在这个文件中只有一行文本,结构如下:
  MD5doc=37b8c2c1093dd0fec281a9d9ac840513
  邹道瞅了半天如看天书,不明所以,但很清楚他想要查看的资料被加密了。他掏出手机,登录QQ,打开“男生宿舍”qq群。邹道念的高中是一所寄宿学校,同楼道的男生玩得要好,就组了个qq群,“江南飞虎队”的成员邹道、邹逸和邹靳彪全在里面,邹靳彪是群主,邹道是管理员,邹逸则长年潜水,只看戏,不出声。
  邹道把那串文本代码手打后发送到群里,吆喝了一声,“各位老同学,帮忙看看,这是个什么东西?”
  不一会儿,就有人回复了,网名逆鳞,“哟,邹警官,听群主说你调到市局网络安全保卫支队去了,咋了,这大中午的不休息,浏览什么机密文件呢,MD5都整出来了?”
  果然是加密了!邹道心里咯噔了一下,敲了一行字过去,“别贫,说说,怎么回事?”
  “这可不是一两句话说清的,”逆鳞回复,“你有时间吗?给你好好讲讲!”
  邹道看了一下表,“没事儿,距离上班还有40分钟,你说!”
  “你先大致瞅瞅这几个资料,了解一下背景,我再对你说。”逆鳞发过来几个链接。
  邹道一一点开,快速浏览了一下。
  第一个是关于“加密算法”的,数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法人窃取、的目的。现行加密技术主要分为对称式加密技术和非对称式加密技术两种,前者对加密和解密使用同一个密钥,通常称之为“SessionKey”;后者刚好相反,加密和解密所使用的不是同一个密钥,通常有两个密钥,称为“公钥”和“私钥”,它们两个必需配对使用,否则不能打开加密文件。这里的“公钥”是指可以对外公布的,“私钥”则不能,只能由持有人一个人知道。它的优越性就在这里,因为对称式的加密方法如果是在网络上传输加密文件就很难不把密钥告诉对方,不管用什么方法都有可能被别窃听到。而非对称式的加密方法有两个密钥,且其中的“公钥”是可以公开的,也就不怕别人知道,收件人解密时只要用自己的私钥即可以,这样就很好地避免了密钥的传输安全性问题。
  第二个是关于“哈希算法”的,Hash,一般译为散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。Hash算法可以将一个数据转换为一个标志,这个标志和源数据的每一个字节都有十分紧密的关系。Hash算法还具有一个特点,就是很难找到逆向规律。
  所有散列函数都有如下一个基本特性:如果两个散列值是不相同的(根据同一函数),那么这两个散列值的原始输入也是不相同的。这个特性是散列函数具有确定性的结果。但另一方面,散列函数的输入和输出不是一一对应的,如果两个散列值相同,两个输入值很可能是相同的,但不绝对肯定二者一定相等(可能出现哈希碰撞)。输入一些数据计算出散列值,然后部分改变输入值,一个具有强混淆特性的散列函数会产生一个完全不同的散列值。
  而他现在遇到的这个“MD5”,就是哈希的一种,全称叫“MD5消息摘要算法”(英语:MD5Message-DigestAlgorithm),由美国密码学家罗纳德·李维斯特(RonaldLinnRivest)设计,于1992年公开,用以取代MD4算法,是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致。
  ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
  注:为了加强算法的安全性,Rivest在1990年开发出MD4算法。MD4算法同样需要填补信息以确保信息的比特位长度减去448后能被512整除(信息比特位长度mod512=448)。然后,一个以64位二进制表示的信息的最初长度被添加进来。信息被处理成512位damg?rd/merkle迭代结构的区块,而且每个区块要通过三个不同步骤的处理。Denboer和Bosseers以及其他人很快的发现了攻击MD4版本中第一步和第三步的漏洞。Dobbertin向大家演示了如何利用一部普通的个人电脑在几分钟内找到MD4完整版本中的冲突(这个冲突实际上是一种漏洞,它将导致对不同的内容进行加密却可能得到相同的加密后结果)。毫无疑问,MD4就此被淘汰掉了。
  尽管MD4算法在安全上有个这么大的漏洞,但它对在其后才被开发出来的好几种信息安全加密算法的出现却有着不可忽视的引导作用。