O ecossistema Volade — Ferramenta Web

Codificador / decodificador JWT

Decodifique um JWT instantaneamente: cabeçalho, payload e assinatura exibidos em JSON indentado com os claims identificados, verificação da assinatura HS256 com um segredo ou RS256 / ES256 com uma chave pública PEM, codificação e assinatura de um novo token, conversão das expirações em datas legíveis. Gratuito, sem cadastro e 100 % local: seu token nunca sai do seu navegador.

6 modos de processamento0 byte enviado ao servidor∞ tokens, sem limite de tamanho
A ferramenta

Seu decodificador JWT online

Cole um token, um header, um payload ou uma string tirada de um cabeçalho Authorization: a decodificação se atualiza a cada tecla, sem botão « Converter ».

Codificador / decodificador JWT

Online Desenvolvimento, Código & Dados
Entrar
Atalhos: Ctrl+Enter calcular
Pronto.

                  

                  
A assinatura não é decifrada: ela é verificada com o segredo ou com a chave pública na aba « Verificar ».
ClaimValorTipoPapel
Decodificação, verificação e assinatura são executadas durante a digitação · Ctrl+Enter recalcula a aba ativa · WebCrypto nativo, nenhuma biblioteca externa · 100 % local, nada sai do seu dispositivo.
0,0 0Comentário Todas as ferramentas
Gratuito ou Premium?

O decodificador JWT é gratuito e ilimitado: sem conta, nada para instalar, nenhum envio de rede. O Premium desbloqueia todo o ecossistema Volade.

GratuitoDecodificação em tempo real do header, do payload e dos claims
GratuitoVerificação HMAC HS256 / HS384 / HS512 e chave pública PEM
GratuitoCodificação e assinatura de novos tokens, conversão das expirações
PremiumSincronização na nuvem criptografada do histórico e dos snippets
PremiumAcesso à API e scripts compartilhados entre as ferramentas do ecossistema
Desbloquear o Premium
Recursos

Decodificar, verificar e codificar um JWT, sem limite

Um único motor cobre a leitura, a verificação de integridade e a produção de tokens — sem nunca sair do seu dispositivo.

Decodificar header, payload e assinatura

Cole um token — mesmo em maiúsculas, mesmo com prefixo Bearer ou aspas — e o cabeçalho e o payload aparecem em JSON indentado enquanto você digita. Cada claim é listado com seu valor, seu tipo e seu papel, os carimbos de tempo são convertidos em ISO 8601 e em tempo restante, e a assinatura transportada é exibida como está.

Decodificar agora

Verificar uma assinatura de verdade

O controle não é cosmético: o MAC é recalculado sobre a string exata cabeçalho.payload e comparado com a assinatura em comparação constante. HS256, HS384 e HS512 usam o segredo compartilhado; RS256, RS384, RS512, ES256, ES384 e PS512 usam a chave pública PEM no formato SPKI. O veredito é explícito: válido, inválido ou informação ausente.

Verificar uma assinatura

Confidencialidade total

Nenhuma requisição de rede: decodificação, verificação e assinatura são executadas inteiramente no seu navegador, mesmo offline. Perfeito para um token de produção, uma chave de staging ou um token de sessão contendo um identificador que você não quer confiar a ninguém — nem à própria ferramenta.

Saiba mais
Como funciona

Decodificar, verificar ou produzir um token em três etapas

Nenhuma instalação, nenhum cadastro: a ferramenta está sempre pronta, no mobile quanto no desktop.

Cole o token

Recupere o valor depois de « Authorization: Bearer » ou no seu cookie, cole-o na aba « Decodificar »: os três segmentos são separados e decodificados na hora. Um prefixo Bearer, aspas ou uma quebra de linha são removidos automaticamente.

Verifique a integridade

Vá para « Verificar », escolha o algoritmo anunciado pelo cabeçalho, insira o segredo ou a chave pública: a ferramenta recalcula o MAC e exibe o veredito. É a etapa que todo mundo pula — e a única que protege de fato o conteúdo.

Produza um token

Em « Codificar », edite o payload, ajuste exp e iat com a aba « Expiração », assine com HS256: o token aparece pronto para copiar. O histórico local guarda seus últimos tokens para recarregá-los com um clique.

Referência rápida

Um JWT de relance

O que a maioria dos desenvolvedores verifica antes de ler um token — com a anatomia completa na aba « Anatomia & referência ».

SegmentoPapelCodificaçãoExemplo
1cabeçalho (alg, typ)Base64URLeyJhbGciOiJIUzI1NiJ9
2payload (claims)Base64URLeyJzdWIiOiIxMjM0NTY3ODkwIn0
3assinaturaBase64URLSflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV…
expexpiraçãoUnix (s)1793827200 → 2026-11-04
HS256HMAC + SHA-256segredo compartilhado32 bytes no mínimo
RS256RSA + SHA-256chave pública PEMverificação assimétrica
« + » no Base64—Base64URLsubstituído por « - »
« / » no Base64—Base64URLsubstituído por « _ »

O que significa « decodificar um JWT »?

Decodificar um JWT (« jwt decode », « decode jwt online ») consiste em cortar a string nos dois pontos e depois decodificar cada segmento em Base64URL para recuperar o JSON original. Nenhuma chave é necessária: o cabeçalho e o payload são simplesmente codificados, não cifrados. É exatamente a intenção por trás de « jwt payload decoder » ou « decode jwt without verify » — ver o que o token contém, sem afirmar que ele é autêntico.

Atenção para distinguir bem as duas ações. Ler um JWT não prova nada: qualquer pessoa pode fabricar um token com payload atraente e assiná-lo com o próprio segredo. Verificar a assinatura prova que o conteúdo não foi modificado por terceiros. Um decodificador que mostra « admin: true » sem controle de assinatura conta uma história, não um fato.

Os três segmentos de um JWT

A string se divide exatamente em três partes separadas por pontos: header.payload.signature. O cabeçalho contém no mínimo alg e typ, às vezes kid para indicar qual chave foi usada. O payload contém os claims, esses pares chave-valor cujo registro é mantido pela IANA. A assinatura cobre os dois primeiros segmentos concatenados exatamente como estão escritos — a menor alteração de um espaço ou de um caractere quebra a comparação.

Toda a dificuldade vem do fato de esses segmentos estarem em Base64URL e não em Base64: o sinal de mais vira um hífen, a barra vira um sublinhado, e o preenchimento = desaparece. Um decodificador Base64 clássico falhará, portanto, em um JWT válido. A tabela « Base64URL versus Base64 clássico » da aba de referência mostra exatamente essas substituições.

Como verificar uma assinatura: HS256, RS256, ES256

Para um algoritmo HMAC — HS256, HS384, HS512 — o mesmo segredo serve para assinar e verificar: a ferramenta recalcula HMAC(secret, base64url(header) + "." + base64url(payload)) e compara o resultado com a assinatura transportada. É o caso mais comum, e também o mais perigoso: qualquer serviço que detenha o segredo pode emitir um token. Um segredo com menos de 32 bytes, reutilizado entre ambientes, basta para comprometer toda a cadeia.

Para os algoritmos assimétricos — RS256, RS384, RS512, ES256, ES384, ES512, PS256 — você só precisa da chave pública para verificar, o que permite conferir um token emitido por terceiros sem nunca compartilhar o segredo de assinatura. Cole a chave no formato PEM -----BEGIN PUBLIC KEY----- (SPKI); o resultado bruto de uma exportação OpenSSL é diretamente utilizável. Para ES256, a assinatura está no formato r||s bruto, aquele que o WebCrypto espera.

Por fim, desconfie doalg confusion : se o seu serviço espera RS256 mas aceita um token cujo cabeçalho declara HS256, um atacante assinará com a chave pública — virada em chave HMAC — e passará na verificação. Fixe o algoritmo esperado do lado do servidor, nunca leia o próprio token.

exp, iat, nbf: os carimbos de tempo que armadilham

Esses três claims são segundos Unix, sem milissegundo e sem fuso horário: iat 1516239022 significa 2018-01-17T21:30:22Z. Dois erros voltam sempre: comparar com uma data em milissegundos (valor dez mil vezes maior) e interpretar um timestamp como local em vez de UTC. A aba « Expiração » converte nos dois sentidos, mostra o ISO 8601, a data local e o tempo restante ou decorrido — dá para detectar na hora um token « já expirado » ao segundo de relógio.

Alongar o tempo de vida não eleva o nível de segurança: um exp empurrado muda o valor exibido, não a assinatura. Se você precisar reemitir, assine novamente o token com o segredo ou a chave privada — é exatamente o papel da aba « Codificar ».

Base64URL: por que os decodificadores clássicos falham

Base64URL (RFC 4648 §5) usa o alfabeto A-Z a-z 0-9 - _ e não admite preenchimento. Um payload de 20 caracteres costuma gerar um comprimento não múltiplo de quatro após a remoção do = : é normal, não é corrupção. Os caracteres - e _ são ambíguos para o olho humano, o que explica metade dos « tokens quebrados » relatados. Nosso decodificador aceita os dois alfabetos, maiúsculas e minúsculas misturadas, preenchimento opcional e um prefixo Bearer.

Segurança: o que um JWT não faz

Um JWT não oferece nem confidencialidade nem revogação. O payload é legível por todos: nunca coloque e-mail, papel interno ou dado pessoal que você não aceitaria enviar em texto puro. E um token assinado continua válido até exp mesmo depois de sair — é preciso uma lista de revogação, um jti acompanhamento do lado do servidor, ou tempos de vida curtos com refresh token. Um bom reflexo: exp curto (10 a 15 minutos), iat controlado, nbf alinhado com iat, aud e iss verificados no recebimento.

Recomendado para

Desenvolvedores back-end e front-end (OAuth 2.0, OpenID Connect, API REST), integradores e DevOps (infraestrutura de identidade, JWKS, rotação de chaves), testadores e pentesters (reescrever claims, alg confusion, expiração), administradores de sistemas (depurar um 401 inexplicável), estudantes (entender Base64URL e WebCrypto), e qualquer pessoa que precise de um decodificador JWT online rápido, completo e confidencial — complementado pelocodificador decodificador Base64, pelocodificador decodificador URL e pelo formatador JSON.

FAQ

Perguntas frequentes sobre o decodificador JWT

Tudo o que você quer saber antes de decodificar, verificar ou assinar um token.

Como decodificar um JWT online?

Cole o token na aba « Decodificar »: o cabeçalho, o payload e a assinatura são separados num relance, depois cada parte Base64URL é decodificada em JSON indentado. Os claims padrão (iss, sub, exp, iat, nbf, jti) são listados numa tabela com seu tipo e seu papel, e os carimbos de tempo são exibidos em ISO 8601 com o tempo restante ou decorrido.

Como verificar a assinatura de um JWT?

Na aba « Verificar », escolha o algoritmo anunciado pelo token. Para HS256, HS384 e HS512, insira o segredo compartilhado: a ferramenta recalcula o HMAC sobre a string cabeçalho.payload e o compara com a assinatura transportada. Para RS256, RS384, RS512, ES256, ES384 e PS256, cole a chave pública PEM no formato SPKI. O resultado mostra « Assinatura válida » ou « Assinatura inválida » com o motivo.

Dá para codificar e assinar um JWT aqui?

Sim. Na aba « Codificar », edite o cabeçalho JSON e o payload JSON, escolha o algoritmo e insira o segredo compartilhado: o token assinado aparece instantaneamente, pronto para copiar ou baixar em jwt.txt. Os algoritmos HS256, HS384, HS512 e none são suportados para assinatura; o restante dos algoritmos serve para verificação.

O que é um JWT e para que servem suas três partes?

Um JWT (JSON Web Token) é uma string de três segmentos separados por pontos: o cabeçalho declara o algoritmo e o tipo, o payload transporta os claims e a assinatura garante que nada foi alterado. Os dois primeiros segmentos são JSON codificado em Base64URL — é transformação, não cifragem: qualquer pessoa pode lê-los. Só a assinatura protege a integridade.

Como ler os claims exp, iat e nbf?

exp, iat e nbf são carimbos de tempo Unix em segundos, não datas ISO. A aba « Decodificar » os converte automaticamente em ISO 8601 e em duração relativa (« expira em 2 d 03:00:00 »), e a aba « Expiração » converte nos dois sentidos entre um timestamp e uma data legível, o que permite verificar um token aparentemente inválido ou criar um prazo de vida exato.

Qual é a diferença entre Base64 e Base64URL?

Base64URL substitui o sinal de mais por um hífen e a barra por um sublinhado, e depois remove o preenchimento « = ». Isso é obrigatório em um JWT porque um ponto, um mais ou uma barra quebrariam o corte em três segmentos. É também por isso que alguns decodificadores clássicos falham em um payload perfeitamente válido.

Um JWT decodificado é uma senha?

Não. O payload de um JWT é simplesmente Base64URL, ou seja, totalmente legível sem chave: nunca coloque identificador, e-mail, papel ou permissão dentro dele. A assinatura não cifra o conteúdo, ela o autentica. Para guardar um segredo do lado do cliente, é preciso uma cifragem simétrica separada — o JWT não foi feito para isso.

A ferramenta envia meu token para um servidor?

Não: decodificação, verificação e assinatura são executadas no seu navegador com WebCrypto, sem requisição de rede nem conta. Isso é indispensável para um token de produção, que costuma conter um identificador de sessão. O histórico fica no armazenamento local do seu dispositivo e pode ser limpo com um clique.

Decodificador JWT 100 % local: seu token nunca sai do seu computador

Diferentemente dos decodificadores JWT online clássicos, nenhuma string é transmitida: a decodificação, a verificação de assinatura e a codificação são executadas inteiramente no seu navegador via WebCrypto, sem biblioteca de terceiros nem requisição de rede. É isso que permite inspecionar um token de sessão real, uma chave de staging ou um token de serviço interno sem risco, mesmo offline ou em uma rede pública. O histórico e a última entrada são mantidos localmente (localStorage) e permanecem no seu dispositivo.

A licença Premium Volade acrescenta uma sincronização na nuvem opcional, criptografada, independente da ferramenta — o resto continua gratuito e ilimitado, sem cadastro.

Uma licença premium, todas as suas ferramentas web

Decodificador JWT, codificador decodificador URL, codificador decodificador Base64, formatador JSON, geradores, editores PDF e dezenas de ferramentas gratuitas — e todo o ecossistema Volade com uma única licença.

Uma licença, todo o ecossistema premium Navegador · CMS · Desktop · Móvel · Scripts · API · Ferramentas · Database
Uma licença, todo o ecossistema Ir para premium Entrar