一种支持优先级排序的动态安全可搜索加密方案

2020-09-10 06:50陈垚陈立全吴昊
网络空间安全 2020年8期
关键词:持有者密文排序

陈垚,陈立全,3,吴昊

〔1.东南大学网络空间安全学院,江苏南京 211100;2.网络空间国际治理研究基地(东南大学),江苏南京211189;3.网络通信与安全紫金山实验室,江苏南京 211111〕

1 引言

随着大数据技术的不断发展,传统的存储方式已经不能满足企业和用户的基础要求。云计算技术具有计算能力强、价格低廉、功能扩展性强等特点,用户可以将自己的数据信息提交给云存储系统,根据自己的需求,让云存储平台操作数据信息[1,2]。可搜索加密技术支持在经过加密后的密文文件中进行关键词或文件的搜索,得到了各界的广泛关注。目前可搜索加密方案,在实际应用与安全性上,都具有很多的研究价值[3]。

本文针对目前动态可搜索加密方案中存在的动态安全问题与搜索结果准确率较低的问题,提出了一种基于优先级排序的动态安全可搜索加密方案(A Multi-Keyword Rank Searchable Encryption Scheme with Dynamic Security, DSMRSE)。DS-MRSE方案采用预处理字典树结构,提高了搜索和动态更新效率,更适用于支持多用户、多关键词的应用场景。具体的系统模型如图1所示。在该系统中包括了三个主要部分:云存储平台、数据持有者以及合法用户。

(1)云存储平台(Cloud Storage Platform,CSP):云存储平台具有高存储容量,快速计算能力,同时是“诚实且好奇的”。

(2)数据持有者(Data Owner,DO):数据持有者将自己的隐私文件加密,利用关键词构建索引,并将密文文件与加密索引一同上传给云存储平台CSP。

(3)认证用户(Authenticated User, AU):认证用户AU接收数据持有者DO发送的密钥集。在需要进行搜索文件时,生成搜索陷门,并提交给云存储平台。

2 DS-MRSE具体方案构造

DS-MRSE方案主要包括几个阶段:初始化阶段、字典树索引生成阶段、索引动态更新阶段与搜索阶段。本小节将分别给出这些阶段的具体算法流程。

2.1 初始化阶段

系统初始化阶段时,数据持有者DO需要提交自己选定的安全参数,明文文件集合。数据持有者DO使用函数生成密钥集,接着选择抗强碰撞性的哈希函数,然后采用AES加密方式得到密文文件,之后使用关键词提取技术提取出关键词集合,最后生成 个新地址随机值,并且使用抗强碰撞性的哈希函数将其映射为个新添加文件地址,并记录在数据持有者端。

2.2 字典树索引生成阶段

2.3 搜索阶段

本方案的搜索阶段主要包括三个部分,分别是认证用户的陷门生成、服务器的关键词查询以及服务器对结果进行排序并返回给认证用户。这三个部分的具体流程分三步。

(1)陷门生成

(2)关键词查询

(3)搜索结果排序

2.4 索引动态更新

数据持有者可以在任意时刻对索引进行动态更新。动态更新一共有四种:添加关键词、删除关键词、添加文件以及删除文件。在本节中将给这四种操作具体分为四步骤。

(1)添加关键词

(2)删除关键词

(3)添加文件

(4)删除文件

图1 DS-MRSE方案系统模型

3 方案分析

图2为DS-MRSE方案实现时不同部分所用的时间,分别为不同文件数量时索引生成所用时间、不同关键词数量时陷门生成时间以及不同搜索关键词数量时搜索时间。从图中可以看出本方案的实际运行时间均为线性增长。即使在较多文件数量、较多关键词时,本方案依旧有很好的性能,运行所耗的时间都比较理想。因此,本方案效率较高。

3.1 安全性分析

在DS-MRSE方案中,索引结构为加密字典树。索引中每一个关键词字符均采用一个密钥进行具有抗强碰撞性的哈希函数进行计算,威胁模型为已知密文模型。因此,攻击者获知DS-MRSE中的索引为加密字典树模型。假设挑战者进行DS-MRSE方案的实现,存在一个敌手A试图利用分析与统计攻击。敌手获知整个字典树的加密节点,并进行频率统计。挑战者给出两个字符与经过加密后得到的加密字符与。敌手A输出一个值,其中表示,表示。由于抗强碰撞性A无法找出一对字符,使且另外敌手A无法获取索引加密密钥与密钥生成器,因此无法猜测明文。此外,由不同层使用不同的密钥,因此相同字符在不同层中的密文不相等。敌手A对于任意两个加密字符无法判断其是否来自同一层以及是否代表相同的字符。至此,敌手A无法进行有效的统计攻击。因此,DS-MRSE方案中的索引可以抵抗统计攻击。

3.2 方案比较

如表1所示,方案[6]与本方案支持个性化排序,可以针对实际需求,设置合适的权重值,实现个性化,更符合实际要求的排序操作。方案[5]、方案[8]与本方案都可以动态更新,在面对需要修改的应用场景,具有良好的功能性。

图2 DS-MRSE方案索引生成、陷门生成和搜索运行所用时间图

表1 DS-MRSE方案功能比较

表2 DS-MRSE方案安全性比较

(1)功能比较

表1为DS-MRSE方案在功能上与其他支持对搜索结果进行排序的方案的比较结果。如表1所示,这些方案都支持对多关键词进行搜索。方案[5]、方案[6]与本方案均采用了TF×IDE模型结构,可以更好的根据词频以及文档相关度进行相关值计算。方案[6]与本方案支持个性化排序,可以针对实际需求,设置合适的权重值,实现个性化,更符合实际要求的操作。方案[5]、方案[8]与本方案都可以实现动态更新,在面对经常需要修改的应用场景,具有非常良好的功能性。

(2)安全性比较

表2为DS-MRSE方案在功能上与其他支持排序的可搜索加密方案的比较。DS-MRSE方案与其他文献都考虑了安全性问题,针对密文、索引和陷门都进行了加密,具有不可区分性。方案[4]和方案[7]不具备动态更新的功能。方案[5]在更新时没有对前向、后向安全进行考虑,而方案[8]与本方案均进行了前向安全与后向安全的设计。

4 结束语

本文根据目前云存储的环境,对支持多用户多关键词的可搜索加密方案进行深入研究,提出了一种基于优先级排序的动态安全可搜索加密方案(DS-MRSE)。DS-MRSE方案在隐私密文安全、索引安全、陷门安全以及前向、后向安全上都得到了保障。但在效率上还有可以改进的地方,可以针对不同的应用场景,采用更合理的数据结构或者是预计算处理,提高搜索效率或更新效率。

猜你喜欢
持有者密文排序
一种支持动态更新的可排名密文搜索方案
嵌入式异构物联网密文数据动态捕获方法
作者简介
恐怖排序
一种新的密文策略的属性基加密方案研究
节日排序
一种抗攻击的网络加密算法研究
美国数万华人工签或将失效,强行被辞职