【问题标题】:IPSec ESP pad length fieldIPSec ESP 填充长度字段
【发布时间】:2021-06-30 15:34:41
【问题描述】:

我目前正在学习 IPSec 协议,但我不明白如何在接收器上找到填充长度字段。它出现在 填充之后,填充是加密(因此具有随机值)。之后是另一个随机字段(完整性字段)。那么如何确定性地找到它呢?

【问题讨论】:

    标签: ipsec


    【解决方案1】:

    这是来自RFC 4303的图表:

     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)                 | ^Int.
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Cov-
    |                      Sequence Number                          | |ered
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ----
    |                    Payload Data* (variable)                   | |   ^
    ~                                                               ~ |   |
    |                                                               | |Conf.
    +               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Cov-
    |               |     Padding (0-255 bytes)                     | |ered*
    +-+-+-+-+-+-+-+-+               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |   |
    |                               |  Pad Length   | Next Header   | v   v
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ------
    |         Integrity Check Value-ICV   (variable)                |
    ~                                                               ~
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    
                Figure 1.  Top-Level Format of an ESP Packet
    

    填充长度和下一个标头字段都在解密和删除 ICV 后处理。因此,作为接收者,您可以确切地知道它们的位置:在解密明文的末尾。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-11
      • 2017-06-03
      • 2012-01-22
      • 1970-01-01
      • 1970-01-01
      • 2018-05-27
      • 1970-01-01
      • 2016-12-04
      相关资源
      最近更新 更多