Download presentation
Presentation is loading. Please wait.
1
© The McGraw-Hill Companies, Inc., 2007 秘密金鑰密碼系統 (Secret Key Cryptosystems)
2
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 2 本章內容 5.1 前言 5.2 密碼學基本概念 5.3 古代密碼系統 5.4 古代密碼系統之破解法 5.5 近代密碼系統 5.6 DES 密碼系統演算法 5.7 秘密金鑰密碼系統加密模式 5.8 三重 DES 密碼系統
3
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 3 5.1 前言 透過網路來傳遞機密資訊,很容易就被 竊聽。因此,對於機密資料存入於磁碟、 備援磁帶、或傳遞網路前,應先加密成 密文,使一般未經授權人員不能得知其 內容。
4
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 4 5.2 密碼學基本概念 基本的加解密系統
5
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 5 換位法 (Transposition Cipher) 將明文調換位置使別人不容易一眼看穿 Ex: Xk(1,2,3,4,5,6,7)=(4,3,7,1,8,5,2,6) 換位法 (Transposition Cipher) 將明文調換位置使別人不容易一眼看穿 Ex: Xk(1,2,3,4,5,6,7)=(4,3,7,1,8,5,2,6) 傳統加密法與解密法分為下面兩種 : 換位與置換 COMPUTER → PMECRUOT 5.3 古代密碼系統
6
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 6 1. 1. 簡單替代法 (Simple Substitution) 2. 2. 編碼法 (Code Book) 3. 3. 同音異字替代法 (Homophonic Substitution) 4. 4. 多字母替代法 (Polyalphabetic Substitution) 5. 5. 多圖替代法 (Polygram Substitution) 古代密碼系統 ( 續 ) 代換法 (Substitution Cipher) 以其他文字取代明文中的每一個字 代換法 (Substitution Cipher) 以其他文字取代明文中的每一個字
7
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 7 M=COMPUTER ( 明文 ) C=DXIJSRAW ( 密文 ) Ex: ( 簡單替換法加密 ) M C 為一對一之對應關係 簡單替代法
8
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 8 編碼法 隨機編碼本範例 『資訊管理系』: 1232 3661 4538 編碼本範例 『資訊管理系』: 14 02 26 63 45 28
9
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 9 將明文每個字母以一組數中的任ㄧ個來替代 字母同音異字 C07,11,70,83 E04,17,33 M01,13,19,20 O02,06,61,92 P08,18,21,38 R10,81 T05,16,50,63 U03,09,14,15,43,47 M=COMPUTER ( 明文 ) C= 11 61 19 08 14 16 17 81 ( 密文 ) ( 同音異字法加密 ) 同音異字替代法
10
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 10 將最常見的為 Vigenere 加密法,以數學式子表示 X K ( M )=( M + K i ) mod n M=COMPUTER ( 明文 ) X K ( M ) =NCHTFHZV ( 密文 ) ( 多字母替代法加密 ) K=LOVELOVE 多字母替代法
11
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 11 http://www.math.ncu.edu.tw/~jovice/c++/93exams/a7.html
12
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 12 多圖替代法其基本觀念是將一組字母一起加密,其基本 精神是將每一對之明文之字母 m 1,m 2 一起加密成密文字 母 c 1,c 2 。如 Playfair 密碼法其規則如下: 1. 1. 若 m 1 和 m 2 在同一列,則 c 1 和 c 2 分別為其右邊之字母, 其中最右一行之字母的右邊為第一行之字母。 2. 2. 若 m 1 和 m 2 在同一行,則 c 1 和 c 2 分別為其下方字母,其 中最下一列之字母的下方為第一列之字母。 3. 3. 若 m 1 和 m 2 不同行和列,則 c 1 和 c 2 為其相對應之方形邊 角,其中 c 1 與 m 1 同列。 4. 4. 若 m 1 =m 2 ,則將一空字母(設為 x )加在 m 1 及 m 2 之間, 使不成為連續相同字母。 5. 5. 若明文之字串長度為奇數則在尾端加一空字串 x 。 多圖替代法
13
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 13 HARPS ICODB EFGKL MNQTU VWXYZ Playfair 加密法金鑰表 M=CO MP UT ER ( 明文 ) C=OD HT MU HG ( 密文 ) ( 多圖替代法加密 ) 多圖替代法(續)
14
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 14 5.4 古代密碼系統之破解法 窮舉法 (Exhaustive Attack) - 將所有可能的情況均嘗試一遍,直到找出正 確的解密方式為止。 統計法 (Statistics Attack) - - 利用一些統計資料來協助破解密碼,例如以 字母出現的頻率。 - -EX. 『 A 、 E 、 I 、 O 、 U 』出現頻率比『 Q 、 X 、 Z 』的出現頻率高出許多。
15
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 15 傳統數據保密技術並不能保證系統的安全, 而且應用上也受到相當大之限制,比如中 文系統就很難用換位法以達到保密效果, 試想將 「 今天我不回家 」 之明文換位置成 「 回不天家我今 」 之密文,該密文一看就可 重組成明文而不需藉其他工具來破解,所 以我們需要使用一些以 「 位元 」 為處理單位 的加密系統。 5.5 近代密碼系統
16
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 16 5.6 DES 加密系統 對稱式加密系統之代表 1970 年代中期由 IBM 公司所發展 美國國家標準局公佈為資料加密標準的一種區 塊加密法 (Block Cipher) (key: 128 64 = 56+8) DES 屬於區塊加密法,而區塊加密法就是對一 定大小的明文或密文來做加密或解密動作 每次加密解密的區塊大小均為 64 位元 (Bits) ◎ DES (Data Encryption Standard)
17
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 17 DES 加密系統(續) 就一般資料而言,資料通常大於 64 位元。只要 將明 / 密文中每 64 位元當作一個區塊加以切割, 再將每個區塊做加密或解密即可。 最後一個區塊大小可能小於 64 位元,此時就要 將此區塊附加 “0” 位元,直到區塊大小成為 64 位 元為止。 DES 所用加密或解密金鑰也是 64 位元大小。但 其中有 8 個位元是用來做錯誤更正,真正的金鑰 有效長度只有 56 位元。 3-DES: 56*3 = 168 (or 56*2 = 112) (product cipher)3-DES: 56*3 = 168 (or 56*2 = 112) (product cipher) ◎ DES (Data Encryption Standard)
18
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 18 DES 加解密架構
19
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 19 DES 之回合金鑰產生運算過程
20
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 20 假設選定 [science] 作為秘密金鑰 [science] 之 ASCII 編碼為: [ 73 63 69 65 6e 63 65] 一個字母需要 8 個位元來作編碼,所以 [science] 其二進位表示法為: [(01110011) (01100011) (01101001) (01100101) (01101110) (01100011) (01100101)] 共 56 個位元 (8-bits ㄧ組 ) [(0111001 )(1011000 )(1101101 )(0010110 )(0101011 )(0111001 ) (1000110 )(1100101 )] (7-bits ㄧ組 ) 加入奇同位檢查碼後之結果如下 : [ (01110011) (10110000) (11011010) (00101100) (01010111) (01110011) (10001100) (11001011) ] 共 64 個位元 DES 回合金鑰的產生
21
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 21 再作初始金鑰排列 (KP) ,其結果如下: [(11000110) (10110101) (00101011) (00111011) (01010101) (10001100) (11000111)] DES 的金鑰排列表 -KP DES 回合金鑰的產生(續) (01110011) (10110000) (11011010) (00101100) (01010111) (01110011) (10001100) (11001011)
22
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 22 DES 的左移位數表 接著,將排列後的結果分成兩半,分別為 KL0 及 KR0 ,它 們的內容分別為: KL0=[11000110 10110101 00101011 0011] KR0=[10110101 01011000 11001100 0111] 向左循環一位元之後可分別得到: KL1=[10001101 01101010 01010110 0111] KR1=[01101010 10110001 10011000 1111] [(11000110) (10110101) (00101011) (0011 1011) (01010101) (10001100) (11000111)]
23
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 23 再經過壓縮排列後 (CP) 後,就可得到第一回合的回合金鑰 K 1 : K 1 =[ 00101101 11011000 11001110 00110111 01111111 01000000] 其餘各回合的回合金鑰可依序用類似的方法求得 DES 回合金鑰的產生(續)
24
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 24 © The McGraw-Hill Companies, Inc., 2005
25
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 25 DES 的加密 流程
26
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 26 DES 加密法 - 例子 假設要對 64 位元的明文 [security] 作加密 首先,明文 [security] 的 ASCII 編碼為: [73 65 63 75 72 69 74 79] ,轉換為二進位表示為: [01110011 01100101 01100011 01110101 01110010 01101001 01110100 01111001]
27
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 27 [01110011 01100101 01100011 01110101 01110010 01101001 01110100 01111001] 經過啟使排列 (IP) 後的結果為: [11111111 11011001 01001010 10101111 L 00000000 11111111 10100000 00010101] R DES 加密法 - 例子 初始排列表( IP )
28
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 28 將重組後的結果分為 L 及 R 兩半 L1 : 00000000 11111111 10100000 00010101 R1 : 10011010 00100110 00100111 00100100 DES 加密法 作下列運算 [11111111 11011001 01001010 10101111 L0 00000000 11111111 10100000 00010101] R0
29
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 29 DES 之 f() 函數運算過程
30
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 30 DES 擴增排列表
31
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 31 © The McGraw-Hill Companies, Inc., 2005 DES 加密法 -S-BOX EX. S-BOX5 (101011) 列索引 (11)=3 行索引 (0101)=5 查表對應值: 14 (1110)
32
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 32 © The McGraw-Hill Companies, Inc., 2005 DES 加密法 -S-BOX (續) EX. S-BOX5 (101011) 列索引 (11)=3 行索引 (0101)=5 查表對應值: 14 (1110) 將做完互斥或運算 的 48 位元資料分成 八個區塊 (S-BOX) , 每個 (S-BOX) 內有 6 個位元
33
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 33 © The McGraw-Hill Companies, Inc., 2005 DES 加密法 P-BOX 及最後排列表 P-BOX 最後排列表
34
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 34 DES 加密法 - 例子 經過第一回合加密運算 ,所產生的密文為: [00000000 11111111 10100000 00010101 10011010 00100110 00100111 00100100] 接下來各回合所產生的 密文如右邊之表格
35
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 35 DES 解密法 DES 解密過程與加密過程類似,僅將: 改成
36
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 36 DES 的解密過程
37
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 37 ECB Mode (Electronic Code Book Mode) CBC Mode (Cipher Block Chaining Mode) CFB Mode (Cipher Feedback Mode) OFB Mode (Output Feedback Mode) ECB Mode (Electronic Code Book Mode) CBC Mode (Cipher Block Chaining Mode) CFB Mode (Cipher Feedback Mode) OFB Mode (Output Feedback Mode) 四種加密模式 5.7 秘密金鑰密碼系統加密模式
38
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 38 ECB Mode - Encryption 密文區塊 i = 加密 ( 明文區塊 i ) 坦克借了我 10 萬元 我借了坦克 10 萬元 優點 : 可以平行處理 缺點 : 相同明文產生相同密文, 內容可被剪貼替換
39
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 39 ECB Mode - Decryption 明文區塊 1 明文區塊 i- 1 明文區塊 i 明文區塊 n 密文區塊 1 密文區塊 i- 1 密文區塊 i 密文區塊 n 解密 …... …... …... …... …... …... 明文區塊 i = 解密 ( 密文區塊 i )
40
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 40 CBC Mode - Encryption 密文區塊 1 = 加密 ( 明文區塊 1 ♁ IV) 密文區塊 i = 加密 ( 明文區塊 i ♁ 密文區塊 i-1 ) 密文區塊 1 = 加密 ( 明文區塊 1 ♁ IV) 密文區塊 i = 加密 ( 明文區塊 i ♁ 密文區塊 i-1 )
41
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 41 CBC Mode - Decryption 優點 : 相同明文可以產生不相同密文,不會有剪貼替換問題 缺點 : 不能平行處理;一個位元錯,之後全錯 優點 : 相同明文可以產生不相同密文,不會有剪貼替換問題 缺點 : 不能平行處理;一個位元錯,之後全錯
42
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 42 CFB Mode - Encryption 密文區塊 1 = 明文區塊 1 ♁ 加密 ( IV) 密文區塊 i = 加密 ( 密文區塊 i-1 ) ♁ 明文區塊 i 密文區塊 1 = 明文區塊 1 ♁ 加密 ( IV) 密文區塊 i = 加密 ( 密文區塊 i-1 ) ♁ 明文區塊 i
43
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 43 CFB Mode - Decryption 優點 : 一個密文區塊錯誤僅影響目前區塊及下一個區塊;加 密區塊長度可變動 缺點 : 不能平行處理 優點 : 一個密文區塊錯誤僅影響目前區塊及下一個區塊;加 密區塊長度可變動 缺點 : 不能平行處理
44
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 44 OFB Mode - Encryption S 0 = 加密 ( IV ) S i = 加密 ( S i -1 ) 密文區塊 i = S i ♁ 明文區塊 i S 0 = 加密 ( IV ) S i = 加密 ( S i -1 ) 密文區塊 i = S i ♁ 明文區塊 i
45
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 45 OFB Mode - Decryption S 0 = 解密 ( IV ) S i = 解密 ( S i -1 ) 明文區塊 i = S i ♁ 密文區塊 i S 0 = 解密 ( IV ) S i = 解密 ( S i -1 ) 明文區塊 i = S i ♁ 密文區塊 i 優點 : 與 CFB 類似,不過一個密文區塊錯誤僅影響目前區塊並 不會影響下一個區塊;加密區塊長度也可變動。 缺點 : 不能平行處理 優點 : 與 CFB 類似,不過一個密文區塊錯誤僅影響目前區塊並 不會影響下一個區塊;加密區塊長度也可變動。 缺點 : 不能平行處理
46
秘密金鑰密碼系統 © The McGraw-Hill Companies, Inc., 2007 46 5.8 三重 DES 密碼系統( Triple DES ) Triple DES 加密架構 EEE3, EDE3, EEE2, EDE2,
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.