JWT decoder

Lee header y payload JSON de un JWT sin enviarlo a servicios externos.

Consulta el encabezado y el payload de un JWT en tu navegador. Decodificar no verifica la firma ni demuestra que el token sea válido.

Tus datos se quedan aquíPUFFINMINT

Configura los datos

Configura los datos

Pega un JWT compacto de tres partes. Se decodifica el contenido: NO se verifica la firma y NO se autentica el token.

Resultado

Introduce los datos y ejecuta la herramienta. El resultado aparecerá aquí.

Los valores que introduces se quedan en esta página. Se borran al recargarla o cerrarla.

Contamos qué herramientas se utilizan más, sin incluir los valores introducidos ni el contenido de los archivos en las estadísticas. Privacidad

Cuándo utilizar un decodificador JWT

Sirve para depurar aplicaciones e integraciones y consultar los campos de un token. Un JWT firmado puede tener un payload legible: codificar en base64url no equivale a cifrar.

Decodificar el token paso a paso

  1. Pega solo el token, sin el prefijo Bearer.
  2. Pulsa Decodificar para consultar los dos objetos JSON.
  3. Compara los claims con lo que espera tu aplicación; para interpretar exp utiliza el conversor timestamp en segundos.

Cómo se leen el encabezado y el payload

El motor exige tres partes separadas por puntos. Convierte encabezado y payload de base64url a UTF-8, comprueba que sean objetos JSON y les da formato. No verifica la tercera parte; puede aceptar sintácticamente una firma vacía.

Interpretar los claims como datos sin verificar

El resultado contiene header y payload. Sus campos son afirmaciones del token y pueden haberse modificado. Una fecha exp legible no acredita autenticidad ni autorización.

Claims declarados en el payload
CampoSignificado general
subIdentificador del sujeto
expCaducidad declarada en segundos Unix
iss / audEmisor y destinatario previstos

Ejemplo con un token de demostración

Un token sin firma para entender el formato

Datos de entrada
eyJhbGciOiJub25lIn0.eyJzdWIiOiJkZW1vIiwiZXhwIjoxNzA0MDY3MjAwfQ.
Resultado
{"header":{"alg":"none"},"payload":{"sub":"demo","exp":1704067200}}

El ejemplo usa alg=none y firma vacía. Muestra sub=demo y exp=1704067200, que corresponde al 1 de enero de 2024 a las 00:00 UTC. El decodificador lo muestra sin decidir si ha caducado.

Límites y comprobaciones no realizadas

El límite es de 16.000 caracteres. No admite JWE cifrados de cinco partes ni payloads que no sean objetos JSON. Los valores permanecen en la página hasta recargarla y no se envían al servicio de conversión. El contenido se muestra como texto, sin ejecutar HTML de los claims.

Fuentes y documentación

Preguntas frecuentes

¿Un resultado legible permite autorizar el acceso?

No. La aplicación debe comprobar firma, algoritmo permitido, emisor, destinatario y restricciones temporales según su protocolo. Este decodificador no realiza esas comprobaciones.

¿Por qué no abre un token cifrado?

Un JWE requiere descifrado y las claves adecuadas. Esta herramienta solo lee el formato compacto de tres partes y no descifra tokens.

Favoritos