2. Authentication Header Format (Authentifizierungsheader-Format)
Der Protokollheader (IPv4, IPv6 oder IPv6-Erweiterung), der unmittelbar dem AH-Header vorausgeht, MUSS den Wert 51 in seinen Protocol-Feldern (IPv4) oder Next Header-Feldern (IPv6, Erweiterung) enthalten [DH98]. Abbildung 1 veranschaulicht das Format für 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Integrity Check Value-ICV (variable) |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1. AH Format
Die folgende Tabelle bezieht sich auf die Felder, die AH umfassen (dargestellt in Abbildung 1), sowie auf andere Felder, die in die Integritätsberechnung einbezogen werden, und veranschaulicht, welche Felder vom ICV abgedeckt werden und was übertragen wird.
| Field (Feld) | # of bytes (# Bytes) | Requ'd [1] | Integ Covers (Integ. Abdeckung) | What is Xmtd (Was übertragen wird) |
|---|---|---|---|---|
| IP Header | variable | M | [2] | plain |
| Next Header | 1 | M | Y | plain |
| Payload Len | 1 | M | Y | plain |
| RESERVED | 2 | M | Y | plain |
| SPI | 4 | M | Y | plain |
| Seq# (low-order 32 bits) | 4 | M | Y | plain |
| ICV | variable | M | Y[3] | plain |
| IP datagram [4] | variable | M | Y | plain |
| Seq# (high-order 32 bits) | 4 | if ESN | Y | not xmtd |
| ICV Padding | variable | if need | Y | not xmtd |
[1] - M = mandatory (verpflichtend)
[2] - Siehe Abschnitt 3.3.3, "Integrity Check Value Calculation", für Details darüber, welche IP-Header-Felder abgedeckt sind.
[3] - Vor der ICV-Berechnung auf Null gesetzt (resultierender ICV wird hier nach der Berechnung platziert)
[4] - Bei Tunnelmodus -> IP-Datagramm
Bei Transportmodus -> nächster Header und Daten
Die folgenden Unterabschnitte definieren die Felder, die das AH-Format umfassen. Alle hier beschriebenen Felder sind verpflichtend, d.h., sie sind immer im AH-Format vorhanden und sind in der Integrity Check Value (ICV)-Berechnung enthalten (siehe Abschnitte 2.6 und 3.3.3).
Hinweis: Alle in IPsec verwendeten kryptografischen Algorithmen erwarten ihre Eingabe in kanonischer Netzwerk-Byte-Reihenfolge (siehe Anhang von RFC 791 [RFC791]) und erzeugen ihre Ausgabe in kanonischer Netzwerk-Byte-Reihenfolge. IP-Pakete werden ebenfalls in Netzwerk-Byte-Reihenfolge übertragen.
AH enthält keine Versionsnummer, daher MÜSSEN, wenn es Bedenken hinsichtlich der Rückwärtskompatibilität gibt, diese durch Verwendung eines Signalisierungsmechanismus zwischen den beiden IPsec-Peers adressiert werden, um kompatible Versionen von AH sicherzustellen, z.B. IKE [IKEv2] oder einen Out-of-Band-Konfigurationsmechanismus.