请不要将此标记为副本,因为我已经检查了多个帖子,但没有一个对我有帮助.
我正在建立一个有登录页面的网站,我读了这篇文章
https://www.codeproject.com/Articles/704865/Salted-Password-Hashing-Doing-it-Right#normalhashing
关于如何使我的登录安全.
现在我明白,在每次注册时,我必须创建CSPRNG(加密安全伪随机数生成器)并将其添加到用户提交的密码,然后散列此混合并将其存储在DB中,并为每个用户存储盐,因为每个用户都是随机的.我的问题是,最简单,最简单的方法是什么.
在我的控制器中,我通过这种方法获取用户名和密码
public JsonResult Login(LoginModel data)
{
//some code...
//...
}
Run Code Online (Sandbox Code Playgroud)
我的登录模型包含
public class LoginModel
{
public string Username { get; set; }
public string Password { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
所以我得到的用户名和密码就像(字符串a = data.Username,...)
我已将此添加到我的项目中,但我不知道如何从这里继续
using System.Security.Cryptography;
Run Code Online (Sandbox Code Playgroud)
我知道如何保存在数据库中肯定我只想知道,如何制作随机盐(可能使用RNGCryptoServiceProvider),以及如何将其添加到用户的密码,然后散列最终结果.谢谢你的帮助.