首页 > 古典文学 > 真名实姓 > 密码学与真名实姓的政治学

密码学与真名实姓的政治学(1/2)

目录

伦纳德·方纳

整个世界——炫目耀眼,充斥着金钱和政治——真正的兴趣在于互联网商务。股票市场充斥着互联网热门股,因为控制世界上大部分金钱的人已经意识到,他们可以把这个迄今为止与世隔绝、晦涩难懂的“科学聊天热线”作为赚钱的手段。

但是,赚钱过程的核心是确保信息和资金的安全交换。麻省理工学院媒体实验室的研究员伦纳德·方纳提出了信息交流过程固有的一些问题,信息交流不仅应该是私密的,而且必须是安全的,不受外部团体干预。这些问题与本书中其他文章所探讨的问题相似却又有不同。我们如果想避免信息高速公路上的大规模盗窃和欺诈行为,就必须接受他的观点,他的观点对我们所有人来说都是极其重要的。这篇文章写于1995年。

“在很久很久以前的魔法时代,任何一位谨慎的巫师都把自己的真名实姓看作最值得珍视的密藏,同时也是对自己生命的最大威胁。因为——故事里都这么说——一旦巫师的对头掌握他的真名实姓,随便用哪种尽人皆知的普通魔法都能杀死他,或是使他成为自己的奴隶,无论这位巫师的魔力多么高强,而他的对头又是多么虚弱、笨拙。时移世易,我们人类成长了,进入理智时代,随之而来的是第一次、第二次工业革命。魔法时代的陈腐观念被抛弃了。可是现在,时代的轮子好像转了一整圈,我们的观念又转回魔法时代(这个时代究竟是不是真的存在,这个姑且不论)——我们重新担心起自己的真名实姓来……”

这便是《真名实姓》的开篇。是什么决定了其他人是否知道一个人的真名实姓,或是知道一个人、一家公司、一个国家的秘密?

答案是密码学,或是密码学的缺失。

有了强大的、牢不可破的密码学,个人和组织就有了保密和匿名的自由。没有密码学,这些自由根本就不存在。目前,技术支撑起了牢不可破的密码学(通过适当的关注,以及对未来一定的警告)。但是在世界范围内有许多政治努力,出于各种原因,他们试图把漂亮的蘑菇云重新放进闪闪发光的金属外壳里,并让人们的保密能力退回到原始时代。

本文分析了强大(本质上牢不可破)的密码学的技术和政治。在技术方面,本文仅仅展示了今天可能发生的事情、如何处理它,以及在不久的将来可能发生的事情。在政治方面,叙述了最近发生在互联网和相关通信媒体上的许多事件,也对政治前景进行了预测。随着政治的不断发展,本文面临着迅速过时的风险,但任何致力于文字的事情都是如此。

整个课题是巨大的。不过,这不是一篇学术论文,我会引证我所说的部分内容(另外,我极大地简化了技术和政治,欢迎学识渊博的业内人士前来指摘)。不过,我提供了一些线索,让那些感兴趣的人可以进一步探索。我在这里主要集中于个人(而非公司或国家)使用的密码学,并强调公民自由。技术的名称和政府机构的名称混在一起,熬成了一锅缩写词“浓汤”——先干了这碗金宝汤 [61] 的字母汤,然后再进入正题吧。

强加密技术

密码学的存在是为了保密。现代密码学也可以用来验证某人是谁——而且可以秘密地做到这一点。

下面,我们来看看最近人们在网络和计算机上保密的常见方式。从所有这一切中得到的教训是,“你能想到的几乎任何问题都有已知的解决方案”。还有更多的解决方案不断被发明出来。密码学和保密的问题在很大程度上不是技术,而是政治和经济问题。某些人有多渴望你的信息,这对他们来说值多少钱,你保密要花多少钱?

加密和破解(密码破译者的工作)之间的军备竞赛一直在进行。人们想出的几乎所有的新系统通常都会被快速破解,只有罕见的、特殊的系统能够在密码破译者的攻击下幸存,但那些幸存下来的密码通常会存活几十年甚至更长时间。

现代加密系统(有一些例外,稍后进行讨论)将该算法用于公共场合。每个人都能找到这个算法,尝试破解它、实现它,等等。这就是密钥,它为特定的用户自定义算法,它是高度保密的信息。

这种方法有许多优点。每个人都可以实现自己的密码系统(例如,利用新计算机或将其放入新产品中)。同时,这意味着来自世界各地的专家可以尝试破解系统——通常,只有在专家历时多年仔细研究之后也没发现任何重大漏洞的情况下,加密系统才算是可信的。

通常,谈到密码系统的时候,常见的惯例就是讨论爱丽丝和鲍伯的通信,他们的通信可能会被窃听者伊芙听到,或被恶意用户马洛里积极干扰(我们经常在复杂的系统中混入其他的名字)。我们还讨论了信息的明文(爱丽丝发送的内容和鲍伯阅读的内容)和密文(诸如通过电缆传输或储存在文件中的信息),我们假设,爱丽丝和鲍伯身边没有人偷看——有时这个假设很过分,但我们暂时这样假设。

今天使用的加密系统主要有两种类型。最简单但最难使用的是所谓的对称密钥或私钥系统。要使用这样的系统,爱丽丝和鲍伯必须共享一个秘密——他们必须事先安排一次私下会面,并生成一个密钥用于他们的通信。他们不能仅仅把这个密钥从一个人发送给另一个人——如果他们可以在密钥不被窃听的情况下做到这一点,那么他们也可以对他们的信息进行这样的处理,并完全免除加密。

对称系统的一个经典例子是一次性密钥。爱丽丝和鲍伯私下商定并同意以一个大的随机比特流作为他们的一次性密钥。然后,爱丽丝就可以发送一个比特给鲍伯,方法是从密钥中取出下一个未使用的比特,再从她的原始信息中取下另一个比特,并将二者组合起来:她原始的比特和密钥的比特要么全是0,要么全是1。如果全是0,那么她就给鲍伯发送一个0,否则就发送一个1(这种组合比特的方法被称为异或,类似于人们说的“非此即彼”的意思。异或在密码系统中是最常见的操作之一,以后要记住)。鲍伯用他自己的一次性密钥副本对来自爱丽丝的比特流进行异或操作来恢复原始信息。只要爱丽丝和鲍伯都没再从这个密钥中使用比特,它就是完全安全的,无法被任何计算能力所破解——如果密钥上的比特确实是随机的,如果密钥中没有哪部分被使用过一次以上,如果爱丽丝和鲍伯在使用比特时能够保持同步的话。

这是一种笨办法。爱丽丝和鲍伯必须先私下见面。他们必须生成尽可能多的比特密钥用于通信,而且必须提前完成。

一个更好的方法是使用各种各样对称的密钥密码,如数据加密标准(des),它通常用来加密银行之间的电汇。在这个方案中,爱丽丝和鲍伯只需要秘密商定一个56比特的密钥,一旦他们拥有了密钥,就可以互相发送任意数量的比特。密钥中0和1的模式决定了加密一个信息时比特打乱并重组的方式,密钥可以是任何长度,加密和解密都使用这个相同的密钥。

des曾经是一种非常安全的算法。如今,如果知道了信息的64个比特的话,人们可以构建专用计算机(已经公布了全部细节)来破解它(这是已知明文攻击——从选择的明文一步一步进行攻击,在这里,马洛里可以选择爱丽丝加密的一些比特)。des破解机是一台并行计算机,如果你花更多的钱,造一台更大的机器,破解起来会更快。按照1996年的价格,100万美元的机器破解一个密钥平均需要5个小时;10万美元的机器则要花费一天。三个学识渊博的研究生在一个学期内就能建造出这种机器[为什么是三个?仅仅是因为在合理的分工下,一个人做超大规模集成电路(vlsi)设计,另一个人做板级设计,还有一个人做控制软件]。一旦建成,这台机器便可以破解任意数量的密钥——所以要么你有一个价值100万美元的密钥,要么你愿意出售破解密钥服务给所有人,每破解一个密钥收费100美元,这样你才能够建造这种机器(仅仅伪造一笔电汇就足够买下这台机器了)。

des是一个已经失去效用的系统的例子。直到20世纪90年代前后,它都是一个伟大的方案。如今,仍在使用它的人们被建议使用一个叫作triple des [62] 的方案,在这个方案中,两个或三个密钥(无关紧要)被连续送入三台加密机器,使明文被加密三次(用三种不同的方式)之后再进行传送。鲍伯的机器正好相反。这种方法仍然相当安全。

有许多其他的对称加密方案,它们至少与des一样安全,而且在软件中更容易使用——des在硬件中使用比在通用计算机中使用要容易得多。其中一个便是名为idea的瑞士密码,但有许多加密方案可供选择。

但所有这些方案都要忍受希望沟通的各方必须先私下交换密钥这一问题的困扰。如果你是一家银行,可以使用一个值得信赖的快递服务,这显然不错,但是如果你只是想在给某人打电话或发电子邮件时,不希望信息被窃听的话,就很不方便。

然而,到了20世纪70年代,人们发明了公钥加密系统。迪菲和赫尔曼发明了一个,李维斯特、萨莫尔、阿德尔曼发明了另一个,称为rsa(取自他们三人名字的首字母)。公开密钥系统是一种不同类型的野兽,基于大素数的数学运算。总的来讲,其安全性建立在将一个足够大的数分解为组成它的素数的难度之上——这项工作吸引成千上万人进行了多年的研究,似乎非常棘手(对于传统计算机而言),但这并不代表它是不可能的。因此,公钥系统虽然构筑在坚实的基础上,但并不是一次性密钥的基石。

在公钥系统中,爱丽丝和鲍伯各自生成自己的一组密钥。每个密钥分为两半——一半公钥,一半密钥。爱丽丝和鲍伯可以在任何他们喜欢的地方公开公钥。例如,在《纽约时报》上,或在他们的网页上。他们尽可能保护私钥,从不向任何人透露。

为了给鲍伯发信息,爱丽丝首先要查看他的公钥。然后用他的公钥加密她的信息,发送给鲍伯。一旦完成了这些,她就再也不能解密密文——无论是用鲍伯的公钥,还是用爱丽丝的私钥和公钥都无法解密。而鲍伯则可以用他的私钥解密信息。

这个方案是不对称的——双方没有相同的密钥。主要的好处是,他们无须见面交换密钥,爱丽丝只需要鲍伯密钥的公共部分,反之亦然。

此外,爱丽丝可以签署一条信息,以证明其真实性。毕竟,鲍伯有理由相信马洛里已经伪造了一条信息给他——因为马洛里只需要查看鲍伯的公钥来加密一条信息即可,因而马洛里可以很容易地伪造一条声称是来自爱丽丝的信息(尽管只有鲍伯可以阅读)。为了防止这种情况,爱丽丝首先用她的私钥加密信息,再用鲍伯的公钥加密信息,最后把结果发送给鲍伯。鲍伯用他的私钥解密信息,然后再用爱丽丝的公钥解密。如果他没得到无用的数据,那么他便明白只有知道爱丽丝私钥的人才能发送这条信息(爱丽丝经常只加密她信息的一个密码散列 [63] ,这是一种概括,但我们可以忽略这一细节)。

公钥系统有许多伟大的特性,但速度不是其中之一。所以,它们常常与对称系统结合使用。

爱丽丝生成一串被称为会话密钥的随机比特,她将其用作与鲍伯进行通信(只有一次!)的密钥。然后,她使用公钥系统加密这个密钥(缓慢地),发送给鲍伯。再然后,她用这个有些像3des或idea的密钥来加密她信息的主要部分(快速地),她知道鲍伯可以用他自己的私钥解密会话密钥,然后使用会话密钥解密信息。

互联网上流行的一种被称为pgp的通信包,就是使用的这个方案:rsa加密会话密钥,idea加密信息(还有许多其他的安全措施来防止存储的密钥的无意泄露、管理密钥的集合等)。

像des一样的对称系统,以及像rsa一样的公钥系统中使用的算法有一个有趣又极为重要的特性:将使用的密钥长度加倍通常只会使加密或解密的时间略微延长一点,但却让破解密钥的难度以天文数字般增加(从技术上来讲,加密时间通常是n 2 ,n 是密钥的长度,但破解密钥的时间经常上升到2 n ,它上升得更快——这就是所谓的多项式增长和指数增长)。这意味着,当使用传统计算机时(换言之,除非算法突破,我们稍后详述),爱丽丝和鲍伯可以轻而易举地保持对伊芙和马洛里的领先,方法是随着计算机计算速度的加快,慢慢增加密钥长度。这样做可以让他们海量地增加伊芙和马洛里的工作量,而自己的工作量却不会增加很多。

使用对称和公钥加密系统的这些基本技术,我们可以制造出各种各样的产品。一个重要的应用是为通信(和存储文件)保密,但是还有很多其他的应用。我们可以制造电子的、不可伪造的现金(根据定义,现金是匿名的),无论它在反复易手时是否需要通过网络链接到银行,这取决于设计。我们可以保证匿名性,通过加密邮件并用世界各地的其他机器关系网发送它们,最终解密并将信息同发信人分离开来(密码朋克重邮器完成这些事情)。我们可以编写协议,只有在十二人当中的七人(或其他人数)同意解密的时候才允许解码信息。我们可以对数据进行盲读,以便人们可以在无须阅读的情况下签署文件(例如,在不放弃发明的情况下证明自己的发明,此时非常有用)。我们可以见证一个秘密的知识,超越一切合理的怀疑,而不需要泄露哪怕一点点的秘密。我们可以通过电话抛掷一枚(虚拟的)硬币,见证它的落地方式,以免日后反悔。两个人可以同时签署一份合同。应用还有很多,在此不再举例。

请记住,密码学是用户和密码破译者之间的军备竞赛。经历了二十余年后,des终于落伍成了一个雄心勃勃但传统的数字计算机设计。更糟的是,即使像rsa这样的公钥系统也并非永远安全。例如,贝尔实验室的彼得·肖最近证明,利用量子计算机(其计算方式完全不同于数字计算机),人们破解类似rsa的系统仅仅需要多项式时间,这表明加密完全无效。迄今唯一的问题是,没有人知道如何构建一台能够运行足够长的时间来解决实际问题的量子计算机。但许多人正在研究这个问题,他们正在取得进展。我们将会看到一些有趣的政治后果出现。

强加密的政治学

在20世纪,优秀的密码学经常被当作一种军事武器:战争的胜败部分基于哪一方能破解另一方的密码。因此这是由两个困难的问题所定义的,答案是社会学和政治学,而非技术:

谁来使用它?

谁来破解它?

这两个问题是当前围绕密码学的政治纠葛的核心。

至于谁来使用密码学,那些限制密码学使用的人实际上已经输掉了这场战争。关于如何构建和使用强加密系统(无论是对称的还是非对称的系统)的基本知识,都是世界性的。不仅有描述了几十种这类算法的精彩文章在世界各地发布(或输出),而且更多信息(有时算法本身作为源代码)广泛存在于全球互联网上(美国商务部曾经进行了一项调查,海外的人多快能找到一份des副本,结果表明,利用世界上最受欢迎的ftp服务器中的archie——一个常见的ftp搜索引擎——完成一次搜索大约只需30秒,因此他们的答案是:“对于60余个目前提供des的网站,大约需要30秒。”如今,随着快速网络搜索引擎的兴起,这个数字已经过时了,它甚至更简单了)。即使一个人找不到源代码,任何一个有足够动机的程序员,都能相对快速地实现这些系统中的一个,其中大部分的算法可以教给高中生。麻省理工学院经常在群论导论课程的第三周教授rsa背后的算法给所有计算机专业大学二年级的学生。(另一个例子是,施奈尔的《应用密码学》,其中包含这些算法的描述和源代码,此书远销海外,销量已经超过45000册。)

因此,政府拒绝实现优秀密码学知识的意图相当具有压制性。政府不得不禁止进口描述这些技术的书籍,并将自己与全球互联网隔离开来。这种孤立主义不符合任何一个希望以有意义的方式与世界其他国家进行互动的政府,因此只适用于极少数国家。

本章未完,点击下一页继续阅读。

书页 目录
返回顶部