decodificare | ispezionare | verificare

> decodificare | ispezionare | verificare <

// Decodifica e ispeziona i JSON Web Token (JWT) istantaneamente

[SICURO]

Elaborazione Locale

Decodifica JWT 100% lato client. I tuoi token non lasciano mai il tuo browser.

[ISTANTANEO]

Auto-Decodifica

Decodifica automaticamente i token JWT quando incolli o digiti.

[GRATUITO]

Ispezione Completa del Token

Visualizza intestazione, payload e firma. Verifica algoritmo e scadenza.

// SULLA DECODIFICA JWT

Struttura JWT:

Un JSON Web Token (JWT) è composto da tre parti codificate in Base64URL separate da punti: intestazione.payload.firma. L'intestazione specifica l'algoritmo e il tipo di token. Il payload contiene le claim (dati). La firma verifica l'integrità del token.

Esempio:

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

Casi d'Uso Comuni:

  • >Debug dei token di autenticazione nelle applicazioni web
  • >Ispezione dei token OAuth 2.0 e OpenID Connect
  • >Verifica della scadenza e delle claim dei token
  • >Comprensione della struttura JWT secondo RFC 7519
  • >Verifica dell'integrità della codifica Base64URL

>> domande frequenti

D: Cos'è un JSON Web Token (JWT)?

R: JWT (JSON Web Token) è uno standard aperto (RFC 7519) per la trasmissione sicura di informazioni tra parti come oggetto JSON. È compatto, sicuro per gli URL e comunemente usato per l'autenticazione.

D: Quali sono le tre parti di un JWT?

R: Un JWT è composto da tre parti separate da punti: l'Intestazione (algoritmo e tipo), il Payload (claim e dati) e la Firma (hash di verifica). Ogni parte è codificata in Base64URL.

D: Un JWT può essere decodificato senza la chiave segreta?

R: Sì, l'intestazione e il payload di un JWT possono essere decodificati da chiunque poiché sono semplicemente codificati in Base64URL (non crittografati). La chiave segreta è necessaria solo per verificare la firma.

D: Qual è la differenza tra JWT e autenticazione basata su sessione?

R: Le sessioni memorizzano lo stato sul server con un cookie di ID sessione. I JWT sono stateless — il token stesso contiene tutte le informazioni necessarie.

D: Come funziona la scadenza JWT?

R: La claim exp nel payload JWT specifica il tempo di scadenza come timestamp Unix. Dopo questo tempo, il token deve essere considerato non valido.

// Algoritmi di firma JWT comuni

Il valore alg dell’intestazione definisce come viene firmato il token. HS* usa un segreto condiviso; RS*, PS*, ES* ed EdDSA usano coppie di chiavi.

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

// Verificare un JWT nel codice

Decodificare non verifica nulla. In fase di verifica indica sempre esplicitamente gli algoritmi consentiti.

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)

>> Altre domande

D: Cosa significano i claim standard iss, sub, aud, exp, nbf, iat e jti?

R: iss è l’emittente, sub il soggetto (di solito l’ID utente), aud il destinatario previsto, exp la scadenza, nbf l’inizio di validità, iat il momento di emissione e jti un identificatore univoco del token. Le date sono in secondi Unix.

D: Un JWT è cifrato?

R: Un normale JWT firmato (JWS) non è cifrato, è solo codificato in Base64URL: chiunque può leggerne il contenuto. La firma protegge solo dalla manomissione. Non inserirvi dati sensibili oppure usa un JWE cifrato.

D: Come verifico la firma di un JWT?

R: Serve la chiave: il segreto condiviso per HS256 o la chiave pubblica per RS256/ES256. Il server ricalcola la firma su Intestazione.Payload e la confronta. Questo decodificatore funziona nel browser e non verifica la firma al posto tuo: usa una libreria affidabile.

D: Quali sono gli errori di sicurezza comuni con i JWT?

R: Frequenti: fidarsi del valore alg del token stesso (soprattutto none), segreti HS256 deboli, mancato controllo di exp, iss e aud, dati sensibili nel payload e token di lunga durata salvati in localStorage.

// ALTRE LINGUE