JWT Debugger
depurador jwt

Depurador de tokens web JSON

Decodifica, inspecciona y verifica tokens web JSON (JWT) localmente. Análisis codificado por colores de encabezados, datos de carga útil y estructuras de firma.

Token codificado (Pegar JWT)
Encabezado: Algoritmo y tipo de token Descifrado
 
Carga útil: datos/reclamaciones Descifrado
 
Firma: Verificación de integridad Verificado localmente
Fórmula de verificación:

HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), )

🔒 La firma es válida.
¡Copiado al portapapeles!
depurador jwt

Depurador de tokens web JSON

Decodifica, inspecciona y verifica tokens web JSON (JWT) localmente. Análisis codificado por colores de encabezados, datos de carga útil y estructuras de firma.

Dominar los tokens web JSON con el depurador JWT

En el panorama moderno del desarrollo web y la seguridad de API, los JSON Web Tokens (JWT) se han convertido en el estándar de facto para la autenticación y el intercambio de información. Sin embargo, depurar estos tokens puede ser un desafío sin las herramientas adecuadas. JWT Debugger es una potente utilidad centrada en desarrolladores diseñada para decodificar, inspeccionar y verificar estructuras JWT directamente en su navegador. Al proporcionar un desglose codificado por colores del encabezado, la carga útil y la firma, esta herramienta simplifica el proceso de comprender la composición de los tokens, validar reclamaciones y garantizar la integridad de los datos. Ya sea que sea un ingeniero backend experimentado o un desarrollador frontend que se integra con proveedores OAuth 2.0, dominar la depuración JWT es esencial para crear aplicaciones seguras y confiables. Esta guía lo guiará a través de las complejidades de la arquitectura JWT, el papel fundamental de las firmas digitales y cómo aprovechar JWT Debugger para un análisis local eficiente sin comprometer la privacidad.

Comprensión de la arquitectura de tokens web JSON (JWT)

Un JSON Web Token (JWT) es un estándar abierto (RFC 7519) que define una forma compacta y autónoma de transmitir información de forma segura entre partes como un objeto JSON. Esta información se puede verificar y confiar porque está firmada digitalmente. Los JWT se pueden firmar mediante un secreto (con el algoritmo HMAC) o un par de claves pública/privada mediante RSA o ECDSA. Debido a que los JWT son compactos, se pueden enviar fácilmente a través de parámetros de consulta, variables de cuerpo POST o dentro de encabezados HTTP (generalmente bajo el esquema Portador de autorización), lo que los convierte en el estándar de la industria para la autenticación web moderna. El depurador JWT le permite pegar cualquier token y ver instantáneamente sus componentes decodificados, lo que le ayuda a comprender el flujo de datos y la autenticación en sus aplicaciones. Al visualizar la estructura de tres partes, puede identificar rápidamente el algoritmo utilizado, las reclamaciones que se transmiten y verificar que el token no haya sido manipulado durante el tránsito.

La estructura de tres partes de un JWT

Un token web JSON estándar consta de tres partes distintas separadas por puntos (.):

  • Encabezado: El encabezado normalmente consta de dos partes: el tipo de token, que es JWT, y el algoritmo de firma que se utiliza, como HMAC SHA256 (HS256) o RSA (RS256).
  • Carga útil: La carga útil contiene las reclamaciones. Los reclamos son declaraciones sobre una entidad (normalmente, el usuario) y metadatos adicionales. Los reclamos comunes incluyen iss (emisor), exp (tiempo de vencimiento) y sub (asunto).
  • Firma: La firma se calcula firmando el encabezado codificado y la carga útil con una clave secreta o certificado público, verificando la autenticidad del token.

El depurador JWT mejora esta comprensión codificando por colores cada sección: el encabezado en un tono, la carga útil en otro y la firma en un tono distinto. Esta separación visual hace que sea inmediatamente obvio qué parte de la ficha estás examinando. Por ejemplo, al depurar un flujo de autenticación, puede verificar rápidamente si el reclamo exp está configurado correctamente o si el iss coincide con el emisor esperado. Esta decodificación en tiempo real elimina la necesidad de decodificar manualmente cadenas Base64Url, lo que ahorra a los desarrolladores un tiempo significativo durante el desarrollo y las pruebas.

Codificación Base64Url explicada

Cada sección de un JWT se codifica individualmente mediante codificación Base64Url (RFC 4648). Base64Url es una modificación del estándar Base64 que reemplaza el carácter + por -, carácter / con _, y elimina cualquier carácter de relleno final =.

Este formato hace que sea seguro incluir JWT en URL sin codificación porcentual, pero es importante recordar que Base64Url **no es cifrado**. Cualquiera que obtenga un JWT puede decodificar el encabezado y la carga útil al instante utilizando herramientas estándar. Los datos confidenciales no deben almacenarse en la carga útil a menos que estén cifrados (por ejemplo, utilizando JWE). El depurador JWT decodifica automáticamente estas cadenas Base64Url y presenta el JSON en una vista formateada y legible. Esto es particularmente útil al depurar tokens de proveedores de identidad de terceros, ya que puede inspeccionar instantáneamente las reclamaciones sin decodificar manualmente cada segmento. La herramienta también resalta cualquier cadena Base64Url con formato incorrecto, lo que le ayuda a detectar errores de codificación en las primeras etapas de su proceso de desarrollo.

Integridad de tokens y firmas digitales

El valor de seguridad crítico de un JWT es su firma digital. Cuando un servidor recibe un token, vuelve a calcular la firma utilizando el encabezado, la carga útil y su clave secreta. Si la firma calculada coincide con la firma adjunta al token, el servidor sabe que el token es auténtico y no ha sido alterado. Si un cliente modifica incluso un solo byte de la carga útil (como permisos de usuario o campos de correo electrónico), las firmas no coincidirán, lo que provocará que el servidor rechace el token. El depurador JWT proporciona una función de verificación de firma que le permite probar esta verificación de integridad localmente. Al ingresar el token y la clave secreta (o clave pública para RS256), la herramienta calcula la firma esperada y la compara con la del token. Esto es invaluable para depurar problemas de autenticación, ya que puede determinar si el problema radica en el contenido del token, la clave de firma o la lógica de verificación del lado del servidor.

Decodificación segura y privada

Nuestro depurador JWT en línea se ejecuta 100% en el lado del cliente utilizando JavaScript local dentro de su navegador. No se cargan entradas de tokens, encabezados ni secretos a servidores remotos. Esto garantiza la total privacidad de los datos, lo que le permite decodificar de forma segura tokens de autenticación durante las pruebas y el desarrollo. Ya sea que esté trabajando con tokens de producción que contienen ID de usuario confidenciales o probando tokens con lógica empresarial confidencial, puede confiar en que todo el procesamiento permanece dentro de su máquina. La herramienta no requiere ninguna solicitud de red, lo que la hace ideal para entornos de desarrollo fuera de línea o sistemas aislados. Esta arquitectura del lado del cliente también significa que no hay latencia al decodificar tokens, lo que proporciona retroalimentación instantánea a medida que pega o escribe cadenas de tokens. Para los equipos preocupados por la soberanía de los datos y el cumplimiento de regulaciones como GDPR o HIPAA, JWT Debugger ofrece una solución segura y transparente para el análisis de tokens sin exposición de datos de terceros.

Casos de uso prácticos y consejos avanzados

El JWT Debugger es indispensable para una amplia gama de escenarios de desarrollo. Al integrarse con proveedores de OAuth 2.0 como Google, Facebook o Auth0, los desarrolladores a menudo necesitan inspeccionar los reclamos dentro de los tokens de acceso para comprender los roles y permisos de los usuarios. El análisis codificado por colores de la herramienta facilita la diferenciación entre afirmaciones estándar (como sub, aud y iat) y reclamos personalizados específicos para su aplicación. Además, al depurar errores de autenticación de API, puede verificar rápidamente si la firma del token es válida mediante la función de verificación incorporada. Para usuarios avanzados, la herramienta admite algoritmos simétricos (HS256, HS384, HS512) y asimétricos (RS256, RS384, RS512, ES256, ES384, ES512), lo que le permite probar tokens firmados con diferentes métodos criptográficos. Recuerde que la clave secreta o clave pública nunca se envía a través de la red; toda la verificación se realiza localmente en su navegador, preservando la seguridad. Finalmente, JWT Debugger puede ayudarlo a aprender la estructura de JWT experimentando con diferentes cargas útiles y viendo cómo cambia la firma, lo que lo convierte en un excelente recurso educativo para desarrolladores nuevos en la autenticación basada en tokens.

Preguntas Frecuentes

¿Cómo decodifico un token JWT?

Para decodificar un token web JSON (JWT), divida el token en tres partes separadas por puntos (encabezado, carga útil y firma). Luego, decodifique las partes Encabezado y Carga útil utilizando un decodificador Base64Url, que genera cadenas JSON formateadas y legibles por humanos. La parte de la firma se utiliza para la verificación de autenticidad.

¿Es seguro pegar mi JWT en línea?

Sí, si se decodifica completamente en el lado del cliente. Muchas empresas de servicios públicos en línea envían tokens a servidores backend, lo que genera riesgos de seguridad. En say.tools, JWT Debugger se ejecuta al 100% en su navegador utilizando JavaScript local. Nunca se cargan ni envían valores de token ni claves secretas a través de Internet.

¿Qué son el encabezado, la carga útil y la firma en JWT?

El encabezado define los metadatos del token, incluido el algoritmo de firma (por ejemplo, HS256). La carga útil contiene los reclamos (los datos del usuario y los atributos del token, como el tiempo de vencimiento). La firma es un hash calculado criptográficamente del encabezado, la carga útil y una clave secreta, que protege la integridad del token.

¿Alguien puede leer el contenido de un JWT?

Sí. Los JWT estándar están firmados pero no cifrados. El encabezado y la carga útil están codificados en Base64Url, que es fácilmente reversible. Por este motivo, nunca debe colocar credenciales o contraseñas confidenciales dentro de cargas útiles JWT estándar.

Inicio