電碼

電碼

電碼,是利用若干個有、無電流脈衝或正負電流脈衝所組成的不同的信號組合,其中每一個信號組合代表一個字母、數字或標點符號。電碼構成的方法很多,現在一般通用的有“莫爾斯電碼”和“五單位電碼” 兩種。莫爾斯電碼由點、劃兩種符號組成。五單位電碼由五個單元組成,每個單元可以是“空”(。)或“傳”(.)的符號。另一種電碼是一組字母或一組數碼代表電文中的一個字或一個短句,如在我國標準電碼本上“0022”代表“中”字。

簡介

每個國家都有自己專用的密電碼,一套至幾套不等(軍事)密電碼。二戰期間日軍的密電碼因系統不同,電碼各別,其中以陸軍密電碼為最難破譯,整個抗戰期間,日軍陸軍與海軍的密電碼始終未曾被破譯過;空軍密電碼則比較簡單,容易破譯。有英文字母的,有數字組成的,也有日文的,其中以英文的為最多。但不論哪種形式,都有一個共同特點,那就是字元之間不留任何空檔,一律緊密連線,不像英文電報每個單詞一組,也不像中文電報每四個數字一組。

另外,各種行業也都有通用的國際電碼。(航海,航空,救援)等等。

莫爾斯電碼

莫爾斯電碼是美國人摩爾斯於1844年發明的。

歷史

最早的莫爾斯電碼是一些表示數字的點和劃。數字對應單詞,需要查找一本代碼表才能知道每個詞對應的數。用一個電鍵可以敲擊出點、劃以及中間的停頓。

雖然莫爾斯發明了電報,但他缺乏相關的專門技術。他與Alfred Vail簽定了一個協定,讓他幫自己製造更加實用的設備。Vail構思了一個方案,通過點、劃和中間的停頓,可以讓每個字元和標點符號彼此獨立地傳送出去。他們達成一致,同意把這種標識不同符號的方案放到莫爾斯的專利中。這就是現在我們所熟知的美式莫爾斯電碼,它被用來傳送了世界上第一條電報。

這種代碼可以用一種音調平穩時斷時續的無線電信號來傳送,通常被稱做連續波(Continuous Wave),縮寫為CW。它可以是電報電線里的電子脈衝,也可以是一種機械的或視覺的信號(比如閃光)。

一般來說,任何一種能把書面字元用可變長度的信號表示的編碼方式都可以稱為莫爾斯電碼。但現在這一術語只用來特指兩種表示英語字母和符號的莫爾斯電碼:美式莫爾斯電碼被使用了在有線電報通信系統;今天還在使用的國際莫爾斯電碼則只使用點和劃(去掉了停頓)。

電報公司根據要發的信的長度收費。商業代碼精心設計了五個字元組成一組的代碼,做為一個單詞傳送。比如:BYOXO ("Are you trying to crawl out of it?";LIOUY ("Why do you not answer my question?",;AYYLU ("Not clearly coded, repeat more clearly."。這些五個字元的簡語可以用莫爾斯電碼單獨傳送。在網路用辭中,我們也會說一些最常用的莫爾斯商用代碼。現在仍然在業餘無線電中使用的有Q簡語和Z簡語:他們最初是為報務員之間交流通信質量、頻率變更、電報編號等信息服務的。

1838年1月8日,Alfred Vail展示了一種使用點和劃的電報碼,這是莫爾斯電碼前身。

作為一種信息編碼標準,莫爾斯電碼擁有其他編碼方案無法超越的長久的生命。莫爾斯電碼在海事通訊中被作為國際標準一直使用到1999年。1997年,當法國海軍停止使用莫爾斯電碼時,傳送的最後一條訊息是:“所有人注意,這是我們在永遠沉寂之前最後的一聲吶喊”!

軍事套用

自從無線電和莫爾斯電碼問世後,軍事通訊進入了一個嶄新的時代,但是無線電通訊完全是一個開放的系統,在己方接受電文的同時,對方也可“一覽無遺”,因此人類歷史上早就伴隨戰爭出現的密碼也就立即與無線電結合,出現了無線電密碼。直到第一次世界大戰結束,所有無線電密碼都是使用手工編碼,毫無疑問,手工編碼效率極其低下,同時由於受到手工編碼與解碼效率的限制,使得許多複雜的保密性強的加密方法無法在實際中套用,而簡單的加密方法又很容易被破譯,因此在軍事通訊領域,急需一種安全可靠而又簡便有效的方法。

電碼構成

莫爾斯電碼由點(.)、劃(-)兩種符號組成:

A .-

B -...

C -.-.

D -..

E .

F ..-.

G --.

H ....

I ..

J .---

K -.-

L .-..

M --

N -.

O ---

P .--.

Q --.-

R .-.

S ...

T -

U ..-

V ...-

W .--

X -..-

Y -.--

Z --..

1 .----

2 ..---

3 ...--

4 ....-

5 .....

6 -....

7 --...

8 ---..

9 ----.

0 -----

? ..--..

/ -..-.

() -.--.-

- -....-

. .-.-.-

構成原則

1.一點為一基本信號單位,每一划的時間長度相當於3點的時間長度。

2.在一個字母或數字內,各點、各劃之間的間隔應為兩點的長度。

3.字母(數字)與字母(數字)之間的間隔為7點的長度。

恩尼格瑪密碼

在密碼學史中,恩尼格瑪密碼機(德語:Enigma,又譯啞謎機,或謎)是一種用於加密與解密檔案的密碼機。確切地說,恩尼格瑪是一系列相似的轉子機械的統稱,它包括了一系列不同的型號。恩尼格瑪在1920年代早期開始被用於商業,也被一些國家的軍隊與政府採用過,在這些國家中,最著名的是第二次世界大戰時的納粹德國。

自從無線電和摩爾斯電碼問世後,軍事通訊進入了一個嶄新的時代,但是無線電通訊完全是一個開放的系統,在己方接受電文的同時,對方也可“一覽無遺”,因此人類歷史上伴隨戰爭出現的密碼,也就立即與無線電結合,出現了無線電密碼。直到第一次世界大戰結束,所有無線電密碼都是使用手工編碼。毫無疑問,手工編碼效率極其低下,同時由於受到手工編碼與解碼效率的限制,使得許多複雜的保密性強的加密方法無法在實際中套用,而簡單的加密方法又很容易被破譯,因此在軍事通訊領域,急需一種安全可靠,而又簡便有效的方法。

1918年德國發明家亞瑟·謝爾比烏斯(Arthur Scherbius)和理察·里特(Richard Ritter)創辦了一家新技術套用公司,曾經學習過電氣套用的謝爾比烏斯,想利用現代化的電氣技術,來取代手工編碼加密方法,發明一種能夠自動編碼的機器。謝爾比烏斯給自己所發明的電氣編碼機械取名“恩尼格瑪”(ENIGMA,意為啞謎),乍看是個放滿了複雜而精緻的元件的盒子,粗看和打字機有幾分相似。可以將其簡單分為三個部分:鍵盤、轉子和顯示器。

恩尼格瑪密碼機恩尼格瑪密碼機

鍵盤一共有26個鍵,鍵盤排列和廣為使用的計算機鍵盤基本一樣,只不過為了使通訊儘量地短和難以破譯,空格、數字和標點符號都被取消,而只有字母鍵。鍵盤上方就是顯示器,這可不是意義上的螢幕顯示器,只不過是標示了同樣字母的26個小燈泡,當鍵盤上的某個鍵被按下時,和這個字母被加密後的密文字母所對應的小燈泡就亮了起來,就是這樣一種近乎原始的“顯示”。在顯示器的上方是三個直徑6厘米的轉子,它們的主要部分隱藏在面板下,轉子才是“恩尼格瑪”密碼機最核心關鍵的部分。如果轉子的作用僅僅是把一個字母換成另一個字母,那就是密碼學中所說的“簡單替換密碼”,而在公元九世紀,阿拉伯的密碼破譯專家就已經能夠嫻熟地運用統計字母出現頻率的方法來破譯簡單替換密碼,柯南·道爾在他著名的福爾摩斯探案《跳舞的小人》里就非常詳細地敘述了福爾摩斯使用頻率統計法破譯跳舞人形密碼(也就是簡單替換密碼)的過程。——之所以叫“轉子”,因為它會轉!這就是關鍵!當按下鍵盤上的一個字母鍵,相應加密後的字母在顯示器上通過燈泡閃亮來顯示,而轉子就自動地轉動一個字母的位置。舉例來說,當第一次鍵入A,燈泡B亮,轉子轉動一格,各字母所對應的密碼就改變了。第二次再鍵入A時,它所對應的字母就可能變成了C;同樣地,第三次鍵入A時,又可能是燈泡D亮了。——這就是“恩尼格瑪”難以被破譯的關鍵所在,這不是一種簡單替換密碼。同一個字母在明文的不同位置時,可以被不同的字母替換,而密文中不同位置的同一個字母,又可以代表明文中的不同字母,字母頻率分析法在這裡絲毫無用武之地了。這種加密方式在密碼學上被稱為“複式替換密碼”。

但是如果連續鍵入26個字母,轉子就會整整轉一圈,回到原始的方向上,這時編碼就和最初重複了。而在加密過程中,重複的現象就很是最大的破綻,因為這可以使破譯密碼的人從中發現規律。於是“恩尼格瑪”又增加了一個轉子,當第一個轉子轉動整整一圈以後,它上面有一個齒輪撥動第二個轉子,使得它的方向轉動一個字母的位置。假設第一個轉子已經整整轉了一圈,按A鍵時顯示器上D燈泡亮;當放開A鍵時第一個轉子上的齒輪也帶動第二個轉子同時轉動一格,於是第二次鍵入A時,加密的字母可能為E;再次放開鍵A時,就只有第一個轉子轉動了,於是第三次鍵入A時,與之相對應的就是字母就可能是F了。

因此只有在26x26=676個字母后才會重複原來的編碼。而事實上“恩尼格瑪”有三個轉子(二戰後期德國海軍使用的“恩尼格瑪”甚至有四個轉子!),那么重複的機率就達到26x26x26=17576個字母之後。在此基礎上謝爾比烏斯十分巧妙地在三個轉子的一端加上了一個反射器,把鍵盤和顯示器中的相同字母用電線連在一起。反射器和轉子一樣,把某一個字母連在另一個字母上,但是它並不轉動。乍一看這么一個固定的反射器好像沒什麼用處,它並不增加可以使用的編碼數目,但是把它和解碼聯繫起來就會看出這種設計的別具匠心了。當一個鍵被按下時,信號不是直接從鍵盤傳到顯示器,而是首先通過三個轉子連成的一條線路,然後經過反射器再回到三個轉子,通過另一條線路再到達顯示器上,比如說上圖中A鍵被按下時,亮的是D燈泡。如果這時按的不是A鍵而是D鍵,那么信號恰好按照上面A鍵被按下時的相反方向通行,最後到達A燈泡。換句話說,在這種設計下,反射器雖然沒有象轉子那樣增加不重複的方向,但是它可以使解碼過程完全重現編碼過程。

使用“恩尼格瑪”通訊時,發信人首先要調節三個轉子的方向(而這個轉子的初始方向就是密匙,是收發雙方必須預先約定好的),然後依次鍵入明文,並把顯示器上燈泡閃亮的字母依次記下來,最後把記錄下的閃亮字母按照順序用正常的電報方式傳送出去。收信方收到電文後,只要也使用一台“恩尼格瑪”,按照原來的約定,把轉子的方向調整到和發信方相同的初始方向上,然後依次鍵入收到的密文,顯示器上自動閃亮的字母就是明文了。加密和解密的過程完全一樣,這就是反射器的作用,同時反射器的一個副作用就是一個字母永遠也不會被加密成它自己,因為反射器中一個字母總是被連線到另一個不同的字母。

“恩尼格瑪”加密的關鍵就在於轉子的初始方向。當然如果敵人收到了完整的密文,還是可以通過不斷試驗轉動轉子方向來找到這個密匙,特別是如果破譯者同時使用許多台機器同時進行這項工作,那么所需要的時間就會大大縮短。對付這樣“暴力破譯法”(即一個一個嘗試所有可能性的方法),可以通過增加轉子的數量來對付,因為只要每增加一個轉子,就能使試驗的數量乘上26倍!不過由於增加轉子就會增加機器的體積和成本,而密碼機又是需要能夠便於攜帶的,而不是一個帶有幾十個甚至上百個轉子的龐然大物。那么方法也很簡單,“恩尼格瑪”密碼機的三個轉子是可以拆卸下來並互相交換位置,這樣一來初始方向的可能性一下就增加了六倍。假設三個轉子的編號為1、2、3,那么它們可以被放成123-132-213-231-312-321這六種不同位置,當然收發密文的雙方除了要約定轉子自身的初始方向,還要約好這六種排列中的一種。

而除了轉子方向和排列位置,“恩尼格瑪”還有一道保障安全的關卡,在鍵盤和第一個轉子之間有塊連線板。通過這塊連線板可以用一根連線把某個字母和另一個字母連線起來,這樣這個字母的信號在進入轉子之前就會轉變為另一個字母的信號。這種連線最多可以有六根(後期的“恩尼格瑪”甚至達到十根連線),這樣就可以使6對字母的信號兩兩互換,其他沒有插上連線的字母則保持不變。——當然連線板上的連線狀況也是收發雙方預先約定好的。

就這樣轉子的初始方向、轉子之間的相互位置以及連線板的連線狀況就組成了“恩尼格瑪”三道牢不可破的保密防線,其中連線板是一個簡單替換密碼系統,而不停轉動的轉子,雖然數量不多,但卻是點睛之筆,使整個系統變成了複式替換系統。連線板雖然只是簡單替換卻能使可能性數目大大增加,在轉子的複式作用下進一步加強了保密性。讓我們來算一算經過這樣處理,要想通過“暴力破解法”還原明文,需要試驗多少種可能性:

三個轉子不同的方向組成了26x26x26=17576種可能性;

三個轉子間不同的相對位置為6種可能性;

連線板上兩兩交換6對字母的可能性則是異常龐大,有100,391,791,500種;

於是一共有17576x6x100,391,791,500,其結果大約為10,000,000,000,000,000!即一億億種可能性!這樣龐大的可能性,換言之,即便能動員大量的人力物力,要想靠“暴力破解法”來逐一試驗可能性,那幾乎是不可能的。而收發雙方,則只要按照約定的轉子方向、位置和連線板連線狀況,就可以非常輕鬆簡單地進行通訊了。這就是“恩尼格瑪”密碼機的保密原理。

量子密碼術

加密是保障信息安全的重要手段之一。當前最常用的加密技術是用複雜的數學算法來改變原始信息。這種方法雖然安全性較高,但存在被破譯的可能,並非絕對可靠。而量子密碼術是一種截然不同的加密方法,主要利用量子狀態來作為信息加密和解密的密鑰。任何想測算和破譯密鑰的人,都會因改變數子狀態而得到無意義的信息,而信息合法接收者也可以從量子態的改變而知道密鑰曾被截獲過。從理論上來說,用量子密碼加密的通信不可能被竊聽,安全程度極高。世界上第一個量子密碼通信網路2004年6月3日在美國麻薩諸塞州劍橋城正式投入運行。

愷撒密碼

愷撒愷撒

密碼的使用最早可以追溯到古羅馬時期,《高盧戰記》有描述愷撒曾經使用密碼來傳遞信息,即所謂的“愷撒密碼”,它是一種替代密碼,通過將字母按順序推後起3位起到加密作用,如將字母A換作字母D,將字母B換作字母E。因據說愷撒是率先使用加密函的古代將領之一,因此這種加密方法被稱為愷撒密碼。這是一種簡單的加密方法,這種密碼的密度是很低的,只需簡單地統計字頻就可以破譯。現今又叫“移位密碼”,只不過移動的為數不一定是3位而已。

密碼術可以大致分為兩種,即易位和替換,當然也有兩者結合的更複雜的方法。在易位中字母不變,位置改變;替換中字母改變,位置不變。

將替換密碼用於軍事用途的第一個檔案記載是愷撒著的《高盧記》。愷撒描述了他如何將密信送到正處在被圍困、瀕臨投降的西塞羅。其中羅馬字母被替換成希臘字母使得敵人根本無法看懂信息。

蘇托尼厄斯在公元二世紀寫的《愷撒傳》中對愷撒用過的其中一種替換密碼作了詳細的描寫。愷撒只是簡單地把信息中的每一個字母用字母表中的該字母后的第三個字母代替。這種密碼替換通常叫做愷撒移位密碼,或簡單的說,愷撒密碼。

儘管蘇托尼厄斯僅提到三個位置的愷撒移位,但顯然從1到25個位置的移位我們都可以使用, 因此,為了使密碼有更高的安全性,單字母替換密碼就出現了。

如:

明碼錶 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

密碼錶 Q W E R T Y U I O P A S D F G H J K L Z X C V B N M

明文 F O R E S T

密文 Y G K T L Z

只需重排密碼錶二十六個字母的順序,允許密碼錶是明碼錶的任意一種重排,密鑰就會增加到四千億億億多種,我們就有超過4×1027種密碼錶。破解就變得很困難。

如何破解包括愷撒密碼在內的單字母替換密碼?

方法:字母頻度分析

儘管我們不知道是誰發現了字母頻度的差異可以用於破解密碼。但是9世紀的科學家阿爾·金迪在《關於破譯加密信息的手稿》對該技術做了最早的描述。

“如果我們知道一條加密信息所使用的語言,那么破譯這條加密信息的方法就是找出同樣的語言寫的一篇其他文章,大約一頁紙長,然後我們計算其中每個字母的出現頻率。我們將頻率最高的字母標為1號,頻率排第2的標為2號,第三標為3號,依次類推,直到數完樣品文章中所有字母。然後我們觀察需要破譯的密文,同樣分類出所有的字母,找出頻率最高的字母,並全部用樣本文章中最高頻率的字母替換。第二高頻的字母用樣本中2號代替,第三則用3號替換,直到密文中所有字母均已被樣本中的字母替換。”

以英文為例,首先我們以一篇或幾篇一定長度的普通文章,建立字母表中每個字母的頻度表。

在分析密文中的字母頻率,將其對照即可破解。

雖然設密者後來針對頻率分析技術對以前的設密方法做了些改進,比如說引進空符號等,目的是為了打破正常的字母出現頻率。但是小的改進已經無法掩蓋單字母替換法的巨大缺陷了。到16世紀,最好的密碼破譯師已經能夠破譯當時大多數的加密信息。

局限性:

短文可能嚴重偏離標準頻率,假如文章少於100個字母,那么對它的解密就會比較困難。

而且不是所有文章都適用標準頻度:

1969年,法國作家喬治斯·佩雷克寫了一部200頁的小說《逃亡》,其中沒有一個含有字母e的單詞。更令人稱奇的是英國小說家和拼論家吉爾伯特·阿代爾成功地將《逃亡》翻譯成英文,而且其中也沒有一個字母e。阿代爾將這部譯著命名為《真空》。如果這本書用單密碼錶進行加密,那么頻度分析破解它會受到很大的困難。

一套新的密碼系統由法國外交家維熱納爾(Blaise de Vigenère)於16世紀末確立。其密碼不再用一個密碼錶來加密,而是使用了26個不同的密碼錶。這種密碼錶最大的優點在於能夠克制頻度分析,從而提供更好的安全保障。

維吉尼亞密碼

人們在單一愷撒密碼的基礎上擴展出多表密碼,稱為“維吉尼亞”密碼。它是由16世紀法國亨利三世王朝的布萊瑟·維吉尼亞發明的,其特點是將26個愷撒密表合成一個,見下表:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

B B C D E F G H I J K L M N O P Q R S T U V W X Y Z A

C C D E F G H I J K L M N O P Q R S T U V W X Y Z A B

D D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

E E F G H I J K L M N O P Q R S T U V W X Y Z A B C D

F F G H I J K L M N O P Q R S T U V W X Y Z A B C D E

G G H I J K L M N O P Q R S T U V W X Y Z A B C D E F

H H I J K L M N O P Q R S T U V W X Y Z A B C D E F G

I I J K L M N O P Q R S T U V W X Y Z A B C D E F G H

J J K L M N O P Q R S T U V W X Y Z A B C D E F G H I

K K L M N O P Q R S T U V W X Y Z A B C D E F G H I J

L L M N O P Q R S T U V W X Y Z A B C D E F G H I J K

M M N O P Q R S T U V W X Y Z A B C D E F G H I J K L

N N O P Q R S T U V W X Y Z A B C D E F G H I J K L M

O O P Q R S T U V W X Y Z A B C D E F G H I J K L M N

P P Q R S T U V W X Y Z A B C D E F G H I J K L M N O

Q Q R S T U V W X Y Z A B C D E F G H I J K L M N O P

R R S T U V W X Y Z A B C D E F G H I J K L M N O P Q

S S T U V W X Y Z A B C D E F G H I J K L M N O P Q R

T T U V W X Y Z A B C D E F G H I J K L M N O P Q R S

U U V W X Y Z A B C D E F G H I J K L M N O P Q R S T

V V W X Y Z A B C D E F G H I J K L M N O P Q R S T U

W W X Y Z A B C D E F G H I J K L M N O P Q R S T U V

X X Y Z A B C D E F G H I J K L M N O P Q R S T U V W

Y Y Z A B C D E F G H I J K L M N O P Q R S T U V W X

Z Z A B C D E F G H I J K L M N O P Q R S T U V W X Y

亨利三世畫像亨利三世畫像

維吉尼亞密碼引入了“密鑰”的概念,即根據密鑰來決定用哪一行的密表來進行替換,以此來對抗字頻統計。假如以上面第一行代表明文字母,左面第一列代表密鑰字母,對如下明文加密:

TO BE OR NOT TO BE THAT IS THE QUESTION

當選定RELATIONS作為密鑰時,加密過程是:明文一個字母為T,第一個密鑰字母為R,因此可以找到在R行中代替T的為K,依此類推,得出對應關係如下:

密鑰:RELAT IONSR ELATI ONSRE LATIO NSREL

明文:TOBEO RNOTT OBETH ATIST HEQUE STION

密文:KSMEH ZBBLK SMEMP OGAJX SEJCS FLZSY

歷史上以維吉尼亞密表為基礎又演變出很多種加密方法,其基本元素無非是密表與密鑰,並一直沿用到二戰以後的初級電子密碼機上。

柵欄密碼

所謂柵欄密碼,就是把要加密的明文分成N個一組,然後把每組的第i個字連起來,形成一段無規律的話。

一般比較常見的是2欄的棚欄密碼。

加密

比如明文:THERE IS A CIPHER

去掉空格後變為:THEREISACIPHER

兩個一組,得到:TH ER EI SA CI PH ER

先取出第一個字母:TEESCPE

再取出第二個字母:HRIAIHR

連在一起就是:TEESCPEHRIAIHR

這樣就得到我們需要的密碼了。

解密

而解密的時候,我們先把密文從中間分開,變為兩行:

T E E S C P E

H R I A I H R

再按上下上下的順序組合起來:

THEREISACIPHER

分出空格,就可以得到原文了:

THERE IS A CIPHER

但是有些人就偏不把密碼作出2欄,比如:

明文:THERE IS A CIPHER

七個一組:THEREIS ACIPHER

抽取字母:TA HC EI RP EH IE SR

組合得到密碼:TAHCEIRPEHIESR

那么這時候就無法再按照2欄的方法來解了...

不過棚欄密碼本身有一個潛規則,就是組成棚欄的字母一般不會太多。(一般不超過30個,也就是一、兩句話)

這樣,我們可以通過分析密碼的字母數來解出密碼...

比如:TAHCEIRPEHIESR

一共有14個字母,可能是2欄或者7欄...

嘗試2欄——失敗

嘗試7欄——成功

然而當棚欄和拼音相結合後,誕生出一種令人痛恨的新思路...

比如在正道學院網路版的開篇flash中出現過這樣一個棚欄:

QGBKSYSHJIEUEIIIIAN

總共19個字母~貌似不符合棚欄的規則...其實是因為出現了一個叫做捆綁的東西:

Q G B K S Y SH J

I E U E I I I IAN

上面是聲母,下面是韻母...

聲母中的sh和韻母中的ian都是被作者當為一個字元使用...

相關搜尋

熱門詞條

聯絡我們