Générateur et vérificateur de hash bcrypt
Hashez vos mots de passe avec le standard de l'industrie bcrypt et vérifiez un mot de passe en clair contre n'importe quel hash bcrypt. Coût ajustable.
Qu'est-ce que bcrypt ?
bcrypt est une fonction de hachage de mots de passe conçue par Niels Provos et David Mazières en 1999. Elle s'appuie sur le chiffrement Blowfish et est volontairement lente : un facteur de coût configurable contrôle combien de tours de mise en place de clé sont exécutés avant de produire le hash, pour que les défenseurs puissent monter le coût à mesure que le matériel accélère. Chaque hash embarque aussi un sel aléatoire de 128 bits, donc hacher deux fois le même mot de passe produit deux sorties différentes et les rainbow tables précalculées sont inutiles. La sortie ressemble à $2b$10$… où 2b est la version d'algorithme, 10 le facteur de coût, et le reste le sel et le hash. bcrypt reste le choix de référence pour le stockage des mots de passe en 2026 : plus simple à utiliser qu'Argon2, plus éprouvé que scrypt, et supporté dans tous les langages majeurs.
Comment l'utiliser
Pour hacher, tapez le mot de passe, choisissez un facteur de coût et cliquez sur Générer le hash. La sortie va directement dans votre base. Pour vérifier, collez le hash de la base et tapez le mot de passe candidat, puis cliquez sur Vérifier. Bcrypt embarque le facteur de coût dans le hash, donc vous ne le rechoisissez pas pour vérifier — la librairie le lit dans la chaîne.
Choisir un facteur de coût
Chaque palier de coût double le temps. Choisissez le coût le plus élevé qui garde les connexions sous environ 250 ms sur votre matériel. Pour des connexions à fort trafic sur des serveurs courants, 10 (≈60 ms) est le minimum moderne ; 12 (≈250 ms) est un choix confortable pour les comptes sensibles ; 13–15 se justifie pour des credentials critiques mais vous devez mesurer la latence. Augmentez le coût quand vous mettez à jour la base — ré-hachez à la connexion suivante.
Référence des facteurs de coût (CPU moderne, mono-thread)
| Coût | Itérations | Temps approx. |
|---|---|---|
| 4 | 16 | ~1 ms |
| 8 | 256 | ~15 ms |
| 10 (default) | 1,024 | ~60 ms |
| 12 | 4,096 | ~250 ms |
| 13 | 8,192 | ~500 ms |
| 14 | 16,384 | ~1 s |
| 15 | 32,768 | ~2 s |