JWT-generator

genereren JWT

bouw een JWT-token rechtstreeks in uw browser op en onderteken het. Voer de claims van de payload in (standaardwaarden als sub, aud, exp, etc., plus eventuele aanpassingen), kies een algoritme (HS256 met een gedeeld geheim of RS256/ES256 met een privé sleutel) en het hulpmiddel genereert het driedelige token. Uitstekend geschikt voor lokale ontwikkeling, loadtesting en het herhalen van authenticatieproblemen.

Hoe je een JWT genereert

  1. 1

    Schrijf de payload op.

    Standaardverzoeken (`sub`, `iss`, `aud`, `exp`, `iat`, `nbf`) plus eventuele aanpassingsverzoeken die uw app vereist.

  2. 2

    Kies de algoritme

    HS256/384/512 met een gedeelde sleutel, of RS256/ES256 met een privé-sleutel in PEM-formaat.

  3. 3

    Geef de sleutel

    De gedeelde geheime tekst voor HMAC of het privé sleutel voor RSA/ECDSA kunt u plakken; beide blijven in uw browser.

  4. 4

    Genereren

    Het resultaat is het gesigneerde token. Kopieer het, gebruik het in tests en decodeer het met de JWT-decoder voor inspectie.

Typische belading voor een geauthentificeerd gebruikers-token

{
  "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"
}

Keuze van de algoritme: HMAC versus asymmetrische algoritmen

Algoritme Type sleutel Gebruikt bij
HS256 256-bits gedeeld geheim een monoliet die zichzelf ondertekent en verifieert
HS384/512 Langere geheime duur Net zoals HS256, sterker
RS256 RSA 2048+ Ondertekeningen van de uitgever; veel diensten verifiëren met publieke sleutel
ES256 ECDSA P-256 Net zoals RS256, maar met kleinere handtekeningen
EdDSA Ed25519 De snelste asymmetrische verificatie met de kleinste sleutels

Sleutelsterkte

  • HMAC-geheimen moeten minstens even veel entropie hebben als de grootte van de uitvoer van het algoritme. HS256 vereist 256 willekeurige bits (32 bytes); minder is kwetsbaar voor brute force.
  • RSA-sleutels moeten minimaal 2048 bit hebben; voor langlevende tokens zijn 3072 of 4096 bit geschikt.
  • ECDSA (ES256) biedt een vergelijkbare beveiliging als RSA 3072, maar met veel kleinere sleutels en snellere ondertekening.

Verlopen van de geldigheidsperiode

Token-type Typische duur van exp
Toegangstoken 5–60 minuten
Vernieuwingstoken dagen tot weken
Wachtwoordherstel 5–15 minuten
E-mailverificatie 24 uur
Dienst tot dienst 1–5 minuten (kort)

Een korte vervaltijd in combinatie met een vernieuwingstoken vormt het moderne patroon. Langlevende toegangstokens zijn moeilijk in te trekken wanneer ze gecompromitteerd zijn.

Veelvoorkomende fouten

  • Een testgeheim hergebruiken in productie. De generator markeert HS256-geheimen en de gegenereerde JWT als alleen voor testdoeleinden wanneer het geheim zwak lijkt. Vertrouw op die waarschuwing.
  • Ondertekenen zonder exp. Een JWT zonder vervaldatum is voor altijd geldig. Stel altijd exp in, tenzij u een zeer goede reden heeft en over een intrekkingslijst beschikt.
  • De alg uit de header gebruiken aan de verificatiekant. Zet algoritmen aan de verificatiekant altijd op een witte lijst; volg niet wat het token vraagt.
  • Hier een echte privésleutel plakken. Deze generator werkt in uw browser, maar behandel privésleutels als geheimen: gebruik testsleutels in plaats van productiesleutels.

Veelgestelde vragen

Nee. Het ondertekenen vindt plaats in uw browser met behulp van de Web Crypto API. De sleutels verlaten nooit uw apparaat. Voor productiesleutels dient u ze echter te genereren en te ondertekenen in een gecontroleerde omgeving, niet in een browser.

HS256 is geschikt voor een monoliet waarbij dezelfde dienst de handtekening opmaakt en verifieert. RS256 of ES256 is beter wanneer de uitgever gescheiden is van de verificator; openbare sleutels kunnen dan worden gedeeld zonder dat de signatuursleutel wordt blootgesteld.

De duur van toegangs tokens bedraagt typisch tussen de 5 en 15 minuten. Gebruik een vernieuwingstoken met een langere levensduur voor een soepele gebruikerservaring. Geef nooit JWT’s uit zonder een claim met exp.

Het hulpmiddel stelt alg: none vrij voor doelgericht testen van gebroken of ongesloten tokens, met een duidelijke waarschuwing. Gebruik dergelijke tokens nooit in productiecode.

Gerelateerde tools

Tool beschikbaar in andere talen