Понедельник, Апреля 29, 2024
Text Size

Для чего необходим «Punycode»

Для того чтобы преобразовать определенную последовательность установленного стандарта кодирования символов – Юникод-символов, в совместимое кодирование с таблицей American Standard Code for Information Interchange – Compatible Encoding ASCII, был разработан стандартизированный метод «Punycode». Этот «Пьюникод» или «Паникод» был создан специально, чтобы преобразовывать определенные домен-имена в порядок следования символов, находящихся в спецтаблице ASCII. Спецтаблица «Американский Standard Code для обменивания информацией» состоит только из цифровых и алфавитных символов, а это допускается в домен-именах.

Причины применения «Punycode»

Существует основная причина, для чего необходим «Пьюникод». Дело в том, что в системе домен-имен, которая утверждена стандартом, допускаются только алфавитные символы латыни – их 26, цифровые знаки – от 0 до 9, дефис. Языкам, составленным на основе латинского алфавита – например, английскому, этих знаков вполне хватает. Но, существуют такие языки, где в алфавите содержатся дополнительные символы – например, «ÿ» или «ä», и др.

Правила видоизменения символов

В качестве основных символов для кодирования служат 37 символических знаков, к которым относятся:

- латинские алфавитные символы – от «A» до «Z», независимо прописные или строчные;

- цифровые знаки – от 0 до 9;

- орфографический знак – дефис или черточка – «-».

Весь процесс преобразования состоит из 2-х этапов:

I этап – из текста-исходника выбираются символы, соответствующие символам в спецтаблице ASCII, и располагают их подряд слово-код;

II этап – оставшиеся символы в тексте-исходнике, несоответствующие спецтаблице ASCII, преобразовываются согласно Costello Standards Track – подробное описание процедуры в RFC3492. После преобразования «новые» символы добавляются к слову-коду после дефиса.

Несколько примеров, использования метода «Punycode»:

- символы «abcdef» – преобразованы в «abcdef»;

- символы «правда» – преобразованы в «80aafi6cg»;

- символы «abæcdöef» – закодированы «abcdef-qua4k»;

- символы «schön» – приобрели кодировку «schn-7qa»;

- знак «☺» – имеет кодировку «74h»;

- тайские символы «ยจฆฟคฏข» – кодируются «22cdfh1b8fsa».

Браузеры, поддерживающие «Punycode»

Многие браузеры поддерживают стандартизированный метод «Punycode». К таким браузерам относятся:

- Google Chrome и Konqueror;

- Midori и Opera;

- Arora и Mozilla Application Suite;

- Яндекс.Браузер и Safari;

- Maxthon и Mozilla Firefox;

- Internet Explorer – браузер способен поддерживать «Пьюникод», но с дополнительными настройками;

- SeaMonkey – может взаимодействовать с «Паникодом», только с версии 1.0.

Браузеры, поддерживающие домены на кириллице

С 2010 г. существуют кириллические домены, но не все браузеры поддерживают эти домены.

Браузеры, взаимодействующие с кириллическими доменами:

- Opera Mini и Opera;

- Яндекс.Браузер и Mozilla Firefox;

- Internet Explorer и Chrome;

- Safari и др.