Base64 Kodiranje

Z orodjem za kodiranje Base64 lahko šifrirate besedilo, ki ga vnesete z metodo Base64. Če želite, lahko šifrirano kodo Base64 dekodirate z orodjem za dekodiranje Base64.

Kaj je kodiranje Base64?

Base64 Encoding je shema kodiranja, ki omogoča prenos binarnih podatkov v okoljih, ki uporabljajo le nekaj omejenih kodiranja znakov (okolja, kjer ni mogoče uporabiti vseh kod znakov, kot so xml, html, skript, aplikacije za takojšnje sporočanje). Število znakov v tej shemi je 64, številka 64 v besedi Base64 pa prihaja od tukaj.

Zakaj uporabljati kodiranje Base64?

Potreba po kodiranju Base64 izvira iz težav, ki nastanejo, ko se mediji prenašajo v neobdelanem binarnem formatu v sisteme, ki temeljijo na besedilu. Ker sistemi, ki temeljijo na besedilu (kot je e-pošta) razlagajo binarne podatke kot širok nabor znakov, vključno s posebnimi ukaznimi znaki, ti sistemi večino binarnih podatkov, poslanih na prenosni medij, napačno razlagajo in se pri prenosu izgubijo ali pokvarijo. proces.

Eden od načinov kodiranja takih binarnih podatkov na način, ki se izogne ​​takšnim težavam pri prenosu, je, da jih pošljete kot navadno besedilo ASCII v kodirani obliki zapisa Base64. To je ena od tehnik, ki jih standard MIME uporablja za pošiljanje podatkov, ki niso golo besedilo. Številni programski jeziki, kot sta PHP in Javascript, vključujejo funkcije kodiranja in dekodiranja Base64 za interpretacijo podatkov, posredovanih z uporabo kodiranja Base64.

Logika kodiranja Base64

Pri kodiranju Base64 je 3 * 8 bitov = 24 bitov podatkov, sestavljenih iz 3 bajtov, razdeljenih v 4 skupine po 6 bitov. Znaki, ki ustrezajo decimalnim vrednostim med [0-64] teh 4 6-bitnih skupin, se ujemajo iz tabele Base64 za kodiranje. Število znakov, pridobljenih kot rezultat kodiranja Base64, mora biti večkratnik 4. Kodirani podatki, ki niso večkratnik 4, niso veljavni podatki Base64. Pri kodiranju z algoritmom Base64, ko je kodiranje končano, če dolžina podatkov ni večkratnik 4, se na konec kodiranja doda znak "=" (enako), dokler ni večkratnik 4. Na primer, če imamo kot rezultat kodiranja 10-znakovne podatke, kodirane v Base64, je treba na konec dodati dva »==".

Primer kodiranja Base64

Na primer, vzemite tri številke ASCII 155, 162 in 233. Ta tri števila tvorijo binarni tok 100110111010001011101001. Binarna datoteka, kot je slika, vsebuje binarni tok, ki deluje za desetine ali sto tisoče ničel in enic. Kodirnik Base64 se začne z razdelitvijo binarnega toka v skupine po šest znakov: 100110 111010 001011 101001. Vsaka od teh skupin je prevedena v številke 38, 58, 11 in 41. Binarni tok šestih znakov se pretvori med binarnim (ali osnovnim). 2) na decimalne (osnova-10) znake tako, da vsako vrednost, predstavljeno z 1, v binarnem nizu kvadrirate s pozicijskim kvadratom. Začenši z desne in se premakne v levo in se začne pri nič, vrednosti v binarnem toku predstavljajo 2^0, nato 2^1, nato 2^2, nato 2^3, nato 2^4, nato 2^ 5.

Tukaj je še en način pogleda na to. Začenši z leve, je vsak položaj vreden 1, 2, 4, 8, 16 in 32. Če ima reža binarno številko 1, to vrednost dodate; če ima reža 0, manjkate. Binarni niz 100110 se obrne 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 decimalka + 4 + 0 + 0 + 32. Kodiranje Base64 vzame ta binarni niz in ga razdeli na 6-bitne vrednosti 38, 58, 11 in 41. Končno se te številke pretvorijo v znake ASCII z uporabo kodirne tabele Base64.