Base64 Kódolás

A Base64 Encoding eszközzel titkosíthatja a beírt szöveget a Base64 módszerrel. Ha szeretné, dekódolhatja a titkosított Base64 kódot a Base64 Decode eszközzel.

Mi az a Base64 kódolás?

A Base64 Encoding egy olyan kódolási séma, amely lehetővé teszi bináris adatok átvitelét olyan környezetekben, amelyek csak korlátozott karakterkódolást használnak (olyan környezetek, ahol nem minden karakterkód használható, például xml, html, script, azonnali üzenetküldő alkalmazások). Ebben a sémában a karakterek száma 64, a Base64 szó 64-es száma pedig innen származik.

Miért használjunk Base64 kódolást?

A Base64 kódolás szükségessége azokból a problémákból ered, amelyek akkor merülnek fel, amikor a médiát nyers bináris formátumban továbbítják a szöveg alapú rendszerekbe. Mivel a szöveges rendszerek (például az e-mail) a bináris adatokat karakterek széles skálájaként értelmezik, beleértve a speciális parancskaraktereket is, az adathordozóra továbbított bináris adatok nagy részét ezek a rendszerek félreértelmezik, és az átvitel során elvesznek vagy megsérülnek. folyamat.

Az ilyen bináris adatok olyan kódolásának egyik módja, amely elkerüli az ilyen átviteli problémákat, ha egyszerű ASCII-szövegként küldi el őket Base64 kódolású formátumban. Ez a MIME szabvány által használt technikák egyike az egyszerű szövegen kívüli adatok küldésére. Számos programozási nyelv, mint például a PHP és a Javascript, tartalmaz Base64 kódolási és dekódoló funkciókat a Base64 kódolással továbbított adatok értelmezéséhez.

Base64 kódolási logika

A Base64 kódolásban 3 * 8 bit = 24 bites adat, amely 3 bájtból áll, 4 6 bites csoportra van osztva. A 4 6 bites csoport [0-64] közötti decimális értékeinek megfelelő karakterek a Base64 táblázatból kerülnek kódolásra. A Base64 kódolás eredményeként kapott karakterek számának 4 többszörösének kell lennie. Azok a kódolt adatok, amelyek nem 4 többszörösei, nem érvényesek Base64 adatokra. A Base64 algoritmussal történő kódolás során, ha a kódolás befejeződött, ha az adatok hossza nem 4 többszöröse, akkor a kódolás végére az "=" (egyenlő) karakter kerül hozzáadásra, amíg az a 4 többszöröse nem lesz. Például, ha a kódolás eredményeként 10 karakteres Base64 kódolású adatunk van, akkor két "=="-t kell a végére hozzáadni.

Base64 kódolási példa

Vegyük például a három ASCII-számot: 155, 162 és 233. Ez a három szám 100110111010001011101001 bináris adatfolyamot alkot. Egy bináris fájl, például egy kép, olyan bináris adatfolyamot tartalmaz, amely nullák és egyesek tíz- vagy százezreihez használható. A Base64 kódoló a bináris adatfolyamot hat karakterből álló csoportokra osztja fel: 100110 111010 001011 101001. A csoportosítások mindegyike 38, 58, 11 és 41 számokra fordítódik. A hat karakterből álló bináris adatfolyam bináris (vagy alap) formátumra konvertálódik. 2) decimális (alap-10) karakterekre úgy, hogy a bináris tömbben 1-gyel képviselt értékeket négyzetre emeli a pozíció négyzetével. Jobbról indulva balra haladva és nullától kezdve a bináris adatfolyam értékei 2^0, majd 2^1, majd 2^2, majd 2^3, majd 2^4, majd 2^ 5.

Íme egy másik módja annak, hogy megnézzük. Balról indulva minden pozíció 1, 2, 4, 8, 16 és 32-t ér. Ha a slot bináris száma 1, akkor hozzáadja ezt az értéket; ha a slotban 0 van, akkor hiányzik. Bináris tömb 100110 fordulat 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 decimális + 4 + 0 + 0 + 32. A Base64 kódolás veszi ezt a bináris karakterláncot, és 6 bites 38, 58, 11 és 41 értékekre osztja fel. Végül ezeket a számokat a rendszer ASCII karakterekké alakítja a Base64 kódolási táblázat segítségével.