歡迎光臨
每天分享高質量文章

4個終於被破譯的世界級密碼

來自:果殼網,作者:嚴酷的魔王

https://www.guokr.com/article/93037/

很多時候,一個設計精巧的密碼就像數學難題一樣,許許多多難以破解的密碼讓人青絲泛白,至今仍未見天日。不過,也有一些密碼中的幸運兒,最終仍然迎來了真相大白的那天。

秘密組織的手抄本密碼

這份超過 75000 個字母的手抄加密檔案名叫 “Copiale cipher”。它被認為是在 18 世紀下半葉出現在德國的,其創造者是一個類似共濟會的秘密組織,因此這份密碼被認為含有關於思想史與秘密組織的重要資訊。但在南加州大學的計算機專家凱文•奈特(Kevin Knight)的幫助下,這個密碼被成功破譯。凱文•奈特是破譯小組中的一員,他本是一位計算機翻譯方面的行家,但是這次破譯密碼意外地用上了他的專長。

Copiale cipher中的兩頁。影象來源:wikipedia

整個密碼檔案中包含了 3 種字元:羅馬字母、希臘字母和看似雜亂的抽象符號。破譯小組首先將密碼檔案轉換成為計算機可識別的資訊,然後嘗試藉助計算機的列舉能力來破解它。他們使用了類似谷歌翻譯中的統計翻譯技術,即把密碼看做是一門外語,然後嘗試尋找合適的規則轉換成德語。

一開始,他們將羅馬字母和希臘字母單獨提取出來,但計算機無法破譯。後來他們忽然意識到,羅馬字母和希臘字母在這份詭異的檔案中可能只是起到了空格的作用,真正包含了資訊的是那些抽象符號。沿著這個思路終於他們破譯出了第一個詞:“入會儀式”,緊接著又發現了“秘密條約”。最終,在 2011 年 4 月,這個沉睡百年的密碼被成功破譯。現在這份秘密檔案內容已經被放到網上,完整英文版可以 在此 閱讀到。

達芬奇密碼侵權案中的密碼

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 實際上就是他的筆名。

Tyler的第一份密碼

直到1992年,特倫斯•惠倫(Terence Whalen)教授終於解開了第一份密碼。他走出的第一步是發現了“逗號-匕首-小節”這樣的組合在八行裡面出現了七次:

據此他進一步猜測這三個組合符號代表的是單詞“the”。在剋服了沒有標點與空格的困難之後,他給出了最終的譯文:

The soul secure in her existence smiles at the drawn dagger and defies its point. The stars shall fade away, the sun himself grow dim with age and nature sink in years, but thou shalt flourish in immortal youth, unhurt amid the war of elements, the wreck of matter and the crush of worlds

第二份密碼更加曲折一些。有人專門懸賞 2500 美金的不菲金額邀請高手來破譯,不少人認為這份密碼將會透露愛倫•坡與Tyler的關係。

Tyler的第二份密碼

直到 2000 年,這個密碼才被多倫多的軟體工程師吉爾•布朗茨(Gil Broza)藉助電腦的力量破譯。

很遺憾的是,最終得到的完整明文看起來只是節選自某本小說的一段話而已。密碼雖然被破譯出來了,但 Tyler 究竟是誰,為什麼愛倫坡沒有破譯他的密碼?這個歷史懸案恐怕沒人能回答了。

混亂加密法

1918年,一位名為伯恩(Byrne)的人設計了一個叫做 “Chaocipher” 的加密演演算法。他自認為這個演演算法的規則簡單,但難以破解。同時他製造了一個用於演示加密過程的物體機器。不過令人失望的是,這套演演算法並沒有引起任何組織或者政府的興趣。伯恩最後選擇在 1951 年出版的自傳“Silent Years”中對世人宣佈這個加密演演算法的存在,並向任何能破解此密碼的人提供賞金。

在當時,世界上恐怕也只有 3 個人知道這個演演算法的細節:伯恩的兒子與兩個 Cryptologia 雜誌的編輯。將近 60 年過去了,仍然沒有人能夠獲得賞金,更有傳言稱這個加密術實際上已經失傳了。最後在 2010 年,伯恩的家人決定將所有與 Chaocipher 有關的文章以及機器捐給博物館,這個神秘的密碼系統最後才得以重現人間。

右邊的圓盤+號下代表明文的字母,左邊的圓盤+號下代表加密後的密文字母。總的來說加密過程分為三步:

⒈ 將兩份字母表打亂後擺在兩個圓盤上

⒉ 將右邊圓盤中的待加密字母旋轉到+號之下,同時帶動左邊圓盤轉動,此時左邊+號對應的字母便是加密的結果

⒊ 按照一定的規則改變兩邊圓盤的部分字母順序


對於每一個明文中的字母都進行這樣的加密。這個看起來簡單清晰的動態加密過程實際上有著複雜的加密規律,在無人知道細節的情況下,很難破解,難怪還有人將其拿來與二戰時期鼎鼎大名的 Enigma 進行比較。


試想如果伯恩一家人沒有捐出這些資料,真的會有人解開這個密碼麼?


主要參考資料:

[1] Famous Unsolved Codes That Have Since Been Solved

[2] Modern Algorithms Crack 18th Century Secret Code

[3] The Smithy Code

[4] 維基百科: Smithy code



●編號722,輸入編號直達本文

●輸入m獲取文章目錄

推薦↓↓↓

 

Linux學習

更多推薦18個技術類微信公眾號

涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。

贊(0)

分享創造快樂