JWT-generator

Generera JWT

Bygg och underteckna en JWT direkt i din webbläsare. Angiv payload-anspråken (standardvärdena sub, aud, exp osv. samt eventuella anpassade värden), välj algoritman (HS256 med delad hemlighet eller RS256/ES256 med privat nyckel) – verktyget genererar då den trekomponentiga tokenen. Användbart för lokal utveckling, belastningstestning och återgivande av autentiseringsproblem.

Sätt att generera en JWT

  1. 1

    Skriv lasten

    Standardansökningar (`sub`, `iss`, `aud`, `exp`, `iat`, `nbf`) samt eventuella anpassade ansökningar som din app kräver.

  2. 2

    Välj algoritmen

    HS256/384/512 med ett delat hemligt nyckel, eller RS256/ES256 med en privat nyckel i PEM-format.

  3. 3

    Ge nyckeln

    Del en sekretessmeddelande för HMAC eller klistra in den privata nyckeln för RSA/ECDSA. Båda förblir i din webbläsare.

  4. 4

    Genom

    Utdata är den signerade tokenen. Kopiera den, använd den i tester och avkoda den med JWT Decoder för att analysera den.

Typisk last för en autentifierad användartoken

{
  "iss": "https://auth.example.com",
  "aud": "api.example.com",
  "sub": "user_12345",
  "iat": 1713398400,
  "nbf": 1713398400,
  "exp": 1713402000,
  "jti": "3c7c7e14-2de4-41f0-bf09-1eb5cfad4c01",
  "scope": "read:profile write:posts"
}

Algoritmval: HMAC mot asymmetrisk

Algoritm Nyckeltyp Används vid
HS256 256-bitars delad hemlighet En monolitisk enhet som själv signerar och verifierar sig
HS384/512 Längre hemlighet Samma som HS256, starkare
RS256 RSA 2048+ Utgivarens signaturer; många tjänster verifierar med offentlig nyckel
ES256 ECDSA P-256 Samma som RS256 men med mindre signaturer
EdDSA Ed25519 Den snabbaste asymmetriska verifieringen med minsta nycklar

Nyckelstyrka

  • HMAC-sekreten måste ha minst lika mycket entropi som algoritmens utdatastorlek. HS256 kräver 256 slumpmässiga bitar (32 byte); mindre mängder kan utsättas för brute-force-analys.
  • RSA-nycklar bör vara minst 2048 bitar; 3072 eller 4096 bitar för långlivade token.
  • ECDSA (ES256) erbjuder jämförbar säkerhet som RSA 3072, men med mycket mindre nycklar och snabbare signering.

Riktlinjer för giltighetstid

Token-type Typisk exp-tidslängd
Åtkomsttoken 5–60 minuter
Förnyelsetoken Dagar till veckor
Återställa lösenord 5–15 minuter
E-postverifiering 24 timmar
Service till service 1–5 minuter (kort)

En kortlivad expirerande och förnybar token är det moderna mönstret. Långlevande åtkomsttoken är svåra att återkalla när de har komprometterats.

Vanliga misstag

  • Att återanvända ett testhemligt i produktionen. Generatoren markerar HS256-hemliga sekret och den genererade JWT-signaturen som endast för testning om hemligheten verkar svag. Lita på varningen.
  • Signering utan exp: En JWT utan löptid är giltig för alltid. Sätt alltid exp, om inte du har ett starkt skäl och en list över inaktiverade JWT:er.
  • Använd alg från huvudfältet på verifieraren. Sätt alltid algoritmer på vitlista på verifieringssidan; följ inte vad tokenet kräver.
  • Använd en riktig privat nyckel här. Denna generator körs i din webbläsare, men behandla privata nycklar som hemliga uppgifter: använd testnycklar istället för produktionsnycklar.

Vanliga frågor

Nej. Underskrift utförs i din webbläsare med hjälp av Web Crypto API. Nycklarna lämnar aldrig din dator. För produktionsnycklar bör du emellertid generera och underskriva dem i en kontrollerad miljö – inte i en webbläsare.

HS256 är lämplig för en monolit där samma tjänst utför undertecknande och verifiering. RS256 eller ES256 är bättre när utfärdaren är separerad från verifieraren – offentliga nycklar kan delas utan att underteckningsnyckeln måste avslöjas.

Tiden för åtkomsttoken är vanligtvis kort, mellan 5 och 15 minuter. Använd ett förnyelsetoken med längre livtid för en smidig användarupplevelse. Undvik att utfärda JWT:er utan ett exp-krav.

Verktyget möjliggör utskick av alg: none för avsiktlig testning av defekta eller osignerade token, med en tydlig varning. Acceptera aldrig sådana token i produktionskod.

Relaterade verktyg

Verktyget finns på andra språk