Jak používat
- Nahoře vyberte Text nebo Soubor.
- U textu zvolte směr a začněte psát nebo vložte text. Výsledek se při psaní okamžitě aktualizuje.
- Chcete-li zakódovat soubor, vyberte jej nebo přetáhněte (do 10 MB). Pokud jej chcete vložit do HTML nebo CSS, zaškrtněte možnost „Výstup jako data URL“.
- Chcete-li převést Base64 zpět na soubor, zvolte Base64 → Text, vložte data a klikněte na „Stáhnout jako soubor“.
Jak to funguje
Base64 reprezentuje binární data pomocí 64 tisknutelných ASCII znaků: A–Z, a–z, 0–9, + a /. Každé 3 bajty se stanou 4 znaky, takže zakódovaná podoba je asi o 33 % větší než originál. Když délka vstupu není násobkem 3, výstup je doplněn jedním nebo dvěma znaky =.
Base64 je kódování, nikoli šifrování. Kdokoli ho může dekódovat bez klíče, takže se nikdy nesmí používat k ukrytí hesel nebo osobních údajů. Existuje proto, aby binární data mohla procházet systémy postavenými pro text, jako jsou e-maily (MIME), JSON, XML, HTTP hlavičky a datové URL.
Text je nejprve převeden na UTF-8 bajty, takže znaky mimo ASCII jsou zakódovány správně. To je důležité, protože vestavěná funkce prohlížeče btoa selhává na znacích jako é nebo emoji. Při dekódování nástroj kontroluje, zda je výsledek platný UTF-8; pokud ne, data jsou binární a zobrazí se v hexadecimální podobě místo nesrozumitelného textu.
URL-safe varianta (base64url, RFC 4648 sekce 5) nahrazuje + za - a / za _, a obvykle vynechává = doplnění, protože tyto znaky mají v URL speciální význam. Používá se v JSON Web Tokens a mnoha webových API. MIME zalamování řádků (RFC 2045) rozděluje výstup na řádky o maximálně 76 znacích, což vyžadují některé e-mailové systémy a soubory PEM certifikátů.
Dekódování je tolerantní tam, kde je to bezpečné: mezery a zalomení řádků se přeskočí, chybějící doplnění se doplní a akceptují se obě abecedy. Cokoli jiného, jako například nepatřičný znak nebo doplnění uprostřed, je hlášeno s pozicí, místo aby bylo tiše ignorováno.
Příklady
Kódování textu s diakritikou a emoji
„Grüße 👋“ se stane R3LDvMOfZSDwn5GL. ü a ß zabírají každý 2 UTF-8 bajty a emoji zabírá 4, takže 7 znaků se změní na 12 bajtů a 16 Base64 znaků.
Vytvoření HTTP hlavičky Basic Authorization
Pro uživatele „alice“ a heslo „s3cret“ zakódujte alice:s3cret, abyste získali YWxpY2U6czNjcmV0, a odešlete hlavičku Authorization: Basic YWxpY2U6czNjcmV0. Protože Base64 není šifrování, Basic autentizace se smí používat pouze přes HTTPS.
Obnovení souboru z datové URL
Vložte řetězec jako data:image/png;base64,iVBORw0KGgo… do Base64 → Text. Nástroj odstraní prefix, rozpozná PNG data, zobrazí hexadecimální náhled, protože to není text, a „Stáhnout jako soubor“ uloží decoded.png.
Časté dotazy
Je Base64 druhem šifrování?
Ne. Base64 je reverzibilní kódování bez klíče nebo tajemství. Kdokoli, kdo uvidí Base64 řetězec, ho může okamžitě dekódovat, takže se nikdy nespoléhejte na to, že ochrání hesla, tokeny nebo osobní údaje.
Proč se v jiných nástrojích můj dekódovaný text zobrazuje s podivnými znaky?
Obvykle proto, že text byl zakódován jako UTF-8, ale dekódován jako Latin-1 (nebo naopak). Tento nástroj vždy používá UTF-8 a upozorní vás, když dekódované bajty nejsou platným textem UTF-8.
Jaký je rozdíl mezi Base64 a base64url?
Používají stejnou metodu, ale base64url nahrazuje + znakem - a / znakem _ a obvykle vypouští výplňové znaky =, takže výsledek lze použít v URL a názvech souborů bez nutnosti dalšího escapování. Tento dekodér přijímá obě varianty.
Proč je výstup Base64 větší než soubor?
Base64 převede každé 3 bajty na 4 znaky, což znamená nárůst přibližně o 33 %. Zalamování řádků přidává 2 další znaky (CRLF) na každých 76. U velkých obrázků je obvykle lepší soubor poskytovat běžným způsobem, než jej vkládat jako data URL.
Existuje omezení velikosti?
Soubory mohou mít až 10 MB. Vložený text nemá pevný limit, ale velmi velké vstupy (desítky megabajtů) mohou stránku zpomalit, zejména na telefonech.
Soukromí
Kódování i dekódování probíhá ve vašem prohlížeči. Texty a soubory se nikdy nenahrávají ani neukládají a jejich obsah není zahrnut do analytických dat. Soubory ke stažení se vytvářejí lokálně na vašem zařízení.