DomainKeys Identified Mail, ou DKIM, est une norme technique qui aide à protéger les expéditeurs et les destinataires d'e-mails contre le spam, l'usurpation d'identité et le phishing. C'est une forme d'authentification par e-mail qui permet à une organisation de revendiquer la responsabilité d'un message d'une manière qui peut être validée par le destinataire.
DomainKeys Identified Mail, ou DKIM, est une norme technique qui aide à protéger les expéditeurs et les destinataires d'e-mails contre le spam, le spoofing et le phishing. C'est une forme de vérification d'email qui permet à une organisation de revendiquer la responsabilité d'un message de manière à pouvoir être validée par le destinataire.
Plus précisément, cela utilise une approche appelée « cryptographie à clé publique » pour vérifier qu'un message e-mail a été envoyé par un serveur de messagerie autorisé, afin de détecter une falsification et de prévenir la livraison de courriels nuisibles tels que le spam. Cela complémente SMTP, le protocole de base utilisé pour envoyer des e-mails, car il ne comprend pas lui-même de mécanismes d'authentification.
Comment cela fonctionne-t-il ?
Ça fonctionne en ajoutant une signature numérique aux en-têtes d'un message e-mail. Cette signature peut être validée par rapport à une clé cryptographique publique dans les enregistrements DNS (Domain Name System) de l'organisation. En termes généraux, le processus fonctionne comme suit :
Un propriétaire de domaine publie une clé publique cryptographique en tant qu'enregistrement TXT spécialement formaté dans les enregistrements DNS globaux du domaine.
Lorsqu'un message e-mail est envoyé par un serveur de messagerie sortant, le serveur génère et attache un en-tête de signature DKIM unique au message. Cet en-tête comprend deux hash cryptographiques, un des en-têtes spécifiés, et un du corps du message (ou une partie de celui-ci). L'en-tête contient des informations sur la manière dont la signature a été générée.
Lorsqu'un serveur de messagerie entrant reçoit un e-mail entrant, il recherche la clé DKIM publique de l'expéditeur dans le DNS. Le serveur entrant utilise cette clé pour déchiffrer la signature et la comparer à une version fraîchement calculée. Si les deux valeurs correspondent, le message peut être prouvé comme authentique et inchangé en transit.
Qu'est-ce qu'une signature DKIM ?
Une signature DKIM est un en-tête ajouté aux messages e-mail. L'en-tête contient des valeurs qui permettent à un serveur de messagerie récepteur de valider le message e-mail en recherchant la clé DKIM d'un expéditeur et en l'utilisant pour vérifier la signature cryptée. Cela ressemble à ceci :
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sparkpost.com; s=google; h=from:content-transfer-encoding:subject:message-id:date:to:mime-version; bh=ZkwViLQ8B7I9vFIen3+/FXErUuKv33PmCuZAwpemGco=; b=kF31DkXsbP5bMGzOwivNE4fmMKX5W2/Yq0YqXD4Og1fPT6ViqB35uLxLGGhHv2lqXBWwFhODPVPauUXxRYEpMsuisdU5TgYmbwSJYYrFLFj5ZWTZ7VGgg6/nI1hoPWbzDaL9qh
Un en-tête de signature DKIM contient beaucoup d'informations, car il est destiné à un traitement automatisé. Comme vous pouvez le voir dans cet exemple, l'en-tête contient une liste de parties tag=value. Des tags notables incluent « d= » pour le domaine de signature, « b= » pour la signature numérique réelle, et « bh= » pour un hash qui peut être vérifié en recalculant en utilisant la clé publique de l'expéditeur.
Les signatures sont par définition uniques d'un message à l'autre, mais ces éléments de base seront présents dans chaque en-tête de signature DKIM.
Comment cela est-il lié à SPF, DMARC ou d'autres normes ?
DKIM, SPF et DMARC sont toutes des normes qui permettent différents aspects de l'authentification des e-mails. Elles traitent des problèmes complémentaires.
SPF permet aux expéditeurs de définir quelles adresses IP sont autorisées à envoyer des e-mails pour un domaine particulier.
DKIM fournit une clé de cryptage et une signature numérique qui vérifient qu'un message e-mail n'a pas été falsifié ou modifié.
DMARC unifie les mécanismes d'authentification SPF et DKIM dans un cadre commun et permet aux propriétaires de domaine de déclarer comment ils aimeraient que les e-mails de ce domaine soient traités s'ils échouent à un test d'autorisation.
Ai-je besoin de DKIM ?
Si vous êtes une entreprise envoyant des e-mails commerciaux ou transactionnels, vous devez certainement mettre en œuvre une ou plusieurs formes de vérification d'email pour vérifier qu'un e-mail vient réellement de vous ou de votre entreprise. La configuration appropriée des normes d'authentification des e-mails est l'une des étapes les plus importantes que vous puissiez entreprendre pour améliorer votre délivrabilité. Cependant, à elle seule, cela n'ira pas très loin; SparkPost et d'autres experts en e-mails recommandent également de mettre en œuvre SPF et DMARC pour définir une politique d'authentification des e-mails plus complète.