WMW

Gerador de Hash Argon2

Free

Gere e verifique hashes de senha Argon2id/Argon2i/Argon2d inteiramente no seu navegador, com custo de memória, custo de tempo, e paralelismo ajustáveis.

Executa inteiramente no seu navegador usando WebAssembly. Nada é enviado a um servidor.

Predefinições

Atividade recente

Visível para todos. Últimos 20 usos de todos os visitantes, mais recentes primeiro.

Ainda sem atividade. Seja o primeiro.

Comentários (0)

Achou esta ferramenta útil? Deixe um comentário, compartilhe uma dica ou nos diga como podemos melhorá-la.

Comentários de convidados são revisados antes da publicação. Entrar para publicar instantaneamente.

Ainda sem comentários. Seja o primeiro a compartilhar sua opinião!

O que esta ferramenta faz

Esta ferramenta gera hashes de senha Argon2 (Argon2id, Argon2i ou Argon2d) inteiramente no seu navegador usando WebAssembly, com custo de memória, custo de tempo, paralelismo, comprimento do hash e sal ajustáveis, além de um verificador integrado para checar uma senha contra um hash codificado existente.

Como funciona

O Argon2 venceu a Password Hashing Competition em 2015 e é deliberadamente projetado para ser lento e exigente em memória, de modo que forçar por bruta muitas senhas se torna caro tanto em tempo quanto em RAM, não apenas em tempo. Ele recebe uma senha, um sal aleatório e três parâmetros de custo: custo de memória (quanta RAM usar), custo de tempo (quantas passagens sobre essa memória) e paralelismo (quantas pistas independentes rodam ao mesmo tempo), depois produz um hash do comprimento solicitado. O resultado é empacotado no formato codificado padrão $argon2id$v=19$m=<memória em KiB>,t=<iterações>,p=<paralelismo>$<sal>$<hash>, que é autodescritivo: verificar uma senha depois significa apenas ler esses parâmetros de volta da string, executar novamente o mesmo cálculo e comparar a saída.

Problemas que resolve

Perguntas frequentes

Qual variante do Argon2 devo usar?

O Argon2id é o padrão recomendado para a maioria dos casos de uso de hash de senha, combina resistência a ataques de canal lateral (como Argon2i) e tentativas de quebra por GPU/ASIC (como Argon2d). Use Argon2i apenas se a resistência a canal lateral for sua principal prioridade, ou Argon2d apenas para aplicativos sem ameaça de canal lateral, como mineração de criptomoedas.

Por que gerar um hash às vezes leva alguns segundos?

Esse atraso é todo o propósito do Argon2: ele é deliberadamente intensivo em memória e lento, de modo que um atacante tentando milhões de tentativas por segundo precisa gastar a mesma quantidade de tempo e memória por tentativa que você acabou de gastar gerando um hash. Predefinições mais altas como "Máximo" levam mais tempo porque usam mais memória e iterações.

Qual é a diferença entre o hash codificado e a saída hexadecimal?

O hash codificado é o formato de string PHC padrão ($argon2id$v=19$m=...,t=...,p=...$sal$hash), ele agrupa o algoritmo, a versão, os parâmetros e o sal junto com o hash, então é autocontido e diretamente utilizável para verificação posterior. A saída hexadecimal é apenas os bytes brutos do hash, útil se você precisar armazenar o hash e seus parâmetros em colunas de banco de dados separadas.

Minha senha é enviada para algum lugar?

Não. O hash é calculado inteiramente no seu navegador usando WebAssembly, nada do que você digita aqui é transmitido a nenhum servidor.

Devo gerar meu próprio sal ou usar um aleatório?

Use um sal aleatório para armazenamento real de senhas, é para isso que serve o sal de 16 bytes gerado automaticamente, e ele é único a cada carregamento de página. Fornecer seu próprio sal fixo só é útil para testes ou para reproduzir um hash específico conhecido.

Ferramentas relacionadas