O bcrypt ainda é seguro para armazenar senhas? Ouvi dizer que ele pode ser acelerado em GPUs e que senhas muito longas são truncadas. Isso é verdade?
O bcrypt ainda é seguro para armazenar senhas? Ouvi dizer que ele pode ser acelerado em GPUs e que senhas muito longas são truncadas. Isso é verdade?
Olá Paulo!
O bcrypt ainda é considerado uma opção segura para armazenar senhas, principalmente por causa de sua capacidade de ser configurado para ser mais lento, o que dificulta ataques de força bruta. No entanto, você está correto ao mencionar algumas preocupações.
Aceleração em GPUs: Embora o bcrypt seja projetado para ser resistente a ataques de força bruta, ele pode ser acelerado em hardware especializado, como GPUs. Isso significa que, com recursos suficientes, um atacante pode tentar quebrar senhas mais rapidamente do que em uma CPU comum. No entanto, isso não torna o bcrypt inseguro, apenas ressalta a importância de escolher um fator de custo suficientemente alto para aumentar a dificuldade de quebra.
Truncamento de senhas longas: O bcrypt tem uma limitação de tamanho de entrada, geralmente truncando senhas para 72 bytes. Isso significa que, se uma senha for mais longa do que isso, ela será cortada, o que pode potencialmente reduzir a segurança se a parte truncada contiver informações significativas. Para mitigar isso, é recomendável garantir que as senhas sejam suficientemente complexas e dentro do limite de tamanho.
Como exemplo prático, ao implementar o bcrypt, você pode ajustar o "cost factor" (fator de custo) para aumentar o tempo necessário para gerar um hash, tornando mais difícil para um atacante. Um valor comum é 12, mas isso pode ser ajustado de acordo com o poder de processamento disponível e as necessidades de segurança.
Espero ter ajudado e bons estudos!