“¿Qué hay dentro de este token?”

Si alguna vez has implementado la autenticación, seguramente te habrás encontrado con esa misteriosa cadena que comienza con eyJhb.... Eso es un JWT (JSON Web Token).

Entendiendo JWT (JSON Web Token) y cómo depurarlo

“¿Está el ID de usuario incluido correctamente?” “¿Ya pasó el tiempo de expiración (exp)?”
Cuando surgen preguntas como estas, a menudo necesitas verificar rápidamente el contenido del token. Pero espera, ¿dónde piensas decodificar ese token?

No existe tal cosa como “datos que se pueden ver”

La cabecera (Header) y la carga útil (Payload) de un JWT simplemente se codifican utilizando Base64Url. No están cifrados, lo que significa que cualquiera puede leer su contenido.

Para verificar estos contenidos, muchos desarrolladores recurren a depuradores en línea. Pero, ¿qué pasa si ese token pertenece a un entorno de producción? Si envías un token sensible a un sitio malicioso o inseguro, te arriesgas a un secuestro de sesión inmediato.

“Solo quiero depurar, no correr riesgos”. Nuestro sitio fue creado específicamente para cumplir con ese deseo 100% razonable.

Depuración segura, directamente en tu navegador

El Depurador de JWT de DevToolKits analiza tu token completamente dentro de tu navegador.

Nunca se envían datos a un servidor. Incluso puedes comprobarlo tú mismo abriendo la pestaña de red de tu navegador. Incluso cuando haces clic en el botón, la herramienta permanece en “silencio”. Este silencio es la mayor tranquilidad que podemos brindarte.

Consejos de uso

  1. Pega el token que deseas depurar.
  2. Visualiza instantáneamente los apartados expandidos de “Header” y “Payload”.
  3. Verifica la firma (Verification) pegando la clave secreta o pública para comprobar la integridad si es necesario.

Conclusión

Los JWT son herramientas potentes, pero un paso en falso puede provocar un incidente de seguridad importante.
Verifica siempre tus tokens en un entorno seguro. Al adoptar mejores hábitos, podrás disfrutar de la creación de sistemas más robustos y seguros.

Preguntas frecuentes

¿Está cifrado el contenido de un JWT?

No. En un JWT firmado (JWS) habitual, la cabecera y la carga útil solo están codificadas en Base64Url, así que cualquiera puede leerlas con el Depurador de JWT. La firma sirve para detectar manipulaciones, no para ocultar datos. Nunca pongas información secreta (contraseñas, tarjetas) en el payload; si necesitas confidencialidad, usa cifrado (JWE).

¿Cómo compruebo si un token ha expirado?

Decodifica el token y revisa el campo exp (una marca de tiempo Unix). Si es anterior a la hora actual, el token ha expirado. El depurador muestra el payload con campos como exp, iat y nbf para que verifiques la validez de un vistazo.

¿Es seguro pegar un token de producción en un depurador en línea?

Solo si el procesamiento ocurre en tu navegador. El Depurador de JWT analiza todo localmente y no envía el token a ningún servidor, por lo que es seguro incluso para tokens sensibles. Evita las herramientas que envían el token a un backend.