Decodificador de Token JWT
Decodifique tokens JWT (JSON Web Token) diretamente no navegador. Visualize o header, payload e datas de expiração. Processamento 100% local, nenhum token é enviado para servidor.

Esta ferramenta apenas decodifica o JWT, não valida a assinatura.
Evite colar tokens reais de produção, tokens com dados sensíveis ou credenciais ativas. O processamento é local no navegador; nenhum dado é enviado para servidor.
Gostou? Mostre pra todo mundo
Gere um card bonito com a marca do ValorFinal para postar nos Stories ou mandar no WhatsApp. Nada que você digitou aparece no card.
O token é separado nos três trechos entre pontos. O cabeçalho e o payload são decodificados de Base64URL para JSON e exibidos como estão; os campos de tempo (exp, iat e nbf) são lidos como segundos, conforme o RFC 7519. A terceira parte, a assinatura, não é conferida: decodificar não é validar.
Como funciona este decodificador de JWT
Base64URL é codificação, não criptografia. Qualquer pessoa que tenha o token consegue ler o payload, inclusive quem o forjou. É por isso que a conclusão desta página é sempre sobre as DATAS declaradas no token, e nunca sobre autenticidade: para saber se o conteúdo é confiável, o seu servidor precisa recalcular a assinatura com a chave do emissor (segredo compartilhado em HS256, chave pública em RS256 e ES256).
As três claims de tempo do RFC 7519 são NumericDate, ou seja, um número de segundos desde 1970-01-01T00:00:00Z. exp é o instante a partir do qual o token deve ser recusado, nbf é o instante antes do qual ele ainda não vale, e iat registra quando foi emitido. Valor fora desse padrão (texto, número negativo ou um número grande demais para ser segundos, sinal de que o emissor usou milissegundos) vira aviso e fica de fora da conclusão, em vez de ser ignorado em silêncio.
O token não é guardado, não vai para servidor nenhum e não aparece em histórico: a leitura acontece na memória da aba. Ainda assim, prefira tokens de desenvolvimento. Para conferir codificações relacionadas, veja a calculadora Base64 e as ferramentas DevOps.
Fórmula
JWT = base64url(header) + "." + base64url(payload) + "." + assinatura
expirado quando agora > exp · ainda não vale quando agora < nbf
agora e as claims de tempo em SEGUNDOS desde 1970-01-01T00:00:00Z
Base: RFC 7519 (JSON Web Token) e RFC 7515 (JSON Web Signature). Leitura local no navegador, sem envio do token.
Limitações
- Não valida a assinatura. Um token adulterado, com a assinatura trocada ou com
alg: none, é decodificado normalmente. Nada aqui prova autenticidade. - A conclusão de prazo usa o relógio do seu computador. Relógio desacertado muda o resultado, e servidores normalmente aceitam alguns segundos de tolerância que esta página não aplica.
- Não confere emissor (
iss), destinatário (aud), escopo nem revogação: um token dentro do prazo pode já ter sido invalidado no servidor. - Trata apenas JWS compacto (três partes). Token criptografado (JWE, com cinco partes) não é decodificado.
Coloque a calculadora de JWT Decoder no seu site, de graça
Tem site, blog ou loja virtual? Esta calculadora tem uma versão para incorporar: você copia um código e cola no seu HTML. Sem cadastro, sem mensalidade e sem limite de acessos, e o cálculo acompanha a regra vigente sozinho.
calculadora de JWT Decoder para sitever todas as calculadoras para site
Calculadoras relacionadas
Guias sobre este tema
O que é JSON
Entenda o que é JSON, os tipos de dados (objeto, array, string, número, boolean e null), a diferença entre JSON válido e objeto JavaScript, os erros de sintaxe mais comuns e por que validar antes de usar em uma API.
O que é ARN AWS
Entenda o que é um ARN na AWS, como interpretar partition, service, region, account ID e resource, com exemplos de S3, IAM, Lambda, CloudWatch e KMS, e os cuidados ao copiar ARNs.
Como criar senha forte
Aprenda o que torna uma senha forte, por que o tamanho costuma importar mais que a complexidade confusa, o que é entropia, quando usar frase-senha e como evitar padrões fracos e a reutilização de senhas.
Cálculo auditável, com fórmula e fontes transparentes
Atualizado em . Fontes: RFC 7519 / IETF / MDN Web Docs.
Processamento local: esta ferramenta roda no seu navegador e nada é enviado a servidores automaticamente.
Referências técnicas
- RFC 7519 - JSON Web Token (JWT)Técnica
- RFC 7515 - JSON Web Signature (JWS)Técnica
- RFC 7518 - JSON Web Algorithms (JWA)Técnica
- RFC 4648 - The Base16, Base32, and Base64 Data EncodingsTécnica
- MDN Web Docs - atob()Técnica
- RFC 7519, seção 2 (NumericDate)Técnica
Links externos para o que foi consultado na construção desta página, com a natureza de cada fonte identificada. O conteúdo delas pode mudar sem aviso; em caso de divergência, vale sempre a fonte primária.
Incorpore esta calculadora no seu site (grátis)
Copie e cole o código no seu site. A calculadora se atualiza sozinha. O crédito ao ValorFinal vem junto do código e a gente agradece quem mantém, mas ele é opcional: pode remover sem perder o widget. O link sai com rel="nofollow", ou seja, não transfere autoridade de busca para a gente.
Perguntas frequentes
O que é um JWT (JSON Web Token)?
JWT (JSON Web Token) é um padrão aberto (RFC 7519) para transmitir informações de forma compacta e segura entre partes como um objeto JSON. É composto por três partes separadas por pontos: Header (cabeçalho com algoritmo e tipo), Payload (dados/claims) e Signature (assinatura). É amplamente usado para autenticação e autorização em APIs.
Esta ferramenta valida a assinatura do JWT?
Não. Esta ferramenta apenas decodifica o header e o payload do JWT, não valida a assinatura. Para validar a assinatura, seria necessário ter a chave secreta (para HMAC) ou a chave pública (para RSA/ECDSA) usada pelo servidor emissor. Nunca confie em um JWT apenas porque ele pode ser decodificado, sempre valide a assinatura no servidor.
É seguro colar meu JWT nesta ferramenta?
O processamento é 100% local no navegador, nenhum token é enviado para servidores. Porém, recomendamos evitar colar tokens de produção ativos, especialmente tokens com dados sensíveis, credenciais ativas ou tokens de longa duração. Prefira testar com tokens de desenvolvimento ou tokens já expirados.
O que significam os campos exp, iat e nbf no JWT?
São claims de tempo padronizadas pelo RFC 7519: exp (Expiration Time) define quando o token expira e não deve mais ser aceito; iat (Issued At) indica quando o token foi emitido; nbf (Not Before) indica a partir de quando o token pode ser usado. Todos são representados como NumericDate, ou seja, segundos desde 1970-01-01T00:00:00Z. Um token com nbf no futuro ainda não vale, mesmo que o exp esteja longe: a página trata esse caso como token que ainda não entrou em vigor, e não como token dentro do prazo.
Por que meu token mostra o ano 58671 na data de expiração?
Porque o valor foi gravado em milissegundos, e o RFC 7519 exige segundos. É o erro clássico de usar Date.now() em JavaScript sem dividir por 1000: 1.767.225.600.000 segundos dá um ano de cinco dígitos. Isso é um defeito de quem emitiu o token, não da sua leitura. Quando o valor passa de 100 bilhões (que já seria o ano 5138), esta página avisa que o campo provavelmente está em milissegundos, mostra a data na leitura correta e não conclui nada sobre o prazo com esse campo, em vez de anunciar o token como válido por mais 56 mil anos.
Decodificar o token é a mesma coisa que validar o token?
Não, e confundir as duas coisas é uma das causas mais comuns de falha de autorização. Decodificar é desfazer o Base64URL, que é codificação e não criptografia: qualquer pessoa com o token consegue ler o payload, inclusive quem inventou o conteúdo. Validar é recalcular a assinatura com a chave do emissor e conferir se bate, e isso só o servidor que tem a chave consegue fazer. Esta página só decodifica. Quando ela diz que as datas estão dentro do prazo, isso significa apenas que exp e nbf estão coerentes com o relógio, sem nenhuma afirmação sobre autenticidade.
Quais algoritmos de assinatura JWT existem?
Os principais são: HS256/HS384/HS512 (HMAC com SHA-2, chave simétrica compartilhada), RS256/RS384/RS512 (RSA com SHA-2, par de chaves pública/privada), ES256/ES384/ES512 (ECDSA, criptografia de curva elíptica) e PS256/PS384/PS512 (RSA-PSS). O algoritmo 'none' não usa assinatura e deve ser rejeitado por servidores em produção.
O que é Base64URL, diferente de Base64 normal?
Base64URL é uma variante do Base64 que substitui '+' por '-' e '/' por '_', e omite o padding '='. Essa variante é necessária porque '+', '/' e '=' têm significados especiais em URLs e parâmetros de query string. O JWT usa Base64URL para codificar o header e o payload, tornando o token seguro para uso em URLs.