一种使用量子密钥加密的云存储系统及方法转让专利

申请号 : CN202210585983.4

文献号 : CN114679272B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 董智超郑韶辉

申请人 : 浙江九州量子信息技术股份有限公司

摘要 :

一种使用量子密钥加密的云存储系统,包括:用于提供量子密钥分发、管理和基于量子密钥的陷门函数算法服务的密钥管理子系统;用于向用户终端提供密文存储以及密文检索服务的云存储中心;用于向使用者提供文件的密文存储和检索的操作界面的用户终端。与现有技术相比,本发明通过在用户终端将数据加密后上传,解决了云存储环境下用户隐私泄露问题;通过使用SSE方案实现了云存储环境下的密文存储和密文检索,创新的在SSE方案中采用了量子密钥分发技术,解决了传统SSE方案密钥安全性问题,和密钥管理难题;通过在索引创建和关键字检索过程中使用基于量子密钥的带陷门的哈希函数使得同一个关键字每次生成的密文不同,解决了检索过程中的隐私泄露问题。

权利要求 :

1.一种使用量子密钥加密的云存储系统,其特征在于,包括:密钥管理子系统,密钥管理子系统提供量子密钥管理服务,密钥管理子系统还提供基于量子密钥的陷门函数算法服务,同时将量子密钥作为陷门函数的关键参数参与陷门运算;

云存储中心,云存储中心用于存储用户终端上传的密文文件数据,以及向用户终端供密文检索服务;

用户终端,用于与使用者进行交互,提供文件的密文上传、下载、检索操作界面,所述云存储中心包括:QKD接入设备,所述QKD接入设备用于和密钥管理子系统建立量子保密通信链路;

分布式存储网络,所述分布式存储网络存储由用户终端上传的密文文件;

云存储管理程序,所述云存储管理程序用于维护用户终端上传的密文关键字、密文文件标签与密文文件的索引关系,所述云存储管理程序采用倒排索引表管理密文关键字、密文文件标签与密文文件之间的索引关系,倒排索引表中的索引与分布式存储网络中存储的密文文件存储位置一一对应,所述倒排索引表中存储的索引值是通过陷门哈希函数算法计算出的哈希值,陷门哈希函数算法的输入包括密钥管理子系统公布的密文加密公钥、用户终端上传的密文关键字列表或密文文件标签、用户终端上传的临时量子密钥标识所对应的量子密钥值。

2.如权利要求1所述的使用量子密钥加密的云存储系统,其特征在于,密钥管理子系统包括:QKD网络,所述QKD网络包括若干个QKD设备节点,所述QKD网络用于协商生成量子密钥;

密钥管理程序,所述密钥管理程序用于管理量子密钥;

密文算法程序,所述密文算法程序使用量子密钥通过陷门函数将输入明文变为密文。

3.如权利要求2所述的使用量子密钥加密的云存储系统,其特征在于,所述密钥管理程序用于对QKD网络协商的量子密钥进行统一管理,提供量子密钥操作接口,并向用户终端UC提供量子密钥服务。

4.如权利要求3所述的使用量子密钥加密的云存储系统,其特征在于,所述密文算法程序管理一个数据字典和一个密文加密密钥,所述密文加密密钥包含密文加密公钥和陷门信息。

5.如权利要求3所述的使用量子密钥加密的云存储系统,其特征在于,所述密文算法程序包含基于量子密钥的陷门函数算法,陷门函数算法输入信息包括陷门信息、来源于数字字典的数据项、与数据项对应的量子密钥、临时获取的量子密钥,陷门函数算法输出信息包括与数据项对应的密文数据。

6.如权利要求1所述的使用量子密钥加密的云存储系统,其特征在于,所述用户终端为一个客户端程序。

7.一种使用量子密钥加密的云存储方法,其特征在于,包括以下步骤:

1)密文存储:

11)对所选择的文件进行扫描生成关键字列表和文件标签;

12)请求密钥管理子系统对关键字列表和文件标签执行基于量子密钥的陷门函数,生成密文关键字列表和密文文件标签;

13)使用从密钥管理子系统中获取到的量子密钥,加密文件,得到密文文件;

14)将密文关键字列表、密文文件标签和密文文件一同上传给云存储中心;

15)云存储中心存储密文文件到分布式存储网络,并使用密文关键字列表和密文文件标签通过陷门哈希函数算法计算出索引、存入倒排索引表中,将索引关联到分布式存储网络中存储的密文文件;

2)密文检索:

21)用户终端向云存储中心发起的密文检索请求,用于查找云存储中心中存储的包含对应关键字的所有文件,得到检索关键字列表;

22)用户终端请求密钥管理子系统对检索关键字列表执行基于量子密钥的陷门函数,生成密文检索关键字列表;

23)使用密文检索关键字列表构建密文检索请求并发送给云存储中心;

24)用户终端从云存储中心中获得符合要求的密文标签索引集合,选择下载密文标签索引集合中的密文文件;

25)从密文文件中分理出量子密钥标识,分离后的密文文件变为文件密文和量子密钥标识,从密钥管理子系统中根据量子密钥标识查询到对应的量子密钥值,解密得到文件。

8.如权利要求7所述的使用量子密钥加密的云存储方法,其特征在于,所述云存储中心还可以执行多个关键字的联合查询。

说明书 :

一种使用量子密钥加密的云存储系统及方法

技术领域

[0001] 本发明涉及数据安全存储技术领域,特别涉及一种使用量子密钥加密的云存储系统及方法。

背景技术

[0002] 随着云服务产业的逐渐发展的一种网络服务,大量的个人用户和企业选择将他们的数据和业务迁移到云中,以节省数据管理和本地系统维护的成本。但是由于云中的数据无法像本地数据一样直接被用户控制,用户无法有效地检查数据的安全性和一致性。虽然云服务提供商会严格按照签订的协议规划执行用户需求,但是也并非完全诚实可信。于是有些系统选择把用户本地数据加密后再上传到云端,通过加密敏感数据,从而避免云服务器和恶意用户的攻击,起到保护用户数据安全和用户隐私的目的,但是密文数据限制了云服务器的检索功能,阻碍了云服务器弹性伸缩、管理便捷等特点的发挥,所以产生了可搜索加密(SE)技术。
[0003] 密文检索有两种方法,一种是对称可搜索加密(Symmetric  Searchable Encryption,简称SSE),另一种是公钥可搜索加密(Public Key Encryption with Keyword Search,简称 PEKS)。其中,SSE方案建立索引和查询过程时间开销很小,因此具有很好的搜索效率和实用性,但是由于对称算法复杂的密钥分发和管理问题,导致在云计算环境下面向多用户场景时,大多采用了基于非对称算法的PEKS方案。
[0004] 此外,在现有算法的密文检索过程中,很容易泄露文件和查询关键字之间的关系,导致系统容易遭受文件注入攻击的威胁。
[0005] 综上,现有云存储系统主要存在以下几个问题:
[0006] 1)采用明文方式的云存储系统,存在用户数据安全问题,容易泄露用户隐私数据;
[0007] 2)采用密文方式的云存储系统,限制了云服务器的检索功能;
[0008] 3)现有密文检索技术PEKS开销较大,SSE方案又存在密钥分发和管理问题;
[0009] 4)密文检索过程容易泄露信息。

发明内容

[0010] 本发明提出了一种使用量子密钥加密的云存储系统及方法,以解决现有技术中云存储系统用户数据安全和用户隐私保护问题,现有SSE方案密钥的安全分发与管理难的问题,以及密文检索过程容易泄露信息的技术性缺陷。
[0011] 本发明的技术方案是这样实现的:
[0012] 一种使用量子密钥加密的云存储系统,包括:
[0013] 密钥管理子系统KMS,密钥管理子系统KMS提供量子密钥管理服务,密钥管理子系统KMS还提供基于量子密钥的陷门函数算法服务,同时将量子密钥作为陷门函数的关键参数参与陷门运算;
[0014] 云存储中心CSC,云存储中心CSC用于存储用户终端UC上传的密文文件数据,以及向用户终端UC提供密文检索服务;
[0015] 用户终端UC,用于与使用者进行交互,提供文件的密文上传、下载、检索操作界面。
[0016] 优选地,密钥管理子系统KMS包括:
[0017] QKD网络,所述QKD网络包括若干个QKD设备节点,所述QKD网络用于协商生成量子密钥;
[0018] 密钥管理程序KMP,所述密钥管理程序KMP用于管理量子密钥;
[0019] 密文算法程序CAP,所述密文算法程序CAP使用量子密钥基于陷门函数将输入明文变为密文。
[0020] 优选地,所述密钥管理程序KMP用于对QKD网络协商的量子密钥进行统一管理,提供量子密钥的操作接口,并向用户终端UC提供量子密钥服务,管理的量子密钥K包含两个组成部分,量子密钥标识KID和;量子密钥值KV,表示为 。
[0021] 优选地,所述密文算法程序CAP管理一个数据字典D和一个密文加密密钥EK,所述密文加密密钥EK包括密文加密公钥HK和陷门信息TK。
[0022] 优选地,所述密文算法程序CAP包含陷门函数算法,陷门函数算法输入信息包括陷门信息TK、来源于数字字典的数据项 、与数据项对应的量子密钥 、临时获取的量子密钥 ,陷门函数算法输出信息包括与数据项 对应的密文数据 。
[0023] 优选地,所述云存储中心CSC包括:
[0024] QKD接入设备,所述QKD接入设备用于和密钥管理子系统KMS建立量子保密通信链路;
[0025] 分布式存储网络DSN,所述分布式存储网络DSN存储由用户终端UC上传的密文文件EF;
[0026] 云存储管理程序CSP,所述云存储管理程序CSP用于维护用户终端UC上传的密文关键字EW、密文文件标签FH与密文文件EF的索引关系;
[0027] 优选地,所述云存储管理程序CSP采用倒排索引表IIT用于管理密文关键字EW、密文文件标签FH与密文文件EF之间的索引关系,倒排索引表IIT中的索引与分布式存储网络DSN中存储的密文文件存储位置一一对应。
[0028] 优选地,所述倒排索引表IIT中存储的索引值是通过陷门哈希函数算法计算出的哈希值,陷门哈希函数算法的输入包括密钥管理子系统KMS公布的密文加密公钥HK、用户终端UC上传的密文关键字W、用户终端UC上传的临时密钥标识KID所对应的密钥值KV。
[0029] 优选地,所述用户终端UC为一个客户端程序,可兼容多种类型的操作系统,操作系统包括但不限于Windows、Linux、Mac OS、Android、IOS中的一种,用户终端UC通过HTTPS协议与密钥管理子系统KMS、云存储中心CSC建立通信。
[0030] 本发明还提供了一种使用量子密钥加密的云存储方法,包括以下步骤:
[0031] 1)密文存储:
[0032] 11)对所选择的文件进行扫描生成关键字列表 和文件标签L;
[0033] 12)请求密钥管理子系统KMS对关键字列表W和文件标签L执行基于量子密钥的陷门函数TR生成密文关键字列表 和密文文件标签 ;
[0034] 13)使用从密钥管理子系统KMS中获取到的量子密钥K加密文件F得到密文文件EF;
[0035] 14)将密文关键字列表EW、密文文件标签FH和密文文件EF一同上传给云存储中心CSC;
[0036] 15)云存储中心CSC中的分布式存储网络存储密文文件EF,并使用关键字列表EW和密文文件标签FH通过陷门哈希函数算法计算出索引、存入倒排索引表IIT,并关联到分布式存储网络中存储的密文文件EF;
[0037] 2)密文检索:
[0038] 21)所述用户终端UC向云存储中心CSC发起的密文检索请求,用于查找云存储中心CSC中存储的包含对应关键字的所有文件,得到检索关键字列表 ;
[0039] 22)请求密钥管理子系统KMS对检索关键字列表W执行陷门函数TR生成密文检索关键字列表 ;
[0040] 23)使用密文检索关键字列表EW构建密文检索请求并发送给云存储中心CSC;
[0041] 24)从云存储中心CSC中获得符合要求的密文标签索引集合 ,选择下载密文文件EF;
[0042] 25)从密文文件EF中分理出密钥标识KID,分离后的密文文件EF变为文件密文 ,从密钥管理子系统KMS中根据密钥标识KID查询到对应的密钥值KV,解密得到文件F。
[0043] 优选地,所述云存储中心CSC还可以执行多个关键字的联合查询。
[0044] 与现有技术相比,本发明有以下有益效果:
[0045] 本发明通过在客户端将数据加密后上传云端,解决了云存储环境下用户数据安全和用户隐私保护问题;
[0046] 本发明通过使用SSE方案解决了云存储的密文检索问题,基于SSE方案的云存储不仅支持密文存储还支持基于密文的检索;
[0047] 本发明通过使用量子密钥分发与量子密钥管理技术,解决了传统SSE方案密钥的安全分发与管理难的问题,量子密钥分发替代固定密钥解决密钥分发问题,同时统一的量子密钥管理子系统解决了多终端场景下的密钥存储、使用、获取、销毁等管理难题;
[0048] 本发明通过在索引创建和密文检索过程中联合使用基于量子密钥的陷门函数和陷门哈希函数,通过陷门函数将检索的关键字变成密文,且对于同样的关键字每次的密文均不同,解决了查询关键字的隐私泄露问题。

附图说明

[0049] 图1为本发明使用量子密钥加密的云存储系统的组成结构图;
[0050] 图2为本发明密钥管理子系统的组成结构图;
[0051] 图3为本发明云存储中心的组成结构图。

具体实施方式

[0052] 下面将结合本发明实施例中的附图,对本发明进行清楚、完整地描述。
[0053] 如图1所示,一种使用量子密钥加密的云存储方法及系统,主要组成部分包括:密钥管理子系统KMS,云存储中心CSC和至少一个用户终端UC。密钥管理子系统KMS主要负责向用户终端UC提供量子密钥管理服务,密钥管理子系统KMS还向用户终端UC提供包括变色龙哈希函数在内的密码学算法服务。云存储中心CSC主要负责存储存储用户终端UC上传的密文文件数据,云存储中心CSC还向用户终端UC提供密文检索服务。所述用户终端UC主要负责与使用者进行交互,提供文件的密文上传、下载、检索操作界面。
[0054] 如图2所示,所述密钥管理子系统KMS由QKD网络、密钥管理程序KMP和密文算法程序CAP组成。所述QKD网络负责协商生成量子密钥,密钥管理程序KMP负责管理量子密钥,密文算法程序CAP使用量子密钥基于变色龙哈希的陷门函数将输入明文变为密文。
[0055] 所述QKD网络包含若干个QKD设备节点,且各个QKD设备节点间采用包括但不限于BB84、B92、EPR量子密钥分发协议持续进行密钥协商。
[0056] 所述密钥管理程序KMP对QKD网络协商的量子密钥进行统一管理,提供量子密钥包括存储、分发、销毁的操作接口,并向用户终端UC提供量子密钥服务,所管理的量子密钥K包含两个组成部分,分别为密钥标识KID和密钥值KV,可表示为 。
[0057] 所述密文算法程序CAP管理一个数据字典D和一对密文加密密钥EK,所述数据字典D采用表结构存储,表中的每项都由数据d和量子密钥标识KID组成,可表示为,与密钥标识KID对应的密钥值KV存储在密钥管理程序KMP中,所述密文加密密钥EK是非对称密钥,由公钥HK和私钥TK组成,可表示为,其中,TK也叫做陷门信息。
[0058] 所述密文算法程序CAP包含一个变色龙哈希陷门函数算法。算法的输入参数来源包括:数据字典D中的一个数据项 ;与密钥标识 对应的密钥值 ;陷门信息TK;从密钥管理子系统KMS中临时获取的量子密钥 。算法的输出包括与 数 据 对应 的 密文 数 据 。定 义陷 门 函数 TR ,用公 式 表示 为 :

[0059] 如图3所示,所述云存储中心CSC由QKD接入设备、分布式存储网络DSN和云存储管理程序CSP组成。所述QKD接入设备用于和密钥管理子系统KMS建立量子保密通信链路,分布式存储网络DSN存储由用户终端UC上传的密文文件EF,云存储管理程序CSP维护用户终端UC上传的密文关键字EW与密文文件EF的索引关系。
[0060] 云存储管理程序CSP中含有一张倒排索引表IIT用于管理密文关键字EW与密文文件EF之间的索引关系,所述倒排索引表IIT采用表结构存储,表中的每一项都包含两个元素,一个是密文关键字索引wh,另一个是包含该关键字的全部文件的密文标签索引集合。设倒排索引表IIT中存储n条数据,且每条数据中包含的密文标签集合为 ,则倒排索引表IIT可表示为 ,
且密文标签索引集合 中的元素fh与分布式存储网络DSN中存储的密文
文件存储位置一一对应。
[0061] 倒排索引表IIT中的密文关键字索引wh和密文标签索引集合中的元素fh是一个哈希值,该哈希值采用变色龙哈希函数算法CH计算。算法的输入参数包括:密钥管理子系统KMS公布的密文加密密钥EK中的公钥HK;用户终端UC上传的密文关键字w;用户终端UC上传的临时密钥标识KID所对应的KV。算法的输出是一个哈希值h。定义变色龙哈希函数CH,用公式表示为: 。
[0062] 所述用户终端UC是一个客户端程序,兼容多种类型的操作系统,包括但不限于Windows、Linux、Mac OS、Android、IOS中的一种,用户终端UC通过HTTPS协议与密钥管理子系统KMS、云存储中心CSC建立通信。
[0063] 所述用户终端UC向云存储中心CSC上传文件时需要对文件进行处理,其处理过程为:
[0064] 1)对所选择的文件进行扫描生成关键字列表 和文件标签L;
[0065] 其次,请求密钥管理子系统KMS对关键字列表W和文件标签L执行陷门函数TR生成密文关键字列表 和密文文件标签 ;
[0066] 2)使用从密钥管理子系统KMS中获取到的量子密钥 加密文件F得到密文文件EF,公式为 ,其中ENC为对称加密函数,支持的算法包括但不限于SM1、SM4、AES,“||”符号为拼接运算符;
[0067] 3)将密文关键字列表EW、密文文件标签FH和密文文件EF一同上传给云存储中心CSC。
[0068] 所述用户终端UC向云存储中心CSC发起的密文检索请求,用于查找云存储中心CSC中存储的包含某个关键字的所有文件,还可以执行多个关键字的联合查询,其执行过程为:
[0069] 1)得到检索关键字列表 ;
[0070] 2)请求密钥管理子系统KMS对关键字列表W执行陷门函数TR生成密文关键字列表;
[0071] 3)使用密文关键字列表构建密文检索请求并发送给云存储中心CSC;
[0072] 4)从云存储中心CSC中获得符合要求的密文标签索引集合 ,选择下载密文文件EF;
[0073] 5)从密文文件EF中分理出密钥标识KID,分离后的密文文件EF变为文件密文 ,从密钥管理子系统KMS中根据密钥标识KID查询到对应的密钥值KV,解密得到文件F,公式为,其中DEC为对称解密函数,支持的算法包括但不限于SM1、SM4、AES。
[0074] 如图 3所示,为本发明实施例,具体实施步骤如下:
[0075] 本发明公开了一种使用量子密钥加密的云存储方法及系统如图一所示,具体实施步骤如下:
[0076] 步骤1,部署密钥管理子系统KMS,密钥管理子系统KMS管理若干QKD设备组成的QKD网络。
[0077] 步骤2,部署云存储中心CSC,安装QKD接入设备并建设到密钥管理子系统KMS中QKD网络的量子保密通信链路。
[0078] 步骤3,准备一个用户终端UC,设为UC_A,且UC_A到密钥管理子系统KMS和UC_A到云存储中心CSC的通信链路畅通。
[0079] 步骤4,准备另一个用户终端UC,设为UC_B,且UC_B到密钥管理子系统KMS和UC_B到云存储中心CSC的通信链路畅通。
[0080] 步骤5,初始化密钥管理子系统KMS,创建数据字典D,初始时为空,创建一对密文加密密钥 陷门信息。
[0081] 步骤6,初始化云存储中心CSC中的倒排索引表IIT,初始为空。
[0082] 步骤7,使用UC_A选择需要上传到云存储中心CSC中存储的本地文件F。
[0083] 步骤8,UC_A扫描文件F,生成关键字列表 ,同时为文件生成文件标签L。
[0084] 步骤9,UC_A向密钥管理子系统KMS发送密文生成请求,请求内容包含关键字列表W;
[0085] 步骤10,密钥管理子系统KMS的密文算法程序CAP遍历关键字列表W查询 是否在数据字典D中;
[0086] 步骤11,如果 不在数据字典D中,则向密钥管理程序KMP请求生成一个新的量子密钥 ,并在字典中创建一个新项 ;
[0087] 步骤12,如果 在数据字典D中,则直接查找到项 ;
[0088] 步骤13,根据 到密钥管理程序KMP中查询得到 ,向密钥管理程序KMP请求生成一个量子密钥 ,执行陷门函数TR,得到 ;
[0089] 步骤14,重复步骤10到12步直到关键字列表W遍历结束;
[0090] 步骤15,返回密文关键字列表 给UC_A;
[0091] 步骤16,UC_A向密钥管理子系统KMS发送的密文生成请求,请求内容为文件标签L;
[0092] 步骤17,按步骤10到12过程查询数据字典,返回密文文件标签列表;
[0093] 步骤18,UC_A向密钥管理子系统KMS请求量子密钥,密钥管理子系统KMS返回给UC_A;
[0094] 步骤19,UC_A加密选择的本地文件F得到密文文件 ;
[0095] 步骤20,UC_A发起上传请求,将{EW, EL, EF}发送给云存储中心CSC;
[0096] 步骤21,云存储中心CSC使用关键字列表EW与密文文件EL中的量子密钥标识KID向密钥管理子系统KMS查询 和 ;
[0097] 步骤22,云存储中心CSC调用变色龙哈希函数CH,计算关键字密文索引;
[0098] 步骤23,云存储中心CSC调用变色龙哈希函数CH,计算密文文件标签索引;
[0099] 步骤24,根据关键字密文索引WH与fh存在的直接关联关系,更新关键字密文索引WH与密文文件标签索引fh到倒排索引表IIT中;
[0100] 步骤25,UC_B向密钥管理子系统KMS发送的密文生成请求,请求内容为关键字列表;
[0101] 步骤26,密钥管理子系统KMS的密文算法程序CAP遍历关键字列表W查询 是否在数据字典D中;
[0102] 步骤27,如果 不在数据字典D中,则向密钥管理程序KMP请求生成一个新的量子密钥 ,并在字典中创建一个新项 ;
[0103] 步骤28,如果 在数据字典D中,则直接查找到项 ;
[0104] 步骤29,根据 到密钥管理程序KMP中查询得到 ,向密钥管理程序KMP请求生成一个量子密钥 ,执行陷门函数TR,得到 ;
[0105] 步骤30,重复步骤10到12步直到关键字列表W遍历结束;
[0106] 步骤31,返回密文关键字列表 给UC_B;
[0107] 步骤32,UC_B向云存储中心CSC发起密文检索请求,将密文关键字列表 传递给云存储中心CSC;
[0108] 步骤33,云存储中心CSC根据 向密钥管理子系统KMS查询 ;
[0109] 步骤34,云存储中心CSC调用变色龙哈希函数CH,计算关键字密文索引;
[0110] 步骤35,云存储中心CSC使用 查询倒排索引表IIT中是否存在对应的索引;
[0111] 步骤36,如果不存在则返回查询失败,过程结束;
[0112] 步骤37,如果存在则根据关键字密文索引 索引查到全部相关密文文件EF;
[0113] 步骤38,用户终端UC从密文文件EF列表中选择下载一个EF,并根据公式,得到文件密文 和密钥标识 ;
[0114] 步骤39,根据密钥标识 向密钥管理子系统KMS查询到密钥值KV7;
[0115] 步骤40,用户终端解密还原文件明文 。
[0116] 综合本发明的结构与具体过程可知,通过在客户端将数据加密后上传云端,解决了云存储环境下用户数据安全和用户隐私保护问题。例如网盘曾发生过用户数据泄露的事件,而采用密文上传则可以解决此类问题。
[0117] 通过使用SSE方案解决了云存储的密文检索问题。例如,云存储的普通密文文件由于经过加密变换无法进行检索,而云服务的优势在于海量数据检索能力,基于SSE方案的云存储不仅支持密文存储还支持基于密文的检索。
[0118] 通过使用量子密钥分发与量子密钥管理技术,解决了传统SSE方案密钥的安全分发与管理难的问题。例如,传统SSE方案的密钥通常采用固定密钥,安全性不高,多终端应用场景下的密钥管理也是难题,量子密钥分发技术可以替代固定密钥解决密钥分发问题,同时统一的量子密钥管理子系统解决了多终端场景下的密钥存储、使用、获取、销毁等管理难题。
[0119] 通过在密文检索过程中使用变色龙陷门哈希函数,解决了查询关键字隐私泄露问题,例如,传统关键字检索方案,每次传递相同的关键字,通过多个关键字分析很容易得到密文文件的关键信息,通过变色龙哈希函数将检索的关键字变成密文,且对于同样的关键字每次的密文均不同,解决了关键字的隐私泄露问题。