Gere o hash bcrypt de uma senha com custo de 4 a 14, ou confira uma senha com um hash
Funciona no seu navegador. Nada do que você digita é enviado a lugar nenhum.O bcrypt é lento de propósito, e é isso que torna difícil quebrar um banco de senhas roubado. A configuração de custo dobra o trabalho a cada passo, de 4 a 14 aqui. Gere o hash de uma senha ou confira uma com um hash existente. Tudo roda localmente, então nenhuma senha é transmitida.
Esta página foi traduzida automaticamente do original em inglês. Nenhuma pessoa revisou ainda a tradução; a versão em inglês é a que deve ser considerada. Ler o original em inglês
Na aba Hash, digite a senha em Senha ou texto e ajuste o Fator de custo; o comum é de 10 a 12.
Clique em Hash e copie o novo hash $2b$ com o botão Copiar.
Para conferir uma senha depois, abra a aba Verificar e cole o hash no campo Hash bcrypt.
Digite a senha e clique em Verificar; o resultado diz Confere ou Não confere.
Este gerador de hash bcrypt transforma uma senha em um hash bcrypt com salt, com custo de 4 a 14, e confere se uma senha bate com um hash existente. Cada hash é dividido em suas partes, a versão, o custo, o salt de 22 caracteres e o hash de 31 caracteres, para você ver o que a string realmente guarda, junto com o tempo que o cálculo levou.
Desenvolvedores o usam para criar uma senha de administrador conhecida para dados iniciais ou um teste, para confirmar que um hash em um banco de dados pertence mesmo à senha que um usuário diz ter definido, e para escolher um fator de custo vendo quanto tempo cada passo leva em um hardware comum. Ele também lê hashes do PHP ($2y$) e de bibliotecas antigas ($2a$).
O cálculo roda em um Web Worker, uma thread em segundo plano do seu navegador, com a biblioteca bcryptjs, então a página continua respondendo mesmo com custo 14. Nada é enviado. Senhas e hashes nunca são registrados ou salvos; só o custo escolhido é lembrado. Os tempos aqui ficam próximos dos de um servidor Node.js usando bcryptjs, enquanto bibliotecas bcrypt nativas são duas a três vezes mais rápidas.
Cada passo de custo dobra o trabalho. O custo 10 leva de um décimo a um quinto de segundo em um notebook; o custo 14 é dezesseis vezes mais lento, o que se nota em cada login que o seu servidor processa. A maioria dos sistemas usa de 10 a 12. O bcrypt lê só os primeiros 72 bytes de uma senha, e a ferramenta avisa quando a sua é mais longa.
Ferramentas relacionadas: Password Strength Checker, Password Generator, HMAC Generator.
Abra a aba Verificar, cole o hash completo de 60 caracteres que começa com $2a$, $2b$ ou $2y$, digite a senha e clique em Verificar. A ferramenta calcula de novo o hash da senha com o salt e o custo guardados no hash e compara o resultado. Você verá Confere ou Não confere, além do tempo que levou.
Não. O bcrypt é uma função de mão única, não uma criptografia, então não existe chave que transforme o hash de volta na senha. A única forma de descobrir a senha é chutar candidatas e calcular o hash de cada uma, algo que o fator de custo deixa lento de propósito. Esta ferramenta confere um palpite, não reverte um hash.
Cada hash recebe um novo salt aleatório de 16 bytes, guardado como os 22 caracteres depois do custo. Salts diferentes geram hashes diferentes, o que impede atacantes de quebrar muitos usuários de uma vez com tabelas pré-calculadas. Todos esses hashes continuam conferindo com a senha, porque o salt viaja dentro do hash.
Escolha o custo mais alto que o seu servidor de login aguenta, normalmente de 10 a 12. Cada passo dobra o tempo, então o custo 12 é quatro vezes mais lento que o 10. Mire em cerca de um quarto de segundo por hash no seu hardware de produção e aumente o custo a cada poucos anos, conforme as máquinas ficam mais rápidas.
Esses três prefixos indicam a versão. $2a$ é o formato original corrigido, $2b$ é o atual, que corrige um bug de comprimento no OpenBSD, e $2y$ é como o PHP chama a saída corrigida do crypt_blowfish. Os três são o mesmo algoritmo para senhas normais e são verificados aqui. $2x$ marca hashes de uma biblioteca antiga com bug e deve ser substituído.
Não. O hash e a verificação rodam em uma thread em segundo plano do seu navegador com a biblioteca bcryptjs. A senha e o hash não são enviados a lugar nenhum, nem registrados nem salvos; só o fator de custo escolhido fica lembrado neste dispositivo. Fechar a aba apaga tudo o que você digitou.
Ainda com dúvidas? Pergunte sobre Hash e verificação bcrypt e qualquer pessoa que saiba pode responder. Não é preciso ter conta.