何映宇
密碼之所以叫密碼,流傳著這么一個故事。
公元前405年,伯羅奔尼撒戰(zhàn)爭已接近尾聲,雅典和斯巴達(dá)打了多年兩敗俱傷。此時,一直覬覦希臘這塊肥肉的波斯帝國正蠢蠢欲動。斯巴達(dá)急需摸清波斯帝國的具體行動計劃,以便采取新的戰(zhàn)略方針。剛巧,斯巴達(dá)軍隊捕獲了一名從波斯帝國回雅典送信的雅典信使。斯巴達(dá)士兵仔細(xì)搜查,并未在信使身上發(fā)現(xiàn)什么書信,只在他的腰帶上發(fā)現(xiàn)了一些仿佛天書一般雜亂無章的希臘字母。這是個啥東西?怎么每個字母都認(rèn)識,可是合起來卻不知道它在說啥?
斯巴達(dá)軍隊統(tǒng)帥萊山德絞盡腦汁,幾乎把這些字母的排列組合都想了個遍,也沒把這句句子給捋順。當(dāng)時他就抓狂了,敵軍的秘密就在自己手上,可是自己就是解不開這個謎。這什么感受?就好像一頭活羊落在一只饑腸轆轆的斑斕猛虎面前,可是猛虎剛掉了牙齒,無福消受。
幸好,萊山德運氣還不壞,就在他把腰帶呈螺旋形纏繞在手中的劍鞘上把玩時,奇跡出現(xiàn)了。腰帶上那些雜亂無章的字母,竟組成了一段文字,說的是波斯軍隊準(zhǔn)備在斯巴達(dá)軍隊對雅典發(fā)起最后攻擊時,突然對斯巴達(dá)軍隊進(jìn)行襲擊。
世界上第一封密碼信就這樣給運氣好到爆的萊山德給破了。此時萊山德知己知彼百戰(zhàn)不殆,斯巴達(dá)軍隊根據(jù)這份情報馬上改變了作戰(zhàn)計劃,先是大破不可一世的波斯軍隊,繼而揮師雅典,取得了著名的伯羅奔尼撒戰(zhàn)爭的勝利。
這個故事很出名很有市場,但是它是真的還是假的呢?我們認(rèn)為八成是假的。為什么?因為事實上,和波斯結(jié)成聯(lián)盟的不是雅典,而正是斯巴達(dá)!
雅典雖然在小亞細(xì)亞沿岸及黑海海峽附近的海戰(zhàn)中數(shù)度取勝,但斯巴達(dá)卻得到波斯資助再建海軍。公元前405年斯巴達(dá)將雅典180艘艦船誘入赫勒斯滂海峽,突然襲擊,這一戰(zhàn),雅典艦隊全軍覆沒,標(biāo)志著雅典海上霸權(quán)喪失殆盡。雅典方面怎么可能派人給波斯送這樣一封密信呢?而且波斯人又不懂希臘語。
連年征戰(zhàn)讓繁榮富強(qiáng)的希臘從此一蹶不振。波斯帝國得以插手希臘各邦的事務(wù),勝利者斯巴達(dá)成為希臘的霸權(quán)國。公元前408年后,波斯王子居魯士出任小亞細(xì)亞總督,斯巴達(dá)任命萊山德?lián)魏\娊y(tǒng)帥。萊山德親赴薩爾迪,面見居魯士,討得他的歡心,得到了1萬大流克的資助。萊山德就用居魯士的錢,提高服役水手的薪金,把許多水手從雅典人的艦隊拉到了自己這邊來,最終擊敗雅典。只是斯巴達(dá)的霸權(quán)沒有維持多久,最終被希臘北部的馬其頓王國征服。
所以,傳說只是個傳說,不過,密碼學(xué)(Cryptography)這個詞實際上是希臘文Kruptos(hidden)和graphein(towrite)合在一起的組合,現(xiàn)代準(zhǔn)確的術(shù)語為“密碼編制學(xué)”,簡稱“編密學(xué)”,與之相對的專門研究如何破解密碼的學(xué)問稱之為“密碼分析學(xué)”。密碼的英文cryptogram,是希臘文Krup- tos和詞根gram(同樣是towrite的意思)的組合,這是不是萊山德密碼故事的一個源頭呢?
密碼最開始的用處自然就是克敵制勝,到二戰(zhàn)時期,登峰造極,密碼扮演了舉足輕重的角色,許多人認(rèn)為同盟國之所以能打贏這場戰(zhàn)爭完全要歸功于二次大戰(zhàn)時所發(fā)明的破譯密文數(shù)位式計算機(jī)破解了德日密碼。
1918年,在德國,密碼大神亞瑟·謝爾比烏斯制造了第一臺非手工編碼的密碼機(jī)———ENIGMA密碼機(jī)(恩尼格瑪編碼機(jī))?!癊NIGMA”,意為“謎”,這臺機(jī)器,又稱“獅身人面”。直到第一次世界大戰(zhàn)結(jié)束為止,所有密碼都是使用手工來編碼的。而ENIGMA密碼機(jī)的出現(xiàn)改變了這種狀況,ENIGMA看起來是一個裝滿了復(fù)雜而精致的元件的盒子。不過要是我們把它打開來,就可以看到它可以被分解成相當(dāng)簡單的三部分:鍵盤、轉(zhuǎn)子和顯示器。
鍵盤一共26個鍵,鍵盤排列接近我們現(xiàn)在使用的計算機(jī)鍵盤,但沒有標(biāo)點符號。鍵盤上方就是顯示器,它由標(biāo)示了同樣字母的26個小燈組成,當(dāng)鍵盤上的某個鍵被按下時,和此字母被加密后的密文相對應(yīng)的小燈就在顯示器上亮起來……
使用“ENIGMA”通信時,發(fā)信人首先要調(diào)節(jié)三個轉(zhuǎn)子的方向(而這個轉(zhuǎn)子的初始方向就是密鑰,是收發(fā)雙方必須預(yù)先約定好的),然后依次鍵入明文,并把顯示器上燈泡閃亮的字母依次記下來,最后把記錄下的閃亮字母按照順序用正常的電報方式發(fā)送出去。收信方收到電文后,只要也使用一臺“ENIGMA”,按照原來的約定,把轉(zhuǎn)子的方向調(diào)整到和發(fā)信方相同的初始方向上,然后依次鍵入收到的密文,顯示器上自動閃亮的字母就是明文了。加密和解密的過程完全一樣,這就是反射器的作用,同時反射器的一個副作用就是一個字母永遠(yuǎn)也不會被加密成它自己,因為反射器中一個字母總是被連接到另一個不同的字母。
“ENIGMA”型機(jī)能產(chǎn)生220億種不同的密鑰組合,假如一個人日夜不停地工作,每分鐘測試一種密鑰的話,需要約4.2萬年才能將所有的密鑰可能組合試完,反正就是老復(fù)雜了。
對于潛艇作戰(zhàn)尤其是德國海軍的“狼群”戰(zhàn)術(shù)來說,無線電通信是潛艇在海上活動獲取信息通報情況的最重要的手段,而“ENIGMA”密碼機(jī)則是關(guān)乎整個無線電通信安全的設(shè)備,其重要性可想而知。
耗資6200萬美元的美法合拍超級大片《獵殺U-571》講的就是美國海軍派出本國潛艇偽裝成德軍維修艦去搶奪因戰(zhàn)斗受損上浮的德國潛艇U-571上的通信密碼解碼機(jī),以期破解德軍的密碼通信的故事。美國大片的講述當(dāng)然要為美國人臉上添光,事實上,是法國人而不是美國人第一次接近“ENIGMA”編碼機(jī)。
美國前情報人員歐內(nèi)斯特·弗克曼在他的《間諜圖文史:世界情報戰(zhàn)5000年》中寫:在比利時的一個小村莊,德軍最高統(tǒng)帥部的密碼員提羅·施密德第一次與法國人秘密會面,這時他拿出了恩尼格瑪編碼機(jī)的使用說明書,還有編碼機(jī)加密系統(tǒng)的一些技術(shù)文件。法國情報人員看得目瞪口呆,施密德想要的是錢,法國人為此支付了首付款1萬美元(約合現(xiàn)在的20萬美元)現(xiàn)金。
與法國并肩作戰(zhàn)的還有波蘭、美國和英國。英國的代號為ULTRA的行動,被溫斯頓·丘吉爾稱為“下金蛋的鵝”。1940年,ULTRA行動組開始破譯出由恩尼格瑪編碼機(jī)發(fā)報的高級別信息。從理論上說,一臺恩尼格瑪編碼機(jī)能夠生成的可能排列數(shù)量是3×10114,這是一個令人頭暈?zāi)垦5臄?shù)字。但是不管這個數(shù)字有多大,它總是有限的。
為了破解德國人的密碼,他們制造了一臺解密機(jī),這是個龐然大物,它有7英尺(約2.1米)長,6英尺(約1.8米)高,重量超過1噸。機(jī)器啟動時,它那數(shù)以千計的真空管、滑輪和電磁傳動裝置,就開始“嘩啦啦”地工作,響聲就像是科學(xué)小說里描寫的科學(xué)怪物。沒錯,這就是世界上第一臺計算機(jī)!
有了計算機(jī)這樣的神器你覺得德國人還有打贏的可能性嗎?太平洋戰(zhàn)爭中,美軍成功破譯了日本海軍的密碼機(jī),讀懂了日本艦隊司令官山本五十六發(fā)給各指揮官的命令,在中途島徹底擊潰了日本海軍,擊斃了山本五十六,導(dǎo)致了太平洋戰(zhàn)爭的決定性轉(zhuǎn)折。
中國古代也有密碼。“符”字本義是指古代朝廷下命令的憑證;“竹”字偏旁表明最早的“符”是用竹子做的;“符”一般來講使用時一分為二,驗證時合二為一;這就是我們常用的詞語“符合”的來歷。
西周的兵書《六韜》中陰符和陰書是中國早期系統(tǒng)闡述密碼學(xué)的著作?!瓣帯敝浮皺C(jī)密”,“符”指“符號”,也有編碼的意思,“書”指“信件”或“文件”。所以,字面上的意思,“陰符”和“陰書”就是“密碼”或“密文”。其中“陰書”的加密方法是整體加密,只有獲得全部文字信息才能看懂其中的內(nèi)容。
《六韜·陰符》開篇就記述了陰符的種類。當(dāng)武王向太公請教,遇到戰(zhàn)事緊急情況軍隊要保持密切的聯(lián)系應(yīng)該怎么辦時,太公就回答說要用陰符。
陰符共分八種,每一種之間差一寸。一種長一尺,表示大獲全勝,摧毀敵人;一種長九寸,表示攻破敵軍,殺敵主將;一種長八寸,表示守城的敵人已投降,我軍已占領(lǐng)該城;一種長七寸,表示敵軍已敗退,遠(yuǎn)傳捷報;一種長六寸,表示我軍將誓死堅守城邑;一種長五寸,表示請撥運軍糧,增派援軍;一種長四寸,表示軍隊?wèi)?zhàn)敗,主將陣亡;一種長三寸,表示戰(zhàn)事失利,全軍傷亡慘重。如奉命傳遞陰符的使者延誤傳遞,則處死;如陰符的秘密被泄露,則無論無意泄密者或有意傳告者也處死。只有國君和主將知道這八種陰符的秘密。這就是不會泄露朝廷與軍隊之間相互聯(lián)系內(nèi)容的秘密通信語言。敵人再聰明也不能識破它。
我們熟悉的虎符就是陰符的一種?;⒎怯们嚆~或者黃金做成伏虎形狀的令牌,劈為兩半,其中一半交給將帥,另一半由元帥或大將保存,只有兩個虎符同時使用,才可以調(diào)兵遣將,為中國古代帝王授予臣屬兵權(quán)和調(diào)發(fā)軍隊的信物?;⒎钤绯霈F(xiàn)于春秋時期,盛行于戰(zhàn)國,秦、漢時期傳世的有秦新郭虎符等。陜西歷史博物館藏有一枚從西安西郊發(fā)現(xiàn)的虎符,據(jù)考證是公元前475年至公元前221年的戰(zhàn)國文物,稱為秦代錯金“杜”字锏虎符,高4厘米、作猛虎疾奔狀,象征軍威和進(jìn)軍神速?;⒎纳砩峡逃星督疸懳?0字,記述調(diào)兵對象和范圍,制作極為精巧。