注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁新聞資訊書摘

密碼文學(xué):從凡爾納到福爾摩斯

從古典密碼到量子密碼,再到當(dāng)前廣泛應(yīng)用的二維碼,密碼演變跨越了數(shù)千年。《破譯者:人類密碼史》一書詳細(xì)記錄了世界密碼學(xué)發(fā)展歷程,鮮活刻畫人類秘密通信的5000年

【編者按】

從古典密碼到量子密碼,再到當(dāng)前廣泛應(yīng)用的二維碼,密碼演變跨越了數(shù)千年?!镀谱g者:人類密碼史》一書詳細(xì)記錄了世界密碼學(xué)發(fā)展歷程,鮮活刻畫人類秘密通信的5000年,內(nèi)容涵蓋密碼源起史、軍事應(yīng)用史、機(jī)制沿革史、技術(shù)革命史、文化演進(jìn)史、大眾生活史等等方面。本文摘編自該書。

密碼文學(xué)也要大大感謝愛倫·坡。自愛倫·坡指明道路以來,其他作家紛紛將密寫用于他們的故事;而且,在這些故事中,可被恰當(dāng)?shù)胤Q為《金甲蟲歸來》或《金甲蟲之子》的作品亦不在少數(shù),因為它們都采用同樣的藏寶主題。(讀讀這些故事,再讀讀《金甲蟲》,愛倫·坡的天分躍然而出。)但其他作品的密碼插曲通常寫得不賴,作家的水平也體現(xiàn)在處理密碼內(nèi)容的方式上。這些密碼可能更可信,它們的破譯闡述得更清楚,它們與情節(jié)的聯(lián)系更緊密,說明它們在這里不僅僅是個裝飾。它們一般都是簡單密碼,因為對一個復(fù)雜密碼的說明或破譯會大大拖累敘事的節(jié)奏,所需解釋也會超過小說讀者的忍受限度。當(dāng)然有時,作者本人的知識亦不足以有效寫作這個話題。

許多著名作家在他們的作品中提到密碼學(xué)。1852年,《名利場》作者、身高6英尺4英寸(約193厘米)的威廉·梅克皮斯·薩克雷在《亨利·埃斯蒙德的歷史》(The History of Henry Esmond)中用了一個卡爾達(dá)諾漏格板,這部小說被稱為他最優(yōu)美的作品,為此他曾在不列顛博物館研究了好幾個月。在他的書中,一段有關(guān)陰謀的描述談到密碼,陰謀者企圖把后來的詹姆斯三世推上英格蘭王位;就是在這場陰謀中,阿特伯里主教被判有罪,定罪的主要證據(jù)就是密碼分析。不過這里沒寫到密碼分析,只提到一封密信的傳遞。

密寫的神秘為儒勒·凡爾納的三本小說增添了懸念??偟膩碚f,他對密碼內(nèi)容的處理和其他技術(shù)內(nèi)容一樣出色。但由于一次在生理或心理上的描述不符合實際,他的兩個破譯被搞砸了。這些損害了他密碼分析的可信性,比技術(shù)上不現(xiàn)實對他科學(xué)幻想所造成的傷害還要大,因為它們違背了不可改變的自然法則,而幻想只是超越了人類當(dāng)時的科技能力。另一方面,就像他預(yù)見了潛艇、登月和快速環(huán)球旅行一樣,凡爾納也預(yù)見到一種密碼分析法。

他以一個三層密碼開始了他第二本巨著《地心游記》的寫作,這部作品奠定了他的聲譽。奧托·黎登布洛克教授剛買了一本古如尼文手稿,寫在一片羊皮紙上的密碼從手稿里飄了出來。它也用如尼文寫成,有21個六字母組。黎登布洛克把它轉(zhuǎn)換成羅馬字母,無任何意義。接著他以柵欄密碼形式重排字母,再轉(zhuǎn)抄,還是不走運。后來,他年輕的侄子阿克賽爾“無意識地”用轉(zhuǎn)抄了字的紙扇風(fēng),透過紙背看到文字,發(fā)現(xiàn)它只是一段倒寫的拉丁文字。此處它的可信度在幾個方面打了折扣:透過紙讀字就這么容易嗎?阿克賽爾有能力領(lǐng)會倒寫字母的意義嗎?也許沒有。但所有這些都在閱讀明文的激動中被忘掉:“勇敢的探險者,7月之前,當(dāng)斯卡爾塔里斯(山)的陰影落在斯奈費爾火山口時,你可以順著山口而下,抵達(dá)地心。我到過那里。阿爾納·薩克努賽姆(Arne Saknussemm)?!崩璧遣悸蹇撕桶⒖速悹柊凑掌谱g出的指示到達(dá)了地心。

在《亞馬孫漂流記》(La Jangada)中,雅里凱法官用普通單表替代方法未能解開一封密信,確定它是一種格倫斯菲爾德系統(tǒng)(數(shù)字密鑰維熱納爾密碼),因為它包含一堆三字母重碼。這個推斷十分牽強(qiáng),因為許多密碼能生成同樣的三字母重碼,由此該結(jié)論不成立。不管怎樣,按照格倫斯菲爾德密碼,雅里凱根據(jù)外部信息,嘗試以名字Ortega(奧泰加)作為信末簽名的可能詞,進(jìn)行破譯。他立即發(fā)現(xiàn),最后六個字母SUVJHD,在字母表中全部落在Ortega的字母后面,與他的假設(shè)相符。雅里凱用這個可能詞還原出密鑰432513,用它測試密信開頭。密鑰以4開頭的概率是六分之一,他幸運地取得突破,當(dāng)場讀出明文。雖然這種淺顯的方法以前就很可能被人用過,但凡爾納1881年的這段說明卻是初次在出版物中出現(xiàn)。甚至可以看成是20年后,巴澤里埃斯出版同樣方法的前身,他用一個可能詞還原多表替代密鑰,吹噓說它是“一種全新的破譯方法,卡西斯基、克爾克霍夫、若斯和瓦萊里奧都沒有描述過!”在《桑道夫伯爵》(Mathias Sandorff)中,凡爾納的最后一次密碼描寫沒有提到破譯,因為薩卡尼發(fā)現(xiàn)了信息加密漏格板。在這本1885年出版的書中,凡爾納引用了愛德華·弗萊斯納·馮·沃斯特羅韋茨(Eduard Fleissner von Wostrowitz)四年前出版、神化漏格板的《密碼學(xué)手冊》(Handbuch der Kryptographie)。凡爾納可能還讀過比《桑道夫伯爵》早兩年出版的克爾克霍夫《軍事密碼學(xué)》,因為凡爾納在討論優(yōu)秀密碼的要求時,所用語言風(fēng)格像極了克爾克霍夫。但他學(xué)克爾克霍夫沒學(xué)到家,因為他宣稱漏格板和加密代碼是不可破的。

在描寫夏洛克·福爾摩斯(Sherlock Holmes)的偵探小說中,他不止一次而是三次碰到密碼(不包括一個簡單的閃光信號系統(tǒng)和一個字謎)?!丁案衤謇飦喫箍铺亍碧枴罚?em>The ‘Gloria Scott’)中,這個大偵探發(fā)現(xiàn),秘密信息由每三個單詞中的最后一個單詞組成,藏在一篇隱語文章里?!犊植拦取罚?em>The Valley of Fear)中,福爾摩斯得到宿敵莫里亞蒂教授同伙的一封數(shù)字密信,不僅出色地推斷出它是個書本代碼,而且找到了那本書。這本書隨處可得,版本統(tǒng)一。因此《圣經(jīng)》被排除,因為它雖然無處不在,但頁碼標(biāo)準(zhǔn)不一;還因為,“依我看,莫里亞蒂一伙人身邊幾乎不會攜帶《圣經(jīng)》”。唯一同時符合兩項要求的是《惠特克年鑒》(Whitaker’s Almanac)。最新版本譯出無意義的Mahratta Government pig’s bristles,但去年的版本給出了完整意義。就這樣,福爾摩斯都不必知道密碼分析,全憑他有名的推理能力,破譯了密信。

但他對密碼的掌握(他精通自己職業(yè)所涉及的所有知識)在《跳舞小人》(Adventure of the Dancing Men)故事里顯現(xiàn)了出來。這些跳舞小人是手腳指向不同方向的人物線條畫,它們共同構(gòu)成了密碼符號。美國暴徒阿貝·斯蘭尼是“芝加哥最危險的惡棍”,他青梅竹馬的前戀人埃爾茜嫁給了一個英國鄉(xiāng)紳。斯蘭尼用小人密碼給埃爾茜寫信。鄉(xiāng)紳抄下用粉筆寫在窗臺和工具房的信息,帶給福爾摩斯。福爾摩斯破譯了信息,但未能阻止悲劇,斯蘭尼在一次交火中打死鄉(xiāng)紳,逃之夭夭。福爾摩斯從破譯的信息中知道了他住在哪里,于是用自己還原的密碼符號精心編寫了一條信息,寄給他一張便條,催他Come here at once(速來)。(福爾摩斯的計劃大概借自托馬斯·菲利普,1587年,后者為了詐出巴賓頓針對伊麗莎白陰謀中準(zhǔn)備行刺者的姓名,在一封給蘇格蘭瑪麗女王的信中偽造了一段密碼附言。)斯蘭尼天真地以為,只有埃爾茜和他的芝加哥匪幫同伙能讀懂這個密碼,因此這張便條肯定來自她。他回到鄉(xiāng)紳家,當(dāng)即被捕,并承認(rèn)了罪行。

夏洛克·福爾摩斯破譯的一條跳舞小人密碼信息

夏洛克·福爾摩斯破譯的一條跳舞小人密碼信息

福爾摩斯,按他自己的說法:“精熟各種密寫形式,本人就此寫過一篇小專著,分析了160種不同密碼,但我承認(rèn),這個我從未見過?!碑?dāng)然,他指的是用跳舞小人密碼,“讓人以為它們只是小孩的涂鴉”,將自己單表替代的特征隱藏起來。他立即著手破譯,沒走任何彎路,這說明他一眼就認(rèn)出了它們屬這一類密碼。他的工作比其他分析虛構(gòu)密碼的分析家要難得多,因為他的文字極短,混亂,晦澀,滿是專有名詞。它前后由5條簡短英文信息組成:(1)Am here Abe Slaney;(2)At Elriges;(3)Come Elsie;(4)Never;(5)Elsie prepare to meet thy God。但開始時,福爾摩斯只有第一條信息,他以此打開突破口,直到增加了后來的三條信息,他才破開密碼。它共有38個字母,其中8個只出現(xiàn)1次;9個單詞中4個是專名,其他5個均不位于最常用的10個英語單詞之列;這10個最常用單詞一般占到英語文章的四分之一。

如此艱難的破譯顯示出這個大偵探靈活強(qiáng)大的思維能力。福爾摩斯顯然更傾向于運用他的嚴(yán)密推理(頻率分析)來破譯這封密信,他就是這樣開始的。第一條信息包含15個跳舞小人,其中4個歡快地展開四肢,3個左腿彎曲,福爾摩斯立即把4個展開四肢的小人標(biāo)記為e?,F(xiàn)在,不管是字母頻率還是其他統(tǒng)計現(xiàn)象,在這么小的樣本中都靠不住;很有可能3個彎腿小人,或者某種姿勢只出現(xiàn)一次的幾個小人之一代表e,甚至第一條信息里根本就沒有e。難以相信福爾摩斯不知道這一點。不管怎么說,他“較有把握地”把那個符號確定為e。當(dāng)然,他對了,但是為什么?福爾摩斯無疑認(rèn)出拿旗子的小人是詞尾標(biāo)記,注意到4個伸展四肢的小人里有2個拿著旗子,馬上聯(lián)系到一個眾所周知的事實:e是英語中最常見的結(jié)尾字母。他敏捷的頭腦大概還觀察到與e相連的小人各不相同。但這些都是在不經(jīng)意間閃過他的超級大腦,這也許有助解釋他的推理為什么總是那么快,因此,他解釋給華生聽時沒把它說出來,也許他只是不想拿所有這些細(xì)節(jié)增加后者的負(fù)擔(dān)。

但他確實認(rèn)識到,對于第一條信息,不管是頻率分析還是任何其他手段都不能再奏效,于是他選擇等待更多文字。隨著接下來三條信息的到達(dá),他看出頻率分析對這么短的文字沒用。當(dāng)鐘愛的推理手段行不通時,他靈活地轉(zhuǎn)向歸納方法。他的表現(xiàn)十分出色。他首先猜測,在一個擁有五字母的單詞中,第二和第四個字母為e,該單詞是never(不);他再推測,Elsie(埃爾茜)的名字也許會出現(xiàn)在信息中,并且找到了它。憑借這些對應(yīng),他取得了很大進(jìn)展,再經(jīng)過更多艱苦努力,終于完成了破譯。

一些裝腔作勢的密碼學(xué)家譏笑福爾摩斯花了兩小時才破開這些密信,在此過程中,“小人和字母”畫滿了“一張又一張紙”。但破解該密信所花的時間不僅可以理解,而且令人欽佩。若按字母順序排列,這些小人看上去就是在毫無規(guī)律地亂舞;如果按舞蹈動作順序排下來,字母又毫無規(guī)律可循。換句話說,跳舞小人密碼完全是隨意的。福爾摩斯迷俱樂部“貝克街雜牌軍”的一些成員,其中包括亞歷山大·伍爾科特、克里斯托弗·莫利和富蘭克林·羅斯福,曾為找到某種密碼小人結(jié)構(gòu)規(guī)律工作到深夜,純粹白費力氣。福爾摩斯本人在他給斯蘭尼的“速來”信息里只用了已經(jīng)還原的字母。這個事實表明,他沒找到任何規(guī)律,使他在編寫那條信息時哪怕多一點點自由度。而且如果有這么一個密鑰形式,福爾摩斯肯定會發(fā)現(xiàn)它。密碼發(fā)明人、埃爾茜的父親、“匪幫頭子”帕特里克的跳舞小人想法可能來自一個以人類圖案為基礎(chǔ)的密碼,這個密碼出現(xiàn)在美國陸軍通信兵部隊創(chuàng)始人艾伯特·邁爾的半官方《通信手冊》中;或者來自稍晚一些,一個將小矮人用作密碼符號的美國專利發(fā)明人;或者來自無處不在的燒炭黨,他們的口令是雙手前伸合十,應(yīng)答則是兩拳一上一下按在胸前。福爾摩斯或許知道這些可能的來源。但即使帕特里克的想法確實來自其中之一,符號也已經(jīng)被他改得面目全非,因此密碼分析成為解決問題的唯一方式。

在跳舞小人例子中,還有最后一點需要澄清,它解釋了所有出版物中出現(xiàn)的密碼錯誤。在最早的《跳舞小人》版本中,密信用同樣的小人代表Never中的v和prepare中的p,用相同的小人表示Abe中的b和Never中的r,貝克街雜牌軍在這個問題上花費了大量精力。正是在尋找“正確”版本的過程中,他們錯誤地假設(shè)密碼表具有某種規(guī)律,編制手和腿的位置表,推測未出現(xiàn)在密信中的八個字母(f、j、k、q、u、w、x、z)的密文符號。他們還試圖找到錯誤的原因。但他們努力的唯一效果,就是表明為什么福爾摩斯是大師,而他們只能是學(xué)生。所有這些人只會閉門造車,從不研究事實。有觀點認(rèn)為,這些錯誤“存在于故事里惡棍的信息中,如果你愿意,可以歸因于這個可憐惡棍的困惑和絕望”,但沒人提到那個鄉(xiāng)紳在抄寫這些信息帶給福爾摩斯時同樣可能發(fā)生的錯誤。實際上,這些錯誤既不是斯蘭尼的,也不是鄉(xiāng)紳的,因為在福爾摩斯破譯密信時,這些錯誤并不存在。如果原件用同樣符號代替v和p,福爾摩斯在猜出Never后,就會部分還原出明文vrevare,而不是他顯示兩個p未知的?re?are。同理,如果r和b在原件中混淆了,他在猜出Never后會(把正確的Abe)顯示成部分破譯?re,但實際上,他顯示出一個部分破譯??e,b依然未知。因此,福爾摩斯自己的描述證明,錯誤并不在原始信息中——幸虧不是,因為它們出現(xiàn)在分析的關(guān)鍵節(jié)點上,如果是那樣,再加上其他困難,即使是福爾摩斯,恐怕也讀不出這些密信。因此,錯誤一定是華生醫(yī)生把真作傳遞給世界時發(fā)生的,后期版本加重了華生最初的錯誤,但這些錯誤已經(jīng)經(jīng)歷了在事實方面出名馬虎和靠不住的文學(xué)和新聞人物之手,不值一提。

《破譯者:人類密碼史》,[美]戴維·卡恩(David Kahn)著,朱鴻飛、張其宏譯,金城出版社2021年6月。

熱門文章排行

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號