惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
Lohrmann on Cybersecurity
Martin Fowler
Martin Fowler
Engineering at Meta
Engineering at Meta
腾讯CDC
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Azure Blog
Microsoft Azure Blog
G
Google Developers Blog
TaoSecurity Blog
TaoSecurity Blog
博客园_首页
Vercel News
Vercel News
Hugging Face - Blog
Hugging Face - Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Last Week in AI
Last Week in AI
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
The Exploit Database - CXSecurity.com
量子位
Project Zero
Project Zero
A
Arctic Wolf
小众软件
小众软件
NISL@THU
NISL@THU
C
CERT Recently Published Vulnerability Notes
有赞技术团队
有赞技术团队
MongoDB | Blog
MongoDB | Blog
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
N
News and Events Feed by Topic
宝玉的分享
宝玉的分享
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Troy Hunt's Blog
P
Privacy & Cybersecurity Law Blog
Security Latest
Security Latest
B
Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
D
DataBreaches.Net
Schneier on Security
Schneier on Security
The Hacker News
The Hacker News
K
Kaspersky official blog
C
Check Point Blog
Hacker News: Ask HN
Hacker News: Ask HN
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Webroot Blog
Webroot Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
人人都是产品经理
人人都是产品经理
AI
AI
Cisco Talos Blog
Cisco Talos Blog
MyScale Blog
MyScale Blog
Cloudbric
Cloudbric
B
Blog RSS Feed
S
Schneier on Security
P
Palo Alto Networks Blog

Recent Commits to url:main

Report a validation error for IPv4 addresses from non-ASCII input Close more gaps between URL writing and parser sections Define valid IPv6-address string inline Valid domain needs to account for ending with a number Make relative-URL-with-fragment string account for opaque-path base URLs · whatwg/url@24deb59 Path segments can be empty · whatwg/url@1505976 Simplify ends in a number checker · whatwg/url@12c0c5c Close gap between URL writing and parser sections Add Unicode ToASCII fallback for ASCII domains Meta: remove duplicate Alexis Hunt from acknowledgments · whatwg/url@9fe73be Editorial: fix minor markup and grammar inconsistencies · whatwg/url@6d83609 Meta: remove extra space in query definition · whatwg/url@afc0820 Editorial: add missing article before "hexadecimal number" · whatwg/url@91c807f Correct a couple minor issues Document invariants of percent-encode sets better · whatwg/url@dc66b3b Meta: update repository files · whatwg/url@8f0372b Meta: add pywhatwgurl to list of implementations · whatwg/url@b8936db Review Draft Publication: February 2026 Define the "extract an origin" operation · whatwg/url@b6b3251
Rename domain to ASCII to domain parser · whatwg/url@3c83874
annevk · 2026-06-26 · via Recent Commits to url:main

@@ -902,8 +902,9 @@ concepts.

902902

<h3 id=idna>IDNA</h3>

903903904904

<div algorithm>

905-

<p>The <dfn id=concept-domain-to-ascii>domain to ASCII</dfn> algorithm, given a <a for=/>string</a>

906-

<var>domain</var> and a boolean <var>beStrict</var>, runs these steps:

905+

<p>The <dfn id=concept-domain-to-ascii>domain parser</dfn> algorithm, given a

906+

<a for=/>scalar value string</a> <var>domain</var> and a boolean <var>beStrict</var>, runs these

907+

steps. They return failure or a <a for=/>domain</a>.

907908908909

<ol>

909910

<li>

@@ -980,21 +981,21 @@ concepts.

980981981982

<div algorithm>

982983

<p>The <dfn id=concept-domain-to-unicode>domain to Unicode</dfn> algorithm, given a <a>domain</a>

983-

<var>domain</var> and a boolean <var>beStrict</var>, runs these steps:

984+

<var>domain</var>, runs these steps:

984985985986

<ol>

986987

<li><p>Let <var>result</var> be the result of running

987988

<a abstract-op lt=ToUnicode>Unicode ToUnicode</a> with <i>domain_name</i> set to <var>domain</var>,

988-

<i>CheckHyphens</i> set to <var>beStrict</var>, <i>CheckBidi</i> set to true, <i>CheckJoiners</i>

989-

set to true, <i>UseSTD3ASCIIRules</i> set to <var>beStrict</var>, <i>Transitional_Processing</i>

990-

set to false, and <i>IgnoreInvalidPunycode</i> set to false. [[!UTS46]]

989+

<i>CheckHyphens</i> set to false, <i>CheckBidi</i> set to true, <i>CheckJoiners</i> set to true,

990+

<i>UseSTD3ASCIIRules</i> set to false, <i>Transitional_Processing</i> set to false, and

991+

<i>IgnoreInvalidPunycode</i> set to false. [[!UTS46]]

991992992993

<li>

993994

<p>If an error was recorded, then return <var>domain</var>.

994995995996

<p class=note>Because <var>domain</var> can only result from the <a>host parser</a>, any recorded

996997

errors will already have been signified as <a>validation errors</a>. Returning <var>domain</var>

997-

ensures <a>domain to ASCII</a> and <a>domain to Unicode</a> roundtrip on input such as

998+

ensures the <a>domain parser</a> and <a>domain to Unicode</a> roundtrip on input such as

998999

<code>xn--8i7caa</code>.

999100010001001

<li><p>Return <var>result</var>.

@@ -1011,7 +1012,7 @@ concepts.

10111012

<p>A <a for=/>string</a> <var>input</var> is a <dfn>valid domain</dfn> if these steps return true:

1012101310131014

<ol>

1014-

<li><p>Let <var>domain</var> be the result of running <a>domain to ASCII</a> with <var>input</var>

1015+

<li><p>Let <var>domain</var> be the result of running <a>domain parser</a> with <var>input</var>

10151016

and true.

1016101710171018

<li><p>Return false if <var>domain</var> is failure; otherwise true.

@@ -1076,9 +1077,9 @@ false), and then runs these steps. They return failure or a <a for=/>host</a>.

10761077

<a for=string>percent-decoding</a> of <var>input</var>.

1077107810781079

<p class=note>Alternatively <a>UTF-8 decode without BOM or fail</a> can be used, coupled with an

1079-

early return for failure, as <a>domain to ASCII</a> fails on U+FFFD (�).

1080+

early return for failure, as the <a>domain parser</a> fails on U+FFFD (�).

108010811081-

<li><p>Let <var>asciiDomain</var> be the result of running <a>domain to ASCII</a> with

1082+

<li><p>Let <var>asciiDomain</var> be the result of running <a>domain parser</a> with

10821083

<var>domain</var> and false.

1083108410841085

<li><p>If <var>asciiDomain</var> is failure, then return failure.

@@ -3305,8 +3306,8 @@ handled with care to prevent spoofing:

3305330633063307

<ul>

33073308

<li>

3308-

<p>Browsers should render a <a for=/>URL</a>'s <a for=url>host</a> by running

3309-

<a>domain to Unicode</a> with the <a for=/>URL</a>'s <a for=url>host</a> and false.

3309+

<p>If <a for=/>URL</a>'s <a for=url>host</a> is a <a for=/>domain</a>, browsers should render it

3310+

by running <a>domain to Unicode</a> with the <a for=/>URL</a>'s <a for=url>host</a>.

3310331133113312

<p class=note>Various characters can be used in homograph spoofing attacks. Consider detecting

33123313

confusable characters and warning when they are in use. [[IDNFAQ]] [[UTS39]]