Est-ce que quelqu'un connaît une bonne implémentation de bcrypt, je sais que cette question a déjà été posée mais elle a obtenu très peu de réponses. Je ne suis pas sûr de choisir une implémentation qui apparaît dans Google et je pense que je ferais peut-être mieux d'utiliser sha256 dans l'espace de noms System.Security.Cryptography, du moins je sais qu'il est pris en charge! Que pensez-vous?
la source
BCrypt.Net semble être une bibliothèque la plus populaire en ce moment
http://bcrypt.codeplex.com/
Voici un exemple comment l'utiliser pour hacher le mot de passe:
Exemple de sortie:
la source
Vous pouvez trouver une mise à jour de l'implémentation de BCrypt pour .Net ici: http://bcrypt.codeplex.com/
la source
J'avais besoin d'une implémentation BCrypt lors du déplacement de quelque chose de PostgreSQL (qui a pg_crypto) vers SQLite (ce qui ne l'est pas), alors j'ai écrit le mien. Voyant ce message, je ne suis pas le seul à en avoir besoin, j'ai décidé de mettre une licence dessus et de le libérer. L'URL est:
http://zer7.com/software.php?page=cryptsharp
L'implémentation Blowfish derrière elle est un port de l'implémentation du domaine public C de Bruce Schneier, et réussit sur tous les vecteurs de test officiels.
Le code BCrypt que j'ai écrit moi-même basé sur les spécifications. J'ai également créé un script PHP qui génère des mots de passe aléatoires de longueur 0 à 100 et les sels, les crypte et les renvoie dans un fichier de test. Le code C # correspond à ces 100% du temps jusqu'à présent. Vous êtes invités à utiliser le script et à le tester vous-même.
La bibliothèque comprend également du code PBKDF2 qui fonctionne pour n'importe quel HMAC, par opposition à l'implémentation SHA-1 uniquement de .Net (ajoutée aujourd'hui - j'ai l'intention de faire SCrypt en C # bientôt et cela nécessite PBKDF2 avec HMAC-SHA256). Vous pouvez également créer un plan basé sur cela, si vous le souhaitez.
la source
Mauvaise réponse, veuillez voir ci-dessous
Tous les algorithmes postfixés «Cng» (Cryptography Next Generation) du .Net Framework utilisent désormais bcrypt. Par exemple SHA256Cng .
En fait, MS BCrypt (BestCrypt) ne fait pas référence à celui basé sur le chiffrement Blowfish - merci, RobbyD, pour le commentaire.
Ne supprimera pas la réponse, juste au cas où quelqu'un d'autre ferait la même confusion.
la source
Avez-vous essayé cette fonction MS BCryptCreateHash C ++ peut-être? Semble être présent depuis Windows Server 2008 et Windows Vista.
En outre, vous pouvez probablement vérifier la classe MS C # BCryptNative.cs suivante peut-être aussi.
la source