Decodificador y verificador JWT
Pega un JSON Web Token para ver su encabezado y su payload, qué significa cada claim y cuándo caduca. Añade el secreto o la clave pública para verificar la firma. Todo se ejecuta en tu navegador, así que los tokens no salen de tu dispositivo.
Gratis · Sin registro
Cómo usarla
- Pega tu JWT en el cuadro Token codificado. El prefijo «Bearer » se quita solo.
- Lee el encabezado y el payload decodificados. Cada claim se explica, y fechas como exp e iat se muestran en tu zona horaria.
- Revisa la línea de caducidad para saber si el token es válido, ha caducado o aún no es válido.
- Para verificar la firma, escribe el secreto compartido en tokens HS256, HS384 o HS512, o pega la clave pública o el JWKS en tokens RS, PS, ES o EdDSA.
Por qué usar esta herramienta
Decodificación al instante
El encabezado y el payload se decodifican al pegar, con JSON en colores y las tres partes del token resaltadas.
Claims en lenguaje claro
Se explican los claims estándar y los más comunes de OpenID Connect, y las marcas de tiempo se muestran como fechas legibles.
Control de caducidad
Ve de un vistazo si el token es válido, ha caducado o aún no está activo, y cuánto le queda.
Verificación de firma
Verifica HS256/384/512, RS256/384/512, PS256/384/512, ES256/384/512 y EdDSA con un secreto, una clave PEM, un JWK o un JWKS.
Privado por diseño
La decodificación y la verificación usan la criptografía del navegador. Los tokens y las claves no se envían ni se guardan.
Errores útiles
Mensajes claros para tokens incompletos, base64 incorrecto, tokens JWE cifrados, alg none y claves del tipo equivocado.
¿Qué es un JWT?
Un JSON Web Token (JWT, RFC 7519) es una forma compacta de transmitir información firmada, como quién es un usuario, entre sistemas. Tiene tres partes en base64url separadas por puntos: un encabezado que indica el algoritmo, un payload con los claims y una firma.
El encabezado y el payload solo están codificados, no cifrados. Cualquiera que tenga el token puede leerlos, que es justo lo que hace este decodificador. La firma es lo que hace fiable un JWT: demuestra que lo creó alguien con la clave y que no se ha modificado.
Algoritmos de firma habituales
| Algoritmo | Tipo de clave | Se verifica con |
|---|---|---|
| HS256 / HS384 / HS512 | Secreto compartido (HMAC) | El mismo secreto que firmó el token |
| RS256 / RS384 / RS512 | Par de claves RSA | La clave pública RSA del emisor |
| PS256 / PS384 / PS512 | Par de claves RSA (relleno PSS) | La clave pública RSA del emisor |
| ES256 / ES384 / ES512 | Par de claves de curva elíptica | La clave pública EC del emisor |
| EdDSA | Par de claves Ed25519 | La clave pública Ed25519 del emisor |
Dónde encontrar la clave pública
Proveedores de identidad como Auth0, Okta, Microsoft Entra ID, Google y Keycloak publican sus claves como JWKS. Abre la dirección /.well-known/openid-configuration del proveedor, sigue el enlace jwks_uri y pega aquí todo el JSON. Se elige automáticamente la clave cuyo kid coincide con el encabezado del token.
Consejos de seguridad
- No pegues tokens ni secretos de producción en herramientas que envían datos a un servidor. Esta página funciona sin conexión una vez cargada.
- No pongas contraseñas ni otros secretos en el payload, porque cualquiera con el token puede leerlo.
- Verifica siempre en el servidor la firma, el emisor, la audiencia y la caducidad antes de confiar en un token.
- Rechaza los tokens con alg none y fija en tu código el algoritmo esperado en lugar de leerlo del token.
Preguntas frecuentes
¿Es seguro pegar mi JWT aquí?
Sí. El token se decodifica y verifica con JavaScript en tu navegador. No se sube, no se registra y no se guarda. Aun así, trata los tokens activos como contraseñas y no los compartas.
¿Se puede decodificar un JWT sin el secreto?
Sí. El encabezado y el payload son JSON codificado en base64url, así que cualquiera puede leerlos. El secreto o la clave solo hacen falta para verificar la firma o crear un token nuevo.
¿Por qué dice que la firma no es válida?
La clave no coincide con la usada para firmar, el token se ha modificado, o el secreto está en base64 y no has marcado la opción correspondiente. En tokens RS y ES usa la clave pública del emisor con el kid correcto.
¿Qué significa exp en un JWT?
exp es la hora de caducidad como marca de tiempo Unix en segundos. A partir de ese momento el token debe rechazarse. iat indica cuándo se emitió y nbf el momento antes del cual no debe aceptarse.
¿Puede decodificar tokens cifrados (JWE)?
Reconoce los tokens JWE, que tienen cinco partes, y muestra su encabezado. El payload está cifrado y solo se puede leer con la clave privada del destinatario.
¿Qué diferencia hay entre HS256 y RS256?
HS256 usa un único secreto compartido para firmar y verificar, así que todos los servicios que comprueban tokens deben conocerlo. RS256 firma con una clave privada y verifica con una pública, que se puede compartir sin riesgo.
Herramientas relacionadas
¿Necesitas crear algo?
Cuéntanos qué quieres construir.
Cuéntanos qué necesitas crear, desde una web sencilla hasta una app completa, una solución de IA, una automatización o un sistema a medida.