Repolode
jwtk

jwtk/jjwt

Biblioteca Java para criar, analisar e verificar JSON Web Tokens (JWT) e JSON Web Keys (JWK) na JVM e no Android.

Estrelas
11,144
Forks
1,401
Issues abertas
49
Último commit
mês passado

O que é?

JJWT é uma implementação puramente Java das especificações JOSE para JSON Web Tokens, que abrange os formatos assinados (JWS), criptografados (JWE) e de chaves (JWK). O objetivo é simplificar a criação e a verificação de tokens, com uma API builder fluente e verificações de segurança automáticas.

A biblioteca oferece suporte a todos os algoritmos padrão de assinatura JWS (HMAC, ECDSA, RSA e EdDSA), além dos algoritmos de criptografia e gerenciamento de chaves do JWE. É possível validar claims como expiration e not-before durante o parsing, e os payloads podem ser compactados. Objetos de claims podem ser serializados com Jackson ou Gson.

O JJWT funciona com Java 8+ e Android. O módulo de API é a única dependência de compilação, enquanto a implementação e o processador JSON são declarados como dependências de runtime. A documentação também inclui configurações para Maven e Gradle e regras do Android ProGuard.

Recursos principais

  • 01Cria, analisa e verifica JWTs assinados (JWS) com os algoritmos HS, ES, RS, PS e EdDSA.
  • 02Oferece suporte à criptografia e descriptografia JWE com algoritmos padrão de AEAD e gerenciamento de chaves.
  • 03Cria, analisa e verifica JSON Web Keys para tipos de chave comuns em Java.
  • 04API builder fluente, projetada para oferecer preenchimento automático na IDE.
  • 05Validação de claims e serialização de POJOs com Jackson ou Gson.

Casos de uso

  • Emitir e verificar tokens de acesso em um serviço backend Java ou Spring.
  • Adicionar autenticação baseada em tokens a um app Android.
  • Criptografar claims confidenciais dentro de um token com JWE.
  • Publicar ou consumir conjuntos de JSON Web Keys em uma integração de identidade.

Antes de usar

  • A serialização e a análise de JWS em formatos diferentes do compacto não são compatíveis.
  • PS256/PS384/PS512 exigem Java 11 ou posterior, ou um provedor JCA compatível, como o BouncyCastle.
  • As chaves EdDSA e XDH exigem Java 15 ou posterior, ou um provedor JCA compatível, como o BouncyCastle.

Em coleções

Tópicos

Perguntas frequentes

O que é jjwt?
Biblioteca Java para criar, analisar e verificar JSON Web Tokens (JWT) e JSON Web Keys (JWK) na JVM e no Android. JJWT é uma implementação puramente Java das especificações JOSE para JSON Web Tokens, que abrange os formatos assinados (JWS), criptografados (JWE) e de chaves (JWK). O objetivo é simplificar a criação e a verificação de tokens, com uma API builder fluente e verificações de segurança automáticas.
jjwt é gratuito? Qual é a licença?
jjwt é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
jjwt ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de jjwt foi em 4 de out. de 2026.
Para que posso usar jjwt?
Emitir e verificar tokens de acesso em um serviço backend Java ou Spring. Adicionar autenticação baseada em tokens a um app Android. Criptografar claims confidenciais dentro de um token com JWE. Publicar ou consumir conjuntos de JSON Web Keys em uma integração de identidade.
Onde consigo jjwt?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/jwtk/jjwt

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados