Générez et vérifiez les hachages de mots de passe bcrypt. Configurez le facteur de travail et l'algorithme.
Un sel aléatoire de 128 bits (16 octets) est généré avec un CSPRNG. Les sels empêchent les attaques par table arc-en-ciel — des mots de passe identiques produisent des hachages différents.
L'algorithme Eksblowfish effectue 2^n itérations (n est votre facteur de coût). Doubler le coût double le temps de calcul — rendant les attaques par force brute proportionnellement plus difficiles.
La sortie encode tout : $2b$12$[sel de 22 caractères][hachage de 31 caractères]. Le préfixe "$2b$12$" indique à bcrypt d'utiliser cost=12. Pas besoin de colonne de sel séparée.
$2b$12$eImiTAiTAi25sDB8iBjEJfF2PbO0oagzXCgKCQfHIFnOSuJl.J2
$2b$Version de l'algorithme (2a, 2b, 2y)
12$Facteur de coût (2^12 = 4 096 tours)
22 caractèresSel encodé en Base64 (128 bits)
31 caractèresHachage encodé en Base64 (184 bits)
| Coût | Itérations | Temps approx. | Recommandation |
|---|---|---|---|
| 10 | 1 024 | ~50-100ms | Minimum pour les nouvelles applications |
| 11 | 2 048 | ~100-200ms | Bon pour les APIs à fort trafic |
| 12 | 4 096 | ~200-400ms | Défaut recommandé (2025) |
| 13 | 8 192 | ~400-800ms | Applications haute sécurité |
| 14 | 16 384 | ~800ms-1.6s | Coût maximal pratique |
Temps approximatifs sur un CPU serveur moderne. Toujours faire des benchmarks sur votre matériel cible.
Voir aussi le Générateur de hachage pour MD5, SHA-1, SHA-256, SHA-512 et d'autres fonctions de hachage cryptographique.
Bcrypt est une fonction de hachage de mots de passe conçue par Niels Provos et David Mazières pour OpenBSD en 1999. Contrairement à MD5 ou SHA, bcrypt est intentionnellement lent et gourmand en CPU, rendant les attaques par force brute impraticables. Il intègre automatiquement un sel, empêchant les attaques par table arc-en-ciel. Utilisez bcrypt (ou Argon2) pour tout stockage de mots de passe — ne stockez jamais des mots de passe en clair ou avec des hachages rapides (MD5/SHA).
Le facteur de coût (facteur de travail) contrôle la lenteur de bcrypt. Chaque incrément double le temps de calcul. Pour l'authentification des utilisateurs, visez un temps de hachage de 100 à 300 ms sur votre matériel serveur. Commencez à 12 et faites des benchmarks — utilisez la valeur la plus élevée qui maintient le temps de connexion en dessous de 500 ms. Plus élevé est plus sûr mais plus lent. Le coût 10 est le minimum recommandé pour les nouvelles applications en 2025.
Les deux sont des algorithmes modernes de hachage de mots de passe. Bcrypt est éprouvé (25+ ans) et largement pris en charge. Argon2 a remporté le Password Hashing Competition (2015) et est plus résistant aux attaques GPU grâce à l'utilisation de la mémoire intensive. Argon2id (la variante recommandée) combine Argon2i et Argon2d pour résister aux attaques par canal auxiliaire et aux attaques GPU. Pour les nouvelles applications, Argon2id est le choix privilégié.
Cet outil génère des hachages bcrypt standard compatibles avec n'importe quelle bibliothèque bcrypt. Le hachage s'exécute entièrement dans votre navigateur avec la bibliothèque bcryptjs — aucun mot de passe n'est envoyé aux serveurs. Cependant, générez toujours les hachages de mots de passe côté serveur dans les applications de production. Les démos côté client sont uniquement à des fins d'apprentissage et de test.
Tous les hachages se font localement dans votre navigateur. Les mots de passe ne sont jamais transmis ou stockés.