一种量子同态对称可搜索加密的方法及系统的制作方法

文档序号:10572636阅读:209来源:国知局
一种量子同态对称可搜索加密的方法及系统的制作方法
【专利摘要】本发明适用于数据加密检索,提供了一种量子同态对称可搜索加密的方法,包括:A,随机产生若干私钥;B,根据私钥和关键词对明文数据进行加密后存放在云服务器;C,根据待整理的密文,确定出身份标识符对应的密文,通过化简操作将拥有相同身份标识符的密文整理得到索引表;D,根据私钥的相反偏移量对检索关键字加密后,根据加密后的检索关键字和身份标识符在索引表中查找到同一用户的密文并返回;E,根据私钥对检索结果进行解密,得到解密结果。本发明利用私钥和关键词对明文信息进行加密,将生成的密文存储在云服务器中,利用量子同态加密算法的特性,数据使用者可以检索包含关键字Key的密文,在没有私钥的情况下将不会泄露任何有关明文的信息。
【专利说明】
一种量子同态对称可搜索加密的方法及系统
技术领域
[0001] 本发明属于云计算和信息安全领域,尤其涉及一种量子同态对称可搜索加密的方 法及系统。
【背景技术】
[0002] 可搜索加密允许对密文数据不解密而检索,能保障存储在云服务器上的数据及检 索关键词的安全,非常适合于解决云计算中的隐私保护问题。可搜索加密中加密与解密过 程所采用的密钥相同,考虑到用户检索自己上传到服务器上加密数据的需要,因此对对称 可搜索加密进行研究,能最大化计算效率。量子信息具有不可克隆的特性,任何非法用户试 图伪造密文的行为均会被合法用户获悉,并且具有绝对的安全性,采用量子同态构造可搜 索加密能进一步提高安全性。

【发明内容】

[0003] 本发明所要解决的技术问题在于提供一种量子同态对称可搜索加密的方法及系 统,旨在提高采用量子同态构造可检索加密时的安全性。
[0004] 本发明是这样实现的,一种量子同态对称可搜索加密的方法,包括以下步骤:
[0005] 步骤A,随机产生若干私钥;所述若干私钥可被数据拥有者和数据使用者共享;
[0006] 步骤B,数据拥有者根据所述私钥和预设的关键词对明文数据进行加密,然后将产 生的密文存放在云服务器中;所述密文包含有数据拥有者的身份标识符;
[0007] 步骤C,数据拥有者在待整理的密文中,确定出所述身份标识符对应的密文,然后 通过化简操作将拥有相同身份标识符的密文整理在一起,根据整理结果得到索引表;
[0008] 步骤D,数据使用者以所述关键词为检索关键字,根据所述私钥的相反偏移量对所 述检索关键字加密,然后根据加密后的检索关键字和所述身份标识符在所述索引表中查找 到同一用户的密文,将查找到的密文作为检索结果并返回;
[0009] 步骤E,数据使用者根据所述私钥对所述检索结果进行解密,得到解密结果。
[0010] 进一步地,所述步骤B中,以Kj表示所述私钥,Mj表示所述关键词,记Kj与Mj的维数 均为n,Pq表示所述密文,则:
[0011]
[0012] 其中:
,矩阵Y中 的i表示复数中的虚数单位;My表示所述关键词%的第i个分量,01U表示所述私钥&的第i 个分量。
[0013] 进一步地,以f」所示所述私钥的相反偏移量,以所述关键词为检索关键字,以Key」 表示所述检索关键字,以ID表示所述身份标识符,以Ρ。」表示所述密文,则;
[0014] 所述步骤D具体包括:
[0015] 步骤D1,生成所述私钥的相反偏移量f」,根据所述私钥的相反偏移量f」对所述检 索关键字Keyj进行加密,记f j与Key」的维数均为η,则:
[0016]
[0017] 其中:若 Keyi,j= |〇>,贝ijEncryptdj, Keyi,j)=Ry(0) · RyH'i.j);否则,Encrypt (-Κ^,Κθγ?^)=Κγ(3?/2) · RyC-B^.j)

?中0e [0,231),矩阵¥中的1表示复数中的虚数单位;1^^表示1^」的第1个 分量;θ/ i,j表不f j的第i个分量;
[0018] 步骤D2,根据所述身份标识符在所述索引表中查找到同一用户的密文,然后根据 加密后的检索关键字利用量子同态特征来检索查找到的密文,即:
[0019]
[0020]
[0021]
[0022]步骤D3,检索步骤D2中查找到的密文中是否包含有检索关键字Key」的密文pcj,若 检索到包含检索关键字的关键字Ken的密文P。」,则将检索到的密文作为检索结果并返回所 述检索结果;BP:
[0023] _表示检索到包含关键字Key」的密文,并将密 文%返回。
[0024] 进一步地,在步骤E中,以Q表示所述检索结果,M'」表示所述解密结果,记f」与Cj 的维数均为n,则:
[0025] ……'各1'7~ …
[0026] 其中
:其中[0,2j0,矩 阵Υ中的i表示复数中的虚数单位;Μ7 i,j表示消息,j的第i个分量。
[0027] 本发明还提供了一种量子同态对称可搜索加密的系统,包括:
[0028]私钥产生单元,用于随机产生若干私钥;所述若干私钥可被数据拥有者和数据使 用者共享;
[0029]加密存放单元,用于数据拥有者根据所述私钥和预设的关键词对明文数据进行加 密,然后将产生的密文存放在云服务器中;所述密文包含有数据拥有者的身份标识符;
[0030] 操作整理单元,用于数据拥有者在待整理的密文中,确定出所述身份标识符对应 的密文,然后通过化简操作将拥有相同身份标识符的密文整理在一起,根据整理结果得到 索引表;
[0031] 加密检索单元,用于数据使用者以所述关键词为检索关键字,根据所述私钥的相 反偏移量对所述检索关键字加密,然后根据加密后的检索关键字和所述身份标识符在所述 索引表中查找到同一用户的密文,将查找到的密文作为检索结果并返回;
[0032] 密文解密单元,用于数据使用者根据所述私钥对所述检索结果进行解密,得到解 密、结果。
[0033] 进一步地,所述加密存放单元中,以Kj表示所述私钥,Mj表示所述关键词,记Kj与Mj 的维数均为η,Ρ。」表示所述密文,则:
[0034]
[0035] 其中
;0£[0,231),矩阵丫中 的i表示复数中的虚数单位;M1U表示所述关键词W的第i个分量,01U表示所述私钥&的第i 个分量。
[0036] 进一步地,以f」所示所述私钥的相反偏移量,以所述关键词为检索关键字,以Keyj 表示所述检索关键字,以ID表示所述身份标识符,以Ρ。」表示所述密文,则;
[0037]所述加密检索单元具体用于:
[0038] 首先,生成所述私钥的相反偏移量f」,根据所述私钥的相反偏移量f」对所述检索 关键字Key」进行加密,记f j与Key」的维数均为η,则:
[0039]
[0040] 其中:若 Keyi,j= |〇>,则Encryptdjjeyi,j)=Ry(0) · j);否则,Encrypt (_K'j,Keyi,j)=Ry(Jr/2) · Ry(_9 i,j);

\ ;其中Θ e [0,2jt),矩阵Y中的i表示复数中的虚数单位;Keyi, j表示Keyj的第i个 / 分量;θ/ i,j表不f j的第i个分量;
[0041] 其次,根据所述身份标识符在所述索引表中查找到同一用户的密文,然后根据加 密后的检索关键字利用量子同态特征来检索查找到的密文,即:
[0045] 最后,检索查找到的密文中是否包含有检索关键字Key」的密文P。」,若检索到包含 检索关键字的关键字Ken的密文P。」,则将检索到的密文作为检索结果并返回所述检索结 果;即:
[0046] _
则表示检索到包含关键字Key」的密文4,并将 密文心返回。
[0047] 进一步地,在所述密文解密单元中,以表示所述检索结果,if」表示所述解密结 果,记K、与Cj的维数均为n,则:
[0048 *·'*0·.; "-^*'*1.7 ^ ·_? - - n_ij 7
[0049] 其中
其中0e [0,2j0,矩 阵Y中的i表示复数中的虚数单位;M' i,j表示消息,j的第i个分量。
[0050] 本发明与现有技术相比,有益效果在于:本发明利用私钥和关键词对明文信息进 行加密,将加密生成的密文存储在云服务器中,进一步地,利用量子同态加密算法的特性, 数据使用者可以检索包含关键字Key的-密文,由于云服务器只拥有-密文4及加密的关键 字λ_:f_],在没有私钥的情况下将不会泄露任何有关明文的信息,其中〇< j <m;而 Song等采用的方法则首先利用伪随机序列和检查序列技术来生成流密码T,再将T与明文Μ 作异或运算生成密文C,检索时通过加密的关键词W与密文C异或运算的结果来判断是否存 在包含指定关键词的密文。由于采用对称的一次一密量子同态加密算法,所提的量子同态 可搜索加密算法效率要高于Song等提出的方案,并且量子信息的不可克隆性能够保证方案 的绝对安全。
【附图说明】
[0051] 图1是本发明实施例提供的一种量子同态对称可搜索加密的方法的流程图。
[0052] 图2是本发明实施例提供的一种量子同态对称可搜索加密的系统的结构示意图。
[0053] 图3是本发明实施例提供的一种量子同态对称可搜索加密的系统的使用示意图。
【具体实施方式】
[0054] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。
[0055] 量子同态加密算法具有对密文直接进行运算而不需要解密的优点,并且能够保证 加密算法的绝对安全。定义
矩阵Y中的i表示复数中的虚数单位。基于量子同态加密算法,如图1所示,为本发明实施 例提供的一种高效的量子同态对称可搜索加密的方法,包括以下步骤:
[0056] S1,随机产生若干私钥;所述若干私钥可被数据拥有者和数据使用者共享。在本步 骤中,随机产生若干私钥,默认产生的私钥安全有效地被数据拥有者和数据使用者所共享。
[0057] S2,数据拥有者根据所述私钥和预设的关键词对明文数据进行加密,然后将产生 的密文存放在云服务器中;所述密文包含有数据拥有者的身份标识符。用户的身份标识符 相当于用户的唯一的身份证号一样,在用户被生成的时候便被赋予了一个唯一的与用户相 对应的身份标识符,在本步骤中,数据拥有者利用私钥和预设的关键词对明文数据进行后 加密,关键词对应相关的数据,将加密后生成的密文存放至云服务器中,数据使用者在后续 的使用中可以直接访问云服务器而获得密文。因为在实际应用中,明文数据往往包含很多 内容,为了方便数据使用者后续检索使用,数据拥有者在进行加密的时候,一般会按照常用 的关键词或者根据实际需要使用相关的关键词对明文数据进行加密,一个关键词可以对应 一段对应的明文数据或者数段明文数据,或者多个关键词对应一段或多段明文数据。数据 拥有者可以根据实际情况设置关键词及对应的明文数据。
[0058] S3,数据拥有者在待整理的密文中,确定出所述身份标识符对应的密文,然后通过 化简操作将拥有相同身份标识符的密文整理在一起,根据整理结果得到索引表。在本步骤 中,执行映射操作(Map操作)列举出所述身份标识符对应的密文,然后通过化简操作 (Reduce操作)将拥有相同身份标识符的密文整理在一起,根据整理结果得到索引表。
[0059] 在上述步骤中,数据拥有者利用私钥和关键词将明文数据进行加密后,将生成的 密文存储在云服务器中,同时生成索引表。利用量子同态加密算法的特征,数据使用者在后 续使用中可以通过索引表,方便快捷的检索包含关键词的密文。
[0060] 为进一步的保证在云服务器中对密文检索的安全性,以所述关键词为检索关键 字,所述方法还包括:
[0061] S4,数据使用者根据所述私钥的相反偏移量对所述检索关键字加密,然后根据加 密后的检索关键字和所述身份标识符在所述索引表中查找到同一用户的密文,将查找到的 密文作为检索结果并返回。在本步骤中,数据使用者利用所述私钥的相反偏移量对检索关 键字进行加密,将检索关键字加密后进行密文检索,以保证信息的安全性。
[0062] S5,数据使用者根据所述私钥对所述检索结果进行解密,得到解密结果。
[0063]具体的,在步骤S1中,以I表示所述私钥,则随机产生的所述私钥^e0lu,{〇彡 <231,〇纪<1!,〇幻<111};其中,11代表所述私钥1的维数, 111表示私钥1^的个数,01,谦示所述 私钥Kj的第i个分量。
[0064] 在步骤S2中爲表示所述关键词,记的维数均为n,pcj表示所述密文,则:
[0065] ^ ^ ' *-·./ ,
^yj. ,y- - " -j.'
[0066] 其中
,矩阵Y中 的i表示复数中的虚数单位;M1U表示所述关键词W的第i个分量,01U表示所述私钥&的第i 个分量。
[0067]在步骤S3中,给定待整理的密文,执行映射(Map)操作列举出身份标识符ID对应的 密文PID,然后在通过化简(Reduce)操作将拥有相同身份标识符ID的密文PID整理在一起,根 据整理结果构建索引表index。
[0068]具体的,步骤S4包括:
[0069] S41,生成所述私钥的相反偏移量f」,根据所述私钥的相反偏移量f」对所述检索 关键字Key」进行加密,记f j与Key」的维数均为η,则:
[0070]
[0071] 其中:若1^71,」=|〇〉肩历11(^口1:(-1(、,1^1,」)=1^(〇).1^(-0/;^);否则』11(^口七 (-Κ^,Κθγ?^)=Κγ(3?/2) · RyC-B^.j)
?中0£[0,231),矩阵¥中的1表示复数中的虚数单位;1^^表示1^」的第1个 V '
' } 分量;θ/ i,j表不f j的第i个分量;
[0072] S42,根据所述身份标识符在所述索引表中查找到同一用户的密文,然后根据加密 后的检索关键字利用量子同态特征来检索查找到的密文,即:
[0073]
[0074]
[0075]
[0076] S43,检索步骤S42中查找到的密文中是否包含有检索关键字Key」的密文Ρ。」,若检 索到包含检索关键字的关键字Key」的密文P。」,则将检索到的密文作为检索结果并返回所述 检索结果;即:
[0077]若<
,则表示检索到包含关键字Key」的密文/V并将密 文^返回。
[0078] 在步骤S5中,以Q表示所述检索结果,Μ、表示所述解密结果,记K、与Q的维数均 为η则:
[0079]
[0080] 其中0^[0,231),矩阵¥中的1表示复数中的虚数单位^1,请示消息心的第1个分量。
[0081] 如图2所示,本发明还提供了一种量子同态对称可搜索加密的系统,包括:
[0082] 私钥产生单元1,用于随机产生若干私钥;所述若干私钥可被数据拥有者和数据使 用者共享;
[0083] 加密存放单元2,用于数据拥有者根据所述私钥和预设的关键词对明文数据进行 加密,然后将产生的密文存放在云服务器中;所述密文包含有数据拥有者的身份标识符;
[0084] 操作整理单元3,用于数据拥有者在待整理的密文中,确定出所述身份标识符对应 的密文,然后通过化简操作将拥有相同身份标识符的密文整理在一起,根据整理结果得到 索引表;
[0085] 加密检索单元4,用于数据使用者以所述关键词为检索关键字,根据所述私钥的相 反偏移量对所述检索关键字加密,然后根据加密后的检索关键字和所述身份标识符在所述 索引表中查找到同一用户的密文,将查找到的密文作为检索结果并返回;
[0086] 密文解密单元5,用于数据使用者根据所述私钥对所述检索结果进行解密,得到解 密、结果。
[0087] 进一步地,加密存放单元2中,以Kj表示所述私钥,Mj表示所述关键词,记Kj与Mj的 维数均为η,Pq表示所述密文,则:
[0088]
[0089] 其中
,矩阵Y中 的i表示复数中的虚数单位;My表示所述关键词%的第i个分量,01U表示所述私钥&的第i 个分量。进一步地,以K、所示所述私钥的相反偏移量,以所述关键词为检索关键字,以Key」 表示所述检索关键字,以ID表示所述身份标识符,以Ρ。」表示所述密文,则;
[0090] 加密检索单元4具体用于:
[0091 ]首先,生成所述私钥的相反偏移量f」,根据所述私钥的相反偏移量f」对所述检索 关键字Key」进行加密,记f j与Key」的维数均为η,则:
[0092]
[0093] 其中:若 Keyi,j= |〇>,则 Encryptd j,Keyi,.i)=Ry(0) ·否则,Encrypt (-Κ^,Κθγ?^)=Κγ(3?/2) · RyC-B^.j)
1. 〇中0£[0,231),矩阵¥中的1表示复数中的虚数单位;1^^表示1^」的第1个 :v
./. 分量;θ/ i,j表不f j的第i个分量;
[0094] 其次,根据所述身份标识符在所述索引表中查找到同一用户的密文,然后根据加 密后的检索关键字利用量子同态特征来检索查找到的密文,即:
[0095]
L0099」最后,检索查找到的密文中是否包含有检索关键字Ken的密文P。」,若检索到包含 检索关键字的关键字Ken的密文P。」,则将检索到的密文作为检索结果并返回所述检索结 果;即:
[0100]若 則表示检索到包含关键字Key」的密文/?,并将密 文心返回。
[0101 ]进一步地,在密文解密单元5中,以Cj表示所述检索结果,j表示所述解密结果,记 f j与Cj的维数均为n,则:
[0102]
[0103] 其中0^[0,231),矩阵¥中的1表示复数中的虚数单位^1,请示消息心的第1个分量。
[0104] 如图3所示,为本发明的一具体使用例:
[0105] 数据拥有者利用私钥和关键词对明文数据进行加密,将加密生成的密文存储在云 服务器中,然后根据具备身份标识符的密文建立索引表。数据使用者根据检索关键字,利用 所述私钥的相反偏移量进行加密后对云服务器中的密文进行检索。然后数据使用者利用私 钥对检索到的密文进行解密,获得明文数据。
[0106]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种量子同态对称可搜索加密的方法,其特征在于,所述方法包括以下步骤: 步骤A,随机产生若干私钥;所述若干私钥可被数据拥有者和数据使用者共享; 步骤B,数据拥有者根据所述私钥和预设的关键词对明文数据进行加密,然后将产生的 密文存放在云服务器中;所述密文包含有数据拥有者的身份标识符; 步骤C,数据拥有者在待整理的密文中,确定出所述身份标识符对应的密文,然后通过 化简操作将拥有相同身份标识符的密文整理在一起,根据整理结果得到索引表; 步骤D,数据使用者以所述关键词为检索关键字,根据所述私钥的相反偏移量对所述检 索关键字加密,然后根据加密后的检索关键字和所述身份标识符在所述索引表中查找到同 一用户的密文,将查找到的密文作为检索结果并返回; 步骤E,数据使用者根据所述私钥对所述检索结果进行解密,得到解密结果。2. 如权利要求1所述的方法,其特征在于,所述步骤B中,以Kj表示所述私钥,表示所述 关键词,记Kj与的维数均为η,P cg表示所述密文,则:,矩阵Y中的i表 示复数中的虚数单位;表示所述关键词Mj的第i个分量,表示所述私钥Kj的第i个分 量。3. 如权利要求1所述的方法,其特征在于,以K。所示所述私钥的相反偏移量,以所述关 键词为检索关键字,以Keyj表示所述检索关键字,以ID表示所述身份标识符,以P。」表示所述 密文,则; 所述步骤D具体包括: 步骤Dl,生成所述私钥的相反偏移量f」,根据所述私钥的相反偏移量f」对所述检索关 键字Keyj进行加密,记f j与Keyj的维数均为η,则:其中:若 Keyi,j= |〇〉,则 Encrypt!;-!^ j,Keyi,j)=Ry(0) · i,j);否贝 lJ,Encrypt(_Kj,Keyi,j)=Ry(Jr/2) · Ry(_9 i,j); 其中[0,231),矩阵Y中的i表示复数中的虚数单位;Keyi, j表示Keyj的第i个分量;θ'id表 示的第i个分量; 步骤D2,根据所述身份标识符在所述索引表中查找到同一用户的密文,然后根据加密 后的检索关键字利用量子同态特征来检索查找到的密文,即:步骤D3,检索步骤D2中查找到的密文中是否包含有检索关键字Keyj的密文Pcj,若检索 到包含检索关键字的关键字Keyj的密文Ρ。」,则将检索到的密文作为检索结果并返回所述检 索结果;即:I则表示检索到包含关键字Keyj的密文匕〃并将密文心: 返回。4. 如权利要求1所述的方法,其特征在于,在步骤E中,以Cj表示所述检索结果,M'」表示 所述解密结果,记f」与C j的维数均为η,则::其中0e[〇,2Ji),矩阵Y中 的i表示复数中的虚数单位;M7 i,j表示消息,j的第i个分量。5. -种量子同态对称可搜索加密的系统,其特征在于,所述系统包括: 私钥产生单元,用于随机产生若干私钥;所述若干私钥可被数据拥有者和数据使用者 共孚; 加密存放单元,用于数据拥有者根据所述私钥和预设的关键词对明文数据进行加密, 然后将产生的密文存放在云服务器中;所述密文包含有数据拥有者的身份标识符; 操作整理单元,用于数据拥有者在待整理的密文中,确定出所述身份标识符对应的密 文,然后通过化简操作将拥有相同身份标识符的密文整理在一起,根据整理结果得到索引 表; 加密检索单元,用于数据使用者以所述关键词为检索关键字,根据所述私钥的相反偏 移量对所述检索关键字加密,然后根据加密后的检索关键字和所述身份标识符在所述索引 表中查找到同一用户的密文,将查找到的密文作为检索结果并返回; 密文解密单元,用于数据使用者根据所述私钥对所述检索结果进行解密,得到解密结 果。6. 如权利要求5所述的系统,其特征在于,所述加密存放单元中,以Kj表示所述私钥, 表示所述关键词,记Kj与的维数均为η,Ρ。」表示所述密文,则: 示复数中的虚数单位;表示所述关键词Mj的第i个分量,表示所述私钥Kj的第i个分量。7. 如权利要求5所述的系统,其特征在于,以K。所示所述私钥的相反偏移量,以所述关 键词为检索关键字,以Keyj表示所述检索关键字,以ID表示所述身份标识符,以P。」表示所述 密文,则; 所述加密检索单元具体用于: 首先,生成所述私钥的相反偏移量f」,根据所述私钥的相反偏移量f」对所述检索关键 字Keyj进行加密,记f j与Keyj的维数均为η,则:其中:若Keyi,」=10〉,则Encrypt!;-!^」,Keyi,j) =Ry(O) · i,j);否则,Encrypt(-K'j,Keyi,j)=Ry(V2) · Ry(-0,i,j);中0e [〇,2π),矩阵Y中的i表示复数中的虚数单位;Keyi, j表示Keyj的第i个分量;θ' i,j表示 f j的第i个分量; 其次,根据所述身份标识符在所述索引表中查找到同一用户的密文,然后根据加密后 的检索关键字利用量子同态特征来检索查找到的密文,即:最后,检索查找到的密文中是否包含有检索关键字Keyj的密文Pcj,若检索到包含检索 关键字的关键字Keyj的密文Ρ。」,则将检索到的密文作为检索结果并返回所述检索结果;BP:,则表示检索到包含关键字Ke5^的密文夂?并将密文 &返回。8. 如权利要求5所述的系统,其特征在于,在所述密文解密单元中,以Cj表示所述检索结 果,M ^表示所述解密结果,记与的维数均为η,则:的i表示复数中的虚数单位;M' i, j表示消息M' j的第i个分量。
【文档编号】H04L29/06GK105933281SQ201610188883
【公开日】2016年9月7日
【申请日】2016年3月29日
【发明人】张鹏, 孙小强, 刘宏伟, 喻建平
【申请人】深圳大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1