AWWW-1st3.6-w04.tresc-1.1-Slajd12
Kodowanie Base64
Kodowanie Base64 zostało opracowane na potrzeby poczty elektronicznej - umożliwia zapisanie ciągu bajtów w formie łańcucha znakowego, dzięki czemu możliwa jest jego transmisja za pośrednictwem znakowej infrastruktury komunikacyjnej (np. SMTP). Ze źródłowego ciągu bajtów wybierane są 6-bitowe odcinki, które po konwersji do wartości dziesiętnych służą jako indeksy w specjalnej tablicy kodowej Base64. Wskazywane znaki są umieszczane w wynikowym łańcuchu znakowym.
Powyższy slajd ilustruje przebieg kodowania nazwy użytkownika "maciej" na potrzeby uwierzytelniania Basic Authentication. Każdy znak nazwy użytkownika jest opisywany przez swój kod ASCII, przekształcany do postaci binarnej. Następnie z ciągu bitów wycinane są 6-bitowe odcinki. Każdy 6-bitowy odcinek jest przekształcany do postaci dziesiętnej, a następnie zastępowany odpowiednim znakiem z tablicy Base64. Wynikowy ciąg znaków to "bWFjaWVq".
Tablicę kodową Base64 przedstawiono poniżej.
indeks znak indeks znak indeks znak indeks znak
0A17R34i51z
1B18S35j520
2C19T36k531
3D20U37l542
4E21V38m553
5F22W39n564
6G23X40o575
7H24Y41p586
8I25Z42q597
9J26a43r608
10K27b44s619
11L28c45t62+
12M29d46u63/
13N30e47v
14O31f48w(pad)=
15P32g49x
16Q33h50y