密码故事(中)

本系列为《密码故事》的书摘,共有上、中、下三篇,各篇链接及包含内容如下:

  • 上篇:单字母替换密码,多字母替换密码。
  • 中篇:加密的机械化,恩格玛机及其破解,象形文字和楔形文字的破解。
  • 下篇:公开密钥,PGP,量子密钥分发。

加密的机械化

20 世纪初,意大利物理学家古列尔莫・马可尼(Guglielmo Marconi)发明了无线电。无线电具有双重特性:易通信性和易拦截性,这在一战爆发后表现得尤为突出。所有成员都想充分发掘无线电的资源,却苦于不知如何保障安全。在 1914 年到 1918 年间,密码编码者提出了几个新密码,但一个个均被破解了。

ADFGVX 密码(ADFGVX cipher:是一战时德军使用的一种密码,在 1918 年 3 月 5 日首次使用。德国的密码编码师组成的一个小组从各种密码中选择了 ADFGVX 密码,他们相信它是不可破解的。这个密码的特点在于它错综复杂,综合了替换和移位两种处理方法。法国密码破译学家乔治斯・佩因芬(Georges Painvin)中尉在 6 月 2 日的晚上,破解了一段 ADFGVX 信息。佩因芬的突破导致了一系列其他密码依次被破解。ADFGVX 密码的破解成了一战期间密码学的典型。尽管产生了无数的新密码,但它们无非是 19 世纪已经破解了的密码的变形或组合。对于密码破译师来说,最大的问题是如何应付信息数量的急剧增长。一战期间,无线电的使用使得截获的信息激增。据估计法国在一战期间共截获的德国通讯信息达 1000 万个单词。

公元前 400 年,中国的孙武在他的著作《孙子兵法》中提到:「三军之事,莫亲于间,赏莫厚于间,事莫密于间。」大意为:在军队中,没有比间谍更为亲近的人,给予奖赏时,没有比间谍更为优厚的,没有什么事情比间谍更为秘密。法国人坚信孙武的话,在磨炼破译密码技能的同时,还发展了几个收集无线电情报的辅助技术。

法国监听员学会了如何辨别一个无线电操作员的「手迹」,一旦一条加密的信息以摩斯电码的形式发送出来,它就变成了一系列的点和短横,而我们可以通过分析每个无线电操作员的传送速度,他的停顿以及点和短横的相对长度来确定他们的身份。此外,法国人还建立了六个方向的搜索站,它们能够检测每个信息发自哪里。每个站点不断移动它的天线直到收到的信号最强,这就确定了信息源的一个方向。通过组合两个或两个以上站点的信息方向,就可能定位出敌方传送线的确切源头。再加上第一条信息即操作员的手迹,就可能确立某特定军营的身份和地点。法国的情报员可以在几天内跟踪它的走向,一般能推出某敌军部队的目的地和军事目的,这种形式的情报搜集被称作信道分析,它在一个新的密码出现后,前期显得非常有用。对于每个新密码来说,密码分析师可能暂时无法破解它,但即使一个信息无法破译,信道分析仍会提供一些有用的信息。

齐默尔曼的电报(Zimmermann Telegram:1917 年 1 月 17 日,英国截获了一个德军电报,由英国海军部的密码局「40 号房」的蒙哥马利教士(Reverend Montgomery)和曾为出版商的内格尔(Nigel de Grey)破解。这封电报由德国新上任的外交大臣阿瑟・齐默尔曼(Arthur Zimmermann)发出,齐默尔曼的策略是从 2 月 1 日起发动无限制潜艇战争,同时为了使美国保持中立,将和墨西哥联盟,说明墨西哥总统进攻美国,收回诸如得克萨斯、新墨西哥以及亚历桑那的领土,同时希望墨西哥总统说服日本也进攻美国,以此牵制美国使其无法派遣部队到欧洲。他将加密电报发给德国驻华盛顿的大使,再转交给德国驻墨西哥的大使,最后转交给墨西哥总统。

密码故事(上)

西蒙・辛格的《密码故事》生动有趣、引入入胜,但中文译本存在多处人名前后翻译不一致的现象,且原著中关于针孔加密法的示例也完全丢失,建议有条件的同学尽量阅读英文原著《The Code Book》。

本文对于专用词汇的翻译不仅做了统一,索性和通用的翻译对齐,所以和中文译本里的译名可能有出入。共有上、中、下三篇,各篇链接及包含内容如下:

  • 上篇:单字母替换密码,多字母替换密码。
  • 中篇:加密的机械化,恩格玛机及其破解,象形文字和楔形文字的破解。
  • 下篇:公开密钥,PGP,量子密钥分发。

单字母替换密码

隐文术:通过把信息隐藏起来的这种秘密通信称为 Steganography(隐文术),由希腊词 Steganos(意为「覆盖」)和 Graphein(意为「写」)派生而来。

希罗多德(Herodotus)以编年史的形式记载了公元前 5 世纪希腊和波斯之间的冲突,其中提到住在波斯的希腊人德马拉图斯(Demaratus)利用已上蜡的一副可折叠的刻写板,先将蜡刮去,再将波斯的阴谋刻写在木板的背面,然后再涂上蜡盖住消息,从而将信息秘密地传递给希腊人。得到警告的希腊人开始武装自己,并最终在波斯人进攻时佯装被包围,并诱使波斯船队进入海湾,运用策略打败了波斯。

希罗多德还讲述了希斯塔亚乌斯(Histaiaeus)的故事:希斯塔亚乌斯想鼓励米勒图斯(Miletus)的阿里斯塔哥拉斯(Aristagoras)反叛波斯国王,为了秘密地传达他的指示,希斯塔亚乌斯剃光了他的一个信使的头发,将信息写在其头皮上,再等信使的头发重新长起来,很明显这段历史时期发生的还不是什么紧急事件。这个信使显然不用携带任何异物,能够自由穿行,不会有麻烦。一旦到达目的地,他就剃光头发,指给联络人看。

中国古代将信息写在小块丝绸上,塞进一个小球里,再用蜡封上,然后让信使吞下这个蜡球。

16 世纪,意大利科学家乔瓦尼・波塔(Giovanni Porta)描述了如何将信息隐藏在一个煮熟的鸡蛋里:把少许明矾和一点醋混在一起制成一种墨水,再用这种墨水将信息写在鸡蛋壳表面。墨水溶液就会经蛋壳上的微孔渗透进去,在已凝固的鸡蛋白表面留下印迹,这样只能剥去蛋壳后才能读取。

早在公元 1 世纪普林尼(Pliny the Elder)就解释了体液如何用作隐形墨水。用体液写的字晾干后即变得透明,但轻轻地加热就能把液体烤焦,从而字迹就以棕色显现出来。许多有机液体都有这样的性质,因为它们富含碳因而很容易被烤焦。事实上,即使是现代间谍也很少知道在标准配备的隐形墨水用完之后还可以用自己的尿液来临时代替。

密码术:在隐文术发展的同时,还有另一种方法也在演化,那就是 Cryptography(密码术),从希腊词 Kryptos(意为「隐藏」)派生而来。密码术的目的不是隐藏信息本身,而是要隐藏它的意思,也就是一种加密的过程。

隐文术和密码术常常混合使用。例如,二战期间流行的微粒照片是一种隐文术。德军在拉丁美洲的间谍将一页文件缩小在直径不到 1 毫米的微型照片上,看上去就是一个点,再将这个点状照片贴在看似无关紧要的一封信的某个句号上面。这种微型照片在 1941 年第一次被美国联邦调查局发现后,德军间谍开始有所防范,在缩小之前,将照片中的信息打乱。

密码术分为两种,即移位和替换。在移位中,字母不变,位置改变;在替换中,字母改变,位置不变。

​澳洲进行曲 D109: 今日双喜

奋战到最后一刻的 Vivian 下山了,趁着还有机会与坡坡结伴。

感谢 Vivian 帮我带回来遗落在山上的大披肩,面对正当冬季的墨尔本,我特别需要它。

再谢 Vivian 带给我的两条清洁纤维滤布,专治玻璃台面的顽固指纹。在房东家这些天,面对三个孩子在玻璃饭桌、玻璃落地门窗、整面墙的穿衣镜前留下的无数指纹,我的内心整日受煎熬,接下来就靠这个擦玻璃的神奇绿布缓解了。

我这边还没夸完,虾饺插嘴说要感谢带货女王 Vivian 又给大家介绍了一种抓住人胃口的汤达人酸辣豚骨方便面。

所以 Vivian,你有毒吗?

澳洲进行曲 D108: 混乱的半决赛之夜计划

作为爱好运动的一家人,周六是澳式足球的半决赛之夜,房东夫妻俩早早安排好计划,怎奈全天事务都在无数次计划变更中推进。

突如其来的夏日骗不了已经习惯气候变脸的 Dan,中午出门的她带着外套去市区给客人化妆。不久后接到 Dan 电话,说等会她姐姐会把 Soph 送回来。尽管之前答应帮忙照顾 Soph 一整天,但计划有变她也无法控制。结果却是 Soph 直到晚上七点才回家。

出门前 Dan 说等会外公外婆会来接双胞胎出门玩。她的“等会”一般约等于“两小时”。三点到家的外公外婆发现 Dan 出门前忘记把车钥匙留给他们,电话沟通后,在家等 Uber 专门送过来。

澳洲进行曲 D107: 解密西式厨房

现在想想周五挺开心的,Soph 上学,双胞胎去托儿所,我就有半天假可以自由活动。不过今天是 Soph 本学期最后一天课,接着有两周的假期。

一点半接她放学时,学校操场正在进行校长总结讲话环节,学生们的校服很可爱,从帽子到皮鞋,装备很齐全。


澳洲进行曲 D106: 有点意思的志愿者日

近几日早餐都是利用上周末买回来的谷物面包变着花样做造型,这也许可以分散对它口感不适的注意力吧。


澳洲进行曲 D105: 用面粉做的橡皮泥

送完 Soph 上学回来,看到 Dan 在飞速地清洁屋子,后来得知是好久不见的朋友要来串门。

我喜欢房东 Dan 的很多方面,她性格开朗、热爱运动,对孩子有耐心但不宠溺。无论是工作还是见客,都会干净打扮以示尊重。尽管很多时候都在找手机和车钥匙,或者询问我有没有看到这个锅铲、那双鞋子,但依然不影响她自身透露的自信和时尚。毕竟很多时候她找不到的东西都是被孩子们拿去藏起来了。

记得刚住进来那几天,Dan 忙得不可开交,挂了这头的电话,那边又要去超市采购一周的食物。她形容自己“24小时都在计划着接下来要做什么”的人。

澳洲进行曲 D104: 大赛前夕的晚餐

早上打扫卫生时,仔细看了下楼梯口这幅黑底白字的装饰画,才发现原来不是简单的商品,而是记录了房东夫妻旅行目的地的重要时间轴。后来我向 Dan 证实了这件事,但是 Dan 说随着孩子们的到来,他俩已经长达七年没有出门旅行了,直到今年 8 月趁着 Soph 生日,全家去巴厘岛度过了三周的长假。

今天才知道,原来巴厘岛是澳洲的“后花园”。

房东家除了有双胞胎,还有一对双胞胎猫仔。他们是兄弟俩,但是 Lolly 和 Mickey 视一切有生命的物体都是女性。Soph 睡眠很浅,因此夜间的猫咪们只能在后屋呆着。Lolly 很爱猫咪,啥东西都想与他们分享。Mickey 最喜欢捉弄猫咪的胡须,但猫咪从不反抗。

澳洲进行曲 D103: 画画我的妈妈

没想到周一竟然需要我独自带双胞胎超过五小时,其实最担心的就是猜不透她俩哪一秒会突然“炸毛”。

除了要及时尾随,还得应对她们时不时询问“妈妈去哪儿了”。整间屋子的玩具都被她们逐个翻出来,去我房间找到一把粉色雨伞,提溜着到处乱走。每样玩具被抓在手上时间超不过五分钟。

最喜欢引导她们去玩蹦床,蹦得越勤快越好,这样可以帮助她们快速消耗精力,随后就能乖乖地跟我去沙发上坐着看动画片了。可是我没想到另一个困惑随之而来,一旦她们靠着我身上入神地看电视时,安静的氛围让我哈欠连天,再加上我是个睡眠质量特别好的人,真担心松弛精神闭目睡一会儿醒来,俩孩子又不知道跑哪里去了。

澳洲进行曲 D102: 家庭日 BBQ

时隔几天,竟然第二次磕出双黄蛋,这大概是双胞胎姐妹带来的幸运吧。

孩子们一大早跟着 Dan 屁股前屁股后地跑着不停歇。等到终于被允许打开化妆包时,才兴奋地转换游玩场地。

孩子们的学习能力总是又快又准,双胞胎姐妹拿起眉笔和粉扑像模像样装扮自己的五官,只是不需要镜子。或者就算突然有了兴趣搬起小板凳去洗手间照镜子,也觉得自己怎么化怎么美。