Garantia de privacidade: Esta ferramenta roda inteiramente no seu navegador. Nenhuma requisicao de rede e feita. Seus dados de token permanecem no seu dispositivo.

O Que e um JSON Web Token (JWT)?

Um JSON Web Token (JWT) e um padrao aberto (RFC 7519) para transmitir informacoes entre partes de forma segura como um objeto JSON. JWTs sao comumente usados para autenticacao e troca de informacoes em APIs web. O token e assinado digitalmente, para que voce possa verificar sua integridade — mas por padrao o payload e apenas codificado em Base64, nao criptografado.

Um JWT consiste em tres partes separadas por pontos: Header (algoritmo e tipo do token), Payload (claims/dados) e Signature (usada para verificar que o token nao foi adulterado).

Claims Padrao do JWT

  • iss (Issuer) — Quem criou e assinou o token
  • sub (Subject) — Sobre quem e o token (geralmente ID do usuario)
  • aud (Audience) — Para quem o token e destinado
  • exp (Expiration Time) — Quando o token expira (timestamp Unix)
  • iat (Issued At) — Quando o token foi emitido
  • nbf (Not Before) — O token nao e valido antes deste horario
  • jti (JWT ID) — Identificador unico para o token

Dicas de Seguranca JWT

  • Nunca armazene dados sensiveis em payloads JWT — o payload e apenas codificado em Base64, nao criptografado. Qualquer pessoa pode decodifica-lo.
  • Sempre verifique a assinatura no lado do servidor — um JWT decodificado nao significa que e valido. Sempre verifique a assinatura contra sua chave secreta.
  • Mantenha tempos de expiracao curtos — use refresh tokens para sessoes longas. Access tokens de curta duracao (15-60 min) limitam a exposicao.
  • Evite o algoritmo "none" — algumas implementacoes vulneraveis aceitam tokens nao assinados. Sempre imponha um algoritmo especifico.
  • Use apenas HTTPS — transmita JWTs apenas por conexoes criptografadas para evitar interceptacao.

Perguntas Frequentes sobre JWT

E seguro decodificar um token JWT no navegador?

Sim, decodificar um JWT e sempre seguro porque o header e o payload sao apenas codificados em Base64URL, nao criptografados. Qualquer pessoa que tenha o token pode ler seu conteudo — isso e intencional. Esta ferramenta decodifica seu JWT inteiramente no seu navegador; seu token nunca e enviado para nenhum servidor. Por isso voce nunca deve armazenar senhas, chaves privadas ou segredos sensiveis em um payload JWT.

Posso verificar a assinatura de um JWT sem a chave secreta?

Nao. A verificacao da assinatura JWT requer a chave secreta (para algoritmos HMAC como HS256) ou a chave publica (para RS256, ES256). Voce sempre pode decodificar o header e o payload sem uma chave, mas nao pode verificar se o token foi adulterado. A verificacao da assinatura deve ser feita no lado do servidor. Esta ferramenta mostra o conteudo decodificado do token para inspecao, nao a validade da assinatura.

Por que meu token JWT esta expirando inesperadamente?

Tokens JWT contem uma claim exp — um timestamp Unix de quando o token expira. Se o horario atual exceder esse valor, o token e rejeitado. Isso e intencional por seguranca. Verifique o valor exp aqui para entender quando seu token expira. Se os tokens expiram muito rapido, verifique a diferenca de relogio entre seu servidor e cliente — mesmo poucos minutos de diferenca causam problemas. Use NTP para manter os relogios dos servidores sincronizados.

Qual algoritmo devo usar para assinar tokens JWT?

Para a maioria das aplicacoes, RS256 (RSA + SHA-256) e recomendado porque usa chaves assimetricas — voce assina com uma chave privada e verifica com uma chave publica, podendo compartilhar a chave publica com seguranca. HS256 (HMAC + SHA-256) e mais simples, mas requer compartilhar a chave secreta com cada servico que verifica tokens. Nunca use o algoritmo "none" — algumas implementacoes vulneraveis aceitam tokens nao assinados, o que e uma falha de seguranca critica.

Ferramentas Relacionadas para Desenvolvedores