View
284
Download
0
Embed Size (px)
Citation preview
1
密碼學與網路安全
第 7 章 對稱式的機密性
2
對稱式加密的機密性 對稱式加密原本是用來保護訊息的機密性
3
使用加密場合 兩個主要場合 連線加密 (link encryption) 在所有連線各
自加密 意味著必須在連線之間解密流量 每段連線需要一把共同的金鑰
點對點加密 (end-to-end encryption) 在原始來源與目的終端之間加密 兩端共用相同的金鑰,所以目的端也能解開
加密過的資料
4
加密封包交換網路
5
使用加密的場合 使用點對點加密必須必須讓標頭保持明文
網路才能正確的繞送資訊 因此點對點加密能維持使用者資料的安全,
但無法維持流量的安全 同時使用兩種加密
主機先以點對點加密的金鑰加密使用者資料 再以連線加密的金鑰加密整個封包
6
使用加密的場合 OSI 參考模型的幾個地方能放置加密功能:
連線加密可以在第 1 或第 2 層 點對點加密可以在第 3 、 4 、 6 、 7 層
7
使用加密的場合 前端處理器
8
加密與協定層級之間的關係
9
流量分析 流量分析可獲得的資訊:
識別同伴的身分 和同伴通訊的頻率 從訊息的樣式、長度或數量得知是否正在交換重要
的資訊 特定同伴之間的互有關聯的特定對話
利用流量的某些樣式來產生「隱密通道」 這是一種通訊設備設計者原本未預期的通訊形式
流量填充 traffic padding
10
分送金鑰 若要讓對稱式加密運作
通訊雙方必須共用相同的金鑰 要保護這把金鑰,不能被他人存取 要經常更換金鑰,以降低被攻擊的機率
任何密碼系統的強度在於分送金鑰的技術 將金鑰傳遞到想要交換訊息的兩端,但又不
會讓其他人得知金鑰的方法
11
分送金鑰 對 A 、 B 等兩端而言,以下數種方式能
分送金鑰:1. A 選擇金鑰並親自送給 B2. 第三者選擇金鑰,然後親自送給 A 和 B3. 若 A 和 B 最近曾用過某把金鑰,其中一方
可以舊金鑰加密新金鑰,然後將新金鑰傳送給另一方
4. 若 A 和 B 兩者皆與第三方 C( 金鑰分送中心 ) 有加密連線, C 就能以加密連線將金鑰傳給 A 和 B
12
金鑰分送中心使用的階層架構 金鑰分送中心的使用,是根據金鑰的階層式架
構,而且至少會用到兩階層的金鑰 連線金鑰
臨時金鑰 用來加密使用者之間的資料 通常只用在邏輯連線,連線結束就會丟棄連線金鑰
主金鑰 用來加密連線金鑰 由金鑰分送中心與終端系統(或使用者)共用
shared by user & key distribution center
13
金鑰分送的案例
14
亂數產生器 亂數在各種加密應用扮演了重要角色
隨意值 連線金鑰 產生 RSA公開金鑰 單次金鑰加密的金鑰流
這些應用對產生亂數引發了不同且不相容的需求 : 隨機性 不可預測性
15
偽亂數產生器 Pseudorandom Number Generators ( PRNG ) 密碼學的應用程式通常是以演算法來產生
亂數 這些演算法都具決定性, 因此所產生的亂數序列都非統計上的亂數
但若所用的演算法夠好,所產生的亂數將能通過許多合理的亂數測試 這類數字稱為偽亂數 這類的演算法稱為偽亂數產生器
16
線性同餘產生器 (skipped) 亂數序列可反覆經由以下列方程式獲得:
Xn+1 = (aXn + c) mod m 線性同餘演算法的強度,是選擇適當的乘數和模數 整個演算法除了選取的起始值 X0之外,演算法本身並不隨機
而且只要選定了 X0,也就決定了接下來所要產生的數字 這也暗示著這種演算法可被破解
如果攻擊者知道我們使用的是線性同餘演算法,而且也知道所使用的參數
那麼只要攻擊者發現一個數字,就能找出後續所有的數字 即使攻擊者只知道我們使用線性同餘演算法
但只要知道整組數字的一小部分,攻擊者就能找出演算法的參數
21
總結 利用對稱式加密保護機密性 分送金鑰
階層式 金鑰的生命週期 金鑰的控管
亂數產生器