Gerador de Hash Argon2

Gere hashes de senha Argon2id, Argon2i e Argon2d no seu navegador com iterações, custo de memória, paralelismo e tamanho do hash ajustáveis, e copie a string padrão codificada no formato PHC.

100% privado. O cálculo do hash roda inteiramente no seu navegador usando WebAssembly. Sua senha e o salt nunca saem do seu dispositivo.

Informe o salt como uma string hexadecimal de pelo menos 8 bytes, ou clique em Salt aleatório para gerar um.


    

O Gerador de Hash Argon2 cria hashes de senha Argon2id, Argon2i e Argon2d direto no seu navegador. Escolha a variante, ajuste as iterações, o custo de memória, o paralelismo e o tamanho do hash, informe ou gere um salt e receba de volta a string padrão codificada no formato PHC, pronta para armazenar ou verificar. Tudo roda no lado do cliente com WebAssembly, então sua senha e seu salt nunca saem do seu dispositivo.

O que é o Argon2?

O Argon2 é uma função moderna de hash de senha que exige bastante memória e foi a vencedora da Password Hashing Competition de 2015. Por usar deliberadamente grandes quantidades de memória e tempo, ele torna ataques de força bruta em larga escala e ataques com GPU ou ASIC muito mais caros do que hashes antigos como MD5 ou SHA-256. Ele vem em três variantes: Argon2id, o padrão recomendado que combina as outras duas; Argon2i, ajustado para resistir a ataques de canal lateral; e Argon2d, ajustado para resistir à quebra por GPU. Esta ferramenta gera o hash no formato portável PHC, que codifica em uma única linha a variante, a versão, os parâmetros, o salt e o digest.

Como gerar um hash Argon2

Digite sua senha, escolha uma variante e os parâmetros, e gere o hash. O resultado é a string PHC codificada que você pode copiar e armazenar.

  1. Digite ou cole a senha ou o texto que você quer transformar em hash.
  2. Clique em Salt aleatório para gerar um salt novo, ou cole o seu próprio salt hexadecimal de pelo menos 8 bytes.
  3. Escolha a variante (Argon2id é a recomendada) e ajuste iterações, memória, paralelismo e tamanho do hash.
  4. Clique em Gerar hash e aguarde enquanto o cálculo que exige memória é executado.
  5. Copie o hash codificado em PHC resultante para armazená-lo ou verificar uma senha depois.

Como escolher os parâmetros do Argon2

O Argon2 tem três parâmetros de custo que controlam o quão lento e exigente em memória é o cálculo do hash. O custo de memória (em KiB) é a maior alavanca contra hardware de quebra; valores comuns variam de 19456 KiB até 65536 KiB ou mais. As iterações (o custo de tempo) multiplicam o trabalho para uma quantidade fixa de memória. O paralelismo define quantas pistas o algoritmo usa e costuma ficar entre 1 e 4. A orientação da OWASP para o Argon2id sugere começar com cerca de 19 MiB de memória, 2 iterações e paralelismo 1, e então aumentar o custo até que o cálculo do hash leve uma fração confortável de segundo no seu servidor. Valores mais altos são mais fortes, porém mais lentos, então ajuste-os ao seu hardware.

Por que usar este gerador Argon2?

  • Totalmente no lado do cliente: o cálculo roda no seu navegador com WebAssembly e nada é enviado.
  • Suporta as três variantes: Argon2id, Argon2i e Argon2d.
  • Iterações, custo de memória, paralelismo e tamanho do hash ajustáveis.
  • Gera a string padrão codificada em PHC, que guarda os parâmetros e o salt junto com o digest.
  • Gerador de salt aleatório embutido, usando uma fonte criptograficamente segura.
  • Cópia do hash final com um clique.

Perguntas frequentes

Minha senha é enviada para algum servidor?

Não. O cálculo do Argon2 roda inteiramente no seu navegador por meio de um módulo WebAssembly. Sua senha, o salt e o hash resultante nunca são transmitidos, armazenados ou registrados. Você pode confirmar isso observando as ferramentas de rede do navegador enquanto gera um hash.

Qual variante do Argon2 devo escolher?

O Argon2id é o padrão recomendado para hash de senha e é o que a maioria das orientações, incluindo a OWASP, sugere. Ele combina a resistência a canais laterais do Argon2i com a resistência à quebra por GPU do Argon2d. Escolha o Argon2i apenas se você precisar especificamente da máxima resistência a canais laterais, e o Argon2d apenas para casos sem exposição a canais laterais não confiáveis.

O que é a string PHC que a ferramenta gera?

É o formato padrão autodescritivo para hashes de senha. Uma string como $argon2id$v=19$m=65536,t=3,p=1$SALT$HASH registra a variante, a versão do Argon2, os parâmetros de memória, tempo e paralelismo, o salt em base64 e o digest em base64. Armazenar essa única string é suficiente para verificar uma senha depois, porque todos os parâmetros necessários estão embutidos nela.

Por que gerar um hash demora um pouco?

Essa demora é intencional. O Argon2 é uma função que exige bastante memória e foi projetada para ser lenta e consumir muita memória, que é exatamente o que o torna resistente a ataques de força bruta. Valores mais altos de memória e iterações aumentam a demora. Se ficar lento demais para testar, reduza a memória e as iterações; aumente-as de novo para hashes com força de produção.

O salt precisa ser secreto?

Não. Um salt não precisa ser secreto, mas deve ser único e imprevisível para cada senha, para que senhas idênticas produzam hashes diferentes e tabelas rainbow pré-computadas se tornem inúteis. Use o botão Salt aleatório para gerar um salt novo de 16 bytes e armazene-o como parte da string PHC.