Mi ez az eszköz?
A Base64 egy kódolási séma, amely bináris vagy szöveges adatokat 64 biztonságos ASCII karakter (A–Z, a–z, 0–9, + és /) készletévé alakít. Mindenhol használják a szoftverekben: képek beágyazása HTML/CSS-be, HTTP Basic hitelesítési fejlécek, e-mail mellékletek (MIME), JSON Web Tokenek és olyan API-payloadok, amelyeknek csak szöveges csatornákon kell átjutniuk.
Fontos: a Base64 kódolás, nem titkosítás. Bárki dekódolhatja. A célja az, hogy az adatot biztonságosan lehessen továbbítani olyan rendszereken, amelyek csak szöveget értenek — nem az, hogy titokban maradjon.
A Base64-et formálisan az RFC 4648 szabvány határozza meg, amely a JWT-kben és webes API-kban használt URL-biztonságos változatot is definiálja: ez a + jelet -ra, a / jelet pedig _ -ra cseréli, így a kódolt karakterlánc százalékos kódolás nélkül is elférhet egy URL-ben.
Miért érdemes használni?
- Dekódolj API tokeneket, JWT szegmenseket és hitelesítési fejléceket, hogy lásd, mi van bennük.
- Kódolj szöveget data URI-khoz, konfigurációs fájlokhoz vagy HTTP fejlécekhez.
- UTF-8 biztonságos: az emojik és a nem latin karakterek helyesen kódolódnak és dekódolódnak.
- 100%-ban privát — az átalakítás a böngésződben történik, semmi nem kerül feltöltésre.
- Ingyenes, bejelentkezés és méretkorlát nélkül.
Használati útmutató
- Írd vagy illeszd be a tartalmat a beviteli mezőbe.
- Kattints a "Kódolás" gombra a szöveg Base64-re alakításához, vagy a "Dekódolás" gombra a Base64 visszaalakításához szöveggé.
- Ha a dekódolás sikertelen, a bemenet nem érvényes Base64 — ellenőrizd, nincsenek-e hiányzó karakterek vagy felesleges szóközök.
- Kattints a "Másolás" gombra az eredmény átmásolásához.
Példa
Bemenet
Hello, CodeKitHub! 你好 👋Kimenet
SGVsbG8sIENvZGVLaXRIdWIhIOS9oOWlvSDwn5GLFigyeld meg, hogy a kínai karakterek és az emoji is túlélik az oda-vissza konverziót — ez az UTF-8 biztonságos rész.
Gyakorlati tippek
- A JWT tokenek három, pontokkal összekapcsolt Base64 szegmensből állnak — dekódold külön az első kettőt (fejléc és payload) az elolvasásukhoz; a harmadik egy bináris aláírás, és zajnak fog kinézni.
- Ha a dekódolás egy JWT szegmensnél sikertelen, az base64url kódolás: cseréld ki előbb a - jelet + jelre, a _ jelet pedig / jelre (a szabványos eszközök a +/ ábécét várják).
- A szóközök és sortörések egy Base64 karakterláncban általában ártalmatlan maradványok e-mailekből vagy naplókból, de a hiányzó záró = kitöltés gyakran nem az — ellenőrizd a hosszt, mielőtt sérültnek feltételeznéd az adatot.
- A Base64 kb. 33%-kal felfújja az adatot. Kis payloadoknál nem gond; néhány KB feletti képeknél szinte mindig egy valódi fájl a jobb választás, mint egy data URI.
Valós felhasználási helyzetek
A három eset, amiért az emberek naponta idejönnek: megnézni, mi van egy Authorization fejlécben vagy egy JWT-ben, dekódolni egy webhook/API payload mezőt, ami Base64-be csomagolva érkezett (gyakran JSON — dekódolás után formázd), és egy data URI vagy Basic-Auth karakterlánc kézi előállítása hibakeresés közben.
Bináris adatoknál (képek, fájlok) ne feledd, hogy szövegként dekódolva mojibake-et kapsz — az adat lehet tökéletesen érvényes, csak nem szöveg. A bináris adatok kódolása/dekódolása kódba való; ez az eszköz a szöveges esetekre van optimalizálva.
Hogyan diagnosztizáljunk egy dekódolási hibát
A Base64 dekódolási hibák szinte mindig három ok egyikére vezethetők vissza, gyakoriság szerint sorrendben: a bemenet valójában base64url volt (- és _ karaktereket használ a szabványos + és / helyett, ami gyakori JWT-kben és URL-biztonságos kontextusokban), és ezeket a karaktereket vissza kell cserélni, mielőtt a szabványos dekódolás elfogadná; a karakterlánc valahol csonkolódott (egy másolás-beillesztés, amiből kimaradt az utolsó néhány karakter, vagy egy naplósor, ami megszakadt) — ez felismerhető abból, hogy egy érvényes Base64 karakterlánc hossza a kitöltés figyelembevételével mindig 4 többszöröse; vagy idegen karakterek (extra szóköz, egy elszabadult sortörés, egy véletlenül megkettőzött karakter) kerültek bele másolás közben, ezért mindig biztonságosabb közvetlenül a nyers forrásból beilleszteni, mint újragépelni.
Gyakori kérdések
A Base64 titkosítás?
Nem. A Base64 egy visszafordítható kódolás, amelyet bárki dekódolhat — nulla biztonságot nyújt. Ha adatot kell védened, használj valódi titkosítást (mint az AES); a Base64 csak arra való, hogy az adatot biztonságosan lehessen szövegként továbbítani.
Miért néz ki értelmetlen zagyvaléknak a dekódolt kimenetem?
Vagy a bemenet valójában nem Base64, vagy csonkolva lett, vagy az eredeti adat bináris volt (például egy kép), nem szöveg. A bináris adatok nem jelennek meg olvasható karakterekként.
Mik azok az = jelek a végén?
Kitöltés (padding). A Base64 3 bemeneti bájtból álló blokkokban dolgozik → 4 kimeneti karakter. Amikor a bemenet hossza nem osztható 3-mal, egy vagy két = karakter tölti ki az utolsó blokkot.
Működik ez az eszköz emojikkal és kínai karakterekkel?
Igen. Először UTF-8 bájtokként kódolja a szöveget, ami a szabványos megközelítés. Az olyan egyszerű eszközök, amelyek közvetlenül a btoa()-t használják, elhasalnak minden Latin-1-en kívüli karakternél — ez az eszköz nem.
Feltöltődnek valahova az adataim?
Nem. A kódolás és dekódolás teljes egészében a böngésződben fut JavaScripttel. Az adataid soha nem hagyják el az eszközödet.