Herramientas JWT para desarrolladores Decodificar, codificar y verificar la expiración del token
Tres herramientas gratuitas basadas en el navegador que cubren todo el flujo de JWT: decodificar un token para inspeccionar las declaraciones, codificar uno para pruebas de simulación y verificar la expiración para depurar errores 401 — sin necesidad de instalaciones.
Cada desarrollador backend ha estado en esta situación: un 401 Unauthorized aparece en la consola y comienza la carrera. ¿El token ha expirado? ¿Fue firmado con el secreto incorrecto? ¿Se perdió una afirmación en el payload entre servicios? Los JWT — JSON Web Tokens — son el tejido que conecta la autenticación moderna, y cuando fallan, todo detrás de la puerta de autenticación se apaga.
El problema no es que los JWT sean complejos. La estructura es realmente simple: tres segmentos codificados en base64url separados por puntos — cabecera, payload, firma. El problema es que un token en texto plano como eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyXzEyMyIsInJvbGUiOiJhZG1pbiIsImV4cCI6MTc0NjA5NjAwMH0.mK2xVpQ8nZ3aF7tLdRhW6sYbcXeUoIPjNvGqTmAS1kE no te dice nada hasta que lo decodificas. Y decodificarlo — rápidamente, en el navegador, sin necesidad de instalar nada — es exactamente lo que estas tres herramientas gratuitas resuelven.
Este guía recorre el flujo completo de JWT: decodificar un token para inspeccionar su contenido, codificar un token para simular autenticación en pruebas, y verificar la expiración para diagnosticar errores de tiempo de espera. Cada sección utiliza el mismo token ficticio anterior para que puedas seguirlo paso a paso.
Herramienta 1 — Decodificador JWT: Ver el interior de cualquier token inmediatamente
El decodificador de JWT recibe cualquier token y lo divide en sus tres componentes, decodificando la cabecera y el payload desde base64url a JSON legible.
Pega el ejemplo de token anterior y verás que la cabecera se decodifica a:
{
"alg": "HS256",
"typ": "JWT"
}
Y el payload:
{
"sub": "user_123",
"role": "admin",
"exp": 1746096000
}
Esa exp campo es un timestamp en Unix. A simple vista no significa nada — pero el decodificador lo convierte en una fecha legible para que inmediatamente sepas si el token sigue siendo válido o ya ha caducado.
Una cosa importante de entender: el decodificador no verifica la firma por defecto. La verificación de firma requiere el secreto (para HS256) o la clave pública (para RS256/ES256). Lo que te ofrece el decodificador es el contenido decodificado — lo que necesitas cuando estás depurando un 401, verificando qué afirmaciones se incluyeron o inspeccionando un token de un proveedor de identidad externo.
Notar que: el payload del JWT está codificado en base64url, no encriptado. Cualquier herramienta (o persona) con el token puede leer el payload sin el secreto. La firma solo prueba que el token no ha sido alterado. Por eso nunca deberías almacenar datos sensibles — contraseñas, números de tarjeta de crédito, números de SSN — dentro del payload del JWT.
Herramienta 2 — Codificador JWT: Crear tokens para pruebas
El Codificador JWT hace lo contrario: proporcionas un payload en formato JSON, eliges un algoritmo (HS256 es el predeterminado), ingresas un secreto y la herramienta genera un token firmado que puedes usar inmediatamente.
El caso más común es simular autenticación en pruebas. Supón que tus pruebas de integración necesitan acceder a un punto final protegido. En lugar de configurar un flujo real de inicio de sesión, construyes un token con las afirmaciones exactas que espera el punto final:
{
"sub": "test_user_001",
"role": "editor",
"iat": 1746009600,
"exp": 1746096000
}
Firmalo con tu secreto de prueba, coloca el token resultante en los encabezados de tu prueba y tus rutas protegidas responderán como si un usuario real hubiera autenticado. Sin necesidad de simular el middleware de autenticación, sin necesidad de arrancar un proveedor de identidad — solo un token válido con las afirmaciones que necesitas.
El codificador también es útil cuando estás desarrollando un nuevo servicio y deseas probar manualmente cómo maneja combinaciones específicas de afirmaciones: roles faltantes, tokens expirados, escopos inesperados. Crea tokens con payloads de casos extremos y hazlos llegar a tu middleware para ver cómo responde.
Si necesitas entender el paso de codificación en base64url mismo — ya que el payload del JWT está solo codificado, no encriptado — el decodificador base64 te permite decodificar manualmente cualquier segmento. Pega la parte central de cualquier token (el segmento de payload) en el decodificador base64 y obtendrás el JSON original. El mismo enfoque, paso a paso.
Herramienta 3 — Verificador de expiración JWT: Depurar 401s sin hacer cálculos
La expiración del token es responsable de una gran parte de los fallos de autenticación en producción. El verificador de expiración de JWT recibe cualquier token y te dice inmediatamente: ¿ha expirado? Si es así, ¿por cuánto tiempo?
Pega el ejemplo de token y el verificador extrae el exp campo, lo convierte desde un timestamp en Unix a una fecha legible y lo compara con la hora actual. Obtienes un estado claro: válido (con tiempo restante) o expirado (con cuánto tiempo ha pasado desde que expiró).
Esto es más importante de lo que parece. Cuando un 401 aparece en producción, la primera pregunta siempre es: ¿el token ha expirado o hay algo más malo? Respuesta a esa pregunta mediante cálculos mentales sobre un timestamp en Unix — 1746096000 - current_time / 3600 — consume tiempo y introduce errores. El verificador de expiración responde a esa pregunta en una sola pegada.
También muestra el iat (timestamp de emisión) cuando esté presente, para que puedas ver exactamente cuándo se generó el token y durante cuánto tiempo ha estado activa la sesión. Útil para depurar errores de actualización de tokens o para investigar por qué una sesión de larga duración falló de repente.
Juntando todo: un flujo típico de depuración
Obtienes un 401. Aquí está la ruta más rápida desde el error hasta la resolución:
- Verifica la expiración primero. Pega el token en el verificador de expiración. Si ha expirado, la solución es refrescar el token — no se necesitan más pasos de depuración.
- Inspecciona el payload. Si el token aún es válido, pégalo en el decodificador de JWT. Revisa las afirmaciones: ¿es correcta la
sub? ¿Está presente la esperadaroleoscope? ¿La audiencia (aud) es correcta para el punto final que estás accediendo? - Reproduce con un token personalizado. Si sospechas que una combinación específica de afirmaciones está causando la rechazo, construye un token con el codificador y prueba directamente. Esto aísla si es el contenido de la afirmación o la estructura del token lo que está causando el fallo.
Tres herramientas, menos de un minuto, sin instalaciones. La mayoría de los 401 relacionados con JWT se resuelven en el paso 1 o 2.
Instalar extensiones
Agregue herramientas IO a su navegador favorito para obtener acceso instantáneo y búsquedas más rápidas
恵 ¡El marcador ha llegado!
Marcador es una forma divertida de llevar un registro de tus juegos, todos los datos se almacenan en tu navegador. ¡Próximamente habrá más funciones!
Herramientas clave
Ver todo Los recién llegados
Ver todoActualizar: Nuestro última herramienta se agregó el 20 de junio de 2026
