Anleitung
- Fügen Sie den Base64-String in die Eingabe ein oder klicken Sie auf „Datei öffnen“, um eine Datei mit Base64-Text zu laden.
- Behalten Sie die Textausgabe bei und wählen Sie unter „Zeichenkodierung“ den Zeichensatz (standardmäßig UTF-8), oder stellen Sie die Ausgabe für Binärdaten auf Hex um.
- Schlägt das Dekodieren fehl, lesen Sie die Fehlermeldung: Sie nennt die Position des ersten ungültigen Zeichens.
- Kopieren Sie das dekodierte Ergebnis oder laden Sie es herunter.
Was der Decoder akzeptiert
Die Dekodierung kehrt die Kodierung um: Jedes Zeichen wird wieder seinem 6-Bit-Wert zugeordnet, und je vier Zeichen ergeben drei Bytes. Base64 aus der Praxis ist selten sauber, deshalb ist dieser Decoder tolerant:
- Leerzeichen und Zeilenumbrüche werden ignoriert, sodass Sie umbrochene MIME-Inhalte und PEM-Blöcke unverändert einfügen können. Löschen Sie aber vorher die Zeilen
-----BEGINund-----END: Ihre Buchstaben und Bindestriche sind gültige Base64-Zeichen und würden als Daten dekodiert. - URL-sichere Eingaben mit
-und_werden genauso dekodiert wie Standard-Base64 mit+und/. - Fehlende Auffüllung ist kein Problem. Abgelehnt wird nur eine Länge von 4n + 1 Zeichen, denn ein einzelnes übrig gebliebenes Zeichen kann kein Byte bilden; meist bedeutet das, dass der String abgeschnitten wurde.
- Data-URIs funktionieren ebenfalls: Ein vorangestelltes Präfix
data:...;base64,wird vor dem Dekodieren entfernt.
Text- oder Binärausgabe
Das Ergebnis einer Dekodierung ist immer eine Bytefolge. War das Original Text, behalten Sie die Textausgabe bei und wählen Sie unter „Zeichenkodierung“ dessen Zeichensatz. Handelt es sich um ein Bild, ein PDF, ein Archiv, einen Schlüssel oder einen Geheimtext, macht kein Zeichensatz die Daten lesbar: Stellen Sie die Ausgabe auf Hex um, um die Bytes zu untersuchen, oder öffnen Sie Base64 zu Datei bzw. Base64 zu Bild, um die Daten anzuzeigen und zu speichern. Oft verraten schon die ersten Zeichen den Inhalt:
| Base64 beginnt mit | Dekodierter Inhalt |
|---|---|
iVBORw0KGgo | PNG-Bild |
/9j/ | JPEG-Bild |
R0lGOD | GIF-Bild |
JVBERi0 | PDF-Dokument |
UEsDB | ZIP-Archiv, auch DOCX, XLSX und JAR |
H4sI | gzip-komprimierte Daten |
eyJ | JSON-Objekt, etwa ein JWT-Header |
Warum der dekodierte Text verstümmelt aussieht
- Falscher Zeichensatz. Wird UTF-8-Text als Windows-1252 gelesen, wird aus é ein
é, und GBK- oder Shift_JIS-Text, der als UTF-8 gelesen wird, zeigt Ersatzzeichen (�). Wählen Sie den Zeichensatz, in dem der Text verfasst wurde. - Binärdaten. Zufällige Symbole mit vereinzelten lesbaren Fragmenten, etwa
PNGoderPKnahe dem Anfang, bedeuten, dass es sich um eine Datei und nicht um Text handelt. - Komprimierte oder verschlüsselte Daten. gzip-Streams, Protocol Buffers und Geheimtext werden korrekt dekodiert, sind aber kein Text. Die Hex-Ausgabe zeigt, was tatsächlich enthalten ist.
- Doppelte Kodierung. Ist die Ausgabe selbst wieder Base64, fügen Sie sie erneut in die Eingabe ein und dekodieren Sie sie ein zweites Mal.
Base64 im Code dekodieren
# Python
base64.b64decode(s).decode('utf-8')
// Node.js (akzeptiert auch URL-sichere Eingaben)
Buffer.from(s, 'base64').toString('utf8')
// Browser: atob() liefert ein Zeichen pro Byte, daher anschließend UTF-8 dekodieren
new TextDecoder().decode(Uint8Array.from(atob(s), c => c.charCodeAt(0)))
# Shell unter Linux und macOS
echo 'SGVsbG8=' | base64 --decode
Spezifikation
| Alphabet | A-Z a-z 0-9 + / |
|---|---|
| Ausgabegröße | 4 Zeichen pro 3 Bytes (etwa 133 %) |
| Auffüllung | Mit = auf ein Vielfaches von 4 Zeichen |
| Standard | RFC 4648, Abschnitt 4 |
| Groß-/Kleinschreibung relevant | Ja |
Beispiele
| Eingabe (UTF-8) | Ausgabe |
|---|---|
Hello, World! | SGVsbG8sIFdvcmxkIQ== |
Base64.is | QmFzZTY0Lmlz |
你好 | 5L2g5aW9 |
Häufig gestellte Fragen
Warum erhalte ich einen Fehler wegen eines ungültigen Zeichens?
%2B und %3D. Entfernen Sie die Anführungszeichen oder führen Sie zuerst eine URL-Dekodierung des Strings durch. Die Fehlermeldung zeigt die Position des ersten fehlerhaften Zeichens.Kann ich Base64 ohne Auffüllung dekodieren?
=-Zeichen nicht, sodass Strings ohne Auffüllung aus JWTs, URLs und APIs normal dekodiert werden.Warum ist die Ausgabe falsch, nachdem ich Base64 aus einer URL kopiert habe?
+ ein Leerzeichen. Leerzeichen werden hier ignoriert, daher gehen diese Zeichen verloren. Ersetzen Sie die Leerzeichen vor dem Dekodieren durch + und verwenden Sie für Werte, die in URLs übertragen werden, Base64URL.Wie dekodiere ich Base64 in ein Bild oder eine Datei?
Wird mein Base64 an einen Server gesendet?
Nein. Die Dekodierung läuft per JavaScript in Ihrem Browser, und die Eingabe verlässt Ihr Gerät nie. Das ist wichtig, wenn Sie Tokens, Konfigurationsgeheimnisse oder personenbezogene Daten dekodieren.