Punycode (произносится как «пуникод» или «пьюникод») — стандартизированный метод преобразования последовательностей Unicode-символов в так называемые ACE-последовательности, которые состоят только из алфавитно-цифровых символов, как это разрешено в доменных именах. Punycode был разработан для однозначного преобразования доменных имен в последовательность ASCII-символов.
Punycode – это конвертация символов в кодировке Unicode в формат, поддерживаемый инфраструктурой DNS. Алгоритм преобразования описан в стандарте RFC 3492.
Идея использования в доменных именах символов национальных алфавитов, как одного из важных элементов интернационализации Интернета, возникла еще в 1970-х годах, когда Интернет еще только разрабатывался. Однако, в связи с тем, что соответствующая технология не была разработана, символы допустимые для регистрации доменных имен в системе доменных имен – DNS были ограничены символами в кодировке ASCII, а именно буквами латинского алфавита (a-z), цифрами (0-9) и символом дефиса. Такое подмножество символов ASCII обычно обозначается «LDH» или «код LDH» (от аббревиатуры, образованной словами: «буква», «цифра», «дефис»).
Домен