Glossário

O que é bcrypt e por que usá-lo em senhas

bcrypt é uma função de hash feita especialmente para guardar senhas. Diferente de MD5 e SHA, ela é propositalmente lenta e embute um sal aleatório, o que dificulta muito os ataques de força bruta. É por isso que bcrypt continua sendo uma escolha recomendada para armazenar credenciais com segurança.

O fator de custo e o sal

O bcrypt tem um fator de custo, um número que define quantas rodadas de cálculo ele executa. Quanto maior o custo, mais lento fica gerar e testar cada hash, o que atrapalha quem tenta adivinhar senhas em massa. O sal é um valor aleatório único, gerado e guardado dentro do próprio hash, então duas pessoas com a mesma senha terminam com hashes diferentes. Isso inutiliza as rainbow tables, tabelas prontas de senhas comuns. Com o tempo, basta aumentar o custo para acompanhar hardwares mais rápidos.

Por que não usar MD5 ou SHA em senhas

MD5 e SHA-256 foram desenhados para serem rápidos, o que é ótimo para verificar arquivos, mas péssimo para senhas: um atacante testa bilhões de combinações por segundo. bcrypt inverte essa lógica ao ser lento de propósito. Ele também já resolve o sal, que teria de ser adicionado à mão com outras funções. Alternativas modernas com a mesma filosofia são scrypt e Argon2, este último vencedor de uma competição de hashing de senhas e recomendado para novos sistemas.

Ferramentas relacionadas

Ferramentas relacionadas a bcrypt

Fez um site com IA e quer que alguem cuide dele? Converse comigo - Ygor Andrade, Desenvolvedor e Especialista em Solucoes Web