Что такое punycode?
Punycode — способ представить символы Unicode в форме ASCII, применяемый для интернационализированных доменных имён. Именно поэтому адрес с национальными буквами иногда виден в технических данных в форме, начинающейся с xn--.
Как связаны Unicode и DNS
В IDNA каждую подходящую метку домена преобразуют отдельно: человек видит Unicode-форму (U-label), а совместимая с DNS ASCII-форма называется A-label. Для A-label используется префикс xn-- и результат алгоритма Punycode. Преобразование относится к меткам между точками, а не к URL целиком: путь, параметры и схема обрабатываются иначе.
Преобразование не равно проверке безопасности
Строка, похожая на известный бренд, может содержать символы другого алфавита. Отображение домена браузером зависит от его правил безопасности; сам Punycode лишь кодирует символы и не подтверждает, кому принадлежит сайт. Перед вводом пароля проверьте полный адрес, а не только знакомое слово в нём.
Где проверить форму имени
Если адрес выглядит непривычно, сравните Unicode- и ASCII-формы с помощью DNS-проверки и проверьте регистрационные сведения через поиск домена. О структуре доменных имён читайте в статье «Что такое домен?».
Пример преобразования
Домен bücher.example в технической ASCII-форме может записываться как xn--bcher-kva.example. Префикс применяется к метке с нелатинским символом; метка example остаётся без изменений. Суффикс .example зарезервирован для документации, поэтому пример не следует воспринимать как действующий адрес магазина. DNS хранит и передаёт A-label, а браузер может показать пользователю U-label при соблюдении собственных правил отображения.
Punycode — только алгоритм кодирования. Правила IDNA отдельно определяют, какие последовательности Unicode допустимы в доменных метках, как они нормализуются и проверяются. Поэтому возможность технически закодировать произвольную строку не означает, что её можно зарегистрировать как домен. Правила конкретной доменной зоны могут добавлять ограничения на наборы символов.
Внимание к похожим символам
Буквы разных алфавитов иногда выглядят почти одинаково. Нападающий может попытаться зарегистрировать похожий адрес, который отличается от настоящего одной буквой. При сомнении скопируйте домен из адресной строки, проверьте его ASCII-форму и сравните с официальным адресом сервиса. Замок HTTPS подтверждает защищённое соединение с указанным доменом, но не доказывает, что это нужная вам организация. Для учётных записей используйте сохранённые закладки или менеджер паролей, который привязывает учётные данные к точному домену.
IDN не отменяет обычную DNS-диагностику
После преобразования A-label участвует в DNS как обычная допустимая метка: действуют делегирование, кеширование, DNSSEC и типы записей. Если Unicode-имя не открывается, сравните точную ASCII-форму и ответы DNS.
