Qu’est-ce que le hachage Bcrypt ?
Bcrypt est une fonction de hachage de mot de passe conçue par Niels Provos et David Mazières basée sur le chiffre Blowfish. Contrairement aux algorithmes de hachage rapides comme SHA-256, bcrypt est intentionnellement lent et inclut un facteur de coût configurable (facteur de travail) qui contrôle le coût de calcul de la production d'un hachage. Cela rend les attaques par force brute beaucoup plus difficiles. Bcrypt génère et intègre également automatiquement un sel aléatoire dans chaque hachage, de sorte que des mots de passe identiques produisent des valeurs de hachage différentes. Le format de sortie ($2a$, $2b$ ou $2y$ préfixe) code la version de l'algorithme, le facteur de coût, le sel et le hachage dans une seule chaîne de 60 caractères.
Comment utiliser cet outil de hachage Bcrypt
- 1Pour générer un hachage : entrez un mot de passe, ajustez le facteur de coût (10 est une bonne valeur par défaut) et cliquez sur Générer.
- 2Le hachage bcrypt apparaît instantanément : copiez-le pour le stocker dans votre base de données.
- 3Pour vérifier : passez à l'onglet Vérifier, entrez le mot de passe d'origine et le hachage stocké.
- 4Cliquez sur Vérifier pour vérifier si le mot de passe correspond au hachage.
Cas d'utilisation courants de Bcrypt
Stockage sécurisé des mots de passe
Hachez les mots de passe des utilisateurs avec bcrypt avant de les stocker dans une base de données. Le sel intégré et le facteur de coût réglable protègent contre les attaques de table arc-en-ciel et par force brute.
Test de migration de mot de passe
Lors de la migration des systèmes d'authentification, vérifiez rapidement que les hachages bcrypt existants correspondent toujours à leurs mots de passe d'origine.
Analyse comparative des facteurs de coût
Testez différents facteurs de coût pour trouver le bon équilibre entre sécurité et performances de connexion pour le matériel de votre serveur.
Développement et débogage
Générez des exemples de hachages bcrypt à utiliser dans les montages de test, les données de départ ou le développement d'API sans avoir besoin d'un backend en cours d'exécution.
Questions fréquentes
Quel facteur de coût dois-je utiliser ?
Un facteur de coût de 10 est une valeur par défaut largement utilisée. Chaque incrément double le temps de calcul. Pour les applications de haute sécurité, utilisez 12 ou plus, mais assurez-vous que cela ne ralentit pas votre flux de connexion – visez moins de 250 ms par hachage sur votre serveur.
Pourquoi des mots de passe identiques produisent-ils des hachages bcrypt différents ?
Bcrypt génère un sel aléatoire unique pour chaque opération de hachage. Le sel est intégré dans la chaîne de sortie, donc même le même mot de passe haché deux fois produira des résultats différents. La vérification fonctionne toujours car bcrypt extrait le sel du hachage stocké.
Bcrypt est-il meilleur que SHA-256 pour les mots de passe ?
Oui. SHA-256 est conçu pour être rapide, ce qui le rend vulnérable aux attaques par force brute sur les mots de passe. Bcrypt est intentionnellement lent et inclut un facteur de coût réglable, ce qui le rend beaucoup plus résistant au piratage des mots de passe.
Cet outil peut-il être utilisé en toute sécurité avec de vrais mots de passe ?
Le hachage s'exécute entièrement dans votre navigateur : aucune donnée n'est envoyée à un serveur. Cependant, pour le stockage des mots de passe en production, hachez toujours les mots de passe côté serveur pour éviter l'exposition des mots de passe en clair pendant le transit.