Přeskočit na obsah

Punycode

Z Wikipedie, otevřené encyklopedie

Punycode je 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 domén.

Kódovací princip

V této sekci je popsán postup Punycode kódování - ukazuje názorně 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č" → "po--ta-").

Kódování ostatních znaků

Dále následuje kódování ostatních ne-ASCII znaků. Použitým algoritmem 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 znakem "-", tedy "wpa5qd", v sobě nese zakódovanou informaci o ne-ASCII znacích (č, í a č) a jejich původním umístění v řetězci na 3, 4, resp. 7 místě zleva.

Související články

Externí odkazy