ESP-RFC-2406

   ESP报头:

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ----
|               Security Parameters Index (SPI)                 | ^Auth.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Cov-
|                      Sequence Number                          | |erage
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ----
|                    Payload Data* (variable)                   | |   ^
~                                                               ~ |   |
|                                                               | |Conf.
+               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Cov-
|               |     Padding (0-255 bytes)                     | |erage*
+-+-+-+-+-+-+-+-+               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |   |
|                               |  Pad Length   | Next Header   | v   v
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ------
|                 Authentication Data (variable)                |
~                                                               ~
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPv4传输模式下加载ESP的变化:
加载前:
           BEFORE APPLYING ESP
            ----------------------------
      IPv4  |orig IP hdr  |     |      |
            |(any options)| TCP | Data |
            ----------------------------
加载后:
          AFTER APPLYING ESP
            -------------------------------------------------
      IPv4  |orig IP hdr  | ESP |     |      |   ESP   | ESP|
            |(any options)| Hdr | TCP | Data | Trailer |Auth|
            -------------------------------------------------
                                |<----- encrypted ---->|
                          |<------ authenticated ----->|
IPv6传输模式下加载ESP的变化:
加载前:
    BEFORE APPLYING ESP
            ---------------------------------------
      IPv6  |             | ext hdrs |     |      |
            | orig IP hdr |if present| TCP | Data |
            ---------------------------------------
加载后:
           AFTER APPLYING ESP
            ---------------------------------------------------------
      IPv6  | orig |hop-by-hop,dest*,|   |dest|   |    | ESP   | ESP|
            |IP hdr|routing,fragment.|ESP|opt*|TCP|Data|Trailer|Auth|
            ---------------------------------------------------------
                                         |<---- encrypted ---->|
                                     |<---- authenticated ---->|
隧道模式下加载ESP的变化:
IPv4:
          -----------------------------------------------------------
      IPv4  | new IP hdr* |     | orig IP hdr*  |   |    | ESP   | ESP|
            |(any options)| ESP | (any options) |TCP|Data|Trailer|Auth|
            -----------------------------------------------------------
                                |<--------- encrypted ---------->|
                          |<----------- authenticated ---------->|
IPv6:
            ------------------------------------------------------------
      IPv6  | new* |new ext |   | orig*|orig ext |   |    | ESP   | ESP|
            |IP hdr| hdrs*  |ESP|IP hdr| hdrs *  |TCP|Data|Trailer|Auth|
            ------------------------------------------------------------
                                |<--------- encrypted ----------->|
                            |<---------- authenticated ---------->|
ESP报头中的安全参数索引(SPI)是一个32位的值,它同前面的IP报头中的目标地址和协议一起指出了用于处理分组的安全关联(SA)。SPI是目标对等体在Internet密钥交换(IKE)协商期间随意选择的一个数字。其功能类似于索引号,可用于在安全关联数据库(SADB)中查找SA。

序列号是由发送方插入到ESP报头中的,它是一个唯一的单调递增数字。序列号和接收滑动窗口一起提供了反重放服务。这种反重放保护机制是ESP和AH通用的。
被保护的数据(具体地说是被ESP加密的数据)位于有效负载数据字段中。用来对有效负载进行加密的算法可能需要一个初始化向量(IV),它也放在有效负载数据字段中。注意,对IV进行验证但不进行加密。如果使用的加密算法是DES,则被保护的数据字段的前8个字节为IV;3DES和AES也使用8字节的IV。

ESP报头中的“填充”字段用于增加ESP报头的位数,填充的位数取决于使用的加密算法。“填充长度”字段指出了填充的字节数,以便解密时能够恢复原始数据。

"下一报头"指出了有效负载中的数据类型。例如,如果是在隧道模式下使用ESP,这个值为4。

ESP报头中的验证摘要用于验证数据完整性。由于验证总是在加密后进行的,因此收到分组后先检查数据的有效性,然后再解密。

ESP:机密性,完整性,源认证,反重放。
 
posted @ 2016-01-07 11:55  Tiphannie  阅读(525)  评论(0编辑  收藏  举报