CyberGlossary

Cryptographie

bcrypt

Aussi appelé: Hash EksBlowfish, bcrypt de Provos-Mazières

Définition

Fonction adaptative de hachage de mots de passe fondée sur le chiffrement Blowfish avec un facteur de coût ajustable, conçue par Provos et Mazières en 1999.

bcrypt est un schéma de hachage de mots de passe publié en 1999 par Niels Provos et David Mazières, qui utilise une variante du key schedule de Blowfish ("EksBlowfish") pour dériver un hachage de 192 bits à partir d'un mot de passe salé. Son paramètre de coût (log2 du nombre d'itérations d'initialisation de clé) permet d'augmenter le facteur de travail au fil du temps, à mesure que le matériel s'améliore. bcrypt impose une limite codée en dur de 72 octets en entrée et a une empreinte mémoire faible, ce qui le rend moins résistant aux GPU/ASIC que les fonctions à coût mémoire. Il reste largement utilisé et acceptable avec un coût >= 12, mais les nouveaux systèmes devraient préférer Argon2id ou scrypt.

Exemples

  • Django et Spring Security stockent les mots de passe avec bcrypt au coût 12 par défaut.
  • Un hash bcrypt typique commence par $2b$12$ suivi d'un sel de 22 caractères et d'un condensé de 31 caractères.

Termes liés