Decodificador JWT: lea header, payload y expiración
Pegue un JWT para ver su cabecera y payload en JSON, las fechas iat y exp y si el token ha caducado.
Decodificar un JWT: cabecera, claims y caducidad, sin firma
Un JWT (RFC 7519) consta de tres segmentos codificados en Base64URL y separados por puntos: cabecera, payload y firma. La herramienta decodifica los dos primeros a JSON, convierte las fechas iat y exp e indica si el token ha caducado; no verifica la firma, que requiere la clave secreta o pública en el servidor.
Qué hace el decodificador
- Divide el token por los puntos y exige exactamente 3 segmentos; un JWE cifrado de 5 segmentos se rechaza.
- Sustituye - y _ por + y /, completa con = y decodifica en UTF-8.
- Analiza cabecera y payload con JSON.parse y muestra el algoritmo (alg) y el tipo (typ).
- Convierte iat y exp (segundos desde el 1 de enero de 1970) en fecha local y compara exp con la hora de su dispositivo.
Ejemplo con el token de muestra
La cabecera indica alg HS256 y typ JWT. El payload contiene sub, name (Jean Dupont), admin, iss y dos fechas: iat = 1516239022, es decir el 18 de enero de 2018 a las 01:30 UTC, y exp = 1781623922, el 16 de junio de 2026 a las 15:32 UTC. Consultado el 14 de octubre de 2026, el token aparece como caducado desde hace unos 120 días. La firma se muestra tal cual, sin comprobar.
Límites de seguridad
- Un token manipulado o falsificado se decodifica igual que uno auténtico: decodificar no demuestra nada sobre su validez.
- Un token sin firmar (alg none, tercer segmento vacío) se decodifica sin aviso.
- No se comprueban los claims nbf, aud ni iss; solo exp genera un estado.
- El estado de caducidad depende del reloj de su dispositivo.
- El payload está codificado, no cifrado: nunca incluya contraseñas ni datos sensibles.
La decodificación se realiza en el navegador, sin enviar el token.
Preguntas frecuentes
¿El decodificador JWT verifica la firma del token?
No. Decodifica la cabecera y el payload y muestra la firma en bruto, sin comprobarla. Verificar HS256 exige la clave secreta; RS256 o ES256, la clave pública: hágalo en el servidor con una biblioteca JWT.
¿Cómo saber si un JWT ha caducado?
El claim exp contiene una fecha en segundos desde el 1 de enero de 1970. El token de muestra tiene exp = 1781623922, el 16 de junio de 2026 a las 15:32 UTC: la herramienta lo marca como caducado en cuanto el reloj de su dispositivo supera esa hora y muestra la diferencia en días, horas y minutos.
¿Se puede leer un JWT sin la clave?
Sí, un JWT firmado (JWS) solo está codificado en Base64URL: cualquiera puede leer sus claims. La firma únicamente impide modificarlos sin que se note. Un JWE de 5 segmentos está cifrado y la herramienta lo rechaza.
¿Por qué aparece «Formato JWT no válido»?
El token debe tener exactamente tres segmentos separados por puntos. Una copia cortada, espacios, el prefijo Bearer o un token cifrado de 5 segmentos provocan el mensaje; un segmento que no sea JSON en Base64URL produce un error de decodificación.
¿La herramienta es realmente gratuita?
Sí, todas las herramientas en Kristools son 100% gratuitas y accesibles sin registro.
¿Están protegidos mis datos?
Sí. Todo el procesamiento se realiza de forma segura y directa en tu navegador. No se envían datos personales a nuestros servidores.