搜索加密存储

信息安全 加密
2021-08-19 12:06:21

我一直在阅读一些非常有趣的 学术论文,这些 论文涉及在无需实际解密数据的情况下搜索加密数据的能力。这不是首先破坏了加密的目的吗?我可以想象特定语言的“蛮力”攻击,其中我只需搜索“有趣”的单词组合就可以从加密文本中重新组合纯文本。

搜索加密存储的当前实际技术状态是什么?我们为什么想要它?它实际上解决了什么问题,或者这些问题完全是由于其他当前环境条件(例如在“云”上搜索敏感信息)造成的?

4个回答

在加密数据中搜索的“安全”版本假定至少满足以下条件之一:

  • 要搜索的模式使用与数据本身相同的密钥(或某种相关密钥)进行加密;
  • 搜索结果(“在此处找到模式”)使用与数据本身相同的密钥(或某种相关密钥)进行加密。

使用这些属性中的任何一个,搜索引擎都不会将有关数据的信息泄露给一开始就无法解密数据的人。

最终目标是能够将繁重的搜索工作卸载到大型云系统,同时无需信任该系统。全同态加密是卸载任何类型工作的通用成熟解决方案,而目前最知名的解决方案完全不合理,因为开销巨大(它可以实现,但在卸载工作方面几乎没有用处)如果结果比袖珍计算器慢,则为云)。加密数据搜索是一种专业化:通过将自己限制在一种特定类型的工作来卸载(即搜索),我们希望找到足够轻量级以具有实际应用的算法。

据我所知,该领域还没有产生任何实用的东西(但没有内在的原因为什么它不能)。

搜索加密数据时要记住的重要一点是数据所有者是谁。在我看过的许多提案/论文中,数据归进行搜索的人所有。他们只是利用云资源进行搜索。然而,并非所有方案都如此。例如,SADS

阅读这类论文时要注意的另一个重点是它是否需要受信任的第三方 (TTP)。TTP 可以缓解许多原本可能发生的攻击(例如您描述的暴力破解文档)。

对于最先进的技术,您需要更具体地了解您的要求(谁拥有数据,谁可以搜索数据,是否可以通过 TTP 等),因为根据这些要求,方案可能会完全不同。除了 SADS,我建议您查看CryptDB

您可能有兴趣了解基于Bloom Filters的加密搜索技术。在这些论文中,您可以找到一些有价值且实用的想法。在很多情况下,它们可以代表一种良好且实用的方法。

为什么我们需要搜索?以敏感数据为例,例如我在 Microsoft health volt 中的健康记录。当我将这些数据放在云中时,它存储在第三方数据中心,我无法信任,因为通过 root 访问,黑客或管理员可以访问该数据。为了提供安全性,我们对其进行加密。

但是加密剥夺了所有搜索数据的能力。为了克服这个问题,搜索加密数据出现了一种新趋势。

有 5 种方法可以搜索加密数据:

  1. 同态加密
  2. 结构加密
  3. 财产保护加密
  4. 功能加密
  5. 定理

对加密数据进行分类搜索的三个趋势:

  1. 效率
  2. 安全
  3. 查询表达能力

以下链接给出简要说明:

neelshah.online 或 neelshah.xyz

您还阅读了微软研究员 Senny Kamara。

或 outsourcebit 博客了解更多信息。