Aller au contenu principal

3.4. Payload KE

3.4. Payload KE​

Le payload KE contient une clé publique Diffie-Hellman. Si le groupe Diffie-Hellman utilisé nécessite plusieurs clés (par exemple, les groupes à courbe elliptique), le payload KE contient plusieurs clés concaténées (classées par ordre décroissant du nombre de bits de la clé).

Le format du payload KE 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 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Diffie-Hellman Group Num | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Key Exchange Data ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                  Figure 7 : Format du payload KE

o Diffie-Hellman Group Num (2 octets) - Indique le groupe DH utilisé. Cette valeur est tirée du registre IANA "IKEv2 Security Association and Key Management Protocol Parameters", section "Transform Type 4 - Diffie-Hellman Group Transform IDs".

o RESERVED (2 octets) - DOIT être envoyé à zéro et DOIT être ignoré à la réception.

o Key Exchange Data (longueur variable) - Entier non signé en boutien (big-endian) dont la taille est déterminée par la valeur du groupe Diffie-Hellman. La taille de cet entier est la taille du nombre premier du groupe DH (dans l'arithmétique modulaire). Pour le groupe Oakley 768-bit MODP, ce champ fait 96 octets, rempli avec des zéros en tête.