Zum Hauptinhalt springen

3.14. Verschlüsselter Payload

3.14. Verschlüsselter Payload​

Der verschlüsselte Payload enthält verschlüsselte Payload-Daten. Dieser Payload wird mit dem Verschlüsselungsalgorithmus und dem Schlüssel der IKE SA verschlüsselt.

Das Format des verschlüsselten Payloads ist wie folgt:

                 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 Payload |C| RESERVED | Payload Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Initialization Vector (IV) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Plaintext Encrypted Payload ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Integrity Checksum Data ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                  Figure 18: Format des verschlüsselten Payloads

o Initialization Vector (IV) (variable Länge) - Von der Verschlüsselung benötigter Initialisierungsvektor. Seine Länge wird durch den ausgehandelten Verschlüsselungsalgorithmus bestimmt (z. B. 16 Oktette für AES-CBC).

o Plaintext Encrypted Payload (variable Länge) - Verschlüsselte Payload-Daten. Enthält eine Reihe verschlüsselter IKE-Payloads.

o Integrity Checksum Data (variable Länge) - Integritätsprüfsummen-Daten, berechnet mit dem Integritätsalgorithmus der IKE SA. Ihre Länge wird durch den ausgehandelten Integritätsalgorithmus bestimmt (z. B. 12 Oktette für HMAC-SHA1, 16 Oktette für HMAC-SHA256).

Hinweis: Der verschlüsselte Payload ist der Haupt-Payload in den IKE_AUTH-, CREATE_CHILD_SA- und INFORMATIONAL-Austauschen. Nach dem IKE_SA_INIT-Austausch wird der gesamte Nachrichtenrumpf der IKE-Nachrichten in einem verschlüsselten Payload gekapselt.

Der Verschlüsselungsvorgang ist wie folgt:

  1. Aufbau des Klartexts: eine Reihe von IKE-Payloads (beginnend mit dem ersten Payload-Header).
  2. Falls nötig, den Klartext auffüllen, sodass seine Länge ein Vielfaches der Blockgröße des Verschlüsselungsalgorithmus ist.
  3. Den Klartext mit dem Verschlüsselungsalgorithmus und Schlüssel der IKE SA verschlüsseln.
  4. Den Integritätsprüfwert des Klartexts (oder des Chiffretexts, je nach Algorithmus) mit dem Integritätsalgorithmus und Schlüssel der IKE SA berechnen.
  5. IV, Chiffretext und Integritätsprüfsummen-Daten zum verschlüsselten Payload verbinden.

Der Empfänger entschlüsselt und verifiziert die Integrität mit den entsprechenden Schlüsseln. Schlägt die Integritätsprüfung fehl, MUSS die Nachricht verworfen werden.