私はasp.netコア・レザー・エンジンを使用しています。私は私のdbに保存されているパスワードのハッシュを持っています。ユーザーがパスワードを入力したときと比較するにはどうすればよいですか。ハッシュされたパスワードとユーザ入力との比較c#
パスワードをハッシュした方法は次のとおりです。
[HttpPost]
[Route("")]
public IActionResult Register(Home model)
{
if(!ModelState.IsValid)
{
return View("Index", model);
}
PasswordHasher<Home> Hasher = new PasswordHasher<Home>();
model.Password = Hasher.HashPassword(model, model.Password);
userFactory.Add(model);
TempData["message"] = false;
return RedirectToAction("Index");
}
アプリは、登録時にユーザーが入力したメールに基づいてパスワードを取得しました。私が理解できないことは、ハッシュされたパスワードとユーザーが与えたパスワードを比較する方法です。
ユーザーが入力したパスワードをハッシュし、この結果をデータベースのものと比較する必要があります。 – Phiter
@PhiterFernandes、どのように私はユーザーの入力パスワードをハッシュするか、またはdbからのパスワードをunhashしますか? – Aaron
ユーザーのパスワードを解読することはできません。ユーザー入力をハッシュするためにdbパスワードをハッシュするのと同じ方法を使用します。 – Phiter