1 / 0

PARTⅡ-04

PARTⅡ-04. 對稱式金鑰系統 DES. 對稱式密碼系統. 基礎 起源於 Shannon 的乘法保密系統 1970 年代 Horst Feistel 提出的 Feistel 加密架構 以 n 組金鑰, K1, K2, …, Kn ,依序進行 n 回合的加密,第一回合用 K1 ,第二回合用 K2,… 解密時依照相反的順序使用金鑰,第一回合使用 Kn ,第二回合使用 Kn-1 , …. 區塊加 / 解密模式. ECB: Electronic Codebook Mode 每 一個區塊獨立加解密

ayanna
Download Presentation

PARTⅡ-04

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PARTⅡ-04

    對稱式金鑰系統DES
  2. 對稱式密碼系統 基礎 起源於 Shannon 的乘法保密系統 1970 年代 Horst Feistel 提出的 Feistel 加密架構 以 n 組金鑰,K1, K2, …,Kn,依序進行 n 回合的加密,第一回合用K1,第二回合用K2,… 解密時依照相反的順序使用金鑰,第一回合使用Kn,第二回合使用 Kn-1,…
  3. 區塊加/解密模式 ECB: Electronic Codebook Mode 每一個區塊獨立加解密 CBC: Cipher Block Chaining Mode 前一個區塊加密的結果與下一個區塊XOR CFB: Cipher Feedback Mode Stream Cipher,密文回饋 OFB: Output Feedback Mode Stream Cipher,輸出回饋
  4. XOR 真值表 兩者不一樣=>1 兩者一樣=> 0 特性:任何值 XOR1 = 其相反值 連續做兩次 XOR 1 即還原
  5. ECB模式
  6. ECB 模式 Block Cipher 區塊加密:明文 M 切割成 n 個區塊 m1m2m3…mn 每一個區塊 mi都固定長度 64 位元,1in Padding 補餘:如果明文長度不是 64 位元的整數倍,則以空白補足最後一個區塊的長度 每一個區塊獨立加密 可能發生重複的內容 mi = mj,i≠j,產生相同的密文 ci= cj,增加破解密文的機率
  7. CBC模式
  8. CBC 模式 IV:initial vector 啟始向量 隨機值,加密者與解密者共同擁有的秘密 前一個區塊加密的結果與下一個區塊 XOR 內容相同的明文區塊不會產生內容相同的密文區塊
  9. CFB模式
  10. CFB 模式 Stream Cipher 串流加密:對明文的每一個位元組依序加密 不需要 Padding Padding 為連續的空白,容易產生破綻 64 位元移位暫存器(Shift Register) 暫存器的初始值 = Initial Vector 每次取出 s 位元加密(s = 8),加密後暫存器左移 s 位元,並與前一次的 s 位元密文 OR --- 密文回饋模式
  11. OFB模式
  12. OFB 模式 密文回饋造成,密文遭到竄改之後,解密產生一連串的錯誤 Propagation Error 繁殖性錯誤 OFB 暫存器只回饋前一回合使用的 s 位元 值,不回饋密文
  13. DES: Data Encryption Stardard 1970 年代,Horst Feistel為 IBM 研發 Lucifer 系統 獲得美國國家標準局採用 DES 加解密過程各 16 回合 主金鑰 56 位元,產生 16 組 48 位元的子金鑰(回合金鑰) 金鑰太短,今多以 3DES 替代
  14. DES 設計特質 擴散(Diffusion) 儘可能讓明文結構分佈到較長的密文上,使破密者不能利用統計分析法得償所願 明文中的一個位元變動,將牽一髮而動全身 混淆(Confusion) 使明文與密文之間的關係更加錯綜複雜,使得以數學分析為主的破解法無法成功
  15. DES 明文:64 位元區塊 金鑰:56 位元 16 個子金鑰,各48位元 Key Schedule 金鑰安排 Initial Permutation 初始排列
  16. DES IP: initial permutation 初始排列 f函數 IP-1表
  17. f函數 E 表(擴充,32=>48) S-BOX 6=>4 P 表
  18. IP 表
  19. IP-1表
  20. E表 (擴充表)
  21. P 表
  22. S-BOX 6 位元輸入,4 位元輸出 共 8 組,每一個子表 Si 列數 0-3, 行數 0-15 (b5,b4,b3,b2,b1,b0)2 (b5,b0)2為列號 (b4,b3,b2,b1)2 為行號
  23. Key Schedule 金鑰安排 子金鑰 Sub-key,回合金鑰 Round key 主金鑰 Master Key:56 位元,每 7 個位元一組,補上一個奇同位(Odd Parity)位元擴充成 64 位元 經由 KP-1(Key Permutation )分成兩組各 28 位元 16回合左旋循環位移(Left Circular Shift):1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1 經 KP-2 產生 48 位元子金鑰
  24. KP-1, Key Permutation
  25. KP-2, Compression Permutation
  26. ASCII 表
  27. 範例:DES 加解密 第 114 頁 明文:WANG2006 金鑰:PERFECT 明文:BROTHER1 金鑰:FRIEND2
  28. Triple-DES 3-DES則是DES較安全的一種變形 將DES的加/解密運算進行三次每一次所用的key可以都不相同 長度為168位元(56×3=168)或192位元(64×3=192)的主金鑰 比DES要慢 DES 二次運算無法抵擋 Meet-in-the-Middle攻擊
  29. Triple-DES 的種類 EEE3:用三套金鑰,加密-加密-加密 EDE3:用三套金鑰,加密-解密-加密 EEE2:用兩套金鑰,加密-加密-加密,任選兩次用相同的金鑰加密 EDE2:用兩套金鑰,加密-解密-加密,兩加密的金鑰相同,解密用另外一套金鑰 常用EDE3和EDE2,不用EEE3和EEE2,考慮與單一DES相容
  30. K1 K2 K3 E E E 明文 密文 D D D K1 K2 K3 (a) K1K2K3(EEE3) DES DES DES 金鑰長度 = 56 * 3 = 168
  31. K1 K2 K3 E D E 明文 密文 D E D K1 K2 K3 (b) K1K2K3(EDE3) DES DES DES 金鑰長度 = 56 * 3 = 168
  32. K1 K2 K3 E D E 明文 DES DES DES 密文 D E D K1 K2 K3 (c) K1=K3K2(EDE2) 金鑰長度 = 56 * 2 = 112
  33. 結語 DES演算法已經可藉由平行計算的方法破解,或者是由差分攻擊法、線性攻擊法破解 因應之道3-DES可取而代之 3-DES結構稍複雜,且容易被類似攻擊DES的方法攻擊 DES/3-DES可用於加密安全性屬於中等的資料,如果對安全需求有更高的訴求,則可能要選擇其他更高階的新一代密碼演算法,例如AES。
  34. 加解密工具 UNIX 系統(Solaris) des 以 DES 加解密 crypt 以 Enigma 加解密 OpenSSL
  35. OpenSSL使用簡介 以 DES ECB 模式加解密openssldes-ecb –e –in plain.txt –out des.out –k thekey1openssldes-ecb–d –in des.out –out des.txt –k thekey1 以 3DES 加解密openssl des-ede3 –e –in plain.txt –out des3.out –k thekey1 加鹽 salt:由系統自動在金鑰中加入額外的成分,讓相同的內容加密後的結果不同 openssldes3 -salt -in test.tar.bz2 -out test.tar.bz2.des3
  36. OpenSSL使用簡介 速度測試 opensel speed des des3
More Related