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
IKE协议的更多相关文章
- IKE 协议(转)
from: http://lulu1101.blog.51cto.com/4455468/817872 IKE 协议 2012-03-26 21:49:50 标签:休闲 ike 职场 IKE 协议简介 ...
- 安全协议系列(五)---- IKE 与 IPSec(中)
在上一篇中,搭建好了实验环境.完整运行一次 IKE/IPSec 协议,收集相关的输出及抓包,就可以进行协议分析.分析过程中,我们将使用 IKE 进程的屏幕输出和 Wireshark 抓包,结合相关 R ...
- 安全协议系列(五)---- IKE 与 IPSec(上)
IKE/IPSec 属于网络层安全协议,保护 IP 及上层的协议安全.自上个世纪末面世以来,关于这两个协议的研究.应用,已经非常成熟.协议本身,也在不断地进化.仅以 IKE 为例,其对应的 RFC 编 ...
- 安全协议系列(四)----SSL与TLS
当今社会,电子商务大行其道,作为网络安全 infrastructure 之一的 -- SSL/TLS 协议的重要性已不用多说.OpenSSL 则是基于该协议的目前应用最广泛的开源实现,其影响之大,以至 ...
- ipsec协议(转)
from:http://lulu1101.blog.51cto.com/4455468/816875 ipsec协议 2012-03-25 23:40:28 标签:休闲 ipsec协议 职场 IPSe ...
- [ipsec] 特别硬核的ike/ipsec NAT穿越机制分析
〇 前言 这怕是最后一篇关于IKE,IPSEC的文字了,因为不能没完没了. 所以,我一直在想这个标题该叫什么.总的来说可以将其概括为:IKE NAT穿越机制的分析. 但是,同时它也回答了以下问题: ( ...
- 浅析Internet上使用的安全协议
Internet上使用的安全协议 网络安全是分层实现的,从应用层安全到数据链路层安全. 一.运输层安全协议:安全套接字SSL 1.1.简介 SSL 是安全套接层 (Secure Socket Laye ...
- IPSec协议框架
文章目录 1. IPSec简介 1.1 起源 1.2 定义 1.3 受益 2. IPSec原理描述 2.1 IPSec协议框架 2.1.1 安全联盟 2.1.2 安全协议 报文头结构 2.1.3 封装 ...
- 密钥交换协议之IKEv2
1. IKEv2 1.1 IKEv2简介 IKEv2(Internet Key Exchange Version 2,互联网密钥交换协议第 2 版)是第 1 版本的 IKE 协议(本文简称 IKEv1 ...
随机推荐
- .NET本质论 类型基础
类型概述 类型是CLR程序的生成块(building block). CLR类型(CLR type)是命名的可重用抽象体. CLR类型定义由零个或多个成员(member)组成.类型的成员控制类型如何使 ...
- 修改VS2017模板文件,添加文件头部自定义注释
找到Class.cs文件 找到VS2017安装目录下面的Class.cs文件,一般在C盘或者D盘 模块文件位置: 接口模版:C:\Program Files (x86)\Microsoft Visua ...
- 合并两个sorted ranges(merge和inplace_merge)
merge //版本一:用operator <比较元素 template <class InputerIterator1,class InputerIterator2,class Outp ...
- Node。js 访问gmail
参考: https://developers.google.com/gmail/api/quickstart/nodejs step 1,在google网站上打开gmail api,下载JSOn st ...
- CSS vertical-algin的使用
一.什么vertical-algin vertical的意思就是垂直,algin是对齐的意思,连起来就是“垂直对齐方式”,接下来看看vertical-algin有哪些属性,打开浏览器一看 vertic ...
- PL/SQL Developer显示中文乱码
PL/SQL Developer显示中文乱码,可能是oracle客户端和服务器端的编码方式不一样. 解决方法: Select userenv('language') from dual; 设置环境变量 ...
- RedHat6.5创建本地yum源
拷贝Linux操作系统的rhel-server-6.5-x86_64-dvd.iso镜像到装好的Linux中: #执行挂载命令 mount –o loop /media/rhel-server-6.5 ...
- 免费SMTP邮件服务:Mandrill,Sendgrid,Mailjet,Postmarkapp,MailChimp
免费的SMTP发邮件服务平常几乎都没有怎么关注,Wordpress发邮件几乎用普通的邮箱的SMTP服务就可以完成任务,但是自从用了Discourse.Ghost博客后,发现找到一个合适的.免费配额大的 ...
- 计算MySQL的内存峰值公式 (转)
-- 计算MySQL的内存峰值公式,计算所有的连接满了的情况下: select (@@key_buffer_size + @@query_cache_size + @@tmp_table_size ...
- java集合之List源码解析
List是java重要的数据结构之一,我们经常接触到的有ArrayList.Vector和LinkedList三种,他们都继承来自java.util.Collection接口,类图如下 接下来,我们对 ...