3.14. Payload chiffré
3.14. Payload chiffré
Le payload chiffré contient des données de payload chiffrées. Ce payload est chiffré à l'aide de l'algorithme de chiffrement et de la clé de la IKE SA.
Le format du payload chiffré est le suivant :
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 du payload chiffré
o Initialization Vector (IV) (longueur variable) - Vecteur d'initialisation requis par l'algorithme de chiffrement. Sa longueur est déterminée par l'algorithme de chiffrement négocié (par exemple, l'IV d'AES-CBC est de 16 octets).
o Plaintext Encrypted Payload (longueur variable) - Données de payload chiffrées. Contient une série de payloads IKE chiffrés.
o Integrity Checksum Data (longueur variable) - Données de somme de contrôle d'intégrité, calculées à l'aide de l'algorithme d'intégrité de la IKE SA. Sa longueur est déterminée par l'algorithme d'intégrité négocié (par exemple, 12 octets pour HMAC-SHA1, 16 octets pour HMAC-SHA256).
Note : le payload chiffré est le payload principal dans les échanges IKE_AUTH, CREATE_CHILD_SA et INFORMATIONAL. Après l'échange IKE_SA_INIT, tout le corps des messages IKE est encapsulé dans un payload chiffré.
Le processus de chiffrement est le suivant :
- Construction du texte en clair : une série de payloads IKE (commençant par le premier en-tête de payload).
- Si nécessaire, remplir le texte en clair pour que sa longueur soit un multiple de la taille de bloc de l'algorithme de chiffrement.
- Chiffrer le texte en clair à l'aide de l'algorithme et de la clé de chiffrement de la IKE SA.
- Calculer la valeur de contrôle d'intégrité du texte en clair (ou du texte chiffré, selon l'algorithme) à l'aide de l'algorithme et de la clé d'intégrité de la IKE SA.
- Concaténer l'IV, le texte chiffré et les données de somme de contrôle d'intégrité pour former le payload chiffré.
Le récepteur déchiffre et vérifie l'intégrité à l'aide des clés correspondantes. Si la vérification d'intégrité échoue, le message DOIT être ignoré.