Decodificatore JWT

Guarda cosa contiene un JSON Web Token.

Incolla un token per decodificarlo.
Intestazione
Payload
Firma

Questo strumento decodifica i token ma non verifica mai le firme. Il tuo token resta in questa scheda del browser.

Funziona nel browser. Quello che scrivi non viene inviato da nessuna parte.

Come decodificare un JWT

  1. Incolla il token, con o senza il prefisso Bearer.
  2. Leggi header e payload, mostrati come JSON formattato.
  3. Controlla la tabella dei claim per issuer, audience e scadenza.

Le tre parti di un JWT

ParteCodificaContiene
HeaderJSON in base64urlAlgoritmo di firma (alg) e tipo di token (typ)
PayloadJSON in base64urlI claim: i dati veri e propri del token
FirmaByte in base64urlProva che header e payload non sono stati modificati

Algoritmi di firma comuni

Valore algTipoNota
HS256Simmetrico, segreto condivisoComune per una singola app che emette e verifica i propri token
RS256Asimmetrico, RSAComune quando un'altra parte deve verificare il token, come in OAuth
ES256Asimmetrico, curva ellitticaFirme più corte di RSA a parità di livello di sicurezza
noneNessuna firmaUn verificatore dovrebbe sempre rifiutare questo algoritmo

Claim standard, dall'RFC 7519

  • exp, nbf e iat sono tutti valori NumericDate: secondi interi dall'epoca Unix, mai millisecondi.
  • aud può essere una singola stringa o un array di stringhe, quando un token è destinato a più di un'audience.
  • jti dovrebbe essere unico per ogni token, ed è ciò che rende possibile bloccare un token specifico.
  • Nessuno dei claim standard è obbligatorio. Un token può contenere solo i claim personalizzati definiti da un'applicazione.

Domande su Decodificatore JWT

Quali sono le tre parti di un JWT?

Un header, un payload e una firma, ciascuno codificato in base64url e uniti da punti. L'header indica l'algoritmo di firma, il payload contiene i claim, e la firma permette al server di verificare chi ha emesso il token.

Questo strumento verifica la firma?

No. Decodifica header e payload e non controlla mai la firma. Verifica i token sul tuo server con la chiave segreta o pubblica prima di fidartene. Il token che incolli non lascia mai il tuo browser.

Il payload di un JWT è cifrato?

Non in un normale JWT firmato. È soltanto codificato, quindi chiunque possieda il token può leggerlo, per questo password e dati privati non dovrebbero mai finirci dentro. I token cifrati (JWE) hanno cinque parti e richiedono la chiave.

Cosa significano exp, iat e nbf?

Sono orari espressi in secondi dal 1° gennaio 1970 (UTC). exp è quando il token scade, iat è quando è stato emesso, e nbf è l'istante prima del quale non deve essere accettato.

Perché il mio token risulta scaduto?

Il suo orario exp è precedente all'orologio del tuo dispositivo. Gli access token spesso durano solo da 5 a 60 minuti, quindi richiedine uno nuovo e controlla che l'orologio del tuo computer sia impostato correttamente.

Cosa definisce l'RFC 7519?

Definisce il formato JWT stesso: tre parti base64url unite da punti, e il significato dei claim standard come iss, sub, exp e aud. Non richiede alcun algoritmo di firma particolare.

Un JWT può essere revocato prima della scadenza?

Non dal token stesso, dato che è solo dato firmato. Revocarne uno in anticipo richiede supporto lato server, come una blocklist basata sul claim jti, oppure una scadenza breve abbinata a un refresh token separato.

Perché exp e iat mostrano numeri grandi invece di date?

Sono memorizzati nel token come valori NumericDate, secondi interi dall'epoca Unix (1° gennaio 1970 UTC). Questa pagina mostra il numero grezzo accanto a una data leggibile per comodità.

Strumenti correlati