Gerador e verificador de hash bcrypt

Desenvolvimento

Um gerador de bcrypt aplica um hash a uma senha com o algoritmo bcrypt (salt aleatório mais um fator de custo ajustável) e verifica se uma senha corresponde a um hash informado.

Tradução assistida por IA em revisão

Esta página foi traduzida com ajuda de IA e ainda não recebeu revisão profissional. Consulte as fontes citadas antes de usá-la em uma decisão importante.

O que é

O bcrypt é uma função de hash de senhas de 1999 baseada na cifra Blowfish e deliberadamente lenta para elevar o custo dos ataques de força bruta. Cada +1 no fator de custo dobra o trabalho, e cada hash inclui um salt aleatório, então a mesma senha produz um hash diferente a cada vez. Esta ferramenta executa a biblioteca bcryptjs dentro do seu navegador, de modo que a senha nunca sai do seu dispositivo. Use-a para criar hashes de contas de teste durante o desenvolvimento ou para verificar um hash armazenado no seu banco de dados.

bcrypt = EksBlowfish(cost, salt, password) — formato $2b$[cost]$[salt de 22 caracteres][hash de 31 caracteres], iterações = 2^cost

Como usar

  1. 1No modo gerar, digite uma senha e escolha o custo (rodadas) para criar um hash.
  2. 2No modo verificar, digite a senha e o hash bcrypt existente.
  3. 3Copie o hash resultante ou consulte o resultado da correspondência.

Referência

Gerador e verificador de hash bcrypt Referência
ParteSignificado
$2b$Identificador do algoritmo (revisão atual do bcrypt)
10$Custo — 2^10 = 1.024 iterações
Próximos 22 caracteresSalt aleatório de 128 bits (codificado em base64)
Últimos 31 caracteresSaída do hash de 184 bits (checksum)

Fontes e padrões

Perguntas frequentes

Minha senha é enviada a um servidor?

Não. A biblioteca bcryptjs é executada dentro do seu navegador, então tanto o hash quanto a verificação são locais: a senha e o hash nunca são transmitidos nem armazenados. Ainda assim, evite digitar senhas de produção em máquinas compartilhadas ou durante o compartilhamento de tela.

Por que o hash é diferente a cada vez para a mesma senha?

Porque um novo salt aleatório é gerado e incluído em cada hash. A verificação reutiliza o salt armazenado dentro da cadeia do hash, então qualquer um desses hashes é comparado corretamente.

Qual custo (rodadas) devo usar?

Normalmente entre 10 e 12. Cada incremento dobra o tempo, então mire em cerca de 100–300 ms por hash no hardware do seu servidor.

Existe um limite de comprimento de senha?

O bcrypt usa apenas os primeiros 72 bytes da entrada e ignora silenciosamente o restante. Esta ferramenta avisa quando uma senha ultrapassa 72 bytes UTF-8.

Ferramentas relacionadas