ForHosting KIT · Strumenti per sviluppatori

Decodifica un JWT

Un JWT è un token composto da tre parti — header, payload e firma — codificate in Base64 e separate da un punto. Sembra illeggibile ma non è cifrato: chiunque può decodificarlo. Questo strumento del KIT lo apre nel browser e ti mostra i claim in chiaro, la scadenza e l'algoritmo, senza verificarne la firma.

● StabileGratis · nel tuo browser
Usalo da WebAPIEmailApp prestoTelegram presto

Funziona nel tuo browser: gratis, senza registrazione, i file non escono dal tuo dispositivo.

Cosa c'è dentro un JWT

Tre blocchi. L'header dice quale algoritmo firma il token (per esempio HS256 o RS256). Il payload contiene i claim: chi è l'utente (sub), chi ha emesso il token (iss), quando scade (exp), più eventuali dati tuoi. La firma garantisce che il token non sia stato alterato. Decodificare mostra header e payload; verificare la firma è un'altra cosa e richiede la chiave.

Decodificare non è verificare

Punto cruciale per la sicurezza. Il payload di un JWT è solo codificato in Base64, non cifrato: leggerlo è banale, quindi non metterci mai password o segreti. E il fatto che tu riesca a leggere i claim non prova che il token sia valido: per quello va verificata la firma con la chiave giusta, lato server. Questo strumento serve a ispezionare e fare debug, non ad autenticare.

Scadenza e claim a colpo d'occhio

L'errore più comune quando fai debug è un token scaduto. Qui il campo exp viene convertito da timestamp Unix a data leggibile, così vedi subito se il token è ancora valido o è morto cinque minuti fa. Allo stesso modo controlli iat (quando è stato emesso) e nbf (da quando è valido), e verifichi che iss e aud siano quelli attesi.

Il token resta nel browser

Un JWT è spesso una credenziale di sessione: incollarlo in un sito che lo spedisce a un server è un rischio concreto. Qui la decodifica avviene tutta nel browser, offline: il token non viene inviato da nessuna parte e non resta in cache. Puoi ispezionare un token di produzione senza esporlo. Ti serve automatizzare? C'è l'API a $0.002 a richiesta.

Perché il login scade subito

Uno sviluppatore di un gestionale trova gli utenti sloggati dopo pochi minuti. Incolla il JWT, legge exp convertito in data e scopre che la durata è impostata a 5 minuti invece di 8 ore.

Controllare i permessi in un token

Un'app assegna i ruoli via JWT. Il team verifica che il claim role contenga davvero admin per l'utente giusto, senza dover interrogare il database.

Debug di un'integrazione SSO

Durante l'integrazione con un identity provider i claim iss e aud non combaciano: decodificando il token si vede subito il valore effettivo e si corregge la configurazione.

Decodificare un JWT verifica anche la firma?

No. Questo strumento mostra header e payload in chiaro ma non controlla la firma: per quella serve la chiave segreta o pubblica, e la verifica va fatta lato server. Serve a ispezionare, non ad autenticare.

Il payload di un JWT è cifrato?

No, è solo codificato in Base64. Chiunque abbia il token può leggerne il contenuto. Per questo non vanno mai messi dati sensibili o password nel payload.

Il mio token viene inviato online?

No. La decodifica avviene nel browser, offline: il token non lascia il dispositivo e non resta in cache. Puoi ispezionare anche un token di produzione.

Come faccio a sapere se è scaduto?

Guarda il claim exp: qui lo convertiamo da timestamp Unix in data e ora leggibili, così capisci al volo se il token è ancora valido o già scaduto.

È gratis?

Sì, nel browser è gratis e senza registrazione. Via API, per decodificare in automatico, costa $0.002 a richiesta.

Posso decodificare tanti token in automatico?

Sì, tramite API a $0.002 a richiesta: utile per pipeline di debug o log dove serve leggere i claim di molti token.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/dev/jwt-decode

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/dev/jwt-decode \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"items":["valor-1","valor-2"]}'
{
  "items": [
    "valor-1",
    "valor-2"
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.jwt_decode",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Leggi la documentazione completa del KIT →