【发布时间】:2016-05-12 09:27:29
【问题描述】:
所以我有一个通过用户名和密码对用户进行身份验证的 Web Api。与 API 对话的客户端将使用具有内部应用程序的 Android 手机,以从 API 获取/发送一些数据。
我在数据库中使用盐对密码进行了哈希处理。客户端和 API 之间的连接将是 SSL。
现在在网站 (MVC) 上,我通过生成新哈希并将其与数据库中的哈希匹配来登录用户。
某些 android 设备会有一个配置文件,将应用程序锁定给特定用户。现在我宁愿不在设备上以纯文本形式存储密码,而是希望对密码进行加密。
现在的问题是这里比较散列密码的最佳做法是什么。我不认为只需将纯密码发送到 API 即可保存,还是这样?
【问题讨论】:
-
我现在遇到了同样的问题并找到了你的问题。我正在使用 ASP.NET 身份在网站端管理我的成员数据库,这些数据库都存储在 SQL Server 等中。然后我有一个移动应用程序使用基本身份验证与我的 MVC Web Api 交谈,所以它需要传递用户名和密码穿过。我不想在移动设备上存储纯文本密码。能够以与 ASP.Net Identity 相同的方式对其进行哈希处理,然后从移动应用程序发送该哈希并在 MVC Web API 中进行比较以进行身份验证,这将是非常好的。所以我不存储或发送明文
标签: asp.net encryption asp.net-web-api hash basic-authentication