如何加密asp.net MVC中的密码字段以加密形式存储?
答案 0 :(得分:3)
典型的工作流程包括生成salt值并使用它来散列密码,然后将它们存储在行中。这在许多地方都有详细记录,很容易搜索。
如果你真的想要一种快速哈希或加密的方法,请看看FormsAuthentication.HashPasswordForStoringInConfigFile
答案 1 :(得分:2)
如果您担心通过网络发送纯文本,请使用https。然后,您是否使用https使用单向散列算法(如Sha256)来“加密”密码并将其存储在您的数据库(或您正在使用的任何持久存储)中。当用户登录时,使用相同的算法将他们输入的文本转换为散列文本,并将散列文本与数据库中的散列文本进行比较。
答案 2 :(得分:1)
我找到的最简单方法是使用Membership Provider from ASP.NET。然后你可以在web.config中配置它,如下所示:
<system.web>
<membership>
<providers>
<clear />
<add
name="AspNetSqlMembershipProvider"
(...)
passwordFormat="Hashed"
(...) />
</providers>
</membership>
答案 3 :(得分:0)
我发现的最佳方法(以及facebook的确切方式)
当用户进入浏览器时,javascript先加密,然后发送到应用程序,用MVC加密最后存储在你的数据库中。当用户忘记密码时,只需要登录密码。做一些像密码重置= D
http://forums.asp.net/t/1211478.aspx/1?How+do+I+use+Sha256+to+Encrypt+a+String+