Конвертер IDN Punycode

Конвертер IDN Punycode, это бесплатный инструмент для преобразования интернационализированных доменных имён в ASCII-формат Punycode и обратного преобразования Punycode в читаемый текст Unicode.
Что такое Punycode и зачем он нужен?
Punycode используется в IDNA для преобразования Unicode-меток U-label в ASCII-метки A-label. Благодаря ему имена с такими символами, как ü, é или 漢, могут обрабатываться системами, изначально рассчитанными только на основные латинские буквы, цифры и дефисы.
Метка A-label в IDNA начинается с xn--. Этот префикс сообщает приложениям с поддержкой IDNA, что остальные символы представляют собой запись U-label в формате Punycode. Точки остаются разделителями, поэтому каждая часть домена преобразуется отдельно.
Punycode применяется в рамках технологии Internationalised Domain Names in Applications, обычно обозначаемой сокращением IDNA. IDNA также отвечает за проверку и обработку символов, а Punycode создаёт ASCII-представление допустимой Unicode-метки.
Punycode служит для кодирования, а не для шифрования. Любой может преобразовать ASCII-форму обратно в Unicode, поэтому этот формат не обеспечивает конфиденциальности и не должен использоваться для сокрытия информации.

Как преобразовать интернационализированное доменное имя?
Введи текст Unicode в поле Преобразовать в Punycode/ASCII или ASCII-метки A-label в поле Преобразовать в IDN/Текст. Результат появится соответственно в поле Punycode/ASCII или IDN/Text.
- Скопируй только доменное имя или нужную метку, без окружающих кавычек.
- Для текста Unicode с диакритическими или нелатинскими символами используй Преобразовать в Punycode/ASCII.
- Для ASCII-меток A-label используй Преобразовать в IDN/Текст.
- Проверь каждую преобразованную метку перед добавлением в DNS, настройки электронной почты или конфигурацию приложения.

Конвертер использует функции PHP idn_to_ascii и idn_to_utf8. Обработка выполняется на сервере. Введённые данные передаются на сервер по HTTPS и не сохраняются.
Примеры преобразования доменов
Простой пример показывает связь между отображаемым именем и его формой, совместимой с DNS.
Ввод münchen.de
Результат xn--mnchen-3ya.de
При обратном преобразовании результата получится münchen.de. Метку de, состоящую только из ASCII-символов, преобразовывать не нужно, а метка с ü превращается в метку с префиксом xn--.
На вход нужно передавать корректный текст доменного имени. Основные случаи обрабатываются следующим образом:
- Буквы с диакритическими знаками и нелатинские символы: допустимые Unicode-метки представляются в ASCII с помощью IDNA и Punycode.
- Точки: каждая точка разделяет метки. Поэтому домен может одновременно содержать обычные ASCII-метки и закодированные метки.
- Цифры и обычные дефисы: эти символы уже входят в ASCII и, как правило, остаются читаемыми при соблюдении синтаксических правил доменных имён.
- Пробелы: в обычных DNS-метках имён хостов пробелы недопустимы. Если пробел добавлен случайно, удали его, а не рассчитывай, что Punycode сохранит его как часть домена.
- Знаки препинания: точка разделяет метки, но символы пути URL, номера порта или строки запроса не относятся к имени хоста.
- Пустой или слишком длинный ввод: в пустом значении нет домена для преобразования. Кроме того, DNS ограничивает каждую закодированную метку 63 октетами, поэтому визуально короткая Unicode-метка после преобразования может оказаться слишком длинной.

Почему преобразование Punycode не работает или даёт неожиданный результат?
Обычно преобразование завершается ошибкой, если введён некорректный текст IDN, повреждённая A-label или значение, которое ранее обработали другим способом кодирования. При преобразовании в IDN/Text обычный ASCII-текст, который не является A-label, может остаться без изменений. Прежде чем исправлять символы вручную, проверь, что именно содержит исходное значение: Unicode-метки U-label, ASCII-метки A-label или имя хоста с URL-кодированием.
- Повреждённые A-label или неподходящий способ кодирования: некорректная метка xn-- может не преобразоваться. Base64, шестнадцатеричный текст и URL с процентным кодированием не являются Punycode.
- Неподдерживаемые символы: алгоритм Punycode способен представлять значения Unicode, однако правила IDNA и доменных реестров могут запрещать отдельные символы, их сочетания или системы письма.
- Превышение длины метки: DNS ограничивает каждую закодированную метку 63 октетами, поэтому Unicode-метка после преобразования может стать слишком длинной.
- Лишние части во входных данных: значение может стать некорректным, если вместе с именем хоста скопировать скобки, номер порта или часть HTML-атрибута.
- Двойное кодирование: если символы в домене Punycode были явно или нестандартно закодированы процентным способом, они могут отображаться как последовательности со знаком процента. Сначала декодируй этот уровень с помощью инструмента «Декодер URL», а затем преобразуй полученный домен.
- Двоичные данные вместо текста: IDN-преобразование работает с Unicode-текстом доменных имён. Произвольные байты файла могут не пройти проверку или превратиться в бессмысленные символы при обработке как текста.
Где встречается Punycode?
Чаще всего Punycode встречается в доменных именах, записях DNS, механизмах обработки адресов в браузерах и системах, хранящих имена хостов в формате ASCII. В зависимости от правил безопасности и используемых символов браузер может показать читаемое интернационализированное имя или оставить форму с xn--.
В адресах электронной почты Punycode может использоваться в доменной части после знака @. Имя почтового ящика перед знаком @ он не кодирует. Данные JSON и строки запроса могут содержать Punycode, если в них передаётся имя хоста, но синтаксис JSON и строк запросов не требует применять Punycode к обычному тексту.
Содержимое URI данных обычно кодируют процентным способом или в Base64. Punycode встречается в них только тогда, когда содержащийся текст включает интернационализированное имя хоста. Для значений пути или строки запроса используй URL кодировщик, а для самого имени хоста применяй Punycode.
Часто задаваемые вопросы
Можно ли вставить в IDN-конвертер полный URL?
Безопаснее извлечь имя хоста и преобразовать только его. У схемы, порта, пути, фрагмента и строки запроса свои синтаксические правила, а символам в этих частях может требоваться URL-кодирование, а не Punycode.
Если в домене есть метка xn--, значит ли это, что сайт небезопасен?
Нет. Многие легитимные интернационализированные домены используют метки xn--. Однако визуально похожие символы из разных систем письма могут применяться в обманных именах. Перед вводом пароля или платёжных данных проверь написание декодированного адреса и убедись, что он действительно принадлежит нужной организации.
Можно ли использовать эмодзи в домене Punycode?
Нет, эмодзи запрещены в доменных метках IDNA, хотя алгоритм Punycode способен кодировать их кодовые точки. Реестры доменов могут вводить дополнительные ограничения для допустимых систем письма и символов.
Почему браузер показывает Punycode вместо Unicode?
Браузер может сохранять ASCII-форму, если метка сочетает разные системы письма, содержит символы, связанные с подменой адресов, или не соответствует его правилам отображения. Это защитная мера интерфейса, а не признак ошибки при преобразовании.
Будет ли преобразованное имя точно работать в DNS?
Нет. Успешное преобразование не означает, что домен зарегистрирован, доступен для регистрации или разрешён соответствующим реестром. Перед использованием результата проверь длину метки и её читаемое написание, а также убедись, что реестр допускает эти символы.
Популярные инструменты
Создайте свою собственную подпись и легко скачайте её с помощью нашего инструмента для генерации персонализированных электронных подписей.
Рассчитайте размер любого текста в байтах (B), килобайтах (KB) или мегабайтах (MB) с помощью нашего инструмента калькулятора размера текста.
Используйте инструмент обратного поиска IP, чтобы быстро и легко найти домен или хост, связанный с любым IP-адресом.
Используйте наш инструмент ping, чтобы быстро и эффективно проверить статус и время отклика любого веб-сайта, сервера или порта.
Инструмент поиска IP-адресов от Digily Link предоставляет подробную информацию о любом IP-адресе. Используйте этот бесплатный онлайн-сервис, чтобы получить полные данные об IP.
Мгновенно создайте бесплатную ссылку WhatsApp с помощью нашего генератора. Добавьте собственное сообщение и начинайте чаты одним нажатием без входа в систему и программирования.