IPsec
AH和ESP
AH
AH能够提供数据完整性保护,能够保证数据在传输过程中没有被篡改。
AH不涉及加密。
AH位于IP头部之后,TCP/UDP头部(传输层)之前。
AH保护载荷和部分IP头部内容(可选)。
在隧道模式下,整个IP数据包被视为一个整体被AH所保护
ESP
ESP在提供数据完整性保护的基础上,提供了对称加密。
ESP仅保护载荷,不保护IP头部。
在隧道模式下,整个IP数据包被视为一个整体被ESP所保护
- AH和ESP可以同时使用,也可以单独使用
SA
SA是一组安全关联,包括加密算法、密钥、协议、模式等。
SA包含
- SPI 唯一一个标识SA的标识符
- 协议 AH/ESP
- 加密算法 DES/AES
- 密钥信息
- 生命周期
SA通常通过IKE协商等方式自动建立
IKE
IKE用于建立SA,协商密钥等。
IKE分为两个阶段
- 第一阶段,建立IKE SA
- 双方协商加密算法、HASH算法、Diffie-Hellman组、认证方法等
- 通过Diffie-Hellman算法协商出一个共享密钥
- 通过密钥或者证书等方式完成身份认证
- 通过共享密钥对IKE SA进行保护
- 模式分为主模式和快速模式
- 第二阶段,建立Ipsec SA
- 双方协商IPsec参数,包括SPI、加密算法、HASH算法等
- 通过第一阶段生成的IKE SA通道生成共享密钥
- 双方验证并使用共享密钥对IPsec SA进行保护
- 模式同样有主模式和快速模式
主模式需要通信6次,快速模式需要通信3次
建立的IPsec SA通常是单向的,需要建立两次才能实现双向通信
Ipsec SA中包含SP即序列号,用来保护数据包的顺序性,并且结合窗口机制来防止重放攻击