Skip to main content

Base64 Encoder & Decoder

Encode UTF-8 text to Base64 online or decode Base64 back to UTF-8 and plain text. Runs in your browser with no upload.

Geprüft von · Zuletzt geprüft

So verwenden Sie den Base64-Encoder-Decoder online

  1. Modus wählen - klicken Sie auf "Kodieren", um Klartext in eine Base64-Zeichenkette umzuwandeln, oder auf "Dekodieren", um eine Base64-Zeichenkette zurück in lesbaren Text umzuwandeln.
  2. Eingabe einfügen oder eingeben in das Textfeld. Das Tool akzeptiert beliebigen UTF-8-Text, einschließlich Emoji, Zeichen mit Akzent und nicht-lateinische Schriften.
  3. Aktionsschaltfläche drücken, um die Konvertierung zu starten. Das Ergebnis erscheint sofort im Ausgabefeld.
  4. Ergebnis kopieren mit der Ein-Klick-Kopieren-Schaltfläche, oder klicken Sie auf Tauschen, um die Ausgabe zurück in die Eingabe zu verschieben und die Richtung umzukehren.

Über Base64-Kodierung

Base64 ist eine Binär-zu-Text-Kodierung, die beliebige Bytefolgen mithilfe von nur 64 druckbaren ASCII-Zeichen darstellt: A-Z, a-z, 0-9, sowie die Symbole + und /, mit = als Auffüllung. Jeweils drei Eingabebytes werden in vier 6-Bit-Gruppen aufgeteilt, wobei jede Gruppe einem Zeichen aus dem Alphabet zugeordnet wird. Das bedeutet, dass die Base64-Ausgabe immer etwa 33 % größer ist als die Originaldaten.

Das Verfahren wurde in RFC 2045 als Teil von MIME (Multipurpose Internet Mail Extensions) formalisiert, damit binäre Anhänge den Durchgang durch Mailserver überstehen, die nur 7-Bit-ASCII verarbeiten. Heute wird es für data:-URIs in CSS und HTML, JSON Web Tokens, HTTP-Basic-Authentifizierungsheader und viele API-Payloads verwendet, bei denen rohe Bytes in einem reinen Textfeld übertragen werden müssen.

Base64 ist absichtlich reversibel und trägt kein Geheimnis: Jeder, der eine Base64-Zeichenkette besitzt, kann sie sofort dekodieren. Es handelt sich daher um eine Transportkodierung und kein Sicherheitsmerkmal. Wenn Sie Vertraulichkeit benötigen, verschlüsseln Sie die Daten zuerst mit AES-GCM oder einer ähnlichen authentifizierten Verschlüsselung und kodieren Sie dann den Chiffretext in Base64 für die sichere Übertragung über einen rein textbasierten Kanal.

Base64 zu UTF-8 und UTF-8 zu Base64

Das Schwierigste an Base64 im Browser ist nicht die Kodierung selbst - es ist sicherzustellen, dass Text nach einem Hin-und-Rücktransport korrekt bleibt. Die eingebauten Browser-Funktionen btoa und atob akzeptieren nur Latin-1-Codepunkte, sodass eine naive Kodierung von "naïve" oder "こんにちは" einen InvalidCharacterError auslöst. Dieser Online-Base64-Encoder-Decoder löst das, indem er die Eingabe durch TextEncoder leitet, um die Zeichenkette vor btoa in UTF-8-Bytes umzuwandeln, und die Ausgabe von atob auf dem Rückweg durch TextDecoder verarbeitet. Das bedeutet, dass Base64 zu UTF-8 und UTF-8 zu Base64 beide durchgängig für jede Unicode-Eingabe funktionieren: Emoji, Kyrillisch, Arabisch, Chinesisch, Japanisch, kombinierte Akzente, Rechts-nach-links-Markierungen, Zero-Width-Joiner - alles übersteht die Konvertierung unverändert.

Warum einen Online-Base64-Encoder-Decoder verwenden

  • Debugging einer data:-URL, die Sie aus HTML, CSS oder einem Browser-Rechtsklick "Bild als Daten-URL kopieren" extrahiert haben - fügen Sie den Payload ein und sehen Sie, was er dekodiert.
  • Inspizieren des Payloads eines JSON Web Token: JWT teilt seine drei Segmente durch "." auf und kodiert jedes in Base64url; dieser Encoder-Decoder (mit einer Bindestrich-zu-Plus-Umwandlung) kann sie lesen.
  • Vorbereitung eines HTTP-Basic-Authentifizierungsheaders: Kodieren Sie die Zeichenkette user:password in Base64 und fügen Sie das Ergebnis nach "Basic " im Authorization-Header ein.
  • Übertragung binärer Payloads in JSON-Feldern, die nur Zeichenketten akzeptieren - die Online-Base64-Konvertierung ermöglicht es, dass ein PNG-Vorschaubild oder ein kleines Zertifikat in einer API-Anfrage mitgegeben wird.
  • Einbetten eines kleinen SVG-Symbols oder einer Webschriftart direkt in HTML/CSS mit einer Daten-URI, um eine HTTP-Anfrage auf dem kritischen Pfad zu sparen.
  • Lesen eines MIME-E-Mail-Anhangs, der mit "Content-Transfer-Encoding: base64" kodiert wurde, und Dekodierung zurück in Bytes.

Beispiele

  • Text Hello wird zu SGVsbG8=. Das abschließende = ist Auffüllung, da die Eingabelänge kein Vielfaches von drei Bytes ist.
  • Text Man (drei Bytes, keine Auffüllung nötig) wird zu TWFu.
  • Emoji 👋 (vier UTF-8-Bytes) wird zu 8J+Riw==, was zeigt, dass Multi-Byte-Zeichen korrekt kodiert werden.

Base64 vs. URL-Kodierung

Base64 und URL-(Prozent-)Kodierung lösen unterschiedliche Probleme und sind nicht austauschbar. Base64 nimmt beliebige Bytes und erzeugt eine 7-Bit-ASCII-Zeichenkette mit einem 64-Zeichen-Alphabet, mit etwa 33 Prozent Größenaufwand. URL-Kodierung nimmt eine Zeichenkette und ersetzt nur die Zeichen, die innerhalb einer URL-Komponente unsicher sind (Leerzeichen, &, ?, #, Nicht-ASCII-Bytes) durch %XX-Sequenzen. URL-Kodierung lässt sicheres ASCII unberührt, sodass der Overhead für reinen englischen Text nahezu null ist. Die Faustregel: Verwenden Sie Base64, wenn Sie Binärdaten in ein rein textbasiertes Feld (JSON-Body, HTTP-Header, Daten-URL) einfügen müssen; verwenden Sie URL-Kodierung, wenn Sie eine Zeichenkette in einen URL-Abfrageparameter, ein Pfadsegment oder einen Formularbody einfügen müssen. Der URL-Encoder und -Decoder behandelt den letzteren Fall. Beachten Sie auch Base64url (RFC 4648 Abschnitt 5), eine URL-sichere Base64-Variante, die + und / durch - und _ austauscht und abschließende Auffüllung weglässt - dies ist das Format, das JWT und viele OAuth-Flows verwenden.

Base64 in Text und Text in Base64 im selben Tool

Die meisten Benutzer landen hier auf der Suche nach "Base64 in Text" oder "Text in Base64" - beides ist dasselbe Kodier-/Dekodier-Paar. Wählen Sie Kodieren, um Text in eine Base64-Zeichenkette umzuwandeln, oder Dekodieren, um eine Base64-Zeichenkette zurück in lesbaren Text umzuwandeln. Die Ausgabe entspricht dem, was das Kommandozeilentool base64 unter macOS oder Linux erzeugt, sodass Sie das Ergebnis von echo -n "Hello" | base64 hier einfügen können und Hello zurückbekommen. Für die umgekehrte Richtung stimmt das Ergebnis mit echo "SGVsbG8=" | base64 -d überein. Müssen Sie den Text zuerst verschlüsseln, damit die Base64-Ausgabe ohne einen Schlüssel bedeutungslos ist? Führen Sie ihn durch das AES-Verschlüsselungs- und Entschlüsselungstool, und kodieren Sie dann den Chiffretext hier in Base64. Um ein Base64-kodiertes JWT-Segment zu inspizieren, dekodieren Sie es mit dem JWT-Decoder, der die URL-sichere Base64url-Variante automatisch verarbeitet.

Online-Base64-Konverter

Dieser Online-Base64-Konverter führt die Kodierung und Dekodierung direkt in Ihrem Browser aus: Fügen Sie UTF-8-Text ein, um eine Base64-Zeichenkette zu erhalten, oder fügen Sie eine Base64-Zeichenkette ein, um den Originaltext zurückzuerhalten - ohne Verlust von Akzenten, Emoji oder nicht-lateinischen Zeichen. Keine Registrierung erforderlich, keine Dateien werden auf einen Server hochgeladen und das Ergebnis erscheint sofort. Ideal für die Vorbereitung eines HTTP-Basic-Headers, das Inspizieren einer Daten-URL, das Lesen eines JWT-Payloads oder das Einbetten eines kleinen Assets in HTML oder CSS. Unterstützt vollständiges Unicode dank TextEncoder und TextDecoder.

Base64 online kodieren und dekodieren

Dieser Online-Base64-Encoder und -Decoder kodiert Ihre UTF-8-Zeichenketten in Base64 und dekodiert in die entgegengesetzte Richtung - vollständig in Ihrem Browser. Fügen Sie den zu kodierenden Text oder die zu dekodierende Zeichenkette ein; das Ergebnis wird sofort angezeigt und nichts wird an einen Server gesendet. Das Tool verarbeitet Akzente, Emoji, Arabisch, Chinesisch und alle anderen Unicode-Zeichen einwandfrei, ohne den üblichen InvalidCharacterError. Praktisch zum Inspizieren eines JWT, zum Generieren eines HTTP-Basic-Headers, zum Lesen einer MIME-Nachricht oder zum Einbetten eines Assets mit einer Daten-URL.

Base64 Text-Konverter kostenlos

Die kostenlose Online-Base64-Konvertierung war noch nie so einfach: Fügen Sie Ihren UTF-8-Text ein, um eine Base64-Zeichenkette zu erhalten, die für einen JSON-Payload, einen HTTP-Basic-Header oder eine Daten-URL bereit ist, oder fügen Sie eine Base64-Zeichenkette ein, um den Originaltext zurückzubekommen. Der gesamte Prozess findet in Ihrem Browser statt, ohne dass etwas auf einen Server hochgeladen wird und ohne Registrierung. Der Base64-Encoder und -Decoder unterstützt vollständiges Unicode - Emoji, Akzente, Kyrillisch, Chinesisch und Arabisch - dank der internen Verwendung von TextEncoder und TextDecoder, sodass die typischen btoa-Fehler nicht auftreten.

Häufig gestellte Fragen

Was ist Base64 und wozu dient es?

Base64 ist eine Binär-zu-Text-Kodierung, die Acht-Bit-Bytes mithilfe eines 64-Zeichen-ASCII-Alphabets darstellt. Es wurde in RFC 2045 als Teil von MIME standardisiert, damit binäre E-Mail-Anhänge den Transport über Server überstehen, die nur Sieben-Bit-Text verarbeiten. Heute wird es überall dort eingesetzt, wo beliebige Bytes über einen rein textbasierten Kanal übertragen werden müssen, einschließlich JSON-APIs, HTTP-Header, Daten-URIs, JWT-Token und Konfigurationsdateien.

Ist Base64 eine Form der Verschlüsselung?

Nein. Base64 ist eine Kodierung, keine Verschlüsselung. Die Transformation ist öffentlich und vollständig reversibel ohne einen Schlüssel, sodass jeder, der eine Base64-Zeichenkette sieht, sie sofort dekodieren kann. Verwenden Sie Base64 niemals, um Passwörter, API-Schlüssel oder persönliche Daten zu verbergen. Wenn Sie Vertraulichkeit benötigen, verwenden Sie echte Verschlüsselung wie AES-GCM. Base64 ist nur nützlich, um Binärdaten sicher als Text zu transportieren.

Warum ist die Base64-Ausgabe etwa 33 Prozent größer als die Eingabe?

Base64 packt jeweils drei Eingabebytes (24 Bits) in vier Ausgabezeichen (jedes trägt sechs Bits Information). Dieses Vier-zu-Drei-Verhältnis entspricht einer Größenzunahme von 33,3 Prozent. Wenn die Eingabelänge kein Vielfaches von drei ist, fügt der Encoder ein oder zwei <code>=</code> Füllzeichen hinzu, damit die Ausgabelänge ein Vielfaches von vier bleibt. Dieser Overhead ist der Preis, um innerhalb eines 7-Bit-ASCII-Kanals zu bleiben.

Verarbeitet dieses Tool Unicode und Emoji korrekt?

Ja. Die Browser-Funktionen <code>btoa</code> und <code>atob</code> akzeptieren nur Latin-1-Zeichen und werfen <code>InvalidCharacterError</code> bei Zeichen wie Emoji oder kyrillischem Text. Dieses Tool leitet Ihren Text zuerst durch <code>TextEncoder</code>, um ihn in UTF-8-Bytes umzuwandeln, und kodiert diese Bytes dann in Base64. Die Dekodierung kehrt den Prozess mit <code>TextDecoder</code> um, sodass Zeichen wie &#128640; oder chinesischer Text ohne Datenverlust übertragen werden.

Wird meine Eingabe an einen Server gesendet?

Nein. Jede Konvertierung läuft vollständig in Ihrem Browser mit JavaScript und den Web-APIs <code>TextEncoder</code>, <code>TextDecoder</code>, <code>btoa</code> und <code>atob</code>. Nichts wird übertragen, hochgeladen, protokolliert oder gespeichert. Sie können sogar nach dem Laden der Seite die Internetverbindung trennen, und das Tool funktioniert weiterhin. Das macht es sicher, sensible Zeichenketten zu kodieren oder zu dekodieren, ohne sich über die Weitergabe an Dritte Gedanken zu machen.

Was ist der Unterschied zwischen Standard-Base64 und Base64url?

Standard-Base64 verwendet <code>+</code> und <code>/</code> als 63. und 64. Zeichen, die in URLs und Dateinamen unsicher sind, da sie eine besondere Bedeutung haben. Base64url (RFC 4648 Abschnitt 5) ersetzt diese durch <code>-</code> und <code>_</code> und lässt in der Regel abschließende <code>=</code> Auffüllung weg. Es ist das Format, das von JWT und vielen OAuth-Flows benötigt wird. Dieses Tool erzeugt Standard-Base64; konvertieren Sie die beiden Varianten, indem Sie die Zeichen bei Bedarf eins-zu-eins austauschen.

Gibt es Größenbeschränkungen für die Eingabe?

Es gibt keine feste Grenze, aber alles läuft im Browser-Speicher im Haupt-Thread. Zeichenketten bis zu einigen Megabytes werden in Millisekunden kodiert. Eingaben in der Größenordnung von Zehnten von Megabytes können den Tab kurz einfrieren, und alles nahe einem Gigabyte wird ihn wahrscheinlich zum Absturz bringen. Für sehr große Dateien bevorzugen Sie ein Kommandozeilentool wie <code>base64</code> unter macOS oder Linux oder <code>certutil -encode</code> unter Windows, die Daten von der Festplatte streamen.

Was bedeutet das abschließende Gleichheitszeichen in der Ausgabe?

Base64 gibt vier Zeichen für jeweils drei Eingabebytes aus. Wenn die Eingabelänge kein Vielfaches von drei ist, richtet die Auffüllung die Ausgabe an einem Vielfachen von vier Zeichen aus. Ein übrig gebliebenes Byte ergibt zwei Ausgabezeichen plus <code>==</code>, und zwei übrig gebliebene Bytes ergeben drei Zeichen plus ein einzelnes <code>=</code>. Die Auffüllung ist rein strukturell und enthält keine Daten; einige Decoder akzeptieren Zeichenketten ohne Auffüllung, aber das Einbeziehen maximiert die Kompatibilität.

Wie konvertiere ich Base64 in Text?

Wechseln Sie das Tool in den Dekodierungs-Modus und fügen Sie Ihre Base64-Zeichenkette in das Eingabefeld ein. Der dekodierte Text erscheint sofort im Ausgabebereich, vollständig UTF-8-fähig, sodass Zeichen mit Akzent, Emoji und nicht-lateinische Schriften genau so zurückkommen, wie sie vor der Kodierung waren. Wenn Ihre Base64-Zeichenkette aus einem JWT oder OAuth-Flow stammt, handelt es sich wahrscheinlich um die URL-sichere Variante (Base64url) - ersetzen Sie <code>-</code> durch <code>+</code> und <code>_</code> durch <code>/</code> vor der Dekodierung und fügen Sie <code>=</code> Auffüllung hinzu, bis die Länge ein Vielfaches von vier ist. Der eigenständige <a href="/tools/jwt-decoder/">JWT-Decoder</a> behandelt diese Austausche automatisch für Token-Payloads.

Ist 'Base64 in Text' dasselbe wie 'Base64 dekodieren'?

Ja. 'Base64 in Text', 'Base64-Zeichenketten-Konverter' und 'Base64-Zeichenkette dekodieren' beziehen sich alle auf dieselbe Operation: Eine Base64-kodierte Zeichenkette nehmen und den ursprünglichen UTF-8-Text erzeugen, den sie darstellt. Das Ergebnis hängt davon ab, was ursprünglich kodiert wurde - wenn die Quelle lesbarer Text war, erhalten Sie lesbaren Text zurück; wenn die Quelle rohe Binärbytes waren (ein Bild, ein verschlüsselter Blob, ein öffentlicher Schlüssel), wird der dekodierte 'Text' wie unlesbarer Zeichensalat aussehen, und Sie sollten stattdessen ein binärbewusstes Tool verwenden. Um ein Base64-Bild zurück in ein anzeigbares Bild umzuwandeln, verwenden Sie den <a href="/tools/base64-to-image/">Base64-zu-Bild-Konverter</a>.

Ist es sicher, Passwörter in Base64 zu kodieren?

Nein. Base64 ist keine Verschlüsselung - es ist eine öffentliche, vollständig reversible Transformation. Ein Passwort als Base64 zu speichern ist aus Sicherheitssicht gleichwertig mit der Speicherung im Klartext, da jeder, der die kodierte Zeichenkette sieht, sie sofort mit diesem Tool oder einer Codezeile dekodieren kann. Für HTTP Basic Auth erfordert der Standard Base64-kodierte Anmeldedaten, aber der Schutz entsteht durch das Senden der Anfrage über HTTPS, nicht durch die Kodierung selbst. Um ein Passwort tatsächlich sicher zu speichern, hashen Sie es mit einer langsamen KDF wie bcrypt, scrypt oder Argon2 - kodieren Sie es niemals in Base64.

Wie unterscheidet sich Base64 von der URL-Kodierung?

Base64 kodiert beliebige Bytes in eine 7-Bit-ASCII-Zeichenkette mit einem 64-Zeichen-Alphabet und fügt etwa 33 Prozent Overhead hinzu. URL-(Prozent-)Kodierung ersetzt nur Zeichen, die innerhalb einer URL-Komponente unsicher sind (Leerzeichen, &, ?, #, Nicht-ASCII) durch %XX-Sequenzen und lässt den Rest unberührt, sodass reiner englischer Text nahezu keinen Overhead hat. Verwenden Sie Base64, wenn Sie Binärdaten in einem rein textbasierten Feld (JSON, HTTP-Header, Daten-URL) benötigen; verwenden Sie URL-Kodierung für Abfragezeichenketten, Pfadsegmente und Formularbodies. Die beiden sind nicht austauschbar.

Mehr erfahren

Mehr Developer Tools