AH提供无连接完整性、数据验证和可选的反重放保护,不提供机密性。
AH的报头:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Header | Payload Len | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Security Parameters Index (SPI) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sequence Number Field |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Authentication Data (variable) |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
AH是一种IP协议,在IP报头中用51表示。“下已报头”字段指出AH报头后面是什么内容。在传输模式下,这是被保护的上层协议(如UDP或TCP)的编号;在隧道模式下,这个值为4。
原始数据包:
BEFORE APPLYING AH
----------------------------
IPv4 |orig IP hdr | | |
|(any options)| TCP | Data |
----------------------------
传输模式下,加了AH验证的数据包:
AFTER APPLYING AH
---------------------------------
IPv4 |orig IP hdr | | | |
|(any options)| AH | TCP | Data |
---------------------------------
|<------- authenticated ------->|
except for mutable fields
AH适用于传输模式。
IPv6模式:
原始数据包:
BEFORE APPLYING AH
---------------------------------------
IPv6 | | ext hdrs | | |
| orig IP hdr |if present| TCP | Data |
---------------------------------------
加了AH后的数据包:
AFTER APPLYING AH
------------------------------------------------------------
IPv6 | |hop-by-hop, dest*, | | dest | | |
|orig IP hdr |routing, fragment. | AH | opt* | TCP | Data |
------------------------------------------------------------
|<---- authenticated except for mutable fields ----------->|
隧道模式下:
IPv4:
------------------------------------------------
IPv4 | new IP hdr* | | orig IP hdr* | | |
|(any options)| AH | (any options) |TCP | Data |
------------------------------------------------
|<- authenticated except for mutable fields -->|
| in the new IP hdr |
IPv6:
--------------------------------------------------------------
IPv6 | | ext hdrs*| | | ext hdrs*| | |
|new IP hdr*|if present| AH |orig IP hdr*|if present|TCP|Data|
--------------------------------------------------------------
|<-- authenticated except for mutable fields in new IP hdr ->|
“有效负载长度”字段指出了AH报头的长度。“保留”字段未被使用,因此被设置为零。SPI和序列号的作用与ESP中相同。验证摘要同ESP有一个重要的不同:在AH中,对IP报头和有效负载进行验证。由于AH根据包括IP报头在内的整个分组计算验证数据,而有些IP字段在传输过程中会发生变化,因此计算验证摘要时将把IP报头中传输过程中可能发生变化的字段排除在外。被排除在外的字段包括服务类型(Tos)Type of Service (TOS)、标记Flags、分段偏移Fragment Offset、存活时间(TTL)Time to Live (TTL)和报头校验和Header Checksum。之所以将这些字段排除在外,是因为验证在传输过程中被修改的值(如TTL)将导致验证散列值与发送方的不同,进而导致分组被丢弃。原文:http://www.cnblogs.com/Tiphannie/p/5110620.html