Datei hochladen
  1. base64hub
  2. Web- & Token-Tools
  3. Base64 in JSON

Base64 in JSON finden und dekodieren

Fügen Sie beliebiges JSON ein, und der Scanner geht jede Zeichenkette durch, sucht die heraus, die wirklich Base64 sind, und zeigt jeden dekodierten Wert neben seinem Pfad, etwa $.event.body.

Kostenlos ohne Anmeldung, ohne Limits Lokal kein Upload Verschachtelt dekodiertes JSON wird erneut durchsucht, bis zu 6 Ebenen Aktualisiert 27.10.2026
Eingabe –Ausgabe –

Wird in Ihrem Browser verarbeitet. Diese Seite kann Ihre Daten nirgendwohin senden – woher wir das wissen

So dekodieren Sie Base64-Felder in JSON

  1. Fügen Sie JSON in Eingabe · JSON ein oder legen Sie eine .json- oder .har-Datei ab.
  2. Die Tabelle listet jeden Treffer mit Pfad, Sieht aus wie, einer Sicherheitsstufe und der Vorschau Dekodiert, dazu Dekodiertes kopieren und Herunterladen.
  3. Der Ausgabebereich enthält das ganze Dokument, mit Text-, JSON- und JWT-Werten an Ort und Stelle dekodiert, bereit zum Lesen oder Vergleichen.
  4. Passen Sie Mindestlänge an (Standard 8), um kurze Zeichenketten zu überspringen, wählen Sie Verschachteltes JSON parsen ab, um bei der ersten Ebene aufzuhören, oder aktivieren Sie Unsichere Treffer anzeigen, wenn Sie nach kurzen binären Schlüsseln suchen.

Der Tab JSON in Base64 macht das Gegenteil: Er validiert JSON und kodiert es wie eingegeben, minifiziert oder formatiert, mit Optionen für URL-sicher, ohne Padding und Zeilenumbruch.

Beispiel: eine API-Antwort mit drei kodierten Feldern

{
  "event": { "body": "eyJvcmRlcklkIjo0MiwicXR5IjoyfQ==", "isBase64Encoded": true },
  "file": { "name": "README.md", "encoding": "base64",
            "content": "IyBEZW1vCgpIZWxsbyBmcm9tIHRoZSBSRUFETUUuCg==" },
  "prefs": "eyJ0aGVtZSI6ImRhcmsifQ==",
  "sha": "3b18e512dba79e4c8300dd08aeb37f8e728b8dad"
}
PfadSieht aus wieDekodiert
$.event.bodyJSON{"orderId":42,"qty":2}
$.file.contentText# Demo / Hello from the README.
$.prefsJSON{"theme":"dark"}

$.sha wird nicht aufgeführt. Eine Hex-Zeichenkette mit 40 Zeichen ist nach ihrem Alphabet allein gültiges Base64, aber sie ist ein Git-Hash, und der Scanner verwirft lange Hex-Zeichenketten absichtlich. Jedes Präfix eyJ in der Tabelle ist das Base64 von {", ein schnelles Zeichen für kodiertes JSON.

Wo sich Base64 in JSON versteckt

  • AWS API Gateway und Lambda übertragen binäre oder komprimierte Bodys in Events als body mit "isBase64Encoded": true.
  • Die Contents-API von GitHub liefert Dateien als content mit "encoding": "base64", mit \n in Zeilen umbrochen. Zeilenumbrüche werden hier ignoriert.
  • Gmail-API: Nachrichtenteile verwenden URL-sicheres Base64 in body.data. URL-sichere Eingaben (- und _) werden automatisch erkannt.
  • JWTs in Feldern wie access_token oder id_token: Header und Payload werden dekodiert. Für die Prüfung der Signatur nutzen Sie den JWT-Decoder.
  • Data-URIs wie data:image/png;base64,… in Feldern wie avatar oder logo werden mit ihrem MIME-Typ erkannt.
  • Kubernetes Secrets in JSON-Form; der Kubernetes-Secret-Decoder bietet zusätzliche, Secret-spezifische Funktionen.

So geht es in Python

Ein minimaler Walker, der Zeichenketten meldet, die sich zu UTF-8-Text dekodieren lassen:

import base64, binascii, json, sys

def walk(node, path="$"):
    if isinstance(node, dict):
        for k, v in node.items():
            yield from walk(v, f"{path}.{k}")
    elif isinstance(node, list):
        for i, v in enumerate(node):
            yield from walk(v, f"{path}[{i}]")
    elif isinstance(node, str) and len(node) >= 8:
        try:
            text = base64.b64decode(node, validate=True).decode("utf-8")
            yield path, text
        except (binascii.Error, UnicodeDecodeError):
            pass

for path, text in walk(json.load(open(sys.argv[1]))):
    print(path, "=>", text[:60])

Er übersieht URL-sichere Werte und solche ohne Padding sowie binäre Payloads wie Bilder, und genau dort steckt bei einem echten Scanner die meiste Arbeit. Details zum Dekodieren unter Base64 in Python, den Unterschied der Alphabete unter Base64 vs. Base64URL.

Grenzen

  • Die Erkennung ist eine Heuristik. Werte unter 8 Zeichen und zufällig aussehende binäre Schlüssel werden womöglich übersehen oder als unsicher markiert; senken Sie Mindestlänge und aktivieren Sie unsichere Treffer, um sie zu sehen.
  • Der Scan endet nach 200.000 Zeichenketten und zeigt bis zu 1.000 Zeilen. Das reicht für große HAR-Dateien, ohne den Tab einzufrieren.
  • Ungültiges JSON wird mit Zeile und Spalte gemeldet. Für eine einzelne Base64-Zeichenkette, die zu JSON dekodiert, nutzen Sie Base64 in JSON.

Häufige Fragen

Wie unterscheidet das Tool Base64 von gewöhnlichen Zeichenketten?

Es dekodiert jeden Kandidaten und prüft das Ergebnis: Lesbares UTF-8, gültiges JSON oder eine bekannte Dateisignatur gelten als sehr sicher. Hex-Hashes, reine Ziffernfolgen und gewöhnliche Wörter werden verworfen, und binäre Ergebnisse werden je nach Länge und Padding als wahrscheinlich oder unsicher markiert.

Kann ich Base64-Felder in einer HAR-Datei dekodieren?

Ja. Legen Sie den .har-Export aus dem Netzwerk-Panel des Browsers ab. Response-Bodys, die mit "encoding": "base64" gespeichert sind, erscheinen mit ihrem dekodierten Inhalt in der Tabelle, zusammen mit allem Base64 im JSON von Requests und Responses.

Was passiert mit binären Werten wie Bildern?

Sie werden mit dem erkannten Dateityp und einer Schaltfläche Herunterladen aufgelistet und bleiben im Ausgabebereich als Base64 stehen. Nur Text-, JSON- und JWT-Werte werden an Ort und Stelle ersetzt.