JWT-ondertekenaar
Maak en onderteken JSON Web Tokens met HS256, HS384 of HS512. Plak een geheim, voer claims in en kopieer het resultaat.
Wat is JWT-ondertekening?
Een JSON Web Token (JWT) is een compacte, URL-veilige manier om claims tussen twee partijen te transporteren. Het bestaat uit drie Base64URL-gecodeerde delen die samengevoegd worden met punten: een header die het algoritme noemt, een payload met willekeurige JSON-claims, en een handtekening die berekend is over header.payload met een sleutel. De ontvanger berekent de handtekening opnieuw en wijst de token af als deze niet overeenkomt. JWT's zijn populair voor stateless authenticatie omdat servers geen sessies hoeven te onthouden — elk verzoek draagt zijn eigen bewijs. De keerzijde is dat je een token na uitgifte niet kunt intrekken zonder een aparte intrekkingslijst, en elk gelekt geheim of elke gelekte sleutel compromitteert elke token die ermee is ondertekend. Deze tool draait volledig op je apparaat — je geheimen, ondertekensleutels en tokens verlaten de pagina niet, gaan niet naar onze servers, en worden niet opgeslagen, geïndexeerd, gelogd of gedeeld. Die privacygarantie is belangrijk omdat een enkele toetsaanslag-lek van een JWT-ondertekengeheim elk gebruikersaccount kan compromitteren waarvoor er tokens worden uitgegeven.
Hoe gebruik je de ondertekenaar
Kies het algoritme dat past bij je omgeving, plak de header en payload (of gebruik de standaardwaarden als sjabloon) en klik op Ondertekenen. Voor RS256 en ES256 kun je een nieuw sleutelpaar op de pagina genereren; voor HS256 lever je een gedeeld geheim aan. Om te verifiëren schakel je naar verificatiemodus, plak je de token en het bijbehorende geheim of de publieke sleutel, en klik je op Verifiëren. De gedecodeerde payload verschijnt bij succes in het verdict-vak.
Best practices
Stel altijd exp (vervaltijd) in op productietokens. Accepteer nooit het algoritme dat in de header staat zonder een allowlist — de klassieke alg=none-aanval misbruikt servers die de header vertrouwen. Roteer ondertekensleutels regelmatig, bewaar private sleutels in een HSM of secrets manager, en behandel HMAC-geheimen als wachtwoorden. Voor browsers en mobiele apps geef je de voorkeur aan kortlevende JWT's gecombineerd met refresh-tokens die in HttpOnly-cookies worden opgeslagen.
Algoritme-vergelijking
| Alg | Familie | Use case |
|---|---|---|
HS256 | HMAC + SHA-256 | Interne services die één gedeeld geheim delen. Snel, simpel. |
HS384 | HMAC + SHA-384 | Interne services die één gedeeld geheim delen. Snel, simpel. |
HS512 | HMAC + SHA-512 | Interne services die één gedeeld geheim delen. Snel, simpel. |
RS256 | RSA + SHA-256 | Publieke API's die de publieke sleutel verspreiden voor verificatie. |
ES256 | ECDSA P-256 + SHA-256 | Net als RS256 maar met kortere handtekeningen en moderne elliptische krommen. |
Veelgestelde vragen
Wordt er iets naar je server verstuurd?
Wat is het verschil tussen HS256 en RS256?
Kan ik dit gebruiken voor productiesleutels?
Waarom mislukt de verificatie van mijn token?
exp) of nog-niet-geldige (nbf) token, gemanipuleerde payload, of een kopieer-en-plakactie die witruimte introduceerde.