Toolram
📖 Glosario técnico

¿Qué es JWT (JSON Web Token)?

Respuesta corta: JWT es un estándar abierto (RFC 7519) para representar afirmaciones (claims) entre dos partes como un objeto JSON firmado, codificado en Base64.

Explicación detallada

Un JWT consta de 3 partes separadas por puntos: Header (algoritmo + tipo), Payload (claims/datos) y Signature (firma criptográfica). Cada parte está codificada en Base64Url. Se usa principalmente para autenticación stateless: el servidor genera un JWT al login, lo firma, y el cliente lo manda en cada request. El servidor valida la firma sin necesidad de consultar base de datos.

Ejemplo

eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0In0.dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk

Casos de uso comunes

  • Autenticación de usuarios en APIs
  • Single Sign-On (SSO)
  • Tokens de recuperación de contraseña
  • API keys con expiración
  • Comunicación entre microservicios

Preguntas frecuentes

¿JWT es seguro?

Sí, si se usa correctamente: HTTPS, algoritmo fuerte (HS256/RS256), expiración corta, validación de signature. Su debilidad principal es revocación: una vez emitido, vale hasta que expira.

¿Por qué no decodificar la firma me deja modificar el JWT?

Porque la firma se calcula con una clave secreta. Si modificás el payload, la firma deja de coincidir y el servidor rechaza el token.

¿Dónde guardar JWT en el cliente?

Mejor en cookie HttpOnly Secure SameSite=Strict (no accesible por JS, protegido contra XSS). LocalStorage es vulnerable a XSS.

Artículos y herramientas relacionadas