Base64 Kodiranje

Pomoću alata za kodiranje Base64 možete šifrirati tekst koji unesete metodom Base64. Ako želite, možete dekodirati šifrirani Base64 kod pomoću Base64 Decode alata.

Što je Base64 kodiranje?

Base64 kodiranje je shema kodiranja koja omogućuje prijenos binarnih podataka u okruženjima koja koriste samo neka ograničena kodiranja znakova (okoliša u kojoj se ne mogu koristiti svi kodovi znakova, kao što su xml, html, skripta, aplikacije za razmjenu trenutnih poruka). Broj znakova u ovoj shemi je 64, a broj 64 u riječi Base64 dolazi odavde.

Zašto koristiti Base64 kodiranje?

Potreba za Base64 kodiranjem proizlazi iz problema koji nastaju kada se mediji prenose u sirovom binarnom formatu u tekstualne sustave. Budući da sustavi temeljeni na tekstu (kao što je e-pošta) tumače binarne podatke kao širok raspon znakova, uključujući posebne naredbene znakove, većina binarnih podataka koji se prenose na prijenosni medij ovi sustavi pogrešno tumače i gube se ili pokvare u prijenosu postupak.

Jedna od metoda kodiranja takvih binarnih podataka na način da se izbjegnu takvi problemi u prijenosu je njihovo slanje kao običan ASCII tekst u Base64 kodiranom formatu. Ovo je jedna od tehnika koje koristi MIME standard za slanje podataka osim običnog teksta. Mnogi programski jezici, kao što su PHP i Javascript, uključuju Base64 funkcije kodiranja i dekodiranja za tumačenje podataka prenesenih korištenjem Base64 kodiranja.

Logika kodiranja Base64

U Base64 kodiranju, 3 * 8 bita = 24 bita podataka koji se sastoje od 3 bajta podijeljeni su u 4 grupe od 6 bita. Znakovi koji odgovaraju decimalnim vrijednostima između [0-64] od ove 4 6-bitne grupe uparuju se iz tablice Base64 za kodiranje. Broj znakova dobivenih kao rezultat Base64 kodiranja mora biti višekratnik od 4. Kodirani podaci koji nisu višestruki od 4 nisu valjani Base64 podaci. Kod kodiranja s algoritmom Base64, kada je kodiranje završeno, ako duljina podataka nije višekratnik 4, znak "=" (jednako) dodaje se na kraj kodiranja dok ne bude višekratnik 4. Na primjer, ako imamo 10 znakova kodiranih podataka Base64 kao rezultat kodiranja, dva "==" treba dodati na kraj.

Primjer kodiranja Base64

Na primjer, uzmite tri ASCII broja 155, 162 i 233. Ova tri broja čine binarni tok od 100110111010001011101001. Binarna datoteka kao što je slika sadrži binarni tok koji radi za desetke ili stotine tisuća nula i jedinica. Base64 koder počinje dijeljenjem binarnog toka u grupe od šest znakova: 100110 111010 001011 101001. Svaka od ovih grupa se prevodi u brojeve 38, 58, 11 i 41. Binarni tok od šest znakova pretvara se između binarnog (ili osnovnog). 2) na decimalne (osnovne 10) znakove kvadriranjem svake vrijednosti predstavljene s 1 u binarnom nizu pozicijskim kvadratom. Počevši s desne strane i krećući se ulijevo i počevši od nule, vrijednosti u binarnom toku predstavljaju 2^0, zatim 2^1, zatim 2^2, zatim 2^3, zatim 2^4, zatim 2^ 5.

Evo još jednog načina da to pogledate. Počevši s lijeve strane, svaka pozicija vrijedi 1, 2, 4, 8, 16 i 32. Ako utor ima binarni broj 1, dodajete tu vrijednost; ako utor ima 0, nedostaješ. Binarni niz 100110 okreće se 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 decimalni + 4 + 0 + 0 + 32. Base64 kodiranje uzima ovaj binarni niz i dijeli ga na 6-bitne vrijednosti 38, 58, 11 i 41. Konačno, ti se brojevi pretvaraju u ASCII znakove pomoću Base64 tablice kodiranja.