Ein einfaches Wort dekodieren
SGVsbG8gV29ybGQ=
Hello World
Das = am Ende ist Padding, denn Hello World ist 11 Bytes lang – also kein Vielfaches von 3. Beim Dekodieren wird es korrekt entfernt.
Base64-Zeichenfolgen und Dateien sofort kodieren oder dekodieren.
Zuletzt aktualisiert
Coddy bringt es dir bei, indem du echten Code im Browser schreibst: interaktive Lektionen, sofortiges Feedback und KI-Hilfe, wenn du feststeckst.
Base64 ist ein Kodierverfahren, das Binärdaten mit 64 druckbaren Zeichen darstellt. Entwicklerinnen und Entwickler greifen immer dann darauf zurück, wenn ein rein textbasiertes System Bytes transportieren muss – etwa kleine, in HTML eingebettete Bilder, Tokens, E-Mail-Anhänge, Data-URLs, kopierbare Geheimnisse in Logs oder JSON-Felder, in denen Binär-Blobs landen.
Base64 ist eine *Kodierung*, keine Verschlüsselung. Ein Base64-String lässt sich praktisch sofort wieder zurücklesen – Base64 darf also niemals als Sicherheitsmaßnahme gelten. Alles, was in Base64 steckt, ist faktisch öffentlich, sofern es nicht *vor* der Kodierung verschlüsselt wurde.
Technisch nimmt Base64 jeweils 3 Bytes (24 Bit) und schreibt sie als 4 Zeichen aus einem festen 64er-Alphabet (A–Z, a–z, 0–9, +, /). Ist die Eingabelänge kein Vielfaches von 3, hängt der Encoder am Ende ein oder zwei = als Padding an. Deshalb enden Base64-Strings so oft mit =.
= füllen die letzte 4er-Gruppe auf und sind in vielen Base64-Strings völlig normal.+ und /) und Base64URL (mit - und _, damit es in URLs und JWTs problemlos funktioniert).Wähle „Encode“, wenn du Klartext oder eine Datei hast und eine Base64-Ausgabe möchtest. „Decode“ ist richtig, wenn du einen Base64-String hast und den Originalinhalt zurückbekommen willst.
Füge einen String in das Textfeld ein oder zieh eine Datei (Bild, PDF, was auch immer) in die Drop-Zone. Dateien werden direkt als data:-URL ausgegeben – fertig zum Einbetten in HTML oder CSS.
Beim Kodieren bekommst du den Base64-String. Beim Dekodieren den Originaltext – oder, falls die Eingabe eine Datei war, die wiederhergestellten Bytes als Download-Link.
Ein Klick auf den Kopier-Button legt das Ergebnis in der Zwischenablage ab. Alles läuft im Browser, deine Eingabe verlässt deinen Rechner nicht.
Die Bausteine, die dir immer wieder begegnen, sobald du mit Base64 arbeitest – definiert in RFC 4648.
| Element | Bedeutung | Beispiel |
|---|---|---|
| Alphabet | 64 Zeichen, die Standard-Base64 verwendet | A–Z, a–z, 0–9, +, / |
| URL-sicheres Alphabet | Wird in JWTs und URLs eingesetzt | A–Z, a–z, 0–9, -, _ |
| Padding | Füllt die letzte Gruppe auf, wenn die Länge kein Vielfaches von 3 ist | = oder == |
| Gruppengröße | Bytes pro kodiertem Block → 4 Ausgabezeichen | 3 Bytes → 4 Zeichen |
| Längenzuwachs | Die Ausgabe ist rund 33 % größer als die Eingabe | 100 B → 136 Zeichen |
| Data-URL | Inline-Einbettung einer Datei in HTML/CSS | data:image/png;base64,... |
SGVsbG8gV29ybGQ=
Hello World
Das = am Ende ist Padding, denn Hello World ist 11 Bytes lang – also kein Vielfaches von 3. Beim Dekodieren wird es korrekt entfernt.
{"role":"student","active":true}eyJyb2xlIjoic3R1ZGVudCIsImFjdGl2ZSI6dHJ1ZX0=
JWT-Tokens kodieren ihre Segmente genau auf diese Weise – deshalb beginnen JWT-Payloads fast immer mit eyJ, der Base64-Form von {".
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNgAAIAAAUAAen8GVAAAAAASUVORK5CYII=
Der Präfix gibt den Medientyp (image/png) und die Kodierung (base64) an. Alles nach dem Komma ist der Dateiinhalt selbst. Praktisch für winzige Bilder, die direkt mit der Seite geladen werden sollen.
Pj4/Pyc+Pg==
Pj4_Pyc-Pg
URL-sicheres Base64 ersetzt + durch - und / durch _, damit der Wert ohne weiteres Escapen in einer URL stehen kann. JWTs nutzen genau diese Variante.
=-Padding manuell entfernen und das Ergebnis dann an einen strikten Decoder verfüttern, der genau dieses Padding erwartet. (URL-sichere Decoder kommen meist auch ohne Padding klar, Standard-Decoder oft nicht.)= als Padding angehängt.atob() im Browser, Buffer.from(str, 'base64') in Node.js, base64.b64decode() in Python.=?= ist Padding. Base64 erzeugt für je 3 Bytes Eingabe genau 4 Zeichen. Ist die Eingabelänge kein Vielfaches von 3, werden ein oder zwei = ergänzt, damit die kodierte Länge ein Vielfaches von 4 bleibt.data:image/png;base64,...-URL packen. So wird das Bild direkt in HTML, CSS oder JSON eingebettet – ohne separaten Netzwerk-Request.