@gzm1997
2017-11-12T13:42:16.000000Z
字数 1357
阅读 940
web作业
ip层属于网络层
网际网路安全协定(英语:Internet Protocol Security,缩写为IPsec),是一个协定组合,透过对IP协议的分组进行加密和认证来保护IP协议的网络传输协议族(一些相互关联的协议的集合)。
保护ip分组流的两种协议:
- 一般不对整个原ip包加密,只加密不包含ip头的有效载荷(传输模式),但是在端对端的隧道模式中,ESP加密整个ip数据包
- ESP报头一般在ip头之后,在TCP或者UDP报头之前
- ESP可以单独使用,也可以跟AH一起使用
SA,Security
- Associations安全关联,是ipsec保护的某个连接的唯一标示,SA是单方向的,即在一次安全通信中两个方向都各自需要创建一个SA
- SA内容是维护一次安全通信所需要的数据参数,一个SA可以由目的地址,IPsec 所采用的协议(AH或ESP)和SPI来唯一确定。
所有的SA存放在一个数据库中,成为SAD,SA 的建立和维护通过密钥交换协议IKE 实现。
Security Parameter Index 安全参数索引。用于将收到的IPsec 数
据包与其对应的SA 进行关联。
Security Policy Database 安全策略数据库。IPsec 的策略就是规则
。SPD 的策略告诉系统如何处理收到的数据包,例如将包处理
成IPsec 数据包从而进行保护,或者不保护直接转发,甚至直
接丢弃。
Internet Key Exchange 互联网密钥交换协议。默认情况下,IPsec
使用它来自动管理密钥,也可以直接手动管理。
隧道模式上,ESP是加密整个ip报文
过程:
ESP协议的编号是50
封装过程:
拆包过程:
1. 数据接收方收到数据后,看到协议类型为50,知道这是一个ESP协议,查看ESP头,通过SPI决定数据对应的SA.
2. 计算Enchilada部分的ICV,与数据包尾部的ESP ICV进行比较,确定数据的完整性。
3. 检查Seq序列号,决定是否需要该数据信息。
4. 根据SA提供的加密算法和密钥,解密被加密的Enchilada数据,得到原数据报文和ESP尾部
5. 根据ESP尾部的填充长度信息,找出填充字段的长度,删去后得到原数据报文。
6. 根据原IP头的目的地址进行转发。