В отличие от CryptoSharp, которая представляет собой отличную библиотеку, она реализуется как упакованная оболочка вокруг собственной библиотеки. Это позволяет использовать инструкции на собственном уровне (например, SSE2), чтобы немного улучшить производительность реализации.
Недостатком является то, что он должен содержать собственные скомпилированные сборки, определять правильный, использовать, распаковывать, а затем загружать. Это означает, что он не идеален для всех сред, но отлично работает там, где он работает.
Ответ 3
В случае, как и я, вы пришли к этому вопросу через быстрый google (появился как верхняя ссылка), теперь вы можете загрузить SCrypt в качестве пакета Nuget в свой проект.
PM> Install-Package Scrypt.NET
Используйте следующее:
ScryptEncoder encoder = new ScryptEncoder();
string hashsedPassword = encoder.Encode("mypassword");
и сравнения
ScryptEncoder encoder = new ScryptEncoder();
bool areEquals = encoder.Compare("mypassword", hashedPassword);