Markdown.es Logo Markdown.es

¿Te es útil esta web? Apóyala sin coste: si compras en Amazon, hazlo a través de nuestro enlace de afiliado — el precio es el mismo para ti y nos ayuda a seguir.

Utilidades

Decodificar JWT

Pega un token JWT para ver su cabecera y su contenido en claro, con las fechas ya interpretadas y el estado de caducidad.

No pegues tokens de producción en activo. Esta página no envía nada a ningún sitio, pero un token válido es una credencial: trátalo como una contraseña. Para inspeccionar, usa tokens caducados o de un entorno de pruebas.

Token JWT

Cómo está hecho un JWT

Un JSON Web Token son tres bloques separados por puntos. Los dos primeros son JSON codificado en Base64 URL-safe, así que se leen sin ninguna clave. El tercero es la firma.

Cabecera Dice qué algoritmo se usó para firmar (alg) y el tipo de token (typ).
Payload Los datos propiamente dichos: quién es el usuario, cuándo caduca el token y lo que el emisor haya querido incluir. Es legible por cualquiera, así que aquí nunca van contraseñas ni datos sensibles.
Firma El resultado de firmar cabecera y payload con una clave. No oculta nada: sirve para detectar si alguien ha modificado el contenido por el camino.

Los claims estándar

ClaimNombreQué indica
issIssuerQuién emitió el token
subSubjectA quién identifica, normalmente el ID de usuario
audAudiencePara qué servicio está destinado
expExpirationCuándo deja de ser válido
nbfNot beforeA partir de cuándo empieza a valer
iatIssued atCuándo se emitió
jtiJWT IDIdentificador único, para evitar reutilización

Las tres fechas (exp, nbf e iat) se expresan en segundos desde 1970, no en milisegundos. Es un error muy común multiplicar por mil de más y acabar con un token que caduca en el año 55.000.

Preguntas frecuentes

¿Mi token se envía a algún servidor? No. La decodificación ocurre íntegramente en tu navegador con JavaScript, sin ninguna petición de red. Aun así, la recomendación general es no pegar tokens de producción en ninguna herramienta online, esta incluida: si el token sigue vivo, cualquiera con acceso a tu pantalla o a tu historial podría reutilizarlo.
¿Se puede verificar aquí la firma del token? No, y es deliberado. Verificar la firma exige la clave secreta o la clave pública del emisor, y pedirte que pegues una clave secreta en una página web sería una mala práctica. Esta herramienta decodifica y te enseña el contenido, que es lo que se necesita el 95% de las veces.
¿Por qué puedo leer el contenido sin ninguna clave? Porque un JWT no está cifrado, solo firmado. Las dos primeras partes son Base64 y cualquiera puede leerlas. La firma no oculta el contenido: garantiza que nadie lo ha modificado. Por eso nunca se deben meter datos sensibles en el payload.
¿Qué significan claims como iat, exp o sub? Son campos estándar registrados en la especificación: iat es cuándo se emitió, exp cuándo caduca, sub a qué sujeto identifica. Abajo tienes la tabla completa con todos.
¿Qué hago si el token aparece caducado? Que exp ya haya pasado significa que el servidor lo rechazará. Necesitas pedir uno nuevo, normalmente con el refresh token o volviendo a iniciar sesión.
Todo ocurre en tu navegador

Esta utilidad se ejecuta enteramente en tu equipo con JavaScript. Lo que escribes o pegas no se envía a ningún servidor, no se guarda y no queda registrado en ninguna parte.

¿Buscas una app para instalar?

80+ Apps Markdown

El directorio más completo en español. Filtra por plataforma, precio y uso.

Ver Aplicaciones →