O que é Decodificador de JWT?
Um JWT (JSON Web Token) é a forma padrão como as APIs web modernas representam claims de autenticação e autorização. É um token compacto e autocontido formado por três partes — um cabeçalho descrevendo o algoritmo de assinatura, um payload carregando as claims reais (como ID do usuário, papéis e expiração) e uma assinatura que permite ao servidor receptor verificar que o token não foi adulterado.
Este decodificador lê o cabeçalho e o payload instantaneamente para que você possa depurar problemas de autenticação, inspecionar quais claims uma API está realmente enviando, ou verificar quando um token expira — tudo isso sem precisar de um backend, uma ferramenta de linha de comando, ou colar tokens sensíveis em um servidor terceiro, já que tudo roda localmente no seu navegador.
Quando Usar Esta Calculadora
- Depurar por que uma API rejeita um token inspecionando suas claims e tempo de expiração
- Verificar o horário de expiração de um token durante uma investigação de suporte ou resposta a incidentes
- Verificar se um provedor de SSO ou OAuth está emitindo as claims que sua aplicação espera.
- Aprender como os JWTs são estruturados para entrevistas técnicas ou curso de segurança
- Inspecionar rapidamente um token copiado das ferramentas de desenvolvedor do navegador ou dos logs do servidor para entender seu conteúdo
- Comparar o algoritmo do cabeçalho entre tokens para depurar falhas de autenticação por incompatibilidade de algoritmo
Passos:
- Cole seu JWT na caixa de entrada, ou clique em "Carregar Exemplo" para testar um.
- O cabeçalho e o payload são decodificados automaticamente enquanto você digita.
- Revise claims como iss, sub, exp e iat em formato legível.
- Claims de timestamp (exp, iat, nbf) são convertidas automaticamente em datas legíveis.
Fórmula
JWT = base64Url(header) + "." + base64Url(payload) + "." + base64Url(signature)
Decodificação: divida por ".", decodifique em base64Url as duas primeiras partes, interprete como JSON.
Verificação (não realizada aqui): HMACSHA256(base64Url(header) + "." + base64Url(payload), secret) === signature
Casos de uso
- Depurar por que uma API rejeita um token, inspecionando suas claims
- Verificar o horário de expiração de um token durante uma investigação de suporte
- Confirmar que um provedor SSO ou OAuth está emitindo as claims esperadas
- Aprender como os JWTs são estruturados para entrevistas técnicas ou estudos
- Inspecionar rapidamente um token copiado das ferramentas de desenvolvedor do navegador ou dos logs do servidor
Benefícios Principais
- Decodifique qualquer JWT instantaneamente sem backend ou ferramenta de linha de comando
- Tudo roda no lado do cliente — os tokens nunca são enviados a um servidor
- Converte automaticamente as claims de timestamp em datas legíveis
- Gratuito, sem cadastro, funciona com qualquer JWT independentemente do algoritmo
Dicas Profissionais
- Sempre verifique 'exp' primeiro ao depurar um erro de "não autorizado" — um token expirado é a causa mais comum
- Compare o 'alg' do cabeçalho com o que seu backend espera para detectar bugs de incompatibilidade de algoritmo
- Nunca confie em um payload decodificado como prova de identidade sem verificar a assinatura no servidor
- Use tokens de curta duração com refresh tokens em vez de JWTs de longa duração para limitar a exposição em caso de vazamento
Erros Comuns a Evitar
- Assumir que um JWT decodificado é um JWT verificado — decodificar apenas lê o conteúdo, não confirma sua autenticidade
- Armazenar dados sensíveis (senhas, segredos) no payload, esquecendo que qualquer pessoa pode lê-lo
- Colar tokens de produção em decodificadores online não confiáveis
- Confundir 'exp' (expiração) com 'iat' (emitido em) ao depurar problemas de vida útil do token
Termos Chave Explicados
- Claim: Uma informação afirmada sobre um sujeito, como o ID de um usuário ou um papel
- Header (Cabeçalho): O primeiro segmento do JWT, especificando o algoritmo de assinatura e o tipo de token
- Payload: O segundo segmento do JWT, contendo as claims reais
- Signature (Assinatura): O terceiro segmento do JWT, usado para verificar que o token não foi alterado
Conceitos relacionados
- Gerador de hash:
- Gerador UUID:
- Codificador/decodificador Base64:
- Formatador JSON:
- Verificador de força de senha:
Exemplo
Um token que começa com eyJhbGciOiJIUzI1NiJ9 decodifica para um cabeçalho {"alg":"HS256","typ":"JWT"} — indicando que o token foi assinado com HMAC-SHA256.
Interpretação dos seus resultados
O decodificador divide o JWT nos dois separadores de ponto e decodifica os dois primeiros segmentos em Base64URL. O cabeçalho informa o algoritmo de assinatura (como HS256 ou RS256) e o tipo de token. O payload contém as reivindicações reais — identidade do usuário, permissões e carimbos de data/hora.
As reivindicações de data/hora (exp, iat, nbf) são convertidas automaticamente da era Unix em datas legíveis. Se 'exp' mostrar uma data no passado, o token expirou e a maioria dos servidores o rejeitará. A reivindicação 'sub' (assunto) normalmente contém o ID do usuário e 'iss' (emissor) identifica o servidor que criou o token.
Lembre-se: decodificar não é verificar. A seção de assinatura é exibida, mas não pode ser verificada sem a chave secreta ou pública. Um payload decodificado é apenas informativo — nunca o use como prova de identidade sem verificação de assinatura no servidor.

