Générateur Bcrypt
Générez et vérifiez des hachages de mot de passe bcrypt en ligne. Facteur de coût ajustable, salt intégré, aperçu en temps réel. Tout le traitement s'exécute localement dans votre navigateur.
Qu'est-ce que bcrypt?
Bcrypt est une fonction de hachage de mots de passe conçue par Niels Provos et David Mazières, basée sur le chiffrement Blowfish. Elle est spécifiquement conçue pour le stockage sécurisé des mots de passe et est l'un des algorithmes de hachage les plus utilisés au monde.
Comment fonctionne bcrypt?
Bcrypt prend un mot de passe et un salt en entrée, puis exécute un processus coûteux de configuration de clé (Eksblowfish) qui produit un hash de longueur fixe. Le hash inclut l'identifiant de l'algorithme, le facteur de coût, le salt et la valeur du hash.
Qu'est-ce que le facteur de coût dans bcrypt?
Le facteur de coût est un nombre de 4 à 31 qui détermine le nombre d'itérations de la configuration de clé. Chaque incrément double le temps de calcul. Un coût de 10 signifie 2^10 = 1024 itérations. Les valeurs recommandées sont 10-12 pour la plupart des applications.
Qu'est-ce qu'un salt et pourquoi est-il important?
Un salt est une valeur aléatoire de 128 bits unique pour chaque hash de mot de passe. Il empêche les attaquants d'utiliser des tables arc-en-ciel précalculées et garantit que des mots de passe identiques produisent des hashes différents. Bcrypt génère automatiquement le salt et l'intègre dans le hash.
Bcrypt est-il toujours sécurisé en 2025?
Oui, bcrypt reste l'un des algorithmes de hachage recommandés. Bien que des algorithmes plus récents comme Argon2 existent, bcrypt est considéré comme sécurisé avec un facteur de coût approprié (12 ou supérieur).
Quelle est la longueur maximale de mot de passe pour bcrypt?
Bcrypt a une longueur d'entrée maximale de 72 octets. Les mots de passe dépassant 72 octets sont tronqués silencieusement. Pour des mots de passe plus longs, envisagez un pré-hachage avec SHA-256 avant d'appliquer bcrypt.
Comment bcrypt se compare-t-il à MD5, SHA-256 et autres fonctions de hachage?
Contrairement à MD5 et SHA-256 conçus pour la vitesse, bcrypt est intentionnellement lent et coûteux en calcul. Les fonctions de hachage générales peuvent être calculées des milliards de fois par seconde, les rendant vulnérables aux attaques par force brute.
Quel est le format d'un hash bcrypt?
Un hash bcrypt suit le format: $2b$coût$salt+hash. Exemple: $2b$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy. Le préfixe $2b$ identifie la version de l'algorithme, suivi du facteur de coût, d'un salt de 22 caractères et d'un hash de 31 caractères.
Quelle est la différence entre $2a$, $2b$ et $2y$?
Ce sont des identifiants de version bcrypt. $2a$ est la version originale, $2b$ corrige un problème mineur de gestion de longueur de mot de passe dans OpenBSD, et $2y$ est la variante spécifique à PHP.
Est-il sûr d'utiliser un générateur bcrypt en ligne?
Lorsque le traitement s'exécute entièrement dans votre navigateur (côté client), c'est totalement sûr. Aucune donnée de mot de passe n'est transmise à un serveur. Cet outil traite tout localement en JavaScript.
Comment choisir le bon facteur de coût?
Le facteur de coût doit être aussi élevé que possible tout en maintenant la génération de hash acceptablement rapide. Une bonne règle: choisissez le coût où le hachage prend environ 250-500ms sur votre serveur.
Bcrypt peut-il être utilisé pour chiffrer des données?
Non, bcrypt est une fonction de hachage unidirectionnelle, pas un algorithme de chiffrement. Il ne peut pas être inversé pour récupérer le mot de passe original. Il est conçu uniquement pour la vérification de mots de passe.
Pourquoi bcrypt est-il lent par conception?
Bcrypt est intentionnellement lent pour rendre les attaques par force brute et par dictionnaire coûteuses en calcul. Alors qu'une fonction de hachage normale peut traiter des millions de mots de passe par seconde, bcrypt n'en traite que quelques centaines.
Comment vérifier un mot de passe contre un hash bcrypt?
Pour vérifier, extrayez le salt et le facteur de coût du hash stocké, exécutez bcrypt avec les mêmes paramètres sur le mot de passe saisi, et comparez le hash résultant avec le hash stocké. S'ils correspondent, le mot de passe est correct.