Share to: share facebook share twitter share wa share telegram print page

Punycode

Punycode je v informatice název pro kódovací syntaxi, která umožňuje překlad řetězce znaků kódovaných prostřednictvím Unicode do jednoduché ASCII podoby, používané např. pro pojmenování síťových zařízení nebo internacionalizovaných internetových domén.

Kódovací princip

V této sekci je popsán postup Punycode kódování – částečně ukazuje převod řetězce „počítač“ do kódované podoby „pota-wpa5qd“.

Oddělení ASCII znaků

Nejprve jsou všechny základní (ASCII) znaky v řetězci odděleny od ostatních znaků (např. „počítač“ → „pota“). Pokud byl oddělen alespoň jeden ASCII znak přidá se na konec řetězce znak „-“ (např. „počítač“ → „pota-“).

Kódování ostatních znaků

Dále následuje kódování ostatních ne-ASCII znaků. Použitým algoritmem zahrnujícím tzv. bootstring (do číselných reprezentací v „base36“ (se symboly a … z, 0 … 9), ovšem s nejednotným „řádem“ – používají se tzv. generalized variable-length integers) se kóduje nejen samotný znak, ale i jeho původní pozice v Unicode tvaru. Například řetězec „počítač“ je převeden do podoby „pota-wpa5qd“. Právě text za (posledním) znakem „-“, tedy „wpa5qd“, v sobě nese zakódovanou informaci o ne-ASCII znacích (í, č, č) a jejich původním umístění v řetězci na pozicích 3, 2, resp. 6 (číslováno od nuly).

Pro použití v názvech domén IDN se ještě na začátek přidá konstantní „ACE prefix“ („xn--“). Zakódována doména např. „www.počítač.cz“ je tedy „www.xn--pota-wpa5qd.cz“.

Související články

Externí odkazy

Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya