首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >面向.NET的生产准备bcrypt实现

面向.NET的生产准备bcrypt实现
EN

Security用户
提问于 2012-08-29 05:13:10
回答 2查看 2.9K关注 0票数 8

哪些.NET / C# bcrypt实现(如果有的话)被认为适合生产环境?

我在其他问题的答案中提到了CryptSharp和BCrypt.Net,但没有讨论它们的使用范围,也没有讨论它们可能被审查了多少。

EN

回答 2

Security用户

发布于 2013-02-24 04:01:59

C#与Java共享一个显著的特性,即可复制性。这就是Java的格言“写一次,在任何地方运行”。这并不是完全正确的,但是对于这样的代码:

  1. 不使用浮点类型;
  2. 是纯粹的计算(没有系统调用);
  3. 是单螺纹的;

那么测试是有效的。这意味着您可以使用BCrypt.NET实现,并查看它是否与参考码兼容。注意包含非ASCII密码字符的测试,这通常是一个痛处。另外,度量性能以确保.NET实现不会太慢(对于这种计算任务,Java或.NET代码可能比C代码慢2到4倍)。

如果.NET实现与参考代码兼容,而且性能也不差,那么C#/.NET的“可复制结果”方面将允许您得出结论,即它已经准备好生产了。

票数 2
EN

Security用户

发布于 2012-08-31 18:05:44

我意识到这确实没有回答你的问题,但bcrypt不是(在我看来)最好的密码哈希机制。

您可以在这里找到密码哈希机制的c#实现,在这里使用PBKDF2:CrackStation

虽然它还年轻得多,但我听说过关于氪t TarSnap氪不幸的一些好东西,但我还没有成功地找到一个好的.net实现。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/19403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档