Ir para o conteúdo
Conexão lenta detectada
De volta online!
Copiado!

Decodificador e Validador JWT

Decodifique e valide tokens JSON Web Token com verificação de assinatura

Token JWT

Formato JWT inválido. JWT deve conter três partes separadas por pontos. Falha ao decodificar JWT. Por favor, verifique o formato do token. JSON inválido no token. Por favor, verifique se o token está formatado corretamente.

Gostou desta ferramenta?

★ · avaliações
Um gerador de JWT (JSON Web Token) cria tokens seguros usados para autenticação e autorização em aplicações web e APIs. JWTs são tokens compactos e seguros para URL que contêm informações codificadas sobre um usuário ou sessão. São amplamente usados no desenvolvimento web moderno para autenticação sem estado. Nosso gerador de JWT gratuito funciona inteiramente no seu navegador, garantindo que seus tokens sejam criados com segurança sem enviar dados para servidores.
  1. 1
    Inserir Cabeçalho

    O cabeçalho tipicamente contém tipo de token (JWT) e algoritmo de assinatura. Valores padrão geralmente são suficientes.

  2. 2
    Inserir Payload

    Adicione claims (dados) ao payload: ID do usuário, nome de usuário, funções, tempo de expiração ou outros claims personalizados conforme necessário.

  3. 3
    Definir Chave Secreta

    Digite sua chave secreta para assinar o token. Mantenha este segredo seguro - é usado para verificar a autenticidade do token.

  4. 4
    Escolher Algoritmo

    Selecione algoritmo de assinatura: HS256 (HMAC), RS256 (RSA) ou outros. HS256 é comum para chaves simétricas, RS256 para assimétricas.

  5. 5
    Gerar Token

    Clique em gerar para criar o JWT. O token será exibido em formato codificado.

  6. 6
    Decodificar Token

    Use o decodificador para verificar conteúdos do token, verificar expiração ou depurar problemas de token.

  7. 7
    Verificar Assinatura

    Verifique a assinatura do token usando sua chave secreta para garantir que o token não foi adulterado.

  8. 8
    Usar Token

    Inclua o JWT em solicitações de API (geralmente no cabeçalho Authorization) para autenticação e autorização.

Para que um JWT é usado?

JWTs são usados para autenticação (provar identidade) e autorização (determinar permissões) em aplicações web e APIs.

JWT é seguro?

JWTs são seguros quando implementados corretamente com chaves secretas fortes, HTTPS e tempos de expiração apropriados. Nunca exponha chaves secretas.

Quais informações devo colocar em um JWT?

Inclua ID do usuário, nome de usuário, funções e tempo de expiração. Evite dados sensíveis como senhas. Mantenha payloads pequenos para desempenho.

Por quanto tempo os JWTs devem ser válidos?

Tokens de curta duração (15 minutos a 1 hora) são mais seguros. Use tokens de atualização para sessões mais longas. Ajuste com base nos seus requisitos de segurança.

Posso decodificar um JWT sem o segredo?

Sim, JWTs podem ser decodificados para visualizar conteúdos, mas você precisa da chave secreta para verificar a assinatura e garantir autenticidade.

Qual é a diferença entre HS256 e RS256?

HS256 usa uma chave secreta compartilhada (simétrica). RS256 usa um par de chaves privada/pública (assimétrica). RS256 é melhor para sistemas distribuídos.

JWTs podem ser revogados?

JWTs são sem estado, então não podem ser diretamente revogados. Use tempos de expiração curtos, mantenha uma lista negra ou use tokens de atualização para revogação.

Onde devo armazenar JWTs?

Armazene JWTs com segurança: em cookies httpOnly (mais seguro), localStorage (menos seguro) ou memória. Evite vulnerabilidades XSS.

E se meu JWT for roubado?

Use tempos de expiração curtos, implemente atualização de token, monitore atividades suspeitas e considere medidas de segurança adicionais como validação de IP.

Posso usar JWTs para autenticação de API?

Sim, JWTs são comumente usados para autenticação de API. Inclua o token no cabeçalho Authorization: "Bearer <token>".

Mantenha a Expiração do Token Curta

Configure tokens de acesso para expirarem em 15-30 minutos. Use tokens de atualização para sessões mais longas. Tokens de curta duração limitam o dano caso um token seja comprometido.

Sempre Use HTTPS

Nunca transmita JWTs via HTTP simples. Tokens enviados sem criptografia podem ser interceptados e reutilizados. Aplique HTTPS em todos os lugares onde tokens são transmitidos ou recebidos.

Prefira RS256 ao Invés de HS256

Use assinatura assimétrica (RS256/ES256) para que apenas o servidor com a chave privada possa criar tokens, enquanto qualquer pessoa com a chave pública pode verificá-los. HS256 compartilha o segredo com todos os verificadores.

Valide Todos os Claims

Sempre verifique no servidor os claims iss (emissor), aud (audiência), exp (expiração) e nbf (não antes). Nunca confie em um token sem validação completa.

Nunca Armazene Dados Sensíveis no Payload

Os payloads de JWT são codificados em Base64, não criptografados. Qualquer pessoa pode decodificá-los e lê-los. Nunca inclua senhas, números de cartão de crédito ou outros dados sigilosos nos claims do token.

Use o Claim de Cabeçalho typ

Defina o cabeçalho typ para distinguir entre tipos de token (acesso vs atualização). Isso evita ataques de confusão de token, onde um token de atualização é usado como token de acesso.

Implemente Revogação de Token

Mantenha uma lista de bloqueio ou use tokens de curta duração com rotação de atualização. Sem revogação, tokens comprometidos permanecem válidos até expirarem naturalmente.

Armazene Tokens em Cookies HttpOnly

Armazene JWTs em cookies httpOnly, Secure e SameSite em vez de localStorage. O localStorage é acessível via JavaScript e vulnerável a ataques XSS. Os cookies httpOnly não são acessíveis por scripts e são enviados automaticamente com os pedidos.

Implemente a Rotação de Tokens de Atualização

Alterne os tokens de atualização a cada utilização (rotação de token de atualização). Se um token de atualização for roubado e utilizado, o servidor deteta a reutilização quando o utilizador legítimo tenta atualizar, e pode invalidar toda a família de tokens.

Use uma Biblioteca JWT de Confiança

Use uma biblioteca JWT bem mantida para a sua linguagem (ex. jsonwebtoken para Node.js, php-jwt para PHP) em vez de escrever a sua própria lógica de análise e verificação. Implementações personalizadas são uma fonte comum de vulnerabilidades de segurança críticas.

Outras Ferramentas

Explore outras ferramentas poderosas da JaneX

Abra no seu navegador
Para uma melhor experiência, abra esta página no seu navegador padrão
Instalar JaneX
Acesso rápido a todas as ferramentas, funciona offline
Nova versão disponível