Domeny, adresy e-mail lub URL
Konwertuj umiędzynarodowione nazwy domen (IDN) między formą Unicode, jak ñandú.com.ar, a formą ASCII z Punycode używaną przez DNS, jak xn--and-6ma2c.com.ar. Kierunek jest wykrywany automatycznie, obsługiwane są adresy e-mail i pełne adresy URL, a narzędzie ostrzega, gdy domena miesza pisma, aby podszyć się pod inną.
Do 500 wierszy. W adresach e-mail konwertowana jest tylko domena, a w adresach URL tylko host.
Wynik
Unicode → ASCII
Unicodeñandú.com.ar
ASCIIxn--and-6ma2c.com.ar
ñandúxn--and-6ma2c13 · Latin
ASCII → Unicode
Unicodemünchen.de
ASCIIxn--mnchen-3ya.de
münchenxn--mnchen-3ya14 · Latin
Unicode → ASCIIE-mail
Unicodecontacto@correo.españa.es
ASCIIcontacto@correo.xn--espaa-rta.es
españaxn--espaa-rta13 · Latin
Unicode → ASCIIURL
Unicodehttps://日本語.jp/ページ
ASCIIhttps://xn--wgv71a119e.jp/%E3%83%9A%E3%83%BC%E3%82%B8
日本語xn--wgv71a119e14 · Han
Unicode → ASCII
Unicodeаррӏе.com
ASCIIxn--80ak6aa92e.com
аррӏеxn--80ak6aa92e14 · Cyrillic

Etykieta jest w całości zapisana literami cyrylicy lub greki, które wyglądają identycznie jak łacińskie. Może podszywać się pod znaną domenę: sprawdź formę xn--, zanim zaufasz linkowi.

Punycode bez prefiksu (RFC 3492)

Koduje lub dekoduje dowolny tekst czystym algorytmem Punycode, bez prefiksu xn-- i bez normalizacji domen. Przydaje się do debugowania własnej implementacji.

Wynikmaana-pta

Jak to działa

DNS akceptuje tylko litery ASCII, cyfry i łączniki, więc domena taka jak ñandú.com.ar nie może zostać przesłana w niezmienionej postaci. Umiędzynarodowione domeny (IDN) rozwiązują to za pomocą Punycode (RFC 3492): każda etykieta zawierająca znaki spoza ASCII jest kodowana algorytmem, który zachowuje zwykłe litery i dopisuje na końcu pozycję znaków specjalnych, a następnie otrzymuje prefiks xn--. W ten sposób ñandú staje się xn--and-6ma2c.

Przed kodowaniem IDNA normalizuje nazwę: zamienia litery na małe, ujednolica formy Unicode i przekształca alternatywne kropki, takie jak japońska 。. To narzędzie używa tego samego mapowania (UTS #46), które stosuje przeglądarka przy otwieraniu adresu, więc wynik zgadza się z tym, o co ostatecznie pyta DNS. W adresach e-mail konwertuje tylko domenę, a w adresach URL tylko host.

Dodatkowo rozbija każdą etykietę, podając jej długość i użyte pisma, oraz ostrzega, gdy domena miesza alfabety lub jest zapisana literami cyrylicy albo greki identycznymi z łacińskimi: to podstawa ataków homograficznych, w których link udaje, że prowadzi do znanej witryny.

Przykłady

ñandú.com.arxn--and-6ma2c.com.arZmienia się tylko etykieta ze znakami specjalnymi; com i ar pozostają bez zmian. To tę formę wpisuje się do DNS i do SAN certyfikatu.
faß.dexn--fa-hia.deW IDNA2008 niemieckie ß jest prawidłową literą i zostaje zakodowane. W poprzednim standardzie zamieniało się na ss i wskazywało na fass.de, inną domenę: dlatego niektóre starsze systemy rozwiązują coś innego.
аррӏе.comxn--80ak6aa92e.comHomograf opublikowany przez Xudong Zheng w 2017 roku: pięć liter cyrylicy, które wyglądają dokładnie jak apple. Od tego czasu Chrome i Firefox wyświetlają takie domeny w formie xn--.
пример.рфxn--e1afmkfd.xn--p1aiTakże domeny najwyższego poziomu mogą być międzynarodowe: .рф to domena Rosji zapisana cyrylicą, a w DNS zapisuje się ją jako xn--p1ai.

Przypadki użycia

  • Uzyskanie formy xn-- domeny z polskimi znakami lub akcentami, aby dodać rekordy w DNS, w konfiguracji nginx lub Apache albo w SAN certyfikatu.
  • Zrozumienie, jaka prawdziwa domena kryje się za xn--, które pojawia się w logu, w zgłoszeniu phishingu lub na pasku adresu przeglądarki.
  • Sprawdzenie podejrzanego linku pod kątem liter cyrylicy lub greki podszywających się pod łacińskie.
  • Konwersja domeny umiędzynarodowionego adresu e-mail dla serwera, który nie obsługuje SMTPUTF8.
  • Sprawdzenie, czy międzynarodowa domena po zakodowaniu nie przekracza 63 znaków na etykietę.

Najczęstsze pytania

Co oznacza prefiks xn--?

To prefiks ACE (ASCII Compatible Encoding), który oznacza, że etykieta jest zapisana w Punycode. Etykiety z łącznikami na trzeciej i czwartej pozycji zostały zarezerwowane dla takich prefiksów, dlatego rejestry nie pozwalają utworzyć domeny zaczynającej się od xn--, jeśli nie jest prawidłowym IDN.

Której formy użyć w DNS, na serwerze WWW i w certyfikacie?

Formy ASCII, z xn--, we wszystkich miejscach technicznych: rekordach DNS, server_name w nginx, ServerName w Apache, SAN certyfikatu i nagłówkach Host. Forma Unicode służy tylko do wyświetlania ludziom; przeglądarki konwertują ją przed wysłaniem zapytania.

Czym jest atak homograficzny?

To rejestracja domeny, która wygląda identycznie jak inna, dzięki użyciu liter z innego alfabetu, na przykład cyrylicznego a zamiast łacińskiego. Przeglądarki wyświetlają formę xn--, gdy etykieta miesza pisma lub przypomina znaną domenę. Jeśli link wygląda normalnie, ale jego forma ASCII zaczyna się od xn--, zachowaj ostrożność.

Czy w adresie e-mail można używać polskich znaków?

W domenie tak, i można ją przekonwertować na xn-- dla dowolnego serwera. Część przed znakiem @ to inna sprawa: ze znakami spoza ASCII wymaga, aby wszystkie serwery po drodze obsługiwały SMTPUTF8 (RFC 6531), i nie ma równoważnej formy Punycode.

Dlaczego moja domena z wielkimi literami się zmieniła?

Nazwy domen nie rozróżniają wielkości liter, a IDNA przed kodowaniem zamienia wszystko na małe litery: MÜNCHEN.de i münchen.de to ta sama domena, xn--mnchen-3ya.de. Czysty Punycode zachowuje natomiast wielkie litery, dlatego konwerter bez prefiksu daje inne wyniki.