我正在编写一个应用程序,其主要目的是保留用户购买列表。
我想确保即使我作为开发人员(或任何可以完全访问数据库的人)也无法弄清楚某个人花了多少钱或买了什么。
我最初想出了以下方案:
--------------+------------+------------ 用户哈希 | 项目 | 价格 --------------+------------+------------ a45cd654fe810 | 脱衣舞俱乐部 | 400.00 a45cd654fe810 | 法拉利 | 1510800.00 54da2241211c2 | 啤酒 | 5.00 54da2241211c2 | 苹果手机 | 399.00
- 用户使用用户名和密码登录。
- 从密码计算
user_hash
(可能与加盐等)。 - 使用散列通过普通 SQL 查询访问用户数据。
如果有足够多的用户,只知道一个特定用户的名字几乎不可能知道他花了多少钱。
这是明智的做法,还是我完全愚蠢?