El JWT (JSON Web Token) es el estándar de la autenticación sin estado. Cada vez que inicias sesión en una app, tu navegador guarda un JWT. Pero leer uno requiere decodificarlo — y la mayoría de los decodificadores de JWT online envían tu token a un servidor de terceros.
TextForge decodifica el JWT en local, directamente en tu navegador, sin subir absolutamente nada a ningún servidor.
¿Qué es un JWT y por qué decodificarlo?
Un JWT es una cadena compacta de tres partes:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
La cabecera, el payload y la firma van codificados en Base64. El payload contiene los claims del usuario — user_id, email, roles, exp (momento de expiración). Depurar problemas de autenticación, comprobar la caducidad del token o verificar claims requiere decodificar ese payload.
La mayoría de los decodificadores de JWT online corren en un servidor remoto, lo que significa que tu token (que puede contener datos sensibles) sale de tu navegador. Si el token es una cookie de autenticación real, esto es un riesgo de seguridad.
Decodifica el JWT con TextForge
TextForge decodifica el JWT en local:
- Copia tu JWT desde las DevTools, una respuesta de API o tu cabecera de autenticación
- Pégalo en TextForge
- Selecciona Decodificar Base64 sobre la parte del payload
- El JSON decodificado aparece al instante en tu navegador, sin enviarse a ninguna parte
TextForge también incluye Forge Magic — al pegar un JWT, detecta automáticamente el payload en Base64 y te ofrece decodificarlo directamente, saltándote el paso a paso manual.
El token nunca sale de tu dispositivo. Toda la decodificación se ejecuta en tu pestaña del navegador.
Alternativa: la consola de las DevTools
Si no quieres instalar una extensión, puedes decodificar un JWT en la consola del navegador en segundos:
const jwt = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8U";
const [header, payload, sig] = jwt.split('.');
console.log(JSON.parse(atob(payload)));
Esto imprime el payload decodificado directamente. Cero peticiones externas, cero tiempo de preparación.
Cuándo NO decodificar un JWT online
- Nunca uses un decodificador de JWT público online (jwt.io, jwtdebugger.com, etc.) con tokens de producción que contengan datos reales de usuario, claves de API o información de roles. El token transita hacia su servidor.
- Si tu JWT incluye claims sensibles, decodifícalo solo en local (DevTools o TextForge).
- Si tu JWT está firmado con un secreto, decodificarlo muestra los claims pero NO verifica la firma. Solo el servidor emisor puede verificar que un JWT firmado es auténtico.
Preguntas frecuentes
¿Puedo desencriptar un JWT?
No. Decodificar no es lo mismo que desencriptar. Un JWT no está cifrado — está codificado en Base64. Cualquiera puede leer el payload decodificándolo. Si necesitas que el payload sea secreto, usarías JWE (JSON Web Encryption), no JWT.
¿Decodificar un JWT verifica que es auténtico?
No. Decodificar te muestra qué claims hay dentro, pero no verifica la firma. Solo el servidor que emitió el token puede verificar que es auténtico. Un JWT falso se decodifica igual de fácil que uno real.
¿Es seguro decodificar un JWT en la consola del navegador?
Sí. La consola es parte de tu navegador; no se envía nada al exterior. Es una de las formas más seguras de decodificar un JWT para depuración.
TextForge es gratis. Base64, ordenar, deduplicar, extraer, UUID y herramientas JSON incluidas — sin necesidad de cuenta.
Instalar TextForge — gratis