C# 如何使用BCrypt验证密码

C# 如何使用BCrypt验证密码,c#,bcrypt,password-hash,C#,Bcrypt,Password Hash,如何检查用户输入的密码是否与其他人散列并存储到数据库中的密码匹配。通常你会用这个,对吗 bool value = BCryptHelper.CheckPassword("Tom123", passwordHash); 那么,如果您没有包含哈希密码的passwordHash变量,该怎么办 我对BCrypt的工作原理不是很了解,所以我想我遗漏了一些非常简单的东西。下面是答案的提示。您可以通过链接了解更多详细信息 string salt = BCryptHelper.GenerateSalt(6);

如何检查用户输入的密码是否与其他人散列并存储到数据库中的密码匹配。通常你会用这个,对吗

bool value = BCryptHelper.CheckPassword("Tom123", passwordHash);
那么,如果您没有包含哈希密码的passwordHash变量,该怎么办


我对BCrypt的工作原理不是很了解,所以我想我遗漏了一些非常简单的东西。

下面是答案的提示。您可以通过链接了解更多详细信息

string salt = BCryptHelper.GenerateSalt(6);
var passwordHash= BCryptHelper.HashPassword("Tom123", salt);

bool value = BCryptHelper.CheckPassword("Tom123", passwordHash);

加密用户输入的密码,并比较哈希值
passwordHash
是从数据库中获得的。这是用户创建帐户时输入的密码的散列。@Ehsan这真的没有帮助,根本没有回答我的问题。@JonathonReinhart我知道密码散列是什么。这根本不能回答我的问题。@Maatt对用户输入的密码进行加密将得到散列密码。如果用户输入了正确的密码,那么散列应该与存储在数据库中的密码相同。我知道这段代码是如何工作的,我的问题是我不是散列和存储密码的人。它是由其他人完成的,因此我没有密码散列变量用于该代码行中检查密码与用户输入的密码。然后你应该获得密码散列来解密它,否则你将成为黑客!!!抱歉,伙计们,我想得太多了。