Descodificador de JWT
Pega el token y verás qué lleva dentro. Ojo: esto lo descodifica, no lo verifica — comprobar la firma necesita la clave.
Tus datos
Resultado
{
"sub": "1234567890",
"name": "Ada Lovelace",
"iat": 1700000000
} - Cabecera
- { "alg": "HS256", "typ": "JWT" }
- Algoritmo
- HS256
- Tipo
- JWT
- Emitido
- 2023-11-14T22:13:20Z
- Caduca
- —
- Válido desde
- —
- Campos en el contenido
- 3
- Firma (recortada)
- firmaDeEjemploNo…
Qué damos por supuesto
- Se descodifica en tu navegador. El token no se envía a ningún sitio, que en un token es lo mínimo exigible.
- No se verifica la firma. Para eso hace falta la clave, y una clave no se pega en una página web. Un JWT descodificado no demuestra que sea auténtico.
- Las marcas de tiempo
iat,expynbfse leen como segundos Unix en UTC, que es lo que dice el RFC 7519. - Las tres partes van en Base64 para URLs, que no es el Base64 normal: usa
-y_y no lleva relleno. - Un JWT no está cifrado, solo firmado: cualquiera que lo tenga puede leer su contenido. No metas ahí nada que no quieras que se vea.
Cómo se calcula
Un JWT son tres trozos separados por puntos: cabecera, contenido y firma. Los dos primeros son JSON codificado en Base64 para URLs, así que descodificarlos es directo y no hace falta ninguna clave. La firma es otra cosa.
Descodificar no es verificar
Es la confusión que más caro sale. Leer el contenido de un token solo demuestra qué pone, no que lo haya escrito quien dice. Para eso hay que recalcular la firma con la clave secreta, y esa clave vive en tu servidor: si estuviera aquí, dejaría de ser secreta.
Está firmado, no cifrado
Cualquiera con el token puede leerlo, incluido quien lo intercepte. La firma impide modificarlo sin que se note, no leerlo. Por eso no se meten datos sensibles en el contenido, por mucho que parezca un sitio cómodo.
El algoritmo «none»
Si la cabecera dice alg: none, el token no lleva firma. Existió una época en
que varias librerías aceptaban eso como válido, y era una forma trivial de falsificar tokens.
Si te sale, aquí te avisamos.
Un ejemplo
El token de ejemplo lleva sub, name e iat. La marca
1700000000 se convierte en 14 de noviembre de 2023, y el
algoritmo es HS256. La firma se enseña recortada porque, sin la clave, no dice
nada.
Preguntas frecuentes
¿Comprueba si el token es válido?
No, y es a propósito. Verificar la firma exige la clave secreta, que no debe salir de tu servidor. Lo que sí te decimos es si ha caducado según su propio campo exp.
¿Es seguro pegar aquí un token de producción?
El token no sale de tu navegador: puedes comprobarlo en la pestaña de red. Dicho eso, un token de producción es una credencial viva, y la costumbre sana es no pegar credenciales en ningún sitio que no necesite verlas.
¿Por qué mi token no descodifica?
Casi siempre porque falta un trozo al copiar, o porque lleva el prefijo Bearer delante. Quítalo y prueba otra vez.
¿Puedo generar un JWT?
No. Firmar un token requiere una clave, y una herramienta web que te pida tu clave secreta es exactamente lo que no debes usar.
Sigue calculando
Todas las herramientas →- Formateador y validador de JSON Pega el JSON, elige la sangría y listo. Si algo no cuadra te decimos exactamente dónde, y de paso cuántas claves y cuánta profundidad tiene.
- Convertidor de JSON a YAML Pega el JSON y sale el YAML equivalente. Entrecomillamos las cadenas que YAML leería como booleano o como número, que es de donde vienen casi todos los sustos.
- Codificador y descodificador Base64 Texto a Base64 y al revés. Con UTF-8 de verdad, que es donde falla la mitad de las implementaciones caseras.
Actualizado el 2026-09-02. Los cálculos se ejecutan en tu navegador; los datos que introduces no se envían a ningún servidor.