Email 为什么我会选择DKIM的简单规范化而不是轻松规范化?

Email 为什么我会选择DKIM的简单规范化而不是轻松规范化?,email,dkim,Email,Dkim,DKIM支持两种规范化方案:松弛和简单。前者更为宽松,允许中间邮件发送人在有限程度上修改电子邮件 我能找到的唯一数据是一份报告,其中显示了绝大多数电子邮件发件人对邮件头和邮件正文都使用了宽松的规范化。(明显减少了对身体的放松,但仍占绝对多数。) DKIM规范指出,如果所有客户机都支持DKIM,那么它们必须同时支持两种规范化形式,所以这似乎不是一个主要因素。这两种方案都允许中介添加头。我能分辨出的唯一区别是在处理头名称(而不是值)和头中空白的情况。考虑到这一点,似乎relaxed将始终具有至少同样

DKIM支持两种规范化方案:松弛和简单。前者更为宽松,允许中间邮件发送人在有限程度上修改电子邮件

我能找到的唯一数据是一份报告,其中显示了绝大多数电子邮件发件人对邮件头和邮件正文都使用了宽松的规范化。(明显减少了对身体的放松,但仍占绝对多数。)

DKIM规范指出,如果所有客户机都支持DKIM,那么它们必须同时支持两种规范化形式,所以这似乎不是一个主要因素。这两种方案都允许中介添加头。我能分辨出的唯一区别是在处理头名称(而不是值)和头中空白的情况。考虑到这一点,似乎relaxed将始终具有至少同样好的可交付性,这是DKIM的目标


(当然,如果我真的想对电子邮件进行签名以证明其内容,我会使用S/MIME和证书。DKIM严格地说是关于可交付性的,对吗?

我想简单的规范化是希望使用较少计算密集型签名方法的发件人的一种选择,以可能的交付成本为代价。复杂性上的差异并没有那么大,但对于大型批量发送器来说,这可能会产生明显的差异

“良好的可交付性,这是DKIM的目标……DKIM严格讲的是可交付性,对吗?”

你似乎有一个错误的前提。DKIM并不是严格意义上的可交付性。DKIM的目的是验证发送者是谁。这本书很好地解释了这一点:

域密钥标识邮件(DKIM)定义域级别 使用公钥密码和 关键服务器技术,允许验证源和 通过邮件传输代理(MTA)或邮件发送的邮件内容 用户代理(MUA)

DKIM消息通常不比未签名消息多或少可交付。例如,SpamAssassin对有效的DKIM签名消息和未签名消息给予相同的分数。如果消息未通过DKIM验证,那么正如您所料,它会得到更差的分数

DKIM提供的是可靠地确定声称来自美国银行的消息是否真实的能力。如果它声称是这样,但是消息中的DKIM签名没有通过验证,那么我可以知道消息是伪造的,或者是被篡改的合法消息。在这两种情况下,都不应交付


现在,我是否希望接收来自该DKIM认证域的消息,以及消息中的内容是否可取是一个完全不同的问题,与DKIM相比,这对可交付性的影响要深远得多。

我认为差异与CPU负载没有多大关系–与通过SMTP生成、签名和发送邮件所需的时间相比,差异将是微不足道的,而您无论如何都必须这样做;阿姆达尔定律无法逃脱

released
规范化的最大回报在于健壮性。使用
simple
规范化,最微小的差异,即使是不影响内容的差异,也可能导致验证失败。例如:

  • 使用LF而不是CRLF的邮件客户端(例如,Linux上PHP的
    mail()
    函数)通过另一台服务器将它们转换为CRLF(它应该这样做)
  • 一种中间邮件服务器,可将邮件头重新折叠到不同的行长度
  • 更改邮件标题标签大小写的垃圾邮件过滤器,例如
    内容类型
    ->
    内容类型

所有这些都不会导致
released
规范化的验证问题。所以我想说,角度不是使用
simple
规范化能让你免于做什么,而是你从
released
规范化所需的额外工作中获得什么好处,这就是为什么它更受欢迎。

单词,单词,单词,但这根本不能解决问题!试着重新阅读原始帖子,看看是否还有你遗漏的问题。也许这是我的答案特别针对的一个问题。你对“可交付性”这个词采取了一种迂腐而无用的观点。从询问者明确意图的意义上说,它意味着“减少我的邮件因虚假/垃圾邮件等而被拒绝的可能性”。这是通过签名来证明发送者是谁来实现的。那么,问题是“放松”或“简单”对目标有影响吗。