punycode编码的电子邮件地址可以与"真实"地址冲突吗?

Mar*_* T. 7 email punycode

问题是:我使用的是第三方电子邮件递送服务,该服务不接受名称部分中包含非ASCII字符的邮件地址,例如müller@example.com.

用Punycode编码这样的地址:

http://en.wikipedia.org/wiki/Punycode

http://idnaconv.phlymail.de/index.php?decoded=m%C3%BCller%40example.com&idn_version=2008&encode=Encode+%3E%3E&lang=de

产生这个地址:

xn--mller-kva@example.com

通过该服务向其发送邮件似乎有效.

但是,我不确定是否有人无法直接注册"xn--mller-kva@example.com",因此接收的电子邮件意为"müller@example.com".

这可能会发生冲突吗?这个问题还有其他解决方案吗?

UPDATE

谢谢你的回答.以下是我们学到的内容摘要:

  • 对电子邮件地址的本地部分进行限制可以使用,您可以从这样的编码地址发送和接收(当然)
  • 但是,根本无法保证提供者或邮件客户端能够理解编码,或者自动执行此操作.因此可以进行冲突,整个想法不是很好:)
  • 根据规范,人们应该简单地做其他人做的事情,即不允许或接受非ASCII名称部分
  • 最后,事实证明,第三方服务无论如何都禁止这样的诡计.

小智 9

电子邮件地址的本地部分不允许使用非ASCII字符.期.Punycode仅适用于域名,不适用于电子邮件地址的本地部分.

但是,IETF很可能采用使国际化本地部件成为可能的标准.但是,该标准可能不是基于punycode.

  • “电子邮件地址的本地部分不允许使用非ASCII字符”,因为此答案已写成,情况已更改,请参见https://tools.ietf.org/html/rfc6531 (3认同)

Gry*_*ius 2

做了一些测试..本地部分的元音变音似乎在某些设置中起作用。我的 MUA(爪子)、出站中继(exim)和接收 MTA(后缀)都没有抱怨或进行任何 punycode 转换。然而,gmail 和 hotmail 等提供商根本不允许使用变音符号(经过测试的 Webmail 和直接传入和传出的 smtp)。我没有找到任何关于这种情况的文档,建议对本地部分进行 punycoding。所以,因为它没有记录,也没有人这样做,所以不存在冲突问题:-)

结论:您可能首先不应该接受本地部分中的变音符号,甚至不应该尝试向这些地址发送电子邮件。(如果大公司不这样做并且 RFC 没有记录/支持它,那么您为什么要这么做呢?)