Mi a Base64, és mire jó
Mit csinál ez az átalakító
Beillesztesz egy szöveget, és megmondod, mit csináljon vele: kódolja Base64-be, vagy dekódolja vissza. Az átalakító megmutatja az eredményt, a hosszát, és hogy mennyivel nőtt vagy csökkent a karakterlánc.
Mindkét irány ugyanaz az oldal és ugyanaz a kártya. Csak a „Mit csináljunk” lista választása változik.
A Base64 nem titkosítás
A Base64 semmit sem rejt el. Ez egy módja annak, hogy bármilyen bájtot huszonhat nagybetűvel, huszonhat kisbetűvel, tíz számjeggyel és két speciális jellel írjunk le – egy olyan készlettel, amely garantáltan túléli az átvitelt a csak szövegre épített rendszereken: e-mail, JSON, XML, HTML-attribútumok.
A Base64-et bárki azonnal dekódolja, kulcs nélkül. A Base64-ben leírt jelszó nyíltan leírt jelszó, csak kevésbé feltűnő.
Miért hosszabb az eredmény az eredetinél
A Base64 három bájtot vesz, és négy karakterrel írja le. Így a karakterlánc nagyjából harmadával nő: 100 bájtból 136 karakter lesz a kitöltéssel együtt. Ez magának a formátumnak a tulajdonsága, nem ennek az átalakítónak.
A másik irányban ugyanez fordítva: a dekódolt szöveg mindig rövidebb, mint a Base64, amiből lett.
Két ábécé: szabványos és URL-biztos
A szabványos Base64 (RFC 4648) ábécéje a + és a / jellel végződik, és a négy többszöröséig hiányzó részt = jellel tölti ki.
Mindhárom karakternek különleges jelentése van az oldalcímben és a fájlnévben, ezért ott eltörik a karakterláncot. Ilyen esetekre a szabvány leír egy második ábécét: - a + helyett, _ a / helyett, és semmilyen kitöltés. Ez az URL-biztos.
Az ábécét te választod. Ha egy URL-biztos karakterláncot a szabványos ábécével illesztesz be, az átalakító hibával válaszol, és jelzi, hogy van egy másik lehetőség – de nem fordítja át csendben az egyik ábécét a másikba. A csendes átfordítás azt jelentené, hogy bájtokat kapsz egy karakterláncból, amelyről azt hitted, szabványos, és erről semmi nem szólt.
A bemenet elvan az = kitöltés nélkül
Kimenetnél a szabványos ábécé mindig négy többszörösére egészíti ki a karakterláncot, az URL-biztos soha.
Bemenetnél mindkettőt elfogadjuk. Az elveszett = farok a leggyakoribb dolog, ami útközben a Base64-gyel történik, és nincs ok emiatt elutasítani: itt nem keletkezik kétértelműség.
Szóközök és sortörések
Az e-mailből, PEM-tanúsítványból vagy terminálból származó Base64 általában 64 vagy 76 karakteres sorokra van tördelve. Dekódoláskor a szóközök, tabulátorok és sortörések eltűnnek – nem részei az adatnak.
Sima szövegnél ezt nem tesszük. A sor eleji szóköz tartalom, és a feladat éppen az, hogy mindennel együtt kódoljuk.
Amikor az eredmény nem szöveg
A Base64 bármilyen bájtot hordoz, nem csak szöveget. Egy karakterlánc hibátlanul dekódolódhat, és mégis kiderülhet, hogy kép, archívum vagy más kódolású szöveg.
Ilyenkor az átalakító egyenesen megmondja: hány bájt jött ki, és hogy ez nem UTF-8 szöveg. Nem mutatja őket „négyzetekkel” a karakterek helyett, és nem tesz úgy, mintha bármit is kiolvasott volna. Ez szövegátalakító, és itt az őszinte válasz a korlát megnevezése.
Hosszkorlát
A mező legfeljebb 2000 karaktert fogad. A kérés a címsoron megy át, és a túl hosszú címet a szerver utasítja el, nem az oldal – ezért van itt a korlát, hogy csendes hiba helyett egy mondatot láss.
Gyakori kérdések a Base64-ről
Titkosítás a Base64?
Nem. Ez kódolás: kulcs és titok nélküli átalakítás. Bárki dekódolja egy másodperc alatt.
Miért vannak = jelek a karakterlánc végén?
Ez a kitöltés. A Base64 hárombájtos blokkokban dolgozik; ha az utolsó blokkban egy vagy két bájt van, a karakterláncot egy vagy két = jel egészíti ki a négy többszörösére.
Miért nem dekódolódik a karakterláncom?
Három gyakori ok van: rossz ábécé van kiválasztva (URL-biztos karakterlánc a szabványossal), a karakterláncban van egy ábécén kívüli jel, vagy a hossz nem jön ki még a hiányzó kitöltéssel együtt sem.
Kódolhatok képet?
Ezzel az átalakítóval nem, ez a mezőből vesz szöveget. Egy kép Base64-ét dekódolhatod, de az eredmény egy üzenet lesz arról, hogy ez nem szöveg, és a bájtok száma.
Több helyet foglalnak az ékezetes betűk?
Igen. UTF-8-ban egy olyan betű, mint az á, két bájt, nem egy. Így a „kávé” négy karakter és hat bájt, a Base64 pedig bájtokat számol.
Változik a válasz idővel?
Nem. Az átalakító nem néz sem az órára, sem a hálózatra: ugyanaz a kérés mindig ugyanazt a választ adja.
Base64 átalakító online – kódolás és dekódolás
A Base64 mindenütt felbukkan, ahol az adatnak egy szövegre épített csatornán kell átmennie: e-mailekben, tokenekben, beállításokban, data: címekben. Ez az átalakító mindkét irányba fordítja a karakterláncot, és megnevezi az ábécét, amit használ.
Hogyan használd
Illessz be szöveget vagy Base64-et a mezőbe, válaszd ki az irányt és az ábécét – a válaszkártya magától megjelenik. Nem kell semmire kattintani.