替換式密碼

替換式密碼，又名取代加密法，是密碼學中按規律將文字加密的一種方式。替換式密碼中可以用不同字母數為一單元，例如每一個或兩個字母為一單元，然後再作加密。密文接收者解密時需用原加密方式解碼才可取得原文字。由於拼音文字中字的組成為有限的字母，以英語為例只有26個字母，組成可能的單元數較少，因此使用替換式密碼相對較為容易，而且亦可使用簡單機械進行加密；相反，非拼音文字如中文則因單元數非常大難以使用一般加密方式，必需建立密碼本，然後逐字替換。更何況某些非拼音文字中字字皆由不同大小的字根來組字，較難轉換，因此使用替換式密碼的示例比較少。當以替換式密碼與相比較時，可以發現轉位式密碼只是改變明文中單元的位置，而單元本身沒有轉變；相反，替換式密碼只是轉換單元，但密文中單元的位置沒有改變:13。替換式密碼亦有許多不同型別。如果每一個字母為一單元。單表加密只可在一個單元中使用同一種替換加密，而多表加密則可在一個單元使用不同的加密方式，明文單元對映到密文上可以有好幾種可能性，反之亦然:13。簡易替換密碼.簡易替換加密是一種以特定方式改變字母表上字母順序，並以此順序書寫的加密方式。這樣一張改變了字母次序的字母表即為『替換表』。替換表可以以偏移或逆轉或更複雜方式構造，此時稱之為『混合表』。傳統上會先把一個關鍵詞寫在字母表最前面，再刪去重複字母，這樣就能得到一個混合表。例子.使用混合表系統，關鍵字為“zebras」：明文為：flee at once. we are discovered!加密結果為：SIAA ZQ LKBA. VA ZOA RFPBLUAOAR!傳統上，密文會省略標點符號和空格，同時會有一固定長度的單位，以避免傳輸錯誤和變相顯示明文中單詞的邊界。這些單位被稱為“組”，並使其作為一額外檢查。通常都會使用五個字母為一組:17，然後使用電報傳送訊息：SIAAZ QLKBA VAZOA RFPBL UAOAR如果該段明文的長度不能被五整除，將需要在最後用“NULL”補齊:1-7。這些空字元可以是任何字元，因為解密後可以看出是明顯的廢話，所以接收器可以很容易地發現並將其丟棄。如若接收發現密文的長度不能被五整除，就可以得知傳輸出錯，並要求重新傳送。簡易替換密碼有時不一定要替換至另一字母，例如在豬圈密碼中，密文由格子的符號組成。例子如下：這些功能增加的安全性與以前其實相差不大，因為基本上所有奇怪的符號最後都會轉換成A-Z字母。有時銷售人員會在他們的名單和目錄中使用非常簡單的加密法：用字母來代替數字。例子：MAT代表120。簡易替換密碼的安全性.簡易替換密碼的缺點是字母表中的最後幾個字母往往留在最後。加強的辦法是在加密後再做一次縱欄式移調，但很多時也沒有這樣做。儘管加密用到的金鑰可能性很大，密碼分析就能透過的分析推斷最常見的單元的意義，即頻率分析。這使破解者可用剔除法，把有個單元的意思解出來，見一個破解的例子。在某些情況下，可以從它們的字母的格局來破解，例如“attract”和“osseous”是英語中僅有的“ABBCADB”模式的“根”，即如遇見有簡易替換密碼的密文中出現“ABBCADB”，即可猜測其為“attract”或“osseous”。康樂及報紙拼圖等包含著不少這種加密法。按照英語的，密文平均最少需要27.6個字母才能破解混合表簡易替換密碼。而在正常情況下，假設遇到的是新排列方式，但通常都需要約50個字母。然而，當密文有極平坦的頻率分佈，密文長度的需求可能越來越大。同時，加密者可以新增空字元來造成平坦的頻率分佈。另外，有另一種方法來“偽造”頻率分佈，名為漏字文。顧名思義，這些文章會有意避免使用某個或某幾個特定字母。如果漏掉的是E，那麼若然繼續以正常的頻率分析就不可能找出真正的明文。諧音替換法.早期的加密中，為增加替換式密碼應付頻率分析攻擊的強度，有時會採用“諧音”來改變明文字母頻率。在這種加密演算法中，明文字母可以對映到多個密文符號。通常情況下，頻率最高的明文符號有更多的諧音符號，使頻率分佈更為平坦，讓分析更困難。但亦因此，只是字母之間互相替換就會造成不夠分配，從而有了好幾種不同的解決方法。其中最簡單的方式可以算是用1-0共10個數字作為某些字母的替換。另一種方法則是將現有的字母分開成原字母配以簡單的變化、大寫、小寫、上下倒轉的字母、映象文字一種有趣的變化名為:1-8。此加密法有許多不同的版本，之間的區別來自其字首。而該字首來自宣讀來訪貴賓稱號的公職人員名字。這種密碼結合一個小型組成一個大型的諧音替換表。在此密碼中，常用單詞會按密碼本加密，餘下字母則按另一本密碼本加密，兩者符號最後在密文中混起來，以減低簡易替換密碼中被破解的風險:1-8。路易十四所使用的密碼是創立的偉大密碼，該密碼直至法國王室廢止後百年才被破解。15世紀早期至18世紀後期，命名密碼是外交檔案及間諜最常使用的加密，然而其中大多數仍然使用加密效能較差的命名密碼。雖然由十六世紀中葉開始政府情報機構的密碼分析員就破解部分命名密碼法，但使用者通常的反應僅僅是加大諧音替換表。十八世紀後期，諧音替換系統開始消亡之時，一些命名密碼已有高達5萬個符號。然而，並非所有命名密碼法都已被破解。直到今天，仍然不時有新的命名密碼被破解的新聞。比爾密碼是另一個諧音替換法的例子。這個故事指在1819年至1821年期間由一個加密文字來隱藏美國獨立宣言中所述的寶藏。在這裡，每個密文字元由一個數字替換。數字代表著獨立宣言中第幾個字的第一個字母。獨立宣言中許多字的首字母都是一樣的，而密文數字能是其中任何一個，例如正文中第二和第六個字都是“I”開頭，即“I”既可以是2，又可以是6。而解讀僅僅就是把密文中的數字。斯塔爾則描述了另一個諧音替換密碼，其密碼是第一次嘗試在電腦的資料庫上加密。在斯塔爾的方法中，無論是明文還是密文都是以二進位制字串儲存，因此諧音的數量可以非常大，使得頻率分析比平常更為困難。多表替換加密.在1467年，多表替換密碼由萊昂·巴蒂斯塔·阿爾伯蒂以圓碟的形式首次描述。約翰尼斯·特里特米烏斯所著的《隱寫術》描述了一個更複雜的混合字母版本:139。在一個多表替換密碼中，會使用多個字母作為密碼。為了加快加密或解密速度，所有的字母通常寫在一張表格上，密碼學上稱作tableau。這種表格通常是26×26，因為這樣才能放下全部26個英文字母。填充表格及選擇下次使用的字母的方法，就是不同多字母替換密碼之間的定義。多字母替換密碼比單字母更難打破，因為其替換可能性多，密文要較長才可。其中最著名的一種為吉奧萬·巴蒂斯塔·貝拉索於1585年推出的維吉尼亞密碼:34。它於1863年之前一直未被破解。法國人稱它作“不能破譯的密碼”維吉尼亞密碼中，表格的第一行只需直接填上26個字母，然後以下每一行的字母都是向左偏移一格。要用這種密碼需要使用一個關鍵字來作為金鑰。關鍵字每次用完就再次重複。假設關鍵字是“CAT”，明文的第一個字由“C”加密，第二個字由“A”加密，第三個則由“T”加密，然後再回到C加密，一直重複。然後按照右邊的密碼表加密，例如BALL用CAT作關鍵字時會加密至DAEN，可見即使是同一個“L”亦會加密至另一個字母。現實中，維吉尼亞密碼的關鍵字非常長。1863年，少校發明瞭一種方法的數量，因此，極短的密文難以用此辦法找出。因此，即使在今天，如果在表格中使用混合表加密，或關鍵字是隨機的，維吉尼亞密碼理論上亦難以破解。但由於實際上很難用到這些方法，維吉尼亞密碼的使用越來越少。其他著名的多字母替換加密包括：現代的流密碼中可以看出，現代的多表替換加密都努力改進流金鑰，使其盡可能的長及不可預知。表格式替換加密.最早的實用表格式替換密碼是查爾斯·惠斯登爵士於1854年所創的波雷費密碼。在此密碼中，5×5的方格中填滿了混合字母。波雷費密碼於第二次波耳戰爭開始直到第二次世界大戰為止一直用於軍事用途:26。機械替換加密.從第一次世界大戰時期開始，直到電腦被廣泛使用，多字母替換密碼一直在機械上被廣泛應用。幾位發明家於同一時間有著類似的想法，1919年間已有四次關於的專利申請。其中最重要並著名的可算是德意志國防軍於1930年代所用的恩尼格瑪密碼機。#重定向一次性密碼本.一次性密碼本是一種頗特別的替換密碼。它由於第一次世界大戰後期建立。克勞德·夏農約在第二次世界大戰期間，在數學上證明它的保密性牢不可破，其過程於1940年末首次出版。在常見的做法中，一次性密碼本可以被稱為一個單次替換密碼。通常情況下，明文字母將以某種方式。一次性密碼本在大多數情況下都是不切實際或難以使用，因為它需要關鍵字跟明文一樣古巴危機後，莫斯科-華盛頓熱線中開始使用一次性密碼本來加密訊息:718。現代密碼學中的替換加密.上述的替換式密碼，尤其那些是隻需使用鉛筆和紙張的手動加密密碼，都不再經常使用。然而，即使到了今天，替換加密的概念仍在進步。從一個夠新奇的角度來看，現代位元導向式的分組密碼仍可視為使用大量二進位制字母的替換加密。此外，分組密碼通常包含較小的替換表，名為S-box:3-14，其同時包含邏輯異或演算法:3-14。換網路。