古代密碼學與信息安全

二次元世界的小夥伴對「風林火山」這個詞不會感到陌生,日本戰國時期的一方諸侯武田信玄把「疾如風、徐如林、侵掠如火、不動如山」印在自己的軍旗上,幾百年後又通過影視劇和動漫作品變得廣為人知。這句話實際上出自《孫子兵法·軍爭》中的名句「其疾如風、其徐如林、侵掠如火、不動如山」,意思也不難理解——一支理想的軍隊,就應該做到進攻時要像風和火一樣迅疾,防守時要像樹林和大山一樣整齊和穩定。

▲其實後面沒有出現的兩句可能更加重要

 

不過,這段話後面還有兩句——「難知如陰,動如雷震」,說的就不僅僅是戰爭上的事了,要做到「難知如陰」,除了臨場戰術意義上的隱蔽之外,對己方信息的保密是更為重要的環節。因為戰爭打的就是突然性,展開陣勢打堂堂之陣,是成本最高的一種,如果能隱藏好自己的真實意圖,打對方一個措手不及,就可以用小的代價換取大勝利。所以,在保密方面下點功夫,花點成本,是很划算的。

這個道理,自從有戰爭以來,就為天下的兵家所懂得——不懂的都被滅了,《孫子兵法·用間》中總結:「事莫密於間」、「間事未發而先聞者,間與所告者皆死」。道理不難懂,不過應該以怎樣的具體措施來落地,那辦法可就多啦。

▲「陰符」記載於古兵書《六韜》中相傳為姜太公所發明

相傳在中國周朝,就出現了「陰符」和「陰書」兩種保密方法。所謂陰符,就是事先製作一些長度不同的竹片,然後約定好每個長度的竹片代表的內容,比如,三寸表示潰敗,四寸表示將領陣亡,五寸表示請求增援,六寸表示堅守……一尺表示全殲敵軍等等。這種「陰符」無文字,無圖案,只有前方少數將領和後方指揮人員了解含義,即使傳令兵被俘或叛變,敵人也搞不懂幾張長短不一的竹片到底代表了什麼。

▲竹簡可拆,使陰書成為可能

陰符保密性肯定不錯,不過能傳達的信息也有限,要是戰場有超出事先預料的情況,陰符也就表達不了。為了彌補這個缺點,又出現了「陰書」,即把信息以明文寫在竹簡或木簡上,然後將竹簡或木簡隨機分為三份,由三名傳令兵各執一份分別送達。收件人收齊後,再把三份「陰書」拼合起來,完整內容就出現了。這種「陰書」能傳遞更為複雜的信息,即使某一信使被敵方抓住,敵方也得不到完整的情報。

「陰書」兼顧了保密性和靈活性,但也同時也是為了靈活性而降低了保密性,因為如果其中一份落入敵手,雖然信息不全,但敵人也可以猜到一二,總歸是有隱患。到了宋代,為了避免這種情況,出現了升級版的陰符——字驗。這種方法見於宋代軍事類書《武經總要》,大致過程是這樣的——

先收集軍事中常用的40個短語,然後給每個短語分別編碼,比如:1.請弓;2.請箭;3.請刀;4.請甲……35.戰大捷;36.將士投降;37.將士叛;38.士卒病;39.都將病;40.戰小勝。將領帶兵出發前,後方指揮機關同這位將領約定用一首四十字的五言律詩作為密鑰,並發給將領一本有40個短語編碼順序的密碼本,編碼順序可變化,不同的編碼順序可形成若干不同的密碼本。

如以《詠史》這首詩為密鑰:「漢家青史上,計拙是和親。社稷依明主,安危托婦人。豈能將玉貌,便擬靜胡塵。地下千年骨,誰為輔佐臣?」假如需要補充箭矢,將領就從密碼本中查出「請箭」的編碼是「2」,詩中第2個字是「家」字,於是,將領就把「家」字寫入一件無關機密的普通信件中,在「家」字蓋上印章。後方在收到信件後,查出「家」字在詩中的順序是第2個字,再對照密碼本上的編碼譯出「請箭」的信息,然後就可以決定下一步的行動了。這種辦法非常巧妙,由於信件無關機密,即使關信人叛變或被被俘,均不能從中解讀出有用的信息,蓋了印章的字更是會使人不明就裡,保密的目的也就達到了。

南宋還出現了密寫的先進技術。據《三朝北盟彙編》記載,公元1126年,開封被金軍圍困之時,宋欽宗「以礬書為詔」。因為「以礬書帛,入水方見」,只有把布帛浸入水中,隱藏其上的字跡才會顯露出來,金人不知道此術,也就無從知道情報的內容了。除此之外,還有譬如將情報寫於絲綢或紙張上,然後搓成圓球用蠟裹住藏在信使身上或將其吞入腹中傳遞,這種保密性傳遞方法一直沿用至清朝。

▲凱撒密碼就是簡單的移位,在當時是夠用了

 

古代的歐洲文明中,也同樣有保密技術出現。傳說在古希臘時期就用過一種笨辦法——把奴隸的頭髮剃光,在頭上寫字,頭髮長出來後再派出去傳遞秘密情報(奴隸:MD洗頭都不行……),可謂最古老的「加密」了。公元前4世紀的伯羅奔尼撒戰爭期間,希臘人又用了在腰帶上書寫移位後的文字來加密傳遞情報的方法。古羅馬時期發明了「愷撒密碼」,就是把明文中的各個字母換成錯開一定間隔,形成秘文傳遞。

到16世紀,西班牙、英、法、意等國家之間相互競爭劇烈,情報活動也就隨之變得非常頻繁,在其利用使館進行情報傳遞的過程,各國使節就已普遍使用編製的密碼書寫信件來向國內報告情況,當時威尼斯公國駐英國使節米凱爾所用的密碼,英國人絞盡腦汁也沒能搞明白,直至3個多世紀後的1863年才被人破譯。對於加密和破譯的需求,甚至直接催生了一門新的學科——「密碼學」。

第三任美國總統傑弗遜對密碼學很有研究,於1795年發明了一種加密裝置,被稱為「傑弗遜圓盤」(Jefferson disk),或叫做「傑弗遜轉輪加密器」(Jefferson wheel cipher)。這個裝置有36片同樣大小的木製轉輪,套在一根鐵杆上,每片轉輪上的圓周邊緣上刻有亂序的26個英文字母表。

進行秘密通信的雙方必須各自擁有完全一樣轉輪加密器。當要把一段文字(不超過36字)秘密通知對方時,只需轉動加密器上的各片轉輪,使這段文字正好出現在同一行上,這時轉輪上排列的其他25行都是無意義的亂碼;此時發信人抄寫其中任意一行的亂碼,關交給信使傳送(加密)。對方收到亂碼信後,只需拿出自己保存的同樣的裝置,轉動上面各片轉輪,讓它們的排列使得這段亂碼正好出現在同一行上,然後他查看其他25行上的內容,其中必然有一行會顯示出真正的信息(解密)。

傑弗遜加密器屬於「多表替換」型加密,很難被破解,除非能得到加密裝置。據說美國軍隊直到上世紀60年代仍然在使用。當然,這種加密器的缺點也是很明顯的,即它每次只能傳送簡單的信息(字長不能超過轉輪的片數),而且參與通信的各方不能太多。

▲這種密碼機裝備德國海軍

使英國從1942年2月到12月都沒能

解讀德國潛艇的信號

當然,最為人所知的加密裝置,當非二戰時期德國的「恩尼格瑪」密碼機莫屬。這種密碼機最初並不是軍用品,而是在20年代早期被用於傳遞商業信息(商場如戰場)。恩尼格瑪的原理並不複雜,主要由鍵盤,擾頻器,顯示屏三部分組成,鍵盤輸入字母,擾頻器為字母加密,顯示屏顯示字母(「顯示屏」是由一系列用燈照亮的字母組成)。

▲恩尼格瑪的構造圖

 

最關鍵的是擾頻器,也有三個主要部分,插線板-轉輪-發射器。通過插線板可以講字母對換,然後經過三個聯接在一起的轉輪,每輸入一次,轉輪往前進一步,則下一個文字轉輪狀態就已經變化了,最後是反射器,將輸入文字變換為另一個文字返回。最初的恩尼格瑪機通過在插線板中交換6對字母,再加上三個轉輪,總共可以生成的密匙總量是10的16次方。也就是說如果每一秒鐘嘗試一個密匙,也需要3億年時間才能全部嘗試完,可以說恩尼格瑪機實現了加密者的夢想。

▲圖靈用來破譯的機器

可見解密比加密難多了

不過,魔高一尺道高一丈,這個堪稱完美的加密機最後由於情報泄露(構造被賣給了英國)、操作員的失誤、使用步驟錯誤、機器或密碼本被繳獲等原因,再加上英國擁有偉大的數學家圖靈,恩尼格瑪最終還是被成功破譯,這也成為戰爭史乃至科學史上的一段傳奇。

除此以外,歷史上還出現過各種加密的奇招,比如我們非常熟悉的美軍「風語者」——以印第安那瓦霍族人的土語為基礎編製密碼,由於語言的罕見,可謂密上加密。其實美國在一戰時間就使用過這種方法,1918年9月,在第二次索姆河戰役中,美國第30步兵師將一組切諾基族士兵用於電文發送,開闢了美軍將美洲土著語言用於秘密通訊的先例。美軍第36步兵師也從實踐中發現了印第安語的妙用,安排14名巧克陶族士兵接受電訊訓練,幫助美軍在法國默茲-阿貢戰役中贏得了幾場重要戰鬥。

▲監聽到在正在用印第安語通話的美軍,

日軍一臉懵

無獨有偶,在抗日戰爭中,來自西南的滇軍同樣用過這種土法,全部使用白族士兵當通訊員,就算直接明語通話被日軍監聽到也聽不懂,在八十年代的對越作戰中,解放軍乾脆讓溫州籍戰士充當通訊員,越軍長年與中國對抗,能聽懂西南方言、粵語和普通話,但依然在溫州話面前敗下陣來——保持我國境內語言的多樣性還是很重要的,因為不知道什麼時候,方言或少數民族語言就會成為自帶加密屬性的「戰略資源」。

加密是為了保住秘密,如果加密強度不夠,或者因為別的原因被破解,後果也就非常嚴重。甲午戰爭中,清政府使用的密碼過於簡單,被日本輕鬆破譯,不光在戰爭中喪師失地,在談判中也被對手牢牢控制。德軍的恩尼格瑪被破譯後,許多U艇也就隨之暴露了位置,被盟軍反潛兵力一艘接一艘的送進了海底,這些教訓不可謂不慘痛。

▲因為暴露位置而遭到追殺的潛艇

在我們今天的生活中,仍然大量充斥著各種密碼,你的銀行卡、手機、郵箱、社交賬號……無不要使用密碼來保證信息和財產安全,一旦泄露,這後果難以想像。當然,今天我們所使用的加密技術目前還是值得信任的,只要不使用過於簡單的密碼,並且確保不會外泄,通常也不會有什麼問題。

其實,密碼的存在,更多的是需要一層屏障,保護外來入侵,防止有心無心地窺探。願你工作中也處處有安全防護!

延伸閱讀

密碼學與安全百科全書》

程慶豐 李宏欣 趙光勝

ISBN 9787030323767

內容簡介

《密碼學與安全百科全書》匯聚了世界各地300多位著名密碼學家和網路安全專家的成果結晶,系統、全面地介紹了密碼學與網路安全等相關領域的專業術語1050條。《密碼學與安全百科全書》以字母表為序將全部術語按照首字母進行歸類,共計25個部分。每條術語分為同義詞、相關概念、定義、背景、理論、應用、公開問題和未來方向以及推薦閱讀等多個方面進行介紹,有利於讀者對相關術語進行全面的理解和掌握。

(本期編輯:王芳)

一起閱讀科學!

科學出版社│微信ID:sciencepress-cspm

專業品質  學術價值

原創好讀  科學品味

更多好素材,期待您的來稿

與科學相約 | 科學出版社徵稿啟事

點擊「

閱讀原文

」可購買本書

推薦閱讀:

五億條用戶數據泄漏背後,老舊安全戰略思想不管用了
電話也能越獄,由Securus伺服器被黑客入侵而引發的電話追蹤事件
新類型【漏洞】驗證碼大小可控導致的拒絕服務攻擊漏洞
Nmap擴展開發(三)

TAG:安全 | 信息安全 | 密碼 | 密碼學 | 古代 | 信息 |