BrowserTools
Startseite / Encoder / Base64 zu Datei, Dekodieren und Jede Datei Herunterladen

Base64 zu Datei, Dekodieren und Jede Datei Herunterladen

Base64-Zeichenkette oder Data-URI einfügen und die echte Datei herunterladen. Erkennt PDF, PNG, JPEG, ZIP, DOCX und viele weitere Formate automatisch. Läuft vollständig im Browser.

Base64 zu Datei, Dekodieren und Jede Datei Herunterladen wird geladen… Wenn nichts passiert, aktiviere JavaScript.

Base64 ist der Weg, auf dem Binärdateien durch Kanäle reisen, die nur Text zulassen. Eine API liefert eine PDF-Rechnung als lange Zeichenkette, eine Datenbankspalte speichert ein Profilbild als Zeichen, eine Logzeile enthält einen Anhang, ein Data-URI bettet ein Icon in ein Stylesheet ein. Irgendwann brauchen Sie die Datei zurück, und ein Dekodierer, der nur Text ausgibt, hilft dann nicht: ein dekodiertes PNG, das als Text dargestellt wird, ist unlesbarer Zeichensalat. Dieses Werkzeug nimmt das Base64 und gibt Ihnen die echte Datei zurück, korrekt benannt und typisiert, bereit zum Öffnen.

Häufig gestellte Fragen

Werden meine Base64-Daten auf einen Server hochgeladen?
Nein. Dekodierung, Typerkennung, Vorschau und Download geschehen alle in Ihrem Browser über die Funktion atob und die Blob-API. Die Seite sendet keine Netzwerkanfrage mit Ihren Daten, der Inhalt verlässt Ihr Gerät also nie. Deshalb lässt sich das Werkzeug für vertrauliche Dokumente, Zertifikate und private Schlüssel verwenden.
Woher kennt das Werkzeug Dateityp und Endung?
Es liest die Magic Number, die feste Bytesignatur am Anfang fast jedes Binärformats: %PDF- für PDF, die Folge 89 50 4E 47 für PNG, FF D8 FF für JPEG, PK für ZIP und so weiter. ZIP-Dateien werden etwas genauer betrachtet, denn DOCX, XLSX, PPTX und OpenDocument sind alle ZIP-Container und unterscheiden sich nur in den enthaltenen Einträgen. Ergeben die Bytes gültigen UTF-8-Text, sucht es stattdessen nach JSON-, XML-, HTML- oder PEM-Struktur.
Kann ich einen kompletten Data-URI einfügen?
Ja, das ist der einfachste Fall. Fügen Sie alles ein, samt Präfix data:image/png;base64,. Das Präfix wird entfernt, der angegebene MIME-Typ übernommen, und ein vorhandenes name-Attribut wird zum vorgeschlagenen Dateinamen. Die Erkennung läuft trotzdem, und Sie erhalten eine Warnung, wenn der angegebene Typ nicht zu dem passt, was die Bytes zu sein scheinen.
Was, wenn der erkannte Typ falsch ist?
Überschreiben Sie ihn. Dateiname, Endung und MIME-Typ sind editierbare Felder, und sobald Sie eines bearbeiten, überschreibt das Werkzeug es nicht mehr mit seiner eigenen Vermutung. Das ist wichtig bei Formaten mit gemeinsamer Signatur, etwa den vielen ZIP-basierten Dokumentformaten, oder bei Dateien ohne Endung, bei denen nur Sie den Zweck kennen.
Kommt es mit Base64url aus einem JWT zurecht?
Ja. Das URL-sichere Alphabet, das + durch - und / durch _ ersetzt, wird automatisch zurückgewandelt, und fehlendes =-Padding wird ergänzt. Beachten Sie, dass ein vollständiges JWT aus drei durch Punkte getrennten Base64url-Segmenten besteht, fügen Sie also nur das gewünschte Segment ein. Um ein Token richtig zu untersuchen, nehmen Sie besser den JWT-Dekodierer.
Warum erhalte ich einen Fehler wegen eines unerwarteten Zeichens?
Etwas in der Zeichenkette gehört nicht zum Base64-Alphabet. Die Meldung nennt Zeichen und Position, damit Sie es finden. Häufige Ursachen sind eine abgeschnittene Kopie, ein Wert, der unterwegs HTML-maskiert wurde (+ statt +), oder JSON-Escape-Sequenzen, die das Kopieren überlebt haben. Leerzeichen und Zeilenumbrüche sind kein Problem, sie werden automatisch entfernt.
Gibt es eine Größenbeschränkung?
Es gibt keine feste Grenze, nur den Arbeitsspeicher Ihres Geräts. Base64 ist rund 33 % größer als das kodierte Binärmaterial, und der Dekodierer hält Zeichenkette und dekodierte Bytes gleichzeitig vor, weshalb einige hundert Megabyte Base64 einen Browser-Tab ins Schwitzen bringen können, besonders auf dem Smartphone. Dateien bis zu einigen Dutzend Megabyte werden problemlos dekodiert.
Die Vorschau bleibt leer, der Download funktioniert aber. Warum?
Die Vorschau hängt davon ab, ob der Browser das Format darstellen kann. Eine PDF-Vorschau braucht den eingebauten PDF-Betrachter, den manche Konfigurationen abschalten, eine Videovorschau einen unterstützten Codec. Die dekodierten Bytes sind davon unberührt: Wenn der Download eine Datei liefert, die sich in einer normalen Anwendung korrekt öffnet, war die Dekodierung in Ordnung.
Kann es eine Base64-Zeichenkette dekodieren, die eigentlich nur Text ist?
Ja, und es sagt Ihnen das auch: Der erkannte Typ erscheint als text/plain, JSON oder XML, und der Inhalt wird im Vorschaubereich angezeigt, sodass Sie ihn ohne Download lesen können. Wenn Sie nur den Text lesen wollen, ist der allgemeine Base64-Kodierer und -Dekodierer die einfachere Seite dafür.
Warum öffnet die heruntergeladene Datei mit dem falschen Programm?
Betriebssysteme wählen die Anwendung nach der Dateiendung, nicht nach dem MIME-Typ. Steht im Endungsfeld bin, weil das Format nicht erkannt wurde, tragen Sie vor dem Download die richtige ein. Umgekehrt konvertiert das Ändern der Endung nichts: Die Bytes bleiben, was das Base64 kodiert hat, und ein PNG in .jpg umzubenennen macht daraus kein JPEG.

Über Base64 zu Datei, Dekodieren und Jede Datei Herunterladen

Fügen Sie die Zeichenkette ein, und die Dekodierung läuft während der Eingabe. Sie können die reine Base64-Nutzlast einfügen oder einen vollständigen Data-URI wie data:application/pdf;base64,JVBERi0xLjQK, dann werden der angegebene MIME-Typ und ein eventuelles name-Attribut automatisch übernommen. Zeilenumbrüche, Einrückungen, umschließende Anführungszeichen und Kommata am Ende, die beim Kopieren aus JSON oder einem Code-Editor übrig bleiben, werden für Sie entfernt. Auch Base64url wird akzeptiert, die URL-sichere Variante mit - und _ statt + und /, was wichtig ist, weil JSON Web Tokens und viele APIs genau das erzeugen, und fehlendes Padding wird ergänzt statt als Fehler behandelt.

Der interessante Teil ist herauszufinden, was diese Bytes eigentlich sind. Das Werkzeug liest die Magic Number, die kurze Signatur am Anfang fast jedes Binärformats, und erkennt PDF, PNG, JPEG, GIF, WebP, BMP, ICO, TIFF, SVG, MP3, WAV, OGG, FLAC, MP4, WebM, ZIP, GZIP, RAR, 7z, WOFF- und TrueType-Schriften, SQLite-Datenbanken und Windows-Programme. ZIP-Container werden eine Ebene tiefer untersucht, sodass eine DOCX-, XLSX-, PPTX- oder OpenDocument-Datei als solche erkannt wird und nicht als beliebiges Archiv. Stellt sich der Inhalt als gültiger UTF-8-Text heraus, wird er weiter in JSON, XML, HTML, PEM oder reinen Text eingeordnet. Der vorgeschlagene Dateiname, die Endung und der MIME-Typ ergeben sich aus dieser Erkennung, und alle drei bleiben editierbar, wenn Sie es besser wissen als die Heuristik.

Vor dem Herunterladen können Sie sehen, was Sie dekodiert haben. Bilder, PDFs, Audio und Video werden direkt auf der Seite angezeigt, Textformate als Text, was meist genügt, um zu bestätigen, dass Sie die richtige Zeichenkette eingefügt haben. Alles läuft lokal: Dekodierung, Typerkennung und Vorschau finden im Browser über atob und die File API statt, und die Datei entsteht aus einem Blob im Arbeitsspeicher. Es wird nichts hochgeladen, und genau das macht das Werkzeug sicher für signierte Dokumente, private Schlüssel, medizinische Unterlagen und alles andere, was Sie nicht in einen serverseitigen Konverter einfügen würden.

Die 33 Prozent Steuer, Die Alle Zu Zahlen Bereit Waren

Base64 gibt es, weil man dem frühen Internet die Zahl 8 nicht anvertrauen konnte. Viele Mailsysteme der 1970er und 1980er Jahre bauten auf 7-Bit-ASCII, und manche entfernten das achte Bit absichtlich oder verstümmelten Steuerzeichen. Jedes Byte über 127 konnte unterwegs stillschweigend zerstört werden, was es unmöglich machte, ein Programm oder ein Bild per E-Mail zu verschicken. Der Ausweg, 1987 im RFC 989 festgeschrieben und in den MIME-Spezifikationen von 1992 verfeinert, bestand darin, den Kampf gegen die Leitung aufzugeben: die Daten mit ausschließlich jenen Zeichen neu zu kodieren, die jedes System ohnehin sicher behandelte, und die Kosten dafür hinzunehmen.

Diese Kosten betragen exakt 33 Prozent, denn aus 3 Byte Eingabe (24 Bit) werden 4 Ausgabezeichen (je 6 Bit). Ein merkwürdiger Handel, ein Drittel mehr Bandbreite für das Privileg, einen dümmeren Kanal zu benutzen, und eigentlich als Übergangslösung gedacht. Stattdessen überlebte Base64 das Problem, das es löste. Moderne E-Mail ist 8-Bit-sauber, und trotzdem werden Anhänge weiterhin Base64-kodiert, denn als der Transport besser wurde, war jedes Mailprogramm der Welt bereits auf diese Annahme gebaut.

Die Idee verbreitete sich dann weit über E-Mail hinaus. Data-URIs stecken Base64-Bilder direkt in HTML und CSS. JSON kennt keinen Binärtyp, also liefert jede API, die eine Datei zurückgibt, Base64. JWTs, TLS-Zertifikate im PEM-Format, SSH-Schlüssel, PGP-Nachrichten und Kubernetes-Secrets sind alle in Base64 verpackt. Gerade der letzte Fall erzeugt ein hartnäckiges Missverständnis, das man ruhig wiederholen darf: Base64 ist keine Verschlüsselung. Ein als Base64 gespeichertes Kubernetes-Secret kann jeder lesen, der einen Dekodierer starten kann, also praktisch jeder. Kodierung verbirgt Daten vor einer Transportschicht, nicht vor einem Menschen.

Unterstützen