CyberGlossary

Criptografía

bcrypt

También conocido como: Hash EksBlowfish, bcrypt de Provos-Mazières

Definición

Función adaptable de hashing de contraseñas basada en el cifrado Blowfish con un factor de coste ajustable, diseñada por Provos y Mazières en 1999.

bcrypt es un esquema de hashing de contraseñas publicado en 1999 por Niels Provos y David Mazières que utiliza una variante del key schedule de Blowfish ("EksBlowfish") para derivar un hash de 192 bits a partir de una contraseña con sal. Su parámetro de coste (log2 del número de iteraciones de configuración de clave) permite incrementar el factor de trabajo con el tiempo a medida que mejora el hardware. Tiene un límite codificado de 72 bytes en la entrada y un consumo de memoria reducido, lo que lo hace menos resistente que las funciones con coste en memoria frente a atacantes con GPU/ASIC. Sigue siendo muy utilizado y aceptable con coste >= 12, pero para nuevos sistemas se recomienda Argon2id o scrypt.

Ejemplos

  • Django y Spring Security almacenan las contraseñas con bcrypt y coste 12 por defecto.
  • Un hash bcrypt típico comienza con $2b$12$ seguido de una sal de 22 caracteres y un resumen de 31 caracteres.

Términos relacionados