Konwerter Punycode Online
Konwertuj umiędzynarodowione nazwy domenowe między Punycode a Unicode bezpośrednio w przeglądarce.
.pdf · do 2 GB
Do czego służy
Konwerter Punycode dla domen IDN
Wszystkie pisma Unicode
Obsługuje domeny w języku chińskim, arabskim, cyrylicy, devanagari, hebrajskim, japońskim i dowolnym piśmie Unicode.
100% prywatne
Konwersja Punycode odbywa się w całości w Twojej przeglądarce przy użyciu natywnego API. Żadnych serwerów.
Wykrywanie homografów
Ujawnia ukryte znaki Unicode w podejrzanych domenach. Identyfikuje potencjalne próby phishingu.
Natychmiast
Dwukierunkowa konwersja w czasie rzeczywistym. Bez rejestracji, bez czekania, zgodna z RFC 3492.
Jak to działa
Trzy kroki, żadnych komplikacji
Wpisz domenę
Wpisz lub wklej domenę w Unicode (np. café.com lub 中文.com) albo w Punycode (np. xn--caf-dma.com). Narzędzie automatycznie wykrywa format.
Natychmiastowa konwersja
Domena jest konwertowana między czytelną reprezentacją Unicode a jej reprezentacją ASCII Punycode (xn--...) zgodnie ze standardem RFC 3492.
Zweryfikuj i skopiuj
Skopiuj wynik do użycia w konfiguracjach DNS, rejestracjach domen lub aby sprawdzić, czy podejrzana domena używa znaków homograficznych.
FAQ
Masz pytania?
Punycode to algorytm kodowania zdefiniowany w RFC 3492 (opublikowanym w 2003) przez IETF, zaprojektowany do reprezentowania umiędzynarodowionych nazw domenowych (IDN) przy użyciu wyłącznie znaków ASCII. System DNS był pierwotnie zaprojektowany tylko dla znaków ASCII (litery a-z, cyfry 0-9 i myślnik), co wykluczało języki używające akcentów lub znaków niełacińskich (chiński, arabski, cyrylica itp.). Punycode rozwiązuje to, kodując znaki Unicode jako ciąg ASCII zaczynający się od prefiksu xn--. Na przykład münchen.de staje się xn--mnchen-3ya.de.
Prefiks xn-- to prefiks ACE (ASCII Compatible Encoding) zdefiniowany w standardzie IDNA (Internationalizing Domain Names in Applications). Wskazuje, że następująca po nim etykieta domeny jest reprezentacją Punycode znaków Unicode. Prefiks xn-- pojawia się w każdej etykiecie (części oddzielonej kropką) domeny zawierającej znaki spoza ASCII. Na przykład bücher.de ma etykietę bücher, która w Punycode to xn--bcher-kva, dając xn--bcher-kva.de. TLD (.de, .com) rzadko wymaga kodowania.
Atak IDN homograph (zwany też atakiem homofonicznym lub spoofingiem Unicode) następuje, gdy atakujący rejestruje domenę wyglądającą identycznie jak legalna, ale używającą znaków z innego alfabetu. Na przykład łacińska litera 'a' (U+0061) wygląda identycznie jak cyrylicka litera 'а' (U+0430). Domena jak pаypal.com z cyrylickim 'а' różni się od paypal.com z łacińskim 'a', ale wyglądają tak samo. To narzędzie pozwala sprawdzić, czy podejrzana domena używa znaków spoza ASCII, ujawniając jej reprezentację Punycode.
ICANN (Internet Corporation for Assigned Names and Numbers) zatwierdziło IDN ccTLD (umiędzynarodowione domeny krajowe najwyższego poziomu) w 2009 i generyczne IDN gTLD od 2012. Pierwsze IDN ccTLD uruchomiono w języku arabskim (Egipt, Arabia Saudyjska) i cyrylicą (Rosja) w 2010. Dziś istnieją TLD całkowicie w chińskim, arabskim, devanagari, hebrajskim i innych pismach. ICANN ma polityki bezpieczeństwa zapobiegające atakom homograficznym: rejestratorzy muszą walidować, że domeny nie mieszają pism z różnych języków w tej samej etykiecie.
Jest kilka sposobów sprawdzenia, czy domena używa Punycode: 1) Użyj tego narzędzia: wklej domenę i sprawdź, czy zawiera ukryte znaki Unicode. 2) Sprawdź pasek adresu przeglądarki: Chrome i Firefox wyświetlają Punycode (xn--...) gdy wykryją potencjalne ataki homograficzne. 3) Uruchom w terminalu: python3 -c "import idna; print(idna.encode('domain.com'))" lub w Node.js: require('punycode').toASCII('domain.com'). 4) Odpytaj rejestr DNS przez nslookup lub dig: wyświetlona nazwa może ujawnić Punycode.
Historia IDN (ICANN 2003), zapobieganie spoofingowi domen i umiędzynarodowienie sieci
Historia umiędzynarodowionych nazw domenowych (IDN) zaczyna się od uznania, że DNS, zaprojektowany w latach 80. przez Paula Mockapetris, obsługiwał tylko ASCII, wykluczając języki większości populacji świata. Pierwsze wysiłki standaryzacyjne rozpoczęły się w latach 90. RFC 3492 (Punycode) został opublikowany w marcu 2003, a standard IDNA (RFC 3490) w tym samym roku. ICANN zatwierdziło wsparcie dla IDN ccTLD w październiku 2009 po latach debat, a pierwsze domeny w pełni arabskie (.مصر dla Egiptu, .السعودية dla Arabii Saudyjskiej) uruchomiono w 2010.
Spoofing domen przez homografy Unicode jest realnym zagrożeniem bezpieczeństwa. Najbardziej znany przypadek zademonstrował Evgeniy Gabrilovich wraz z Alexem Gontmakherem w 2001, gdy zarejestrowali pаypal.com z cyrylickim 'a'. W 2017 badacz Xudong Zheng wykazał, że można zarejestrować аррӏе.com (używając cyrylickich znaków wyglądających jak łacińskie litery) i uzyskać ważny certyfikat TLS, czyniąc atak praktycznie niewykrywalnym. Nowoczesne przeglądarki odpowiedziały wyświetlaniem Punycode w pasku adresu przy wykrywaniu mieszanych pism lub znaków z rzadkich skryptów.
Umiędzynarodowienie sieci (i18n) wykracza poza domeny. Unicode, rozwijany od 1991 przez Unicode Consortium, definiuje ponad 140 000 znaków z niemal wszystkich systemów pisma świata. Kodowanie UTF-8, reprezentujące Unicode jako bajty kompatybilne z ASCII, jest teraz uniwersalnym standardem dla sieci (ponad 98% stron używa UTF-8 według W3Techs). Wsparcie dla umiędzynarodowionych nazw domenowych dopełnia internacjonalizację warstwy transportowej: dzięki IDN w pełni natywne językowo adresy URL są możliwe. Standard URL WHATWG (zaimplementowany w przeglądarkach) używa Punycode wewnętrznie do przetwarzania domen Unicode w adresach URL.