Guía completa de nuestro decodificador de JSON Web Tokens (JWT)
Bienvenido a nuestro decodificador JWT seguro y en el lado del cliente. Esta herramienta en línea gratuita es una utilidad esencial para cualquier desarrollador, profesional de la seguridad o persona que trabaje con sistemas de autenticación modernos. Le permite decodificar JWT (JSON Web Tokens) al instante e inspeccionar su contenido en un formato limpio y legible por humanos. Simplemente pegue su token en el área de texto y nuestra herramienta analizará el encabezado y la carga útil, mostrándolos como JSON formateado.
La característica más importante de este decodificador JWT en línea es su seguridad. Toda la decodificación y el procesamiento ocurren al 100% dentro de su navegador. Sus tokens nunca se envían a nuestro servidor. Este enfoque en el lado del cliente garantiza que su información confidencial, como tokens de autenticación, claves de API o datos privados de usuario, permanezca completamente privada. Puede depurar cualquier token JWT con total confianza.
¿Qué es un JSON Web Token (JWT)?
Un JSON Web Token (JWT) es un estándar abierto compacto y seguro para URL (definido por el RFC 7519) que se utiliza para transmitir información de forma segura entre las partes como un objeto JSON. Debido a que esta información está firmada digitalmente, puede ser verificada y es confiable. Los JWT son apátridas (stateless) y autónomos, lo que significa que toda la información necesaria para autenticar a un usuario está contenida dentro del propio token. Esto los convierte en una opción extremadamente popular para las aplicaciones web y móviles modernas, especialmente para manejar la autenticación y el intercambio de información.
Puede identificar fácilmente un JWT por su estructura de tres partes, con cada parte separada por un punto (.): header.payload.signature.
Las tres partes de un JWT explicadas
Cuando utiliza nuestro decodificador JWT, está viendo las versiones decodificadas de las dos primeras partes del token.
1. El encabezado (Metadatos)
La primera parte del token es el encabezado JWT. Es un objeto JSON que está codificado en Base64Url. Normalmente consta de dos pares clave-valor:
- typ (Tipo): Declara el tipo de token, que casi siempre es "JWT".
- alg (Algoritmo): Especifica el algoritmo de firma utilizado para crear la firma. Los algoritmos comunes incluyen HS256 (HMAC con SHA-256, un algoritmo simétrico) y RS256 (RSA con SHA-256, un algoritmo asimétrico).
2. La carga útil (Claims)
La segunda parte del token es la carga útil o Payload. Esta parte también es un objeto JSON codificado en Base64Url y contiene las "reclamaciones" (claims). Las reclamaciones son declaraciones sobre una entidad (normalmente el usuario) y datos adicionales. Hay tres tipos de reclamaciones:
- Claims registrados: Son un conjunto de reclamaciones predefinidas recomendadas por el estándar JWT para garantizar la interoperabilidad. Los claims registrados comunes incluyen iss (Emisor), sub (Sujeto), aud (Audiencia), exp (Tiempo de expiración), nbf (No antes), iat (Emitido en) y jti (ID de JWT).
- Claims públicos: Son reclamaciones definidas por quienes utilizan JWT (como Google o Microsoft) y normalmente están registradas en el Registro de JSON Web Token de la IANA.
- Claims privados: Son reclamaciones personalizadas creadas para compartir información entre las partes que acuerdan usarlas. Por ejemplo, puede agregar {"role"
Nuestro visor de claims JWT facilita la inspección de todas estas reclamaciones de un vistazo.
3. La firma
La tercera parte del token es la firma JWT. Se crea tomando el encabezado codificado, la carga útil codificada, una clave secreta (o clave privada para algoritmos asimétricos) y ejecutándolos a través del algoritmo especificado (alg).
El propósito de la firma es verificar la autenticidad del token. Garantiza que el token no fue alterado durante el tránsito. Si un atacante cambia incluso un solo carácter en la carga útil, la firma ya no será válida. Por eso, esta herramienta no realiza ni puede realizar la validación de la firma; hacerlo requeriría la clave secreta, que nunca debe compartirse ni pegarse en una herramienta en línea. Este decodificador es para inspeccionar los datos (claims) dentro del token, no para verificar su autenticidad.
Cómo usar esta herramienta decodificadora JWT
- Copie su token: Copie la cadena JWT completa (las tres partes) de su aplicación, el almacenamiento local del navegador o la respuesta de la API.
- Pegue el token: Pegue el token en el área de texto en la parte superior de la página. También puede usar el botón "Cargar ejemplo" para ver un token válido.
- Haga clic en "Decodificar Token": La herramienta analizará instantáneamente el token.
- Inspeccione los resultados: El encabezado y la carga útil se mostrarán en dos cuadros JSON independientes y claramente formateados a continuación, lo que le permitirá leer fácilmente todos los datos y metadatos.
- Limpiar: Haga clic en el botón "Limpiar" para comenzar de nuevo.
Escenarios comunes de depuración
Un decodificador JWT es principalmente una herramienta de depuración. Aquí hay problemas comunes que puede resolver con él:
- Errores de "Token expirado": Pegue el token y verifique el claim exp. Compare esta marca de tiempo de Unix con la hora actual para ver si el token realmente ha expirado.
- Permiso denegado: Decodifique la carga útil para verificar el claim de rol, los alcances (scopes) u otras reclamaciones personalizadas para asegurarse de que el usuario tenga los permisos correctos.
- Usuario no encontrado: Inspeccione el claim sub (sujeto) para asegurarse de que se está enviando el ID de usuario correcto a su backend.
- Token no válido para esta aplicación: Verifique las reclamaciones aud (audiencia) e iss (emisor) para asegurarse de que coincidan con lo que espera su servidor.
Herramientas de desarrollo relacionadas
Dado que los JWT se basan en otros estándares web, es posible que estas herramientas le resulten útiles junto con nuestro decodificador:
- Formateador JSON: Si su carga útil contiene una cadena JSON minificada y anidada, puede copiarla del decodificador y embellecerla aquí.
- Codificador / Decodificador Base64: El encabezado y la carga útil de JWT están codificados en Base64Url. Esta herramienta puede decodificar cualquier cadena Base64.
- Convertidor de marcas de tiempo Unix: Úselo para convertir las reclamaciones exp o iat en una fecha legible por humanos.