论文部分内容阅读
这是一个真实的故事:美国旧金山地区接连发生20多起恐怖连环杀人案,一名自称“黄道带”(十二宫)的凶手,每次作案之后都会向警方和媒体发送含有密码的信件炫耀他的杀人经过。到1974年为止,他寄送的所有信件中共包含了四道密码和一些经过加密的内容,目前仍有三道密码未被解开,该系列案件至今也仍未被侦破。
虽然这个故事发生在上世纪60年代末,但是“十二宫”像一个魔咒一样使人们胆战心惊。
密码到底是什么?
通俗地讲,密码是用特定的加密法则,将原本人们都能读懂的信息变成除通信双方以外其他人都不能读懂的信息编码。科学的解释就是,通信双方按约定的法则进行信息特殊变换的一种重要保密手段。
这种信息特殊变换的手段分为加密交换和脱密交换:加密交换即变明文为密文;脱密交换即变密文为明文。
密码的体制(基本类型)有四种:错乱、代替、密本、加乱。
错乱——按照规定的图形和线路,改变明文字母或数码等的位置成为密文;
代替——用一个或多个代替表将明文字母或数码等代替为密文;
密本——用预先编定的字母或数字密码组,代替一定的词组单词等变明文为密文;
加乱——用有限元素组成的一串序列作为乱数,按规定的算法,同明文序列相结合变成密文。
以上四种密码体制,既可单独使用,也可混合使用 ,以编制出各种复杂度很高的实用密码。
明密变换,错乱,代替,加乱,密本……密码体制如此多的概念是不是听起来很绕?其实,我们可以极不精确、但极通俗地为密码下个朗朗上口的定义:密码就是错别字。
这里说的“错别字”可不是小学生在课堂上无心写出的错别字,而是“有意写错”的,“有意写错”的目的在于让别人无法了解本意。
那我们在生活中习以为常的那些“密码”,如“银行密码”、“登录密码”等是上面谈到的密码吗?严格说来它们不是真正意义上的密码。比如:刷银行卡时,刷卡机要求我们输入的“密码”,确切地说应该被称为“口令”。“口令”并不是依照密码的加密规则对“用户名”之类的信息进行加密后得到的,而且也不能通过正常的脱密规则“还原”出初始的用户名,它只不过提供了一个额外的身份验证信息而已。而类似这种没有经过标准加密变换机制生成的所谓“密码”,当然也就根本不能算是真正的密码。
密码——源于军事
这个密码的故事发生在三个国家之间,分别是雅典、斯巴达和波斯帝国。公元前431年伯罗奔尼撒战争(Peloponnesian War)爆发,它是以雅典为首的提洛同盟与以斯巴达为首的伯罗奔尼撒联盟之间的一场战争。
作为斯巴达的同盟波斯帝国,一直用资金资助斯巴达壮大自己的武装,但就在公元前405年,在斯巴达和雅典的战事即将进入尾声的时候,波斯帝国突然改变了态度,停止了对斯巴达的一切援助。波斯帝国的意图很明显,这场持续了近30年的战争不论结局如何,雅典和斯巴达已经元气大伤,波斯帝国何不坐看风云,等收渔翁之利呢。
在这种情况下,斯巴达急需摸清波斯帝国的具体行动计划,以便采取新的应对策略。而恰在这时,斯巴达军队捕获了一名从波斯帝国回雅典送信的雅典信使。斯巴达的士兵坚信这个信使身上一定藏有重要的军事情报。但在这名雅典信使的身上除了搜出一条布满杂乱无章的希腊字母的普通腰带外,别无所获。
情报究竟藏在什么地方呢?当时一名叫莱桑德的斯巴达军队统帅把注意力集中到了这条腰带上,他认为情报一定就在这些杂乱的字母当中。他尝试用各种方法重新排列组合,却怎么也解不出来。最后,他失去了信心,不再研究腰带上的内容,他开始一边摆弄腰带,一边思考寻找情报的其他途径。当他把腰带呈螺旋状缠绕在手中的剑鞘上时,奇迹出现了。原来腰带上杂乱无章的字母,竟组成了一段文字。现在可以断定这是雅典送回的一份情报,它告诉雅典,波斯军队准备在斯巴达军队发起最后攻击时,突然对斯巴达军队进行袭击。
最终根据情报的内容,斯巴达军队调整了作战计划,击退了波斯军队,解除了后顾之忧。
这个腰带上的情报就是世界上最早的密码情报。它的原理是这样的:通信双方要事先约定解读密码的规则,然后通信一方将腰带(或羊皮等其他东西)以螺旋状缠绕在约定长度和粗细的木棍上,然后将要传递的信息沿木棍纵轴方向从左至右写在皮带上。写完一行,将木棍旋转90°,再从左至右写,直至写完。最后将腰带从木棒上解下展开,腰带上排列的字符即是一段密码。收信一方接到后,也要将腰带缠绕在同样长度和粗细的木棍上,才能读出原始信息。这样,即便腰带中途被截走,只要对方不知道棍子的粗细,所看到的也只是一些零乱而无用的字句。因此,斯巴达军队最终的胜利,是否应该归功于那个符合“规格”的剑鞘呢?
不得不感慨,在没有计算机和神奇的解密设备的时代,前人是利用“全手动式”的方法来进行加密解密的,他们的聪明才智值得世人敬佩。
凯撒(César)密码
在战争中,指挥官对前方将领的命令关系着整场战役的成败,尤里乌斯·凯撒(Jules César)作为一名杰出的军事领袖,当然也深知这一点。于是,凯撒设计了一种对重要的军事信息进行加密的方法,即使这些信息被截获,敌方也不一定能看懂——这就是著名的凯撒密码。
凯撒密码作为一种最为古老的对称加密体制,在古罗马非常流行,它的基本思想是通过把字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。加密、解密过程都是以字母移位的位数为参照的。这种在加密和解密的算法中依赖的参数则被称为密钥。
例如,A到Z的每个字母加密时它的密钥为4,向右偏移,那么所有的字母A将被替换成E,B被替换成了F,以此类推Y变成C,Z变成D。明文信息如果是INK,那么编译后的密文就变成了MRO;密文HSK对应的明文则是DOG。 当然,移位的选择并不仅仅限制在4位,从1到25任何数的移位都能产生类似效果。只要通信双方事先约定好,这个选择就很随意。
很明显的是,移位方法最多也只有25种,这成为凯撒密码的致命弱点。一般情况下,穷举(穷举法,或称为暴力破解法,是一种针对于密码的破译方法,即将密码进行逐个推算直到找出真正的密码为止。)25种移位方法,得到25组新编码,必有一种编码是真实的情报内容,由于其它24组多是毫无意义的字母组合,所以凯撒密码很容易就能被破译。
尽管如此,凯撒在当时还是很成功地使用了这种密码,他在《高卢战记》中颇为得意地记录了这个加密设计。这个设计之所以未被破译,究其原因,只能是他的敌人并没有意识到他在使用密码。
维热纳尔(Vigenère)密码
(维吉尼亚密码)
1586年,一位名叫维热纳尔(Blaise de Vigenère)的法国外交家出版了一本《密码理论》,介绍了一种以他自己名字命名的新密码,而这本书一直无人问津。直到200年后摩尔斯电码(Morse alphabet)流行开来,为了防止电报员泄露信息和间谍窥探秘密,维热纳尔密码才被广泛应用。
维热纳尔密码用严格的轮换方式重复使用一串简单的代换密码(密钥),很好地伪装了基础语言中的字母频率。在伪装的同时,他还有很多变化,比如有一种可以允许密钥词中出现重复字母。每种变化都会产生一些新的特征,从而引发破译方式的变化。利用这种加密方式,同样的E在一个位置可能被M所取代,而在另一个位置则有可能以K的面目出现。这样,就可以防止任何人利用频率分析法解密该条信息。
在维热纳尔密码中,发件人和收件人使用相同的密钥,这个密钥告诉他们怎么样才能前后改变字母的位置来获得该信息中的每个字母的正确对应位置。
维热纳尔密码一度被认为是无法破译的,以致让一些掌握这种密码的人洋洋自喜,不过很快,以建立了现代计算机的理论框架而闻名于世的怪才查尔斯·巴贝奇(Charles Babbage)就解决了这个难题。
细说起来,这件事情的经过还是挺有意思的。当时,有个叫斯维提斯(JohnHall Brock Thwaites)的人,声称自己发明了一种新密码,所以于1854年写信给《艺术协会杂志》。而这个所谓的新密码只不过是将维热纳尔密码重新包装了而已。查尔斯·巴贝奇写信揭露这个事实,斯维提斯却不愿承认,甚至为难巴贝奇让他破解这个密码。其实能否破解密码和密码是不是新创造的毫无关系,但这已足以激起巴贝奇的好奇心了。很快,他就成功破解了维热纳尔密码。
对于这样重要的成果,巴贝奇却没有发表它。这也符合他的性格:他一直是这种懒洋洋的态度。而更重要的原因恐怕是英国政府要求巴贝奇保密,从而让他们可以在这方面领先全世界9年。
1863年,一位业余数学爱好者、时年58岁的普鲁士退役炮兵少校弗里德里希·卡西斯基(Friedrich Kasiski)出版了一本小册子,名字叫《密写和破译的艺术》(Die Geheimschriften und die Dechiffrierkunst)。在书中,卡西斯基明确地提出了维热纳尔密码破解的理论和操作手法。
有趣的是,在美国的南北战争期间(1861年4月~1865年5月),南方联军仍然在使用黄铜密码盘生成维热纳尔密码,自始至终只主要使用三个密钥,而那个时候这密码早就被破译了,所以北方政府在情报战上一直是笑而不语的。
摩尔斯电码(Morse alphabet)
当人们看到密码,看到关于密码的文章,可能首要想到的是摩尔斯密码。但是通过对凯撒密码和维纳热尔密码的“实际操作”,你一定会犹豫,摩尔斯密码真的属于我们所说的这种密码吗?答案是否定的。
摩尔斯电码(又译为摩斯电码)是一种时通时断的信号代码,这种信号代码通过不同的排列顺序来表达不同的英文字母、数字和标点符号等。它的组成具备密码的部分特征。1837年,美国人摩尔斯(Samuel Finley Breese Morse)发明了这种电码。当时他正在协助塞缪尔·莫尔斯(Samuel Morse)进行摩尔斯电报机的发明(1835年)。
摩尔斯电码由两种基本信号和不同的时间间隔组成:短促的信号点(dot)用“·”表示,读作“Di”;保持一定时间的长信号划(dash)用“—”表示,读作“Da”。一点为一基本信号单位,一划的长度等于三点的时间长度;点划之间的间隔是一个点的长度;字元之间的间隔是三个点的长度;单词之间的间隔是七个点的长度。
数字对应单词,需要查找一本代码表才能知道每个数对应的词。
作为一种信息编码标准,摩尔斯电码拥有其他编码方案无法超越的持久的生命力。但由于通讯技术的进步,各国已于1999年停止使用摩尔斯码,但由于它所占的频宽最少,又具有一种技术与艺术相融合的特性,在实际生活中仍有广泛的应用。
这是一段摩尔斯密码,你知道它是什么意思吗?
●● ●—●●— — —●●●—● —●— — — — —●●—(I Love You)
何冰专门负责破译敌方密码,在一次破译密码时误将“重庆”译为“老鬼”,致使自己的同伴被杀。还记得电影《听风者》中的这段情节吗?密码的发展其实就是编制密码与破译密码的博弈。很多时候,一个设计精巧的密码就像数学难题一样,当解题人被“困在”关键步骤的时候,那种苦恼难以言表,只有经历过的人才知道。有的密码至今仍未见天日,也有一些密码中的“幸运儿”,最终迎来了真相大白的那天。
十二宫杀手密码
1969年7月31日,美国《旧金山纪事报》收到了一封特殊的信件。写信者声称自己对赫曼河和瓦列霍的谋杀案负责,并准确地说出了只有警察和杀手知道的部分案件细节。在信中他附上了一段密文,指出只要破译密文就能知道他杀人的过程,同时也能找到他。写信者声称如果不将密文发表在报纸上,就会有人因此而死亡。这封特殊的信件引起了报社管理人员的重视,他们联络了当地警察局证实了信中的内容,同时得知《观察家报》《瓦列霍时报》也收到了不同的密文,三家报社的密文组合在一起就是一封完整的“杀人过程”。 这段密文共有 408 个符号,大家都习惯称它为“ 408 密文(408-cipher)”。408 密文是十二宫杀手的第一封密信。一个星期后,一位教师和他的妻子破解了这篇密文。大卫·芬奇的电影《十二宫杀手》完整地记述了这一事件。
“408 密文”用的是最简单的字母替换法,所不同的是一个字母可能对应多个符号。这种加密方法可以很好地防止字频破解法,因为你可以让常用的字母对应更多的符号,保证每个符号出现的次数大致相等。不过,破解这样的密码也不是完全没有突破口,“字母 Q 后面一定是 U”等英文特点能提供不少线索。这种一对多的替换加密方法就叫做同音替换法(Homophonic Substitution Cipher)。
同年 11 月 8 日,十二宫杀手又寄出了一篇密文。这篇密文有 340 个字符,被称作“340 密文”。与“ 408 密文”不同的是,虽然大家都相信 “340 密文”同样使用的是同音替换加密,但直到现在“ 340 密文”也没有解开。
达芬奇密码侵权案中的密码
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
有趣的是,这段密文的解密过程与《达芬奇密码》的第一个密码有关,都涉及到了斐波那契数列表示的字母轮换。而且大法官为了增加难度,故意对密文进行了改写。
伦敦的法律分析师丹尼尔·坦奇(Daniel Tench)首先发现了这段密文,紧随其后《泰晤士报》也报道了这段信息,还把那份裁决书发到网上,开放论坛给蜂拥而至的解码者,一时间在全球掀起了一股解谜风潮。丹尼尔·坦奇最终破解了这段密码。这段密码的明文是:Smithy Code Jakie Fisher who are you Dreadnought。据法官后来解释说,他一直是Fisher 的超级粉丝。Admiral John “Jackie”Fisher是一位海军上将,他被认为是皇家海军历史上的第二号重要人物,他革新海洋军事作战方式,引入了第一艘现代战舰“大无畏”号(HMS Dreadnought)。史密斯花了大概 40 分钟将这个密码编入裁决书里纯粹是逗自己玩儿的,从没想到有人居然会注意到。这也给这桩侵权诉讼增添了一个可爱的花絮。
CIA 的雕塑密码
你可曾注意过美国中央情报局(CIA)总部庭院的一个充满阳光的角落?那有一个刻满密码的雕塑作品——Kryptos。Kryptos铜像高10英尺,呈S形,上面刻有字母密码,每个字母高3英寸,Kryptos在希腊语中意为“隐藏的”。这座雕像于23年前完工,雕刻家吉姆·桑伯恩和已退休的中情局密码破译中心负责人爱德华·沙伊特合作完成了这道谜题作品,为的是让1991年完工的中央情报局总部广场拥有一座既美观又与中情局工作有关的雕塑。
起初对它感兴趣的只有那些政府机构的密码破译员。十几年后,再一次掀起的破译Kryptos热潮源于惊险小说《达芬奇密码》,作者丹·布朗列出了一系列线索,暗示Kryptos很重要。
铜像中的密码分为四部分。前三个部分已被破译,尽管2010年11月桑伯恩本人给出了一点提示,但目前第四部分仍然没有被解决。
如今,全世界许多神秘事物的爱好者们加入了政府安全机关人员的行列,试图解开这个谜团。
比尔密码
尼古拉斯·凯奇在电影《国家宝藏》中饰演一位喜爱考古的冒险家,他曾听父亲讲述过一个关于宝藏的故事,为了找到宝藏完成自己的梦想,从此他踏上了探险的旅程。你是否也梦想自己能得到一张藏宝地图,与电影中的主人公一样上演一段破译密码探寻宝藏的传奇故事?你的机会来了。据说,在 1820 年,一个叫做托马斯·杰斐逊·比尔(Thomas Jefferson Beale)的人在弗吉尼亚贝德福县的某个地方埋藏了大量的宝藏,随后把装有三封密信的盒子交给了一个名叫罗伯特·莫里斯(Robert Morriss)的旅店老板代为保管,之后就永久地消失了。莫里斯死前把盒子里的三份密文交给了他的朋友詹姆斯·沃德。从此沃德开始沉溺于密码之中,努力破译密码,在研究过程中,沃德发现把《独立宣言》作为密钥可以解开第二部分密码。后来沃德把这段故事连同密码全文一道印成了小册子,宝藏之谜就这样流传了下来。
被沃德破译出的第二份密码中详细记录了所藏宝藏的数量,现在看来至少值 6500 万美金。这份密文中还说到,宝藏的埋藏地点详细地记在了第一份密码内,而第三份密码里则记录着宝藏原主人的下落。虽然各方神圣都把五花八门的手段试了个遍,但到目前为止,剩下的两份密码都还没被破解。不过,也有一些人对整个故事进行了理性的分析,认为比尔密码不过是一场骗局。
Dorabella 密码
英国作曲家爱德华·艾尔加(Edward Elgar)擅长多种乐器,自学作曲。他除了在音乐创作方面很有天赋外,还在1897年为世人留下了一个密码难题。
艾尔加给挚友多拉小姐(Miss Dora Penny)留下了一封信。这封信上写着 87 个歪歪扭扭的符号,里面明显藏着艾尔加想对多拉小姐说的话。多拉本人一直没能读懂这封信。1937 年,多拉出版了自己的回忆录,将这份密码公之于众。这个密码直到现在仍未被破解。艾尔加到底想对多拉小姐说些什么呢? 密码全文如下:
71.194.38.1701.89.76.11.83.76.11.83.1629.48.94.63.132.16.111.95.84.341
975.14.40.64.27.81.139.213.63.90.1120.8.15.3.126.2018.40.74
750.405.604.230.436.664.502.150.251.204.300.231.124.211.486.225
401.370.11.101.305.139.189.17.33.88.208.193.145.1.94.73.416
910.263.28.500.538.356.117.136.219.27.176.130.10.460.25.485.18
436.65.84.200.283.118.320.138.36.416.280.15.71.224.961.44.16.401
39.88.61.304.12.21.24.283.134.92.63.246.486.682.7.219.184.360.780
18.64.463.474.131.160.79.73.440.95.18.64.581.34.69.128.367.460.17
81.12.103.820.62.110.97.103.862.70.60.1317.471.540.208.121.890
346.36.150.59.568.614.13.120.63.219.812.2160.1780.99.35.18.21.136
(部分比尔密码)
秘密组织的手抄本密码
一份超过7.5万个字母,长达105页的手抄加密文件,就是著名的科比亚勒密码(Copiale cipher)。科比亚勒密码著于1760年至1780年之间,冷战期间在东柏林被发现。它是用非常昂贵的金色丝绸以及两种不同的高品质墨水书写而成,内文由90个不同的字符,包括罗马和希腊字母、变音符号和抽象符号等组成。
2011年,美国加州大学的科学家凯文·奈特利用电脑翻译技术破解了科比亚勒密码。证实了这份神秘的手卷与250多年前的秘密社团共济会有关。现在这份秘密文件内容已经被放到网上,可以读到完整的英文版。
看过以上的密码,是否勾起你对密码研究的兴趣呢?其实密码分析不是 1+1 的问题,而是要求密码分析者对语言有一定的研究、有较高的文化修养、有较强的逻辑推理,以及一种特殊的直觉。
你的“密码”安全吗?
关于“口令”并非“密码”的情况前文中已经有所交代,但是在生活中人们还是习惯性地将邮箱登录、QQ登录等“口令”称为“密码”。
密码与我们的生活密切相关,但是你的密码安全吗?有人说越复杂的密码越安全,也有人说越长的密码越安全。每个方法你可能都试过了,但是你并没有看到什么明显的好处,反倒是你被那些复杂的长密码所累。其实,世界上没有绝对安全的密码。
我们的密码是怎样被破解的?
举一个例子:有一个黑客,潜入一家公司的服务器,准备偷取一份秘密文件。但由于这份文件是被加密的,所以黑客不可能直接登入这个账号。假设文件的密令是“hello”,在文件中这条密令就会被加密为类似“$r6T8SUB9$Qxe41FJyF/3gkPIuvKOQ90”的字符。黑客不可能随随便便就把这串字符解开,因为他知道文件是被“单向加密”的。而这名黑客能做的,仅是将上百万种可能性加入同一个加密算法进行测试,直到这个密码刚好被“蒙中”,得出的结果与那一连串的字符相符合。只有这样他才能知道自己找到了那个密码。
假设有一个黑客的电脑每秒钟能猜测1000种五位纯字母、完全随机、全部小写的密码组合,比如“fpqzy”,那最多需要3小时45分就能破解成功。
为什么你的密码不安全
在现实生活中,我们都选择“一把钥匙开一扇门”。谁都不会希望有一把钥匙既能用来开家门,也能用来开汽车门,因为这把“万能钥匙”一旦丢失,损失将是非常惨重的。
其实在网络上也是如此。网上银行、邮箱、淘宝、微博的登录密码——在你脑子里乱七八糟的存在着。你也清楚,访问不同的网站,必须选择一串不一样的、排序复杂的字母、数字和符号做密码,然后把它们背下来。可是你不会真这么做,因为你知道自己的脑子没有这种能力。况且随着你的网络账号越来越多,就需要注册更多地用户名及密码。这时你可能就会想到用一个密码打开你的所有账户,即“万能的钥匙”。但重复使用同一个密码的危险程度远远高于一个设置较弱的密码。
虽然部分人意识到了这点,并且为了避免这种情况发生,相当一部分人选择将密码分为两部分,一个是主要部分(比如是123456 ),另一部分则根据账户而定。例如:QQ 的密码就设为 qq123456 ,而 gmail 的密码则是 gmail123456 等等。但如此直白的设置,颇有掩耳盗铃的味道,一旦一个账户失窃,看穿这个规律,也不过一秒的事情而已。
为了避免上述的风险,大家开始设定多个又长有复杂的密码。但复杂的长密码并不容易记住,更何况是要记住好几个这样的密码。在经历了多次遗忘密码、找回密码的痛苦之后,人们开始倾向于选择那些容易让自己记住的信息作为自己的密码,如自己名字的首字母、出生年月日、电话号码等等。但这恰恰把安全隐患留给了躲在暗处的黑客。
有人对用户的密码做过统计,研究他们设置密码时的偏好。61% 的用户喜欢使用人名、地名、字典词汇和纯数字来设置他们的密码。甚至还有26%的用户直接把他们的用户名当成密码使用(比如把[email protected]的密码直接设置为kexuejia)。
这些都是具有安全隐患的密码设置策略!黑客们了解用户的密码设置习惯后,就可以编写“密码词典”,有了这本词典后,就可以在暴力破解的时候大大提高精准性。
在未来的某一天,也许会有革新能够彻底将密码代替,我们不用再操心这些事情,也许……
虽然这个故事发生在上世纪60年代末,但是“十二宫”像一个魔咒一样使人们胆战心惊。
密码到底是什么?
通俗地讲,密码是用特定的加密法则,将原本人们都能读懂的信息变成除通信双方以外其他人都不能读懂的信息编码。科学的解释就是,通信双方按约定的法则进行信息特殊变换的一种重要保密手段。
这种信息特殊变换的手段分为加密交换和脱密交换:加密交换即变明文为密文;脱密交换即变密文为明文。
密码的体制(基本类型)有四种:错乱、代替、密本、加乱。
错乱——按照规定的图形和线路,改变明文字母或数码等的位置成为密文;
代替——用一个或多个代替表将明文字母或数码等代替为密文;
密本——用预先编定的字母或数字密码组,代替一定的词组单词等变明文为密文;
加乱——用有限元素组成的一串序列作为乱数,按规定的算法,同明文序列相结合变成密文。
以上四种密码体制,既可单独使用,也可混合使用 ,以编制出各种复杂度很高的实用密码。
明密变换,错乱,代替,加乱,密本……密码体制如此多的概念是不是听起来很绕?其实,我们可以极不精确、但极通俗地为密码下个朗朗上口的定义:密码就是错别字。
这里说的“错别字”可不是小学生在课堂上无心写出的错别字,而是“有意写错”的,“有意写错”的目的在于让别人无法了解本意。
那我们在生活中习以为常的那些“密码”,如“银行密码”、“登录密码”等是上面谈到的密码吗?严格说来它们不是真正意义上的密码。比如:刷银行卡时,刷卡机要求我们输入的“密码”,确切地说应该被称为“口令”。“口令”并不是依照密码的加密规则对“用户名”之类的信息进行加密后得到的,而且也不能通过正常的脱密规则“还原”出初始的用户名,它只不过提供了一个额外的身份验证信息而已。而类似这种没有经过标准加密变换机制生成的所谓“密码”,当然也就根本不能算是真正的密码。
密码——源于军事
这个密码的故事发生在三个国家之间,分别是雅典、斯巴达和波斯帝国。公元前431年伯罗奔尼撒战争(Peloponnesian War)爆发,它是以雅典为首的提洛同盟与以斯巴达为首的伯罗奔尼撒联盟之间的一场战争。
作为斯巴达的同盟波斯帝国,一直用资金资助斯巴达壮大自己的武装,但就在公元前405年,在斯巴达和雅典的战事即将进入尾声的时候,波斯帝国突然改变了态度,停止了对斯巴达的一切援助。波斯帝国的意图很明显,这场持续了近30年的战争不论结局如何,雅典和斯巴达已经元气大伤,波斯帝国何不坐看风云,等收渔翁之利呢。
在这种情况下,斯巴达急需摸清波斯帝国的具体行动计划,以便采取新的应对策略。而恰在这时,斯巴达军队捕获了一名从波斯帝国回雅典送信的雅典信使。斯巴达的士兵坚信这个信使身上一定藏有重要的军事情报。但在这名雅典信使的身上除了搜出一条布满杂乱无章的希腊字母的普通腰带外,别无所获。
情报究竟藏在什么地方呢?当时一名叫莱桑德的斯巴达军队统帅把注意力集中到了这条腰带上,他认为情报一定就在这些杂乱的字母当中。他尝试用各种方法重新排列组合,却怎么也解不出来。最后,他失去了信心,不再研究腰带上的内容,他开始一边摆弄腰带,一边思考寻找情报的其他途径。当他把腰带呈螺旋状缠绕在手中的剑鞘上时,奇迹出现了。原来腰带上杂乱无章的字母,竟组成了一段文字。现在可以断定这是雅典送回的一份情报,它告诉雅典,波斯军队准备在斯巴达军队发起最后攻击时,突然对斯巴达军队进行袭击。
最终根据情报的内容,斯巴达军队调整了作战计划,击退了波斯军队,解除了后顾之忧。
这个腰带上的情报就是世界上最早的密码情报。它的原理是这样的:通信双方要事先约定解读密码的规则,然后通信一方将腰带(或羊皮等其他东西)以螺旋状缠绕在约定长度和粗细的木棍上,然后将要传递的信息沿木棍纵轴方向从左至右写在皮带上。写完一行,将木棍旋转90°,再从左至右写,直至写完。最后将腰带从木棒上解下展开,腰带上排列的字符即是一段密码。收信一方接到后,也要将腰带缠绕在同样长度和粗细的木棍上,才能读出原始信息。这样,即便腰带中途被截走,只要对方不知道棍子的粗细,所看到的也只是一些零乱而无用的字句。因此,斯巴达军队最终的胜利,是否应该归功于那个符合“规格”的剑鞘呢?
不得不感慨,在没有计算机和神奇的解密设备的时代,前人是利用“全手动式”的方法来进行加密解密的,他们的聪明才智值得世人敬佩。
凯撒(César)密码
在战争中,指挥官对前方将领的命令关系着整场战役的成败,尤里乌斯·凯撒(Jules César)作为一名杰出的军事领袖,当然也深知这一点。于是,凯撒设计了一种对重要的军事信息进行加密的方法,即使这些信息被截获,敌方也不一定能看懂——这就是著名的凯撒密码。
凯撒密码作为一种最为古老的对称加密体制,在古罗马非常流行,它的基本思想是通过把字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。加密、解密过程都是以字母移位的位数为参照的。这种在加密和解密的算法中依赖的参数则被称为密钥。
例如,A到Z的每个字母加密时它的密钥为4,向右偏移,那么所有的字母A将被替换成E,B被替换成了F,以此类推Y变成C,Z变成D。明文信息如果是INK,那么编译后的密文就变成了MRO;密文HSK对应的明文则是DOG。 当然,移位的选择并不仅仅限制在4位,从1到25任何数的移位都能产生类似效果。只要通信双方事先约定好,这个选择就很随意。
很明显的是,移位方法最多也只有25种,这成为凯撒密码的致命弱点。一般情况下,穷举(穷举法,或称为暴力破解法,是一种针对于密码的破译方法,即将密码进行逐个推算直到找出真正的密码为止。)25种移位方法,得到25组新编码,必有一种编码是真实的情报内容,由于其它24组多是毫无意义的字母组合,所以凯撒密码很容易就能被破译。
尽管如此,凯撒在当时还是很成功地使用了这种密码,他在《高卢战记》中颇为得意地记录了这个加密设计。这个设计之所以未被破译,究其原因,只能是他的敌人并没有意识到他在使用密码。
维热纳尔(Vigenère)密码
(维吉尼亚密码)
1586年,一位名叫维热纳尔(Blaise de Vigenère)的法国外交家出版了一本《密码理论》,介绍了一种以他自己名字命名的新密码,而这本书一直无人问津。直到200年后摩尔斯电码(Morse alphabet)流行开来,为了防止电报员泄露信息和间谍窥探秘密,维热纳尔密码才被广泛应用。
维热纳尔密码用严格的轮换方式重复使用一串简单的代换密码(密钥),很好地伪装了基础语言中的字母频率。在伪装的同时,他还有很多变化,比如有一种可以允许密钥词中出现重复字母。每种变化都会产生一些新的特征,从而引发破译方式的变化。利用这种加密方式,同样的E在一个位置可能被M所取代,而在另一个位置则有可能以K的面目出现。这样,就可以防止任何人利用频率分析法解密该条信息。
在维热纳尔密码中,发件人和收件人使用相同的密钥,这个密钥告诉他们怎么样才能前后改变字母的位置来获得该信息中的每个字母的正确对应位置。
维热纳尔密码一度被认为是无法破译的,以致让一些掌握这种密码的人洋洋自喜,不过很快,以建立了现代计算机的理论框架而闻名于世的怪才查尔斯·巴贝奇(Charles Babbage)就解决了这个难题。
细说起来,这件事情的经过还是挺有意思的。当时,有个叫斯维提斯(JohnHall Brock Thwaites)的人,声称自己发明了一种新密码,所以于1854年写信给《艺术协会杂志》。而这个所谓的新密码只不过是将维热纳尔密码重新包装了而已。查尔斯·巴贝奇写信揭露这个事实,斯维提斯却不愿承认,甚至为难巴贝奇让他破解这个密码。其实能否破解密码和密码是不是新创造的毫无关系,但这已足以激起巴贝奇的好奇心了。很快,他就成功破解了维热纳尔密码。
对于这样重要的成果,巴贝奇却没有发表它。这也符合他的性格:他一直是这种懒洋洋的态度。而更重要的原因恐怕是英国政府要求巴贝奇保密,从而让他们可以在这方面领先全世界9年。
1863年,一位业余数学爱好者、时年58岁的普鲁士退役炮兵少校弗里德里希·卡西斯基(Friedrich Kasiski)出版了一本小册子,名字叫《密写和破译的艺术》(Die Geheimschriften und die Dechiffrierkunst)。在书中,卡西斯基明确地提出了维热纳尔密码破解的理论和操作手法。
有趣的是,在美国的南北战争期间(1861年4月~1865年5月),南方联军仍然在使用黄铜密码盘生成维热纳尔密码,自始至终只主要使用三个密钥,而那个时候这密码早就被破译了,所以北方政府在情报战上一直是笑而不语的。
摩尔斯电码(Morse alphabet)
当人们看到密码,看到关于密码的文章,可能首要想到的是摩尔斯密码。但是通过对凯撒密码和维纳热尔密码的“实际操作”,你一定会犹豫,摩尔斯密码真的属于我们所说的这种密码吗?答案是否定的。
摩尔斯电码(又译为摩斯电码)是一种时通时断的信号代码,这种信号代码通过不同的排列顺序来表达不同的英文字母、数字和标点符号等。它的组成具备密码的部分特征。1837年,美国人摩尔斯(Samuel Finley Breese Morse)发明了这种电码。当时他正在协助塞缪尔·莫尔斯(Samuel Morse)进行摩尔斯电报机的发明(1835年)。
摩尔斯电码由两种基本信号和不同的时间间隔组成:短促的信号点(dot)用“·”表示,读作“Di”;保持一定时间的长信号划(dash)用“—”表示,读作“Da”。一点为一基本信号单位,一划的长度等于三点的时间长度;点划之间的间隔是一个点的长度;字元之间的间隔是三个点的长度;单词之间的间隔是七个点的长度。
数字对应单词,需要查找一本代码表才能知道每个数对应的词。
作为一种信息编码标准,摩尔斯电码拥有其他编码方案无法超越的持久的生命力。但由于通讯技术的进步,各国已于1999年停止使用摩尔斯码,但由于它所占的频宽最少,又具有一种技术与艺术相融合的特性,在实际生活中仍有广泛的应用。
这是一段摩尔斯密码,你知道它是什么意思吗?
●● ●—●●— — —●●●—● —●— — — — —●●—(I Love You)
何冰专门负责破译敌方密码,在一次破译密码时误将“重庆”译为“老鬼”,致使自己的同伴被杀。还记得电影《听风者》中的这段情节吗?密码的发展其实就是编制密码与破译密码的博弈。很多时候,一个设计精巧的密码就像数学难题一样,当解题人被“困在”关键步骤的时候,那种苦恼难以言表,只有经历过的人才知道。有的密码至今仍未见天日,也有一些密码中的“幸运儿”,最终迎来了真相大白的那天。
十二宫杀手密码
1969年7月31日,美国《旧金山纪事报》收到了一封特殊的信件。写信者声称自己对赫曼河和瓦列霍的谋杀案负责,并准确地说出了只有警察和杀手知道的部分案件细节。在信中他附上了一段密文,指出只要破译密文就能知道他杀人的过程,同时也能找到他。写信者声称如果不将密文发表在报纸上,就会有人因此而死亡。这封特殊的信件引起了报社管理人员的重视,他们联络了当地警察局证实了信中的内容,同时得知《观察家报》《瓦列霍时报》也收到了不同的密文,三家报社的密文组合在一起就是一封完整的“杀人过程”。 这段密文共有 408 个符号,大家都习惯称它为“ 408 密文(408-cipher)”。408 密文是十二宫杀手的第一封密信。一个星期后,一位教师和他的妻子破解了这篇密文。大卫·芬奇的电影《十二宫杀手》完整地记述了这一事件。
“408 密文”用的是最简单的字母替换法,所不同的是一个字母可能对应多个符号。这种加密方法可以很好地防止字频破解法,因为你可以让常用的字母对应更多的符号,保证每个符号出现的次数大致相等。不过,破解这样的密码也不是完全没有突破口,“字母 Q 后面一定是 U”等英文特点能提供不少线索。这种一对多的替换加密方法就叫做同音替换法(Homophonic Substitution Cipher)。
同年 11 月 8 日,十二宫杀手又寄出了一篇密文。这篇密文有 340 个字符,被称作“340 密文”。与“ 408 密文”不同的是,虽然大家都相信 “340 密文”同样使用的是同音替换加密,但直到现在“ 340 密文”也没有解开。
达芬奇密码侵权案中的密码
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
有趣的是,这段密文的解密过程与《达芬奇密码》的第一个密码有关,都涉及到了斐波那契数列表示的字母轮换。而且大法官为了增加难度,故意对密文进行了改写。
伦敦的法律分析师丹尼尔·坦奇(Daniel Tench)首先发现了这段密文,紧随其后《泰晤士报》也报道了这段信息,还把那份裁决书发到网上,开放论坛给蜂拥而至的解码者,一时间在全球掀起了一股解谜风潮。丹尼尔·坦奇最终破解了这段密码。这段密码的明文是:Smithy Code Jakie Fisher who are you Dreadnought。据法官后来解释说,他一直是Fisher 的超级粉丝。Admiral John “Jackie”Fisher是一位海军上将,他被认为是皇家海军历史上的第二号重要人物,他革新海洋军事作战方式,引入了第一艘现代战舰“大无畏”号(HMS Dreadnought)。史密斯花了大概 40 分钟将这个密码编入裁决书里纯粹是逗自己玩儿的,从没想到有人居然会注意到。这也给这桩侵权诉讼增添了一个可爱的花絮。
CIA 的雕塑密码
你可曾注意过美国中央情报局(CIA)总部庭院的一个充满阳光的角落?那有一个刻满密码的雕塑作品——Kryptos。Kryptos铜像高10英尺,呈S形,上面刻有字母密码,每个字母高3英寸,Kryptos在希腊语中意为“隐藏的”。这座雕像于23年前完工,雕刻家吉姆·桑伯恩和已退休的中情局密码破译中心负责人爱德华·沙伊特合作完成了这道谜题作品,为的是让1991年完工的中央情报局总部广场拥有一座既美观又与中情局工作有关的雕塑。
起初对它感兴趣的只有那些政府机构的密码破译员。十几年后,再一次掀起的破译Kryptos热潮源于惊险小说《达芬奇密码》,作者丹·布朗列出了一系列线索,暗示Kryptos很重要。
铜像中的密码分为四部分。前三个部分已被破译,尽管2010年11月桑伯恩本人给出了一点提示,但目前第四部分仍然没有被解决。
如今,全世界许多神秘事物的爱好者们加入了政府安全机关人员的行列,试图解开这个谜团。
比尔密码
尼古拉斯·凯奇在电影《国家宝藏》中饰演一位喜爱考古的冒险家,他曾听父亲讲述过一个关于宝藏的故事,为了找到宝藏完成自己的梦想,从此他踏上了探险的旅程。你是否也梦想自己能得到一张藏宝地图,与电影中的主人公一样上演一段破译密码探寻宝藏的传奇故事?你的机会来了。据说,在 1820 年,一个叫做托马斯·杰斐逊·比尔(Thomas Jefferson Beale)的人在弗吉尼亚贝德福县的某个地方埋藏了大量的宝藏,随后把装有三封密信的盒子交给了一个名叫罗伯特·莫里斯(Robert Morriss)的旅店老板代为保管,之后就永久地消失了。莫里斯死前把盒子里的三份密文交给了他的朋友詹姆斯·沃德。从此沃德开始沉溺于密码之中,努力破译密码,在研究过程中,沃德发现把《独立宣言》作为密钥可以解开第二部分密码。后来沃德把这段故事连同密码全文一道印成了小册子,宝藏之谜就这样流传了下来。
被沃德破译出的第二份密码中详细记录了所藏宝藏的数量,现在看来至少值 6500 万美金。这份密文中还说到,宝藏的埋藏地点详细地记在了第一份密码内,而第三份密码里则记录着宝藏原主人的下落。虽然各方神圣都把五花八门的手段试了个遍,但到目前为止,剩下的两份密码都还没被破解。不过,也有一些人对整个故事进行了理性的分析,认为比尔密码不过是一场骗局。
Dorabella 密码
英国作曲家爱德华·艾尔加(Edward Elgar)擅长多种乐器,自学作曲。他除了在音乐创作方面很有天赋外,还在1897年为世人留下了一个密码难题。
艾尔加给挚友多拉小姐(Miss Dora Penny)留下了一封信。这封信上写着 87 个歪歪扭扭的符号,里面明显藏着艾尔加想对多拉小姐说的话。多拉本人一直没能读懂这封信。1937 年,多拉出版了自己的回忆录,将这份密码公之于众。这个密码直到现在仍未被破解。艾尔加到底想对多拉小姐说些什么呢? 密码全文如下:
71.194.38.1701.89.76.11.83.76.11.83.1629.48.94.63.132.16.111.95.84.341
975.14.40.64.27.81.139.213.63.90.1120.8.15.3.126.2018.40.74
750.405.604.230.436.664.502.150.251.204.300.231.124.211.486.225
401.370.11.101.305.139.189.17.33.88.208.193.145.1.94.73.416
910.263.28.500.538.356.117.136.219.27.176.130.10.460.25.485.18
436.65.84.200.283.118.320.138.36.416.280.15.71.224.961.44.16.401
39.88.61.304.12.21.24.283.134.92.63.246.486.682.7.219.184.360.780
18.64.463.474.131.160.79.73.440.95.18.64.581.34.69.128.367.460.17
81.12.103.820.62.110.97.103.862.70.60.1317.471.540.208.121.890
346.36.150.59.568.614.13.120.63.219.812.2160.1780.99.35.18.21.136
(部分比尔密码)
秘密组织的手抄本密码
一份超过7.5万个字母,长达105页的手抄加密文件,就是著名的科比亚勒密码(Copiale cipher)。科比亚勒密码著于1760年至1780年之间,冷战期间在东柏林被发现。它是用非常昂贵的金色丝绸以及两种不同的高品质墨水书写而成,内文由90个不同的字符,包括罗马和希腊字母、变音符号和抽象符号等组成。
2011年,美国加州大学的科学家凯文·奈特利用电脑翻译技术破解了科比亚勒密码。证实了这份神秘的手卷与250多年前的秘密社团共济会有关。现在这份秘密文件内容已经被放到网上,可以读到完整的英文版。
看过以上的密码,是否勾起你对密码研究的兴趣呢?其实密码分析不是 1+1 的问题,而是要求密码分析者对语言有一定的研究、有较高的文化修养、有较强的逻辑推理,以及一种特殊的直觉。
你的“密码”安全吗?
关于“口令”并非“密码”的情况前文中已经有所交代,但是在生活中人们还是习惯性地将邮箱登录、QQ登录等“口令”称为“密码”。
密码与我们的生活密切相关,但是你的密码安全吗?有人说越复杂的密码越安全,也有人说越长的密码越安全。每个方法你可能都试过了,但是你并没有看到什么明显的好处,反倒是你被那些复杂的长密码所累。其实,世界上没有绝对安全的密码。
我们的密码是怎样被破解的?
举一个例子:有一个黑客,潜入一家公司的服务器,准备偷取一份秘密文件。但由于这份文件是被加密的,所以黑客不可能直接登入这个账号。假设文件的密令是“hello”,在文件中这条密令就会被加密为类似“$r6T8SUB9$Qxe41FJyF/3gkPIuvKOQ90”的字符。黑客不可能随随便便就把这串字符解开,因为他知道文件是被“单向加密”的。而这名黑客能做的,仅是将上百万种可能性加入同一个加密算法进行测试,直到这个密码刚好被“蒙中”,得出的结果与那一连串的字符相符合。只有这样他才能知道自己找到了那个密码。
假设有一个黑客的电脑每秒钟能猜测1000种五位纯字母、完全随机、全部小写的密码组合,比如“fpqzy”,那最多需要3小时45分就能破解成功。
为什么你的密码不安全
在现实生活中,我们都选择“一把钥匙开一扇门”。谁都不会希望有一把钥匙既能用来开家门,也能用来开汽车门,因为这把“万能钥匙”一旦丢失,损失将是非常惨重的。
其实在网络上也是如此。网上银行、邮箱、淘宝、微博的登录密码——在你脑子里乱七八糟的存在着。你也清楚,访问不同的网站,必须选择一串不一样的、排序复杂的字母、数字和符号做密码,然后把它们背下来。可是你不会真这么做,因为你知道自己的脑子没有这种能力。况且随着你的网络账号越来越多,就需要注册更多地用户名及密码。这时你可能就会想到用一个密码打开你的所有账户,即“万能的钥匙”。但重复使用同一个密码的危险程度远远高于一个设置较弱的密码。
虽然部分人意识到了这点,并且为了避免这种情况发生,相当一部分人选择将密码分为两部分,一个是主要部分(比如是123456 ),另一部分则根据账户而定。例如:QQ 的密码就设为 qq123456 ,而 gmail 的密码则是 gmail123456 等等。但如此直白的设置,颇有掩耳盗铃的味道,一旦一个账户失窃,看穿这个规律,也不过一秒的事情而已。
为了避免上述的风险,大家开始设定多个又长有复杂的密码。但复杂的长密码并不容易记住,更何况是要记住好几个这样的密码。在经历了多次遗忘密码、找回密码的痛苦之后,人们开始倾向于选择那些容易让自己记住的信息作为自己的密码,如自己名字的首字母、出生年月日、电话号码等等。但这恰恰把安全隐患留给了躲在暗处的黑客。
有人对用户的密码做过统计,研究他们设置密码时的偏好。61% 的用户喜欢使用人名、地名、字典词汇和纯数字来设置他们的密码。甚至还有26%的用户直接把他们的用户名当成密码使用(比如把[email protected]的密码直接设置为kexuejia)。
这些都是具有安全隐患的密码设置策略!黑客们了解用户的密码设置习惯后,就可以编写“密码词典”,有了这本词典后,就可以在暴力破解的时候大大提高精准性。
在未来的某一天,也许会有革新能够彻底将密码代替,我们不用再操心这些事情,也许……