Кодирование

Punycode encode/decode

Кодирование доменных имён с юникод-символами (IDN) в ASCII-совместимый формат Punycode (xn--) и обратно.

Часто задаваемые вопросы

Зачем нужен Punycode?

DNS изначально поддерживает только ASCII, поэтому доменные имена с не-латинскими символами (кириллица, иероглифы, умляуты и т.д.) кодируются в Punycode — ASCII-совместимую строку с префиксом xn--, которую понимают все DNS-серверы.

При чём тут риск фишинга?

IDN-домены позволяют подобрать символы из разных алфавитов, визуально неотличимые от привычных букв (например, кириллическую «а» вместо латинской), и зарегистрировать домен-двойник для известного сайта. Такая атака называется homograph-спуфингом, и именно поэтому браузеры иногда показывают домен в виде xn-- вместо юникод-варианта.

Домены, которые я ввожу, куда-то отправляются?

Нет, кодирование и декодирование Punycode происходят полностью в браузере, без запросов к серверу.