浏览器是否仅在punycode域或整个URL中编码?

Ant*_*ula 3 browser punycode idn

我正在阅读有关IDN同形异义词atack的内容,但没有确切说明浏览器是否仅在punycode域中编码或包含URL的其余部分(路径和查询)。所以我的问题是,流行的浏览器之一(FF,IE,Chrome,Safari,Opera)是否使用punycode编码了URL的其余部分(准确地说是IRI)?

Gre*_*ill 5

仅域名部分使用punycode编码。这是由于对(传统)域名中的允许字符施加了限制。URL的路径部分没有这样的限制,因此经常使用UTF-8。

  • @Antonio URL的路径部分不仅使用UTF-8,而且经常使用UTF-8编码版本的字节的百分比编码版本(因为在传递路径的那一刻,服务器被认为是假设实际提供的字节为ISO 8859-1)。punycoding仅用于域名(实际上,仅用于单个域名),因为它是在完全不同的URL检索阶段(以及更早的阶段)进行处理的。 (3认同)