码书 码书 9.0分

海阔天高终有边

Chelsea.H
2018-05-11 看过

几个世纪以来,密码的故事总能让人神魂颠倒,它总是与阴谋诡计、探寻宝藏、遗嘱确立、特务间谍这些传奇故事息息相关。编码和解码就如同盾与矛,这一防一攻构成了密码学这门技术科学。3000年来,在这场攻防拉锯战中,语言学、数学、通信学、物理学、计算机学等各类学科纷纷投入战场。密码的斗争也是一场知识武器的竞赛。本书讲述了各个时代密码从创建到破解的过程,揭开密码背后那些智慧而非凡的秘密,是一部惊心动魄的信息战争极简史。

第一回合,书写时代。

历史上第一套成熟的密码法“替代式密码”早在凯撒大帝时期就开始使用了。你可以把26个字母任意对应生成钥匙,虽然操作容易,但是安全性却相当高,因为它可以组合出多到令人恐怖的钥匙数量。如果每秒可以检查一种钥匙,那要花上宇宙寿命的10亿倍时间才能检查完所有的可能性。凭借着简单与牢固两大特性,替代式密码风光了公元1至10世纪之间整整一千年。

但是,这套密码最终在阿拉伯人的手下露出了破绽。他们发明了攻破替代式密码的武器,叫做频率分析法。这个武器从语言结构上找到了突破。我们只要分析一下密码文里各字母出现的频率以及语言结构,就有可能破译密码,根本不用一个个地检查钥匙。

强大的频率分析法不仅攻破了替代式密码的防守阵地,还改变了君王生死和国家命运。双方斗法在一次震惊全欧洲的案件中达到了顶峰。16世纪,苏格兰女王玛丽在宫廷斗争中失败而遭受囚禁,她与追随者狱中通信,谋划越狱并刺杀英格兰女王伊丽莎白。这些书信就是用了替代式密码。熟不知,这套密码已在频率分析专家面前毫无招架之力。脆弱的密码比没有密码还要糟糕,玛丽女王太相信她的这套密码了,在信中把整个谋划的细节说得清清楚楚,连参与人员名单也抖了个干净。书信被截获以后,铁证如山,玛丽女王成为了欧洲历史上第一个走上断头台的君主。这桩惊天大案戏剧性地彰显出密码分析学的影响力,替代式密码建立起的一千年的保密王朝轰然倒塌。在加密与解密的首回合较量中,解密一方大获全胜。

第二回合,无线电时代。

第二次世界大战,德国发明了有史以来最可怕的加密系统“恩尼格玛”机,也叫“奇谜”机,意思是像谜一样的机器。一路高歌的解码方真的遇上大麻烦了。

恩尼格玛机是纳粹德国最大的秘密武器。它由键盘、编码器、显示板构成。发报员在键盘上敲下一个明文字母,它就会自动点亮相应的密码字母。这台密码机难以破译的关键,在于它根本不是运行简单的替代式密码,而是同一个字母可以被不同的字母替换。这就降低了高频字母在密码文中出现的频率,频率分析法也就毫无用武之地了。更要命的是,德军每天都会更换钥匙,只要不能在当天破解出密码,那么到了第二天,此前的工作就全都白费。这套难以攻破的密码系统让英、法等大国直接放弃了破解的希望,只有一个国家没有被吓倒,那就是弱小的波兰。好几个世纪以来,人们都认为能破解密码的都是精通语言结构的专家,但是波兰这次却改变了策略,他们将数学家推上了战场。

在波兰邀请的20位数学家中,有一位只有23岁的小伙子,叫马里安·瑞杰斯基。他深知,密码的大敌就是重复,只要重复就会产生破绽。恩尼格玛机还真就被他找到了重复的破绽。德军有这样一个习惯,每天在发送密码前,要先发送钥匙,当然,钥匙也是要加密发送的。他们为了避免无线电干扰或者操作人员的失误,总会将钥匙重复发送两次。没料到,正是这种重复,让波兰人在铜墙铁壁上撕出了一条口子。比如说,当天的钥匙是abc,那么发报员就会在正文前面先打出abcabc,得到加密以后的字母,比如说是defghi。这样,瑞杰斯基找到了线索,既然钥匙是重复两次发送的,那么密码文中第一个字母d和第四个字母g就表示的是同一个字母a呀。从这样一个突破口出发,瑞杰斯基研究了大量的钥匙串,推导出了一套字母之间的关系链。每天用密码的前六个字母对比这套关系链,就能找到当天的钥匙。

波兰攻破恩尼格玛机是密码史上最伟大的成就之一。当英法得知恩尼格玛机已被破解时,个个目瞪口呆,小小波兰的解码成就竟领先世界其他国家十年。然而,波兰的破译能力还是在1938年底达到了极限。德国推出了恩尼格玛机的升级版,增加了编码盘和接线数量,这让钥匙的总数激增了一万五千九百倍,原来的那套字母链已经不适用了,所有工作都要重新开展。但是,小小波兰实在无法承受这项庞大工作所需的人力和财力资源,这一次,他们决定联合同盟国,借助英法的力量,共同抗击敌人。在波兰将他们的宝贵资料移交给英国之后仅仅两个星期,希特勒发动了“闪电战”入侵波兰,波兰国家沦陷。但是,波兰密码学家的心血成果却安全地抵达了英国,在那里,另外一位天才数学家正等待着宣判恩尼格玛机的彻底灭亡。

这位天才就是计算机科学之父、人工智能之父艾伦·图灵。如果说波兰人是利用了对手漏洞进行后方偷袭,那么图灵则是直接与敌人进行正面对抗,他要找的是一种跟重复加密钥匙没有关系的方法。这种方法简单来说就是尝试全部的可能性,对钥匙进行地毯式搜寻。这听上去算是最笨的办法了,但是别忘了,图灵是计算机之父,面对一个机器创造出来的加密系统,他要用机器来予以回击,代替人工完成这个巨大的运算量。

图灵设计的这台机器名叫“炸弹”,它由很多个转盘组成。这些转盘三个一组,每组就相当于一台恩尼格玛机,可以模拟它的加密过程。操作员将推测出来的词组作为线索输入,机器就会自动进行破解,尝试各种组合的可能性。当找到正确的密码时,就能形成一个电流回路,电流一接通就会点亮灯泡,发出成功的信号。这套让纳粹德国信心爆棚的密码系统,在图灵手中被成功地破译了。希特勒就像是当年的玛丽女王,自己的战争部署赤裸裸地暴露在盟军面前。甚至有人认为,破译密码的成就是同盟国胜利的决定性因素,这些幕后英雄用自己的天才改变了全人类的命运走向。而且,正是这次密码学的攻防战,开创了计算机时代的先河。

第三回合,计算机时代。

在前面的书写时代和无线电时代,解码一方都更胜一筹,比分变成2比零。虽然以图灵为代表的解码专家促成了现代计算机的诞生,但与此同时,编码专家也在借助计算机的力量来制造更加强大的密码。

在这个时代,编制密码的观念发生了变化。以往,检验所有的钥匙是人力不可能完成的工作,但是以现代计算机的运算能力,分分钟完成数亿次计算。根本就不需要动用语言专家去分析密码文,计算机直接给你找到钥匙。乍看上去,在计算机时代没有破解不了的密码。但是,密码学专治各种不可能。在20世纪70年代中期,编码专家们开了一个天大的脑洞,打破以往密码学的全部逻辑,获得了两千多年来密码学最伟大的突破。这一突破的核心叫做“非对称加密系统”。

到目前为止,所有加密技术都是对称的,也就是说,解密过程等于是逆向执行加密过程。通信双方使用同一把钥匙,可以互相加密、解密。但是,在非对称加密系统里就不一样了,加密和解密要使用两把不同的钥匙。也就是说,发信人有加密钥匙,可以加密信息,但是如果要解密的话,就必须再搞到一把解密钥匙,没有解密钥匙,连发信人自己都无法破译自己的密码。打个比方,你在家门口放一个信箱,别人给你投递信件,这就好比把信件加了密,可一旦信被扔到信箱里,包括发信人自己也拿不出来了,只有你本人有钥匙,可以打开信箱把信取出。

在这套加密办法里,有两个关键点。第一,这个信箱必须绝对牢固,信件只能进不能出,暴力手段砸不烂。第二,你手里的钥匙必须绝对安全,再强大的计算机也推算不出来。如何做到这两点呢?秘密有两个,一个是单向函数,一个是质数。

我们先来解决信箱牢固的问题,说说单向函数。顾名思义,单向函数就是只能单向运算,不能逆向运算的函数。这就好比说,把黄色颜料和蓝色颜料混在一起变成了绿色颜料,这就像是一个单向函数,因为我们没办法再把两种颜料分离出来了。密码学家就是利用这种函数,设计了一套加密过程:先将信息转换成一个数字,把数字套进单项函数里,求出另一个数字,那这个数字就是信息的密码文。尽管函数公式和求出的结果都是公开的,但你就是推不出原来的数字。它就像是那个信箱,信息一旦套进这个函数,你就别想再取出了。这种函数只有在一种情况下可以求出原值,那就是拿到钥匙。

钥匙就要靠质数了。我们要用质数制造两把钥匙,一个是加密钥匙,一个是解密钥匙。比如,我们选择两个质数7和13作为解密钥匙,把它们相乘得到91,然后用91作为加密钥匙。我们这把加密钥匙公开,让全世界都知道你有一把公开的加密钥匙91。现在,所有人都可以用91来给你发加密信息了。大家需要把91套进前面说的单向函数,得到一个专属于你的单向函数。再把要传递的信息转化成数字,套进你的专属函数里,就得出一条加密信息。这条加密信息想求出它的原值,唯一的办法就是得知7和13这两个数,而这两个数就是你的私人钥匙,也就是解密钥匙。

可是,咱们都知道91是两个质数的乘积了,推算出7和13还不容易吗?当然,实际公开出来的质数乘积至少有308位。数学发展至今2千多年,还从未找到分解两个质数乘积的捷径。就算有1亿台计算机联合起来,要破解这两个质数,也需要1000年的时间。因此,在当下的条件,密码是无法被攻破的。但是,以往的经验告诉我们,每一个所谓无法破解的密码迟早都会被降服,未来是否还会出现新的加密和解密技术呢?

第四回合,量子时代。

我们目前所用的计算机,就算再快,解决问题也得一个一个地处理。但是,如果有一台量子计算机,你就可以一次性把所有的问题同时输入进去,机器本身就会进入量子叠加状态,同时处理这些问题。如同拥有了成百上千个分身,每人探寻一条路径,弹指之间就能找到正确的出路。如果一台传统计算机破解一个钥匙需要1000年的时间,那么量子计算机花不到4分钟就可以完成。在这样强大的计算能力面前,连分解质数乘积都不是事了。如果真的开发出量子计算机,那么编码专家们建立起的非对称加密系统将被彻底攻破。率先掌握它的国家就能洞察世界的一切信息,占据世界计算和信息技术的制高点。可喜的是,2018年5月3日,科学界迎来一则重磅消息,世界上第一台光量子计算机诞生,而且是货真价实的“中国制造”。在这一领域,我国已经挺身成为量子计算机研发的领跑者。

不过,量子计算机就真的让世界没有秘密可言了吗?面对量子计算机,编码专家们也在升级更加强大的加密系统,一套即使面对量子计算机的威力也无所畏惧的加密系统。这套系统同样脱胎于量子力学,它就是量子密码。它的最大优点是你根本就无法窃听。

为什么会这样呢?因为量子有一个神奇的特性,它害怕被人观测。当我们闭上眼睛不去看它,它就像幻影一般经历着世间全部的可能性。可是,只要你一睁眼去观察它,那么一切可能性就将瞬间消失,它会随机选择一种可能性,以一个确定的位置出现在我们面前。不但如此,你还永远无法精准地测量它。因为人类的观测工具实在太宏大了,仅仅是观察和测量这个动作本身,就会不可避免地扰乱它的运动状态。

量子密码正是运用了这样的原理。在通信过程中,传输钥匙的载体是一个个单独的光子。这些光子有不同的偏振方向,代表0或1,只要有人试图窃听和测量这些光子,就会立即改变它们的振动方向,也就改变了光子携带的信息。打个比方说,将军给士兵传送一条量子信息,说“我要发动战争”,敌人一窃听就会干扰信息内容,窃听到的可能就变成“我想吃棉花糖”,窃听也就毫无意义了。而且此时,收发双方会察觉到信号异常,可以立刻结束当前通信,重新建立安全连接,窃听者不可能得到有效的信息。

这套量子密码同此前所有的密码体系都有着本质上的区别。它是一套完美的密码,连理论上被破解的可能性都没有,因为如果它遭到破解,就等于宣告量子力学有误,这对物理学将是毁灭性的打击,人类就被要迫重新检验对宇宙基本运作模式的了解。目前,量子密码还处在发展和完善过程中,如果最终它能实现远距离运作,那么密码的进化史就将写下句号,人类对保密的追求也将就此结束。胜利属于编码者。

以上就是密码的发展史。小小密码如同人类历史长河中的明珠,虽然悄无声息地只在暗中较量,却将众多学科串联在一起,闪耀着人类智慧的光芒。加密和解密这一来一往,更是人类探索不止、勇攀巅峰的最好注脚。

0 有用
0 没用

查看更多豆瓣高分好书

评论 0条

添加回应

码书的更多书评

推荐码书的豆列

了解更多图书信息

豆瓣
免费下载 iOS / Android 版客户端