防止云端数据与查询行为泄露—可搜索加密

admin 2021年12月29日21:14:10评论401 views字数 2915阅读9分43秒阅读模式
一、背景

在数据爆炸的当今社会,数据本地化已经不能满足用户业务需求,越来越多的数据需要被共享,因此越来越多的用户选择数据上云服务器。
然而,这会引入两个问题:一是云服务器大多都是第三方人员管理或者运维人员管理,二是大多数用户存储的数据总是以明文的方式出现。那么关于这部分未被加密的数据,云端的管理人员能够随意检查,更改,间接从服务器平台删除。一旦管理人员进行了这些恶意的操作,将导致一系列严重后果;如随意窥探用户的隐私信息,甚至恶意修改用户数据等,给用户带来了信息泄露和丢失的困扰。这意味着用户在云上上传的数据和信息越来越多,所带来的信息安全隐患就越来越大;如前段时间网络曝光的某公有云平台,私自窃取了用户的数据为己所用,投诉和协商无果后,已被告,一时也引起了不少的争议。另一方面,云平台可能会恶意的收集用户的行为习惯从中获取有用的分析数据,如分析某些平台的搜索数据,可以分析出一些商业价值的信息,这导致用户搜索的敏感信息泄露。
二、可搜索加密概述

为了解决上述提到的问题,用户所有的数据都可以密文的方式上传,这种存储方式降低了隐私泄露。但同时它也引入新的问题:比如,当云服务器有若干的密文数据时,他们怎么能找回本人的数据,而无需向终端输入任何有关该数据的明文内容。

可搜索加密技术就可以很好的应对这个问题。通过该技术,用户可先分别加密数据和数据标签,然后将加密后的数据与标签一同存储在云服务器上。当用户搜索包含字“KW”的文件时,他能够发送关于关键字的标签(也称为陷门的文件)到云服务器。云服务器将接纳到的关键词陷门与每一个加密文件的标签进行匹配。假如匹配成功,则该文件中包含的关键字。此时,服务器再将匹配的文件发送给用户,然后用户在本地进行解密即可。从安全性上说,云服务器除了有可能猜到任何两个搜索文件是否包含相同关键字的外,对其他信息不清楚。

总的来说,可搜索加密具有以下的安全性优势:

  • 可证明安全:即不可信服务器仅仅通过密文不能获得有关明文的任何信息;

  • 控制搜索:即不可信服务器不能在没有合法用户的认证下进行搜索;

  • 隐藏查询:即用户向服务器发起有关一个关键字的询问然而却不必向服务器表明关键字是什么;

  • 查询独立:即不可信服务器除了查询结果之外不能获得有关明文的任何信息。

三、一种可搜索加密算法的原理及实践

3.1算法核心部分描述

文献[1]提出的可搜索加密方案的关键算法称为PAEKS,其伪代码实现如下:

PAEKS算法是基于决定性双线性 (Decisional BilinearDiffie-Hellman, DBDH)假设和修正线性决策(modified Decision Linear,mDLIN)假设,同时使用了双线性对运算增强了其安全性。

现假设用户A有一个开源的公共资源数据,A把存放于云服务器中,但A为了防止云服务器擅自恶意的盗取数据,或者收集其他用户的查询数据来分析用户的行为习惯,因此A需要对数据进行加密处理。

现假设用户B(可以是一个用户,也可以是一个群组)需要从A的公共数据库中查询数据,为了防止第三方盗取任何有用的数据信息,所以他们之间可以使用可搜索加密技术。

首先密码系统给A、B颁发公私钥,私钥为A、B随机选择安全的大数,然后使用密码系统计算公钥,把公钥存放到公钥列表中,设A的公私钥对为(PKs,SKs),B的公私钥对为(PKr,SKr)。现A存放一个关键字为W的数据到云服务的,需要对关键字做如下计算:

防止云端数据与查询行为泄露—可搜索加密

然后存储C=(C1,C2)到关键列表,同时把数据加密存储。

当B想去A的数据库中查询时,为了防止被收集行为数据,所以B计算一个陷门

防止云端数据与查询行为泄露—可搜索加密

然后传输此陷门给云服务器。

云服务器拿到后,去依次验证云服务器存放的关键字密文,返回验证结果给B,验证流程如下:

防止云端数据与查询行为泄露—可搜索加密

等式满足时,则验证通过,证明此关键字密文就是B要查询的关键字。

防止云端数据与查询行为泄露—可搜索加密3.2代码实现及演示

本案例模拟了2个用户,一个用户产生关键字信息,另一个用户使用关键字去匹配查询。匹配成功后,返回其明文信息。具体包括以下主要流程:

1.密钥系统初始化

防止云端数据与查询行为泄露—可搜索加密

2.两个用户分别产生公私钥对。公钥后续加入公钥列表,私钥由用户自行秘密的保存

防止云端数据与查询行为泄露—可搜索加密

3.用户1选择信息nsfocus进行关键字的封装同时加密原信息,产生过程中使用了数据发布者的私钥、数据查询用户的公钥、关键信息数据进行计算。(此过程在本地客户端发生,生成后的签名、密文数据通过网络发生到云端)

防止云端数据与查询行为泄露—可搜索加密

4.用户2使用关键字nsfocus进行查询信息时,首先使用数据发布者的公钥与自己的私钥生成陷门。(此过程在本地客服端发生,将生成的陷门发生给云端服务器去作数据匹配验证)

防止云端数据与查询行为泄露—可搜索加密

5.云平台使用密码文匹配检索,验证成功后返回密文数据给数据查询者,此过程中不知用户的任何信息,不知道用户查询的具体信息。

防止云端数据与查询行为泄露—可搜索加密

6.效果如下

防止云端数据与查询行为泄露—可搜索加密


3.3总结

可搜索加密技术的优势在前文已经提到过,它保障了用户的数据安全,而且在查询过程中是处于全密文状态,所以云服务器不知道用户的任何搜索行为,这抵抗了云服务器的监听用户隐私;同时,用户在发布数据时,生成的关键字信息时,是联合了数据接收者与数据本身产生的,所以有签名的功能在里面,这样也实现访问的权限控制,即数据不是任何人都可以查询的,抵抗了穷举攻击,即遍历数据集比对分析数据集的内容;此外,也防止了攻击者的恶意篡改数据,给用户返回诱导数据,如果被篡改后签名验证通不过,也不会被查询出。
但上述方案的不足也很明显,可以看到,每个文件提供给每个查询者时都需要单独生成一个关键字信息,这样就导致如果同一个文件要共享给一个群组时,就要生成若干关键字文件,这样不仅到处存储加大、难易管控,同时也大大的降低了验证的效率。那怎么解决这个问题呢?请听下回分解……

参考文献

[1] Huang Q,Li H.Anefficient public-key searchable encryption scheme secure against inside keywordguessing attacks[J]. Information Sciences, 2017, s 403–404:1-14.


内容编辑:1.牟黎明. 身份与数据安全部.
责任编辑:高深


本公众号原创文章仅代表作者观点,不代表绿盟科技立场。所有原创内容版权均属绿盟科技研究通讯。未经授权,严禁任何媒体以及微信公众号复制、转载、摘编或以其他方式使用,转载须注明来自绿盟科技研究通讯并附上本文链接。

关于我们


绿盟科技研究通讯由绿盟科技创新中心负责运营,绿盟科技创新中心是绿盟科技的前沿技术研究部门。包括云安全实验室、安全大数据分析实验室和物联网安全实验室。团队成员由来自清华、北大、哈工大、中科院、北邮等多所重点院校的博士和硕士组成。

绿盟科技创新中心作为“中关村科技园区海淀园博士后工作站分站”的重要培养单位之一,与清华大学进行博士后联合培养,科研成果已涵盖各类国家课题项目、国家专利、国家标准、高水平学术论文、出版专业书籍等。

我们持续探索信息安全领域的前沿学术方向,从实践出发,结合公司资源和先进技术,实现概念级的原型系统,进而交付产品线孵化产品并创造巨大的经济价值。

防止云端数据与查询行为泄露—可搜索加密

长按上方二维码,即可关注我

本文始发于微信公众号(绿盟科技研究通讯):防止云端数据与查询行为泄露—可搜索加密

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年12月29日21:14:10
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   防止云端数据与查询行为泄露—可搜索加密http://cn-sec.com/archives/475320.html

发表评论

匿名网友 填写信息