Decodificador y Codificador JWT: Inspecciona Tokens JSON Web al Instante
Decodifica cualquier token JWT al instante en tu navegador o genera el tuyo propio con el codificador integrado. Visualiza el encabezado, carga útil, todas las reclamaciones con descripciones legibles, estado de expiración y cuenta regresiva - sin inicio de sesión, sin cuenta, tus datos nunca salen de tu navegador.
Última actualización: Abril 2026
100% Gratis y Privado
Todo el procesamiento ocurre en su navegador. No subimos datos al servidor. Sin registros ni pagos ocultos. Herramientas gratuitas y seguras.
¿Qué es un Token JWT?
Un JWT (JSON Web Token) es un formato compacto, definido en RFC 7519, usado para transmitir información segura entre partes como un objeto JSON firmado. Son el estándar para la autenticación sin estado: el servidor codifica la identidad del usuario en el token y lo firma, permitiendo que las solicitudes posteriores se verifiquen sin buscar en la base de datos.
Un JWT consta de tres secciones codificadas en Base64url separadas por puntos (.):
Encabezado (Header)
JWT) y el algoritmo (alg), como HS256. JSON codificado en Base64url.Carga útil (Payload)
sub, roles) y metadatos (exp). Está codificado, no encriptado - cualquiera puede leerlo. Nunca guardes contraseñas o datos sensibles aquí.Firma (Signature)
Los JWTs se usan ampliamente en APIs REST, microservicios y aplicaciones móviles. Para encriptar la carga útil, usa JWE en lugar del JWT estándar.
Cómo Decodificar un Token JWT
- Copia tu token JWT desde tu aplicación, herramientas de desarrollo web o API
- Pégalo en el campo superior - debe comenzar con
eyJ - El encabezado y carga útil decodificados aparecen al instante.
- Comprueba el Estado del Token para ver si es válido, si caducó, y el temporizador en vivo
- Revisa el panel de Auditoría de Seguridad para detectar vulnerabilidades en el algoritmo o tiempo de expiración
- Usa la tabla de Detalle de Claims para interpretar los campos estándar con su definición de RFC
- Expande la sección de Código para copiar la validación backend en JS, Python, Go, Java o cURL
Referencia de Claims JWT: sub, iss, aud, exp, iat, nbf, jti
- sub - Subject. El sujeto sobre el cual trata el token (ej. ID de usuario). (RFC 7519 §4.1.2)
- iss - Issuer. Identifica el origen o emisor del token. (RFC 7519 §4.1.1)
- aud - Audience. Destinatarios previstos del token. (RFC 7519 §4.1.3)
- exp - Expiration Time. Fecha de expiración (Timestamp Unix). (RFC 7519 §4.1.4)
- iat - Issued At. Momento de emisión del token. (RFC 7519 §4.1.6)
- nbf - Not Before. Momento a partir del cual el token será válido. (RFC 7519 §4.1.5)
- jti - JWT ID. Identificador único para este token. Previene ataques de replicación. (RFC 7519 §4.1.7)
JWT vs Tokens de Sesión: ¿Cuándo usarlos?
| JWT (Stateless) | Session Token (Stateful) | |
|---|---|---|
| Almacenamiento en servidor | No | Sí (Base de datos / RedIs) |
| Funciona con microservicios | Sí | Requiere base de datos compartida |
| Revocación de Token | Difícil (requiere blocklist) | Fácil (borrar base de datos) |
| Tamaño del token | Más grande | Pequeño (solo ID oscuro) |
| Mejor para | APIs, apps móviles, microservicios | Aplicaciones web tradicionales |
| Seguridad ante compromiso | Válido hasta fecha exp | Se puede invalidar al instante |
Usa JWT cuando: Construyas APIs REST sin estado, backends para aplicaciones móviles o comunicación entre microservicios.
Usa sesiones cuando: La revocación inmediata es requerida o trates aplicaciones web tradicionales de alto riesgo.
Algoritmos JWT Explicados: HS256 vs RS256 vs ES256
| Algoritmo | Tipo | Clave | Uso recomendado |
|---|---|---|---|
| HS256 | HMAC-SHA256 | Secreto compartido | Apps un servidor, servicios internos |
| RS256 | RSA-SHA256 | Pública / Privada | Múltiples servicios |
| ES256 | ECDSA P-256 | Curva elíptica | Rendimiento, tecnologías móviles |
| PS256 | RSA-PSS SHA256 | Pública / Privada | Alta seguridad |
| none | Ninguno | Ninguno | ⚠️ Nunca usar - vulnerabilidad grave |
RS256 es el más recomendado para sistemas de producción descentralizados porque no necesitas compartir la clave privada.
Mejores Prácticas de Seguridad JWT (2026)
- Siempre valida la firma criptográfica antes de leer los datos
- Emite tokens con poca vida de expiración (15 mins - 1 hr)
- Nunca almacenes información sensible. ¡No lo olvides, la carga útil es visible!
- Obliga conexiones HTTPS (TLS) al mover los tokens en la web
- Usa HttpOnly cookies en el navegador para mitigar Cross-Site Scripting (XSS)
- Implementa un flujo de refresh token para mitigar robos de token de acceso
- Valida adecuadamente los claims aud (Audiencia) e iss (Emisor)
- NUNCA permitas el algoritmo alg: none en tu software criptográfico
- Proporciona una block-list para forzar revocación de usuarios comprometidos
Cómo Decodificar un JWT en tu Código
Estos ejemplos decodifican la estructura sintáctica de un JSON de JWT y lo visualizan.
JavaScript (Browser / Node.js)
// Decode without verification (read-only, same as this tool)
function decodeJWT(token) {
const [header, payload] = token.split('.');
const decode = str => JSON.parse(atob(str.replace(/-/g, '+').replace(/_/g, '/')));
return { header: decode(header), payload: decode(payload) };
}
const { header, payload } = decodeJWT(yourToken);
console.log(payload.exp); // expiry timestampPython
import base64, json
def decode_jwt_payload(token):
payload = token.split('.')[1]
# Add padding
payload += '=' * (4 - len(payload) % 4)
return json.loads(base64.urlsafe_b64decode(payload))
claims = decode_jwt_payload(your_token)
print(claims['exp']) # expiry timestampGo
import (
"encoding/base64"
"encoding/json"
"strings"
)
func decodeJWTPayload(token string) (map[string]interface{}, error) {
parts := strings.Split(token, ".")
payload, _ := base64.RawURLEncoding.DecodeString(parts[1])
var claims map[string]interface{}
json.Unmarshal(payload, &claims)
return claims, nil
}JWT vs Session: ¿Cuándo deberías usar un JWT?
Son ideales para arquitecturas completamente sin estado que dependen de un acceso descentralizado a recursos mediante API Gateway, microservicios y protocolos OAuth2/OIDC. No se recomienda JWT para manejar toda la sesión de una página web tradicional monolítica de alto nivel debido a los riesgos en el secuestro de token que no puede revocarse sin una capa de seguridad en base de datos externa.
Frequently Asked Questions
¿Qué es un token JWT?
Un JSON Web Token (JWT) es un medio compacto definido por IETF (RFC 7519) que transfiere información de forma confiable entre entes empleando objetos JSON firmados criptográficamente.
¿Cómo decodifico un token JWT?
Simplemente pégalo en el campo superior sin hacer clics. Es completamente ejecutado en JavaScript y nadie verá los tokens más allá de tu equipo o de tu navegador.
¿Puedo decodificar un JWT sin la clave / secret key?
Sí. Los caracteres de formato se dividen en base a puntos "." y se les retira la codificación base64. La parte sensible recae enteramente al contrastar la firma y prevenir su mutación artificial.
¿Es segura esta herramienta para probar mis JWT?
Perfectamente. Todo sucede estáticamente en el lado-cliente. Ninguna terminal web emite solicitudes Fetch o Axios exponiendo variables JSON o strings hacia servidores locales de everytool.
¿Cómo determina cuándo expira?
Utiliza un valor estandarizado numérico conocido como el claim "exp" que mide los segundos universales marcados con POSIX Unix Time e ilustra el tiempo regresivo exacto en vivo.
¿Qué es la diferencia entre "Codificar" y "Decodificar"?
Codificar compone el algoritmo Base64 URL con firmas artificiales formando secuencias alfanuméricas; Decodificar ejecuta secuencias asimétricas devolviendo los claims.
¿Por qué es tan peligroso el alg "none"?
Permite que atacantes sobreescriban propiedades completas como el perfil maestro en sistemas donde existe una débil e infame comprobación y se excluya totalmente la validación criptográfica.
¿Es un JWT carga útil cifrada/encriptada?
Absolutamente NO. El JWT solo utiliza base64 encoding (texto claro), debes confiar en protocolos de extensión alternativos como el ecosistema de clave pública-privada JSON Web Encryption (JWE).
¿Qué significa token aún no válido?
Se apoya sobre la etiqueta nbf (not before). Garantiza denegar por diseño interacciones al portador si el acceso del servidor sobrepasa y no encuentra el umbral cronológico futuro pactado.
¿Cómo usar iat y exp en JWT?
La iat marca el comienzo temporal de existencia al generar el JWT, y exp finaliza estrictamente este umbral. Es decir: validez total temporal = (exp - iat).
¿Puedo utilizar un JWT en HTTP normal?
Esto facilitaría inmediatamente los ataques asimétricos Man-InThe-Middle e interceptaciones. SIEMPRE debes proteger redes TCP con encriptaciones SSL/TLS y cabeceras estrictas HTTPS.
¿En qué difieren JWE de JWT?
JWE transforma a la fuerza todo valor interior usando protocolos modernos de llave privada y lo revuelve todo de forma binaria-privada para aislar la mirada de un tercero o del cliente JavaScript.
¿Cuáles son los claims principales u oficiales del JSON?
Oficialmente IANA reconoce componentes fijos como iss (Emisor), sub (El Sujeto a proteger), aud (Audiencia en API), fechas en exp (Expiración) e iat (Cuándo fue creado).
Related Tools
Imagen a Base64
Codifica imagen a cadena Base64 o decodifica Base64 a imagen al instante. Rápido y gratuito.
Decodificador URL
Codifica URLs con facilidad, caracteres complejos no generaran errores durante traslados a las API.
Codificador Base64
Convierte cadenas extensas base64 cifradas en textos humanos sencillos, todo libre de instalación.
Formateador JSON
Formatea, valida y minifica JSON online. Embellecedor inteligente con rastreo lógico de coma final.
Convertidor de Código de Color
Transmuta colores entre HEX, RGB y HSL validando sintaxis de coloración digital al instante.
Contador de Palabras
Rastrea densidades claves para blogs con exactitud y presteza.