Skip to content

Syntaxe DKIM

La syntaxe de DKIM est définie par la RFC 6376, qui spécifie le format et les règles pour le champ d'en-tête DKIM-Signature, l'enregistrement DNS de la clé publique, ainsi que les algorithmes de signature et de vérification.

Le champ d'en-tête DKIM-Signature se compose d'une série de paires clé-valeur, séparées par des points-virgules, qui fournissent des informations sur la signature DKIM. Les balises ne sont pas sensibles à la casse et ont les significations suivantes :

BaliseDescription
vLa version de DKIM. La version actuelle est 1.
aL'algorithme utilisé pour générer le hachage et la signature. Les algorithmes pris en charge sont rsa-sha1 et rsa-sha256.
bLes données de la signature, encodées en base64.
bhLe hachage du contenu de l'email, encodé en base64.
cL'algorithme de canonicalisation utilisé pour normaliser les en-têtes et le corps de l'email avant le hachage. Les algorithmes pris en charge sont simple et relaxed.
dLe domaine de l'entité signataire.
hLa liste des champs d'en-tête inclus dans la signature, séparés par des deux-points.
iL'identité de l'agent signataire, qui peut être un sous-domaine ou un utilisateur au sein du domaine signataire.
lLa longueur du corps de l'email qui est signé, en octets. Si omis, l'ensemble du corps est signé.
qLa méthode de requête utilisée pour récupérer la clé publique. La méthode prise en charge est dns/txt, ce qui signifie que la clé publique est stockée dans un enregistrement TXT dans le DNS.
sLe sélecteur qui identifie la clé publique à utiliser pour la vérification.
tL'horodatage de la création de la signature, en secondes depuis 00:00:00 le 1er janvier 1970 UTC.
xLe temps d'expiration de la signature, en secondes depuis 00:00:00 le 1er janvier 1970 UTC. Si omis, la signature n'expire pas.
zLes champs d'en-tête originaux qui ont été signés, encodés en base64. Cette balise est optionnelle et utilisée uniquement à des fins de débogage.

Un exemple d'enregistrement DNS de clé publique est :

Sélecteur :

dkimkey._domainkey.example.com.

Valeur :

"v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCfjgu4wJ4hm7T3cjhYfyX3WfZwLGNqJtU2Ol1i8sT1o3F1FbZI4P7FqQW7MkMfsHnY6f7loG+RwkZsKdowq+8Gg9G2xRF1YJynBKLpdX4eR4Q2m5F3LjMfQSSMmN1CRrSeyRGNVQqjxweG5lJfR0GZsT7hnrccllH+oL1HhQIDAQ"

Sujets connexes