Gerador de chaves secretas

Gere chaves secretas para JWT HS256/HS512, AES-128/256, APP_KEY do Laravel, secret_key_base do Rails, SECRET_KEY do Django e cookies de sessão com aleatoriedade segura.

Saída

256 bits de entropia · 43 caracteres por valor

Gerado localmente com crypto.getRandomValues; nada é enviado ou armazenado. Guarde segredos em variáveis de ambiente ou num gerenciador de segredos, nunca no código-fonte.

O que é Gerador de chaves secretas?

Frameworks e bibliotecas precisam de chaves secretas aleatórias em um formato específico: uma string Base64url de 256 bits para JWT HS256, 32 bytes hex para AES-256, base64: + 32 bytes para o APP_KEY do Laravel, 128 caracteres hex para o secret_key_base do Rails, 50 caracteres para o SECRET_KEY do Django. Escolha a Finalidade e a ferramenta gera uma chave com o tamanho e a codificação certos, ou personalize o formato você mesmo.

Como usar Gerador de chaves secretas

  1. Escolha uma Finalidade, como Segredo JWT HS256 ou Laravel APP_KEY.
  2. Ajuste o Formatar e os bytes aleatórios / comprimento, se necessário (isso muda para Personalizado).
  3. Clique em Gerar novamente até obter a chave e copie-a para as suas variáveis de ambiente.

Exemplo

Entrada
Purpose: JWT HS256 secret (256 bits, Base64url)
Saída
-IXerdjEBBrFmWvMzQ0izB3-w1aweuEukH9SlJBWmwE

256 bits de entropia. Aleatória — a sua chave será diferente.

Quando usar Gerador de chaves secretas

Use-o ao configurar um ambiente novo, trocar uma chave vazada ou configurar a assinatura de JWT. Para assinatura assimétrica (RS256, ES256), você precisa de um par de chaves, não de um segredo compartilhado. Nunca envie chaves para o Git; coloque-as em variáveis de ambiente ou em um gerenciador de segredos.

Como funciona Gerador de chaves secretas

Todas as chaves vêm de crypto.getRandomValues. As predefinições baseadas em bytes sorteiam exatamente o número de bytes de que o algoritmo precisa (16 para AES-128, 32 para AES-256 e HS256, 64 para HS512 e Rails) e os codificam em hex, Base64 ou Base64url. A chave do Django tem 50 caracteres escolhidos de modo uniforme entre letras e dígitos (cerca de 298 bits). A linha de entropia mostra a força em bits e avisa abaixo de 128 bits.

Casos de Uso Comuns

  • Definir o APP_KEY de uma nova implantação Laravel
  • Criar um segredo de assinatura JWT HS256
  • Gerar uma chave AES-256 para criptografar dados em repouso
  • Trocar os segredos do Django ou do Rails depois de um vazamento

Nota de Segurança

Gerada localmente e nunca enviada a lugar nenhum. Quem tiver a chave pode forjar tokens ou descriptografar dados, então guarde-a apenas em variáveis de ambiente ou em um gerenciador de segredos.

Perguntas Frequentes

Qual deve ser o tamanho de um segredo JWT HS256?

Pelo menos 256 bits (32 bytes), o tamanho da saída do SHA-256, como recomenda a RFC 7518. O HS512 deve usar 512 bits.

É o mesmo que rodar php artisan key:generate?

No formato, sim: o comando do Laravel também cria 32 bytes aleatórios, codifica-os em Base64 e acrescenta o prefixo base64:.

O que acontece se eu mudar a chave de um app em execução?

Sessões existentes, cookies assinados, tokens e tudo o que foi criptografado com a chave antiga ficam inválidos ou ilegíveis. Planeje as trocas com cuidado.

Explore mais categorias