Codificador/Decodificador JWT
Decodifique, verifique e gere tokens JWT com segurança
JWT Decodificado
Cabeçalho
Carga Útil
Assinatura
Cabeçalho
Carga Útil
Digite seus dados de carga útil no formato JSON
Chave Secreta
Esta chave é usada para assinar o JWT. Mantenha-a segura!
JWT Gerado
Guia Completo sobre JSON Web Tokens (JWT)
O que é JWT?
JSON Web Token (JWT) é um padrão aberto (RFC 7519) que define uma maneira compacta e autônoma de transmitir informações com segurança entre as partes como um objeto JSON. Essas informações podem ser verificadas e confiáveis porque são assinadas digitalmente.
A Estrutura de um JWT
Um JWT consiste tecnicamente em três partes separadas por pontos (.), que são:
- Cabeçalho (Header) : O cabeçalho consiste tipicamente em duas partes: o tipo de token (JWT) e o algoritmo de assinatura usado, como HMAC SHA256 ou RSA.
- Carga Útil (Payload) : A carga útil contém as reivindicações (claims). Claims são declarações sobre uma entidade (normalmente o usuário) e dados adicionais.
- Assinatura (Signature) : Para criar a parte da assinatura, você deve pegar o cabeçalho codificado, a carga útil codificada, um segredo, e assiná-los. A assinatura é usada para verificar se a mensagem não foi alterada.
Algoritmos Suportados
Esta ferramenta suporta decodificação e verificação para todos os algoritmos padrão:
- HS256: HS256 (HMAC SHA-256): Simétrico. Requer uma chave secreta compartilhada.
- HS384: HS384: Simétrico. Usa hash de 384 bits.
- HS512: HS512: Simétrico. O mais seguro para assinaturas simétricas.
- RS256: RS256 (RSA SHA-256): Assimétrico. Chave privada para assinar, pública para verificar.
- RS384: RS384: Assimétrico.
- RS512: RS512: Assimétrico.
Entendendo os Claims JWT
Claims são pedaços de informação. Claims registrados padrão incluem:
- iss (Issuer): iss (Emissor)
- sub (Subject): sub (Assunto/Usuário)
- aud (Audience): aud (Público/Destinatário)
- exp (Expiration Time): exp (Expiração)
- nbf (Not Before): nbf (Not Before)
- iat (Issued At): iat (Emitido em)
- jti (JWT ID): jti (ID do JWT)
Quando usar JWT?
- Autorização: Cenário mais comum. Após login, cada requisição inclui o JWT para acesso a recursos.
- Troca de Informações: Transmissão segura com verificação de identidade.
- Sessões sem estado: JWTs contêm todos os dados do usuário, reduzindo consultas ao banco.
- SSO Cross-Domain: Ideal para Single Sign-On entre domínios.
- Segurança de API: Proteção de APIs RESTful.
Melhores Práticas de Segurança: 1. Não coloque dados sensíveis no payload. 2. Sempre verifique a assinatura. 3. Use 'exp' para limitar a vida do token. 4. Use HTTPS. 5. Armazene tokens com segurança (Cookies HttpOnly recomendados).
Referências
Perguntas Frequentes (FAQ)
JWT é criptografia ou codificação?
JWTs padrão são codificados e assinados, NÃO criptografados. O payload é Base64Url, legível por qualquer um. Para ocultar dados, use JWE.
Onde armazenar JWT no cliente?
Cookies `HttpOnly` são geralmente mais seguros que `localStorage` contra XSS.
O que acontece se um JWT for roubado?
O ladrão pode se passar pelo usuário até o token expirar. Use tempos de expiração curtos.
Esta ferramenta envia minhas chaves ao servidor?
Não. Tudo roda no seu navegador via JavaScript.
Posso modificar o payload manualmente?
Pode, mas invalidará a assinatura.
Diferença entre HS256 e RS256?
HS256 é simétrico (chave compartilhada). RS256 é assimétrico (par de chaves).
Ferramentas Relacionadas
Codificador/Decodificador Base64
Codifique e decodifique strings Base64 rapidamente, suportando conversão de texto e arquivo
Gerador HMAC
Gere códigos de autenticação HMAC com algoritmos MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA3 e RIPEMD-160
Calculadora de Datas
Calcule dias entre datas, adicione/subtraia dias, calcule idade e conte dias úteis
Formatador JSON
Formate e valide dados JSON para melhorar a legibilidade e depuração
Gerador de Hash SHA
Gerador de hash SHA online suportando algoritmos SHA-1, SHA-256, SHA-384, SHA-512
Criptografia/Descriptografia RSA
Use criptografia assimétrica RSA para criptografia de chave pública, descriptografia de chave privada, assinatura digital e verificação