Ingen upload, 100% lokalt, ingen konto

JWT-dekoder

Indsæt et JWT for at se dets header, payload og udløb. Ingen token sendes nogen steder. Signaturen VERIFICERES IKKE, brug kun til inspektion.

Sådan virker JWT-dekoder

JWT-dekoder opdeler et JSON Web Token i dets tre dele, header, payload og signatur, og viser headeren og payloaden som formateret JSON. Afkodningen udføres lokalt i browseren ved base64url-afkodning af hver del: dit token sendes aldrig til nogen server. Værktøjet udfører ikke signaturverifikation; det viser kun, hvad der er inde i tokenets claims.

Denne sondring er vigtig for sikkerheden: at se et afkodet JWT fortæller dig, hvilke claims det indeholder (bruger-ID, udløb, roller, scopes), men bekræfter ikke, at tokenet blev udstedt af en legitim myndighed eller ikke er blevet manipuleret. Signaturverifikation kræver udstederens offentlige nøgle eller delte hemmelighed, som du aldrig bør indsætte i et offentligt værktøj. Brug denne dekoder kun til inspektion og fejlfinding.

Sådan bruger du JWT-dekoder, trin for trin

  1. Indsæt den fulde JWT-streng (tre punkt-adskilte base64url-segmenter) i inputfeltet.
  2. Header- og payload-sektionerne vises øjeblikkeligt som formateret JSON.
  3. Kontroller »exp«-feltet i payloaden for at se udløbstidsstemplet (Unix epoch sekunder).
  4. Signatursegmentet vises som det er; dette værktøj verificerer det ikke.

Almindelige anvendelser

  • En udvikler, der fejlsøger et autentificeringsproblem, skal læse claims inde i en JWT for at bekræfte, at de korrekte scopes og roller er til stede.
  • En QA-ingeniør kontrollerer »exp«-feltet i et adgangstoken for at verificere, at udløbet er sat til den forventede varighed.
  • En sikkerhedsrevisor inspicerer en JWT fra en tredjepartstjeneste for at forstå, hvilke brugerdata den koder inden accept af den.
  • En backend-ingeniør fejlsøger en 401-fejl ved at kontrollere, om tokenets »aud«-claim (audience) matcher den forventede API-identifikator.

Ofte stillede spørgsmål

Verificerer dette værktøj JWT-signaturen?

Nej. Værktøjet base64url-afkoder kun header- og payload-segmenter for at vise deres indhold som JSON. Signaturverifikation kræver udstederens hemmelige nøgle eller offentlige nøgle, som du ikke bør indsætte her. En afkodet payload, der ser gyldig ud, kan stadig have en ugyldig signatur; valider altid signaturen på serversiden ved hjælp af et betroet JWT-bibliotek.

Sendes mit JWT-token til nogen server, når jeg indsætter det her?

Nej. Afkodningen er tre kald til atob (eller TextDecoder på de rå bytes), der kører udelukkende i browserens JavaScript-motor. Intet du indsætter her forlader din browser-fane. Dette er den eneste sikre måde at inspicere en JWT med private brugerclaims på: fuldstændig lokal, ingen netværksanmodning.

Hvad er forskellen mellem header-, payload- og signatursegmenter?

En JWT har tre base64url-kodede segmenter adskilt af punkter. Headeren identificerer den algoritme, der bruges til at signere tokenet (f.eks. HS256 eller RS256). Payloaden indeholder claims: fakta om emnet og yderligere metadata (udløb, udsteder, audience, brugerdefinerede claims). Signaturen er en kryptografisk værdi beregnet fra header og payload ved hjælp af udstederens nøgle; det er det, der giver modtageren mulighed for at verificere, at tokenet ikke er ændret.

Hvad betyder »exp« i payloaden?

»exp«-claimet er tokenets udløbstid udtrykt som et Unix-tidsstempel (heltalssekunder siden 1. januar 1970 UTC). Hvis den aktuelle tid er større end »exp«, er tokenet udløbet og bør afvises af enhver server, der validerer det. Dette værktøj viser den rå numeriske værdi; du kan konvertere den ved hjælp af tidsstempel-værktøjet på dette websted. Badgen »udløbet« eller »gyldig« sammenligner det tal med uret på din egen enhed, så en maskine med forkert indstillet ur vil også bedømme tokenet forkert. Det er en indikation, aldrig en erstatning for den server, der faktisk validerer signaturen.

Kan jeg afkode et uigennemsigtigt eller referencetoken med dette værktøj?

Nej. Uigennemsigtige tokens (undertiden kaldet referencetoken) er tilfældige strenge, der ikke indeholder brugerdata i sig selv; de skal sendes til udstederens introspektionsendpoint for at hente tilknyttede claims. Dette værktøj fungerer kun med selvbeholdte JWT'er i standardformatet med tre dele.