Das hört sich vielleicht nach einer seltsamen Frage an, und es fühlt sich ein bisschen seltsam an, dass ich das wirklich fragen muss, aber nachdem ich ein paar Stunden über die MSDN-Dokumentation für die in Vista hinzugefügten bcrypt
-Routinen gestanden habe, Ich bin fast zu dem Schluss gekommen, dass es keine wirkliche Unterstützung von bcrypt gibt!
Laut Wikipedia:
bcrypt ist eine adaptive kryptographische Hash-Funktion für Passwörter ... basierend auf der Blowfish-Chiffre ... Neben der Einbindung eines Salz zum Schutz vor Rainbow-Table-Attacken, BCrypt ist eine adaptive Hash: im Laufe der Zeit kann es immer langsamer gemacht werden, so bleibt es resistent gegen gezielte Brute-Force-Suchangriffe gegen den Hash und das Salz.
Aus der Dokumentation zu MSDN ist die "bcrypt" -Bibliothek jedoch anscheinend eine generische Schnittstelle für Verschlüsselung und Hashing. Sie müssen einen Handle für einen "Algorithmus-Provider" über die BCRyptOpenAlgorithmProvider-Funktion , die mehrere integrierte Algorithmen zur Auswahl hat. Aber das Wort "Blowfish" erscheint nirgendwo in der Liste.
Also vermisse ich etwas? Lese ich das falsch? Oder unterstützt die "bcrypt" -Bibliothek von Windows überhaupt nicht bcrypt?
Im Kontext des MSDN ist BCrypt eine Kurzform von "BestCrypt" , aber der PR-Name dafür lautet:
Es ist in bcrypt.dll
implementiert.
BestCrypt / BCrypt / Cng ist der Nachfolger des älteren CryptoAPI .
Microsoft entfernt langsam Verweise auf "BestCrypt" von ihrer Site, aber Sie können es immer noch auf einigen Seiten sehen wie:
SHA256Cng-Klasse
Dieser Algorithmus dient nur zum Hashing und bietet keine Verschlüsselung oder Entschlüsselung. Es verwendet den BCrypt (BestCrypt) Layer CNG.
Es ist interessant (für mich jedenfalls), dass das .NET-Framework Ihnen im Allgemeinen drei Implementierungen für jede Art von Kryptoalgorithmus zur Verfügung stellen kann. Für SHA2-Hashing gibt es beispielsweise:
Nein, bcrypt
ist die Abkürzung für bestcrypt . Und nein, es unterstützt kein bcrypt (blowfish crypt) Passwort Hashing.
Tags und Links windows-7 windows winapi windows-vista bcrypt