【问题标题】:Blowfish Implementation for C#.NET - Moving from PHP to C#C#.NET 的 Blowfish 实现 - 从 PHP 迁移到 C#
【发布时间】:2014-09-17 09:59:40
【问题描述】:

我正在将我的应用程序从 PHP 迁移到 C# MVC。我一直使用以下方法来加密密码:

string password_hash ( string $password )

默认情况下,password_hash() 使用 BLOWFISH 散列算法并生成前缀为 $2y$ 的散列。

我已经查看并尝试了很多 supposed 算法的实现,但它们似乎都不适用于我现有的哈希,我不确定我是否可以相信他们中的任何一个。

我试过了:

  • 来自 Nuget 的 Bcrypt.NET
  • This
  • 我一直在考虑试一试 This,直到我意识到它在 Nuget 页面上显示为“未列出”。

我需要它,以便在用户再次登录时验证数据库中的现有哈希并使用标准 C# .MVC 身份框架方法恢复它们。

如何使用 C# 在 PHP 中验证使用 password_hash() 生成的密码?

【问题讨论】:

  • 我已经修改了我的问题,描述了问题并请求解决方案。谢谢
  • 感谢您撤回关闭投票...哦等等!

标签: c# php cryptography blowfish


【解决方案1】:

我刚刚偶然发现了一个名为 CryptSharp 的包,它似乎可以像 PHP 中的 password_verify() 那样验证密码。我已经在 PHP 生成的一些现有密码哈希上对其进行了测试...

using CryptSharp;
bool matches = Crypter.CheckPassword("password", "password hash");

这是Nuget PackageDocs

我使用的是 2.0.0 版本...

【讨论】:

  • 我希望这可以帮助一些 PHP 到 C# 转换的伙伴 :)
猜你喜欢
  • 1970-01-01
  • 2018-08-16
  • 1970-01-01
  • 2011-04-03
  • 2012-09-15
  • 2018-09-13
  • 1970-01-01
  • 2012-06-09
  • 2020-10-26
相关资源
最近更新 更多