这是一个转发,因此我将链接该帖子: https://security.stackexchange.com/q/274208/227343
我正在发送一封使用引用的可打印编码进行编码的邮件,其中包含一些点“。”。特定邮件服务器/客户存在问题。由于某种原因,他们收到的邮件格式是每个点都被编码为 =2E,最终破坏了签名。什么系统可以做到这一点?标准中也没有定义对点进行编码。最佳实践解决方案是什么?对每个点进行编码以防止系统转换?你们中有人遇到过这个问题吗?谢谢
编辑:一些附加信息。我使用电子邮件包通过 python 发送邮件。quoted-printable 编码将使用 python3 中的 set_content 方法进行。此问题仅发生在特殊邮件服务器上。以下是示例电子邮件:
离开我的程序后的邮件:
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
<!DOCTYPE html><html><h1>Test Email</h1><p>This is a test email. Showing En=
coding of points in quoted-printable.</p></html>
测试邮件客户端收到的邮件:
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
<!DOCTYPE html><html><h1>Test Email</h1><p>This is a test email=2E Showing =
Encoding of points in quoted-printable=2E</p></html>