JWKS-Prüfer
JWKS Verifier
Ruft einen JWKS-Endpunkt ab, wählt den Schlüssel nach kid und prüft Signatur und Standard-Claims eines Tokens.
Verifiziert ein Token gegen das veröffentlichte JWKS eines Ausstellers – per URL abgerufen oder eingefügt –, wählt den Schlüssel anhand der `kid`, prüft die Signatur und dann `exp`, `nbf` und, wenn Sie sie angeben, `iss` und `aud`. Das Token wird nie gesendet; nur die JWKS-URL wird abgerufen.
Das Token verlässt diesen Tab nicht.
Die Signaturprüfung macht das WebCrypto des Browsers, und diese Seite hat keine Serverseite. Die einzige Netzanfrage ist ein GET auf die JWKS-URL, die Sie eintippen, und diese Anfrage trägt nichts außer der URL — das Token nicht.
Token
Ein Bearer-Präfix wird für Sie entfernt.
Öffentliche Schlüssel (JWKS)
Der Browser holt sie direkt per GET. Das Token wird nicht mitgeschickt.
Der `jwks_uri` im /.well-known/openid-configuration des Ausstellers ist diese Adresse.
Erwartete Werte (optional)
Lassen Sie eines leer, dann wird dieser Claim nicht geprüft. exp und nbf werden immer geprüft.
Was geprüft wird
- · RS256/384/512, PS256/384/512, ES256/384/512 und EdDSA (Ed25519) werden mit WebCrypto geprüft (RFC 7518 §3, RFC 8037). HS* nutzt ein gemeinsames Geheimnis und lässt sich gegen ein JWKS überhaupt nicht prüfen — das macht der JWT-Dekodierer mit dem Geheimnis. ES256K und Ed448 stecken in keinem Browser-WebCrypto.
- · Der Schlüssel wird über die
kidim Token-Header gewählt (RFC 7515 §4.1.4). Während einer Rotation liegen mehrere Schlüssel im JWKS, eine kid ohne Treffer wird also genau so gemeldet. - ·
expundnbfwerden mit der Abweichungstoleranz geprüft,issundaudnur, wenn Sie einen erwarteten Wert angeben (RFC 7519 §4.1).alg: nonewird immer abgelehnt.
So funktioniert es
Fügen Sie das Token ein
Seine `alg`, `kid` und sein Aussteller werden sofort ausgelesen, was Ihnen sagt, welches JWKS Sie brauchen.
Rufen Sie den Schlüsselsatz ab oder fügen Sie ihn ein
Die `/.well-known/openid-configuration` des Ausstellers nennt seine `jwks_uri`. Google, Microsoft und Apple haben Schnellschaltflächen; alles andere tippen Sie oder fügen Sie ein.
Tragen Sie ein, was Sie erwarten
Ein `iss` und ein `aud`, die Sie leer lassen, werden überhaupt nicht geprüft – und so wird in echten Systemen ein Token akzeptiert, das für eine andere Audience gedacht war. Die Toleranz für Uhrenabweichung deckt Server ab, die um eine Minute auseinanderliegen.
Lesen Sie das Urteil und die Claim-Tabelle
Das Banner sagt akzeptieren oder nicht akzeptieren; die Tabelle darunter sagt, welche Prüfung diese Antwort ergeben hat und welcher Schlüssel gewählt wurde.
Häufige Fragen
Der Abruf ist mit einem CORS-Fehler gescheitert.
Ein JWKS-Endpunkt muss CORS-Header senden, damit ein Browser ihn lesen kann. Google, Microsoft und Apple tun das; etliche selbst gehostete Aussteller nicht. Rufen Sie es selbst mit curl ab und fügen Sie das JSON ein – die Verifikation ist in beiden Fällen identisch.
Es sagt, kein Schlüssel passt zur kid.
Meist eine Schlüsselrotation: Das Token wurde signiert, bevor der Aussteller rotiert hat, und das JWKS enthält jetzt nur die neueren Schlüssel. Es kann auch heißen, dass das Token von einem anderen Aussteller stammt als das JWKS, das Sie abgerufen haben.
Warum wird `alg: none` immer verweigert?
Weil es zu akzeptieren die klassische JWT-Schwachstelle ist: Ein Angreifer schreibt den Header um, lässt die Signatur weg, und eine Bibliothek, die dem Header vertraut, lässt das Token durch. Es gibt keine legitime Verwendung dafür in einem Verifikationspfad.
Kann es ein HS256-Token prüfen?
Nicht hier – HS* ist ein gemeinsames Geheimnis, und ein JWKS veröffentlicht öffentliche Schlüssel. Verwenden Sie den JWT-Decoder, der ein Geheimnis annimmt. Ein Aussteller, der HMAC-Schlüssel in einem JWKS veröffentlicht, würde die Fähigkeit veröffentlichen, Tokens zu prägen.
Eingabe aus
JWT-Decoder
JWT Decoder
Dekodiert Header und Payload, zeigt den Ablauf der Claims in Ortszeit und prüft die Signatur gegen einen mitgelieferten Schlüssel – ohne Upload, komplett im Browser.
Schlüsselpaar-Generator
Key Pair Generator
Erzeugt RSA-, ECDSA- oder Ed25519-Schlüsselpaare und exportiert sie als PEM, JWK oder OpenSSH.
JSON formatieren und validieren
JSON Formatter & Validator
Formatiert, minimiert und validiert JSON und zeigt bei Syntaxfehlern die genaue Zeile und Spalte.
YAML formatieren und validieren
YAML Formatter & Validator
Rückt YAML einheitlich ein, validiert es und markiert die Tab- und Anker-Fehler, an denen Parser scheitern.
Danach
Diese Tools nehmen an, was dieses hier erzeugt, das Ergebnis kann also direkt weiter.
Zertifikat-Decoder
Certificate Decoder
Parst ein PEM- oder DER-Zertifikat oder einen CSR und zeigt Subject, SANs, Gültigkeit, Schlüsselverwendung und Kettenhinweise.
JWT-Decoder
JWT Decoder
Dekodiert Header und Payload, zeigt den Ablauf der Claims in Ortszeit und prüft die Signatur gegen einen mitgelieferten Schlüssel – ohne Upload, komplett im Browser.
Schlüsselpaar-Generator
Key Pair Generator
Erzeugt RSA-, ECDSA- oder Ed25519-Schlüsselpaare und exportiert sie als PEM, JWK oder OpenSSH.
JSON ⇄ CSV umwandeln
JSON ⇄ CSV
Flacht verschachteltes JSON zu Spalten ab oder baut Objekte aus einer Tabelle wieder auf, mit Punktpfad-Regel für die Spaltennamen.
JSON vergleichen
JSON Diff
Vergleicht zwei JSON-Dokumente strukturell, ignoriert die Schlüsselreihenfolge und meldet hinzugefügte, entfernte und geänderte Pfade.
JSON formatieren und validieren
JSON Formatter & Validator
Formatiert, minimiert und validiert JSON und zeigt bei Syntaxfehlern die genaue Zeile und Spalte.