Author:残风

IPSec的目标

为IPv6和IPv6提供具有较强的互操作能力

高质量的基于密码的安全

l 在IP层实现多种安全服务,包括:访问控制,无连接完整性,数据源验证,抗重播,机密性和有限的业务流机密性

 

 

 

IPSec安全体系结构图

 

 

IPSec安全体系内容

验证头部AH:

为IP包提供数据完整性校验和身份认证功能;

验证算法由SA指定;

认证的范围:整个包。

 

 

封装安全载荷ESP:

提供机密性,数据源验证,抗重播以及数据完整性等安全服务;

加密算法和身份验证方法均有SA指定。

 

 

用于两种模式:传输模式和隧道模式

 

 

AH头格式

 

 

AH传输模式

 

AH隧道模式

 

 

AH处理过程

1) 对于发出去的包的处理构造AH

创建一个外出SA(手工或通过IKE)

产生序列好

填充AH头的各字段

计算ICV(Integrity Check Value完整性检验值)

    内容包括:IP头中部分域,AH自身,上层协议数据

AH头中的”下一头部“置为原IP包头中的”协议“字段的值,原IP包头的”协议字段置为51(代表AH)

2)  对于接受到的包处理:

分片装配

查找SA

依据:目标IP地址,AH协议,SPI

检查序列号

ICV检查

 

ESP头格式

 

ESP传输模式

 

ESP隧道模式

 

ESP处理过程

1) 对出发出去的包的处理

查找SA

加密

封装必要的数据,放到payload data域中,不同的模式,封装数据的范围不同

增加必要的padding数据

加密操作

验证

计算ICV   注意:针对加密后的数据进行计算

2) 对于接受到的包的处理

分片装配

查找SA

    依据:目标IP地址,ESP协议,SPI

检查序列号(可选,针对重放***)

    使用一个滑动串口来检查序列号的重放

ICV检查

解密

根据SA中指定的算法和迷失,参数,对于被加密部分的数据进行解密

去掉padding

重构原始的IP包

 

SA(Security Association)安全联盟

SA是单向的(无法反推)

SA是“协议相关”的(与协议对应)

每个SA通过三个参数来标志,<spi,dst(src),protocol>

安全参数索引SPI(Security Parameters Index)

对方IP地址

安全协议标识:AH or ESP

SA与IPSec系统中实现的两个数据库有关

安全策略数据库(SPD)

安全关联数据库(SAD)

 

密钥管理(Key Management)

ISAKMP定义了密钥管理框架。ISAKMP与IKE一样,IKE是高级版本。

IKE是母线真是确定用于IPSec的密钥交换协议。

ISAKMP参考RFC2308文档,IKE协议参考RFC2409文档。

 

 

两阶段交换

第一阶段:建立起ISAKMP SA —— IKE SA

  双方(例如ISAKMP Sservers)商定如何保护以后的通讯,通信双方建立一个已通过身份鉴别和安全保护的通道;

  此SA将用于保护后表的protocol SA的协商过程。

第二阶段:建立起针对其他安全协议的SA —— IPSec SA

  这个阶段可以建立多个SA;

  此SA将被相应的安全协议用于博阿虎数据或者消息的交换。

 

 

IPSec-×××协议和算法

IP安全协议:AH,ESP

数据加密标准:DES,3DES

公共密钥密码协议:Diffe-Hellman(D-H)

散列算法:MD5,SHA-1

公钥加密算法:RSA

Internet密钥交换:IKE

证书授权中心:CA