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. 《DSP using MATLAB》Problem 5.36

    第1小题 代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...

  2. hdu1535 Invitation Cards 最短路

    有一张图,若干人要从不同的点到同一个中间点,再返回,求总费用最小 中间点到各个点最小费用是普通的最短路 各个点到中间点最小费用其实就是将所有路径反向建边之后中间点到各个点的最小费用,同样用最短路就可以 ...

  3. mysql中不直接通过密码连接 还要指定ip地址进行连接----------DCL数据库控制语言

    线上如果用root超级用户连接数据库,非常容易造成隐私泄漏.一般线上不用root数据控制. 今天和大家分享的是  输入密码还不可以连接数据库,必须要输入ip地址以后,才可以连接. 正常的访问数据库都是 ...

  4. LeetCode - Trim a Binary Search Tree

    Given a binary search tree and the lowest and highest boundaries as L and R, trim the tree so that a ...

  5. numpy.array

    关于python中的二维数组,主要有list和numpy.array两种. 好吧,其实还有matrices,但它必须是2维的,而numpy arrays (ndarrays) 可以是多维的. 我们主要 ...

  6. (惊艳)基于谷底最小值的阈值的图像分割(改进HSV中的H分量可以用imhist(H)提取)

    任务概述:将这张图片作为输入 , 然后抠出只有斑点的图片 灵感来源: 1. 黄色部分用绿色的掩盖掉得到图片B,然后A和B进行∩运算,相同的设置为0 2.统计单词的子母数,开辟一个26个元素的数组,进来 ...

  7. buckaroo 试用

    我系统是mac 所以选择的是mac 的版本,官方是支持跨平台的. 安装 mac 版本安装 wget https://github.com/LoopPerfect/buckaroo/releases/d ...

  8. gitingore && opensource license 自动生成的网站

    老外就是爱搞事情,总有一些方便我们开发的小工具出来,比如gitignore以及开源软件许可协议的 gitingore 生成的 地址 https://www.gitignore.io/ 使用 搜索的地方 ...

  9. Compoxure 微服务组合proxy 中间件

    Compoxure 是一个不错的微服务组合中间件,使用此工具我们可以快速的进行micro frontends 应用的开发 使用此工具我们可以替换esi+ ssi 的开发模型(尽管都挺不错). 同时支持 ...

  10. hasura graphql-engine &&patroni docker-compose 环境运行

    patroni 是一个很不错的pg ha 解决方案,graphql-engine 是一个很好的graphql 工具,为了方便使用 参考patroni官方的文档,使用docker-compose 将应用 ...