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. 可以看到采用
   441   442   443   444   445   446   447   448   449   450   451