Tarayıcınız güncel değil

Bu siteyi görüntülemek için tarayıcınızın veya cihazınızın işletim sisteminin güncellenmesi gerekiyor.

Your browser is out of date. Please update iOS or your browser to view this site.

Vai al contenuto principale
Gizke.com
Blog

Decodificatore JWT

Funziona sul tuo dispositivo. Nulla viene inviato.

Decodifica ed esamina i JSON Web Token nel browser: header, payload, scadenza e verifica opzionale della firma. Nulla viene caricato.

Un JSON Web Token (JWT) è un modo compatto e sicuro per gli URL di rappresentare claim tra due parti - usato ovunque, dagli header "Authorization: Bearer ..." ai cookie di sessione fino al single sign-on. Un JWT è solo tre parti codificate in base64url (header, payload, firma) unite da punti, quindi chiunque può decodificare e leggere header e payload senza aver bisogno della chiave di firma - solo la verifica della firma richiede un segreto o una chiave privata. Questo strumento decodifica entrambe le parti localmente nel tuo browser, spiega i claim standard, segnala un token scaduto o non ancora valido, e avverte della trappola di sicurezza dell'algoritmo "none" - il tuo token non viene mai inviato da nessuna parte.

Domande frequenti

Il mio JWT viene inviato a un server?
No. La decodifica avviene interamente nel tuo browser usando le Web API atob e TextDecoder - il token, così come qualsiasi segreto o chiave pubblica che incolli per verificare una firma, non lasciano mai il tuo dispositivo.
Questo strumento può verificare la firma?
Sì, come bonus a tentativo. Se conosci il segreto HMAC (per HS256/384/512) o incolli la chiave pubblica codificata in PEM (per RS256/384/512 o ES256/384/512), lo strumento controlla la firma localmente usando la Web Crypto API del browser. Senza una chiave, vengono decodificati e mostrati solo header e payload - la decodifica non richiede mai la chiave di firma.
Perché l'algoritmo indicato è "none"?
"alg": "none" significa che il token non è firmato affatto - chiunque avrebbe potuto scriverci dentro qualsiasi claim. Alcune librerie in passato hanno accettato questi token non firmati come validi, diventando un noto modo per aggirare l'autenticazione. Questo strumento lo segnala sempre in modo evidente, così non te lo perdi.
Cosa significano exp, iat e nbf?
Sono i claim di timestamp standard di RFC 7519: iat indica quando il token è stato emesso, nbf il primo momento in cui diventa valido, ed exp quando smette di esserlo. Tutti e tre sono memorizzati come NumericDate - secondi dall'epoch Unix - che questo strumento converte in una data leggibile e in un tempo relativo come "scade tra 2 ore".
Perché posso leggere il payload senza un segreto?
Perché header e payload di un JWT sono solo codificati in base64url, non cifrati - la codifica non è segretezza. Chiunque abbia il token può già leggerne i claim; la firma dimostra solo che non sono stati alterati da qualcuno privo della chiave. Non inserire mai nel payload di un JWT qualcosa che non vuoi che un attaccante possa leggere direttamente.
Il mio token ha 3 parti ma non si decodifica comunque - perché?
Ciascuno dei tre segmenti (header, payload, firma) deve essere testo base64url valido, ed header e payload devono decodificarsi in JSON valido. Questo strumento decodifica header e payload in modo indipendente e ti dice esattamente quale dei due è rotto e perché (base64 errato, UTF-8 errato o JSON non valido), invece di fallire silenziosamente.
Per sviluppatori: apri questa pagina con un parametro `token` nell'URL - es. gizke.com/jwt?token=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c - e quel token verrà precompilato automaticamente. La maggior parte dei visitatori non ne avrà bisogno; serve per collegarsi direttamente a un esempio pronto all'uso.

Condividi questo strumento

BlogChi siamoContattiTermini di utilizzoInformativa sulla privacy