JWT lesen

Liest ein Token, prüft die Signatur oder signiert ein Test-Token im Browser. HMAC, RSA und ECDSA. Das Token wird nicht hochgeladen. Eine JWKS-Adresse wird nur geholt, wenn Sie danach fragen.

Token

Header Payload Signatur

JWKS-Adresse

Mit JWKS prüfen holt nur die Schlüssel von dieser Adresse, in diesem Browser. Das Token bleibt auf der Seite. Die Adresse muss Browser-Anfragen erlauben.

Sicherheitsprüfung

    Signatur

    Token lesen, prüfen oder ein Test-Token signieren

    Ein JWT hat drei Base64url-Teile: Header, Payload, Signatur. Header und Payload sind JSON und nicht verschlüsselt. Wer das Token hat, kann sie lesen. Die Signatur zeigt, dass die Payload nicht geändert wurde, wenn Sie das HMAC-Geheimnis oder den öffentlichen Schlüssel haben. Diese Seite liest, prüft und erzeugt im Browser. Sie markiert alg none, ein fehlendes oder fälliges exp, eine Zeit in Millisekunden und ein HMAC-Geheimnis unter 32 Bytes. Das Token wird nicht hochgeladen. Eine Prüfsumme auf der Hash-Seite ist keine JWT-Signatur. exp ist Unix-Zeit in Sekunden; andere Zonen stehen auf der Seite Unix-Zeit.

    So gehen Sie vor

    1. Das Token steht links. Rechts sind Header und Payload zwei Reiter. Wenn Beim Tippen aktualisieren an ist, füllen sich beide Felder. Die Zeiten unter der Payload sind die Ortszeit dieses Computers. Es gibt keinen Spielraum: exp jetzt oder früher gilt als abgelaufen.
    2. Beispiel anzeigen setzt ein HS256-Token mit der Payload {"sub":"user-1"} und das HMAC-Geheimnis auf secret. Geheimnis ist Base64 bleibt aus. Prüfen meldet, dass die Signatur passt. Die Sicherheitsprüfung sagt, das Geheimnis habe 6 Bytes und es gebe kein exp. Das Beispiel ist absichtlich kurz.
    3. Prüfen liest das Token-Feld, nicht ungespeicherte Änderungen in Header oder Payload. HS256, HS384 und HS512 nutzen das HMAC-Geheimnis. RS, PS und ES nutzen das Schlüsselpaar unter Algorithmus: der öffentliche Schlüssel prüft, der private signiert. Schlüssel erzeugen füllt beide. JWT erzeugen baut aus diesen beiden Feldern ein neues Token. Das Menü Algorithmus gilt vor dem alg im Header.
    4. Ablauf steht anfangs auf Angaben behalten, deshalb lässt JWT erzeugen iat und exp stehen. Wählen Sie 1 Stunde, schreibt JWT erzeugen beide als Sekunden ab jetzt. Die Vorlage Benutzer füllt sub 1234567890, name John Doe und email [email protected]. Zugriff füllt sub user-1 und scope read.
    5. Kopieren unter dem Token kopiert das Token. Kopieren an Header oder Payload kopiert dieses Feld. Mit JWKS prüfen liest die JWKS-Adresse in diesem Browser und lädt nur Schlüssel. Das Token wird nicht gesendet. Alles löschen leert Token, beide JSON-Felder, Geheimnis, Schlüssel und Adresse.

    Was geprüft wird

    HS256, HS384 und HS512 nutzen das Geheimnis. Unter 32 Bytes wird trotzdem signiert, die Sicherheitsprüfung warnt. Geheimnis ist Base64 nur ankreuzen, wenn das Geheimnis Base64 ist. RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384 und ES512 nutzen PEM oder ein JWK. Ein öffentlicher Schlüssel prüft. Ein privater PKCS#8-Schlüssel erzeugt. Ein privater RSA-Schlüssel kann auch prüfen, weil die öffentliche Hälfte darin steckt. Erlaubt sind SPKI (BEGIN PUBLIC KEY), PKCS#8 (BEGIN PRIVATE KEY) und PKCS#1-RSA. Ein Zertifikat wird abgelehnt. Ein EC-Schlüssel mit BEGIN EC PRIVATE KEY auch; exportieren Sie PKCS#8. alg none gilt nie als gültig. Prüfen folgt dem alg im Header. Das HMAC-Geheimnis wird nicht benutzt, um RSA zu prüfen. exp, nbf und iat sind Sekunden. Eine 13-stellige Zahl wird markiert, nicht umgerechnet. JWKS ist ein Schlüsselsatz oder ein einzelnes JWK. Mehrere Schlüssel ohne kid sind ein Fehler. Ein Array in Header oder Payload stoppt JWT erzeugen.

    Wofür Sie es brauchen

    • sub und exp in einem Token lesen, das Sie schon haben.
    • Ein lokales HS256 für einen Server signieren, dessen Geheimnis Sie selbst gesetzt haben.
    • Ein RS256 mit dem öffentlichen PEM prüfen, oder mit einer JWKS-Adresse, die Browser erlaubt.
    • Ein kurzes Test-Geheimnis sehen, bevor es in eine Konfiguration wandert.

    Fragen

    Ist die Payload verschlüsselt?

    Nein. Sie ist Base64url. Kein Passwort, keine Ausweisnummer, keine Kartennummer hineinlegen.

    Warum schlägt Prüfen fehl?

    Das Token braucht zwei Punkte und zwei JSON-Teile. Das alg im Header muss eines sein, das diese Seite kennt. HS braucht dasselbe Geheimnis wie beim Signieren, und Geheimnis ist Base64 muss zur Speicherung passen. RSA und EC brauchen den öffentlichen Schlüssel, kein Zertifikat. Ein vergangenes exp ist eine Warnung in der Sicherheitsprüfung, keine falsche Signatur.

    HS256 oder RS256?

    HS256 ist ein gemeinsames Geheimnis. RS256 signiert mit dem privaten Schlüssel und prüft mit dem öffentlichen. Geben Sie das HMAC-Geheimnis nicht an einen anderen Dienst. Geben Sie den öffentlichen Schlüssel.

    Was ist alg none?

    Der Header sagt, es gibt keine Signatur. Diese Seite nennt das Token nicht gültig.

    Kann diese Seite ein durchgesickertes Token widerrufen?

    Nein. Kürzen Sie exp auf dem Server, der die Token ausstellt, oder führen Sie dort eine Sperrliste.

    Darf ich ein Token hier einfügen?

    Die Prüfung bleibt im Browser. Mit JWKS prüfen ist die einzige Anfrage, und sie lädt Schlüssel, nicht Ihr Token. Fügen Sie trotzdem kein gültiges Produktions-Token auf einem gemeinsam genutzten Rechner ein. Liegt die Uhr um Stunden daneben, ist die Zahl UTC, und die Zeile unter der Payload ist die Uhr dieses Computers.