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

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


                 this problem,  in this  work,  a range-based  multi-keyword searchable scheme  is proposed. It  can implement searchable  encryption of
                 complex query structures with scalar-product preserving encryption and support the query of connection keywords, ranges, and wildcard
                 characters. Furthermore, the indexes and trapdoors are created in a random manner to hide the search mode and protect the privacy of
                 search statements. The  Hadamard product is  adopted  to reduce the dimension of the required key  matrix.  Theoretical  analysis  and
                 experimental results  show  that the scheme  can  efficiently  protect the privacy users’ search strategy  while guaranteeing the privacy of
                 medical  data. This  scheme improves the  retrieval efficiency and  reduces the  time in index and trapdoor creation, achieving  the
                 range-based search of medical data in multi-user and multi-file medical environments.
                 Key words:    privacy protection; searchable  encryption;  asymmetric scalar-product preserving  encryption;  Hadamard product;  medical
                          clouds

                    近年来,纸质病历在医疗系统中由于不方便储存和管理正在逐步被淘汰,电子健康记录(electronic health
                 records,简称 EHRs)应用越来越普及.对许多医院和医疗系统而言,如何实现 EHRs 的有效管理、存储和高效检
                 索,是有待解决的主要问题之一.医疗云系统以其强大的存储能力和计算能力,为 EHRs 计算和存储提供了有效
                 的解决方案.将大量 EHRs 数据储存在云端,可极大地减少医疗中心维护、计算和存储的开销.然而,医疗云属于
                 第三方商业公司外包服务,存储在云端的医疗数据的隐私和安全风险可能会导致巨大的经济损失和社会信誉
                 问题.因此,研究实现敏感健康数据隐私保护条件下的安全存储与检索,是目前重要的研究内容之一.
                    将 EHRs 数据加密后上传到云端,当用户需要提取数据时再将其下载后解密,似乎能够满足对于病人和医
                 生对 EHRs 在云服务下隐私保护的需求.然而,EHRs 数据加密后不再具有原有的可直接检索和访问特性,当医疗
                 机构需要检索医疗数据时,无法直接在密文中分辨出所需的数据.在数据模型较小的情况下,用户可以将所有密
                 文数据下载至本地,先解密后再在明文中搜索自己想要的数据.随着云端数据规模的急剧扩大,医疗大数据也将
                 以指数级的速度增长,这种浪费大量时间开销与通信带宽的做法显然已不能满足实际需求,也不利于精准的范
                 围搜索.因此,如何做到在医疗大数据中既确保 EHRs 数据隐私,又能对加密后的海量 EHRs 数据进行快速且精
                 准的多关键词搜索,同时确保用户检索谓词的隐私,是目前迫切需要解决的问题.
                    可搜索加密(searchable encryption,简称 SE)是一种能够使得用户对加密文件中某些关键词进行查询的密
                                                                                             [1]
                 码技术,不仅可以在密文上进行搜索,而且还能够保护数据在半诚实医疗云中的安全性.Golle 等人 提出了可搜
                 索加密机制,将文件与其对应关键词绑定,可实现密文搜索,但不支持范围搜索;文献[2,3]通过对加密搜索文件构
                 建关键词索引的方式提高搜索效率,但不能实现范围搜索.文献[4]基于 Simhash 的降维思想,将文档关键词进行
                 n-gram 处理并得到 Simhash 指纹以实现模糊搜索.
                    考虑到医疗文件搜索特性,需对加密后的医疗文件实现范围查询.文献[5]利用非对称向量积保持加密构建
                 关键词索引,并在生成索引向量时引入属性树的概念,缩短构造索引向量的大小,实现在精确搜索的同时,具有比基
                 于双线性对的可搜索加密更好的搜索效率.由于引入了属性树,使得该方案只具有限制的范围精确搜索.
                                                                        [6]
                    对称可搜索加密会依赖于安全信道,为了克服该问题,Boneh 等人 首次提出了可搜索公钥加密:数据拥有
                 者建立文件关键字索引,使用接收者公钥加密文件和关键字索引,并上传到云服务器;用户用自己的私钥生成待
                 检索关键字的陷门并发送给云,云服务器将加密的关键字索引与陷门进行匹配,将搜索结果返回给用户.文献[7]
                 提出了支持多关键词范围搜索的公钥可搜索加密,将关键词放入合数阶群双线性运算中,但搜索速度缓慢,效率
                 较低.
                    根据医疗信息系统多用户搜索实际情况,以高效进行密文搜索的同时满足对多关键词搜索,以及关键词内
                 的范围精确搜索需求,本文提出一种多关键词范围可搜索加密方案.主要贡献如下:
                    (1)  基于范围的多关键词精确搜索:引入非对称向量积保持加密机制构建关键词索引,支持具有复杂查询结
                        构的连接查询功能,支持基于范围的多关键词精确搜索;
                    (2)  降低系统初始化开销:通常可搜索加密方案的关键词集合较大,所创建的文件关键词的向量维度也很大,
                        因此在构建索引和陷门时,使用的可逆矩阵也会很大,这导致系统开销急剧增长.本文在构建索引和陷门
                        时,将文件关键词向量切分成长度相同的向量段,并将向量段拼接成对应矩阵,使得所需可逆矩阵减小,极
   290   291   292   293   294   295   296   297   298   299   300