CyberGlossary

Criptografia

bcrypt

Também conhecido como: Hash EksBlowfish, bcrypt de Provos-Mazières

Definição

Função adaptativa de hashing de palavras-passe baseada no cifrador Blowfish com fator de custo ajustável, projetada por Provos e Mazières em 1999.

O bcrypt é um esquema de hashing de palavras-passe publicado em 1999 por Niels Provos e David Mazières, que utiliza uma variante do key schedule do Blowfish ("EksBlowfish") para derivar um hash de 192 bits a partir de uma palavra-passe com salt. O parâmetro de custo (log2 do número de iterações do setup de chave) permite aumentar o fator de trabalho ao longo do tempo, à medida que o hardware evolui. O bcrypt tem um limite fixo de 72 bytes na entrada e uma pegada de memória pequena, o que o torna menos resistente que funções com custo de memória contra ataques com GPU/ASIC. Continua largamente utilizado e é aceitável com custo >= 12, mas sistemas novos devem preferir Argon2id ou scrypt.

Exemplos

  • Django e Spring Security armazenam palavras-passe com bcrypt em custo 12 por defeito.
  • Um hash bcrypt típico começa com $2b$12$ seguido por um salt de 22 caracteres e um resumo de 31 caracteres.

Termos relacionados