而我们科技史上的每一次进步,都会不可避免地受到那些“原有利益者”的抵制。下面就是在科技进步的长河中,顶住了压力、推动科技进步的密码学先驱惠特菲尔德·迪菲和马丁·赫尔曼的故事……
故事从上个世纪70年代说起
1970年,斯坦福大学人工智能研究员约翰·麦卡锡(John McCarthy)发表了一篇有关“家庭信息终端”(Home Information Terminal)可能性的论文。他预测,家庭信息终端能通过电话网络来与一台共享计算机相连接,反过来并可储存书籍、杂志、新闻、公共信息和个人文件等数据。
放在当时,这算是非常前卫的预言。虽然IBM总裁托马斯·沃森(Thomas Watson)“世界只需要五台计算机就够了”的预言已经成为笑话,但就算到了数年后的1977年,当时的计算机巨头DEC创始人肯·奥尔森(Ken Olsen)仍然断言称,“我找不到普通家庭也需要计算机的理由”……
约翰·麦卡锡,1971年因在人工智能上的贡献获得图灵奖
但是牛人的思想总有牛人理解。同在斯坦福人工智能实验室的年轻程序员惠特菲尔德· 迪菲(Whitfield Diffie),读了麦卡锡的文章后产生了一个疑问:在无纸化的世界里,什么东西将会取代个人签名?这个问题也成为了迪菲接下来几年中最大的挑战。
顺便说一句,迪菲的引路人是被称为“人工智能之父”的马文·明斯基(参见《马文明斯基做了什么,为什么会被称为“人工智能之父”》),后者于1966年接纳迪菲为麻省理工学院人工智能实验室的成员(嗯,牛人果然都是扎堆的)。
带着这个问题,迪菲不断请教各路专家,直到后来结识了斯坦福大学助理教授马丁·赫尔曼。从此以后,他们成为了加密技术领域著名的科学家和名字成对出现的好基友......
马丁·赫尔曼(左)和惠特菲尔德· 迪菲(右),拍摄于1977年
迪菲和赫尔曼相信,增强保密性对于社会是有利的,当然,NSA并不这么想……
为什么这么说?
我们来八一八NSA,这个号称“没这个部门”(No Such Agency)的神秘机构当年都做了什么……
NSA的全称叫National Security Agency(国家安全局),它的典型工作比如监视反越战活动,经济间谍活动,嗯,你应该记得斯诺登,他透露的“棱镜计划”监听项目就是由NSA负责监控的。
作为美国最重要的情报部门之一,对加密信息的研究和破解算是NSA的本行工作,在二战后,NSA在这一领域拥有最优秀的人才和深厚的积累,而迪菲和赫尔曼的研究,其实是在“体系外”进行的。NSA也想收编迪菲和赫尔曼,但迪菲和赫尔曼称,只有在保留自由出版研究成果的权利下,才会和NSA合作。
再插一句:NSA与迪菲和赫尔曼的一个分歧是,国家安全局希望能控制加密系统的实时过程,并希望系统以芯片而不是以软件的形式加以推广。对于NSA来说,这样做的好处就是更容易控制,但迪菲和赫尔曼认为,既然未来的加密技术需要对个人通信信息加以保护,那么应该有一种软件的方式来进行操作。
就这样,1975年3月17日, 赫尔曼加密实验室收到了一封美国国家标准局寄来的建议书:一个全新的计算机加密算法系统。他随后发现,在这份标准中,密钥的长度仅为56位。这个密码强度,对于普通人来说很难破解,但对于NSA来说,他们完全有能力动用计算机资源把密钥找出来。
赫尔曼认为,56位长度的密钥是不堪一击的,但国家标准局(以及背后的国家安全局)表示呵呵。这当中的门道一想就知道,NSA不愿意看到,他们监听的信息被功能强大的数据加密算法所保护。
结果是不到一年,迪菲和赫尔曼就找到了更强大的加密解密方法。1976年,他们发表了一篇名为《密码学新动向》的论文,阐述了公钥加密+私钥解密的对称性算法。拥有公钥的人能够在线加密信息,但接收信息的一方只能在拥有私匙的条件下才能解密信息。那么,将加密公匙公开后,通信双方无需提前交换密匙都能秘密、安全地共享信息了。
(就是这篇论文)
正如迪菲和赫尔曼在论文开头所说:在计算机加密领域即将有一场变革。这篇论文奠定了今天计算机通信安全的基石,保证机密数据不会被破解。你不妨设想一下,如果没有这一协议未曾被提出,今天的信用卡交易会是什么样子。
迪菲-赫尔曼秘钥交换及其意义
让我们来看看迪菲和赫尔曼所提出的公钥加密是怎么一回事。
要知道,在1976年以前,所有的加密方法都是同一种模式:甲方选择一种加密规则对信息加密,而乙方使用同一规则对信息解密。这种加密方式的弱点在于:甲方必须把加密的规则告诉乙方,这样,保存和传递密钥就成为了最困难的问题。
而公钥加密的思路是:采用一把公钥、一把密钥,公钥是公开的,任何人都可以获得,而私钥是保密的。加密方获取公钥后对信息进行加密,解密方凭借自己手中的私钥,通过进行运算获取所采用的加密规则并进行解密。
在维基百科里的描述是这样的:
在实践中,只要采用足够大的素因子,那么反向求解a或者b是很困难的。
迪菲-赫尔曼密钥交换技术的意义在于:将加密的公匙和解密的私匙分割开来——拥有公钥的人能够在线加密信息,但接收信息的一方只能在拥有私匙的条件下才能解密信息。那么,将加密公匙公开后,通信双方无需提前交换密匙都能秘密、安全地共享信息了。
这下轮到NSA傻眼了。
毫无疑问,这一协议的提出动摇了NSA的根基:如果人们得到一种加密个人通信信息的方法,就可以有了躲藏的地方,而NSA(或相关情报部门)能够轻松监听破译他们想获取的信息也将成为历史。
《密码学新动向》以及另外一篇讨论DES加密算法的论文发表后,迪菲和赫尔曼与NSA之间的矛盾进一步激化。NSA开始借用自己的权力来限制迪菲和赫尔曼研究成果的传播。
据悉,当时有NSA雇员写信警告出版商,称论文的作者有可能会因为违反限制武器出口的法律而入狱。这些斗争就是著名的“密码大战”。当然,最终公钥并未被扼杀,迪菲和赫尔曼坚持的,是要尽可能地维护最高的密匙标准。
今天,成千上万的人们每天都在使用网银、电子商务网站、邮箱服务器以及云储存,这些服务都依赖着基于迪菲-赫尔曼协议建立的安全连接。
然而,密码大战一直没有结束,在去年的ACM计算机与通信安全会议上,有论文表示,NSA一直在利用“常用的大素数只有那么几个”的漏洞,而针对证书分解的量子计算的进步,也有望破解目前基于迪菲-赫尔曼协议最广泛使用的公开密钥加密算法RSA。但即便如此,FBI还是不得不求助苹果以获取他们希望获得的信息,而苹果的坚持,也正如40年前迪菲和赫尔曼在面对NSA时的勇气。
密码大战的消停与苹果与FBI之博弈都只是在于,它们的加密技术是否还威胁到安全部门。而迪菲和赫尔曼从一开始与NSA的抗争,就是对公民隐私的正义维护。