我有几段不同的代码,但简短的故事是我使用 SHA1 将一些密码插入 MySQL 数据库,并将 SHA1 哈希计算到 .NET 中,但它们不匹配。我认为这是我在 .NET 中的编码代码的问题。
SQL 代码:
INSERT INTO user_credentials (Password) VALUES (SHA1('password'));
密码哈希到 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8
.NET 代码:
public static string GetPasswordHash(string password)
{
// problem here with encoding?
byte[] byteArray = Encoding.ASCII.GetBytes(password);
SHA1 sha = new SHA1CryptoServiceProvider();
byte[] hashedPasswordBytes = sha.ComputeHash(byteArray);
return Encoding.ASCII.GetString(hashedPasswordBytes);
}
密码哈希到 [?a??????%l?3~???
谢谢你的帮助!