Der JWT-Verifizierer zeigt dir, ob ein Token echt und noch akzeptabel ist: Er prüft zuerst die kryptografische Signatur und dann die Claims. Er richtet sich an Backend-Entwickler, OAuth-/OpenID-Connect-Integratoren und Security-Teams, die sicherstellen wollen, dass ein Token mit dem richtigen Schlüssel signiert wurde, bevor sie den Fehler woanders suchen. Willst du nur den Inhalt lesen, reicht der JWT-Decoder.
Eine JWS-Signatur (RFC 7515) wird über den Base64URL-String „Header.Payload“ gebildet; die Algorithmen legt RFC 7518 fest. Bei HS256, HS384 und HS512 berechnet das Tool mit dem gemeinsamen Secret erneut einen HMAC und vergleicht ihn mit der Signatur. Bei RS256/384/512 (RSASSA-PKCS1-v1_5), PS256/384/512 (RSASSA-PSS) und ES256/384/512 (ECDSA auf P-256, P-384 und P-521) prüft es die Signatur mit dem öffentlichen Schlüssel über die Web Crypto API; bei ECDSA ist die JWS-Signatur die rohe Verkettung R‖S, 64 Byte für ES256, keine DER-Struktur. Ein Token mit alg: none wird immer abgelehnt.
Den öffentlichen Schlüssel kannst du auf drei Arten angeben: als einzelnen JWK (RFC 7517), als JWKS {"keys":[…]}, aus dem das Tool den Schlüssel mit dem passenden kid aus dem Header wählt, oder als PEM „BEGIN PUBLIC KEY“ (SubjectPublicKeyInfo). Für eine produktionsnahe Prüfung wählst du einen Erwarteten Algorithmus statt des automatischen Modus: So kann das Token nicht über sein eigenes alg-Feld einen anderen unterstützten Algorithmus vorgeben. Der automatische Modus bleibt für die Analyse nützlich. Ist die Signatur gültig, prüft das Tool exp und nbf mit einer einstellbaren Uhrentoleranz (zum Beispiel 60 Sekunden, um Zeitabweichungen zwischen Servern auszugleichen) und, falls angegeben, den erwarteten Aussteller iss und die Zielgruppe aud. Das Ergebnis lautet „gültig“ oder „ungültig“ mit dem genauen Grund: falsche Signatur, kid nicht gefunden, abgelaufen, noch nicht gültig, unerwarteter Aussteller oder unerwartete Zielgruppe.