Base64
A Base64 kódolás 64 karakterből álló ábécén alapuló tartalomkódolási forma, melynek segítségével bináris, illetve speciális karaktereket tartalmazó adatokból ASCII karaktersorozat állítható elő. Az ily módon kódolt adatok akár a karaktereket 7 biten ábrázoló rendszereken is könnyen átvihetők.
Tartalomjegyzék |
Működése [szerkesztés]
A base64 kódolás során a kódolandó adathalmazt először 3 bájtból álló egységekre bontjuk, majd ezt az egységet bináris formára (24 bitre) alakítjuk. A 24 bitet ezután 6 bites darabkákra kell felszabdalni, majd az így kapott, 6 biten ábrázolt számokat indexként használva kell kikeresni a kódtáblából a kódolt karaktert. Látható, hogy a kódolás révén minden három kódolatlan karakter négy kódolttá alakul.
Az egyes bithatosokat reprezentáló karakterek (64 db) az alábbiak: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
A kódolt szövegben előfordulhat még:
- egyenlőségjel ('='), amellyel a kódolt szöveget szokás néggyel osztható hosszúságúra kiegészíteni
- kocsivissza, a visszafejtésnél figyelmen kívül kell hagyni
- soremelés, a visszafejtésnél figyelmen kívül kell hagyni
Példák [szerkesztés]
Az angol Man szó kódolása [szerkesztés]
| Szöveg | M | a | n | |||||||||||||||||||||
| ASCII kód | 77 | 97 | 110 | |||||||||||||||||||||
| Bitminta | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 0 |
| Kódtábla indexe | 19 | 22 | 5 | 46 | ||||||||||||||||||||
| Base64-kódolt | T | W | F | u | ||||||||||||||||||||
Az AbCd szó kódolása [szerkesztés]
Az AbCd szó karaktereinek ASCII kódjai: 41, 62, 43, 64. Ezek bináris formája: 01000001, 01100010, 01000011, 01100100. Az így kapott 32 bit hatos csoportokra bontva (kiegészítve nullákkal): 010000, 010110, 001001, 000011, 011001, 000000, melyek megadják a kódtábla-beli indexeket: 16, 22, 9, 3, 25, 0. Az egyes bithatosokhoz tartozó jelek a táblázat alapján: QWJDZA, kiegészítve néggyel osztható hosszra: QWJDZA==.

