域名密钥识别邮件(DKIM)

DKIM(DomainKeys Identified Mail )是一种防范电子邮件欺诈的验证技术,通过消息加密认证的方式对邮件发送域名进行验证。

邮件发送方发送邮件时,利用本域私钥加密邮件生成DKIM签名,将DKIM签名及其相关信息插入邮件头。邮件接收方接收邮件时,通过DNS查询获得公钥,验证邮件DKIM签名的有效性。从而确认在邮件发送的过程中,防止邮件被恶意篡改,保证邮件内容的完整性。

DKIM的工作原理 #

DKIM 使用“公钥加密”技术来确保电子邮件消息在传输过程中未被修改。 当出站服务器要发送电子邮件时,它将在电子邮件中添加 DKIM 签名。DKIM 签名包含一个散列值,该散列值是通过使用私钥加密电子邮件消息和标头而生成的。DKIM 签名还包含用于创建哈希值的标头名称。将 DKIM 签名添加到电子邮件后发送电子邮件。 
接收服务器将提取 DKIM 签名并对其中存在的域执行 DKIM 查找。结果,将获取 DKIM 公钥。接收服务器将使用公钥解密散列值,并将解密散列值中存在的电子邮件消息和标头与接收到的电子邮件中存在的电子邮件消息和标头进行比较。如果两个值匹配,电子邮件将通过 DKIM。

有关DKIM的更多信息  #

示例 DKIM 记录:
k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBMuSsLsy

k – 表示使用的算法
 – 公钥

示例 DKIM 签名:
DKIM-签名
v=1; a=rsa-sha256; d=example.com;s=selec1; c=relaxed/relaxed; h=from:to:subject:date; bh=MHIzKDU2Nzf3MDEyNzR1Njc5OTAyMjM0MUY3ODlqBLP=;b=hyjCnOfAKDdLZdKIc9G1q7LoDWlEniSbzc+yuU2zGrtruF00ldcFVoG4WTHNiYwG

 – DKIM 签名的版本
a  – 用于创建哈希值的算法
c  – 用于标头和正文的规范化类型
s  – 选择器
d  – 用于签名的域
h  – 已签名的标头
bh  – 电子邮件正文的哈希值
b  – 签名标头的哈希值

实施DKIM的好处 #

仅当实施 DKIM 时,发件人域才会开始从邮箱提供商和反垃圾邮件服务中赢得声誉

  1. DKIM 赢得了邮箱提供商和反垃圾邮件服务的信任
  2. 提高电子邮件的可传递性
  3. 保护您的电子邮件免受网络钓鱼和欺骗攻击