JWT-Decoder & HMAC-Signaturprüfung
JWT-Header und -Payloads dekodieren, Token-Claims prüfen und HMAC-Signaturen mit SHA-256, SHA-384 oder SHA-512 lokal verifizieren.
Funktionsweise
- Die optionale Verifizierung unterstützt nur HMAC-Algorithmen (HS256, HS384, HS512). Claims im Produktivbetrieb erst vertrauen, nachdem der Server sie verifiziert hat.
Zum reinen Dekodieren leer lassen. Nur HS256, HS384 und HS512.
- exp (Ablaufzeit)
- —
- iat (Ausgestellt am)
- —
- nbf (Gültig ab)
- —
Über das Dekodieren & Verifizieren von JWT
Was ist ein JSON Web Token?
Ein JSON Web Token (RFC 7519) ist ein kompaktes, URL-sicheres Format zur Übertragung von Claims zwischen zwei Parteien. Tokens bestehen aus drei durch Punkte getrennten, Base64URL-kodierten Teilen: Header, Payload und kryptografische Signatur.
Beim Dekodieren werden Header und Claims als lesbares JSON extrahiert. Beim Verifizieren wird die HMAC-Signatur mit einem gemeinsamen Secret neu berechnet und die Zeitstempel exp, iat und nbf werden validiert. Die Verarbeitung erfolgt lokal mit Web Crypto; Secrets und Tokens werden nie übertragen.
JWT im Code dekodieren und verifizieren
- JavaScript (Node.js)
const crypto = require("crypto"); const [header, payload, signature] = token.split("."); const expected = crypto.createHmac("sha256", secret) .update(`${header}.${payload}`) .digest("base64url"); const isValid = crypto.timingSafeEqual(Buffer.from(signature), Buffer.from(expected));- Python
import hmac, hashlib, base64 header, payload, sig = token.split(".") expected = base64.urlsafe_b64encode( hmac.new(secret.encode(), f"{header}.{payload}".encode(), hashlib.sha256).digest() ).decode().rstrip("=") is_valid = hmac.compare_digest(sig, expected)
FAQ zur JWT-Dekodierung
- Was ist der Unterschied zwischen Dekodieren und Verifizieren?
- Beim Dekodieren werden nur die Base64URL-Segmente geparst, um die JSON-Payload zu lesen. Die Echtheit wird dabei nicht geprüft. Beim Verifizieren wird durch kryptografisches Hashing mit einem geheimen Schlüssel bestätigt, dass das Token nicht manipuliert wurde.
- Welche Algorithmen unterstützt dieses Tool beim Verifizieren?
- Dieses Tool unterstützt die symmetrischen HMAC-Algorithmen HS256, HS384 und HS512. Asymmetrische Algorithmen (RS256, ES256) benötigen öffentliche/private Schlüsselpaare. Entsprechende Tokens lassen sich hier dekodieren, aber nicht lokal signieren.
- Ist es sicher, Tokens aus der Produktion einzufügen?
- Ja. ToolingO läuft zu 100% lokal im Browser. Weder Tokens noch Secrets werden protokolliert, an Server gesendet oder in Analysedaten aufgenommen.