technique · réponse sourcée

DKIM (DomainKeys Identified Mail) : explication

DKIM est une méthode d’authentification des e-mails qui permet à un expéditeur de signer cryptographiquement un en-tête d’e-mail. Cette signature prouve que l’e-mail a été autorisé par le propriétaire du domaine et que le contenu du message n’a pas été modifié pendant le transit. Les serveurs destinataires vérifient la signature à l’aide d’une clé publique publiée dans les enregistrements DNS de l’expéditeur.

Fonctionnement pas à pas

DKIM repose sur une infrastructure à clé publique. Le serveur d’envoi utilise une clé privée pour créer une signature numérique de certains en-têtes du message et du corps. Cette signature est jointe à l’e-mail sous la forme d’un en-tête DKIM-Signature. Le serveur de messagerie destinataire extrait le domaine et le sélecteur de cet en-tête, récupère la clé publique correspondante dans l’enregistrement DNS et déchiffre la signature pour vérifier le hash du contenu du message.

Pourquoi c’est important pour les expéditeurs

DKIM apporte un niveau de confiance que SPF ne peut pas offrir seul, car il résiste au transfert des e-mails. Alors que SPF valide l’IP d’envoi, DKIM valide le message lui-même. Cela empêche l’usurpation et réduit la probabilité que les messages soient signalés comme spam par les grands fournisseurs. C’est un prérequis pour mettre en œuvre DMARC et BIMI, qui s’appuient sur l’alignement DKIM pour vérifier l’identité de l’expéditeur.

Notes opérationnelles et erreurs

Les échecs courants surviennent lorsque la clé privée est renouvelée sans mise à jour de la clé publique dans le DNS, ou lorsqu’un relais de messagerie modifie le corps ou les en-têtes du message après la signature, ce qui casse le hash cryptographique. Les expéditeurs devraient utiliser des sélecteurs pour gérer plusieurs clés selon les services. Vous pouvez utiliser les outils gratuits de SendHQ (https://sendhq.cc/tools) pour vérifier votre configuration DNS actuelle.

Exemple concret

Un expéditeur configure un sélecteur nommé google. L’enregistrement DNS situé à selector._domainkey.example.com contient la clé publique. Lorsqu’un e-mail est envoyé, l’en-tête DKIM-Signature indique s=google et d=example.com. Le destinataire interroge l’enregistrement TXT à cet emplacement DNS précis pour trouver la clé nécessaire à la validation de la signature.

DKIM et alignement DMARC

Pour que DMARC réussisse, le domaine de la signature DKIM doit être aligné avec le domaine de l’en-tête From. C’est ce qu’on appelle l’alignement DKIM. Si la signature est valide mais que le domaine ne correspond pas à l’adresse From, la vérification DKIM réussit mais la vérification DMARC échoue, ce qui peut entraîner des problèmes de livraison selon la politique définie.

Les questions que posent les équipes

DKIM chiffre-t-il le corps de l’e-mail ?

Non, DKIM ne chiffre pas le contenu pour le rendre confidentiel. Il crée un hash cryptographique pour garantir l’intégrité et l’authenticité : le destinataire peut vérifier l’expéditeur, mais le message reste lisible.

Que se passe-t-il si une signature DKIM est invalide ?

Une signature invalide peut faire classer l’e-mail comme spam ou le faire rejeter entièrement, car elle laisse penser que le message a été altéré ou que l’expéditeur n’est pas autorisé.

Puis-je avoir plusieurs clés DKIM ?

Oui, en utilisant différents sélecteurs, vous pouvez avoir plusieurs clés DKIM pour différents services d’envoi, ou renouveler vos clés sans interrompre le flux de messagerie.

Sources primaires