admin 管理员组

文章数量: 1184232


2024年4月29日发(作者:handlerthread原理)

一百年无法破解的密码 (1)

2010-03-25 15:28:41 来源:互联网

从我们的经验来看,某种加密方式,不论它在刚出现时宣称有多么牢不可破,随着时间的迁移,

它总会暴露出弱点,从一个强大的加密方式变成一个较弱的加密方式。而如今人们在使用目前流

行的加密方式时,也有这样 ...

从我们的经验来看,某种加密方式,不论它在刚出现时宣称有多么牢不可破,随着时间

的迁移,它总会暴露出弱点,从一个强大的加密方式变成一个较弱的加密方式。而如今人们

在使用目前流行的加密方式时,也有这样的忧虑,担心某一天会有一种捷径出现,使得目前

所使用的看似无懈可击的加密手段在可控的时间内就被暴力破解。

就算目前所使用的那些还没有被破解的加密方式,在不断升级的CPU时钟频率前提下,

暴力破解所需的时间也越来越短了。比如几个月前需要耗时一年才能破解的密码,以现在的

计算速度来看,可能只需要七八个月就可以完成了。正因为计算速度越来越快,使得我们通

过暴力手段破解密码的时间大大缩短了。

就算是以难以通过暴力方式破解为目的构建的更复杂更聪明的加密算法,在未来某天,

也不可避免的会步那些已经被证明不够安全的加密算法的后尘。这就好像是冷战时期的军备

竞赛,一方想竭力保护隐私,另一方却竭力窥探隐私。

在加密算法的发展过程中,有很多算法都已经被破解或被证明不够安全,唯有一种加密

算法一直存在了93年。这种算法叫做一次性密钥(one- time pad)。在1917年, Gilbert

Vernam开发了一种叫做Vernam Cipher 的加密方法,使用电传技术,通过打有密钥的纸

带进行数据加密和解密。结果便出现了当时最强的对称加密技术。

美国陆军上尉Joseph Mauborgne注意到,这是真正随机产生的密钥,不会有任何重复

的可能,因此Vernam cipher可以做到更强大的效果。于是,基于纸带密钥的方法,在一沓

纸上印有随即字母或数字,作为密钥的加密算法出现了。相同的一沓纸可以给两个人用,每

个页面上的每个字符只能用一次(每张纸上的字符或数字用完,则销毁该密码纸),这种方

式可以避免敌人通过枚举法暴力破解信息。由于这种分法密钥流数据的技术是基于可销毁的

纸张的,因此也被认为是一次性密钥。

信息理论之父Claude Shannon曾经通过数学方法,证明这种一次性密钥如果使用得当,

是无法被破解的,而所谓的使用得当,是指及时销毁所使用的密钥页,即使对方拿到了密码

本的其余部分,也无法进行解密。同样的理念也可以用于数字系统,但是要确保计算机具有

足够的安全措施以及全面的考虑,防止黑客入侵一次性密钥系统。比如,一些昂贵的数据恢

复系统会将已删除的文件恢复,其中就有可能恢复那些一次性的密钥文件。因此如果使用数

字化的一次性密钥系统,就要确保所删除的密钥文件是被彻底删除,无法恢复的。

一次性密钥加密方式有时候非常不方便,因此现在很少有人在用这种加密方式。而正是

由于这种不便性,我们实际需要的是一些理论上有些弱的加密方式,比如AES/Rijndael 以

及Twofish 。一次密钥的不方便性在于:

由于一次性密钥是一种对称加密方式,进行加密通信的双方需要拥有完全一样的密钥数

据。而在某些环境下,这种条件是无法实现的,因为要想让双方都拥有这个密钥,就意味着

必须有一种足够安全的方式让双方共享或传递密钥数据,而如果有了这样的安全环境,也就

不需要再使用一次性密钥了。而一般来说通过物理方式传递密钥(比如亲手交给对方)才能

实现一次性密钥的优势。

一次性密钥必须和所加密内容一样长。这意味着,如果你要对一个3GB的文件进行加密,

就需要有一个3GB的一次性密钥。

相同的一次性密钥只能在两人间保存,如果超过两人知晓这个密钥,就不再安全了。比

如,如果在多个人之间传送不同的信息,并且不能让接受者获知其它


本文标签: 密钥 加密 方式 破解 使用