v148 · Security · IDN

Homograph Detector

Chrome 148 turns on IDNA's CheckJoiners processing for URL hosts. This detector compares the current browser's new URL() result with a ContextJ rule trace for ZWJ (U+200D), ZWNJ (U+200C), and visually deceptive mixed-script labels.

Domain homograph analyser
https://

Chrome 148 ContextJ verdict

Waiting

Run the analyser to evaluate ZWJ and ZWNJ contexts.

Current browser parser

Waiting

The page calls new URL() locally; older browsers may not reject the same hosts.

Visual homograph risk

Waiting

Mixed-script confusables are separate from ContextJ and can pass IDNA.

label char code point script / joining type ContextJ rule homograph note

what the rule checks

// URL hosts run Unicode ToASCII with CheckJoiners enabled. // RFC 5892 Appendix A.1: ZWNJ is valid after Virama, or between joining letters. // RFC 5892 Appendix A.2: ZWJ is valid only after Virama. new URL("https://exam\u200Dple.com/") // Chrome 148: throws because ZWJ is not after Virama. new URL("https://क्\u200Dष.com/") // ContextJ pass: Devanagari Virama immediately precedes ZWJ.

see also

references

implementation reference

Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗