Zum Hauptinhalt springen

2.14. Generating Keying Material for the IKE SA (Schlüsselmaterial für die IKE SA)

2.14. Generating Keying Material for the IKE SA (Schlüsselmaterial für die IKE SA)​

Die gemeinsamen Schlüssel werden wie folgt berechnet. SKEYSEED ergibt sich aus den während IKE_SA_INIT ausgetauschten Nonces und dem dort etablierten Diffie-Hellman-Shared-Secret. SKEYSEED dient zur Berechnung von sieben weiteren Geheimnissen: SK_d zur Ableitung neuer Schlüssel für Child SAs dieser IKE SA; SK_ai und SK_ar als Schlüssel für den Integritätsschutz späterer Nachrichten; SK_ei und SK_er zur Verschlüsselung (und Entschlüsselung) aller folgenden Austausche; SK_pi und SK_pr bei der AUTH-Nutzlast. Die Längen von SK_d, SK_pi und SK_pr MÜSSEN der bevorzugten Schlüssellänge der vereinbarten PRF entsprechen.

SKEYSEED und Ableitungen:

SKEYSEED = prf(Ni | Nr, g^ir)

{SK_d | SK_ai | SK_ar | SK_ei | SK_er | SK_pi | SK_pr}
= prf+ (SKEYSEED, Ni | Nr | SPIi | SPIr)

(d. h. die genannten Größen werden in dieser Reihenfolge aus den prf+-Bits genommen). g^ir ist das Shared Secret des ephemeren Diffie-Hellman-Austauschs, als Oktettfolge big-endian, bei Bedarf mit Nullen bis zur Modullänge aufgefüllt. Ni und Nr sind die Nonces ohne Header. Aus Abwärtskompatibilität werden zwei PRFs speziell behandelt: Bei AES-XCBC-PRF-128 [AESXCBCPRF128] oder AES-CMAC-PRF-128 [AESCMACPRF128] dienen nur die ersten 64 Bits von Ni und Nr zur SKEYSEED-Berechnung, für prf+ jedoch alle Bits.

Die beiden Richtungen verwenden unterschiedliche Schlüssel. SK_ai und SK_ei schützen Nachrichten vom ursprünglichen Initiator; SK_ar und SK_er die Gegenrichtung.