Decodificador JWT
Decodifica e inspecciona JSON Web Tokens al instante — visualiza header, payload, verifica firmas HMAC y genera código JWT en PHP, JavaScript, Python y Java.
Actualizado mayo de 2026
Revisado por Rafael Duarte
Paste a JWT token on the left to decode it
1const jwt = require('jsonwebtoken');
2
3const secretKey = 'your-256-bit-secret';
4
5const payload = {
6 sub: '1234567890',
7 name: 'John Doe',
8 iat: Math.floor(Date.now() / 1000)
9};
10
11const token = jwt.sign(payload, secretKey, { algorithm: 'HS256' });
12console.log(token);
13
14// To verify:
15const decoded = jwt.verify(token, secretKey, { algorithms: ['HS256'] });
16console.log(decoded);Cómo decodificar un JWT
Decodifica, verifica la firma y genera código en segundos
1. Pega el token
Las tres partes se colorean al instante — header en rosa, payload en morado, firma en cian.
2. Revisa las claims
`iat`, `exp` y `nbf` se convierten automáticamente a fechas legibles — detecta un token vencido de un vistazo.
3. Verifica la firma
Para HS256/384/512, ingresa la clave secreta y recibe una insignia verde o roja al instante.
Qué hace este decodificador JWT
Un debugger JWT completo, no solo un visor de payload
Decodificación instantánea
Header, payload y firma resaltados por color, sin necesitar ninguna clave para leerlos.
Timestamps legibles
exp, iat y nbf se convierten a fecha ISO automáticamente, sin calcular Unix a mano.
Verificación HMAC en el navegador
HS256, HS384 y HS512 se verifican localmente con tu clave secreta, vía Web Crypto API.
Generador de código
Snippets listos en JavaScript, PHP, Python y Java para firmar tokens en tu propio proyecto.
Plantillas HMAC y RSA
El generador cubre HS256/384/512 con clave secreta y RS256/384/512 con par de claves pública/privada.
Atajo de teclado
Presiona Shift+Enter en cualquier parte de la página para copiar el payload sin tocar el mouse.
Ejemplos de decodificación
Qué esperar en algunos casos reales
Cuándo vas a usar esta herramienta
Los escenarios más comunes entre quienes trabajan con JWT
Depurar un 401 Unauthorized
Revisa exp, aud y el algoritmo antes de tocar una sola línea de código.
Auditoría de seguridad
Confirma que ningún dato sensible se está filtrando en las claims del payload.
Pruebas de integración
Verifica claims correctas, TTL (exp menos iat) y algoritmo antes de escribir los tests.
Verificación de firma entre servicios
Confirma que un token fue firmado con el secreto esperado antes de aceptarlo entre microservicios.
Aprender la estructura de un JWT
Vista dividida y coloreada de las tres partes, sin necesidad de leer la RFC primero.
Generar código de firma
Snippets listos evitan buscar el método correcto en la documentación de cada librería.
Errores comunes con JWT
Confundir decodificar con verificar
Decodificar solo lee el payload sin comprobar la firma. Un token puede decodificarse perfecto y aun así estar falsificado.
Guardar el JWT en localStorage
Cualquier JavaScript que corra en la página puede leerlo — una vulnerabilidad XSS roba todos los tokens activos.
No validar la claim `exp`
Un token robado queda válido indefinidamente. 15 minutos es la buena práctica de 2026, combinado con un refresh token.
Meter datos sensibles en el payload
Es Base64URL, no cifrado. Nunca pongas contraseña, número de tarjeta o datos de identidad en un payload JWT.
Aceptar `alg: none` en producción
Un token con alg: none no tiene firma alguna. Las librerías modernas lo rechazan por defecto, pero vale auditar validaciones JWT manuales escritas antes de 2020.
Esperar verificar RS256 solo con el token
Los algoritmos asimétricos (RS/ES) necesitan la clave pública para verificar — el navegador no puede obtenerla por sí solo a partir del token.
Por qué usar este decodificador JWT
Más allá de la decodificación básica, verifica firmas HMAC directamente en tu navegador y genera código listo en cuatro lenguajes — un debugger completo, no solo un visor de payload.
Todo corre localmente vía Web Crypto API. Tu token y tu clave secreta nunca salen del dispositivo, ni siquiera cuando verificas una firma.
Es gratis, sin registro y sin límite de tokens — pega los que necesites. Shift+Enter copia el payload decodificado directo al portapapeles, sin soltar el teclado.
Preguntas frecuentes
El payload solo está codificado en Base64URL, no cifrado. Cualquiera que tenga el string del token puede decodificarlo y leerlo sin clave. La firma solo prueba quién lo emitió — no oculta el contenido.
Referencias
La referencia canónica de JWT y debugger interactivo, mantenido por Auth0.
La especificación oficial que define el formato JWT, las claims y las reglas de procesamiento.
Guía práctica sobre estructura, firma y patrones de uso de JWT.
Artículo relacionado
OAuth 2.0 explicado sem complicação
Herramientas relacionadas
- Generador Bcrypt Desarrollador Generador de hash bcrypt gratuito — 100% lado cliente. Benchmark del factor de coste en tiempo real, parser del hash y snippets para Node.js, Python, PHP, Go.
- Calculadora CHMOD Desarrollador Calculadora chmod visual con avisos de seguridad. Establece permisos de lectura/escritura/ejecución y obtén salida octal y simbólica al instante. Incluye umask, SUID/SGID/sticky bit y presets.
- Simulador Máquina Enigma Desarrollador Simula la máquina de cifrado electromecánica de la Segunda Guerra con flujo de señal eléctrica en tiempo real, rotores configurables y cuadro de conexiones. Sin registro.
- Generador de Tabla ASCII y Markdown Desarrollador Generador de tablas ASCII gratuito — crea tablas de texto en estilo MySQL, Markdown, Unicode, redondeado, doble línea y reStructuredText. Pega CSV o escribe...
- Decodificador Base64 Desarrollador Decodifica strings Base64 a texto plano al instante en tu navegador. Compatible con UTF-8, entrada multilínea y muestra el tamaño del payload.