64-uma kodado

El Vikipedio, la libera enciklopedio
Saltu al: navigado, serĉo

64-uma kodado (angle: Base64) estas metodo kodi duumajn informojn per sistemo el 64 "ciferoj". Ĝi utilas por sendi tiajn informojn per retpoŝto, laŭ la normo MIME.

La kialo por uzo de 64-uma kodado estas, ke la retpoŝta normo SMTP (kaj rezulte multaj retpoŝtaj programoj) ne permesas aŭ iam ne permesis liberan uzon de ĉiuj eblaj 256 bitokoj; al la nepermesataj aŭ problemaj bitokoj apartenas la numeraroj 0–32 kaj 127–255. Restas do nur 94 sekuraj signoj, la signoj de Askio escepte de reg-signoj, spaceto kaj nuligo. El tiuj signoj oni elektis la ciferojn uzatajn por 64-uma kodado.

Laŭ 64-uma kodado oni unue vicigas ĉiujn bitojn en la sendotaj datenoj, ignorante la limojn inter la bitokoj. La vicon oni dividas je grupoj de po ses bitoj kaj ĉiun grupon oni kodas per 64-uma cifero, laŭ jena tabelo:

Valoro Signo
0 A
1 B
25 Z
26 a
51 z
52 0
61 9
62 + (aŭ - por ekz. retadresoj)
63 / (aŭ _ por ekz. retadresoj)

Ĉiuj uzataj signoj estas ankaŭ en la kodo EBCDIC, uzata de multaj komputilegoj.

Se la nombro de bitokoj ne estas dividebla per 3, ne eblas tute dividi la vicon en grupojn de 6 bitoj. Tiuokaze oni aldonas unu aŭ du bitokojn kun valoro 0, por igi ilian nombron dividebla per 3. La nombron de aldonitaj bitokoj oni markas per aldono de egale multaj da egalsignoj. Fine de mesaĝo 64-ume kodita povas do esti 0, 1 aŭ 2 egalosignoj.

Ĉar retpoŝtaj sistemoj ofte havas limon pri la longeco de linioj, oni post po 76 signoj enmetas liniŝanĝon.

Per 64-uma kodado la grandeco de datenoj kreskas proksimume je faktoro de proksimume 1,368.