【发布时间】:2012-05-16 19:38:11
【问题描述】:
我正在阅读有关将密码信息存储在数据库中的最佳方法,并且大多数示例都说我们不应该将实际密码存储在数据库中,而是将哈希值和盐值存储在数据库中。在 Web 应用程序中,验证用户的代码位于服务器端,因此我们通过网络发送用户名和密码,在服务器上我们读取 salt 值,然后将接收到的密码与 salt 进行哈希处理,并进行比较在 db 中存储散列值。
如果应用程序位于客户端,并且应用程序直接连接到数据库,而不是通过某些服务(本地网络)怎么办?这意味着 Hash 类将在客户端公开,我需要从客户端的 db 中读取 hash 和 salt 值,这允许任何人创建几行代码并获取客户端上的所有用户信息。
在这种情况下如何处理安全/身份验证?
【问题讨论】: