IKE第一階段主模式由6個ISAKMP數據包來完成:
(1) 覈對收到的ISAKMP數據包的源IP地址,來確認收到的ISAKMP數據包是否來自於合法的對等體。
(2) 協商IKE策略(加密策略,散列函數,DH組,認證方式,密鑰存活時間)
注:ISAKMP數據包使用UDP傳輸,源和目的端口都是500.
DH交換,產生用於加密感興趣流的密鑰資源。
在安全的環境下進行認證,並建立ISAKMP/IKE雙向安全關聯SA。這個SA維護了處理ISAKMP/IKE流量的相關策略,對等體雙方會繼續使用這個SA,來安全保護後續的IKE快速模式1-3包交換。
它把感興趣流相關的IPSEC策略一起發送給接收方,並有接收方來選擇適當的策略。
接收方產生SPI,併發送個發起方,建立單向IPSEC SA。
發起方產生另一個SPI,併發送給接收方,建立單向IPSEC SA。
(1) 發起方X首先隨機產生g,p,a。g和p是素數,他們的大小有IKE第一階段1-2個包交換的DH組大小來決定,DH組1爲768位,DH組2爲1024位,組越大表示DH交換產生的密鑰強度越強。
(2) 發起方X使用離散對數函數計算出結果A.(A=ga mod p),並在第3個IKE包中把g,p,A發送給接受方Y。
(3) 接收方Y收到後,隨機產生b,並且使用從第3個IKE包中接收到的g, p通過離散對數函數計算出結果B(B=gb mod p).然後通過第4個IKE包把B發送給發起方A。
(4) 計算密鑰K。發送方X計算的密鑰K=Ba mod p 會等於接收方Y計算的密鑰K=Ab mod p