acento.io
Entwickler-Tool

Base64-Encoder und -Decoder

Text und Bytes sofort base64-kodieren oder dekodieren – vollständig im Browser, deine Daten verlassen nie dein Gerät.

Von Carlos Suárez , Systeminformatiker
Zuletzt aktualisiert:

Was dieser Base64-Encoder und -Decoder macht

Base64-Kodierung ist allgegenwärtig: JWT-Token, Basic-Auth-Header, Data-URIs und MIME-Anhänge setzen alle auf denselben Standard – RFC 4648. Dieses Tool kodiert beliebigen Text nach Base64 und dekodiert Base64 wieder zurück zu lesbarem Text, direkt in dieser deutschsprachigen Version ohne Server-Umweg. Wichtig: Umlaute wie ä, ö, ü und ß werden in UTF-8 als Zwei-Byte-Sequenzen dargestellt – Legacy-Systeme, die das ignorieren, erzeugen fehlerhafte Ausgaben. Hier wird jede Eingabe korrekt als UTF-8 verarbeitet, bevor sie kodiert wird. 100% im Browser – deine Daten verlassen nie dein Gerät. Keine Uploads, kein Tracking, keine Server-Logs.

Funktionen

  • RFC-4648-konformes Encoding. Kodiert und dekodiert nach dem offiziellen Standard – kein proprietäres Verhalten, keine Überraschungen beim Austausch mit anderen Systemen.
  • URL-sicherer Modus. Ersetzt + durch - und / durch _, entfernt oder ergänzt Padding (=) – ideal für Query-Parameter und JWT-Signaturen ohne zusätzliches encodeURIComponent.
  • Korrekte UTF-8-Behandlung. Anders als btoa() im Browser schlägt dieses Tool bei Nicht-Latin-1-Zeichen nicht fehl. Mehrbyte-Zeichen wie ä oder € werden vor dem Kodieren korrekt in UTF-8 umgewandelt.
  • Sofortiger Kopierknopf. Das Ergebnis lässt sich mit einem Klick in die Zwischenablage kopieren – ohne manuelles Markieren, direkt einsatzbereit für Header, Config-Dateien oder Code.
  • Vollständig clientseitig. Kein Request verlässt deinen Browser. Auth-Header, JWT-Payloads oder PII-Daten bleiben ausschließlich bei dir – kein Server sieht sie jemals.

So benutzt du den Base64-Encoder und -Decoder

Wähle den Tab „Kodieren“ oder „Dekodieren“, füge deinen Text ein und das Ergebnis erscheint sofort. Optional URL-sicheren Modus aktivieren.

  1. Tab wählen. Klicke auf „Kodieren“, um Text nach Base64 umzuwandeln, oder auf „Dekodieren“, um einen Base64-String zu lesen.
  2. Text eingeben. Füge deinen Inhalt ein – von einfachen Strings bis zu Auth-Credentials oder JWT-Headern. In JavaScript macht btoa(text) dasselbe, bricht aber bei Umlauten ab; atob(b64) kehrt den Vorgang um.
  3. URL-sicheren Modus aktivieren (optional). Schalte „URL-sicher“ ein, wenn das Ergebnis in URLs, Query-Strings oder JWT-Signaturen verwendet wird. Auf der Kommandozeile lautet das Äquivalent: echo -n 'hello' | base64.
  4. Ergebnis kopieren. Klicke auf „Kopieren“ – der kodierte oder dekodierte String liegt sofort in der Zwischenablage.

Häufige Anwendungsfälle

  • JWT-Payloads inspizieren. JWT-Token bestehen aus drei Base64URL-kodierten Teilen. Den mittleren Teil (Payload) kannst du hier sofort dekodieren und Felder wie exp, sub oder iss prüfen – ohne externes Tool.
  • Basic-Auth-Header erzeugen. HTTP Basic Authentication erwartet Authorization: Basic <base64(user:password)>. Hier kannst du das Credentials-Paar kodieren und direkt in curl, Postman oder eine Config-Datei einfügen.
  • Kleine Bilder als Data-URI einbetten. SVG-Icons oder kleine PNGs lassen sich als data:image/png;base64,… direkt in HTML oder CSS einbetten – spart einen HTTP-Request. Besonders nützlich für E-Mail-Templates.
  • Binäre Werte in JSON oder YAML kodieren. Konfigurationsdateien (z. B. Kubernetes-Secrets) speichern Binärdaten als Base64-String. Mit diesem Decoder-Tool lassen sich verdächtige oder unbekannte Werte schnell lesbar machen. Für URL-Umwandlungen eignet sich ergänzend unser [URL-Encoder und -Decoder](/de/url-encoder/).

Häufig gestellte Fragen

Ist Base64 eine Verschlüsselung?

Nein. Base64 ist eine Kodierung, keine Verschlüsselung. Jeder, der den String sieht, kann ihn sofort dekodieren – es gibt keinen Schlüssel. Wer sensible Daten schützen will, braucht echte Kryptografie, etwa über die Web Crypto API.

Was ist der Unterschied zwischen Standard-Base64 und URL-sicherem Base64?

Standard-Base64 nutzt + und / als die letzten zwei Zeichen des Alphabets, plus = als Padding. In URLs sind diese Zeichen reserviert oder problematisch. Der URL-sichere Modus (RFC 4648 §5) ersetzt + durch - und / durch _, was direkt in Query-Parametern und JWT-Signaturen verwendet werden kann.

Warum schlägt btoa() in JavaScript bei Umlauten fehl?

Die eingebaute Funktion btoa() verarbeitet nur Latin-1-Zeichen (Bytes 0–255 als einzelne Codepoints). Umlaute wie ä oder ü sind in UTF-8 Zwei-Byte-Sequenzen, was btoa() mit einem Fehler quittiert. Die Lösung: erst mit encodeURIComponent und einer TextEncoder-Pipeline in UTF-8 umwandeln, dann kodieren – was dieses Tool automatisch erledigt.

Verlassen meine Daten beim Kodieren den Browser?

Nein. Das gesamte Encoding und Decoding findet ausschließlich im Browser statt – kein Netzwerk-Request, kein Server, kein Logging. Du kannst Auth-Credentials, JWT-Tokens oder vertrauliche Payloads bedenkenlos einfügen.

Warum gibt es manchmal Zeilenumbrüche im Base64-String?

Ältere Implementierungen (z. B. für MIME-E-Mails) brechen den Base64-Output nach 76 Zeichen um. RFC 4648 schreibt das für reine Base64-Strings nicht vor. Wenn du einen String mit Zeilenumbrüchen einfügst, entferne sie vor dem Dekodieren – oder nutze den Decoder hier, der Whitespace automatisch ignoriert.

Was ist Base32 und wann brauche ich es?

Base32 verwendet ein 32-Zeichen-Alphabet (A–Z und 2–7) und ist weniger kompakt als Base64, aber komplett case-insensitiv und für Menschen leichter abzutippen. Es wird vor allem für TOTP-Seeds (Authenticator-Apps) und bestimmte Dateisysteme eingesetzt. Dieses Tool fokussiert auf Base64; für Zahlensystem-Konvertierungen schau dir unseren [Zahlensystem Konverter](/de/number-base-converter/) an.