[隐私计算研习社]
可搜索加密可以让客户端在保护云存储数据的情况下,直接在密文上进行搜索,其具有广阔的商业前景,并兼顾安全性和效率。
我们曾经介绍过使用隐私求交PSI技术来构造可搜索加密方案,详情请见笔记分享 | 组队学习密码学(3)——隐私求交协议的变体和应用。
本文的引用:
[1] Wei Yu, Lv Siyi, Guo Xiaojie, et al. FSSE: Forward secure searchablencryption with keyed-block chains[J]. Information Sciences, 2019, 500:113-126
1
******简介
**
可搜索加密(searchable encryption,SE )是保护云存储数据安全性的重要加密技术,用户将需要存储的数据加密后外包到云,防止云端数据泄露,同时支持云端搜索密文。然而,在实际应用中,新的安全问题日益凸显。例如,向数据库添加文件时,可能会泄露之前搜索的关键词有哪些包含在更新文件中。为了避免这种信息泄露问题,前向安全可搜索加密(forward secure searchable encryption,FSSE )方案被提出,其应用于现实生活中的各种场景。本文提出 1 种支持联合搜索的方法,在支持单关键词搜索 FSSE 方案的基础上,将搜索能力扩展成联合搜索。
所提方法在服务器端添加 1 个简化的布谷鸟过滤器,同时使用密文等值测试技术加密索引信息,并将加密后的索引存储于布谷鸟过滤器中。搜索协议将查询关键词分为 2 种,1 种为最低频的关键词(与该关键词相关的文件最少),剩下的为其他关键词。对最低频的关键词执行基础 FSSE 方案得到查询结果,随后使用布谷鸟过滤器存储的信息筛选查询结果,最终得到满足联合问询的结果.本文基于文献[1]的 图片方案(其他支持单关键词搜索的方案同样有效),构造支持联合搜索的前向安全可搜索加密方FSSE-CT 。主要贡献如下:
-
构造 1 种支持联合搜索的方法,在任意单关键词图片方案[1]的基础上,于服务器端新增 1 个扩展结构,以存储加密后的关键词信息。该结构用于对联合问询的关键词进行二次筛选,且支持更灵活的文件-关键词对更新。
-
在服务器端采用布谷鸟过滤器,增强方案的搜索能力和搜索效率。基于布谷鸟过滤器自身添加/删除和快速查询的功能,本方案支持 4 种更新方式:文件-关键词集合添加删除、单个文件-关键词对添加删除工作,并在一定程度上提升方案效率。
-
采用密文等值测试技术,对需要存于布谷鸟过滤器相应桶中的关键词使用密文等值测试技术造加密信息,实现搜索阶段对联合关键词进行有效筛选的同时,完成对关键词信息的隐藏。
-
给出所提方案的安全性证明和性能对比。结果表明,该方案满足自适应模型下不可区分性安全。与其他方案性能对比分析表明,该方案在搜索方式、更新类型等功能方面更加全面且灵活。并且降低了联合搜索方案的更新时间,同时在用户端存储代价不变的基础上,降低了服务器端存储代价。
2
****隐秘密文分组连接模式性能分析
2.1 布谷鸟过滤器
布谷鸟过滤器是 1 种基于 Hash 函数的新形式概率数据结构,用于测试集合中的元素资格.它包含 1个由桶组成的数组。
插入到布谷鸟过滤器中的每个元素 a 有 2 个候选桶,分别由 Hash 函数h1(a) 和h2(a) 确定。
查找 a 时,对由 Hash 函数计算出的 2 个桶进行查找,看其中一个是否包含此项。
2.2 密文等值测试技术
密文等值测试是检查 2 个密文是否由同一明文加密。本文对密文等值技术进行简化.使用双线性映射技术,对不同公钥生成的 2 个密文进行等值测试。
3
****安全模型
FSSE-CT的安全模型由现实世界SSEReal和理想世界SSEIdeal的游戏定义。SSEReal 等同于FSSE-CT 方案中的操作,SSEIdeal由模拟器S构造。定义泄露函数为,表示敌手
可以从Setup(),Update(),Search()算法中获取的泄露信息,且敌手能获取信息的范围不会超出泄露函数
。
在现实世界游戏SSEReal中,敌手运行Setup() 并获得EDB。随后执行搜索问询或更新问询以获取信息。在理想世界游戏SSEIdeal中,模拟器S输入
。随后敌手
进行搜索或更新问询,模拟器S相应的通过泄露函数
或
回复问询,给提供信息。最终,输出
表示对SSEReal和SSEIdeal的区分。定义 1.
自适应安全。如果存在1个模拟器S,使得对于任意概率多项式时间 PPT敌手,都有:
则该对称可搜索加密方案是
自适应安全。4
****方案构造
客户端构造映射W,其与方案一致。
服务器端构造二叉树和布谷鸟过滤器。其中二叉树方案一致,布谷鸟过滤器每个桶中的第一列存储文档的索引,该桶中的其余槽存储该索引对应的所有关键词。因此关键词和文档更新时除根据
方案对二叉树进行更新还需要在布谷鸟过滤器中进行更新操作。
多关键词搜索时先依照方案进行单关键词查询,将查询到的文档索引组成集合D。进而布谷鸟过滤器中根据密文等值测试技术依次查找集合D中文档索引所对应的关键词是否与查询的多关键词一致。
4.1插入操作
**
**
单个关键词更新
文件添加阶段
4.2 删除操作
4.3 查找操作
5
****实验结果
图1展示在不同规模的大数据集中(Enron 电子邮件数据集的倍数),布谷鸟过滤器执行设置/查找操作所消耗的时间。
横坐标分别取 Enron 电子邮件数据集的1-16倍。由图1可见时间消耗的增加几乎与数据集的大小成线性关系。
图1 布谷鸟过滤器执行设置/查找操作所消耗的时间
图2展示在不同规模的大数据集(Enron电子邮件数据集的倍数)中,FSSE-CT方案对单个文件关键词对执行更新操作所消耗的时间。
执行更新操作所消耗的时间,加上对关键词进行密文等值测试加密并将其插入至布谷鸟过滤器所消耗的时间。
图2 更新操作平均消耗的时间
图3展示了在不同规模的大数据集(Enron电子邮件数据集的倍数)中,FSSE-CT方案执行搜索操作所消耗的时间。随着单次联合搜索中关键词数量的增多,搜索所消耗的时间会有所增多。
本实验以对2个关键词进行联合搜索为例。数据集大小为Enron电子邮件数据集本身时(约0.86亿个关键词文件对),执行搜索操作消耗的时间约为14.2909ms;数据集大小为1.73亿个关键词文件对时,耗时约为14.2993ms;数据集大小为3.46亿个关键词文件对时,耗时约为14.2933ms;数据集大小为6.92亿个关键词文件对时,耗时约为14.3049ms;数据集大小为13.84亿个关键词文件对时,耗时约为14.3477ms。由图可得搜索效率主要受单个文件包含的关键词数量的影响。
图3 搜索操作平均消耗的时间
图4显示了Scheme-B方案中使用的布隆过滤器和FSSE-CT方案中使用的布谷鸟过滤器的耗时对比。
由图6可见,Scheme-B方案的耗时增长速度也大于FSSE-CT方案。综上所述,FSSE-CT方案使用布谷鸟过滤器,不论是在时间消耗量还是在增长趋势方面都具有一定的优势。
图4 布隆过滤器和布谷鸟过滤器的耗时对比
图5显示了 Scheme-B 方案和FSSE-CT方案的搜索算法的耗时比较。横坐标分别为包含100-1000个索引的数据集,间隔为100当索引数为100时,FSSE-CT方案和Scheme-B方案的耗时分别为10.730ms和25.058ms,Scheme-B方案的耗时高于FSSE-CT方案。
Scheme-B方案搜索操作时随索引数的增加而增加,而 FSSE-CT 方案的搜索耗时在8-15ms之间浮动。FSSE-CT方案在时间消耗和增长趋势上都优于Scheme-B方案。
图5 搜索操作的耗时对比
本文方案在支持单关键词搜索的前向安全可搜索加密方案的基础上,采用布谷鸟过滤器技术和密文等值测试技术,构造 1 种支持联合搜索的动态前向安全可搜索加密方案,实现前向安全基础下,对关键词进行联合搜索,并且支持更加灵活的更新操作,即支持对整个文件信息的添加/删除和对单个文件-关键词对的添加/删除工作。此外本文方案满足自适应模型下不可区分的安全性。
采用密文等值测试技术加密保证在对关键词进行二次筛选时,不泄露关键词的相关信息。同时由于使用布谷鸟过滤器进行存储,降低了服务器端的存储开销。
理论性能分析和实际性能分析表明,本文方案与相关方案相比,在更新类型的灵活性、更新时间、用户端/服务器端存储方面有一定的性能提升。下一步将考虑如何进行轻量级优化,提升搜索能力并在实际应用场景中实现。
来源:SecurityLabUJN
分享仅供学习参考,若有不当,请联系我们处理。