Decodificador JWT Gratuito — Inspecciona Tokens de Forma Segura

Pega un JSON Web Token y visualiza al instante el header, payload, claims y estado de expiración decodificados. Todo se procesa en tu navegador — el token nunca sale de tu dispositivo.

Pegar JWT Token

Tu token permanece en tu navegador. Nada se envía al servidor.

¿Qué es un JWT?

Un JSON Web Token (JWT) es una forma compacta y segura para URL de transmitir claims entre dos partes. Es el formato estándar de bearer token para OAuth 2.0, OpenID Connect y la mayoría de esquemas de autenticación API modernos.

Un JWT tiene tres partes codificadas en Base64URL separadas por puntos: header.payload.signature. El header declara el algoritmo de firma (ej: HS256, RS256). El payload contiene claims registrados como "exp" (expiración) e "iat" (emitido en), más datos personalizados. La firma asegura que el token no ha sido alterado.

Este decodificador divide el token, decodifica el header y payload en Base64URL, los parsea como JSON y verifica el claim "exp" contra la hora actual para indicar si el token sigue siendo válido.

Cómo Usar

  1. Pega tu JWT en el área de texto. Se decodifica al instante mientras escribes.
  2. Revisa el Header decodificado para confirmar algoritmo y tipo de token.
  3. Verifica los claims del Payload: sub, exp, iat y campos personalizados.
  4. Observa el badge de estado — indica si el token está expirado o activo.
  5. Haz clic en Copiar en cualquier sección para obtener el JSON formateado.

Casos de Uso

Depurar flujos de autenticación

Tu login funciona en staging pero falla en producción. Pega el token de cada entorno y compara los claims. ¿Issuer diferente? ¿Audience incorrecto? ¿Roles faltantes? Lo verás al instante.

Verificar expiración durante desarrollo

Tu API devuelve 401 y no estás seguro si es el token o el endpoint. Pégalo aquí para ver la hora exacta de expiración en UTC.

Revisar tokens antes de compartir logs

Antes de pegar un token en Slack o un bug report, decodifícalo para asegurarte de que no contiene datos personales que no deberías compartir.

Aprender la estructura JWT

¿Implementando JWT por primera vez? Pega tokens de ejemplo para ver cómo se ensamblan header, claims y signature.

Consejos de Seguridad

1.

Nunca confíes en un JWT sin verificar la firma

Decodificar NO es verificar. Esta herramienta muestra el contenido, pero en producción debes verificar la firma con la clave del emisor.

2.

Mantén los tokens de corta duración

Los access tokens deben expirar en minutos. Usa refresh tokens para sesiones largas. Un exp con semanas de anticipación es una señal de riesgo.

3.

No pongas secretos en el payload

Los JWT están codificados, no cifrados. Cualquiera con el token puede decodificarlo. Nunca almacenes contraseñas o API keys en claims.

4.

Verifica el header del algoritmo

El ataque "alg":"none" está bien documentado. Si ves "none" en producción, investiga inmediatamente.

Ejemplos

Token HS256 estándar

Un access token típico con claims estándar.

Input

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkphbmUgRG9lIiwiZXhwIjoyMDAwMDAwMDAwfQ.signature

Output

{
  "alg": "HS256",
  "typ": "JWT"
}

{
  "sub": "1234567890",
  "name": "Jane Doe",
  "exp": 2000000000
}

Token expirado

Un token con exp en el pasado — el decodificador lo marca como expirado.

Input

eyJhbGciOiJub25lIn0.eyJleHAiOjF9.signature

Output

Header: { "alg": "none" }
Payload: { "exp": 1 }
Estado: EXPIRADO (1970-01-01T00:00:01.000Z)

Características

  • Decodificación instantánea mientras escribes
  • 100% del lado del cliente, cero peticiones de red
  • Estado de expiración con timestamp UTC exacto
  • Visualización separada de header, payload y firma
  • Copia con un clic para cada sección
  • Privacidad primero: tu token no sale del navegador

Preguntas Frecuentes

¿Es seguro pegar mi JWT de producción?

Sí. Funciona completamente en tu navegador usando atob(). Abre DevTools → pestaña Red y verifica: no se envía ninguna petición.

¿Puede verificar la firma?

No. La verificación de firma requiere la clave de firma. Esta herramienta solo decodifica y muestra el contenido.

¿Qué significa "alg: none"?

Significa que el token no tiene firma criptográfica. Es un vector de ataque conocido (CVE-2015-9235). Los sistemas legítimos nunca usan "none" en producción.

¿Puede decodificar JWE (tokens cifrados)?

No. Solo maneja JWS (tokens firmados). Los JWE tienen 5 partes separadas por puntos y requieren la clave de descifrado.

Consejos y Flujos Relacionados