我目前正在将 CakePhp 应用程序迁移到 ASP.NET。在这一点上阻止我的一件事是我无法获得正确的哈希方法来获得正确的密码,因此用户能够从 ASP.NET 应用程序登录。
我有在 config/core.php 文件中设置的盐值。
我用谷歌搜索试图确定在哪里可以找到使用哪种散列算法,但无法找到正确的查询或没有结果。
到目前为止,这是我对密码进行哈希处理的 C# 方法。
public static string ToHash(this string password, string salt)
{
if (string.IsNullOrEmpty(password))
return "";
var provider = new SHA1CryptoServiceProvider();
var encoding = new UnicodeEncoding();
var bytes = provider.ComputeHash(encoding.GetBytes(salt + password));
return Encoding.UTF8.GetString(bytes);
}
我尝试在密码之前或之后放置盐,目前根本不匹配,这是 cakephp mysql 数据库中的哈希密码:
c7fb60ef77dbe3d1681a68e6741ee3a23cc1f41d
这是我从我的方法中得到的
��3[v"����1�:�ѐ��</p>
不太确定在哪里/如何解决这个问题。任何帮助或提示将不胜感激。
谢谢