基于云边协同的无证书多用户多关键字密文检索方案

2022-06-07 04:27:58杨小东田甜王嘉琪李梅娟王彩芬
通信学报 2022年5期
关键词:拥有者关键字密文

杨小东,田甜,王嘉琪,李梅娟,王彩芬

(1.西北师范大学计算机科学与工程学院,甘肃 兰州 730070;2.深圳技术大学大数据与互联网学院,广东 深圳 518118)

0 引言

随着智能无线传感器设备在工业制造环境中的广泛使用,工业物联网(IIoT,industrial Internet of things)在工业制造领域发挥着越来越重要的作用。工业物联网是一种将全球工业体系智能互联的网络,它利用数以亿计的感知器、采集器与控制器等IIoT设备采集数据,并通过智能分析处理IIoT 数据实现生产制造全过程的智能跟踪、控制与预测[1]。为降低本地的存储负担与计算开销,智能设备采集的IIoT 数据通常会被数据拥有者上传至云存储服务器。数据用户使用关键字检索技术,通过轻量级设备从云端检索并获取目标数据。然而,IIoT 数据在公共通信网络传输时,容易遭受篡改、窃取、假冒等诸多安全攻击,这可能给工业制造企业带来巨大的经济损失。数据拥有者可以通过加密IIoT 数据,再将密文数据上传至云存储服务器解决隐私泄露、数据篡改等安全性问题,但密文形式的数据会使数据的检索操作变得困难,数据共享的灵活性显著降低。

近年来,随着5G 技术的发展IIoT 数据呈指数式增长。巨大的通信负担与计算压力使基于云计算技术的集中式数据处理与存储模式逐渐不能完全满足数据传输的实时性、隐私性等要求,拥有更充足的计算处理能力的云边协同计算技术更适用于当今的工业物联网环境。云边协同技术将部分计算任务迁移到边缘节点进行,可以有效减轻云存储服务器的计算压力,并快速响应数据用户需求。然而,基于云边协同计算技术的IIoT 数据共享场景中依然存在隐私泄露、数据篡改等安全问题。如何实现云边协同计算模式下安全高效的IIoT 数据共享、提高IIoT 数据共享的灵活性,已经成为近年来相关学者的研究热点。

Song 等[2]提出的密文检索技术能够同时实现数据加密与密文数据检索,已被广泛应用于数据安全共享领域[3]。Boneh 等[4]利用双线性配对构造出第一个公钥密文检索方案。为解决公钥密文检索方案存在的证书管理与密钥托管问题,学者们提出了基于无证书的密文检索方案[5-8]。但目前大部分无证书密文检索方案仅支持单用户单关键字搜索,不适用于多数据采集端多数据接收端的IIoT 场景。Golle等[9]提出了支持多关键字搜索的密文检索方案,文献[10-12]提出了支持多用户搜索的密文检索方案,但这些方案均不能同时支持多用户多关键字搜索。Ma 等[13]提出了基于无证书的多用户多关键字密文检索方案,但该方案安全性较低,恶意的内部攻击者可能利用搜索关键字空间较小的特点对方案进行内部关键字猜测攻击(IKGA,internal keyword guessing attack)。密文检索方案的安全性是相关学者研究的另一焦点问题[14-15]。Chenam 等[16]于2022 年提出了能够抵抗IKGA 的多用户多关键字密文检索方案,但方案检索精度不高,在关键字索引不完全包含用户检索的关键字时无法返回搜索结果。

部分学者在云计算环境下实现了IIoT 数据安全共享[17-18],但基于云计算的集中式数据处理模式已经不适用于数据呈指数式增长的新型工业物联网环境。黄海平等[19]利用多个服务器完成密文检索任务,但该方案不能抵抗IKGA。张强等[20]提出了基于边缘计算的密文检索方案,但该方案中数据加密密钥需要在安全信道中传输。在上述研究的基础上,本文针对新型IIoT 环境提出安全性较高和检索效率较好的密文数据检索方案。本文主要贡献如下。

1) 支持多用户多关键字搜索。数据拥有者在执行数据加密算法时生成多个合法用户的身份信息密文,指定多个合法用户进行搜索。基于文件阈值表与用户访问权限表,多个边缘服务器同时进行关键字匹配计算,实现多个关键字索引未精确包含多个搜索关键字情况下的正确检索。

2) 提高了密文检索效率。与同类多用户方案相比较,本文方案在数据加密阶段计算开销较小且不随数据用户数量的增加呈线性增长。在云边协同的计算模式下,多个边缘服务器同时进行关键字匹配计算,提高了关键字匹配效率。

3) 实现了较高的安全性。本文方案基于数字签名的不可伪造性,利用数据拥有者和数据用户的私钥分别对关键字索引与搜索陷门签名,抵抗了IKGA。基于决策线性Diffie-Hellman 问题(DLDHP,decision linear Diffie-Hellman problem)假设,在随机预言模型下被证明能够抵抗两类攻击者的选择关键字攻击。

1 预备知识

1.1 双线性映射

设G1和G2是2 个阶为大素数p的乘法循环群。如果一个可计算的映射 e :G1×G1→G2满足以下性质,则称e是一个双线性映射[21]。

2) 非退化性:存在g1,g2∈G1,使e(g1,g2) ≠ 1。

3) 可计算性:对于任意的g1,g2∈G1,都存在一个有效算法可以计算出 e(g1,g2)。

1.2 困难问题假设

DLDHP。G1是由g生成的阶为p的循环群,给定其中未知,DLDHP 就是判断c是否等于 a+b mod p。

DLDHP 假设。定义任何一个概率多项式时间算法A成功求解G1上的DLDHP 的概率优势为AdvDLDHP(A)。若AdvDLDHP(A)是可忽略的,则称G1上的DLDHP 假设成立。

1.3 安全目标

一般在讨论无证书公钥密码方案的安全性时,考虑两类敌手A1和A2。A1无法访问系统主密钥但能进行公钥替换攻击,A2不能对数据用户进行公钥替换攻击但可以访问系统主密钥。针对这两类敌手,本文提出的无证书密文数据检索方案旨在达到如下3 个安全目标。

1) 共享文件数据的机密性

即使敌手A1和A2截获了部分密文文件,也无法解密密文文件或猜测到密文文件对应哪些检索关键字,只有拥有文件访问权限的IIoT 用户可以访问共享文件数据。

2) 关键字密文与搜索陷门的可认证性

在敌手A1和A2的攻击下,方案需能保证关键字索引密文与搜索陷门的可认证性,恶意的内部攻击者不能对方案进行内部关键字猜测攻击。

3) 选择关键字攻击下的不可区分性

在敌手A1和A2的选择关键字攻击下,方案需能保证关键字索引密文的不可区分性。

2 系统模型及数据结构

2.1 系统模型

本文研究IIoT 的多用户数据共享场景,方案实体包括云服务器、边缘服务器、IIoT 中的数据拥有者和数据用户,以及密钥生成中心(KGC,key generation center)。系统模型如图1 所示。

1) 云服务器。云服务器存储IIoT 中的数据拥有者Doj上传的用户访问权限表与文件访问权限表。当数据用户Dui想要检索Doj共享的包含某些关键字的密文文件fμ时,云服务器负责判断是否为合法用户。在关键字索引不完全包含检索的关键字时,云服务器选择文件匹配值最高的密文文件,向存储此密文文件的边缘服务器发送文件传送指令。

图1 系统模型

2) 边缘服务器。边缘服务器S1,S2,…,SZ存储IIoT 中数据拥有者Doj上传的关键字索引密文与部分文件密文。收到数据用户Dui的搜索陷门后,S1,S2,…,SZ执行陷门匹配计算,生成文件匹配值并将匹配值发送给云服务器。当收到来自云服务器的密文发送指令,S1,S2,…,SZ发送相应的密文给Dui。

3) IIoT 中的数据拥有者。数据拥有者Doj负责加密文件数据、生成关键字索引密文,以及将加密的随机值和对称密钥发送给合法的数据用户Dui。Doj可通过生成并更新用户访问权限表和文件访问权限表更新用户对文件数据的访问权限。

4) IIoT 中的数据用户。数据用户Dui负责生成关键字搜索陷门并上传陷门至边缘服务器。收到密文文件fμ后,Dui用私钥计算得到文档解密密钥K并解密fμ。

5) 密钥生成中心。密钥生成中心生成IIoT中数据拥有者Doj和数据用户Dui的部分私钥。

2.2 数据结构

本文方案使用的数据结构如下。

1) 用户访问权限表。用户访问权限表由数据拥有者Doj上传至云服务器,数据拥有者Doj能够对用户访问权限表执行写操作与读操作,云服务器只能对该表执行读操作。用户访问权限表中,Bi表示合法用户Dui的身份信息密文,Doj可通过增加或删除Bi对应的访问属性a1,a2,…,ax更新用户Bi的访问属性。在用户访问权限表中增加或删除Bi可以直接增加或删除合法用户。

2) 文件访问权限表。文件访问权限表由数据拥有者Doj对每个密文文件fμ设定阈值 βu与访问属性并将该表上传至云服务器。Doj能够对文件访问权限表执行写操作与读操作,云服务器只能对文件访问权限表执行读操作。当数据用户的属性集合与fμ的属性集合的交集中的元素个数ε 大于fμ的设定阈值 βu时,数据用户有权访问fμ。文件访问权限表如表1 所示。

表1 文件访问权限表

3 方案描述

3.1 系统初始化算法

3.2 部分密钥生成算法

KGC 输入系统参数prms 和系统主密钥S,执行如下步骤生成数据用户和数据拥有者的部分密钥。

3.3 私钥生成算法

3.4 公钥生成算法

3.5 数据加密算法

3.6 增加用户算法

3.7 陷门生成算法

3.8 匹配测试算法

云服务器和边缘服务器执行如下步骤匹配关键字索引密文与搜索陷门。

1) 云服务器首先对提出检索请求的用户Dui进行合法性验证,检验用户访问权限表中是否存在Dui的身份信息密文Bi。若Bi存在则身份验证通过,继续执行下述匹配测试步骤;否则云服务器返回“ ⊥”,拒绝Dui的搜索请求。

2) 边缘节点S1,S2,…,SZ收到Dui发送的搜索陷门T1,…,Ti,…,Tl后,对每个搜索陷门Ti进行匹配计算。

①每个边缘节点Sr判断等式e(Bi,Tc)是否成立,等式每成立一次,则包含相应关键字的密文文件fμ的匹配值U增加1。

② 每个边缘节点Sr选择密文文件集中包含数据用户检索的关键字数目最多的文件fμ(即文件fμ的匹配值U最大),向云服务器上传fμ的身份信息以及fμ的匹配值U。

3) 云服务器收到边缘服务器S1,S2,…,SZ上传的文件身份信息与匹配值信息后,执行如下步骤找到与搜索陷门T1,…,Ti,…,Tl匹配度最高的密文文件。

①计算fμ的属性集与Dui的属性集的交集中的元素个数,记为ε。若ε 大于fμ的文件阈值 βμ,将文件fμ的匹配值U加入返回列表;否则云服务器令边缘节点Sr继续验证文件匹配值U次高的文件,直至有来自Sr的文件匹配值U加入返回列表。若无任何匹配文件,云服务器返回“ ⊥”,表示Dui无法访问边缘节点Sr处的密文文件集

② 在S1,S2,…,SZ返回的文件匹配值列表中,云服务器选择返回最大值Umax的边缘节点Sr,令Sr发送Umax对应的密文文件fμ给Dui。当Umax对应多个边缘节点时,云服务器令多个边缘节点返回相应的密文文件。

3.9 解密算法

数据拥有者Doj和数据用户Dui执行如下步骤解密文档密文。

4 方案分析

4.1 正确性分析

边缘服务器S1,S2,…,SZ通过验证等式是否成立,判断关键字密文与搜索陷门是否匹配。当S1,S2,…,SZ拥有的关键字密文与数据用户发送的搜索陷门包含某相同关键字wk时,S1,S2,…,SZ可对验证等式左右两边进行如下计算。

由式(1)和式(2)可知,本文方案的验证等式正确,满足正确性。

4.2 安全性分析

根据1.3 节定义的安全目标,本节分析文件数据的机密性以及关键字密文与搜索陷门的可认证性。

1) 文件数据的机密性分析

文件数据的机密性由对称加密算法的安全性保证。在本文方案中,数据拥有者Doj计算K′=K·H0(e (P ,bg))并使用对称密钥K对明文文档D进行加密。数据用户Dui需经过解密计算才能求得对称密钥K。同时由于文件密文被分开存储在不同的边缘节点,每个边缘节点只拥有部分文件密文,边缘节点不容易猜测出全部的密文数据与关键字密文的对应关系。

2) 关键字密文与搜索陷门的可认证性分析

数据拥有者Doj在生成关键字密文的过程中使用了私钥数据用户Dui在生成陷门的过程中使用了私钥。云服务器与边缘服务器1,2,,ZS S…S在没有Doj和Dui私钥的前提下,不能通过生成或篡改关键字密文与搜索陷门对方案进行内部关键字猜测攻击。关键字密文与搜索陷门可认证性的实质是Doj与Dui分别对关键字密文和搜索陷门进行了签名。基于数字签名的不可伪造性,攻击者无法对方案进行IKGA,具体证明过程可参考文献[22]。

4.3 安全性证明

本节证明本文方案在随机预言模型下能够抵抗攻击者A1和A2的选择关键字攻击。

定理1基于DLDHP 假设,在随机预言模型下本文方案满足选择关键字攻击下关键字密文的不可区分性。

定理1 可通过引理1 和引理2 证明。

引理1在随机预言模型中,若敌手A1能够以不可忽略的概率优势ε 在多项式时间内攻破方案,则挑战者C能以不可忽略的优势构造多项式时间算法解决DLDHP。其中,qt表示陷门询问的最大执行次数,n表示数据用户的数量。

证明挑战者C通过与敌手A1进行如下的交互游戏解决DLDHP。

下面,计算挑战者C成功解决DLDHP 的概率优势ε′。令事件E1表示陷门询问过程中C没有终止,事件E2表示挑战阶段中C没有终止,事件E3表示C没有对W0和W1进行陷门询问。事件E1、E2和E3相继发生。

在上述游戏中,C以不可忽略的概率ε′解决了DLDHP,这与DLDHP 的公认难解性矛盾。因此A1攻破本文方案的概率ε 是可忽略的值,在面对A1时方案满足选择关键字攻击下关键字密文的不可区分性。证毕。

引理2在随机预言模型中,若敌手A2能够以不可忽略的概率优势ε 在多项式时间内攻破本文方案,则挑战者C可以构造算法在多项式时间内以不可忽略的概率优势解决DLDHP。其中,qt表示陷门询问的最大执行次数,n表示数据用户的数量。

证明挑战者C可通过与敌手A2的交互游戏解决DLDHP。

挑战者C在上述游戏中成功解决DLDHP 的概率优势为(相关计算过程与引理1 类似),这与DLDHP 的公认难解性矛盾。因此A2攻破本文方案的概率ε 是可忽略的值,在面对A2时方案满足选择关键字攻击下关键字密文的不可区分性。证毕。

5 性能分析

5.1 功能性分析

本文方案与近些年的密文检索方案的功能性对比如表2 所示。由表2 可知,文献[11]方案不支持多用户多关键字搜索。文献[19]方案不具有无证书加密体制的优点。文献[13,19]方案不能抵抗IKGA。文献[11,16]方案安全性较好,但不支持云边协同计算,在关键字索引不完全包含检索关键字的非精确匹配场景下无法高效返回正确的搜索结果。本文方案支持多用户多关键字搜索,能够抵抗IKGA 且引入云边协同计算技术提高了检索效率,具有功能性丰富的优点。

表2 功能性对比

5.2 计算开销分析

本节首先从理论分析角度将本文方案与同类方案在密文生成、陷门生成以及匹配测试阶段的计算开销进行对比,结果如表3 所示。其中,E表示一次指数运算,P表示一次双线性对操作,h表示一次哈希到点运算,n表示数据用户的数量,l表示关键字索引的数量,l′表示数据用户检索的关键字数量。

由表3 可知,本文方案在密文生成阶段与陷门生成阶段仅需进行指数运算和哈希到点运算,与其他同类方案相比计算开销较低。在匹配测试阶段,每进行一次关键字匹配,文献[14]方案比本文方案少计算一个双线性对运算,而文献[17]方案只需进行指数运算。本文方案在匹配测试阶段的计算开销高于文献[14]方案和文献[17]方案,但本文方案能够在关键字索引不完全包括检索关键字的非精确匹配情况下返回正确搜索结果。此外,本文方案支持多个边缘服务器同时进行关键字匹配,随着文件数量的增加,本文方案在匹配测试阶段的计算开销优势逐渐明显。

在装有Intel Core i7-6500 2.60GH 处理器和8 GB 内存的Windows 系统上使用PBC-0.47-VC软件包进行仿真实验,并将本文方案与同类密文检索方案在密文生成、陷门生成以及测试阶段的计算开销进行对比。

图2 展示了密文生成时间随数据用户数量的变化,为便于比较关键字索引数量,设l=100。由图2可知,本文方案的密文生成时间明显少于对比方案,且密文生成时间不随数据用户的增加呈线性增长。在本文方案中,每增加一个搜索用户只需计算该用户身份密文信息Bi且Bi的计算开销较小,本文方案在密文生成阶段的计算开销优势会随用户数量的增加越来越明显。

图2 密文生成时间随数据用户数量的变化

图3 展示了陷门生成时间随搜索关键字数量的变化。本文方案与对比方案的陷门生成时间均随用户搜索关键字数量l′的增加而增加,但由图3 可知,本文方案与其他方案相比,陷门生成时间较少。

图3 陷门生成时间随搜索关键字数量的变化

表3 计算开销对比

图4(a)和图4(b)分别比较了边缘服务器个数为10 和100 时,文件数量的增加对本文方案与同类方案的匹配测试时间的影响。为便于观察,假定每个文件包含100 个关键字。随着文件数量的增加,本文方案的计算开销优势逐渐增加,这是因为本文方案支持边缘服务器同时进行陷门匹配计算,数据量越大本文方案在匹配测试阶段的计算开销优势越明显。边缘服务器数量越多,本文方案的计算效率越高,因此本文方案适用于文件数目和边缘节点众多的IIoT 数据共享环境。

图4 匹配测试时间随文件数量的变化

6 结束语

面向工业物联网环境,本文基于云边协同计算的思想提出了一个高效的无证书多用户多关键字密文数据检索方案。该方案实现了关键字密文认证且支持更新用户的文件访问权限,并能够在关键字索引不完全包含检索的多个关键字的情况下实现多用户密文数据检索。经过理论分析与PBC 密码库仿真分析,本文方案计算效率较高。在随机预言模型下,本文方案能够抵抗IKGA。下一步的工作任务是在标准模型下,设计工业物联网环境中安全高效的密文数据检索方案。

猜你喜欢
拥有者关键字密文
基于Stackelberg博弈的异步联邦学习激励机制设计
一种针对格基后量子密码的能量侧信道分析框架
履职尽责求实效 真抓实干勇作为——十个关键字,盘点江苏统战的2021
华人时刊(2022年1期)2022-04-26 13:39:28
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
美德伦理品质有利于其拥有者
成功避开“关键字”
云存储中支持词频和用户喜好的密文模糊检索
基于用户反馈的关系数据库关键字查询系统
一种基于间接互惠的计算网格合作激励机制研究*
电信科学(2011年9期)2011-06-27 02:30:04