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

IKE协议的更多相关文章

  1. IKE 协议(转)

    from: http://lulu1101.blog.51cto.com/4455468/817872 IKE 协议 2012-03-26 21:49:50 标签:休闲 ike 职场 IKE 协议简介 ...

  2. 安全协议系列(五)---- IKE 与 IPSec(中)

    在上一篇中,搭建好了实验环境.完整运行一次 IKE/IPSec 协议,收集相关的输出及抓包,就可以进行协议分析.分析过程中,我们将使用 IKE 进程的屏幕输出和 Wireshark 抓包,结合相关 R ...

  3. 安全协议系列(五)---- IKE 与 IPSec(上)

    IKE/IPSec 属于网络层安全协议,保护 IP 及上层的协议安全.自上个世纪末面世以来,关于这两个协议的研究.应用,已经非常成熟.协议本身,也在不断地进化.仅以 IKE 为例,其对应的 RFC 编 ...

  4. 安全协议系列(四)----SSL与TLS

    当今社会,电子商务大行其道,作为网络安全 infrastructure 之一的 -- SSL/TLS 协议的重要性已不用多说.OpenSSL 则是基于该协议的目前应用最广泛的开源实现,其影响之大,以至 ...

  5. ipsec协议(转)

    from:http://lulu1101.blog.51cto.com/4455468/816875 ipsec协议 2012-03-25 23:40:28 标签:休闲 ipsec协议 职场 IPSe ...

  6. [ipsec] 特别硬核的ike/ipsec NAT穿越机制分析

    〇 前言 这怕是最后一篇关于IKE,IPSEC的文字了,因为不能没完没了. 所以,我一直在想这个标题该叫什么.总的来说可以将其概括为:IKE NAT穿越机制的分析. 但是,同时它也回答了以下问题: ( ...

  7. 浅析Internet上使用的安全协议

    Internet上使用的安全协议 网络安全是分层实现的,从应用层安全到数据链路层安全. 一.运输层安全协议:安全套接字SSL 1.1.简介 SSL 是安全套接层 (Secure Socket Laye ...

  8. IPSec协议框架

    文章目录 1. IPSec简介 1.1 起源 1.2 定义 1.3 受益 2. IPSec原理描述 2.1 IPSec协议框架 2.1.1 安全联盟 2.1.2 安全协议 报文头结构 2.1.3 封装 ...

  9. 密钥交换协议之IKEv2

    1. IKEv2 1.1 IKEv2简介 IKEv2(Internet Key Exchange Version 2,互联网密钥交换协议第 2 版)是第 1 版本的 IKE 协议(本文简称 IKEv1 ...

随机推荐

  1. 直面Java 第004期。

    什么是值传递,什么是引用传递.为什么说Java中只有值传递 对于初学者来说,要想把这个问题回答正确,是比较难的.在第二天整理答案的时候,我发现我竟然无法通过简单的语言把这个事情描述的很容易理解,遗憾的 ...

  2. 【BZOJ2019】nim

    直播写题这刺激233 原题: 著名游戏设计师vfleaking,最近迷上了Nim.普通的Nim游戏为:两个人进行游戏,N堆石子,每回合可以取其中某一堆的任意多个,可以取完,但不可以不取.谁不能取谁输. ...

  3. 洛谷P1337 【[JSOI2004]平衡点 / 吊打XXX】(模拟退火)

    洛谷题目传送门 很可惜,充满Mo力的Mo拟退火并不是正解.不过这是一道最适合开始入手Mo拟退火的好题. 对模拟退火还不是很清楚的可以看一下 这道题还真和能量有点关系.达到平衡稳态的时候,物体的总能量应 ...

  4. 使用mongoose连接mongodb(转载文章)

    mongodb数据库 MongoDB是一个高效的基于分布式文件存储的数据库,将数据存储为一个文档,数据结构由键值(key=>value)对组成.MongoDB 文档类似于 JSON 对象.字段值 ...

  5. 每天进步一点点-Java IO操作-Java Serializable(对象序列化)的理解和总结

    往硬盘文件里写数据 序列化:序列化是将对象转换为容易传输的格式的过程.例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象.在另一端,反序列化将从该流重 ...

  6. linux磁盘检测和修复

    显示磁盘和闪存的信息,以及分区信息 [root@bogon shell]# fdisk -l Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 s ...

  7. Cassandra如何保证数据最终一致性

    Cassandra如何保证数据最终一致性:1.逆熵机制(Anti-Entropy)使用默克尔树(Merkle Tree)来确认多个副本数据一致,对于不一致数据,根据时间戳来获取最新数据. 2.读修复机 ...

  8. MySQL Partition--分区基础

    ================================================================================= Mysql在5.1版本时增加对分区表 ...

  9. layout 布局、手风琴accordion、选项卡tabs【转载】

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. Jenkins进阶-用户权限管理(10)

    在版本发布的由于大家的分工不同,所以想通过控制用户的账号达到权限管理,对每个角色进行权限控制,最初通过"项目矩阵授权策略"的策略对每个项目进行单一的权限控制,当时也满足了效果,随着 ...