V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
zjscxgh
V2EX  ›  问与答

敏感数据加密,却要实现模糊查询,有解决方案吗???

  •  
  •   zjscxgh · 2019-03-29 10:19:30 +08:00 · 5929 次点击
    这是一个创建于 1826 天前的主题,其中的信息可能已经有所发展或是发生改变。

    得到一个需求,觉得做不了: 敏感数据(如身份证号)存在 mysql 中,要求加密存储。但是业务上要根据这段数据的全部或部分进行模糊查询???加密了就没法查了呀。。

    有这种实现方案吗??想破脑袋没想出办法来。。。。跪。。。

    15 条回复    2019-03-29 12:11:23 +08:00
    paradoxs
        1
    paradoxs  
       2019-03-29 10:30:08 +08:00
    为啥加密就没法查了?
    密钥去哪了?
    honeycomb
        2
    honeycomb  
       2019-03-29 10:32:06 +08:00 via Android
    MySQL 表空间加密? binlog/redo log 的加密应该也有类似手段。

    如果是字段本身就得是加密的话比较麻烦
    yokiam
        3
    yokiam  
       2019-03-29 10:32:50 +08:00 via iPhone
    密钥没了?那存储的意义是啥
    gstqc
        4
    gstqc  
       2019-03-29 10:34:34 +08:00 via Android
    @paradoxs 楼主说的是模糊查询,通俗来讲就是搜索

    建议:如果搜索条件能固定,比如生日,比如省市区等
    可以把这些部分提取用其他字段存储或者加密存储
    zjscxgh
        5
    zjscxgh  
    OP
       2019-03-29 10:36:37 +08:00
    @paradoxs 加密是可以查,但是要先把加密的数据全部解密再查询匹配,对于存有大量数据的表,效率会非常低。
    tt67wq
        6
    tt67wq  
       2019-03-29 10:39:20 +08:00
    把明文放进 es ?
    zjscxgh
        7
    zjscxgh  
    OP
       2019-03-29 10:39:45 +08:00
    @honeycomb 现在的需求是字段加密,实在不行后面要考虑别的方法了
    earendil1412
        8
    earendil1412  
       2019-03-29 10:41:03 +08:00 via Android
    可以考虑把要搜索的部分解密出来加一列存进去。再做搜索
    zjscxgh
        9
    zjscxgh  
    OP
       2019-03-29 10:44:02 +08:00
    @gstqc 您说的我没太看懂,“部分提取用其他字段存储或者加密存储”,可以详细说说嘛,谢谢!
    murmur
        10
    murmur  
       2019-03-29 10:44:22 +08:00
    除非是按字符一对一加密
    mooncakejs
        11
    mooncakejs  
       2019-03-29 10:46:29 +08:00
    身份证号有什么好加密的,要加密加密后 4 位就够了,前面的基本是公开的。
    如果是通用的,参考表达式索引, 加一两个索引列,把能索引的部分抽出来。
    prolic
        12
    prolic  
       2019-03-29 11:13:32 +08:00
    抽 tag 建明文字段呗
    gstqc
        13
    gstqc  
       2019-03-29 11:40:22 +08:00 via Android
    @zjscxgh #9 比如要按省份搜索
    那就把前两位提取,加个省份字段存进去
    其他部分同理
    binux
        14
    binux  
       2019-03-29 11:58:41 +08:00 via Android
    Searchable encryption
    Homomorphic encryption
    听说过,能想像怎么做,没实践过
    mrdemonson
        15
    mrdemonson  
       2019-03-29 12:11:23 +08:00 via Android
    做个能按单个字符加密的算法,模糊查询先对查询条件加密,再进数据库查询
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5297 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 09:24 · PVG 17:24 · LAX 02:24 · JFK 05:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.