{ }JSONKit.tools

Base64 kodieren — online

Beliebigen Text nach Base64 verwandeln — Emoji und nicht-lateinische Schriften inklusive. URL-sicher einschalten, wenn das Ergebnis in einer URL oder einem JWT reisen muss.

Kodieren⇄Dekodieren

Text

Base64

Warte auf Eingabe …

Über dieses Tool

Base64 existiert, um beliebige Bytes durch Kanäle zu tragen, die nur Text akzeptieren: einen HTTP-Header, eine Data-URI, einen E-Mail-Body, einen JSON-String. Dieser Encoder wandelt die Eingabe zuerst nach UTF-8, und genau deshalb kommen nicht-lateinischer Text und Emoji unverändert zurück — das browsereigene btoa() weist sie schlicht zurück. Der Schalter URL-sicher ersetzt + und / durch - und _ und lässt das =-Padding weg, die Variante, die JWTs und URL-Parameter verwenden.

So wird es benutzt

  1. 1Links den zu kodierenden Text einfügen oder tippen.
  2. 2URL-sicher einschalten, wenn das Ergebnis in einer URL, einem Dateinamen oder einem JWT landet.
  3. 3Kopieren drücken — der Weg zurück ist einen Klick entfernt auf der Seite Base64 dekodieren.

Häufige Fragen

›Warum werden meine Daten durch Base64 größer?

Es kodiert je 3 Bytes als 4 druckbare Zeichen, die Ausgabe ist also rund 33 % größer. Das ist der Preis dafür, Binärdaten durch einen Kanal zu bewegen, der nur Text akzeptiert.

›Was ist URL-sicheres Base64?

Das Standardalphabet nutzt + und /, die in einer URL eine eigene Bedeutung haben, sowie =-Padding, das escaped werden muss. Die URL-sichere Variante tauscht sie gegen - und _ und lässt das Padding weg, das Ergebnis passt also unverändert in einen Pfad oder Querystring. JWTs verwenden genau diese Variante.

›Kommt es mit Emoji und nicht-lateinischem Text zurecht?

Ja. Der Text wird zuerst als UTF-8 kodiert, Kyrillisch, Chinesisch und Emoji überstehen das also unversehrt. Der naive Browser-Einzeiler btoa(text) wirft bei jedem Zeichen oberhalb U+00FF einen Fehler.

›Ist Base64 eine Verschlüsselung?

Nein, und das ist wichtig. Es ist eine Kodierung, keine Chiffre — jeder kann es sofort dekodieren, ganz ohne Schlüssel. Niemals dazu verwenden, ein Passwort oder ein Token zu verstecken.

›Wie mache ich das auf der Kommandozeile?

Unter macOS und Linux: printf %s "text" | base64. Zum Dekodieren den Schalter -d ergänzen. Windows PowerShell braucht [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("text")).