*ipsec体系结构
*ipsec安全协议
*ipsec加密算法
*ipsec密钥管理
*基于windows实现传输模式×××
*基于windows实现隧道模式×××
   ipsec---在网络层对数据加密解密
优点
  --密钥协商的开销被大大的消减了
  --需要改动的应用程序很少
  --很容易构建×××
缺点
  --很难解决“抗抵赖”之类的问题
ipsec的目标
*为ipv4和ipv6提供具有较强的互操作能力
*高质量和基于密码的安全
*在ip层实现多种安全服务,包括:
  访问控制、无连接完整性、数据源验证、抗重播、机密性合有限业务流机密性。
ipsec安全体系的内容
*协议部分,分为
  --AH:验证头部
为ip包提供数据完整性校验(涉及算法MD5和SHI)和身份认证(windows域,证书,密码)功能;
验证算法由SA指定
认证的范围:整个包
  --ESP:封装安全载荷
提供机密性、数据源验证、抗重播以及数据完整性等安全服务;加密算法和身份验证方法均由SA指定;
用于两种模式:传输模式和隧道模式。
最初ip包:ip头-tcp头-数据
传输模式:ip头-ipsec-tcp头-数据
隧道模式:外部ip头-ipsec头-ip头-tcp头-数据
即两种模式加密范围内容不一样。
*密钥管理
  --SA:安全联盟
  --ISAKMP定义了密钥管理框架,高版本为IKE,
    IKE是目前正式确定用于ipsec的密钥交换协议。该协议负责在两端安全地进行密钥交换。
AH的处理过程
*对于发出去的包处理构造AH
 -创建一个外出SA(手工或通过IKE)
 -产生序列号
 -填充AH头的各字段
 -计算ICV(integrity check value完整性检验值)
   内容包括:ip头中部分域、AH自身、上层协议数据
 -AH头中的“下一头部”置为原ip报头的“协议”字段的值,原ip报头的“协议”字段置为(51代表AH)
*对于接受到的包的处理:
 -分片装配
 -查找SA
   依据:目标ip地址、AH协议、SPI
 -检查序列号
 -ICV检查
ESP的处理过程
*对于发出去的包的处理
 -查找SA
 -加密
 -封装必要的数据,放到payload data域中,不同的模式,封装数据的范围不同
 -增加必要的padding数据
 -加密 操作
 -验证
 -计算ICV,注意,针对加密后的数据进行计算。
*对于接收到的包的处理:
 -分片装配
 -查找CA
   依据:目标ip地址、ESP协议、SPI
 -检查序列号(可选,针对重放***)
   使用一个滑动窗口来检查序列号的重放
 -ICV检查
 -解密
  ·根据SA中指定的算法和密钥、参数,对于被加密部分的数据进行加密
  ·去掉padding
  ·重构原始的ip包
安全联盟SA
*SA是单向的;
*SA是“协议相关”的;
*每个SA通过三个参数来标识
  -安全参数索引SPI
  -对方ip地址
  -安全协议标识:AH or ESP
*SA与IPSec系统中实现的两个数据库有关
  -安全策略数据库(SPD)
  -安全关联数据库(SAD)
Internet密钥交换协议--IKE
*IKE协议
  -RFC2409,是Oakley和SKEME协议的一种混合
  -基于ISAKMP框架
  -沿用了Oakley和SKEME的共享和密钥更新技术
*ISAKMP
  -RFC 2408(的文档中定义的)
  -定义如何建立安全联盟并初始化密钥
ipsec两个阶段的交换
*第一阶段:建立起ISAKMP SA ----IKE SA
  --双方(例如ISAKMP ***vers)商定如何保护以后的通信,
通信双方建立一个已通过身份鉴别和安全保护的通道;
  --此SA将用于保护后面的protocol SA的协商过程。
*第二阶段:建立起针对其他安全协议的SA ---- IPSec SA
  --这个阶段可以建立多个SA;
  --此SA将被相应的安全协议用于保护数据或者消息的交换。


加密算法:
一:对称加密算法-DES,3DES,AES,RC
二:非对称加密算法-DH,RSA
鉴别算法:
MD5  SHA