天天看點

IP Sec中的加密機制

 IP Sec中的加密機制是通過IKE來實作的,在看《IPSec及IKE原理》的時候對雜湊演算法和Diffie-Hellman密鑰交換算法有點不太清楚,就到網上找了找關于這兩個算法的文章。

哈希(Hash)值

雜湊演算法将任意長度的二進制值映射為固定長度的較小二進制值,這個小的二進制值稱為哈希值。哈希值是一段資料唯一且極其緊湊的數值表示形式。如果散列一段明文而且哪怕隻更改該段落的一個字母,随後的哈希都将産生不同的值。要找到散列為同一個值的兩個不同的輸入,在計算上是不可能的,是以資料的哈希值可以檢驗資料的完整性。

雜湊演算法是一類符合特殊要求的散列函數(Hash)函數,這些特殊要求是:

接受的輸入封包資料沒有長度限制; 

對任何輸入封包資料生成固定長度的摘要("數字指紋")輸出; 

由封包能友善地算出摘要; 

難以對指定的摘要生成一個封包,由該封包可以得出指定的摘要; 

難以生成兩個不同的封包具有相同的摘要。

Diffie和Hellman在其裡程碑意義的文章中雖然給出了

密碼的思想但是沒有給出真正意義上的公鑰密碼執行個體也

沒能找出一個真正帶陷門的單向函數然而他們給出單向

函數的執行個體并且基于此提出Diffie-Hellman密鑰交換算法

這個算法是基于有限域中計算離散對數的困難性問題之上

設F為有限域g F是F的乘法群F*=F\{0}=<g> 并且對

任意正整數x 計算gx是容易的但是已知g和y求x使y= gx

是計算上幾乎不可能的這一問題稱為有限域F上的離散對

數問題公鑰密碼學中使用最廣泛的有限域為素域FP.

對Diffie-Hellman密鑰交換協定描述Alice和Bob協商

好一個大素數p 和大的整數g 1<g<p p和g無須保密可

為網絡上的所有使用者共享

當Alice和Bob要進行保密通信時他們可以按如下步驟來做

(1)Alice選取大的随機數x 并計算X=gx(mod P)

(2)Bob選取大的随機數x′ 并計算X ′ = gx ′(mod P)

(3)Alice将X傳送給Bob Bob将X ′傳送給Alice

(4)Alice計算K=(X ′)X(mod P);Bob計算K ′ X) X ′(mod P),

易見K=K ′ =g xx ′(mod P)

由(4)知Alice和Bob已獲得了相同的秘密值K 雙方以K作為

加解密鑰以傳統對稱密鑰算法進行保密通信

本文轉自loveme2351CTO部落格,原文連結:http://blog.51cto.com/loveme23/8111 ,如需轉載請自行聯系原作者

繼續閱讀