什么是 DKIM?

DKIM(DomainKeys Identified Mail)会为您的域名发出的每封电子邮件添加数字签名。接收服务器使用您 DNS 中的公钥来确认邮件未被改动,并且确实由您的域名签名。

与工程师沟通 知识库
示意图:一封电子邮件在到达收件箱之前通过 SPF、DKIM 和 DMARC 检查

它是什么

DKIM 使用一对密钥。发送系统持有私钥,并用它为每封外发邮件签名,签名涵盖正文和选定的邮件头,例如 From、To 和 Subject。签名放在邮件头中传递,同时带有签名域名和选择器名称。

与之配对的公钥发布在您的 DNS 中,位置是 selector._domainkey 后面加上您的域名。接收方查询该记录并验证签名。验证通过,意味着被签名的部分与发送时完全一致,并且来自持有您密钥的系统。

哪些情况下仍然有效,哪些情况会破坏它

  • 转发:邮件原样转发时签名依然有效,因为签名属于邮件本身,而不属于它来源的服务器。这正是 DKIM 比 SPF 做得更好的地方。
  • 传输途中的改动:邮件列表添加页脚或修改主题行,或过滤器改写正文,都会破坏签名。

每个发送服务一把密钥

每个以您的域名发送邮件的服务,都需要单独启用 DKIM:Microsoft 365、新闻邮件平台、会通过邮件发送发票的会计软件。每个服务都在自己的选择器下发布各自的公钥,因此多个密钥可以并存。Microsoft 365 要求您添加两条 CNAME 记录,指向由 Microsoft 管理的密钥。Google Workspace 则提供一条需要发布的 TXT 记录。一旦强制执行 DMARC,发送邮件时不带自身签名的服务通常就是验证失败的原因。

在服务和 DNS 托管方支持的情况下,请使用 2048 位密钥,并定期更换密钥,选择器机制允许在不中断邮件的情况下完成更换。

为什么它对企业重要

有效的签名让接收方有理由信任您的邮件,也让 DMARC 能把它与您的 From 地址关联起来。但 DKIM 本身并不说明对验证失败的邮件该怎么处理。请参阅我们的电子邮件验证指南。

KawaConnect 如何使用 DKIM

在设置或迁移 Microsoft 365 时,我们会在 Exchange Online 中启用 DKIM 签名并发布相关记录,然后检查企业使用的其他发送服务。请参阅我们的 Microsoft 365 页面和企业电子邮件指南。

相关服务

Microsoft 365

已为 Exchange Online 启用 DKIM 签名。

托管 IT

以您的域名发送邮件的所有服务的清单。

网站

我们托管的网站的 DNS,包括邮件记录。

了解更多

是否每个服务都在为您的邮件签名

请列出以贵公司名义发送电子邮件的系统。我们会检查其中哪些使用 DKIM 签名。

开始沟通