4.3. Format de la section d'authentification Keyed MD5 et Meticulous Keyed MD5
L'utilisation d'une authentification fondée sur MD5 est fortement déconseillée. Elle est néanmoins documentée ici pour la compatibilité avec les implémentations existantes.
Si le bit Authentication Present (A) est activé dans l'en-tête et si le champ Authentication Type contient 2 (Keyed MD5) ou 3 (Meticulous Keyed MD5), la section d'authentification a le format suivant :
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Auth Type | Auth Len | Auth Key ID | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Auth Key/Digest... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Définition des champs
Auth Type
Le type d'authentification, qui vaut ici 2 (Keyed MD5) ou 3 (Meticulous Keyed MD5).
Auth Len
La longueur de la section d'authentification, en octets. Pour Keyed MD5 et Meticulous Keyed MD5, la longueur est de 24.
Auth Key ID
L'identifiant de la clé d'authentification utilisée pour ce paquet. Cela permet à plusieurs clés d'être actives simultanément.
Reserved
Cet octet DOIT être mis à zéro à l'émission et ignoré à la réception.
Sequence Number
Le numéro de séquence de ce paquet. Pour l'authentification Keyed MD5, cette valeur est incrémentée occasionnellement. Pour l'authentification Meticulous Keyed MD5, cette valeur est incrémentée à chaque paquet successif transmis durant une session. Cela offre une protection contre les attaques par rejeu.
Auth Key/Digest
Ce champ contient le condensé MD5 de 16 octets du paquet. Lors du calcul du condensé, la clé MD5 partagée est stockée dans ce champ, complétée à 16 octets avec des octets nuls de fin si nécessaire. La clé partagée DOIT être encodée et configurée conformément à la section 6.7.3.