Entwickler-Tools

Base64 Kodierung / Dekodierung

Text in das Base64-Format kodieren oder Base64-Zeichenketten zurück in Text dekodieren. Weit verbreitet für E-Mail-Anhänge, JWT-Token, Daten-URIs und die Übertragung binärer Daten über textbasierte Protokolle.


[[ labels.error_invalid ]]

Tips

  • Der Name Base64 kommt von den 64 druckbaren ASCII-Zeichen, die beim Kodieren verwendet werden (A–Z, a–z, 0–9, +, /). Das = am Ende ist ein Auffüllzeichen, damit die Byteanzahl ein Vielfaches von 3 ist.
  • JWT (JSON Web Token) kodiert seine Daten mit Base64URL — einer Variante, die + durch - und / durch _ ersetzt, um URL-sicher zu sein.
  • Daten-URIs in HTML/CSS (data:image/png;base64,iVBOR...) verwenden Base64, um Ressourcen direkt in den Quellcode einzubetten.
  • Base64 ist Kodierung, keine Verschlüsselung. Jeder kann es ohne Schlüssel sofort dekodieren.

Häufige Fragen

Nein. Base64 ist Kodierung, keine Verschlüsselung. Jeder kann es sofort ohne Schlüssel dekodieren. Verwenden Sie für sensible Daten Algorithmen wie AES oder BCrypt.

Ja. Dieses Tool verwendet intern UTF-8, sodass beliebige Unicode-Zeichen korrekt verarbeitet werden.

Base64 wandelt je 3 Bytes in 4 Zeichen um, daher ist die Ausgabe etwa 33% größer als die Eingabe.

E-Mail-Anhänge (MIME), Daten-URIs in HTML/CSS (data:image/png;base64,...), JWT-Authentifizierungstoken und Übertragung von Binärdaten über Text-APIs.

Übrigens – Base64, E-Mail und der URL-Konflikt

Der wichtigste Treiber hinter der Verbreitung von Base64 war die E-Mail. Das SMTP der 1970er–80er konnte nur 7-Bit-ASCII verarbeiten, sodass binäre Anhänge beim Transport beschädigt wurden. MIME löste dies, indem es Binärdaten als Base64-kodierten Text überträgt — eine Konvention, die heute noch in jedem E-Mail-Anhang verwendet wird.

Das Base64-Zeichensatz enthält + und /, die in URLs eine besondere Bedeutung haben. Um dies zu lösen, wurde Base64URL (+→-, /→_, ohne Auffüllung) entwickelt. JWT- und OAuth-Token verwenden Base64URL.

Die Konvertierung von 3 Bytes in 4 Base64-Zeichen bedeutet, dass die Ausgabe etwa 33% größer als die Eingabe ist. Große Bilder als Daten-URIs einzubetten bläht HTML-Dateien erheblich auf.