decoderen | inspecteren | verifiëren

> decoderen | inspecteren | verifiëren <

// Decodeer en inspecteer JSON Web Tokens (JWT) direct

[VEILIG]

Lokale Verwerking

100% client-side JWT decodering. Uw tokens verlaten nooit uw browser.

[DIRECT]

Auto-Decodering

Decodeer JWT tokens automatisch bij plakken of typen.

[GRATIS]

Volledige Token Inspectie

Bekijk header, payload en handtekening. Controleer algoritme en vervaldatum.

// OVER JWT DECODERING

JWT Structuur:

Een JSON Web Token (JWT) bestaat uit drie Base64URL-gecodeerde delen gescheiden door punten: header.payload.handtekening. De header specificeert het algoritme en tokentype. De payload bevat claims (gegevens). De handtekening verifieert de integriteit van het token.

Voorbeeld:

eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0In0.signature → {"alg":"HS256"} + {"sub":"1234"}

Veelvoorkomende Toepassingen:

  • >Debuggen van authenticatietokens in webapplicaties
  • >Inspectie van OAuth 2.0 en OpenID Connect tokens
  • >Verificatie van tokenvervaldatum en claims
  • >Begrip van JWT structuur volgens RFC 7519
  • >Controle van Base64URL coderingsintegriteit

>> veelgestelde vragen

V: Wat is een JSON Web Token (JWT)?

A: JWT (JSON Web Token) is een open standaard (RFC 7519) voor het veilig verzenden van informatie tussen partijen als een JSON-object. Het is compact, URL-veilig en wordt veel gebruikt voor authenticatie.

V: Wat zijn de drie delen van een JWT?

A: Een JWT bestaat uit drie delen gescheiden door punten: de Header (algoritme en type), de Payload (claims en gegevens) en de Handtekening (verificatiehash). Elk deel is Base64URL-gecodeerd.

V: Kan een JWT worden gedecodeerd zonder de geheime sleutel?

A: Ja, de header en payload van een JWT kunnen door iedereen worden gedecodeerd omdat ze eenvoudig Base64URL-gecodeerd (niet versleuteld) zijn. De geheime sleutel is alleen nodig om de handtekening te verifiëren.

V: Wat is het verschil tussen JWT en sessie-gebaseerde authenticatie?

A: Sessies slaan de status op de server op met een sessie-ID cookie. JWTs zijn stateless — het token zelf bevat alle benodigde informatie.

V: Hoe werkt JWT vervaldatum?

A: De exp claim in de JWT payload specificeert de vervaltijd als een Unix timestamp. Na deze tijd moet het token als ongeldig worden beschouwd.

// Veelgebruikte JWT-ondertekeningsalgoritmen

De alg-waarde in de header bepaalt hoe de handtekening wordt gemaakt. HS* gebruikt een gedeeld geheim; RS*, PS*, ES* en EdDSA gebruiken sleutelparen.

algAlgoritme
HS256HMAC + SHA-256
HS512HMAC + SHA-512
RS256RSA PKCS#1 v1.5 + SHA-256
PS256RSASSA-PSS + SHA-256
ES256ECDSA P-256 + SHA-256
EdDSAEd25519

// Een JWT verifiëren in code

Decoderen controleert niets. Geef bij het verifiëren altijd expliciet de toegestane algoritmen op.

Node.js (jsonwebtoken)   jwt.verify(token, secret, { algorithms: ['HS256'] })
Python (PyJWT)           jwt.decode(token, key, algorithms=["HS256"])
PHP (firebase/php-jwt)   JWT::decode($token, new Key($key, 'HS256'))
Go (golang-jwt)          jwt.Parse(token, keyFunc, jwt.WithValidMethods([]string{"HS256"}))
Java (jjwt)              Jwts.parser().verifyWith(key).build().parseSignedClaims(token)

>> Meer vragen

V: Wat betekenen de standaard-claims iss, sub, aud, exp, nbf, iat en jti?

A: iss is de uitgever, sub het onderwerp (meestal de gebruikers-id), aud de beoogde ontvanger, exp de vervaltijd, nbf het begin van de geldigheid, iat het uitgiftemoment en jti een unieke token-id. Tijden zijn Unix-seconden.

V: Is een JWT versleuteld?

A: Een gewone ondertekende JWT (JWS) is niet versleuteld, alleen Base64URL-gecodeerd: iedereen kan de inhoud lezen. De handtekening beschermt alleen tegen manipulatie. Zet er geen gevoelige gegevens in of gebruik een versleutelde JWE.

V: Hoe verifieer ik de handtekening van een JWT?

A: Je hebt de sleutel nodig: het gedeelde geheim bij HS256 of de publieke sleutel bij RS256/ES256. De server berekent de handtekening over Header.Payload opnieuw en vergelijkt die. Deze decoder werkt in de browser en verifieert de handtekening niet voor je: gebruik een beproefde bibliotheek.

V: Wat zijn veelgemaakte beveiligingsfouten met JWT?

A: Vaak: de alg-waarde uit het token zelf vertrouwen (vooral none), zwakke HS256-geheimen, exp, iss en aud niet controleren, gevoelige gegevens in de payload en langlevende tokens in localStorage bewaren.

// ANDERE TALEN