Base64 Kodierer & Dekodierer

Code Umrechner
.txt-Datei hochladen oder ziehen
.b64 / .txt-Datei hochladen oder ziehen

Einleitung

Der Base64 Kodierer & Dekodierer ist ein kostenloses Online-Werkzeug zum Kodieren von Text in Base64 und Dekodieren von Base64 zurück in Text. Beide Operationen erfolgen in Echtzeit während der Eingabe, ohne Seitenneuladen oder Absenden-Button. Das Tool läuft vollständig in Ihrem Browser — nichts wird an einen Server gesendet.

Zwei unabhängige Bereiche befinden sich auf derselben Seite: einer zum Kodieren, einer zum Dekodieren. Jeder hat sein eigenes Textfeld, Upload-Bereich und Aktionsschaltflächen, sodass Sie in beide Richtungen arbeiten können, ohne den Modus wechseln zu müssen.

Was ist Base64?

Base64 ist eine Methode, Binärdaten mit nur druckbaren ASCII-Zeichen darzustellen. Es handelt sich nicht um ein Verschlüsselungs- oder Komprimierungsverfahren — sein Zweck ist es, Binärdaten sicher über Systeme zu transportieren, die für Text ausgelegt sind.

Wie die Kodierung funktioniert

Das Base64-Alphabet verwendet 64 Zeichen:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Der Kodierungsprozess teilt die Eingabe in Gruppen von 3 Bytes (24 Bits) und zerlegt jede Gruppe in vier 6-Bit-Werte. Jeder 6-Bit-Wert (0–63) wird einem Zeichen im Alphabet zugeordnet.

Eingabe:     F   o   o
Binär:       01000110 01101111 01101111
6-Bit:       010001 100110 111101 101111
Dezimal:     17     38     61     47
Base64:      R     b    9     v

"Foo" wird zu Rm9v kodiert.

Warum 64?

64 wurde gewählt, weil es die größte Zweierpotenz ist, die nur Zeichen verwendet, die in fast allen Zeichensätzen verfügbar sind (Buchstaben, Ziffern und zwei Satzzeichen). Dadurch ist Base64 zuverlässig in E-Mail-Systemen, JSON-Payloads, URLs und anderen textbasierten Kanälen einsetzbar, die Nicht-ASCII-Bytes möglicherweise verstümmeln oder ablehnen.

Jedes Base64-Zeichen trägt 6 Bits Informationen, verglichen mit 8 Bits pro Byte. Dieses 6-zu-8-Verhältnis erklärt, warum die kodierte Ausgabe etwa 33 % größer ist als die ursprüngliche Eingabe — ein Thema, das später ausführlicher behandelt wird.

Wenn die Eingabe kein Vielfaches von 3 Bytes ist

Wenn die letzte Gruppe weniger als 3 Bytes hat, wird Padding hinzugefügt. Der Kodierer hängt =-Zeichen an, um die Ausgabelänge auf ein Vielfaches von 4 zu bringen:

  • 1 Byte übrig → 2 Base64-Zeichen + ==
  • 2 Bytes übrig → 3 Base64-Zeichen + =
  • 3 Bytes vollständig → 4 Base64-Zeichen, kein Padding

Zum Beispiel wird "Fo" (2 Bytes) zu Rm8= kodiert.

Ein Hinweis dazu, was Base64 nicht ist

Base64 wird oft mit Verschlüsselung verwechselt, weil die Ausgabe wie Kauderwelsch aussieht. Eine schnelle Dekodierung gibt den ursprünglichen Text preis — ohne Schlüssel. Wenn Sie Daten schützen müssen, verwenden Sie ein geeignetes Verschlüsselungsverfahren (AES, ChaCha20 usw.) und kodieren Sie die verschlüsselten Bytes dann mit Base64 für den Transport. Base64 allein bietet keine Vertraulichkeit.

Häufige Anwendungen von Base64

Base64 taucht an vielen alltäglichen Stellen im Web auf, oft ohne dass Nutzer es bemerken.

Data URIs

Moderne Browser erlauben es, Bilder, Schriftarten und andere Medien direkt in HTML oder CSS mit data:-URIs einzubetten:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...">

Die Base64-kodierten Bilddaten leben innerhalb der HTML-Datei selbst — keine separate HTTP-Anfrage nötig. Dies ist üblich für kleine Icons, Sprites und Web-Schriftarten, bei denen der zusätzliche HTTP-Roundtrip mehr kosten würde als die Inline-Bytes.

Allerdings sind Base64-Data-URIs nicht immer die beste Wahl für größere Assets. Der 33 % Größenaufwand bedeutet, dass ein 100-KB-Icon zu 133 KB Inline-Text wird, und der Browser kann es nicht separat von der HTML-Seite zwischenspeichern. Die meisten Websites verwenden Data-URIs nur für Assets unter wenigen Kilobyte.

JWT- und API-Tokens

JSON Web Tokens verwenden Base64url (die URL-sichere Variante), um Header, Payload und Signatursegmente eines Tokens zu kodieren. Wenn Sie jemals ein JWT wie dieses inspiziert haben:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8U

Jedes durch Punkte getrennte Segment ist Base64url-kodiertes JSON. Sie können jedes Segment in den Dekodierbereich dieses Tools einfügen, um seinen Inhalt zu inspizieren.

E-Mail-Anhänge (MIME)

E-Mail wurde ursprünglich für 7-Bit-ASCII entwickelt. Um binäre Anhänge (Bilder, PDFs, Tabellenkalkulationen) zu versenden, kodiert der MIME-Standard sie als Base64. Ihr E-Mail-Client dekodiert sie automatisch, wenn Sie die Nachricht öffnen.

Ein Detail, das manchmal Verwirrung stiftet: MIME-Base64 bricht Zeilen konventionell nach 76 Zeichen um. Wenn Sie Base64-Daten aus einer E-Mail-Quelle extrahieren, können sie eingebettete Zeilenumbrüche enthalten. Der Dekodierer dieses Tools verarbeitet Zeilenumbrüche automatisch — Sie können mehrzeiliges MIME-Base64 einfügen, ohne die Zeilenumbrüche vorher zu entfernen.

PEM-Zertifikate und Schlüssel

SSL/TLS-Zertifikate und private Schlüssel werden im PEM-Format verteilt, das Base64-kodierte DER-Daten zwischen Header- und Footer-Zeilen verpackt:

-----BEGIN CERTIFICATE-----
MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
...
-----END CERTIFICATE-----

PEM ist im Wesentlichen Base64 mit einer beschrifteten Hülle. Sie können den Base64-Textkörper einer PEM-Datei dekodieren, um ihren rohen DER-Inhalt zu inspizieren, allerdings wird das Ergebnis binär sein, kein lesbarer Text.

HTTP-Basisauthentifizierung

Der HTTP-Basic-Auth-Header kodiert Benutzername:Passwort als Base64:

Authorization: Basic YWRtaW46c2VjcmV0

Der String YWRtaW46c2VjcmV0 ist die Base64-Kodierung von admin:secret. Base64 ist hier ein Serialisierungsmechanismus, keine Sicherheitsmaßnahme — die Anmeldedaten sind für jeden, der den Header sieht, trivial dekodierbar.

Was ist eine .b64-Datei?

Eine .b64-Datei ist eine reine Textdatei, deren gesamter Inhalt ein Base64-String ist. Die Erweiterung .b64 ist eine Namenskonvention, die signalisiert: "Diese Datei enthält Base64-Daten" — im Gegensatz zu beliebigem Text, Quellcode oder einem Binärformat.

Sie können .b64-Dateien begegnen, wenn:

  • Sie kodierte Ausgaben von Tools wie diesem exportieren
  • Sie kryptografische Schlüssel oder Zertifikate in einem portablen Textformat speichern
  • Sie Base64-Daten zwischen Systemen mit dateibasierten Workflows austauschen

Da .b64-Dateien reiner Text sind, können Sie sie in jedem Texteditor öffnen, den Inhalt inspizieren oder den String in einen Dekodierer kopieren. Dieses Tool akzeptiert .b64-Dateien sowohl im Kodier- als auch im Dekodierbereich per Drag-and-Drop oder Dateiauswahl.

Funktionsweise

Das Tool verwendet die browserinternen Base64-Funktionen mit einer zusätzlichen Schicht für UTF-8-Sicherheit.

Kernkonvertierung

JavaScript bietet zwei native Funktionen für Base64:

  • btoa(input) — konvertiert einen String in Base64 (binär zu ASCII)
  • atob(input) — konvertiert Base64 zurück in einen String (ASCII zu binär)

Diese Funktionen arbeiten nur mit Latin-1 (ISO-8859-1)-Zeichen. Wenn Sie einen String mit chinesischen, japanischen, Emoji- oder anderen Zeichen außerhalb des Latin-1-Bereichs übergeben, wirft btoa() eine DOMException.

UTF-8-sichere Kodierung

Um alle Unicode-Texte korrekt zu verarbeiten, umhüllt das Tool die nativen Funktionen:

function encode(text, urlSafe, noPad) {
  let utf8 = encodeURIComponent(text);
  let base64 = btoa(utf8);
  if (urlSafe) base64 = base64.replace(/\+/g, '-').replace(/\//g, '_');
  if (noPad) base64 = base64.replace(/=+$/, '');
  return base64;
}

function decode(base64) {
  let restored = base64.replace(/-/g, '+').replace(/_/g, '/');
  while (restored.length % 4 !== 0) restored += '=';
  let utf8 = atob(restored);
  return decodeURIComponent(utf8);
}

encodeURIComponent konvertiert den Text in UTF-8-prozentkodierte Form, die nur ASCII-Zeichen enthält, die btoa verarbeiten kann. Der Dekodierungspfad kehrt dies in umgekehrter Reihenfolge um.

Um zu sehen, warum dies wichtig ist, versuchen Sie, das Emoji "😊" direkt mit btoa zu kodieren — es wirft einen Fehler. Mit der UTF-8-Umhüllung wird es zu J UmbKSA4bQ, das korrekt zurück zu 😊 dekodiert wird.

URL-sichere Eingabebehandlung

Die Dekodierfunktion führt immer zwei Transformationen durch, bevor sie den String an atob übergibt:

  1. Ersetzen von - durch + und _ durch / (Rückgängigmachen der URL-sicheren Kodierung)
  2. Anhängen von =-Padding, wenn die Stringlänge kein Vielfaches von 4 ist

Das bedeutet, Sie müssen auf der Dekodierseite keine Einstellung vornehmen. Ob Ihre Eingabe Standard-Base64, URL-sicheres Base64, gepaddet oder ungepaddet ist — der Dekodierer verarbeitet sie automatisch.

Ereignisablauf

Wenn Sie in ein Textfeld tippen oder etwas einfügen, feuert ein input-Event-Listener. Der Scheduler puffert schnelle Tastatureingaben (entprellt auf etwa 16 ms, um einen Frame zu treffen) und führt dann die Kodier- oder Dekodierfunktion aus. Das Ergebnis erscheint im Ausgabetextfeld beim nächsten Bildschirmaufbau.

Standard-Base64 vs. URL-sicheres Base64

Die zwei Kontrollkästchen im Kodierbereich entsprechen zwei klar definierten Varianten von Base64.

Standard-Base64 (RFC 4648 §4)

Verwendet das vollständige Alphabet: A–Z, a–z, 0–9, +, /. Dies ist die ursprüngliche Form und funktioniert überall, außer an Stellen, an denen + und / eine besondere Bedeutung haben.

URL-sicheres Base64 (RFC 4648 §5)

Ersetzt die beiden Zeichen, die in URLs Probleme verursachen:

Zeichen Standard URL-sicher
Pluszeichen + -
Schrägstrich / _

Standard-Base64 Pz4/Pj8+QA== wird zu Pz4_Pj8- QA_ in URL-sicherer Form (Anmerkung: Das Padding = ist im Beispiel ebenfalls weggelassen, obwohl URL-sicher Padding verwenden kann).

Wann welche Variante verwenden

Szenario Variante
E-Mail-Anhänge (MIME) Standard
Data URIs in HTML/CSS Standard
JSON Web Tokens (JWT) URL-sicher
URL-Query-Parameter oder Pfadsegmente URL-sicher
Dateinamen URL-sicher
API-Request/Response-Payloads, bei denen + als Leerzeichen interpretiert werden könnte URL-sicher
PEM-Zertifikate und Schlüssel Standard

Der Dekodierbereich dieses Tools erkennt automatisch, welche Variante verwendet wurde, sodass Sie jedes Format einfügen können, ohne Einstellungen ändern zu müssen.

Ein häufiges Missverständnis

Einige Entwickler glauben, URL-sicheres Base64 sei ein anderer Algorithmus. Das ist es nicht — nur zwei Zeichen im Alphabet ändern sich. Jeder Standard-Base64-Dekodierer kann angepasst werden, indem vor der Verarbeitung -+ und _/ ersetzt werden, was genau das ist, was dieses Tool auf der Dekodierseite tut.

Padding bei Base64

Das =-Zeichen am Ende eines Base64-Strings ist Padding — es ist nicht Teil der kodierten Daten.

Warum Padding existiert

Base64 verarbeitet Eingaben in 3-Byte-Gruppen. Wenn die letzte Gruppe weniger als 3 Bytes hat, fügt der Kodierer = als Padding hinzu, um die Gesamtlänge auf ein Vielfaches von 4 zu bringen. Dies wird von einigen Dekodierern vorausgesetzt und ermöglicht es, mehrere Base64-Strings ohne Mehrdeutigkeit zu verketten.

Was "Ohne Padding" bedeutet

Wenn Sie "Ohne Padding" aktivieren, entfernt der Kodierer die abschließenden =-Zeichen aus der Ausgabe. Zum Beispiel:

  • Eingabe: FoRm8= (gepaddet) → Rm8 (ungepaddet)
  • Eingabe: FooRm9v (in beiden Fällen kein Padding — exaktes Vielfaches von 3)

Viele moderne Systeme akzeptieren ungepaddetes Base64, und der Dekodierer dieses Tools verarbeitet es immer. Schalten Sie diese Option ein, wenn das Zielsystem, an das Sie die Ausgabe senden, kein Padding erfordert oder wünscht.

Interoperabilitätsmatrix

Der Dekodierbereich dieses Tools akzeptiert alle vier Kombinationen automatisch:

Eingabeformat Beispiel Dekodiert?
Gepaddet Standard Rm8= Ja
Ungepaddet Standard Rm8 Ja
Gepaddet URL-sicher Rm8= Ja
Ungepaddet URL-sicher Rm8 Ja

Es gibt keine Einstellung zum Anpassen. Der Dekodierer normalisiert die Eingabe vor der Verarbeitung.

Wann Padding erforderlich ist

Einige Systeme erfordern strikt Padding, insbesondere:

  • Data URIs: data:image/png;base64,... — der Browser-Parser erwartet korrekt gepaddetes Base64.
  • Ältere Base64-Bibliotheken: Manche Implementierungen lehnen ungepaddete Eingaben vollständig ab.

Wenn Sie unsicher sind, ob das Zielsystem Padding erfordert, lassen Sie es aktiviert (Standard). Padding zu entfernen ist nur sicher, wenn Sie sowohl den Kodierer als auch den Dekodierer kontrollieren.

Base64 im Vergleich zu anderen Kodierungsschemata

Base64 ist eines von mehreren Binär-zu-Text-Kodierungsschemata, die jeweils unterschiedliche Kompromisse bei Dichte, Alphabetgröße und Anwendungsfall bieten.

Schema Alphabetgröße Aufwand Typische Verwendung
Hex (Base16) 16 Zeichen 100 % Fingerabdrücke, Hashes, Farbcodes
Base32 32 Zeichen 60 % DNS-Einträge, TOTP-Geheimnisse, Dateifreigabe (Zbase32)
Base64 64 Zeichen 33 % Data URIs, JWT, MIME, PEM, API-Payloads
Base85 (Ascii85) 85 Zeichen 25 % Adobe PostScript, PDF, binäre Python-Pickles
Base122 122 Zeichen ≈14 % Nische — kompakte Kodierung für eingeschränkte Kanäle

Warum Base64 am beliebtesten ist

Base64 trifft den Sweet Spot für die meisten praktischen Anwendungen. Im Vergleich zu Hex — das die Eingabegröße verdoppelt — ist der 33 %-Aufwand von Base64 deutlich effizienter. Im Vergleich zu Base85 ist Base64 einfacher zu implementieren (jede Sprache hat einen eingebauten Dekodierer), und sein Alphabet vermeidet die Zitierungsprobleme, die Base85-Zeichen wie " und \ in manchen Kontexten verursachen können.

Wann etwas anderes verwenden

  • Hex: Wenn Lesbarkeit und Debugging wichtiger sind als Größe. Ein Hex-String wie 4f6f ist sofort als kodierte Daten erkennbar; b293 ist als Base64 weniger offensichtlich.
  • Base32: Wenn Groß-/Kleinschreibung keine Rolle spielen darf (z. B. beim Vorlesen am Telefon, auf Produkten aufgedruckt). Base32 verwendet nur Großbuchstaben und Ziffern.
  • Base85: Wenn jedes Byte Aufwand in einem eingeschränkten Kanal zählt und Sie beide Enden der Pipeline kontrollieren.

Für allgemeine Web-Kodierung bleibt Base64 die richtige Standardwahl. Dieses Tool folgt dieser Konvention.

Leistung und Größenüberlegungen

Base64 ist einfach und universell, aber es hat reale Kosten, die bei der Arbeit mit größeren Datenmengen relevant werden.

Der 33 %-Aufwand

Alle 3 Eingabebytes werden zu 4 Ausgabebytes, ein Verhältnis von 4:3. In der Praxis, einschließlich Padding und Zeilenumbrüchen, liegt der Aufwand bei etwa 37 % für kleine Eingaben und stabilisiert sich bei 33 % für ausreichend große Eingaben.

Eingabegröße Ungefähre Base64-Größe
1 KB 1,37 KB
10 KB 13,7 KB
100 KB 137 KB
1 MB 1,37 MB
10 MB 13,7 MB

Base64 und Komprimierung

Gzip (oder Brotli)-Komprimierung von Base64-Text ist generell ineffektiv. Base64-Ausgabe hat eine gleichmäßige Zeichenverteilung — jedes der 64 Zeichen erscheint mit etwa gleicher Häufigkeit — was die Muster eliminiert, die Komprimierungsalgorithmen ausnutzen. Ein komprimierter Base64-String ist oft nur 5–10 % kleiner als die unkomprimierte Form, verglichen mit 60–80 % Reduktion, die mit den ursprünglichen Binärdaten erreichbar ist.

Das bedeutet:

  • Nicht Base64-kodieren, bevor Sie komprimieren. Komprimieren Sie zuerst, dann kodieren Sie bei Bedarf.
  • Verlassen Sie sich nicht auf Transportkomprimierung (z. B. HTTP-Gzip), um den Base64-Aufwand auszugleichen. Sie wird es nicht tun.

Wann Base64 nicht verwenden

Base64 ist sinnvoll, wenn Sie Binärdaten in einen reine-Text-Kanal einfügen müssen. Wenn der Kanal Binärübertragung nativ unterstützt, lassen Sie Base64 weg:

  • Datei-Uploads: Verwenden Sie multipart/form-data mit rohen Binärdaten, nicht Base64 in JSON. Die Datei kommt 33 % größer beim Server an und benötigt länger zum Hochladen.
  • Datenbankspeicher: Speichern Sie Binärdaten als BYTEA (PostgreSQL), BLOB (MySQL/SQLite) oder varbinary (MSSQL) statt als Base64-Text.
  • Inter-Service-API-Aufrufe: Verwenden Sie gRPC, Thrift oder MessagePack mit binären Feldern statt Base64-kodierten JSON-Strings.

Für Text-Payloads (JWT-Payloads, HTML-Inhalte, E-Mail-Textkörper) ist der Aufwand vernachlässigbar und die Bequemlichkeit von Base64 den Trade-off wert.

Auswirkungen auf die Zwischenspeicherung

Wenn Sie eine Base64-Data-URI in HTML oder CSS einbetten, wird der kodierte Inhalt Teil der Seitenressource. Der Browser kann diese Data-URI nicht unabhängig zwischenspeichern — jede Änderung an der Seite macht sie ungültig. Eine separate Bilddatei, die über <img src="icon.png"> angefordert wird, kann mit einem weit in der Zukunft liegenden Cache-Control-Header seitenübergreifend zwischengespeichert werden. Für Assets größer als ein paar Kilobyte sind separate Dateien fast immer leistungsfähiger.

Häufige Fehler und Missverständnisse

Base64 ist einfach, aber mehrere wiederkehrende Missverständnisse verursachen echte Fehler.

Base64 ist keine Verschlüsselung

Dies ist das häufigste Missverständnis. Da Base64-Ausgabe wie zufällige Zeichen aussieht, nehmen viele Entwickler an, sie biete ein gewisses Schutzniveau. Tut sie nicht. Die Dekodierung erfordert keinen Schlüssel oder Geheimnis. Behandeln Sie jeden Base64-String als öffentlich lesbaren Text.

Wenn Sie sehen, dass ein Dienst Passwörter oder API-Schlüssel als Base64 speichert, behandeln Sie dies als Sicherheitsproblem — die Daten sind im Klartext gespeichert.

Groß-/Kleinschreibung

Das Base64-Alphabet unterscheidet zwischen Groß- und Kleinbuchstaben:

  • Großbuchstaben: A–Z (Werte 0–25)
  • Kleinbuchstaben: a–z (Werte 26–51)

Ein Tippfehler wie R vs. r ändert den dekodierten Wert vollständig. Wenn Ihre dekodierte Ausgabe falsch aussieht, überprüfen Sie die Eingabe auf Groß-/Kleinschreibungsfehler.

MIME-Zeilenumbrüche

MIME-kodierte E-Mail-Anhänge brechen den Base64-Textkörper nach jeweils 76 Zeichen um:

SGVsbG8sIHdvcmxkISBUaGlzIGlzIGEgdGVzdCBvZi BiYXNlNjQgZW5jb2Rpbmcu
VGhpcyBpcyB0aGUgc2Vjb25kIGxpbmUu

Nicht alle Base64-Dekodierer verarbeiten diese eingebetteten Zeilenumbrüche. Dieses Tool tut es — fügen Sie mehrzeiliges MIME-Base64 direkt ein, ohne Vorverarbeitung. Ein Dekodierer, der keine Zeilenumbrüche verarbeitet, produziert ein verstümmeltes Ergebnis oder einen Fehler.

Versteckte Leerzeichen

Das Kopieren von Text aus E-Mails, PDFs oder Webseiten kann unsichtbare Leerzeichen einführen (Leerzeichen, Tabulatoren, Nullbreitenzeichen, geschützte Leerzeichen). Diese sind kein gültiges Base64. Wenn ein gültig aussehender Base64-String nicht dekodiert werden kann, fügen Sie ihn zuerst in einen reinen Texteditor ein, um auf versteckte Zeichen zu prüfen, oder kopieren Sie erneut von der Quelle.

Verkettung von gepaddeten Strings

Zwei gepaddete Base64-Strings, die direkt verkettet werden, dekodieren nicht unbedingt korrekt. Das Padding = gehört zur letzten Gruppe jedes Strings, und die Verkettung kann mehrdeutige Grenzen erzeugen. Dies ist beabsichtigt — Padding verhindert Mehrdeutigkeit für einzelne Strings. Für mehrteilige Daten verarbeiten Sie jeden Teil separat.

Verwendung

Die Verwendung des Base64 Kodierers & Dekodierers erfordert keine Einrichtung, Registrierung oder Konto.

Text in Base64 kodieren

  1. Geben Sie im Bereich Base64 Kodieren Ihren Text in das Eingabetextfeld ein oder fügen Sie ihn ein.
  2. Das Ausgabefeld aktualisiert sich automatisch mit dem kodierten Ergebnis.
  3. Aktivieren Sie optional URL-sicher für die websichere Variante oder Ohne Padding, um abschließende =-Zeichen zu entfernen.
  4. Klicken Sie Kopieren, um den kodierten Text in die Zwischenablage zu kopieren, oder Base64 herunterladen, um ihn als .b64-Datei zu speichern.

Base64 in Text dekodieren

  1. Fügen Sie im Bereich Base64 Dekodieren einen Base64-String in das Eingabefeld ein.
  2. Der dekodierte Text erscheint sofort im Ausgabefeld.
  3. Wenn die Eingabe kein gültiges Base64 ist, wird stattdessen eine Fehlermeldung angezeigt.
  4. Klicken Sie Kopieren oder Herunterladen, um das dekodierte Ergebnis zu speichern.

Datei-Upload verwenden

  • Kodierbereich: Legen Sie eine .txt-Datei auf den Upload-Bereich, um ihren Inhalt zum Kodieren zu laden.
  • Dekodierbereich: Legen Sie eine .b64- oder .txt-Datei ab, um Base64-Inhalt zum Dekodieren zu laden.

Der Dateiinhalt wird gelesen, in das Eingabetextfeld gesetzt und sofort verarbeitet.

Tutorial

Szenario: Sie entwickeln eine Webanwendung, die mit einer API kommuniziert. Die API erwartet, dass der Request-Payload ein kurzes Textfeld enthält, das als URL-sicheres Base64 ohne Padding kodiert ist. Sie müssen Ihren Text kodieren, die Ausgabe überprüfen und bestätigen, dass die API sie akzeptiert. Später erhalten Sie eine Antwort von derselben API mit einem Base64-kodierten Feld, das Sie dekodieren müssen.

Dieses Tutorial führt Sie durch den gesamten Rundlauf.

Teil 1: Kodieren

  1. Öffnen Sie den Base64 Kodierer & Dekodierer in Ihrem Browser. Sie sehen zwei Bereiche nebeneinander — Kodieren links, Dekodieren rechts.

  2. Geben Sie im Kodier-Eingabefeld den folgenden Text ein:

    Hallo, API-Server. Dies ist mein Payload.
    

    Das Ausgabefeld zeigt sofort die Standard-Base64-Kodierung. Das Ergebnis beginnt mit SGFsbG8sIEFQ. Soweit gut.

  3. Die API-Spezifikation erfordert URL-sicheres Base64 ohne Padding. Aktivieren Sie beide Kontrollkästchen URL-sicher und Ohne Padding. Beobachten Sie, wie sich die Ausgabe ändert:

    • +-Zeichen (falls vorhanden) werden zu -
    • /-Zeichen werden zu _
    • Abschließende =-Zeichen verschwinden

    Bei dieser speziellen Eingabe gibt es keine +- oder /-Zeichen in der Base64-Ausgabe, daher hat das URL-sicher-Kontrollkästchen keine sichtbare Wirkung. Aber das Padding-Kontrollkästchen entfernt die abschließenden ==.

  4. Klicken Sie Kopieren, um das kodierte Ergebnis in Ihre Zwischenablage zu kopieren. Fügen Sie es in Ihren API-Request-Payload ein.

Teil 2: Dekodieren

  1. Die API antwortet mit einem JSON-Payload, der ein Base64-kodiertes Feld enthält:

    {
      "status": "ok",
      "message": "eyJzdWIiOiAiMTAwMSIsICJuYW1lIjogIkFQSSBHYXRld2F5In0="
    }
    
  2. Kopieren Sie den Wert von message und fügen Sie ihn in den Dekodier-Eingabebereich ein.

    Das Ausgabefeld zeigt sofort den dekodierten Text:

    { "sub": "1001", "name": "API Gateway" }
    
  3. Der JWT-artige JSON-Payload ist jetzt lesbar. Wenn die API URL-sicheres Base64 verwendet hätte (kein + oder / im String, oder mit - und _), würde der Dekodierer es automatisch verarbeiten — kein Kontrollkästchen zum Umschalten nötig.

Teil 3: Dateibasierter Workflow

  1. Angenommen, Sie müssen den kodierten Payload an einen Kollegen senden, der Dateien bevorzugt. Klicken Sie Base64 herunterladen im Kodierbereich. Der native Speichern-Dialog Ihres Browsers öffnet sich und schlägt download.b64 als Dateinamen vor. Speichern Sie die Datei.

  2. Ihr Kollege erhält die Datei und öffnet dasselbe Tool. Er zieht download.b64 auf den Upload-Bereich des Dekodier-Abschnitts. Der Dateiinhalt erscheint im Eingabefeld, und der dekodierte Text erscheint sofort.

Dieser Rundlauf — Kodieren mit Optionen → Kopieren oder Herunterladen → Dekodieren mit automatischer Erkennung — deckt den häufigsten realen Workflow ab. Das Tool übernimmt die gesamte Normalisierung, sodass Sie nicht über Zeichenvarianten oder Padding-Regeln nachdenken müssen.

Profi-Tipps

  • Gleichzeitig kodieren und dekodieren: Die beiden Bereiche sind unabhängig. Sie können im Kodierbereich Text eingeben und gleichzeitig einen separaten Base64-String im Dekodierbereich einfügen. Nutzen Sie dies, um Eingabe und Ausgabe beider Richtungen nebeneinander zu vergleichen.

  • URL-sicher für JWTs: Aktivieren Sie bei der Arbeit mit JWT-Tokens immer den URL-sicheren Modus. JWT-Segmente verwenden die URL-sichere Variante (RFC 7515). Wenn Sie ein JWT-Segment in den Dekodierbereich einfügen, erkennt das Tool die URL-sicheren Zeichen automatisch.

  • Leerzeichen vor dem Einfügen entfernen: Einige Quellen von Base64-Daten enthalten abschließende Zeilenumbrüche oder Leerzeichen. Der Dekodierer verarbeitet getrimmte Eingaben am besten. Wenn Sie eine "Ungültiger Base64-String"-Fehlermeldung sehen, überprüfen Sie, ob der eingefügte Text überflüssige Leerzeichen enthält.

  • Herunterladen für große Ausgaben: Verwenden Sie bei langen Base64-Strings die Herunterladen-Schaltflächen anstelle von Kopieren. Der native Speichern-Dialog ermöglicht Ihnen die Wahl des Speicherorts, und das Ergebnis wird als .b64- oder .txt-Datei gespeichert, die Sie übertragen oder archivieren können.

  • Upload als Alternative zum Tippen: Wenn Sie bereits eine Datei mit dem Text oder den Base64-Daten haben, ziehen Sie sie auf den Upload-Bereich. Dies ist schneller als die Datei zu öffnen, alles auszuwählen, zu kopieren und einzufügen — besonders bei großen Dateien.

  • Zuerst dekodieren, um das Format zu prüfen: Wenn Sie einen Base64-String erhalten und unsicher sind, ob er Text oder Binärdaten enthält, fügen Sie ihn in den Dekodierbereich ein. Wenn die Ausgabe lesbarer Text ist, sind Sie fertig. Wenn sie verstümmelte Zeichen oder Ersatzglyphen ( ) enthält, war die ursprüngliche Quelle wahrscheinlich binär (ein Bild, PDF oder ein anderes Nicht-Text-Format).

Alternativen

Es gibt mehrere andere Möglichkeiten, Base64 zu kodieren oder zu dekodieren, jede mit unterschiedlichen Kompromissen.

Tool / Methode Am besten geeignet für Einschränkungen
Toollect Base64 Kodierer & Dekodierer Echtzeit-browserbasierte Kodierung/Dekodierung, datenschutzorientiert, duale Kodier-/Dekodierbereiche Erfordert Internet für den ersten Seitenaufruf
Unix base64-Befehl Skripterstellung, Batch-Verarbeitung, Pipe-Workflows Nur Kommandozeile, keine GUI, kein URL-sicher-Umschalter
CyberChef Mehrstufige Datentransformationen (Base64 + dekomprimieren + entschlüsseln) Überdimensioniert für einfaches Kodieren/Dekodieren, schwererer Seitenaufruf
Browser-DevTools btoa()/atob() Schnelle einmalige Konvertierungen ohne Verlassen der Entwicklertools Standardmäßig keine UTF-8-Unterstützung, kein Datei-Upload, keine URL-sicher-Option
Online-Base64-Tools (serverseitig) Einmalige Verwendung, wenn clientseitige Tools nicht ausgeführt werden können Daten werden an einen Server gesendet; Datenschutzrisiko für sensible Inhalte
OpenSSL openssl base64 PEM-Zertifikatsverarbeitung, kryptografische Workflows Nur Kommandozeile, zertifikatsorientiert, nicht für gelegentliche Textnutzung

Für das Kodieren oder Dekodieren von Base64-Text mit Datenschutz, Echtzeit-Feedback und ohne Kenntnisse der Kommandozeile bietet dieses Tool die beste Benutzererfahrung.

Datenschutz

Der Base64 Kodierer & Dekodierer verarbeitet jedes Zeichen vollständig in Ihrem Browser. Kein von Ihnen eingegebener Text wird an einen Server übertragen, in einer Datenbank gespeichert oder in einem System protokolliert.

Die gesamte Konvertierung erfolgt mit JavaScripts nativen btoa()- und atob()-Funktionen im Arbeitsspeicher des Browsers. Die Seite enthält keine Analytics-Skripte, keine Tracking-Pixel und keine Drittanbieter-Einbettungen. Es werden keine Cookies, localStorage- oder sessionStorage-Einträge erstellt oder gelesen.

Nach dem ersten Seitenaufruf ist das Tool vollständig offline nutzbar. Sie können die Internetverbindung trennen und ohne Unterbrechung weiter kodieren und dekodieren. Überprüfen Sie dies, indem Sie das Tool im Flugmodus verwenden oder die Netzwerkaktivität in den Entwicklertools Ihres Browsers inspizieren — nach dem Seitenaufruf verlassen keine Anfragen Ihr Gerät.

Fehlerbehebung

Problem Wahrscheinliche Ursache Lösung
Dekodierung zeigt "Ungültiger Base64-String" Eingabe enthält Nicht-Base64-Zeichen Prüfen Sie, ob die Eingabe nur A–Z, a–z, 0–9, +, /, -, _ und = enthält. Entfernen Sie Leerzeichen oder Zeilenumbrüche.
Dekodierung produziert verstümmelten Text oder Ersatzglyphen ( ) Ursprungsdaten waren binär (Bild, PDF, ZIP), kein Text Dieses Tool dekodiert Base64 zu Text. Wenn die ursprüngliche Eingabe binär war, ist die Ausgabe nicht lesbar. Verwenden Sie einen speziellen Binär-Base64-Dekodierer oder ermitteln Sie zuerst das Format mit dem file-Befehl.
Dekodierung produziert verstümmelten Text für korrekt aussehendes Base64 Eingabe könnte MIME-umbrochen sein (Zeilenumbrüche bei 76 Zeichen) Dieses Tool verarbeitet Zeilenumbrüche automatisch. Wenn das Problem bestehen bleibt, überprüfen Sie den String in einem reinen Texteditor auf andere versteckte Leerzeichen.
btoa()-Fehler beim Einfügen bestimmter Texte Nicht-ASCII-Zeichen in der Eingabe (Chinesisch, Emoji usw.) ohne UTF-8-Umhüllung Dies wird automatisch vom Tool behandelt. Wenn Sie einen rohen JavaScript-Fehler sehen, wird die UTF-8-Umhüllung nicht angewendet. Aktualisieren Sie die Seite.
Heruntergeladene .b64-Datei hat falschen Inhalt Datei könnte in einem Editor geöffnet worden sein, der Zeilenumbrüche hinzugefügt hat .b64-Dateien sollten einen einzelnen fortlaufenden Base64-String enthalten. Wenn Ihr Editor Zeilen umbricht, ist die Datei trotzdem gültig — fügen Sie sie zurück ins Tool ein, um sie zu überprüfen.
Upload-Bereich reagiert nicht auf Drag-and-Drop Browser-Sicherheitseinschränkungen oder fehlende JavaScript-Unterstützung Drag-and-Drop erfordert JavaScript und kann durch einige Browser-Sicherheitsrichtlinien blockiert werden. Verwenden Sie als Alternative die Dateiauswahl (klicken Sie auf den Upload-Bereich).
Ausgabe unterscheidet sich von einem anderen Base64-Tool Padding- oder URL-sicher-Modus könnte abweichen Prüfen Sie, ob das andere Tool Padding entfernt oder eine andere Variante verwendet. Schalten Sie die Kontrollkästchen entsprechend. Wenn das andere Tool ein nicht-standardisiertes Alphabet verwendet, kann dieses Tool es nicht reproduzieren.
Dekodierter Text ist leer, aber kein Fehler wird angezeigt Eingabe bestand vollständig aus Padding-Zeichen (z. B. "==") Ein String, der nur aus Padding-Zeichen besteht, ist technisch gültig, dekodiert aber zu einem leeren Ergebnis. Überprüfen Sie Ihre Eingabe auf fehlende Daten.

Technische Daten

  • Kernalgorithmus: btoa() / atob() umhüllt mit encodeURIComponent / decodeURIComponent für UTF-8-Sicherheit
  • Standard: RFC 4648 §4 (Standard-Base64), RFC 4648 §5 (URL-sicheres Base64)
  • Eingabebehandlung: Automatische URL-sichere Zeichenkonvertierung (-+, _/) und Padding-Normalisierung bei der Dekodierung
  • Echtzeitverarbeitung: input-Event-Listener auf Textfeldern, entprellt auf etwa einen Frame (16 ms)
  • Datei-I/O: FileReader-API für Upload, showSaveFilePicker (File System Access API) mit <a download>-Fallback
  • Download-Formate: .b64 (kodiert), .txt (dekodiert)
  • Upload-Formate: .txt (Kodierbereich), .b64 / .txt (Dekodierbereich)

Leistungsbenchmarks

Eingabegröße Kodierzeit Dekodierzeit
1 KB < 1 ms < 1 ms
10 KB < 2 ms < 2 ms
100 KB < 10 ms < 10 ms
1 MB < 50 ms < 50 ms

Gemessen auf einem Mittelklasse-Laptop von 2020 (Chrome 120). Die Leistung skaliert linear mit der Eingabegröße. Für typische Text-Payloads unter 100 KB ist die Konvertierung praktisch augenblicklich.

Browser-Kompatibilität

Browser Mindestversion Status
Google Chrome 86+ Volle Unterstützung
Mozilla Firefox 87+ Volle Unterstützung
Apple Safari 15+ Volle Unterstützung
Microsoft Edge 86+ Volle Unterstützung
Samsung Internet 15+ Volle Unterstützung
Opera 72+ Volle Unterstützung

showSaveFilePicker erfordert Chromium-basierte Browser (Chrome, Edge, Opera, Samsung Internet). In Firefox und Safari fällt der Download automatisch auf die <a download>-Methode zurück.

Datenschutz und Sicherheit

  • Keine Datenübertragung: Die gesamte Textverarbeitung erfolgt im Arbeitsspeicher des Browsers
  • Keine Cookies, localStorage oder sessionStorage verwendet
  • Keine Analyse- oder Tracking-Skripte auf der Tool-Seite
  • Nach dem ersten Seitenaufruf vollständig offline nutzbar
  • Keine Registrierung, kein Login, keine API-Schlüssel erforderlich

Funktionen

  • Text in Base64 kodieren und Base64 zurück in Text dekodieren mit Echtzeit-Konvertierung
  • URL-sicherer Modus mit -_ statt +/ für web-freundliches Base64 (RFC 4648 §5)
  • Ohne-Padding-Option zum Entfernen abschließender Gleichheitszeichen (RFC 4648 §3.2)
  • Integrierte Erklärung des Base64-Kodierungsschemas und des .b64-Dateiformats
  • Hochladen von .txt- und .b64-Dateien mit Drag-and-Drop-Unterstützung
  • Ergebnisse als .b64- oder .txt-Dateien mit nativem Speichern-Dialog herunterladen
  • Vollständig clientseitig — keine Server-Uploads, funktioniert offline

Häufig gestellte Fragen

Was ist Base64-Kodierung?
Base64 ist ein Binär-zu-Text-Kodierungsschema, das beliebige Binärdaten in einen ASCII-String umwandelt. Dazu wird ein 64-Zeichen-Alphabet verwendet (A–Z, a–z, 0–9, +, /). Alle 3 Eingabebytes werden als 4 Base64-Zeichen kodiert. Ist die Eingabelänge kein Vielfaches von 3, werden =-Padding-Zeichen angehängt, um die Ausgabelänge auf ein Vielfaches von 4 zu bringen. Base64 ist in RFC 4648 definiert.
Wie funktioniert dieser Base64-Kodierer?
Geben Sie Text in den Kodierbereich ein, um ihn sofort in Base64 zu konvertieren. Das Tool verwendet die browserinterne Funktion btoa(), umhüllt mit UTF-8-sicherer Kodierung via encodeURIComponent, sodass Nicht-ASCII-Zeichen (Chinesisch, Japanisch, Emoji usw.) korrekt verarbeitet werden. Der Dekodierbereich kehrt den Prozess mit atob() und decodeURIComponent um.
Was ist URL-sicheres Base64?
Standard-Base64 verwendet die Zeichen + und /, die in Webkontexten URL-kodiert werden müssen (%2B und %2F). URL-sicheres Base64 (RFC 4648 §5) ersetzt + durch - und / durch _, sodass die Ausgabe ohne zusätzliche Prozentkodierung in URLs, Dateinamen und JWT-Tokens verwendet werden kann. Der Dekodierbereich dieses Tools erkennt und konvertiert URL-sichere Eingaben automatisch — Sie müssen auf der Dekodierseite keine Einstellung vornehmen.
Was bedeutet "ohne Padding"?
Standard-Base64 verwendet =-Zeichen als Padding, um sicherzustellen, dass die Ausgabelänge ein Vielfaches von 4 ist. Manche Implementierungen akzeptieren oder erzeugen Base64 ohne Padding. Wenn "Ohne Padding" aktiviert ist, werden abschließende =-Zeichen aus der kodierten Ausgabe entfernt. Die Dekodierung in diesem Tool akzeptiert sowohl gepaddete als auch ungepaddete Eingaben automatisch.
Was ist eine .b64-Datei?
Eine .b64-Datei ist eine reine Textdatei, deren Inhalt Base64-kodierte Daten sind. Die Erweiterung dient als Konvention, um Base64-Inhalte von einfachem Text oder anderen Formaten zu unterscheiden. Sie können eine .b64-Datei in jedem Texteditor öffnen — sie enthält denselben Base64-String, den Sie in der Ausgabe des Tools sehen. Dieses Tool verwendet .b64 als Standard-Downloadformat für kodierte Ausgaben.
Werden meine Daten an einen Server gesendet?
Nein. Alles läuft vollständig in Ihrem Browser. Das Tool verwendet JavaScripts integrierte btoa()- und atob()-Funktionen ohne Netzwerkanfragen. Ihr Text verlässt niemals Ihr Gerät. Sie können dies überprüfen, indem Sie das Tool nach dem ersten Seitenladen im Flugmodus verwenden.
ESC