Gerador JWT

Digite carga útil JSON e um segredo compartilhado para assinar JWTs HS256 localmente com jwt-decoder para testes. Somente para desenvolvimento; nunca exponha segredos de produção no navegador.

Privacidade: processado localmente, nunca carregado.

↓ Colar na área de entrada abaixo para ver os resultados instantaneamente

使用 HS256 与共享密钥在浏览器本地签发 JWT; 适合开发调试,生产密钥勿暴露在前端。

密钥 (Secret)

Payload (JSON)

Digite carga útil JSON e um segredo compartilhado para assinar JWTs HS256 localmente com jwt-decoder para testes. Somente para desenvolvimento; nunca exponha segredos de produção no navegador.

Iniciação rápida

  1. Set segredo

    HS256 compartilhou segredo.

  2. Edição Payload

    Objeto JSON; os padrões incluem sub /unat / exp.

  3. Gerar e copiar

    Copie o token para jwt-decoder para verificar.

Com o decoder

Colar em jwt-decoder para inspecionar cabeçalho / payload e avisos de expiração.

Segurança

A assinatura do lado do cliente não é para autorização de produção; assinar tokens reais no servidor.

Fluxo de trabalho típico

Ao desenvolver endpoints de API, você geralmente precisa testar JWTs. Abre a ferramenta e: 1) Digite JSON na carga útil (por exemplo, {"user_id":123}); 2) Defina o algoritmo HS256; 3) Insira a chave de teste (como 'your-256-bit-secret'); 4) Clique em gerar e copiar. Todo o processamento ocorre localmente no seu navegador.

Colar o JWT no cabeçalho de Autorização da API (formato: Bearer)<token>), ou verifique com o nosso jwt-decoder. Para testar a expiração, modifique o campo 'exp' na carga útil como carimbo de tempo UNIX (por exemplo, 1698765432). Lembre-se de que o HS256 usa criptografia simétrica - prefira o RS256 em produção.

Exemplos

Exemplo

Input

secret + {"sub":"user"}

Output

eyJhbGciOiJIUzI1NiIs…

FAQ

Suporte ao RS256

HS256 somente; algoritmos assimétricos precisam de manipulação de chave privada.

Segredo subido?

Não; assinado localmente com Web Crypto.

Por que o erro "Invalid payload "?

A carga útil deve ser estritamente JSON: 1) Todas as chaves em aspas duplas; 2) Valores de cadeia em aspas duplas; 3) Sem comentários / vírgulas. Por exemplo, {"sub":"user1"} funciona, mas {sub:"user1'} ou {"age":30,} não. Valide a sintaxe com uma ferramenta JSON primeiro.