密码cipher加密法encipher

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
15
對稱式加密Symmetric Encryption
也稱為傳統加密、私密金鑰加密或單金 鑰加密
傳送端(加密)和接收端(解密)共用相同的 金鑰
所有古典加密演算法都是私密金鑰 是1970年代公開金鑰加密發展出來之前
的唯一加密方式 而且是最常用的加密方式
1
基本術語
明文 plaintext - 原始可理解的訊息或資料 密文 ciphertext - 是由加密演算法根據明文和秘密金鑰所
已知明文
除密文外,尚有一或多組 明文/密文組
選定明文
選取明文使用加密器獲得密文
選定密文
選取密文用解密器獲得明文
選定內文
選取明文或密文來加密或解密
7
密碼解析攻擊
絕對安全unconditional security
不論攻擊者取得多少密文,如果他無法從其中 的資訊解出相對應的明文,我們就說這個加密 機制是絕對安全。也就是說,不論攻擊者花多 少時間都不可能破解密文,因為解開密文所需 的資訊不在其中
已知加密/解密演算法 只要一一測試這26種對映方式 已知明文所用的語言
例如破解密文:GCUA VQ DTGCM
13
單套字母加密法
Monoalphabetic Cipher
不只字母移位,也任意排列字母 每個明文字母對映到不同的隨機密文字母 因此金鑰長達26個字母 Plain :abcdefghijklmnopqrstuvwxyz
4
密碼學Cryptography
密碼學系統可以根據三種不同的觀點來描 述:
將明文轉為密文所用的運作方式
替代 / 置換 / 重複的替代與置換 substitution / transposition / product
金鑰的使用數量
單金鑰或私密金鑰/ 雙金鑰或公開金鑰
處理明文的方式
計算安全性computational security
破解加密法所需的成本超過加密訊息本身的價 值,或者破解加密法所需的時間超過訊息的有 效壽命,加密法就視為計算安全性
8
暴力破解
嘗試所有可能的金鑰 平均來說,必須嘗試的金鑰數量,大約是可能的金鑰總數
的一半 下表列出不同的金鑰數量所需要的時間
金鑰長度 (位元) 32 56 128
可能的金鑰總數
232 = 4.3 109 256 = 7.2 1016 2128 = 3.4 1038
168
2168 = 3.7 1050
26 字元(任 26! = 4 1026 意排列)
每微秒加密一次所需的時間 每微秒加密l06次所需的時間
便能以下列方式表示這個演算法,也就 是每個明文字元p會換成密文字元C:
c = E(p) = (p + k) mod (26) p = D(c) = (c – k) mod (26)
12
凱撒加密法的密碼解析
只有26種可能的加密方式
對映至從A到Z的
如果知道密文是由凱撒加密法產生,暴 力法便很容易破解,因為:
cipher:DKVQFIBJWPESCXHTMYAUOLRGZN 明文:ifwewishtoreplaceletters
密文:WIRFRWAJUHYFTSDVFSFUUFYA
14
單套字母加密法的安全性
總共有26!種可能的金鑰,也就是4 x 1026
金鑰數量龐大,應該就很安全 但是,錯! 問題是在語言的特性
產生的輸出結果,內容是雜亂無章的訊息 密碼 cipher 加密法 encipher (encrypt) - 將明文轉換成密文的演算法 解密法 decipher (decrypt) - 將密文還原成明文的演算法 金鑰 key - 用在加密演算法的資訊,而且只有傳送端和接
收端知道 密碼學 cryptography - 研究加密原則、方法的學科 密碼解析 cryptanalysis (codebreaking) - 研究不需金鑰而
能解密的學科 密碼技術 cryptology - 研究密碼學和密碼解析的學科
2
對稱式加密模型
3
必要Байду номын сангаас件
若要安全使用傳統加密法,有兩個必要 的條件:
強固的加密演算法 只有傳送端與接收端能得知秘密金鑰
以數學公式表示:
Y = EK(X) X = DK(Y)
我們不需要保護演算法,但我們需要保 管好金鑰
231 µs 255 µs 2127 µs
= 35.8 秒 = 1142 年 = 5.4 1024 年
2167 µs
= 5.9 1036 年
2 1026 µs = 6.4 1012 年
2.15 毫秒 10.01 小時 5.4 1018 年
5.9 1030 年
6.4 106 年
區塊加密 / 串流加密block / stream
5
密碼解析
目的是還原金鑰,而非只還原訊息 一般的方法:
密碼解析攻擊cryptanalytic attack 暴力破解法brute-force attack
6
密碼解析攻擊
僅知密文
只知道演算法和密文(得知道明文是exe檔、或英文…)
meet me after the toga party PHHW PH DIWHU WKH WRJD SDUWB
11
凱撒加密法
字元的順序可繞回頭:
abcdefghijklmnopqrstuvwxyz DEFGHIJKLMNOPQRSTUVWXYZABC
為每個字母指定一個數值:
abcdefghij k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
9
替代加密法
以其它的字元或符號來替代將明文裡的 字元
如果將明文視為連續的字元,那麼替代 就是將明文的字元樣式換成密文的字元 樣式
10
凱撒加密法Caesar Cipher
目前所知道最早且最簡單的替代加密法 羅馬的凱撒將軍(Julius Caesar)所發明 將每個字母用其後的第三個字母來替代 例如:
相关文档
最新文档