ItsMyIp

Punycode & homograph domains

Unicode to xn-- and back — and above all: is that “аррӏе.com” lookalike of apple.com a spoof? Scripts, imitations and invisible characters analyzed.

01Punycode, the ASCII of accented names

The DNS only speaks ASCII: no accents, no Cyrillic, no ideograms. Internationalized domain names (IDN) work around the limit through punycode (RFC 3492): café.fr is actually registered and resolved as xn--caf-dma.fr. Your browser converts both ways — and so does this tool.

The flip side: entire alphabets visually imitate Latin. A Cyrillic а (U+0430) is indistinguishable from a Latin a — that is the homograph attack, used for phishing with perfectly convincing fake domains. The analysis above detects mixed scripts, imitating characters and invisibles. Cross-check with our whois (a recent creation date is suspicious) and our DNS lookup.

02Understanding the analysis

xn--
The prefix marking a punycode label in the DNS. Every non-ASCII label is converted: a domain can mix ASCII labels and xn-- labels.
Scripts
The Unicode writing systems present in the label (Latin, Cyrillic, Greek…). A legitimate label normally uses just one — Japanese (Han + kana) being the classic exception.
Imitations
Non-Latin characters visually identical to Latin letters (а→a, о→o, р→p…). A few inside a normal Cyrillic word: nothing unusual. Every character of a label: spoofing.
Invisibles
Zero-width characters (U+200B…) inserted to distinguish a fake domain from the real one to the naked eye. Always malicious in this context.
63 / 253
The DNS limits: 63 characters per label (in ASCII, after punycode conversion — a “short” IDN can exceed them), 253 for the full name.

03How browsers protect you

Against homographs, browsers have a defence: when a domain mixes scripts or imitates a known brand, they display the raw xn-- form in the address bar instead of the Unicode form — the fake аррӏе.com shows up as xn--80ak6aa92e.com, far less convincing.

Registries have rules too: most forbid mixed-script labels at registration time. But policies vary by TLD, and characters from a single script imitating Latin (the famous all-Cyrillic) sometimes slip through — hence the value of checking a dubious link here before clicking.

04Frequently asked questions

Why does my accented domain exceed 63 characters?

The 63-character DNS limit applies to the ASCII form, after punycode conversion — which expands significantly: each non-ASCII character costs several encoding characters, plus the xn-- prefix. A reasonable-looking Unicode label can thus be refused at registration. This tool shows the real length of both forms.

Is an xn-- domain in an email necessarily suspicious?

No: it is the legitimate form of any internationalized domain — xn--caf-dma.fr is simply café.fr. However, a domain that displays as a known brand but whose xn-- form reveals Cyrillic or Greek characters is a major red flag. Paste it here: the analysis tells you precisely which characters imitate what.

Are emoji allowed in domain names?

The IDNA 2008 standard forbids them, but a few registries accept them anyway (notably .ws, historically). Browsers display them inconsistently and much software chokes on them: they are a marketing curiosity rather than a recommendable practice. The tool converts them correctly should you meet one.

Is my brand name exposed to homographs?

If your brand contains the letters a, c, e, i, j, o, p, s, x or y, near-perfect Cyrillic twins exist. Test the variants here to see what an attacker could register, and consider defensively registering the most credible ones. Monitoring nearby domain registrations (through Certificate Transparency logs — see our TLS tool) complements the setup nicely.

Does the conversion use exactly the same algorithm as my browser?

Yes for the Unicode → ASCII direction: the tool relies on the platform's native IDNA (UTS 46) implementation, the very one browsers use — lowercasing, normalization and punycode included. The reverse direction (xn-- → Unicode) is decoded per RFC 3492. Pathological cases (invalid sequences) are flagged rather than guessed.

05More tools