Decodificador de JWT
Decodifique e inspeccione JSON Web Tokens con explicaciones de sus declaraciones
Pruebe un ejemplo
Pegue un JWT para inspeccionar su encabezado, claims y firma.
Firma no verificada. Decodificar no demuestra que un token sea auténtico ni de confianza.
Vigencia del token
—
- Algoritmo
- —
- Emitido el
- —
- No antes de
- —
- Vence el
- —
Claims registrados
Acerca del Decodificador de JWT
El Decodificador de JWT es una herramienta gratuita en línea que decodifica al instante cualquier JSON Web Token en sus tres partes: encabezado (Header), carga útil (Payload) y firma (Signature). Los JSON Web Tokens (JWT) son un estándar abierto (RFC 7519) que se usa para transmitir información de forma segura entre partes como objetos JSON compactos y autocontenidos. Son la base de la autenticación y la autorización modernas en aplicaciones web, API y microservicios.
Todo JWT consta de tres segmentos codificados en Base64URL y separados por puntos. El encabezado especifica el algoritmo de firma (como HS256 o RS256) y el tipo de token. La carga útil contiene claims: pares clave-valor con datos del usuario, permisos, tiempos de expiración y otros metadatos. La firma garantiza que el token no ha sido alterado y solo puede verificarse con el secreto o la clave pública correctos.
Esta herramienta decodifica los JWT por completo en su navegador, sin ninguna comunicación con un servidor, por lo que sus tokens nunca se transmiten ni se almacenan fuera de su dispositivo. También comprueba el estado de expiración, convierte las marcas de tiempo en fechas legibles y ofrece explicaciones de los claims registrados estándar como iss, sub, aud, exp, iat y nbf.
Características principales
- Decodifique al instante cualquier JWT en secciones de encabezado, carga útil y firma
- Comprobación automática de expiración con un banner de estado claro: «Token no expirado», «Token aún no activo» o «Token expirado»
- Formato legible de las marcas de tiempo Unix (exp, iat, nbf) con visualización de la zona horaria
- Explicaciones de todos los claims registrados estándar (iss, sub, aud, exp, nbf, iat, jti)
- Botones de copia con un clic para el encabezado, la carga útil y la firma por separado
- Decodificación en tiempo real mientras escribe o pega, con entrada diferida (debounce)
- Secciones con código de color: azul para el encabezado, morado para la carga útil y naranja para la firma
- Insignia del algoritmo (HS256, RS256, ES256, etc.) bien visible en el banner de estado
- Token de ejemplo incluido para pruebas y demostraciones rápidas
- Procesamiento 100% en el navegador, sin enviar datos a ningún servidor
Cómo usar
- Pegue su JWT: copie un JSON Web Token de su aplicación, de una respuesta de API, de las herramientas de desarrollo del navegador o de su sistema de autenticación y péguelo en el campo de entrada.
- Vea las secciones decodificadas: la herramienta divide al instante el token en encabezado, carga útil y firma, y muestra cada parte en un panel con formato y código de color.
- Compruebe la expiración: un banner de estado en la parte superior indica si el token sigue siendo válido o ha expirado, junto con la fecha exacta de expiración y la cuenta regresiva.
- Lea las explicaciones de los claims: los claims registrados estándar, como iss, sub, exp e iat, incluyen descripciones para que entienda qué significa cada campo.
- Copie las secciones: use el botón de copiar de cualquier sección para llevar el JSON con formato al portapapeles y usarlo en documentación o depuración.
- Pruebe un ejemplo: haga clic en el botón «Token de ejemplo» para cargar un JWT ya preparado y ver cómo funciona el decodificador antes de pegar sus propios tokens.
Casos de uso
- Depuración de autenticación: inspeccione rápidamente los JWT que devuelve su servidor de autenticación para verificar que los claims, roles y permisos estén bien configurados.
- Desarrollo de API: decodifique tokens de acceso durante la integración de una API para confirmar que la carga útil contiene el ID de usuario, los scopes y el tiempo de expiración esperados.
- Auditoría de seguridad: examine los tokens en busca de exposición de datos sensibles, algoritmos débiles (como «none») o periodos de expiración excesivamente largos.
- Aprendizaje y educación: entienda la estructura de un JWT decodificando tokens de ejemplo y leyendo las descripciones anotadas de los claims que ofrece la herramienta.
- Diagnóstico de expiración de tokens: determine si los fallos de autenticación se deben a tokens expirados comparando el claim exp con la hora actual.
- Depuración de microservicios: inspeccione los tokens que circulan entre servicios para verificar que los servicios de origen emitan JWT con la estructura y los claims correctos.
- Validación de flujos OAuth: decodifique tokens de ID y tokens de acceso de los flujos OAuth 2.0 y OpenID Connect para verificar los valores de emisor, audiencia y scope.
- Documentación: copie el JSON decodificado del encabezado y la carga útil en la documentación de su API o en runbooks para ilustrar las estructuras de token esperadas.
Preguntas frecuentes
¿Esta herramienta es gratuita?
Sí. El Decodificador de JWT es totalmente gratuito, sin necesidad de cuenta, sin límites de uso y sin anuncios que bloqueen su funcionamiento.
¿Mis datos están seguros?
Por supuesto. Toda la decodificación se realiza por completo en su navegador con JavaScript. Su JWT nunca se envía a ningún servidor, lo que hace segura esta herramienta para inspeccionar tokens de producción.
¿Esta herramienta verifica la firma del JWT?
No. La verificación de la firma requiere la clave secreta (en HMAC) o la clave pública (en RSA/ECDSA), y no puede hacerse de forma segura en un navegador. Use bibliotecas del lado del servidor para validar firmas.
¿Cuál es la diferencia entre HS256 y RS256?
HS256 es un algoritmo simétrico que usa un único secreto compartido tanto para firmar como para verificar. RS256 es un algoritmo asimétrico que usa una clave privada para firmar y una clave pública para verificar, lo que lo hace ideal para sistemas distribuidos.
¿Puedo decodificar JWT cifrados (JWE)?
Esta herramienta decodifica JWT firmados (JWS). Los JWT cifrados (JWE) requieren una clave de descifrado y este decodificador no los admite.
¿Por qué mi token aparece como expirado?
La herramienta compara el claim exp (expiración) con la hora actual de su sistema. Si la marca de tiempo de expiración está en el pasado, el token se marca como expirado. Verifique que el reloj de su sistema esté en hora.
Consejos y buenas prácticas
- Mantenga los tokens de corta duración: use tiempos de expiración de 15 a 60 minutos para los tokens de acceso y combínelos con tokens de actualización seguros y solo HTTP para dar continuidad a la sesión.
- Nunca guarde secretos en la carga útil: los JWT están codificados, no cifrados. Cualquiera que tenga el token puede decodificar la carga útil, así que nunca incluya contraseñas, números de tarjeta de crédito ni otros datos sensibles.
- Valide siempre en el servidor: decodificar un JWT en el navegador es útil para depurar, pero verifique siempre la firma en su backend antes de confiar en cualquier claim.
- Use algoritmos asimétricos en sistemas distribuidos: elija RS256 o ES256 cuando varios servicios necesiten verificar tokens de forma independiente sin compartir una clave secreta.
- Vigile el tamaño del token: las cargas útiles grandes aumentan el tamaño de los encabezados de las solicitudes y pueden ralentizar las llamadas a la API. Mantenga los claims al mínimo y use referencias (como IDs de usuario) en lugar de incluir perfiles de usuario completos.
- Rote las claves de firma con regularidad: implemente estrategias de rotación de claves con el parámetro de encabezado kid (Key ID) para pasar de una clave de firma a otra sin invalidar todos los tokens existentes.