很多时候,一个设计精巧的密码就像数学难题一样,许许多多难以破解的密码让人青丝泛白,至今仍未见天日。不过,也有一些密码中的幸运儿,最终仍然迎来了真相大白的那天。
秘密组织的手抄本密码这份超过 75000 个字母的手抄加密文件名叫 “Copiale cipher”。它被认为是在 18 世纪下半叶出现在德国的,其创造者是一个类似共济会的秘密组织,因此这份密码被认为含有关于思想史与秘密组织的重要信息。但在南加州大学的计算机专家凯文?奈特(Kevin Knight)的帮助下,这个密码被成功破译。凯文?奈特是破译小组中的一员,他本是一位计算机翻译方面的行家,但是这次破译密码意外地用上了他的专长。

2003年,丹布朗的小说《达芬奇密码》火爆全球。但是“枪打出头鸟”,这本火热而又挑战禁忌的小说一出来就遭到非议颇多,有人认为内容涉嫌抄袭《圣血和圣杯》,最后闹到打官司。在2006年,伦敦的法庭宣布对《达芬奇密码》抄袭的检控不成立,而富有娱乐精神的法官彼得?史密斯(Peter Smithy)在最后长达 71 页的裁决书中悄悄地嵌入了一段密文:
s m i t h y c o d e J a e i e x t o s t g p s a c g r e a m q w f k a d p m q z v有趣的是,这段密文的解密过程与《达芬奇密码》的第一个密码有关,都涉及到了斐波那契数列表示的字母轮换。而且大法官为了增加难度,故意对密文进行了改写:
密文中的第二个 t 其实应该是 h最后一个字母没有被译成密码解密时,一些字母要按照反方向进行置换伦敦的法律分析师丹尼尔?坦奇(Daniel Tench)首先发现了这段密文,紧随其后泰晤士报也报道了这段信息,还把那份裁决书发到网上,开放论坛给蜂拥而至的解码者,一时间在全球掀起了一股解谜风潮。丹尼尔?坦奇最后成为了第一个破解密码的人,因为史密斯法官在与他交流的几封邮件中透露了许多的解密提示。这也导致众多解密爱好者们纷纷表示法官的“剧透”严重影响了大家享受这次解密的乐趣。
这段密码的明文是:
Smithy Code Jakie Fisher who are you Dreadnought法官后来解释说,他自己是 Fisher 的粉丝很多年了。海军上将Admiral John “Jackie” Fisher 被认为是皇家海军历史上的第二号重要人物,他革新海洋军事作战方式,引入了第一艘现代战舰“大无畏”号(HMS Dreadnought)。史密斯花了大概 40 分钟将这个密码编入裁决书里纯粹是逗自己玩儿的,从没想到有人居然会注意到。这也给这桩侵权诉讼增添了一个可爱的花絮。
爱伦?坡的密码挑战

爱伦?坡画像。图片来源:壹周网
爱伦?坡被认为是现在推理小说的鼻祖。他本人也对密码十分热衷,常常在自己的诗歌或者散文中隐秘地嵌入一些密码。除了在他的小说《金甲虫》中设置众多的密码对读者的智力进行折磨外,爱伦?坡还在一本流行杂志上公然向所有读者挑战:邀请大家设计密码考验他。他也确实是一名专家,据说陆陆续续地解开了上百个读者寄来的密码。
在此期间,有一位名叫 Mr. W. B. Tyler 的读者写了两个密码寄给爱伦坡。这两个密码不但没有得到解答,反而还被直接被刊登到了杂志上。这是爱伦坡唯一公开的未解之谜。一时间众说纷纭,更有甚者大胆猜测 Tyler 实际上就是他的笔名。
教授终于解开了第一份密码。他走出的第一步是发现了“逗号-匕首-小节”这样的组合在八行里面出现了七次:
借助电脑的力量破译。破译的细节在这份 PDF文件 中,有兴趣的读者可以自行研究。
很遗憾的是,最终得到的完整明文看起来只是节选自某本小说的一段话而已。密码虽然被破译出来了,但 Tyler 究竟是谁,为什么爱伦坡没有破译他的密码?这个历史悬案恐怕没人能回答了。
混乱加密法1918年,一位名为伯恩(Byrne)的人设计了一个叫做 “Chaocipher” 的加密算法。他自认为这个算法的规则简单,但难以破解。同时他制造了一个用于演示加密过程的实体机器。不过令人失望的是,这套算法并没有引起任何组织或者政府的兴趣。伯恩最后选择在 1951 年出版的自传“Silent Years”中对世人宣布这个加密算法的存在,并向任何能破解此密码的人提供赏金。
在当时,世界上恐怕也只有 3 个人知道这个算法的细节:伯恩的儿子与两个 Cryptogia 杂志的编辑。将近 60 年过去了,仍然没有人能够获得赏金,更有传言称这个加密术实际上已经失传了。最后在 2010 年,伯恩的家人决定将所有与 Chaocipher 有关的文章以及机器捐给博物馆,这个神秘的密码系统最后才得以重现人间。
右边的圆盘+号下代表明文的字母,左边的圆盘+号下代表加密后的密文字母。总的来说加密过程分为三步:
⒈ 将两份字母表打乱后摆在两个圆盘上
⒉ 将右边圆盘中的待加密字母旋转到+号之下,同时带动左边圆盘转动,此时左边+号对应的字母便是加密的结果
⒊ 按照一定的规则改变两边圆盘的部分字母顺序
对于每一个明文中的字母都进行这样的加密。这个看起来简单清晰的动态加密过程实际上有着复杂的加密规律,在无人知道细节的情况下,很难破解,难怪还有人将其拿来与二战时期鼎鼎大名的 Enigma 进行比较。试想如果伯恩一家人没有捐出这些资料,真的会有人解开这个密码么?
主要参考资料:
[1] Famous Unsved Codes That Have Since Been Sved
[2] Modern Algorithms Crack 18th Century Secret Code
[3] The Smithy Code
[4] 维基百科: Smithy code
Via:果壳网
金融工程, 数学算法