640 likes | 826 Views
Chapter 3. 傳統對稱式金鑰加密法. 學習目標. 定義對稱式金鑰加密法的術語及概念 強調兩種不同的傳統加密法:取代加密法及換位加密法 敘述對稱加密法的破密分析之範疇 說明串流加密法及區塊加密法的概念 探討過去最常使用的加密法,例如迷團機. 3.1 簡介. 圖 3.1 顯示對稱式加密法的概念。 由 Alice 傳送給 Bob 的訊息叫明文;而此訊息經由通道傳送時,稱為密文。 Alice 以加密演算法和共享密鑰產生密文;為了使密文轉換成明文, Bob 使用解密演算法以及同一組共享密鑰。. 3.1 簡介 ( 續 ). 本節討論主題 :
E N D
Chapter 3 傳統對稱式金鑰加密法
學習目標 • 定義對稱式金鑰加密法的術語及概念 • 強調兩種不同的傳統加密法:取代加密法及換位加密法 • 敘述對稱加密法的破密分析之範疇 • 說明串流加密法及區塊加密法的概念 • 探討過去最常使用的加密法,例如迷團機
3.1 簡介 • 圖3.1顯示對稱式加密法的概念。 • 由Alice傳送給Bob的訊息叫明文;而此訊息經由通道傳送時,稱為密文。Alice以加密演算法和共享密鑰產生密文;為了使密文轉換成明文,Bob使用解密演算法以及同一組共享密鑰。
3.1 簡介 (續) • 本節討論主題: • Kerckhoff’s 原理 • 破密分析 • 傳統加密法的類型
3.1 簡介 (續) • 假如 P 是明文,C 是密文,K 是金鑰 • 假設 Bob 產生 P1;我們證明 P1 = P
圖 3.2 以同一把金鑰加密或解密的對稱式金鑰加密法
3.1.1 Kerckhoff’s 原理 • 根據Kerckhoff’s 原理,必須假定敵人Eve知道加密/解密演算法。密鑰為此密碼被攻擊的唯一抵抗力。
3.1.2 破密分析 • 密碼學可說是創造密碼的技術與美學;而破密分析則為破解密碼的技術與美學。 圖 3.3 破密分析攻擊
3.2 取代加密法 • 取代加密法是以一個符號取代另一個符號。取代加密法可以歸類為單字母加密法或多字母加密法。 • 本節討論主題包括: • 單字元加密法 • 多字母加密法
注意 3.2 取代加密法 (續) 取代加密法是以另外的符號代替原來的符號
注意 3.2.1 單字母加密法 在單字母取代法中,明文裡的符號和密文的符號通常都是一對一的。
範例3.1 • 下面顯示的是明文和其對應的密文,明文用小寫字體,密文則用大寫字體。這很可能為單字母加密法,因為兩個 l 在轉換為密碼時都變成了 0。
範例3.2 • 下面顯示明文和其對應的密文,這就不是單字母加密法,因為每個 l 轉換成密碼時都變成不同的字,第一個變成 N,第二個變成 Z。
加法加密法 • 最簡單的單字母加密法就是加法加密法。此加密法有時稱為位移加密法,亦稱為凱撒加密法,但加法加密法比較能顯示其數學意涵。
注意 加法加密法 (續) 若是加法加密法,其明文、密文和金鑰都是Z26中的整數。
範例3.3 • 使用加法加密法,以金鑰 = 15 加密訊息 「hello」。 • 解法:我們以字對字的方式應用加密演算法於明文。
範例3.4 • 使用加法加密法,以金鑰 = 15 解密訊息「WTAAD」。 • 解法:我們以字對字的方式應用解密演算法於明文。
注意 位移加密法和凱撒加密法 • 加法加密法也稱為位移加密法, Julius Ceasar利用加法加密法與他的屬下聯繫,因此加法加密法有時也稱為凱撒加密法,凱撒以 3 當成金鑰。 加法加密法有時候被稱為位移加密法或凱撒加密法。
範例3.5 • Eve已截取的密文「UVACLYFZLJBYL」。證明她如何使用暴力攻擊破解加密法。
範例3.6 • Eve攔截了以下密文,並用統計攻擊找到明文。 • 解法:當Eve將密文中字母出現的頻率列表顯示時,她得到:I=14,V=13,S=12等。最常出現的字母是I,頻率為14次,顯示I有可能對應明文中的字此e,並表示金鑰=4。
注意 乘法加密法 在乘法加密法中,明文和密文都是Z26的整數;金鑰為一個Z26*的整數。
範例3.7 • 乘法加密法的金鑰範圍為何? • 解法:金鑰必須在Z26*之內,此組合只有12個:1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25。
範例3.8 • 我們使用乘法加密法和金鑰 7 加密訊息「hello」,其密文為「XCZZU」。
範例3.9 • 仿射加密法使用一對金鑰,第一把出自Z26*,第二把出自Z26。其金鑰範圍大小為26 × 12 = 312。
範例3.10 • 使用仿射加密法及金鑰對(7, 2)加密訊息「hello」。 • 解法
範例3.11 • 使用仿射加密法及模數 26 裡的金鑰對 (7, 2) 解密訊息「ZEBBW」。 • 解法
範例3.12 • 加法加密法可視為仿射加密法裡當k1 = 1時的特例,而乘法加密法為k2 = 0時的特例。
單字母取代加密法 • 由於加法、乘法和仿射加密法的金鑰範圍很小,所以很容易受到暴力攻擊。 • 更好的解決方法就是建立明文每個字元和其密文字元之間的對應,Alice和Bob能公開陳列每個字元的對應。
範例3.13 • 我們可以使用圖3.12的金鑰加密此訊息 其密文為
3.2.2 多字母加密法 • 在多字母取代加密法中,每個字元的出現都可能有不同代換。明文裡的一個字元和密文裡的一個字元之間的關係是一對多。
範例3.14 • 假設Alice和Bob同意使用初始金鑰值為k1 = 12的自動金鑰加密法。現在Alice要傳送訊息「Attack is today」的訊息給Bob,密碼會一個字元一個字元地加密而成
範例3.15 • 我們使用圖3.13中的金鑰來加密明文「hello」
範例3.16 • 我們可用6個字母的關鍵字「PASCAL」加密訊息「She is listening」,初始金鑰流為(15, 0, 18, 2, 0, 11),而金鑰流為此初始金鑰串流之重複(需要幾次就重複幾次)。