IKE协议

IKE协议

一、
+IKE(Internet Key Exchange)因特网密钥交换协议
+为IPSec提供了自动协商交换密钥、建立安全联盟的服务
+通过数据交换来计算密钥

IKE(Internet Key Exchange)因特网密钥交换协议是*IPSEC的信令协议_,为IPSec提供了自动协商交换密钥、建立安全联盟的服务,能够简化IPSec的使用和管理,大大简化IPSec的配置和维护工作。IKE不是在网络上直接传送密钥,而是通过一系列数据的交换,最终计算出双方共享的密钥,并且即使第三者截获了双方用于计算密钥的所有交换数据,也不足以计算出真正的密钥。IKE具有一套自保护机制,可以在不安全的网络上安全的分发密钥,验证身份,建立IPSEC安全联盟。

二、IKE的安全机制
+完善的前向安全性
+数据验证
身份验证
身份保护
+DH交换和密钥分发
IKE具有一套自保护机制,可以在不安全的网络上安全的分发密钥、认证身份并建立IPSec安全联盟。
完善的前向安全性(PFS:Perfect Forward Security)
是一种安全特性,指一个密钥被破解, 并不影响其他密钥的安全性,因为这些密钥间没有派生关系。
数据验证有两个方面的概念:
1)保证数据完整性(发送的数据未被第三方修改过)
2)身份保护
身份验证确认通信双方的身份。验证字用来作为一个输入产生密钥,验证字不同是不可能在双方产生相同的密钥的。验证字是验证双方身份的关键。身份数据在密钥产生之后加密传送,实现了对身份数据的保护。
DH交换和密钥分发:
Diffie-Hellman算法是一种公共密钥算法。通信双方在不传送密钥的情况下通过交换一些数据,计算出共享的密钥。
PFS特性是由DH算法保障的。

三、IKE的交换过程

IKE协商分为两个阶段
阶段一:在网络上建立IKE SA,为其它协议的协商(阶段二)提供保护和快速协商。通过协商创建一个通信信道,并对该信道进行认证,为双方进一步的IKE通信提供机密性、消息完整性以及消息源认证服务,是主模式;
阶段二:快速模式,在IKE SA的保护下完成IPSec的协商。
IKE协商过程中包含三对消息:
第一对叫SA交换,是协商确认有关安全策略的过程;
第二对消息叫密钥交换,交换Diffie-Hellman公共值和辅助数据(如:随机数),加密物在这个阶段产生;
最后一对消息是ID信息和验证数据交换,进行身份验证和对整个SA交换进行验证。

四、DH交换及密钥产生

密钥的产生是通过DH交换技术,DH交换(Diffie-Hellman Exchange)过程如下:
a、须进行DH交换的双方各自产生一个随机数,如a和b;
b、使用双方确认的共享的公开的两个参数:底数g和模数p各自用随机数a,b进行幂模运算,得到结果c和d,计算公式如下:
c =g a mod p, d=g b modp;
c、双方进行交换如上图所示的信息;
d、进一步计算,得到DH公有值: da mod p = c b mod p = g a b mod p 此公式可以从数学上证明。
若网络上的第三方截获了双方的模c和d,那么要计算出DH公有值gab mod p 还需要获得a或b,a和b始终没有直接在网络上传输过,如果想由模c和d计算a或b就需要进行离散对数运算,而p为素数,当p足够大时(一般为768位以上的二进制数),数学上已经证明,其计算复杂度非常高从而认为是不可实现的。所以,DH交换技术可以保证双方能够安全地获得公有信息。

五、IKE在IPSec中的作用
+降低手工配置的复杂度
+安全联盟定时更新
+密钥定时更新
+允许IPSec提供反重放服务
+允许在端与端之间动态认证

因为有了信令协议,很多参数(如:密钥)都可以自动建立。
IKE协议中的DH交换过程,每次的计算和产生结果都是毫无关系的。为保证每个安全联盟所使用的密钥互不相关,必须每次安全联盟的建立都运行DH交换过程.
IPSEC使用IP报文头中的序列号实现防重放。此序列号是一个32比特的值,此数溢出后,为实现防重放,安全联盟需要重新建立,这个过程与要IKE协议的配合。
对安全通信的各方身份的的验证和管理,将影响到IPSEC的部署。IPSEC的大规模使用,必须有CA-Certification Authority(认证中心)或其他集中管理身份数据的机构的参与。

六、IPSec与IKE的关系

IKE是UDP之上的一个应用层协议,是IPSEC的信令协议。
IKE为IPSEC协商建立安全联盟,并把建立的参数及生成的密钥交给IPSEC。
IPSEC使用IKE建立的安全联盟对IP报文加密或验证处理。
IPSEC处理做为IP层的一部分,在IP层对报文进行处理。AH协议和ESP协议有自己的协议号,分别是51和50。

www.huawei.com

posted on 2018-06-23 14:00  destiny_sea  阅读(15484)  评论(0编辑  收藏  举报