Sql server 加密字段&;全文搜索,最佳方法?
我有一些存储笔记和敏感信息的字段,我想在它们进入数据库之前对它们进行加密 现在,我使用SQL全文搜索来搜索这些字段。很明显,加密这些数据会影响我的搜索结果Sql server 加密字段&;全文搜索,最佳方法?,sql-server,encryption,full-text-search,Sql Server,Encryption,Full Text Search,我有一些存储笔记和敏感信息的字段,我想在它们进入数据库之前对它们进行加密 现在,我使用SQL全文搜索来搜索这些字段。很明显,加密这些数据会影响我的搜索结果 加密这些字段但仍允许搜索的最佳方法是什么?没有支持加密索引的数据库,因此您必须牺牲一些安全性才能实现这一点 您可以在clear中索引部分数据,并从应用程序中查找真实数据。例如,如果您想要商店信用卡号。您可以有最后4位数字的索引。共享同一个最后4位数字的卡的数量是有限的,因此您可以对每个卡进行解密并检查整个数字。这并不容易。您所描述的内容很少在
加密这些字段但仍允许搜索的最佳方法是什么?没有支持加密索引的数据库,因此您必须牺牲一些安全性才能实现这一点
您可以在clear中索引部分数据,并从应用程序中查找真实数据。例如,如果您想要商店信用卡号。您可以有最后4位数字的索引。共享同一个最后4位数字的卡的数量是有限的,因此您可以对每个卡进行解密并检查整个数字。这并不容易。您所描述的内容很少在商业数据库中实现,尽管在该领域有一些理论结果。我建议你去看看这方面的论文 以下是一些让您开始学习的参考资料:
- 宋晓东、大卫·瓦格纳和阿德里安·佩里格李>
- R.Brinkman、L.Feng、J.Doumen、P.H.Hartel和W.Jonke。加密数据中的高效树搜索。在李>
- D波内,G渐强,R奥斯特罗夫斯基,G波斯李>
- P高尔,J斯塔顿,B沃特斯李>
对于MySQL数据库,这似乎非常昂贵。我知道这是一个古老的答案,但SQL Server和Oracle现在都提供了(昂贵的)透明数据加密产品,基本上允许应用程序在不做任何更改的情况下搜索,但实际的静止数据是加密的。更多信息如下: SQL Server: 甲骨文:
另请看本演示文稿:如何搜索加密数据-吴裕珍