Decodificador JWT Online - Decode JSON Web Tokens

Decode and analyze JSON Web Tokens (JWT) instantly. Visualize header, payload, check expiration and understand the structure of your authentication tokens.

JWT Decoder

💡 Sobre JWT
  • Header: Contains the token type and signing algorithm
  • Payload: Contains the claims (user information and metadata)
  • Signature: Ensures token integrity (not validated here)
  • Decoding ≠ Validation: This tool only reads the token, it does not verify its authenticity

O que é JWT?

JWT (JSON Web Token) é um padrão aberto (RFC 7519) que define uma maneira compacta e autossuficiente para transmitir informações com segurança entre partes como um objeto JSON. É amplamente usado para autenticação e troca de informações em aplicações web modernas.

Estrutura de um JWT

Um JWT consiste em três partes separadas por pontos (.):

xxxxx.yyyyy.zzzzz

1. Header

Contém o tipo de token (JWT) e o algoritmo de assinatura (HS256, RS256, etc.)

2. Payload

Contém as claims (declarações) sobre o usuário e metadados adicionais

3. Signature

Garante que o token não foi alterado. Criada com o header, payload e uma chave secreta

Claims Comuns no Payload

Quando Usar JWT?

✅ Bom Para:

  • • APIs REST stateless
  • • Autenticação entre serviços
  • • Single Sign-On (SSO)
  • • Mobile apps
  • • Microservices

❌ Não Recomendado Para:

  • • Dados sensíveis (senhas, etc.)
  • • Tokens de longa duração
  • • Sessões complexas com estado
  • • Quando precisa revogar imediatamente

⚠️ Avisos de Segurança

IMPORTANTE:

  • Esta ferramenta NÃO valida assinaturas. Ela apenas decodifica o conteúdo.
  • Nunca compartilhe tokens JWT reais que contenham dados sensíveis ou de produção.
  • JWT não é criptografado, apenas codificado em Base64. Qualquer um pode decodificar.
  • Não armazene dados sensíveis no payload do JWT.
  • Sempre verifique a assinatura no servidor antes de confiar no token.
  • Use HTTPS sempre que transmitir JWTs.

Melhores Práticas

Exemplo de JWT

Token Completo:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvYW8gU2lsdmEiLCJpYXQiOjE1MTYyMzkwMjJ9.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

Header Decodificado:

{
  "alg": "HS256",
  "typ": "JWT"
}

Payload Decodificado:

{
  "sub": "1234567890",
  "name": "Joao Silva",
  "iat": 1516239022
}

Bibliotecas Recomendadas

  • Node.js: jsonwebtoken, jose
  • Python: PyJWT, python-jose
  • Java: jjwt, jose4j
  • PHP: firebase/php-jwt, lcobucci/jwt
  • .NET: System.IdentityModel.Tokens.Jwt
  • Go: golang-jwt/jwt

Perguntas Frequentes

JWT é criptografado?

Não por padrão. JWT usa codificação Base64, que pode ser facilmente decodificada. Para criptografia, use JWE (JSON Web Encryption).

Posso revogar um JWT?

JWT são stateless, então não há revogação nativa. Soluções incluem: usar times de expiração curtos, manter uma blacklist no servidor, ou usar tokens com ID único que você pode invalidar.

Onde devo armazenar JWT no navegador?

A opção mais segura é httpOnly cookies. localStorage é conveniente mas vulnerável a XSS. Evite sessionStorage para tokens de autenticação importantes.