Py学习  »  DATABASE

mysql中加密数据的搜索

Sandeep • 4 年前 • 170 次点击  

我有一个在mysql中存储大量用户数据的用例。由于PII的原因,它以加密的形式存储。这里有两个重要的栏目, 第一姓 姓氏 .

我想建立一个功能 按用户名搜索(第一个和最后一个)

我认为有几种方法是有道理的。

  1. 将用户数据放在弹性搜索中,然后在那里进行模糊搜索。比如{firstname:xyz,lastname:abc,user id:123},从这里获取用户id,然后从mysql获取剩余信息。

  2. 加密查询字符串并在first name和lastname中搜索-在某些情况下有效,但在firstname和lastname混合的大多数情况下无效。例如:name:abc def xyz-abc def是名字,是查询abc的人,现在不会返回任何内容。

  3. 查询所有的记录,解密,然后在代码中过滤-坏主意,我的虚拟机将进入OOM,它将太慢,投票,解密,搜索在所有的记录。

  4. 在mysql中以纯文本存储用户名不是一个选项-pii问题

应用程序使用hibernate,如果这有区别的话。

请提出什么看起来是最好的选择,或有更好的选择,然后这些。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/41230
 
170 次点击