Page 297 - 《软件学报》2021年第10期
P. 297

张明武  等:医疗大数据隐私保护多关键词范围搜索方案                                                      3269


                                                 Table 1   Terms and notations
                                                    表 1   主要符号说明
                                 符号              说明               符号              说明
                                                                                
                                  F        电子健康记录文件 EHRs          TD S      向量 S 对应的搜索陷门
                                 CT          加密的 EHRs 文件         E key, D key   对称加密/解密算法
                                 KEY      加密 EHRs 文件的对称密钥     SK={s,P,M 1,M 2}  HC 整体私钥
                                 A,M             矩阵                P         划分二进制矩阵
                             W=(w 1,w 2,…,w n)   EHRs 文件提取关键词集合    Q       所有位置为 1 的参考向量
                             I ˆ   (I ˆ ˆ   1 , ,..., m I 2 I    ˆ  )    EHRs 文件加密的搜索索引  h=n/l   划分向量段数
                                  
                                  S           用户搜索向量              A*B       矩阵 A 和 B 的哈达马积
                 2.2   哈达马积
                    设两个 mn 的矩阵 A=[a ij ]与 B=[b ij ](其中,i[1,m],j[1,n]),两个矩阵的哈达马积(Hadamard product)记为
                 A*B,哈达马积的元素定义为两个矩阵对应元素的乘积:(A*B) ij =a ij b ij ,即 A*B=|a ij b ij | mn .值得注意的是,只有大小完
                 全相同的矩阵才能进行哈达马积运算.

                 2.3   非对称向量积保持加密
                    在非对称的向量积保持加密方案(asymmetric scalar-product preserving encryption,简称 APSE)  [17] 中,设 E Q 和
                                                                           
                 E T 分别为查询矢量和属性矢量的加密算法.设 I 为 I 的加密矢量输出,Q是 Q 的加密矢量输出,即:
                                                          i
                                                      i
                                                                        
                                             I  E  (, )I k   T  , I Q    M  E  ( , )Q k   M  1  , Q
                                             i   T  i      i     Q
                                                       
                 其中,M 是 nn 的可逆矩阵.该方案能够保持 I 和 Q 的内积运算:
                                                    i             
                                                          T
                                                  I  T  Q     I MM  1 Q   I   T  . Q
                                                   i    i        i
                    显然,ASPE 方案可以实现查询矢量 Q 和属性矢量 I 的内积.
                                                            i
                 3    问题描述
                 3.1   系统模型
                    本节中给出面向医疗云的范围可搜索加密方案系统模型,如图 1 所示.系统中存在 3 个参与角色:医疗中心
                 HC(health center)、医疗云服务器 CS(cloud server)和数据使用者 DU(data user).
                    (1)  医疗中心 HC:HC 作为完全可信的机构,拥有所有 EHRs 文件,负责对系统进行初始化并产生系统公开
                        参数,选取密钥和加密算法,生成自身私钥.同时,HC 负责建立关键词索引,将文件的关键词索引加密,
                        并将生成的文件密文和索引密文上传给医疗云服务器 CS.医疗中心 HC 提供验证数据使用者 DU 的
                        注册信息,并将密钥发送给授权用户 DU.值得注意的是,系统初始化过程只做 1 次;
                    (2)  医疗云服务器 CS:负责数据处理,包括数据存储、计算、搜索以及重加密密文的生成与发送.在本文
                        模型中,EHRs 被外包存储到医疗云服务器 CS 中,要求它是一种半诚实的云服务器模型,即“诚实且好
                        奇(honest-but-curious)”的.虽然云服务器 CS 会如实执行用户的查询请求,返回正确的检索结果,但云
                        服务器为了获得用户敏感数据去收集信息,并窥探用户查询的内容以及加密 EHRs 文件的各种信息;
                    (3)  数据用户 DU:根据自身查询请求生成搜索矢量,构建搜索陷门并向云服务器进行检索请求.
                    系统工作流程分为 6 个步骤.
                    1.  步骤 1:系统初始化、用户注册与关键词提取.
                    可信 HC 在初始化阶段随机生成一个 lh 比特位的二进制划分矩阵 P={1,0} lh ,选取两个 ll 的可逆矩阵
                                                             
                 M 1 和 M 2 以及一个 n 位全部值为 1 的二进制参考向量 Q ,称为参考查询矢量.其中,l 是一个正整数且满足 l|n,h
                 表示划分段数 h=n/l.其中,私钥是一个三元组 SK={P,M 1 ,M 2 }.
                    为了保证密文的可搜索性,可信 HC 在初始化阶段从所有 EHRs 文件 F={f 1 ,f 2 ,…,f m }中提取关键词集合:
   292   293   294   295   296   297   298   299   300   301   302