tools / base64
base64/
Text, Dateien und Bilder in Base64 umwandeln und zurück. UTF-8-Kodierung, auch im URL-sicheren Format.
Klartext
Base64
Häufige Fragen
Was tun, wenn beim Dekodieren „Enthält ungültige Base64-Zeichen“ oder „Ungültige Länge“ erscheint?
Prüfe zuerst, ob der Text vollständig und sauber ist. Erkannt werden A–Z, a–z, 0–9, + und /, dazu - und _ aus der URL-sicheren Schreibweise; ein = darf nur am Ende stehen. Leerzeichen, Zeilenumbrüche und ein führendes data:...;base64, werden automatisch ignoriert. Zeichen in Vollbreite, Anführungszeichen und Reste einer URL-Kodierung wie %2B lösen „Enthält ungültige Base64-Zeichen“ aus; „Ungültige Länge“ bedeutet meist, dass beim Kopieren Zeichen verloren gegangen sind.
Was tun, wenn nach dem Dekodieren „Der Inhalt ist kein UTF-8-Text“ erscheint oder das Ergebnis wie Zeichensalat aussieht?
Die dekodierten Bytes sind kein UTF-8-Text. Meist ist der Originaltext in einer anderen Kodierung wie GBK gespeichert, oder es handelt sich von Haus aus um Binärdaten, etwa ein Bild, ein Archiv oder verschlüsselte Daten. Dieses Tool zeigt Text nur als UTF-8 an und gibt andere Kodierungen nicht als Zeichensalat aus. Binärdaten kannst du über „Datei herunterladen“ speichern; GBK-Text musst du mit einem Tool umwandeln, das GBK unterstützt.
Warum weicht das Ergebnis von JavaScript, Python oder der Kommandozeile ab?
Meist liegt es an einem Zeilenumbruch am Ende oder an einer anderen Zeichenkodierung. Dieses Tool kodiert den Inhalt des Eingabefelds unverändert als UTF-8 und entfernt keine Leerzeichen oder Zeilenumbrüche am Anfang oder Ende. echo hängt auf der Kommandozeile standardmäßig einen Zeilenumbruch an; erst mit echo -n stimmt das Ergebnis überein. Bei Chinesisch und Emojis muss auch die Gegenseite UTF-8 verwenden: btoa in JavaScript wirft dafür direkt einen Fehler, in Python musst du erst encode('utf-8') und dann b64encode aufrufen.
Kann ich das = am Ende weglassen, und was bedeutet „URL-sicher“?
Beim Dekodieren ist ein fehlendes = kein Problem, das Tool ergänzt es automatisch. Ob du es beim Senden weglassen darfst, hängt vom Empfänger ab, denn manche Bibliotheken verlangen es. Der Modus „URL-sicher“ ersetzt + durch - und / durch _ und entfernt das = am Ende. Das eignet sich für URL-Parameter und Dateinamen; JWTs verwenden genau diese Schreibweise. Beim Dekodieren werden - und _ automatisch erkannt, du musst also nichts umschalten.
Gibt es eine Größenbeschränkung, wenn ich eine Datei in Base64 umwandle?
Ja, eine einzelne Datei darf höchstens 20 MB groß sein; größere werden mit einem Hinweis abgelehnt. Die Ausgabe ist standardmäßig eine Data URL mit einem Präfix wie data:image/png;base64, und lässt sich direkt als Bildadresse in eine Webseite oder in CSS einsetzen. Wenn du nur das reine Base64 brauchst, lösche alles bis einschließlich des Kommas. Base64 macht die Daten etwa ein Drittel größer, große Bilder solltest du deshalb nicht einbetten.
Wie wandle ich Base64 wieder in ein Bild oder eine Datei um?
Wechsle zu „Dekodieren“ und füge das Base64 oder eine vollständige Data URL ein. Erkannte Bilder (PNG, JPEG, GIF, WebP) werden als Vorschau angezeigt, Text direkt, bei anderen Binärdaten erscheint nur die Größe. In jedem Fall kannst du das Ergebnis über „Datei herunterladen“ speichern: Bilder werden nach ihrem Format benannt, alles andere wird als decoded.bin gespeichert – ändere die Dateiendung dann bei Bedarf selbst.
Ist Base64 eine Verschlüsselung? Kann ich damit etwas geheim halten?
Nein. Base64 schreibt Bytes lediglich als druckbare Zeichen um; jeder kann das rückgängig machen, es gibt weder einen Schlüssel noch Geheimhaltung. Wenn etwas vertraulich bleiben soll, nimm ein echtes Verschlüsselungsverfahren wie AES.
Werden mein Text und meine Dateien hochgeladen?
Nein. Kodieren und Dekodieren laufen im Browser, und eine ausgewählte Datei wird nur auf deinem Gerät gelesen und nie an einen Server gesendet.