Punycode

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая Cheremisinov (обсуждение | вклад) в 20:21, 4 января 2016 (Ссылки: неактуальная ссылка). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Punycode (произносится как «пуникод» или «пьюникод») — стандартизированный метод преобразования последовательностей Unicode-символов в так называемые ACE-последовательности (англ. ASCII Compatible Encoding — кодировка, совместимая с ASCII[1]), которые состоят только из алфавитно-цифровых символов, как это разрешено в доменных именах. Punycode был разработан для однозначного преобразования доменных имен в последовательность ASCII-символов.

Причины использования

Важнейшей причиной введения Punycode был тот факт, что в утверждённой стандартом системе доменных имен разрешены только 26 символов латинского алфавита, цифры от 0 до 9 и дефис. Для английского и некоторых других языков на основе латинского алфавита этого достаточно, однако другие языки могут содержать дополнительные символы, например, ä, ö или ü.

Правила преобразования

В качестве базисных символов выступают символы латинского алфавита от a до z (без различия между прописными и строчными буквами), цифры от 0 до 9 и дефис «-»; всего 37 символов.

Примеры
Последовательность символов Кодировка
abcdef abcdef
abæcdöef abcdef-qua4k
schön schn-7qa
ยจฆฟคฏข 22cdfh1b8fsa
74h
правда 80aafi6cg

Браузеры с поддержкой Punycode

Поддержка кириллических доменов

Punycode-конвертеры

Существуют также специальные программы или сервисы, называемые Punycode-конвертерами, позволяющие осуществлять кодирование/декодирование последовательности Unicode-символов в ACE и наоборот. Примеры см. в разделе «Ссылки».

Примечания

Ссылки

  • RFC 3492 — Punycode: A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA)
  • Punycode converter — Простой Punycode конвертер.
  • Punycode / IDN конвертер — осуществляет перевод IDN-доменов в Punycode, а также производит обратное преобразование из Punycode в IDN.