Base64

A Wikipédiából, a szabad enciklopédiából.

A Base64, azaz 64-es számrendszerbeli kódolás egy 64 karakterből álló abc-n alapuló tartalom kódolási forma, melyen bináris tartalmakból könnyen olvasható ASCII karaktersorozat (String) állítható elő. A kódolási forma legfőbb felhasználási területe az SMTP levelezés (e-mail), ahol hagyományokból kifolyólag átvitelkor csak a 7 bites ASCII karakterek a megengedettek, melyekbe nemhogy a hagyományos magyar betűk nem férnek bele, de gyakorlatilag lehetetlenné teszi a bináris tartalmak – például képek – átküldését is. Például erre a problémára nyújt hatékony megoldás ez a kódolási forma némi méretnövekedés árán.

Tartalomjegyzék

[szerkesztés] Hogyan működik

A base64 kódolás során venni kell először 3 byte (24 bit) információt, melyet 6 bites darabkákra kell felszabdalni. A felszabdalt részek értékeit ezután ki kell keresni az úgynevezett base64 abc-ből, majd ezeket a jeleket egymás mellé írva megkapjuk az eredeti tartalom base64 kódolt változatát. Most vehetjük észre, hogy az eredeti 3 byte-os tartalomból a kódolás végére 4 karakterünk lett. A kódolás kivitelezéséből következtethető, hogy minden szöveges és bináris tartalom átkódolható base64-re. A base64 kódolás nem titkosítás: a kódolás metódusa közismert, a kódolandó byte sorozat egyértelműen kódolható, és a kódolt karaktersorból egyértelműen visszaállítható az eredeti kódsorozat.

Az egyes bithatosokat reprezentáló karakterek (64 db) az alábbiak: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

A kódolt szövegben előfordulhat még az egyenlőségjel ('='), amellyel a kódolt szöveget szokás néggyel osztható hosszúságúra kiegészíteni, illetve a kocsivissza és a soremelés jele, amelyet a visszafejtésnél figyelmen kívül kell hagyni.

[szerkesztés] Példa

Egy kiváló kódolási példa elérhető a Külső hivatkozásoknál leírt IETF hivatkozáson.

További példa:

Input:
 C'AbCd' = X'41,62,43,64' = B'01000001,01100010,01000011,01100100'

Felbontva hatbites csoportokra (kiegészítve nullákkal):
 B'010000,010110,001001,000011,011001,000000' = 16, 22, 9, 3, 25, 0

Az egyes bithatosokhoz tartozó jelek a táblázat alapján:
 C'QWJDZA', kiegészítve néggyel osztható hosszra: C'QWJDZA=='

[szerkesztés] Kapcsolódó belső tartalmak

[szerkesztés] Külső tartalmak

A lap eredeti címe: „http://hu.wikipedia.org/wiki/Base64
Személyes eszközök