简单的自定义注册/登录系统如何哈希和检索密码

时间:2015-11-15 19:00:24

标签: asp.net-mvc asp.net-mvc-5

我创建了一个简单的注册/登录系统,现在当用户注册它时,它只是将他们的普通密码存储在数据库中。我想知道如何在登录时对其进行哈希处理,如何解除它并将其与它们所放入的内容进行比较。

我的用户表/模型类中的所有内容都是用户名和密码

UsersController

// GET: Register User
public ActionResult Register(User user)
{
    if (ModelState.IsValid)
    {
        using (UserContext db = new UserContext())
        {
            db.Users.Add(user);
            db.SaveChanges();
        }
        ModelState.Clear();
    }
    return View();
}

// POST: Login User
[HttpPost]
public ActionResult Login(User user)
{
    using (UserContext db = new UserContext())
    {
        var usr = db.Users.SingleOrDefault(u => u.Username == user.Username && u.Password == user.Password);
        if (usr != null)
        {
            Session["UserID"] = usr.Username.ToString();
            return RedirectToAction("Index", "Profile");
        }
        else
        {
            ModelState.AddModelError("", "Username or Password Incorrect");
        }
    }
    return View();
}

0 个答案:

没有答案