Générateur de hachage bcrypt
Générer le hash
Plus élevé = plus lent et plus sécurisé. 12 est un bon défaut.
De temps en temps, vous avez un hachage bcrypt d’une ancienne sauvegarde et un mot de passe en clair, et vous devez savoir s’ils correspondent. Ou vous avez un mot de passe et souhaitez le hachage qu’un facteur de coût donné produirait. Cet outil fait les deux : tapez un mot de passe et il génère un nouveau hachage, collez un hachage et un candidat et il vous dit si la vérification réussit, en utilisant la même comparaison en temps constant qu’une vérification de connexion en production.
Générer ou vérifier bcrypt
-
1
Choisissez un mode
Générez un nouveau hachage à partir d'un mot de passe, ou vérifiez un mot de passe par rapport à un hachage `$2a$` / `$2b$` / `$2y$` existant.
-
2
Pour générer : entrez le texte en clair et le coût
Coût 4-13 ; 10-12 est normal. Un sel aléatoire de 16 octets est créé pour chaque hachage.
-
3
Pour vérifier : collez le hachage et le texte en clair
L'outil extrait le sel et le coût du hachage et re-hache le texte en clair avec les mêmes paramètres.
-
4
Lisez le résultat
Le mode de génération copie le hachage de 60 caractères ; le mode de vérification renvoie une correspondance verte ou une non-correspondance rouge.
Fonctionnement interne du mode vérification
Étant donné un hachage stocké comme :
$2b$12$mE2n5YqWjKqT9tXg.OQPoeeHZJ9hdSvOt5wFdRRQwl6yE1vWWY3z6
Le vérificateur :
- Analyse la version (
2b), le coût (12), le sel (les 22 premiers caractères après le coût) et le digest (les 31 derniers caractères). - Relance bcrypt sur le texte en clair candidat avec le sel et le coût extraits.
- Compare le digest résultant à l’original en utilisant une comparaison en temps constant.
Une comparaison réussie donne true ; toute différence donne false.
Comparaison en temps constant
Comparer deux chaînes avec un == naïf renvoie dès qu’un octet diffère, un canal latéral de timing qui peut révéler le hachage chiffre par chiffre sur suffisamment d’échantillons. Les vérifications de mot de passe en production (et cet outil) utilisent une comparaison en temps constant qui examine toujours chaque octet, de sorte que le temps de décision ne dépend pas du nombre d’octets de tête qui correspondent.
Cas de diagnostic courants
| Symptôme | Cause probable |
|---|---|
| La vérification échoue, vous êtes sûr du mot de passe | Espaces blancs ou BOM en fin d’entrée. Supprimez les deux. |
La vérification échoue, version 2y |
Certaines bibliothèques n’aiment pas 2y ; c’est valide et compatible. Re-hachez avec 2b à l’avenir. |
| Hachage trop court / mal formé | Ce n’est pas un hachage bcrypt. MD5 fait 32 caractères hexadécimaux, SHA-1 fait 40, bcrypt fait 60 avec des délimiteurs $. |
| Avertissement de non-correspondance de coût | Le coût stocké est en dessous de votre minimum de politique. Re-hachez lors de la prochaine connexion réussie. |
Re-hachage à la connexion
Meilleure pratique : lorsque qu’un utilisateur se connecte avec succès, vérifiez si le hachage stocké a un coût inférieur à votre politique actuelle. Si c’est le cas, re-hachez le mot de passe au nouveau coût et mettez à jour la base de données. En quelques mois, vous mettez à niveau l’ensemble de la base d’utilisateurs sans demander à quiconque de changer son mot de passe.
Ce que l’outil ne fait pas
- Vérification en masse, Conçu pour un hachage à la fois.
- Craquer ou brute force, Les attaques par dictionnaire ou par tables arc-en-ciel sont intentionnellement hors de portée.
- Récupérer le texte en clair, bcrypt est unidirectionnel ; si vous avez oublié le mot de passe, le seul chemin est de réinitialiser.
Questions fréquentes
Il est envoyé à notre serveur via une connexion chiffrée, car le hachage et la vérification y sont calculés. Il n’est ni stocké ni journalisé, et n’est jamais ajouté au lien de la page.
Le sel est généré aléatoirement par hachage. C’est tout l’intérêt, deux utilisateurs avec le même mot de passe obtiennent des hachages différents, contrecarrant les tables arc-en-ciel.
Oui, c’est exactement ce que fait le mode vérification : collez le hachage que vous avez, collez un mot de passe candidat, l’outil confirme ou infirme la correspondance.
Oui. Tous les variants modernes interopèrent, le digest est compatible entre les versions ; seul le tag diffère. Certains anciens hachages $2$ des systèmes des années 2000 peuvent nécessiter une bibliothèque avec un support explicite pour l’héritage.
Outils similaires
Encodeur de fichiers Base64
Encodez n'importe quel fichier (PDF, ZIP, image, exécutable) en texte Base64 pour l'intégration dans JSON, email, YAML ou URI de données. Fonctionne localement, sans téléchargement.
Encodeur de chiffre A1Z26
Encodez du texte en utilisant le chiffre A1Z26 (A=1, B=2, ... Z=26) ou décodez une séquence de nombres en lettres, avec un séparateur personnalisable.
Encodeur et décodeur Base58
Encodez du texte UTF-8 ou des octets hexadécimaux et décodez Base58 avec l’alphabet Bitcoin, Ripple ou Flickr en toute sécurité.
Encodeur de César
Cryptez et décryptez du texte en utilisant le chiffre de César. Tout décalage de 1 à 25, prend en charge ROT13 comme un cas spécial, préserve la ponctuation et la casse.
Générateur de CSR
Générez une demande de signature de certificat encodée en PEM et une clé privée RSA correspondante. Spécifiez le nom commun, les champs d'organisation et la taille de clé (2048, 3072 ou 4096 bits).
Encodeur et décodeur Base85
Encodez et décodez Base85 dans la variante Adobe Ascii85, celle utilisée dans les fichiers PostScript et PDF. Plus compact que Base64 pour les données binaires.
Outil disponible dans d’autres langues
- Trình tạo hash bcrypt [VI]
- Generator Hash bcrypt [ID]
- ตัวสร้าง bcrypt Hash [TH]
- bcrypt-hashgenerator [SV]
- Generador de Hash bcrypt [ES]
- bcrypt-Hash-Generator [DE]
- bcrypt-hashgenerator [NL]
- bcrypt 해시 생성기 [KO]
- Generator hashy bcrypt [PL]
- bcrypt Hash Oluşturucu [TR]
- مولد Hash bcrypt [AR]
- bcrypt Hashジェネレーター [JA]
- Gerador de Hash bcrypt [PT]
- bcrypt 哈希生成器 [ZH]
- bcrypt Hash Generator [EN]
- Generatore di hash bcrypt [IT]
- Генератор bcrypt-хешей [RU]