Kodowanie Base64

Koncepcja kodowania Base64 obejmuje korzystanie ze znaków US-ASCII (nieakcentowanych) do kodowania dowolnego typu danych w formie 8-bitowej. Protokoły e-mail zostały najpierw zaprojektowane tak, by przesyłać wiadomości wyłącznie w formie tekstu niesformatowanego.

Jednak jako że systemy poczty elektronicznej mocno się miedzy sobą różnią, przesyłanie danych binarnych często kończy się zmianą treści wiadomości, przez co pierwotny dokument nie nadaje się do odczytu.

Format Base64, szeroko wykorzystywany do wysyłania i odbierania e-maili, może przesłać dowolny dokument binarny (aplikację, plik wideo lub audio) jako załącznik do e-maila, poprzez zakodowanie go w formie podstawowych znaków.

Kodowanie Base64 jest odpowiedzialne za ogólny 33-proc. wzrost w objętości kodowanych danych.

Koncepcja kodowania Base64

Koncepcja kodowania Base64 polega na wykorzystaniu 4 drukowalnych znaków (w formacie US-ASCII) do zakodowania dowolnych 3 bajtów (3*8 bitów = 24 bity).

Kodowanie Base64 korzysta z alfabetu 64 drukowalnych znaków przedstawiających 6 bitów danych. 64 symbole tego alfabetu zostały wybrane ze względu na to, że są uniwersalnie odczytywalne oraz nie posiadają szczególnego znaczenia w głównych protokołach e-mailowych (zwłaszcza SMTP).

ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwkyz
123456789+/.

Przy odczytywaniu danych binarnych od lewej do prawej grupy 24 bitów są tworzone poprzez łączenie bloków po 3 bajty danych każdy. Każda 24-bitowa grupa jest następnie dzielona na 4 grupy po 6 bitów; każdy z nich odpowiada 4 znakom alfabetu Base64.

Kodowanie Base64 jest wykorzystywane do danych, które tworzą wielokrotność 24 bitów. Jeśli ilość danych do zakodowania nie jest wielokrotnością 24 bitów, utworzony strumień Base64 musi kończyć się od 0 do 3 znaków równości (“=”), aby osiągnąć wielokrotność 24. Ten 65. znak może być używany wyłącznie na końcu zakodowanych danych.

Aby zapewnić kompatybilność ze wszystkimi systemami poczty elektronicznej, dane Base64 formatuje się z powrotem karetki (=przejściem do nowej linii), tak aby żadna linia nie przekroczyła 76 znaków.

Zdjęcia: © Titov Nikolai - Shutterstock.com

Treści, które ukazują się w serwisie CCM powstają we współpracy z ekspertami IT i pod kierownictwem Jeana-François Pillou, założyciela CCM.net. CCM to serwis o nowych technologiach - jeden z największych na świecie, dostępny w 11 językach.
Ten dokument zatytułowany "Kodowanie Base64" opublikowany przez CCM (pl.ccm.net) jest udostępniany na licencji Creative Commons. Możesz kopiować i modyfikować kopie tej strony, na warunkach określonych przez licencję i wymienionych w niniejszym tekście.
Dołącz do nas!