Hachage/Crypto
Bcrypt Hash + Verify
Hacher des mots de passe avec bcrypt (sel aléatoire, coût réglable) et vérifier un mot de passe par rapport à un hash bcrypt existant.
Bcrypt is a deliberately slow password-hashing algorithm: unlike MD5 or SHA-256, it intentionally requires heavy computation so that brute-forcing passwords stays impractical even if a database of hashes leaks.
How to use it
- Hash: enter a password and set a cost factor — a higher number means slower, more secure hashing.
- Every hash call generates a fresh random salt, so the same password produces a different hash each time — that's expected and normal.
- Verify: paste a password and an existing bcrypt hash to check whether they match, without hashing manually yourself.
Common uses
- Manually checking that a backend hashes passwords correctly before storing them.
- Generating a test bcrypt hash for seed data or fixtures during development.
- Debugging a failed login by comparing an entered password against the stored hash.
Things to keep in mind
Pick a cost factor that keeps hashing around 100-300ms on your target server — a balance between security and login-time load.
Bcrypt truncates passwords longer than 72 bytes — characters beyond that limit are ignored by the algorithm.
Article sur cet outil: Bcrypt : pourquoi les mots de passe sont hachés lentement, pas rapidement
Questions fréquentes
Faut-il gérer le sel séparément avec bcrypt ?
Non, bcrypt génère et intègre automatiquement un sel aléatoire dans le hash produit. Vous n'avez rien à stocker ni gérer en plus du hash lui-même.
Y a-t-il une limite de longueur pour le mot de passe ?
Oui, bcrypt tronque silencieusement les mots de passe au-delà de 72 octets : tout ce qui dépasse cette limite est ignoré lors du hachage, sans avertissement.
Comment choisir le facteur de coût ?
Le coût contrôle le temps de calcul de façon exponentielle : chaque incrément double le temps nécessaire. Choisissez la valeur la plus élevée que votre matériel peut supporter sans ralentir excessivement l'expérience utilisateur, généralement entre 10 et 12 aujourd'hui.
Y a-t-il une limite de longueur pour le mot de passe en bcrypt ?
Oui, bcrypt ne traite que les 72 premiers octets du mot de passe — tout ce qui dépasse est simplement ignoré, sans avertissement. En pratique, c'est rarement un problème, mais il faut y penser avec des mots de passe très longs ou des caractères non-ASCII, où un caractère peut occuper plusieurs octets.
Pourquoi recommande-t-on encore bcrypt alors qu'Argon2 existe ?
Bcrypt est éprouvé depuis des décennies en pratique, largement supporté dans tous les langages et frameworks, et reste un choix tout à fait fiable. Argon2 est recommandé en priorité pour les nouveaux systèmes grâce à sa protection contre les attaques sur GPU/ASIC, mais bcrypt n'est pas considéré comme dangereux — seulement moins résistant au matériel spécialisé.