Générateur et vérificateur de hash bcrypt
DéveloppementUn générateur de bcrypt applique un hash à un mot de passe avec l'algorithme bcrypt (sel aléatoire plus un facteur de coût réglable) et vérifie si un mot de passe correspond à un hash donné.
Cette page a été traduite avec l’aide de l’IA et n’a pas encore été relue par un professionnel. Consultez les sources citées avant toute décision importante.
Qu’est-ce que c’est
bcrypt est une fonction de hachage de mots de passe de 1999 fondée sur le chiffrement Blowfish et volontairement lente pour augmenter le coût des attaques par force brute. Chaque +1 sur le facteur de coût double le travail, et chaque hash intègre un sel aléatoire, de sorte que le même mot de passe produit un hash différent à chaque fois. Cet outil exécute la bibliothèque bcryptjs à l'intérieur de votre navigateur, si bien que le mot de passe ne quitte jamais votre appareil. Utilisez-le pour créer des hash de comptes de test pendant le développement ou pour vérifier un hash stocké dans votre base de données.
Comment l’utiliser
- 1En mode génération, saisissez un mot de passe et choisissez le coût (rounds) pour créer un hash.
- 2En mode vérification, saisissez le mot de passe et le hash bcrypt existant.
- 3Copiez le hash obtenu ou consultez le résultat de la correspondance.
Référence
| Partie | Signification |
|---|---|
| $2b$ | Identifiant de l'algorithme (révision actuelle de bcrypt) |
| 10$ | Coût — 2^10 = 1 024 itérations |
| 22 caractères suivants | Sel aléatoire de 128 bits (encodé en base64) |
| 31 derniers caractères | Sortie du hash de 184 bits (checksum) |
Sources et normes
- A Future-Adaptable Password Scheme (bcrypt) - USENIX
- OWASP Password Storage Cheat Sheet - OWASP
- MDN Web Docs: Client-side web APIs - MDN Web Docs
FAQ
Mon mot de passe est-il envoyé à un serveur ?
Non. La bibliothèque bcryptjs s'exécute dans votre navigateur, donc le hachage et la vérification sont locaux : le mot de passe et le hash ne sont jamais transmis ni stockés. Évitez tout de même de saisir des mots de passe de production sur des machines partagées ou pendant un partage d'écran.
Pourquoi le hash est-il différent à chaque fois pour le même mot de passe ?
Parce qu'un nouveau sel aléatoire est généré et intégré à chaque hash. La vérification réutilise le sel stocké dans la chaîne du hash, de sorte que chacun de ces hash se compare correctement.
Quel coût (rounds) dois-je utiliser ?
En général entre 10 et 12. Chaque incrément double le temps, visez donc environ 100–300 ms par hash sur le matériel de votre serveur.
Y a-t-il une limite de longueur du mot de passe ?
bcrypt n'utilise que les 72 premiers octets de l'entrée et ignore silencieusement le reste. Cet outil avertit lorsqu'un mot de passe dépasse 72 octets UTF-8.