from: http://lulu1101.blog.51cto.com/4455468/817872
IKE 协议
2012-03-26 21:49:50
IKE 协议简介
1. IKE 协议
IPSec 的安全联盟可以通过手工配置的方式建立,但是当网络中节点增多时,手工配置将非常困难,而且难以保证安全性。这时就要使用 IKE(Internet Key Exchange,因特网密钥交换)自动地进行安全联盟建立与密钥交换的过程。
IKE 协议是建立在由 Internet 安全联盟和密钥管理协议 ISAKMP (Internet Security Association and Key Management Protocol )定义的框架上。它能够为IPSec 提供了自动协商交换密钥、建立安全联盟的服务,以简化IPSec 的使用和管理。
IKE 具有一套自保护机制,可以在不安全的网络上安全地分发密钥、验证身份、建立 IPSec 安全联盟。
2. IKE 的安全机制
DH (Diffie-Hellman)交换及密钥分发。Diffie-Hellman 算法是一种公共密钥算法。通信双方在不传送密钥的情况下通过交换一些数据,计算出共享的密钥。加密的前提是交换加密数据的双方必须要有共享的密钥。IKE 的精髓在于它永远不在不安全的网络上直接传送密钥,而是通过一系列数据的交换,最终计算出双方共享的密钥。即使第三者(如黑客)截获了双方用于计算密钥的所有交换数据,也不足以计算出真正的密钥。
完善的前向安全性(Perfect Forward Secrecy,PFS)。PFS 是一种安全特性,指一个密钥被破解,并不影响其他密钥的安全性,因为这些密钥间没有派生关系。PFS 是由 DH 算法保障的。
身份验证。身份验证确认通信双方的身份。对于 pre-shared key 验证方法,验证字用来作为一个输入产生密钥,验证字不同是不可能在双方产生相同的密钥的。验证字是验证双方身份的关键。
身份保护。身份数据在密钥产生之后加密传送,实现了对身份数据的保护。
3. IKE 的交换阶段
IKE 使用了两个阶段为 IPSec 进行密钥协商并建立安全联盟:第一阶段,通信各方彼此间建立了一个已通过身份验证和安全保护的通道,此阶段的交换建立了一个ISAKMP 安全联盟