当前位置:   article > 正文

TCP-IP详解:ESP(IPSec Encapsulating Security Payload)

encapsulating security payload

ESP(IPSec Encapsulating Security Payload)

ESP相比AH来讲,拥有我们想要的加密功能,协议会通过加密算法将数据和Key将数据进行组合,转换成加密格式,然后送给目的端,先来看下几个比较重要的域。

1. ESP Header : 主要是包括SPI和Seq number,放在加密数据之前

2. ESP Trailer:被放置在加密数据之后,包括一个填充区域和填充长度以及一个Next Header, 这个地方比较特殊,ESP header中没有Next Header放在Trailer中

3. ESP Authentication Data : 必须是32bit的整数倍,是在前面个字段基础上计算的出来的完整性校验值ICV。

ESP的数据封装格式如下:

传输模式的ESP数据封装:

1. 原始的IPV4数据包IP header 中,proto是TCP,指向下一个的TCP header

2. 新的IPV4数据包,可以看到IP Header的proto为ESP,紧接着是ESP的SPI Seq,然后是加密的TCP header和Payload,后面就是ESP trailer

3. 在后面是ICV,验证整个数据包

隧道模式的ESP数据封装

1.原始的IPV4数据包IP header 中,proto是TCP,指向下一个的TCP header

2.新的IP header proto为ESP,然后ESP的trailer的Next Head为整个加密数据的IP头


ESP在不同模式下的认证和传输区域

1.传输模式下,红色区域便是加密区,TCP和载荷数据以及ESP尾,黄色区域是验证区包括:ESP和TCP,载荷数据和ESP尾。这个地方IP Header是不被加密和验证的。


2.隧道模式下的认证和传输区域

红色区域是加密区域,整个数据包加ESP尾, 黄色区域是验证区域,这些区域内的数据是不能被修改的。


ESP数据包发送

1.使用分组的相应选择符(目的IP地址、端口、传输协议等)查找安全策略数据库(SPD)获取策略,如分组需要IPSec处理,且其SA已建立,则与选择符相匹配的SPD项将指向安全关联数据库中的相应SA,否则则使用IKE建立SA。
2.生成或增加序列号
3.加密分组,SA指明加密算法,一般采用对称密码算法
4.计算完整性校验值

ESP数据接收

1.若IP分组分片,先重组
2.使用目的IP地址、IPSec协议、SPI进入SAD索引SA,如果查找失败,则丢弃分组
3.使用分组的选择符进入SPD中查找与之匹配的策略,根据策略检查该分组是否满足IPSec处理要求
4.检查抗重播功能
5.如SA指定需要认证,则检查数据完整性
6.解密


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/387912
推荐阅读
相关标签
  

闽ICP备14008679号