IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 浅谈AH协议与ESP协议的区别和联系 -> 正文阅读

[网络协议]浅谈AH协议与ESP协议的区别和联系

IPSec是一种端到端的确保IP层通信的安全体系,是一组协议,下面讨论是基于IPv4的讨论。AH协议与ESP协议是IPSec的两个核心协议,如下图所示。AH(Authentication Header)是验证头部协议,ESP(Encapsulating Security Payload)是封装安全载荷协议,从名字上来看AH主要用于验证IP头部,ESP主要用于加密。下面会详细介绍区别与联系。
IPSec安全体系
区别与联系:构成元素→结构→功能,从构成元素,到协议的结构,再到功能来分析。(协议的三要素:语法、语义、时序)

区别与联系AH协议ESP协议
名字验证头部协议封装安全载荷协议
IP协议封装的协议
IP协议字段5150
下一头部在最开始的8位,指明载荷类型(TCP\UDP\IP\IPSec)ESP尾部,8位,语义与AH一致
载荷长度8比特,表示以32比特为单位的AH头部长度减2无此字段
保留字段16bits,默认0,为保留用无此字段
SPI32比特,用于标识有相同IP地址和相同安全协议的不同SA。由SA的创建者定义,只有逻辑意义ESP头部,32位,语义与AH一致
序列号32比特,一个单项递增的计数器,用于防止重放攻击,SA建立之初初始化为0,序列号不允许重复ESP头部,32位,语义与AH一致
认证数据摘要或者指纹,用于认证,由SA初始化时指定的算法来计算,长度=整数倍32位比特,变长(通信双方必须采用相同的HMAC算法和密钥,认证数据是HMAC算法结果,被称为数据报的完整性校验值ICV,)ESP验证数据,可选,选择ESP验证服务时使用,语义和AH一致(但具体验证区域不同)
载荷数据紧跟AH头部的载荷,变长,明文可变长字段,包含实际的载荷数据,根据是否需要加密,该字段可以是密文或者明文
填充和填充长度填充字段,0-255字节,大多数加密算法要求输入数据包含整数个分组,因此需要填充。填充长度,8bits,填充字段的长度。
报文格式AH头部+AH载荷ESP头部+ESP净荷+ESP尾部(填充、填充长度和下一个头字段)+ESP验证数据(可选)
传输模式保护IP载荷保护IP载荷
传输模式验证区域IP头部+AH头部+TCP/UDP头部+数据(可变字段除外)ESP头部+ TCP/UDP头部+数据+ESP尾部
传输模式加密区域ESP净荷+ESP尾部
隧道模式保护整个IP包保护整个IP包
隧道模式验证区域新IP头部+AH头部+ IP头部+ TCP/UDP头部+数据(可变字段除外)ESP头部+IP头部+TCP/UDP头部+数据+ESP尾部
隧道模式加密区域ESP净荷+ESP尾部
外出处理查询SAD,产生或增加序列号,计算完整性校验值(ICV)如果验证,则和AH相同;如果进行加密,则还会加密分组;如果加密+验证,则计算ICV和加密都有
进入处理重组分片,查询SAD并操作,查询SPD并检查,检查序列号(抗重放功能),认证检查数据完整性如果验证,则和AH相同;如果加密,则还需解密操作;如果验证+加密,则计算ICV比较和解密都有
算法验证验证、加密(至少有一种)
服务无连接的数据完整性:通过哈希函数产生的校验来保证
数据源身份认证:通过计算校验码时加入一个共享密钥实现
防止重放攻击:AH报头的序列号可以防止重放攻击
除了AH已有的三种服务之外(可选),还提供数据包加密和数据流加密
与NAT的联系NAT会对IP头进行修改导致AH协议下的IPsec不能穿越NAT如果是NAT对IP头进行修改,ESP能适用于NAT。但如果NAT为IP地址映射+端口映射(端口改变),则ESP协议下的IPSec都不能适用NAT(考虑NAT-T)

总结 :ESP的验证灵活,不验证IP头部(传输模式)或新IP头部(隧道模式),这使得它能很好的兼容NAT。但是,这也使得接收端无法检测IP头部被修改的情况(只要保证校验和计算正确),故ESP的验证服务没有AH的验证服务强大。所以,AH主要用于验证IP头部,ESP主要用于加密,通常也会将两者嵌套使用。

注:IP协议字段(Protocol)8bits,使用IP服务的高层协议,1(ICMP),2(IGMP),4(IP),6(TCP),8(EGP),17(UDP),41(IPv6),89(OSPF)。

参考:
[1]. 网络安全(第2版)胡道元等
[2]. https://blog.csdn.net/weixin_38387929/article/details/117586652 (详解: IPsec 穿越 NAT 之道)
[3]. https://blog.csdn.net/bytxl/article/details/16825251(AH协议与ESP协议简析)

AH协议格式
AH协议格式
ESP协议格式
ESP协议格式
IPSec的传输模式与隧道模式
IPSec AH与ESP嵌套使用

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-05-08 08:27:37  更:2022-05-08 08:30:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 1:20:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码