Skip to content

Guide

Alternative a jwt.io: decoder JWT online a confronto

jwt.io è l’implementazione di riferimento. Usa un decoder solo lato client quando il token contiene credenziali reali.

By Published

Nota di sicurezza: Non incollare mai un JWT che contiene credenziali di produzione, token di sessione o materiale di chiave privata in qualsiasi strumento online — inclusi jwt.io e Convertitive. Per i token con credenziali reali, decodifica localmente usando gli esempi da riga di comando nelle FAQ di seguito.

I JWT (JSON Web Token) sono tre segmenti codificati in Base64url separati da punti. L’intestazione e il payload non sono crittografati — sono leggibili da chiunque abbia il token. Decodificarli non richiede nient’altro che una decodifica Base64url e un parse JSON. La domanda non è se puoi decodificarlo, ma dove — e se lo strumento che scegli introduce un rischio inutile.

Cosa fa molto bene jwt.io

jwt.io è mantenuto da Auth0 (ora Okta) ed è la cosa più vicina a uno strumento di riferimento ufficiale che l’ecosistema JWT abbia. I suoi punti di forza sono notevoli:

  • Verifica della firma — incolla un segreto (HMAC) o una chiave pubblica (RSA, ECDSA, EdDSA) e jwt.io verificherà se la firma del token è valida.
  • Copertura degli algoritmi — HS256, HS384, HS512, RS256, RS384, RS512, ES256, ES384, ES512, PS256, PS384, PS512, Ed25519/Ed448.
  • Conformità RFC — lo strumento è mantenuto da persone che hanno contribuito alle specifiche JWT.
  • Elenco di librerie — il fondo di jwt.io elenca librerie JWT open-source per 30+ linguaggi con link ai loro repository.
  • Fiducia dell’ecosistema — gli URL di jwt.io sono lo standard de-facto per la condivisione di spiegazioni di token nella documentazione, nelle risposte Stack Overflow e nelle guide di riferimento API.

La preoccupazione per la privacy

jwt.io afferma di funzionare interamente nel browser. Auth0 ha confermato che i dati del token non vengono inviati ai loro server durante la decodifica. Questo è quasi certamente vero per l’operazione di decodifica e visualizzazione principale.

Tuttavia, jwt.io carica JavaScript di terze parti — analytics, monitoraggio e script pubblicitari — che sono al di fuori del controllo di Auth0 a livello di rete. I ricercatori di sicurezza e i membri della community hanno sollevato questa preoccupazione su GitHub e nei forum di sicurezza: uno script caricato da un CDN di terze parti potrebbe, in linea di principio, leggere il DOM.

Il decoder JWT di Convertitive è strettamente lato client. La pagina non contiene script di analytics che leggono i campi di input, e nessun dato del token lascia il browser. Questa è una differenza significativa per i token che sono a basso rischio ma non del tutto usa e getta — token di sviluppo, credenziali di staging, JWT demo.

Cosa il decoder JWT di Convertitive non fa

Convertitive non supporta la verifica della firma, e questo è intenzionale.

La verifica della firma richiede di fornire un segreto condiviso (HMAC) o una chiave pubblica (RSA/ECDSA). Inserire uno dei due in uno strumento basato su browser è un anti-pattern di sicurezza: i segreti appartengono ai gestori di segreti, non ai campi di input del browser.

RFC 7519 §10 lo affronta esplicitamente: “Le chiavi usate per firmare o verificare JWT DEVONO essere tenute segrete e NON DEVONO essere condivise.” RFC 8725 va oltre, notando che gli attacchi di confusione degli algoritmi diventano banalmente sfruttabili quando la validazione è delegata a superfici non affidabili.

Confronto delle funzionalità

Funzionalitàjwt.iotoken.devConvertitive
Decodifica intestazione + payload
Verifica della firmaSì — tutti i principali algoritmiSì — HMAC e RSANo (per design)
Visualizzazione exp / iat leggibile dall’uomo
Copertura degli algoritmiMolto ampia — 12+ algoritmiModerataSolo visualizzazione (nessuna verifica)
Script di analytics di terze partiSì (Auth0 / Okta analytics)MinimiNo
Dati token inviati al serverNo (solo lato client dichiarato)NoNo (verificato solo lato client)
Elenco di riferimento librerieSì — 30+ linguaggiNoNo
Supporto JWE (token crittografato)NoNoNo
Uso offline (dopo il primo caricamento)Parziale
ManutentoreAuth0 / OktaCommunityConvertitive

Quando usare jwt.io

  • Hai bisogno di verificare una firma durante lo sviluppo e stai usando una chiave di sviluppo o di test (mai un segreto di produzione).
  • Hai bisogno dell’elenco di riferimento delle librerie per scegliere un’implementazione JWT per il tuo stack.
  • Vuoi condividere un link alla spiegazione di un token con un collega — i link jwt.io sono universalmente compresi dagli ingegneri.
  • Stai effettuando il debug di un token demo o sintetico senza credenziali reali e vuoi l’interfaccia più completa.

Quando usare il decoder JWT di Convertitive

  • Il token è un token di sviluppo o staging che non vuoi esporre a nessuno script di terze parti, anche con basso rischio.
  • Hai solo bisogno di leggere le claim del payload — scadenza, soggetto, ruoli — e non hai bisogno della verifica della firma.
  • Stai controllando un formato di token (controllo dell’algoritmo dell’intestazione, verifica dei nomi delle claim) e non hai bisogno del set completo di funzionalità di jwt.io.

Il riepilogo onesto

jwt.io è lo strumento migliore se hai bisogno della verifica della firma o vuoi l’esperienza di riferimento JWT più completa. È mantenuto da persone con profonda competenza nella specifica JWT, e il suo elenco di librerie è genuinamente utile.

Il decoder di Convertitive è la scelta migliore quando vuoi garantire nessuna interazione di script di terze parti con il tuo token, o quando hai solo bisogno dell’ispezione dell’intestazione e del payload senza la complessità della verifica della firma. Fa meno — deliberatamente.

Per qualsiasi token contenente credenziali di produzione reali: non usare nessuno dei due. Usa la riga di comando.

Frequently asked questions

jwt.io può verificare una firma JWT?
Sì — jwt.io supporta la verifica della firma. Incolli il tuo token, selezioni l’algoritmo e fornisci un segreto (per HMAC) o una chiave pubblica (per RSA/ECDSA). Il decoder di Convertitive non supporta la verifica della firma, per design: inserire una chiave di firma o una chiave privata in qualsiasi strumento basato su browser è un anti-pattern di sicurezza per RFC 7519 §10.
jwt.io invia il mio token ai server Auth0?
jwt.io è pubblicizzato come eseguito interamente nel browser. Auth0 (il manutentore) afferma che non vengono effettuate richieste al server per la decodifica. Tuttavia, la pagina carica script JavaScript di terze parti — analytics, monitoraggio e script pubblicitari — che creano una superficie di rischio non nulla. Se il token contiene credenziali di produzione, usare uno strumento offline o un comando locale è l’opzione più sicura.
Perché Convertitive non supporta la verifica della firma?
RFC 7519 §10 avverte esplicitamente contro la condivisione delle chiavi di firma. Uno strumento basato su browser che accetta un segreto o una chiave privata normalizza la pratica di inserire credenziali in moduli web. Convertitive decodifica solo l’intestazione e il payload — la porzione di un JWT che è sempre codificata in Base64url senza crittografia e non porta segreti di firma.
Un JWT è crittografato?
I JWT standard (JWS, JSON Web Signature) sono firmati ma non crittografati — l’intestazione e il payload sono codificati in Base64url e visibili a chiunque abbia il token. I token JWE (JSON Web Encryption) sono crittografati. Se il tuo token inizia con eyJ e ha tre parti separate da punti, è un JWS e la sua intestazione e payload possono essere decodificati senza alcuna chiave.
Posso decodificare un JWT dalla riga di comando?
Sì. In Node.js: node -e "const t='TUO_TOKEN'; console.log(JSON.parse(Buffer.from(t.split('.')[1],'base64url').toString()))". Con jq e base64: echo TUO_TOKEN | cut -d. -f2 | base64 -d | jq. Questi non richiedono connessione di rete e sono l’approccio consigliato per i token che contengono credenziali di produzione.
Cosa significa ‘exp’ nel payload di un JWT?
exp è il timestamp di scadenza POSIX definito in RFC 7519 §4.1.4. È un Unix timestamp (secondi dall’1-1-1970T00:00:00Z). Sia jwt.io che Convertitive lo visualizzano come datetime leggibile dall’uomo.

Related

Published May 31, 2026