Page 446 - 《软件学报》2026年第3期
P. 446
张明川 等: 支持索引动态更新的高效可搜索属性加密方案 1409
VMSE [12] 和本文方案支持对检索索引的有效更新, 但更新操作都受限于首次上传时确定的关键词数量. VMSE [12] 方
案通过双线性配对运算匹配新旧关键词集合实现更新索引, 更新后的索引只保留了新旧关键词的交集部分, 无法
引入新的关键词. 本文方案基于 BLS 签名对数据所有者进行权限验证, 若验证通过则将原有关键词替换为目标关
键词从而实现索引更新. 对于包含多个替换关键词的同一密文, 仅需执行一次验证操作.
6.2 实验分析
实验平台为 Intel® Core i5-13600KF 处理器、16 GB 内存、Windows 11 操作系统. 选用 y = x +ax+b 构造
TM
3
2
的 A 类椭圆曲线, 用 Java 语言调用 JPBC 库编程实现各个方案, 在安然电子邮件数据集 [33] 上对相关算法执行
30 次, 取平均值作为最终实验结果, 以下是具体的实验分析.
初始化算法的执行时间如图 5(a) 所示. 对 EABSE 进行 4 倍缩放, 可以看到 EABSE 和本文方案初始化算法
[1]
[1]
的执行时间随着属性域的大小呈线性增长趋势. 方案 FAME [10] 和 VMSE [12] 初始化算法的运行时间则近似恒定, 可
支持大属性域. 属性密钥生成算法的执行时间如图 5(b) 所示, 可以看到由于 VMSE [12] 只用伪随机函数处理各个属
[1]
性, 密钥生成时间最少, 但只支持与门策略. 其他方案的属性密钥的生成时间都与属性数量正相关, EABSE 由于
在初始化算法中对所有属性预计算了一部分组件值, 故而属性密钥的生成开销同样较小. 加密算法和解密算法的
运行对比时间如图 5(c) 所示. 在数据集中随机选择一个明文数据进行加密, 可以看到 EABSE 和 [1] VMSE [12] 采用了
对称加密的方式, 加密开销近似恒定, VMSE [12] 需要对明文数据计算签名用于后续执行关键词更新操作因而开销
略大. 将方案 FAME [10] 的加密时间缩放 10 倍, 可以看到该方案加密耗时与访问策略中属性数量线性相关. 在解密
算法中, 方案 FAME [10] 执行双线性配对的次数不依赖属性的数量, 解密开销趋于一个定值. VMSE [12] 和 EABSE 在
[1]
处理明文数据时同样采用了对称加密算法, 计算开销相对较小.
200 800 120 EABSE Enc
EABSE VMSE Enc
180 EABSE (×0.25) 700 Ours FEMA Enc (/10)
Ours FAME 100 FEMA Dec
160 FAME 600 VMSE 80 VMSE Dec
EABSE Dec
执行时间 (ms) 120 执行时间 (ms) 500 执行时间 (ms) 60
VMSE
140
400
100
40
300
80
60 200 20
40 100
0
20 0
5 10 15 20 25 30 5 10 15 20 25 30 5 10 15 20 25 30
属性数量 属性数量 属性数量
(a) 初始化算法 (b) 属性密钥生成 (c) 数据加解密
700
400 Enc CK EABSE IndexGen (/1000) 100 EABSE TrapGen
Dec CK 600 VMSE IndexGen (/1000) VMSE TrapGen
350 Determine Ours IndexGen VMSE IndexUpdate
Gen sp 500 EABSE Search 80 Ours IndexUpdate
300
执行时间 (ms) 250 执行时间 (ms) 400 执行时间 (ms) 60
Ours TrapGen
VMSE Search
Dec CK(sp)
Enc CK(sp)
Ours Search (×10)
200
40
300
150
100 200 20
50 100
0
0 0
5 10 15 20 25 30 2 000 4 000 6 000 8 000 10 000 2 4 6 8 10
属性数量 加密文件数量 关键词数量
(d) 策略复用、数据加解密 (e) 索引生成、关键词检索 (f) 检索陷门生成、索引更新
图 5 算法性能对比
本文提出了一种复用访问策略减少加密计算的方法, 对相关加解密操作的计算效率进行独立比较分析. 如
图 5(d) 所示, 给出了访问策略中属性数量一致时, 使用常规属性加密算法加密对称密钥 Enc CK 和使用复用策略
加密对称密钥的运行时间 Enc CK(sp) 对比, 使用常规属性加密算法解密对称密钥 Dec CK 和使用复用策略解密对
称密钥的运行时间 Dec CK(sp) 对比以及复用策略生成时间 Gen sp 和复用策略判定时间 Determine. 可以看到采用

