🌐 ES

🔓 Decodificador de JWT

Pega un JWT (JSON Web Token) para decodificar de inmediato su encabezado y payload a JSON con formato legible. Los claims exp/iat/nbf se muestran como horas legibles para humanos, con una insignia que indica si el token ha expirado.

⚠️ Esta herramienta solo decodifica; no verifica la firma. Deliberadamente no incluye un campo de entrada de clave secreta por razones de seguridad. Si necesitas verificación de firma, usa una librería JWT del lado del servidor.

GUÍA

Más información

01

1. Comprender la estructura de JWT

Un JWT tiene tres partes separadas por puntos: header.payload.signature. El encabezado contiene el algoritmo de firma (alg) y el tipo de token (typ); la carga útil contiene los claims reales (ID de usuario, permisos, hora de emisión, etc.), todo codificado en base64url. La firma es el header+payload firmado con un secreto (o clave privada), y se usa para verificar que el token no haya sido manipulado, pero esta herramienta no realiza esa verificación.

02

2. Los claims exp, iat y nbf

exp (expiración) es el momento en que el token expira, iat (issued at) es cuando se emitió y nbf (not before) significa que el token no es válido antes de esa hora. Los tres se almacenan como timestamps Unix (segundos), que no se ven legibles de inmediato. Esta herramienta los muestra tanto en hora local como en ISO 8601, y marca una insignia de "Expirado" si exp está en el pasado.

03

3. Cuando necesites verificación de firma

Verificar la firma de un JWT requiere el secreto usado para firmarlo (familia HMAC, por ejemplo, HS256) o la clave pública correspondiente (familia RSA/ECDSA, por ejemplo, RS256/ES256). Esta es una operación sensible que corresponde al lado del servidor, por eso esta herramienta del navegador solo decodifica (te permite inspeccionar el contenido) y nunca pide una clave secreta. Para una verificación real, usa una librería JWT del backend (jsonwebtoken, PyJWT, firebase-admin, etc.).

Preguntas frecuentes

¿Puede usarse esta herramienta para falsificar un JWT?
No. Solo decodifica (base64url-decode): nunca genera ni verifica una firma. Una firma válida requiere una clave secreta/privada conocida solo por el emisor, y esta herramienta nunca acepta ninguna.
¿Por qué no hay un campo para ingresar la clave secreta?
Por seguridad. Pegar secretos en herramientas de navegador es un hábito que arriesga exposición accidental, por eso esta herramienta se diseñó para no aceptar ninguno desde el inicio.
¿Cómo puedo saber si un token está expirado?
Si la carga útil tiene un claim exp, se compara automáticamente con la hora actual y se muestra como insignia "Expirado" o "Válido (aún no expirado)".
¿El token que pego se envía a un servidor?
No. La decodificación ocurre completamente en el JavaScript de tu navegador y nunca se envía a un servidor.