电子邮件地址中是否允许不带引号的连续(如)特殊字符?
Are unquoted consecutive (like) special characters allowed in an email address?
我在研究是否允许在电子邮件地址中使用两个或更多相同的未加引号的连续特殊字符时发现了相互矛盾的信息 (!#$%&'*+-/=?^_`{|}~ ).
例如,我知道这些是合法的:
- 我+邮箱@yahoo.com
- 我的“$$”邮箱@yahoo.com
我也知道前导、尾随和双句点是非法的。我的问题是-这样的事情合法吗:
- 我的&&电子邮件@yahoo.com
谢谢!
从 RFC 5322 开始,“原子”是定义电子邮件地址中可以包含的内容的基本单位:
atext = ALPHA / DIGIT / ; Printable US-ASCII
"!" / "#" / ; characters not including
"$" / "%" / ; specials. Used for atoms.
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
atom = [CFWS] 1*atext [CFWS]
“1*”是 ABNF 表示“1 个或多个”,因此此作品对允许的字符数 或其顺序 没有任何限制.因此理论上即使是“my&&&&&&&email@yahoo.com”也是合法的。
这是否会作为一个实际问题起作用是实现定义的;例如,gmail 会忽略地址本地部分中的所有点,以防止基本的欺骗攻击。
我在研究是否允许在电子邮件地址中使用两个或更多相同的未加引号的连续特殊字符时发现了相互矛盾的信息 (!#$%&'*+-/=?^_`{|}~ ).
例如,我知道这些是合法的:
- 我+邮箱@yahoo.com
- 我的“$$”邮箱@yahoo.com
我也知道前导、尾随和双句点是非法的。我的问题是-这样的事情合法吗:
- 我的&&电子邮件@yahoo.com
谢谢!
从 RFC 5322 开始,“原子”是定义电子邮件地址中可以包含的内容的基本单位:
atext = ALPHA / DIGIT / ; Printable US-ASCII
"!" / "#" / ; characters not including
"$" / "%" / ; specials. Used for atoms.
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
atom = [CFWS] 1*atext [CFWS]
“1*”是 ABNF 表示“1 个或多个”,因此此作品对允许的字符数 或其顺序 没有任何限制.因此理论上即使是“my&&&&&&&email@yahoo.com”也是合法的。
这是否会作为一个实际问题起作用是实现定义的;例如,gmail 会忽略地址本地部分中的所有点,以防止基本的欺骗攻击。