该私钥是专有的、隐藏的,并且被锁起来。当您使用 SendGrid 或 Amazon SES 从 .com 账户发送电子邮件时,每个提供商都会使用各自的域对电子邮件进行签名。 SendGrid 使用 sendgrid.net 签署出站电子邮件,Amazon SES 使用 amazonses.com 签署出站电子邮件。值得一提的是,如果您愿意,SendGrid 和 Amazon SES 都允名域;但开箱即用,两个提供商都将使用自己的域对电子邮件进行签名,以便电子邮件从一开始就符合 DKIM。 DKIM 签名:v=; a=rsa-sha; c=放松/放松; d=sendgrid.net; h=mime-版本:主题:从:到:内容类型; 主题:发送自.com 通过 SendGrid 发件人:Ajay Goel <> 收件人:Ajay Goel <> 这可能会令人困惑,但提供商使用自己的域而不是 进行签名。
com 是允许的,因为仅使用纯 DKIM,就可以使 亚美尼亚电话数据 用您想要的任何域对电子邮件进行签名。当然,它必须是您控制的域,但不一定是电子邮件“来自”的域。这是违反直觉的,但它不一定是 MAIL-FROM 行中的域或显示的发件人地址。可以看到, 在收到的电子邮件中添加了一个标头,表明基于使用 sendgrid.net 域的签名,DKIM 已通过:bounces+-fe-ajay= 的域指定为允许的发件人) 通过。现在您可能会想,“好吧,如果可以使用任何旧域对电子邮件进行签名,那么如何使电子邮件变得‘真实’?”DKIM 的最初目的不是防止垃圾邮件,甚至不是确定网络可以发送哪些内容用于什么域。
DKIM 的目的是确保电子邮件的内容在从发件人到收件人的传输过程中不会被更改。它所需要的只是访问某个域的私有签名密钥 - d= 部分中用于签署电子邮件的任何域。后来,DMARC 出现,通过必须匹配显示发件人地址中的域来强制执行 DKIM 签名中的域。但纯 DKIM 本身并不需要这样做。如果您目光敏锐,您可能会注意到在上面的示例中,它显示 dmarc=fail。呃哦,这是一个问题,对吧?事实上,不!继续阅读……最后但并非最不重要的一点是,让我们检查 DMARC 棘手的部分是通过 DMARC。