[ DNS & domains ]

Internationalised domain names and punycode in DNS checks

Compare internationalised domain labels in their Unicode and validated ASCII forms before running DNS and authentication checks.

By the EmailAuth research team

[ Key points ]

  • Preserve Unicode input, validated A-label output and the exact IDNA profile.
  • Convert the domain before adding protocol underscore labels.
  • Valid authentication does not establish ownership of a lookalike brand.
On this page

A domain displayed in Unicode may be queried through an ASCII-compatible representation. Preserve both forms and the conversion rules so that a checker result can be reproduced. Visual familiarity is not evidence that two names identify the same domain or belong to the same organization.

Separate the domain from the mailbox

References: RFC 5890 §2.3.2.1, RFC 5891 §5.

An internationalised domain label can have a U-label, its valid Unicode form, and an A-label, its validated ASCII-compatible form beginning xn--. IDNA processing operates on domain labels. It does not convert an email local part into an ASCII mailbox and does not establish SMTPUTF8 support.

Authentication records add protocol labels around the domain. Convert the internationalised domain portion with the appropriate IDNA implementation, then construct the owner, such as _dmarc. plus the A-label domain. Do not run a hostname-only IDNA validator over protocol underscore labels and conclude that the underlying domain is invalid.

Validate rather than merely encode

References: RFC 5890 §2.3.2.1, RFC 5891 §4, RFC 5895 §2.

Punycode is part of the A-label representation, but not every string beginning xn-- is a valid A-label. Validation includes the applicable IDNA rules, permitted characters and contextual restrictions. RFC 5891 defines protocol processing, while application mapping choices can affect user input before that processing.

Record the library and version, IDNA profile, Unicode input and resulting ASCII form. Tool defaults can differ, especially for characters affected by mapping or older IDNA behavior. Avoid silently normalizing an ambiguous user entry and presenting the result as the only possible intended domain.

Reproduce a round-trip fixture

Using an installed Python idna library that implements IDNA2008, run idna.encode("bücher.example", uts46=False).decode("ascii"). Expected output is xn--bcher-kva.example. Decode it with the same library and verify the Unicode round trip. The example is illustrative and is not a claim about an organization's live domain.

Construct _dmarc.xn--bcher-kva.example and s1._domainkey.xn--bcher-kva.example as DNS owner strings. In a lab or controlled checker, capture whether the tool accepts the Unicode input, converts it, rejects it or sends a different question. The retained historical capture records only library conversion, with idna version 3.18. The new offline conversion check in this review records its own installed version separately; neither is a DNS or SMTPUTF8 test.

Add a negative fixture with an invalid xn-- label and retain the actual library exception. Treat rejection as useful evidence rather than deleting characters until the input happens to pass. For other user-facing mappings, document the alternative profile explicitly instead of assuming an IDNA2008 strict result matches every browser.

Compare actual identities in mail evidence

References: RFC 9989 §4.4, RFC 9989 §5.3.1.

Preserve the original From header and the domain representations used by SPF, DKIM and DMARC analysis. For DMARC, RFC 9989 §5.3.1 requires an extracted U-label Author Domain to be converted to A-label form for further processing. Use the protocol's alignment rules rather than a visual comparison of displayed names. Where message syntax or internationalisation behavior is unsupported by a tool, report the limitation instead of silently picking a convenient identity.

Use known ownership context to investigate lookalikes. A domain can pass its own authentication and still visually resemble another organization's name. IDNA conversion improves reproducibility; it does not certify brand ownership, remove phishing risk or prove that an email message was authorized by the expected party.

[ Takeaway ]

Valid authentication does not establish ownership of a lookalike brand.

[ By role ]

What this means for you

Choose your role for practical next steps.

IT / Mail Admin

Record normalization behavior

A checker must reveal which DNS name it actually used.

Next steps

  1. Capture Unicode and ASCII forms.
  2. Pin the IDNA profile and version.
  3. Test rejection and round trips.

CISO / SecOps

Review lookalikes without overclaiming

Valid internationalisation is not itself suspicious or trustworthy.

Next steps

  1. Compare actual labels.
  2. Preserve original message identities.
  3. Keep phishing and protocol findings distinct.

Founder / Non-technical

Separate identity from appearance

A familiar-looking domain may belong to someone else.

Next steps

  1. Verify actual domain ownership context.
  2. Avoid brand claims from authentication alone.
  3. Escalate ambiguous customer reports.

[ FAQs ]

Frequently asked questions

What is an A-label?

A valid ASCII-compatible representation of an internationalised domain label, using the xn-- form.

RFC 5890 §2.3.2.1

Is every xn-- string valid?

No. It must satisfy IDNA validation, not just resemble Punycode.

RFC 5890 §2.3.2.1

Does IDNA convert the mailbox local part?

No. Domain conversion is separate from internationalised email-address support.

Should I convert _dmarc as an IDNA hostname label?

Convert the domain portion and construct the protocol owner separately; underscore service labels have another role.

RFC 5891 §5

Why do two tools normalize differently?

They can use different IDNA versions or mapping profiles. Record both explicitly.

RFC 5895 §2

What should a round-trip test preserve?

The intended valid Unicode label and its matching ASCII form under the stated profile.

RFC 5890 §2.3.2.1

Does an authenticated lookalike belong to the brand?

No. Authentication of that domain does not establish ownership of another brand.

Was the example sent as email?

No. The evidence is limited to offline library conversion and input validation; DNS, message delivery and SMTPUTF8 were not tested.

[ Sources ]

Sources

  1. RFC 5890

    Sections §2.3.2.1

  2. RFC 5891

    Sections §4 · §5

  3. RFC 5895

    Sections §2

  4. RFC 9989

    Sections §4.4 · §5.3.1

[ Glossary ]

Glossary

U-label
A valid Unicode form of an internationalised domain label.

RFC 5890 §2.3.2.1

A-label
A validated ASCII-compatible IDNA label.

RFC 5890 §2.3.2.1

Punycode
An encoding used in the ASCII representation of internationalised labels.

RFC 5890 §2.3.2.1

Enterprise provenance

Why top financial institutions and governments retired their email security dashboards.

Traditional email authentication platforms sell you a dashboard and ask your engineers to do the labour. In high-stakes environments, manual oversight means delayed enforcement, configuration drift and unmonitored shadow domains.

EmailAuth is the agentic email provenance platform. Our agents enforce p=reject, keep third-party senders aligned and move your domains to full RFC 9989 compliance, the new DMARC standard,, with human-in-the-loop auditability.

Governments Large enterprises Tier-1 financial institutions

SaaS · Dedicated tenancy · Air-gapped on-prem · BYOK encryption

Knowledge Base