gpt4 book ai didi

sql-server - 加密字段的部分搜索

转载 作者:行者123 更新时间:2023-12-04 14:31:39 24 4
gpt4 key购买 nike

最近我被分配了一个问题,加密诸如 SSN 之类的数据库字段,但仍然必须保持“部分搜索”的工作。

例如:SSN 123-45-6789 在数据库中加密为 abcdxyz。当用户在搜索框中输入“2345”时,它必须出现在结果中。

我们在数据库中有数百万条记录。我们使用的是 SQL Server 2008 R2。我一直在谷歌搜索,但仍然没有看到任何好的解决方案。对此有什么好的解决方案吗?

感谢帮助。

最佳答案

不,没有。如果可以搜索加密字段,那么根据定义,它将被严重加密。可能的替代方案是:

  • 搜索解密的值。这在实践中是无法忍受的缓慢,因为每个查询都必须解密数百万个值。
  • 只搜索完全匹配。由于加密值是加盐的,只有在加密安全的散列与加密数据一起存储并且对散列值进行搜索时,才可能进行精确匹配搜索。
  • 使用 Transparent Data Encryption而不是列加密。

  • 选项 3) 是迄今为止最好的,但需要企业版许可。如果 TDE 不可用,则必须删除部分搜索的要求,没有现实的方法来满足它。

    关于sql-server - 加密字段的部分搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12258738/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com