T

Text Machine

Leistungsstarke Text-Tools, direkt in Ihrem Browser

Base64 codieren / decodieren

Wandle Text in Base64 um und decodiere ihn in deinem Browser wieder zurück. UTF-8-sicher mit optionaler URL-safe-Variante – es wird nichts auf einen Server hochgeladen.

Eingabe

0 Zeilen · 0 Zeichen

Modus

URL-safe

So verwenden Sie Base64 codieren / decodieren

  1. 1

    Codieren oder Decodieren wählen

    Stellen Sie den Modus auf „Codieren“, um Text in Base64 umzuwandeln, oder auf „Decodieren“, um eine Base64-Zeichenfolge wieder in lesbaren Text zu verwandeln.

  2. 2

    Eingabe vornehmen

    Geben Sie Ihren Text oder Ihr Base64 in das Eingabefeld ein oder fügen Sie es dort ein, und aktivieren Sie optional „URL-safe“ für das URL- und dateinamenfreundliche Alphabet.

  3. 3

    Umwandeln

    Klicken Sie auf „Umwandeln“, um die Eingabe lokal in Ihrem Browser zu verarbeiten – mit voller Unterstützung für UTF-8 und Emojis.

  4. 4

    Kopieren oder tauschen

    Kopieren Sie das Ergebnis oder verwenden Sie „Tauschen“, um die Ausgabe zurück in die Eingabe zu übernehmen und den Modus für einen schnellen Hin- und Rückweg umzuschalten.

Der vollständige Leitfaden zur Base64-Kodierung

Was Base64 wirklich ist

Base64 ist ein Kodierungsverfahren von Binär- zu Textdaten: Es stellt beliebige Binärdaten allein mit 64 druckbaren ASCII-Zeichen dar, die eine Übertragung durch Systeme überstehen, die für reinen Text gebaut wurden. Das in RFC 4648 definierte Standardalphabet besteht aus den 26 Großbuchstaben A-Z, den 26 Kleinbuchstaben a-z, den zehn Ziffern 0-9 und den beiden Symbolen + und /. Das sind 64 Symbole, was genau ausreicht, um sechs Bit Daten pro Zeichen darzustellen, denn zwei hoch sechs ergibt 64.

Der Name ist wörtlich gemeint. So wie das Zehnersystem zehn Ziffernsymbole und das Hexadezimalsystem (hex) sechzehn verwendet, nutzt das Basis-64-System vierundsechzig. Die Kodierung ist vollständig umkehrbar und verlustfrei: Alle Bytes, die Sie kodieren, kommen beim Dekodieren Byte für Byte identisch zurück – und genau darum geht es.

Warum es Base64 gibt

Viele Kanäle wurden dafür entworfen, Text zu transportieren, nicht rohe Bytes, und sie zerstören alles außerhalb des druckbaren ASCII-Bereichs. E-Mail ist das klassische Beispiel: Der ursprüngliche SMTP-Standard war ein Sieben-Bit-Protokoll, das Binärdaten beschädigen oder ihr höchstwertiges Bit entfernen konnte, weshalb MIME Base64 verwendet, um Bild- und Dateianhänge sicher zu versenden. Dasselbe Problem taucht überall dort auf, wo Binärdaten in etwas Textuellem mitreisen müssen.

Sie begegnen Base64 ständig, ohne es zu bemerken. Data-URIs betten Bilder direkt in HTML und CSS ein, als data:image/png;base64,iVBORw0K..., sodass ein kleines Symbol keine separate Anfrage benötigt. JSON Web Tokens (JWTs) bestehen aus drei Base64url-Segmenten, die durch Punkte verbunden sind. Die HTTP-Basisauthentifizierung sendet Base64 von username:password. Browser stellen es über die eingebauten Funktionen btoa und atob bereit, und es ist der Standardweg, um Binärdaten in JSON, XML oder eine URL zu packen.

Wie die Abbildung von 3 Byte auf 4 Zeichen funktioniert

Base64 verarbeitet die Eingabe in Blöcken von drei Bytes. Drei Bytes sind 24 Bit, und 24 lässt sich glatt in vier Gruppen zu je sechs Bit teilen. Jede Sechs-Bit-Gruppe ist eine Zahl von 0 bis 63, die zu einem Zeichen aus dem Alphabet wird. So ergeben je 3 Bytes Eingabe stets genau 4 Ausgabezeichen, weshalb Base64 die Daten um rund ein Drittel aufbläht: Die kodierte Form hat etwa 133 % der Größe des Originals.

Worauf es ankommt, ist die Position im Alphabet. Index 0 ist A, Index 25 ist Z, Index 26 ist a, Index 51 ist z, Index 52 ist 0, Index 61 ist 9, Index 62 ist + und Index 63 ist /. Um eine kodierte Zeichenkette von Hand zu lesen, bilden Sie jedes Zeichen auf seinen Index zurück, schreiben diesen Index als sechs Bit, fügen alle Bits aneinander und schneiden den Strom wieder in Acht-Bit-Bytes.

Ein durchgerechnetes Beispiel: "Man" kodieren

Nehmen Sie die drei Buchstaben M, a, n. Ihre ASCII-Byte-Werte sind 77, 97 und 110, was binär 01001101, 01100001 und 01101110 entspricht. Fügen Sie diese 24 Bit zu einem Strom zusammen: 010011010110000101101110. Zerlegen Sie ihn nun in vier Sechs-Bit-Gruppen: 010011, 010110, 000101, 101110.

Diese Gruppen sind die Zahlen 19, 22, 5 und 46. Schlägt man sie im Alphabet nach, ergibt das T (Index 19), W (Index 22), F (Index 5) und u (Index 46). "Man" kodiert sich also zu "TWFu" – eine saubere Umwandlung von drei Bytes in vier Zeichen, ganz ohne Auffüllung. Das Dekodieren durchläuft die Schritte einfach in umgekehrter Reihenfolge.

Auffüllung und das Gleichheitszeichen

Die Eingabe ist nicht immer ein Vielfaches von drei Bytes, daher braucht Base64 eine Möglichkeit, den Rest zu kennzeichnen. Bleibt ein Byte übrig, kodiert es zu zwei Zeichen, gefolgt von zwei Auffüllzeichen (==); bleiben zwei Bytes übrig, kodieren sie zu drei Zeichen, gefolgt von einem Auffüllzeichen (=). Das Auffüllzeichen trägt keine Daten; es teilt dem Dekodierer nur mit, wie viele echte Bytes die letzte Gruppe darstellt.

Der einzelne Buchstabe "M" (Byte 77, binär 01001101) wird beispielsweise auf sechs Bit zu 010011 und 010000 aufgefüllt, was T und Q ergibt, und dann mit == zu "TQ==" vervollständigt. Das Wort "Ma" (zwei Bytes) kodiert sich mit einem einzelnen abschließenden Gleichheitszeichen zu "TWE=". Das Zählen der Gleichheitszeichen am Ende einer beliebigen Base64-Zeichenkette verrät Ihnen, ob die ursprüngliche Länge ein Vielfaches von drei war.

Die URL-sichere Variante

Die Standardzeichen + und / sind an Stellen problematisch, an denen sie bereits eine Bedeutung haben. Ein Schrägstrich trennt Pfadsegmente in einer URL, und ein Pluszeichen wird in formularkodierten Query-Strings als Leerzeichen interpretiert, sodass ein gewöhnlicher Base64-Wert kaputtgehen kann, wenn man ihn in einen Link oder einen Dateinamen einsetzt. Das URL-sichere Alphabet, ebenfalls aus RFC 4648, behebt dies, indem es + durch - (Bindestrich) und / durch _ (Unterstrich) ersetzt.

Das Einschalten der URL-sicheren Option in diesem Werkzeug erzeugt diese Variante und lässt zudem die abschließende =-Auffüllung weg, da Gleichheitszeichen in URLs ebenfalls maskiert werden müssten. Das Ergebnis fügt sich direkt in Query-Parameter, Pfadsegmente, Cookies und Dateinamen ein. Dies ist die von JWTs und vielen Web-APIs verwendete Kodierung. Denken Sie nur daran, URL-sichere Eingaben mit einem URL-sicheren Dekodierer zu dekodieren, denn die Zeichen - und _ sind im Standardalphabet nicht gültig.

Base64 ist Kodierung, keine Verschlüsselung

Dies ist die wichtigste und zugleich am häufigsten missverstandene Tatsache über Base64. Kodierung verschleiert Daten nur für das bloße Auge; sie bietet null Vertraulichkeit. Es gibt keinen Schlüssel und kein Geheimnis, sodass jeder eine Base64-Zeichenkette augenblicklich mit einem beliebigen Werkzeug dekodieren kann, dieses eingeschlossen. Base64 als Mittel zu behandeln, um Passwörter, API-Schlüssel oder persönliche Daten zu verbergen, ist ein schwerwiegender Sicherheitsfehler.

Base64 löst ein Transportproblem, kein Geheimhaltungsproblem: Es macht Binärdaten sicher transportierbar durch reine Textkanäle. Wenn Sie tatsächlichen Schutz benötigen, verschlüsseln Sie die Daten zuerst mit einem echten Algorithmus wie AES und kodieren erst dann den Geheimtext mit Base64, falls er auch als Text reisen muss. Kodierung und Verschlüsselung sind verschiedene Aufgaben.

Häufige Fehler und praktische Tipps

Der häufigste Fehler ist die Verwechslung des Zeichensatzes. Base64 selbst kennt nur Bytes, daher müssen Sie, bevor Sie Text kodieren können, entscheiden, wie dieser Text zu Bytes wird. Dieses Werkzeug verwendet UTF-8, weshalb akzentuierte Buchstaben und Emojis fehlerfrei hin- und zurückkonvertiert werden; kodiert man dieselbe Zeichenkette anderswo mit einem anderen Zeichensatz, ergibt sich ein anderes Base64. Eine zweite häufige Stolperfalle ist Leerraum: Zeilenumbrüche, die manche Kodierer einfügen (MIME bricht bei 76 Zeichen um), sind nicht Teil der Daten und müssen vor dem Dekodieren entfernt werden, auch wenn strenge Dekodierer sie unter Umständen zurückweisen.

Weitere Fallstricke sind das Vermischen des Standard- und des URL-sicheren Alphabets, das Vergessen, dass einer ungefüllten Zeichenkette womöglich ihre Auffüllung wiederhergestellt werden muss, bevor ein strenger Dekodierer sie annimmt, und die Annahme, Base64 spare Platz – das tut es nie, es vergrößert die Daten stets um etwa ein Drittel. Wenn hier eine Dekodierung fehlschlägt, prüfen Sie zuerst auf ein verirrtes Leerzeichen, ein fehlendes Gleichheitszeichen oder ein - oder _, das zum URL-sicheren Alphabet gehört.

Häufig gestellte Fragen

Was ist hier der Unterschied zwischen Codieren und Decodieren?
Codieren wandelt gewöhnlichen Text in seine Base64-Darstellung um, während Decodieren eine Base64-Zeichenfolge nimmt und den ursprünglichen Text rekonstruiert. Mit dem Modus-Schalter wechseln Sie zwischen beiden.
Was bewirkt die URL-safe-Option?
URL-safe-Base64 ersetzt die Zeichen + und / durch - und _ und entfernt das abschließende =-Padding, sodass das Ergebnis ohne Escaping direkt in URLs, Query-Strings und Dateinamen eingesetzt werden kann.
Werden Emojis und nicht-englische Zeichen verarbeitet?
Ja. Text wird vor der Umwandlung als UTF-8 codiert, sodass Buchstaben mit Akzenten, nicht-lateinische Schriften und Emojis beim Codieren und Decodieren korrekt erhalten bleiben.
Was passiert, wenn ich beim Decodieren ungültiges Base64 einfüge?
Das Tool erkennt fehlerhaftes Base64 und zeigt eine Meldung über eine ungültige Eingabe an, anstatt Unsinn zu erzeugen. So werden Sie aufgefordert, auf Tippfehler zu prüfen oder in den Modus „Codieren“ zu wechseln.
Werden meine Daten irgendwohin gesendet?
Nein. Der Konverter läuft vollständig in Ihrem Browser mit JavaScript, sodass Ihr Text und Ihre Base64-Zeichenfolgen Ihr Gerät nie verlassen. Das macht ihn sicher für sensible oder vertrauliche Daten.

Verwandte Tools

Machen Sie weiter mit diesen praktischen Tools

URL Encoder / Decoder

JWT-Decoder

HTML-Encoder / Decoder

HTML zu Text Konverter

JSON-Formatierer

Regex-Tester