Kostenloser Base64-Decoder Online

Base64-kodierte Zeichenfolgen zurück in Originaltext oder Daten dekodieren.

0 Zeichen

Was ist Base64-Dekodierung?

Base64-Dekodierung ist der umgekehrte Prozess der Base64-Kodierung. Sie wandelt Base64-kodierten ASCII-Text zurück in sein ursprüngliches Binär- oder Textformat um. Dieses Dekodierungstool hilft Ihnen, Base64-Strings schnell zu dekodieren, ohne Programmierkenntnisse zu benötigen.

Häufige Anwendungen der Base64-Dekodierung

  • JWT-Token-Inspektion: JSON Web Tokens (JWT) bestehen aus drei Base64URL-kodierten Abschnitten, getrennt durch Punkte: header.payload.signature. Das Dekodieren des Headers offenbart den Token-Typ und Signaturalgorithmus (HS256, RS256, etc.). Das Dekodieren der Payload zeigt Claims wie Benutzer-ID (sub), Ablaufzeit (exp), Aussteller (iss) und benutzerdefinierte Daten. Dies ist von unschätzbarem Wert für das Debugging von Authentifizierungsproblemen, die Überprüfung von Token-Inhalten während der Entwicklung und das Verständnis, welche Informationen Ihre Anwendung in Tokens speichert.
  • API-Antwortverarbeitung: Viele REST-APIs geben Binärdaten (Bilder, PDFs, verschlüsselte Payloads) als Base64-Strings innerhalb von JSON-Antworten zurück. Da JSON ein Textformat ist, müssen Binärdaten kodiert werden. Beim Konsumieren dieser APIs müssen Sie den Base64-String dekodieren, um die tatsächliche Datei oder Daten zu erhalten. Beispiele umfassen Bildgenerierungs-APIs, Dokumentkonvertierungsdienste und verschlüsselte Datenübertragungsendpunkte.
  • Daten-URI-Inhalte extrahieren: Daten-URIs in HTML/CSS (z.B. data:image/png;base64,iVBORw0KG...) betten Dateien direkt in Code mit Base64 ein. Um die tatsächliche Datei aus einem Daten-URI zu extrahieren, dekodieren Sie den Base64-Teil. Dies ist nützlich beim Scraping von Webseiten, der Analyse von HTML-E-Mails oder der Konvertierung eingebetteter Bilder zurück in eigenständige Dateien zur Optimierung oder Modifikation.
  • E-Mail-Anhang-Dekodierung: MIME-kodierte E-Mails verwenden Base64 für Anhänge. E-Mail-Clients dekodieren diese automatisch, aber wenn Sie E-Mail-Verarbeitungsskripte schreiben, einen benutzerdefinierten E-Mail-Client erstellen oder rohen E-Mail-Quellcode analysieren (.eml-Dateien anzeigen), müssen Sie Base64-Abschnitte manuell dekodieren, um auf die tatsächlichen Anhangsdateien zuzugreifen.

Wie funktioniert Base64-Dekodierung?

Base64-Dekodierung kehrt den Kodierungsprozess um und konvertiert 4-Zeichen-Base64-Gruppen zurück in 3 Bytes Binärdaten. Der Dekoder ordnet jedes Zeichen seinem 6-Bit-Wert zu, setzt 24-Bit-Blöcke zusammen und teilt sie in die ursprünglichen 8-Bit-Bytes. Hier ist der technische Prozess:

  • Schritt 1 - Zeichen zu Werten zuordnen: Jedes Base64-Zeichen wird mithilfe des Base64-Alphabets in seinen 6-Bit-Wert umgewandelt (A=0, B=1, ..., Z=25, a=26, ..., z=51, 0=52, ..., 9=61, +=62, /=63).
  • Schritt 2 - 6-Bit-Gruppen verketten: Jeweils vier 6-Bit-Werte (insgesamt 24 Bit) werden zu einem einzigen 24-Bit-Block verkettet.
  • Schritt 3 - In Bytes aufteilen: Jeder 24-Bit-Block wird in drei 8-Bit-Bytes aufgeteilt, wodurch die ursprünglichen Binärdaten entstehen.
  • Schritt 4 - Padding behandeln: Nachfolgende =-Zeichen zeigen fehlende Bytes an. Ein = bedeutet, dass der letzte Block 2 Bytes erzeugt; zwei = bedeutet, dass er 1 Byte erzeugt.

Beispiel: Der Base64-String "Y2F0" dekodiert zu "cat". Y(24) 2(54) F(5) 0(52) werden zu 6-Bit-Werten 011000 110110 000101 110100, die zu 24 Bits verkettet und in Bytes aufgeteilt werden: 01100011(99=c) 01100001(97=a) 01110100(116=t).

Den Dekodierungsprozess verstehen

Base64-Dekodierung kehrt die mathematische Transformation um, die die Kodierung durchführt. Während die Kodierung jeweils 3 Bytes in 4 Zeichen umwandelt, nimmt die Dekodierung jeweils 4 Base64-Zeichen und wandelt sie zurück in 3 Bytes um. Der Dekoder interpretiert jedes Zeichen gemäß dem Base64-Alphabet (A-Z = 0-25, a-z = 26-51, 0-9 = 52-61, + = 62, / = 63), wandelt sie in 6-Bit-Werte um, verkettet sie zu 24-Bit-Blöcken und teilt diese zurück in die ursprünglichen 8-Bit-Bytes. Padding-Zeichen (=) zeigen an, dass die ursprüngliche Datenlänge kein Vielfaches von 3 war, wodurch der Dekoder die Ausgabe korrekt abschneiden kann.

Sicherheitsaspekte bei der Dekodierung

Base64-Dekodierung ist umkehrbar und bietet keine Sicherheit. Jeder kann Base64-Strings dekodieren. Behandeln Sie dekodierte Inhalte als nicht vertrauenswürdig, sofern sie nicht verifiziert sind. Erfahren Sie mehr über Kodierungssicherheit

Base64-Dekodierung in Programmiersprachen

Die meisten Programmiersprachen bieten integrierte Funktionen für Base64-Dekodierung. Hier sind Beispiele mit ordnungsgemäßer Fehlerbehandlung:

// Einfache Dekodierung
$decoded = base64_decode($encoded);

// Dekodierung mit Strict-Modus (validiert Eingabe)
$decoded = base64_decode($encoded, true);
if ($decoded === false) {
    // Ungültiger Base64-String
    throw new Exception("Ungültiges Base64");
}

// Dekodierung zu UTF-8-String
$text = base64_decode($encoded, true);
if (!mb_check_encoding($text, 'UTF-8')) {
    // Kein gültiges UTF-8
}
// Browser (atob nur für ASCII)
try {
    const decoded = atob(encoded);
} catch (e) {
    console.error("Ungültiges Base64:", e);
}

// Browser mit UTF-8-Unterstützung
function base64Decode(str) {
    try {
        return decodeURIComponent(escape(atob(str)));
    } catch (e) {
        throw new Error("Ungültiges Base64 oder UTF-8");
    }
}
import base64

# Dekodieren zu Bytes
try:
    decoded_bytes = base64.b64decode(encoded)
    decoded_text = decoded_bytes.decode('utf-8')
except Exception as e:
    print(f"Dekodierung fehlgeschlagen: {e}")

# Base64 vor Dekodierung validieren
try:
    decoded = base64.b64decode(encoded, validate=True)
except base64.binascii.Error:
    print("Ungültiger Base64-String")
import (
    "encoding/base64"
    "fmt"
)

// Standard-Base64-Dekodierung
decoded, err := base64.StdEncoding.DecodeString(encoded)
if err != nil {
    fmt.Println("Dekodierungsfehler:", err)
    return
}

// URL-sichere Base64-Dekodierung (für JWT)
decoded, err := base64.URLEncoding.DecodeString(encoded)
if err != nil {
    fmt.Println("Dekodierungsfehler:", err)
}
import java.util.Base64;
import java.nio.charset.StandardCharsets;

// Einfache Dekodierung
try {
    byte[] decodedBytes = Base64.getDecoder().decode(encoded);
    String decoded = new String(decodedBytes, StandardCharsets.UTF_8);
} catch (IllegalArgumentException e) {
    System.err.println("Ungültiges Base64: " + e.getMessage());
}

// URL-sichere Dekodierung
byte[] decoded = Base64.getUrlDecoder().decode(encoded);
require 'base64'

# Einfache Dekodierung
begin
  decoded = Base64.decode64(encoded)
rescue ArgumentError => e
  puts "Ungültiges Base64: #{e.message}"
end

# Strikte Dekodierung (validiert Eingabe)
decoded = Base64.strict_decode64(encoded)

# URL-sichere Dekodierung
decoded = Base64.urlsafe_decode64(encoded)
using System;
using System.Text;

// Einfache Dekodierung
try
{
    byte[] bytes = Convert.FromBase64String(encoded);
    string decoded = Encoding.UTF8.GetString(bytes);
}
catch (FormatException ex)
{
    Console.WriteLine($"Ungültiges Base64: {ex.Message}");
}

Verwandte Tools

Müssen Sie Daten in Base64 kodieren? Verwenden Sie unseren Base64-Encoder, um Text oder Binärdaten in das Base64-Format zu konvertieren.

JWT-Tokens dekodieren? Unser JWT-Decoder dekodiert automatisch alle drei Abschnitte und zeigt Claims in einem lesbaren Format an.

Arbeiten Sie mit URL-kodierten Daten? Probieren Sie unseren URL-Decoder aus, um prozentkodierte Strings zu dekodieren.