CN109165520B - 数据加密方法及其装置、数据加密检索系统 - Google Patents

数据加密方法及其装置、数据加密检索系统 Download PDF

Info

Publication number
CN109165520B
CN109165520B CN201810779496.5A CN201810779496A CN109165520B CN 109165520 B CN109165520 B CN 109165520B CN 201810779496 A CN201810779496 A CN 201810779496A CN 109165520 B CN109165520 B CN 109165520B
Authority
CN
China
Prior art keywords
dictionary
vector
keyword
index
stem
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201810779496.5A
Other languages
English (en)
Other versions
CN109165520A (zh
Inventor
陈建铭
张文豪
吴祖扬
王景行
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Graduate School Harbin Institute of Technology
Original Assignee
Shenzhen Graduate School Harbin Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Graduate School Harbin Institute of Technology filed Critical Shenzhen Graduate School Harbin Institute of Technology
Priority to CN201810779496.5A priority Critical patent/CN109165520B/zh
Publication of CN109165520A publication Critical patent/CN109165520A/zh
Application granted granted Critical
Publication of CN109165520B publication Critical patent/CN109165520B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明适用于数据加密领域,提供了一种基于语义近似关键字排序搜索技术的数据加密方法及其装置、数据加密检索系统,具有更完善的功能和更高的效率,该方法包括:初始化步骤:从数据中提取关键字集合并建立关键字原始字典,根据所述关键字原始字典建立相应的关键字词干字典与同义词字典;秘钥生成步骤:根据所述关键字词干字典与同义词字典生成相应的秘钥;索引构建步骤:根据字典与映射关系为每个文档建立索引向量,并进行聚类;数据加密步骤:对所述索引向量进行加密。

Description

数据加密方法及其装置、数据加密检索系统
技术领域
本发明属于数据加密领域,尤其涉及一种语义近似关键字排序搜索技术的数据加密方法及其装置、数据加密检索系统。
背景技术
随着云服务的普及,越来越多敏感信息被外包给云,这些存储在云上的数据需要被加密。然而,云端数据不在企业及个人用户的监管中,因此为了防止隐私信息泄露,数据在上传至云端之前需要进行加密。这就产生了一个新的问题:当数据使用者想要检索云端数据时,云服务器因为无法解密数据因此无法做出回应。
针对这个问题,许多学者提出了大量的解决方案。但在目前的很多研究中,现有的使用关键字排序搜索技术在搜索功能方面的改进相对欠佳,有较大的开拓空间。在以MRSE为基础的研究方案中,文档索引向量不同维度所代表的关键字间存在近似关系,如同一单词有不同的衍生词(单复数,时态变化等)、同义词等,而现有方案均忽略了这样的关系,导致了现有方案中的功能不完善且效率较低,而且目前尚无针对文档索引向量不同维度所代表的关键字间的关系的研究。
发明内容
本发明所要解决的技术问题为完善针对云端数据的搜索功能以及提高对数据的搜索效率,使其具有更完善的功能和更高的效率。
为解决上述技术问题,本发明是这样实现的,一种数据加密方法,包括:
初始化步骤:从数据中提取关键字集合并建立关键字原始字典,根据所述关键字原始字典建立相应的关键字词干字典与同义词字典;
秘钥生成步骤:根据所述关键字词干字典与同义词字典生成相应的秘钥;
索引构建步骤:根据字典与映射关系为每个文档建立索引向量,并进行聚类;
数据加密步骤:对所述索引向量进行加密。
优选的,所述初始化步骤具体包括:
根据所述关键字集合生成关键字原始字典D,其中,所述关键字原始字典D的长度为n;
利用词干提取算法对所述关键字集合进行处理以得到关键字的词干,从而生成所述关键字词干字典D1,同时生成所述关键字原始字典D与所述关键字词干字典D1之间的映射表Map1,其中,所述关键字词干字典D1的长度为n1
对得到关键字的词干的集合使用同义词组合处理从而生成关键字同义词字典D2,同时生成所述关键字同义词字典D2与所述关键字词干字典D1之间的映射表Map2,其中,所述关键字同义词字典D2的长度为n2
优选的,所述秘钥生成步骤具体包括:
随机生成第一秘钥SK1(L1,L2,R),其中,L1,L2是两个大小为(n+2)×(n+2)的随机可逆矩阵,R∈{0,1}(n+2)为一随机向量;
随机生成第二秘钥SK1(M1,M2,S),其中,M1,M2是两个大小为(n1+2)×(n1+2)的随机可逆矩阵,
Figure BDA0001732217990000021
为一随机向量;
随机生成第三秘钥SK1(N1,N2,T),其中,N1,N2是两个大小为(n2+2)×(n2+2)的随机可逆矩阵,
Figure BDA0001732217990000022
为一随机向量。
优选的,所述索引构建步骤具体包括:
根据所述关键字原始字典D分别将每个文档F中的关键字映射到长度为n的向量中,从而为每个文档F建立长度为n的原始索引向量I;
根据所述关键字原始字典D、所述关键字词干字典D1以及所述映射表Map1分别将每个文档F中的关键字映射到长度为n1的向量中,从而为每个文档F建立长度为n1的词干索引向量I1
根据所述关键字原始字典D、所述关键字词干字典D1、所述关键字同义词字典D2以及所述映射表Map1、所述映射表Map2分别将每个文档F中的关键字映射到长度为n2的向量中,从而为每个文档F建立长度为n2的同义词索引向量I2
优选的,所述索引构建步骤具体还包括:
利用预设算法分别对索引向量集合{I}、{I1}、{I2}进行聚类以得到各自聚类后的索引集合,其中,所述预设算法具体包括:
(1)将N个文档按照每个文档各自的权值总和从大到小进行排序,依次选取文档,计算每次选取的文档与已选取的的聚类中心的相关性得分,若相关性得分小于预设阈值Th,则选为初始聚类中心C,直至所述初始聚类中心C数量达到预设值k;
(2)测量剩余的每个文档F到每个质心的距离,并归到最近的质心的类;
(3)重新计算已经得到的各个类的质心;
(4)迭代(2)~(3)步直至新的质心与原质心相等或小于指定阈值TC
优选的,所述数据加密步骤包括对所述原始索引向量I、所述词干索引向量I1、所述同义词索引向量I2分别进行加密,
其中,对所述原始索引向量I加密的方法包括:
将I扩展至(n+2)维,其中第(n+1)维设置为随机值ε1,第(n+2)维设置为1;
根据以下规则将所述原始索引向量I分裂为{I′,I″}:对于向量中的每个元素ij∈I,ij′∈I′,ij″∈I″,rj∈R,如果rj=1则设置ij=i′j=i″j,否则设置
Figure BDA0001732217990000031
Figure BDA0001732217990000032
δ1为一随机数;
利用L1,L2将{I′,I″}加密为{L1 TI′,L2 TI″},输出Enc(I)={L1 TI′,L2 TI″},作为最终加密的原始索引向量I;
其中,对所述词干索引向量I1加密的方法包括:
将I1扩展至(n1+2)维,其中第(n1+1)维设置为随机值ε2,第(n1+2)维设置为1;
根据以下规则将所述词干索引向量I1分裂为{I1′,I1″}:对于向量中的每个元素i1j∈I1,i′1j∈I1′,i″1j∈I1″,sj∈S,如果sj=1则设置i1j=i′1j=i″1j,否则设置
Figure BDA0001732217990000041
Figure BDA0001732217990000042
δ2为一随机数;
利用M1,M2将{I1′,I1″}加密为{M1 TI1′,M2 TI1″},输出Enc(I1)={M1 TI1′,M2 TI1″},作为最终加密的词干索引向量I1
其中,对所述同义词索引向量I2加密的方法包括:
将I2扩展至(n2+2)维,其中第(n2+1)维设置为随机值ε3,第(n2+2)维设置为1;
根据以下规则将所述同义词索引向量I2分裂为{I2′,I2″}:对于向量中的每个元素i2j∈I2,i′2j∈I2′,i″2j∈I2″,tj∈T,如果tj=1则设置i2j=i′2j=i″2j,否则设置
Figure BDA0001732217990000043
Figure BDA0001732217990000044
δ3为一随机数;
利用N1,N2将{I2′,I2″}加密为{N1 TI2′,N2 TI2″},输出Enc(I2)={N1 TI2′,N2 TI2″},作为最终加密的同义词索引向量I2
将最终加密的原始索引向量I、最终加密的词干索引向量I1、最终加密的同义词索引向量I2这三种类型的加密索引向量及对应的密文上传至云端。
优选的,所述方法还包括:
检索阶段步骤:接收用户需要检索关键字的需求,根据不同需求为用户生成相应的陷门从而实现不同类型的匹配策略,并根据用户不同的需求,利用向量内积公式对用户提交的陷门与相应的加密索引进行匹配计算并依照相关性得分进行排序,以及返回相应的结果给用户。
本发明还提供了一种数据加密装置,所述装置包括:
初始化模块,用于从数据中提取关键字集合并建立关键字原始字典,根据所述关键字原始字典建立相应的关键字词干字典与同义词字典;
秘钥生成模块,用于根据所述关键字词干字典与同义词字典生成相应的秘钥;
索引构建模块,用于根据字典与映射关系为每个文档建立索引向量,并进行聚类;
数据加密模块,用于对所述索引向量进行加密。
优选的,所述初始化模块具体用于:
根据所述关键字集合生成关键字原始字典D,其中,所述关键字原始字典D的长度为n;
利用词干提取算法对所述关键字集合进行处理以得到关键字的词干,从而生成所述关键字词干字典D1,同时生成所述关键字原始字典D与所述关键字词干字典D1之间的映射表Map1,其中,所述关键字词干字典D1的长度为n1
对得到关键字的词干的集合使用同义词组合处理从而生成关键字同义词字典D2,同时生成所述关键字同义词字典D2与所述关键字词干字典D1之间的映射表Map2,其中,所述关键字同义词字典D2的长度为n2
优选的,所述秘钥生成模块具体用于:
随机生成第一秘钥SK1(L1,L2,R),其中,L1,L2是两个大小为(n+2)×(n+2)的随机可逆矩阵,R∈{0,1}(n+2)为一随机向量;
随机生成第二秘钥SK1(M1,M2,S),其中,M1,M2是两个大小为(n1+2)×(n1+2)的随机可逆矩阵,
Figure BDA0001732217990000051
为一随机向量;
随机生成第三秘钥SK1(N1,N2,T),其中,N1,N2是两个大小为(n2+2)×(n2+2)的随机可逆矩阵,
Figure BDA0001732217990000052
为一随机向量。
优选的,所述索引构建模块具体用于:
根据所述关键字原始字典D分别将每个文档F中的关键字映射到长度为n的向量中,从而为每个文档F建立长度为n的原始索引向量I;
根据所述关键字原始字典D、所述关键字词干字典D1以及所述映射表Map1分别将每个文档F中的关键字映射到长度为n1的向量中,从而为每个文档F建立长度为n1的词干索引向量I1
根据所述关键字原始字典D、所述关键字词干字典D1、所述关键字同义词字典D2以及所述映射表Map1、所述映射表Map2分别将每个文档F中的关键字映射到长度为n2的向量中,从而为每个文档F建立长度为n2的同义词索引向量I2
优选的,所述索引构建模块具体还用于:
利用预设算法分别对索引向量集合{I}、{I1}、{I2}进行聚类以得到各自聚类后的索引集合,其中,所述预设算法具体包括:
(1)将N个文档按照每个文档各自的权值总和从大到小进行排序,依次选取文档,计算每次选取的文档与已选取的的聚类中心的相关性得分,若相关性得分小于预设阈值Th,则选为初始聚类中心C,直至所述初始聚类中心C数量达到预设值k;
(2)测量剩余的每个文档F到每个质心的距离,并归到最近的质心的类;
(3)重新计算已经得到的各个类的质心;
(4)迭代(2)~(3)步直至新的质心与原质心相等或小于指定阈值TC
优选的,所述数据加密模块用于对所述原始索引向量I、所述词干索引向量I1、所述同义词索引向量I2分别进行加密,
其中,对所述原始索引向量I加密的方法包括:
将I扩展至(n+2)维,其中第(n+1)维设置为随机值ε1,第(n+2)维设置为1;
根据以下规则将所述原始索引向量I分裂为{I′,I″}:对于向量中的每个元素ij∈I,i′j∈I′,i″j∈I″,rj∈R,如果rj=1则设置ij=i′j=i″j,否则设置
Figure BDA0001732217990000061
δ1为一随机数;
利用L1,L2将{I′,I″}加密为{L1 TI′,L2 TI″},输出Enc(I)={L1 TI′,L2 TI″},作为最终加密的原始索引向量I;
其中,对所述词干索引向量I1加密的方法包括:
将I1扩展至(n1+2)维,其中第(n1+1)维设置为随机值ε2,第(n1+2)维设置为1;
根据以下规则将所述词干索引向量I1分裂为{I1′,I1″}:对于向量中的每个元素i1j∈I1,i′1j∈I1′,i″1j∈I1″,sj∈S,如果sj=1则设置i1j=i′1j=i″1j,否则设置
Figure BDA0001732217990000071
Figure BDA0001732217990000072
δ2为一随机数;
利用M1,M2将{I1′,I1″}加密为{M1 TI1′,M2 TI1″},输出Enc(I1)={M1 TI1′,M2 TI1″},作为最终加密的词干索引向量I1
其中,对所述同义词索引向量I2加密的方法包括:
将I2扩展至(n2+2)维,其中第(n2+1)维设置为随机值ε3,第(n2+2)维设置为1;
根据以下规则将所述同义词索引向量I2分裂为{I2′,I2″}:对于向量中的每个元素i2j∈I2,i′2j∈I2′,i″2j∈I2″,tj∈T,如果tj=1则设置i2j=i′2j=i″2j,否则设置
Figure BDA0001732217990000073
Figure BDA0001732217990000074
δ3为一随机数;
利用N1,N2将{I2′,I2″}加密为{N1 TI2′,N2 TI2″},输出Enc(I2)={N1 TI2′,N2 TI2″},作为最终加密的同义词索引向量I2
将最终加密的原始索引向量I、最终加密的词干索引向量I1、最终加密的同义词索引向量I2这三种类型的加密索引向量及对应的密文上传至云端。
另外,本发明还提供了一种数据加密检索系统,所述系统包括:
如上任一项所述的数据加密装置;
用户端;
云端服务器;
其中,所述用户端将其需要检索的关键字通过安全信道提交给所述数据加密装置,所述数据加密装置根据所述用户端的语义精度需求为用户生成相应的陷门,然后由所述用户端提交给所述云服务器,所述云服务器收到所述用户端的陷门之后将会对密文进行检索并将检索的结果返回给所述用户端。
本发明与现有技术相比,有益效果在于:本发明的技术方案针对文档索引向量跨维度关键字间关系进行研究,利用关键字的词干提取、同义词组合并聚类等方式,实现关键字的语义近似匹配,同时提高检索结果文档的相关性以及检索的效率,具有更完善的功能和更高的效率。
附图说明
图1是本发明实施例提供的数据加密方法流程图;
图2是本发明实施例提供的数据加密装置结构示意图;
图3是本发明实施例提供的数据加密检索系统的应用结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,为本发明实施例提供的数据加密方法流程图。
在步骤S1中,初始化步骤:从数据中提取关键字集合并建立关键字原始字典,根据所述关键字原始字典建立相应的关键字词干字典与同义词字典。
在本实施例中,所述初始化步骤具体包括:
根据所述关键字集合生成关键字原始字典D,其中,所述关键字原始字典D的长度为n;
利用词干提取算法对所述关键字集合进行处理以得到关键字的词干,从而生成所述关键字词干字典D1,并还原为关键字基础形态,同时生成所述关键字原始字典D与所述关键字词干字典D1之间的映射表Map1,其中,所述关键字词干字典D1的长度为n1
对得到关键字的词干的集合使用同义词组合处理,例如互为同义词的关键字只保留其中一个,从而生成关键字同义词字典D2,同时生成所述关键字同义词字典D2与所述关键字词干字典D1之间的映射表Map2,其中,所述关键字同义词字典D2的长度为n2
在本实施例中,词干提取算法为Porter stemming词干提取算法,当然也可以采用其它的算法,在此不做限定。
在步骤S2中,秘钥生成步骤:根据所述关键字词干字典与同义词字典生成相应的秘钥。
在本实施例中,所述秘钥生成步骤具体包括:
随机生成第一秘钥SK1(L1,L2,R),其中,L1,L2是两个大小为(n+2)×(n+2)的随机可逆矩阵,R∈{0,1}(n+2)为一随机向量;
随机生成第二秘钥SK1(M1,M2,S),其中,M1,M2是两个大小为(n1+2)×(n1+2)的随机可逆矩阵,
Figure BDA0001732217990000092
为一随机向量;
随机生成第三秘钥SK1(N1,N2,T),其中,N1,N2是两个大小为(n2+2)×(n2+2)的随机可逆矩阵,
Figure BDA0001732217990000091
为一随机向量。
在步骤S3中,索引构建步骤:根据字典与映射关系为每个文档建立索引向量,并进行聚类。
在本实施例中,索引构建步骤分成两个阶段,第一阶段是根据字典与映射关系生成索引向量,第二阶段是利用预设算法(例如改进的k-means聚类方法)分别对索引向量集合{I}、{I1}、{I2}进行聚类以得到各自聚类后的索引集合。
在本实施例中,第一阶段的所述索引构建步骤具体包括:
根据所述关键字原始字典D分别将每个文档F中的关键字映射到长度为n的向量中,从而为每个文档F建立长度为n的原始索引向量I;
根据所述关键字原始字典D、所述关键字词干字典D1以及所述映射表Map1分别将每个文档F中的关键字映射到长度为n1的向量中,从而为每个文档F建立长度为n1的词干索引向量I1
根据所述关键字原始字典D、所述关键字词干字典D1、所述关键字同义词字典D2以及所述映射表Map1、所述映射表Map2分别将每个文档F中的关键字映射到长度为n2的向量中,从而为每个文档F建立长度为n2的同义词索引向量I2
在本实施例中,第二阶段的所述索引构建步骤具体还包括:
利用预设算法分别对索引向量集合{I}、{I1}、{I2}进行聚类以得到各自聚类后的索引集合。
其中,所述预设算法为改进的k-means聚类方法,所述预设算法具体包括:
(1)将N个文档按照每个文档各自的权值总和从大到小进行排序,依次选取文档,计算每次选取的文档与已选取的的聚类中心的相关性得分,若相关性得分小于预设阈值Th,则选为初始聚类中心C,直至所述初始聚类中心C数量达到预设值k;
(2)测量剩余的每个文档F到每个质心的距离,并归到最近的质心的类;
(3)重新计算已经得到的各个类的质心;
(4)迭代(2)~(3)步直至新的质心与原质心相等或小于指定阈值TC
在步骤S4中,数据加密步骤:对所述索引向量进行加密。
在本实施例中,所述数据加密步骤包括对所述原始索引向量I进行加密,其中,加密方法包括:
将I扩展至(n+2)维,其中第(n+1)维设置为随机值ε1,第(n+2)维设置为1;
根据以下规则将所述原始索引向量I分裂为{I′,I″}:对于向量中的每个元素ij∈I,i′j∈I′,i″j∈I″,rj∈R,如果rj=1则设置ij=i′j=i″j,否则设置
Figure BDA0001732217990000101
δ1为一随机数;
利用L1,L2将{I′,I″}加密为{L1 TI′,L2 TI″},输出Enc(I)={L1 TI′,L2 TI″},作为最终加密的原始索引向量I。
在本实施例中,所述数据加密步骤包括对所述词干索引向量I1进行加密,其中,加密方法包括:
将I1扩展至(n1+2)维,其中第(n1+1)维设置为随机值ε2,第(n1+2)维设置为1;
根据以下规则将所述词干索引向量I1分裂为{I1′,I1″}:对于向量中的每个元素i1j∈I1,i'1j∈I1′,i″1j∈I1″,sj∈S,如果sj=1则设置i1j=i'1j=i″1j,否则设置
Figure BDA0001732217990000102
Figure BDA0001732217990000103
δ2为一随机数;
利用M1,M2将{I1′,I1″}加密为{M1 TI1′,M2 TI1″},输出Enc(I1)={M1 TI1′,M2 TI1″},作为最终加密的词干索引向量I1
在本实施例中,所述数据加密步骤包括对所述同义词索引向量I2进行加密,其中,加密方法包括:
将I2扩展至(n2+2)维,其中第(n2+1)维设置为随机值ε3,第(n2+2)维设置为1;
根据以下规则将所述同义词索引向量I2分裂为{I2′,I2″}:对于向量中的每个元素i2j∈I2,i′2j∈I2′,i″2j∈I2″,tj∈T,如果tj=1则设置i2j=i′2j=i″2j哟,否则设置
Figure BDA0001732217990000111
Figure BDA0001732217990000112
δ3为一随机数;
利用N1,N2将{I2′,I2″}加密为{N1 TI2′,N2 TI2″},输出Enc(I2)={N1 TI2′,N2 TI2″},作为最终加密的同义词索引向量I2
将最终加密的原始索引向量I、最终加密的词干索引向量I1、最终加密的同义词索引向量I2这三种类型的加密索引向量及对应的密文上传至云端。
此外,所述方法还包括:
检索阶段步骤:接收用户需要检索关键字的需求,根据不同需求为用户生成相应的陷门从而实现不同类型的匹配策略,并根据用户不同的需求,利用向量内积公式对用户提交的陷门与相应的加密索引进行匹配计算并依照相关性得分进行排序,以及返回相应的结果给用户。
若用户的需求为精确匹配,则为用户生成对应于I的陷门,此时的检索阶段步骤具体包括:
1)将带查询的关键字依照所述关键字原始字典D映射到长度为n的精确查询向量Q中;
2)将Q扩展至(n+2)维,其中第(n+1)维设置为1,第(n+2)维设置为随机值t,然后前(n+1)维分别乘随机数u;
3)根据以下规则将精确查询向量Q分裂为{Q′,Q″}:对于向量中的每个元素ij∈Q,i′j∈Q′,i″j∈Q″,rj∈R,如果rj=0则设置ij=i'j=i″j,否则设置
Figure BDA0001732217990000113
δ1′为一随机数;
4)利用L1,L2将{Q′,Q″}加密为{L1 -1Q′,L2 -1Q″},输出Tw=Enc(Q)={L1 -1Q′,L2 -1Q″},作为最终加密的用于精确匹配的陷门。
若用户的需求为检索关键字的相关衍生词,则为用户生成对应于I1的陷门,此时的检索阶段步骤具体包括:
1)将带查询的关键字依照所述关键字原始字典D、所述关键字词干字典D1以及所述映射表Map1映射到长度为n1的词干查询向量Q1中;
2)将Q1扩展至(n1+2)维,其中第(n1+1)维设置为1,第(n1+2)维设置为随机值t,然后前(n1+1)维分别乘随机数u;
3)根据以下规则将词干查询向量Q1分裂为{Q1′,Q1″}:对于向量中的每个元素i1j∈Q1,i'1j∈Q1′,i″1j∈Q1″,sj∈S,如果sj=0则设置i1j=i'1j=i″1j,否则设置
Figure BDA0001732217990000121
Figure BDA0001732217990000122
δ2′为一随机数;
4)利用M1,M2将{Q1′,Q1″}加密为{M1 -1Q1′,M2 -1Q1″},输出Tw=Enc(Q1)={M1 -1Q1′,M2 - 1Q1″},作为最终加密的用于关键字衍生词匹配的陷门。
若用户的需求为检索关键字的相关同义词,则为用户生成对应于I2的陷门,此时的检索阶段步骤具体包括:
1)将带查询的关键字依照所述关键字原始字典D、所述关键字词干字典D1、所述关键字同义词字典D2以及所述映射表Map1、所述映射表Map2映射到长度为n2的同义词查询向量Q2中;
2)将Q2扩展至(n2+2)维,其中第(n2+1)维设置为1,第(n2+2)维设置为随机值t,然后前(n2+1)维分别乘随机数u;
3)根据以下规则将同义词查询向量Q2分裂为{Q2′,Q2″}:对于向量中的每个元素i2j∈Q2,i′2j∈Q2′,i″2j∈Q2″,tj∈T,如果tj=0则设置i2j=i′2j=i″2j;否则设置
Figure BDA0001732217990000123
Figure BDA0001732217990000124
δ3′为一随机数;
4)利用N1,N2将{Q2′,Q2″}加密为{N1 -1Q2′,N2 -1Q2″},输出Tw=Enc(Q2)={N1 -1Q2′,N2 - 1Q2″},作为最终加密的用于关键字同义词匹配的陷门。
此外,检索阶段步骤中的“根据用户不同的需求,利用向量内积公式对用户提交的陷门与相应的加密索引进行匹配计算并依照相关性得分进行排序,以及返回相应的结果给用户”具体包括:
(1)云服务器确认用户的搜索需求,准备利用相应的加密索引进行匹配;
(2)以精确匹配为例,计算Tw与各聚类中心的相关性得分RelevanceScore:
RelevanceScore
={L1 TI′,L2 TI″}{L1 -1Q′,L2 -1Q″}
=I′·Q′+I″·Q″
=I·Q
在得分最高的聚类簇内,再计算各文档与Tw的相关性得分RelevanceScore,根据得分结果进行排序,返回相应的结果给用户;
(3)若是衍生词匹配与同义词匹配,也以同样的方式进行匹配。
请参阅图2,为本发明实施例提供的数据加密装置结构示意图。
在本实施例中,数据加密装置10具体包括初始化模块11、秘钥生成模块12、索引构建模块13、数据加密模块14。
初始化模块11,用于从数据中提取关键字集合并建立关键字原始字典,根据所述关键字原始字典建立相应的关键字词干字典与同义词字典。
在本实施例中,所述初始化模块11具体用于:
根据所述关键字集合生成关键字原始字典D,其中,所述关键字原始字典D的长度为n;
利用词干提取算法对所述关键字集合进行处理以得到关键字的词干,从而生成所述关键字词干字典D1,同时生成所述关键字原始字典D与所述关键字词干字典D1之间的映射表Map1,其中,所述关键字词干字典D1的长度为n1
对得到关键字的词干的集合使用同义词组合处理从而生成关键字同义词字典D2,同时生成所述关键字同义词字典D2与所述关键字词干字典D1之间的映射表Map2,其中,所述关键字同义词字典D2的长度为n2
秘钥生成模块12,用于根据所述关键字词干字典与同义词字典生成相应的秘钥。
在本实施例中,所述秘钥生成模块12具体用于:
随机生成第一秘钥SK1(L1,L2,R),其中,L1,L2是两个大小为(n+2)×(n+2)的随机可逆矩阵,R∈{0,1}(n+2)为一随机向量;
随机生成第二秘钥SK1(M1,M2,S),其中,M1,M2是两个大小为(n1+2)×(n1+2)的随机可逆矩阵,
Figure BDA0001732217990000141
为一随机向量;
随机生成第三秘钥SK1(N1,N2,T),其中,N1,N2是两个大小为(n2+2)×(n2+2)的随机可逆矩阵,
Figure BDA0001732217990000142
为一随机向量。
索引构建模块13,用于根据字典与映射关系为每个文档建立索引向量,并进行聚类。
在本实施例中,所述索引构建模块13具体用于:
根据所述关键字原始字典D分别将每个文档F中的关键字映射到长度为n的向量中,从而为每个文档F建立长度为n的原始索引向量I;
根据所述关键字原始字典D、所述关键字词干字典D1以及所述映射表Map1分别将每个文档F中的关键字映射到长度为n1的向量中,从而为每个文档F建立长度为n1的词干索引向量I1
根据所述关键字原始字典D、所述关键字词干字典D1、所述关键字同义词字典D2以及所述映射表Map1、所述映射表Map2分别将每个文档F中的关键字映射到长度为n2的向量中,从而为每个文档F建立长度为n2的同义词索引向量I2
在本实施例中,所述索引构建模块13具体还用于:
利用预设算法分别对索引向量集合{I}、{I1}、{I2}进行聚类以得到各自聚类后的索引集合。
其中,所述预设算法为改进的k-means聚类方法,所述预设算法具体包括:
(1)将N个文档按照每个文档各自的权值总和从大到小进行排序,依次选取文档,计算每次选取的文档与已选取的的聚类中心的相关性得分,若相关性得分小于预设阈值Th,则选为初始聚类中心C,直至所述初始聚类中心C数量达到预设值k;
(2)测量剩余的每个文档F到每个质心的距离,并归到最近的质心的类;
(3)重新计算已经得到的各个类的质心;
(4)迭代(2)~(3)步直至新的质心与原质心相等或小于指定阈值TC
数据加密模块14,用于对所述索引向量进行加密。
在本实施例中,所述数据加密模块14用于对所述原始索引向量I进行加密,其中,加密方法包括:
将I扩展至(n+2)维,其中第(n+1)维设置为随机值ε1,第(n+2)维设置为1;
根据以下规则将所述原始索引向量I分裂为{I′,I″}:对于向量中的每个元素ij∈I,i′j∈I′,i″j∈I″,rj∈R,如果rj=1则设置ij=i′j=i″j,否则设置
Figure BDA0001732217990000151
δ1为一随机数;
利用L1,L2将{I′,I″}加密为{L1 TI′,L2 TI″},输出Enc(I)={L1 TI′,L2 TI″},作为最终加密的原始索引向量I。
在本实施例中,所述数据加密模块14还用于对所述词干索引向量I1进行加密,其中,加密方法包括:
将I1扩展至(n1+2)维,其中第(n1+1)维设置为随机值ε2,第(n1+2)维设置为1;
根据以下规则将所述词干索引向量I1分裂为{I1′,I1″}:对于向量中的每个元素i1j∈I1,i′1j∈I1′,i″1j∈I1″,sj∈S,如果sj=1则设置i1j=i′1j=i″1j,否则设置
Figure BDA0001732217990000152
Figure BDA0001732217990000153
δ2为一随机数;
利用M1,M2将{I1′,I1″}加密为{M1 TI1′,M2 TI1″},输出Enc(I1)={M1 TI1′,M2 TI1″},作为最终加密的词干索引向量I1
在本实施例中,所述数据加密模块14还用于对所述同义词索引向量I2进行加密,其中,加密方法包括:
将I2扩展至(n2+2)维,其中第(n2+1)维设置为随机值ε3,第(n2+2)维设置为1;
根据以下规则将所述同义词索引向量I2分裂为{I2′,I2″}:对于向量中的每个元素i2j∈I2,i′2j∈I2′,i″2j∈I2″,tj∈T,如果tj=1则设置i2j=i′2j=i″2j,否则设置
Figure BDA0001732217990000161
Figure BDA0001732217990000162
δ3为一随机数;
利用N1,N2将{I2′,I2″}加密为{N1 TI2′,N2 TI2″},输出Enc(I2)={N1 TI2′,N2 TI2″},作为最终加密的同义词索引向量I2
将最终加密的原始索引向量I、最终加密的词干索引向量I1、最终加密的同义词索引向量I2这三种类型的加密索引向量及对应的密文上传至云端。
此外,本发明还提供一种数据加密检索系统,所述系统包括:
如上任一项所述的数据加密装置;
用户端;
云端服务器;
其中,所述用户端将其需要检索的关键字通过安全信道提交给所述数据加密装置,所述数据加密装置根据所述用户端的语义精度需求为用户生成相应的陷门,然后由所述用户端提交给所述云服务器,所述云服务器收到所述用户端的陷门之后将会对密文进行检索并将检索的结果返回给所述用户端。
请参阅图3,为本发明实施例提供的数据加密检索系统的应用结构示意图。
本发明基于图3的架构进行拓展研究:首先,数据拥有者(即相当于数据加密检索系统中的数据加密装置)建立三种类型的字典,并为三种类型的字典建立映射关系,并以此为文档建立三种类型的索引结构,再对针对三种索引结构分别对文档进行聚类。然后,数据拥有者(即相当于数据加密检索系统中的数据加密装置)对索引和文档进行加密并上传至云端(即相当于数据加密检索系统中的云端服务器)。当用户(即相当于数据加密检索系统中的用户端)想要检索云端(即相当于数据加密检索系统中的云端服务器)文档时,先通过安全信道向数据拥有者(即相当于数据加密检索系统中的数据加密装置)提交待检索关键字,数据拥有者(即相当于数据加密检索系统中的数据加密装置)用与生成加密索引同样的方式为用户生成一个陷门返回给用户(即相当于数据加密检索系统中的用户端)。用户(即相当于数据加密检索系统中的用户端)将陷门通过公开信道发送到云服务器,云服务器(即相当于数据加密检索系统中的云端服务器)收到陷门之后,会对密文进行检索并将结果返回给用户(即相当于数据加密检索系统中的用户端)。
本发明提供的一种基于语义近似关键字排序搜索技术的数据加密方法及其装置、数据加密检索系统,针对文档索引向量跨维度关键字间关系进行研究,利用关键字的词干提取、同义词组合并聚类等方式,实现关键字的语义近似匹配,同时提高检索结果文档的相关性以及检索的效率,具有更完善的功能和更高的效率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (6)

1.一种数据加密方法,其特征在于,所述方法包括:
初始化步骤:从数据中提取关键字集合并建立关键字原始字典,根据所述关键字原始字典建立相应的关键字词干字典与同义词字典;
秘钥生成步骤:根据所述关键字词干字典与同义词字典生成相应的秘钥;
索引构建步骤:根据字典与映射关系为每个文档建立索引向量,并进行聚类;
数据加密步骤:对所述索引向量进行加密;且
其中,所述初始化步骤具体包括:
根据所述关键字集合生成关键字原始字典D,其中,所述关键字原始字典D的长度为n;
利用词干提取算法对所述关键字集合进行处理以得到关键字的词干,从而生成所述关键字词干字典D1,同时生成所述关键字原始字典D与所述关键字词干字典D1之间的映射表Map1,其中,所述关键字词干字典D1的长度为n1
对得到关键字的词干的集合使用同义词组合处理从而生成关键字同义词字典D2,同时生成所述关键字同义词字典D2与所述关键字词干字典D1之间的映射表Map2,其中,所述关键字同义词字典D2的长度为n2
其中,所述秘钥生成步骤具体包括:
随机生成第一秘钥SK1(L1,L2,R),其中,L1,L2是两个大小为(n+2)×(n+2)的随机可逆矩阵,R∈{0,1}(n+2)为一随机向量;
随机生成第二秘钥SK1(M1,M2,S),其中,M1,M2是两个大小为(n1+2)×(n1+2)的随机可逆矩阵,
Figure FDA0002479438180000011
为一随机向量;
随机生成第三秘钥SK1(N1,N2,T),其中,N1,N2是两个大小为(n2+2)×(n2+2)的随机可逆矩阵,
Figure FDA0002479438180000012
为一随机向量,
其中,所述索引构建步骤具体包括:
根据所述关键字原始字典D分别将每个文档F中的关键字映射到长度为n的向量中,从而为每个文档F建立长度为n的原始索引向量I,利用预设算法对索引向量集合{I}进行聚类以得到聚类后的索引集合;
根据所述关键字原始字典D、所述关键字词干字典D1以及所述映射表Map1分别将每个文档F中的关键字映射到长度为n1的向量中,从而为每个文档F建立长度为n1的词干索引向量I1,利用预设算法对索引向量集合{I1}进行聚类以得到聚类后的索引集合;
根据所述关键字原始字典D、所述关键字词干字典D1、所述关键字同义词字典D2以及所述映射表Map1、所述映射表Map2分别将每个文档F中的关键字映射到长度为n2的向量中,从而为每个文档F建立长度为n2的同义词索引向量I2
利用预设算法对索引向量集合{I2}进行聚类以得到聚类后的索引集合,
其中,所述预设算法具体包括:
(1)将N个文档按照每个文档各自的权值总和从大到小进行排序,依次选取文档,计算每次选取的文档与已选取的的聚类中心的相关性得分,若相关性得分小于预设阈值Th,则选为初始聚类中心C,直至所述初始聚类中心C数量达到预设值k;
(2)测量剩余的每个文档F到每个质心的距离,并归到最近的质心的类;
(3)重新计算已经得到的各个类的质心;
(4)迭代(2)~(3)步直至新的质心与原质心相等或小于指定阈值TC
2.如权利要求1所述的数据加密方法,其特征在于,所述数据加密步骤包括对所述原始索引向量I、所述词干索引向量I1、所述同义词索引向量I2分别进行加密,
其中,对所述原始索引向量I加密的方法包括:
将I扩展至(n+2)维,其中第(n+1)维设置为随机值ε1,第(n+2)维设置为1;
根据以下规则将所述原始索引向量I分裂为{I’,I”}:对于向量中的每个元素ij∈I,i’j∈I’,i”j∈I”,rj∈R,如果rj=1则设置ij=i’j=i”j,否则设置
Figure FDA0002479438180000021
δ1为一随机数;
利用L1,L2将{I’,I”}加密为{L1 TI’,L2 TI”},输出Enc(I)={L1 TI’,L2 TI”},作为最终加密的原始索引向量I;
其中,对所述词干索引向量I1加密的方法包括:
将11扩展至(n1+2)维,其中第(n1+1)维设置为随机值ε2,第(n1+2)维设置为1;
根据以下规则将所述词干索引向量I1分裂为{I1′,I1″}:对于向量中的每个元素i1j∈I1,i′1j∈I1′,i″1j∈I1″,sj∈S,如果sj=1则设置i1j=i′1j=i″1j,否则设置
Figure FDA0002479438180000031
Figure FDA0002479438180000032
δ2为一随机数;
利用M1,M2将{I1′,I1″}加密为{M1 TI1′,M2 TI1″},输出Enc(I1)={M1 TI1′,M2 TI1″},作为最终加密的词干索引向量I1
其中,对所述同义词索引向量I2加密的方法包括:
将I2扩展至(n2+2)维,其中第(n2+1)维设置为随机值ε3,第(n2+2)维设置为1;
根据以下规则将所述同义词索引向量I2分裂为{I2′,I2″}:对于向量中的每个元素i2j∈12,i′2j∈I2′,i″2j∈I2″,tj∈T,如果tj=1则设置i2j=i′2j=i″2j,否则设置
Figure FDA0002479438180000033
Figure FDA0002479438180000034
δ3为一随机数;
利用N1,N2将{I2′,I2″}加密为{N1 TI2′,N2 TI2″},输出Enc(I2)={N1 TI2′,N2 TI2″},作为最终加密的同义词索引向量I2
将最终加密的原始索引向量I、最终加密的词干索引向量I1、最终加密的同义词索引向量I2这三种类型的加密索引向量及对应的密文上传至云端。
3.如权利要求2所述的数据加密方法,其特征在于,所述方法还包括:
检索阶段步骤:接收用户需要检索关键字的需求,根据不同需求为用户生成相应的陷门从而实现不同类型的匹配策略,并根据用户不同的需求,利用向量内积公式对用户提交的陷门与相应的加密索引进行匹配计算并依照相关性得分进行排序,以及返回相应的结果给用户。
4.一种数据加密装置,其特征在于,所述装置包括:
初始化模块,用于从数据中提取关键字集合并建立关键字原始字典,根据所述关键字原始字典建立相应的关键字词干字典与同义词字典;
秘钥生成模块,用于根据所述关键字词干字典与同义词字典生成相应的秘钥;
索引构建模块,用于根据字典与映射关系为每个文档建立索引向量,并进行聚类;
数据加密模块,用于对所述索引向量进行加密;且其中,所述初始化模块具体用于:
根据所述关键字集合生成关键字原始字典D,其中,所述关键字原始字典D的长度为n;
利用词干提取算法对所述关键字集合进行处理以得到关键字的词干,从而生成所述关键字词干字典D1,同时生成所述关键字原始字典D与所述关键字词干字典D1之间的映射表Map1,其中,所述关键字词干字典D1的长度为n1
对得到关键字的词干的集合使用同义词组合处理从而生成关键字同义词字典D2,同时生成所述关键字同义词字典D2与所述关键字词干字典D1之间的映射表Map2,其中,所述关键字同义词字典D2的长度为n2
其中,所述秘钥生成模块具体用于:
随机生成第一秘钥SK1(L1,L2,R),其中,L1,L2是两个大小为(n+2)×(n+2)的随机可逆矩阵,R∈{0,1}(n+2)为一随机向量;
随机生成第二秘钥SK1(M1,M2,S),其中,M1,M2是两个大小为(n1+2)×(n1+2)的随机可逆矩阵,
Figure FDA0002479438180000041
为一随机向量;
随机生成第三秘钥SK1(N1,N2,T),其中,N1,N2是两个大小为(n2+2)×(n2+2)的随机可逆矩阵,
Figure FDA0002479438180000042
为一随机向量,
其中,所述索引构建模块具体用于:
根据所述关键字原始字典D分别将每个文档F中的关键字映射到长度为n的向量中,从而为每个文档F建立长度为n的原始索引向量I;
根据所述关键字原始字典D、所述关键字词干字典D1以及所述映射表Map1分别将每个文档F中的关键字映射到长度为n1的向量中,从而为每个文档F建立长度为n1的词干索引向量I1
根据所述关键字原始字典D、所述关键字词干字典D1、所述关键字同义词字典D2以及所述映射表Map1、所述映射表Map2分别将每个文档F中的关键字映射到长度为n2的向量中,从而为每个文档F建立长度为n2的同义词索引向量I2
利用预设算法分别对索引向量集合{I}、{I1}、{I2}进行聚类以得到各自聚类后的索引集合,其中,所述预设算法具体包括:
(1)将N个文档按照每个文档各自的权值总和从大到小进行排序,依次选取文档,计算每次选取的文档与已选取的的聚类中心的相关性得分,若相关性得分小于预设阈值Th,则选为初始聚类中心C,直至所述初始聚类中心C数量达到预设值k;
(2)测量剩余的每个文档F到每个质心的距离,并归到最近的质心的类;
(3)重新计算已经得到的各个类的质心;
(4)迭代(2)~(3)步直至新的质心与原质心相等或小于指定阈值TC
5.如权利要求4所述的数据加密装置,其特征在于,所述数据加密模块用于对所述原始索引向量I、所述词干索引向量I1、所述同义词索引向量I2分别进行加密,
其中,对所述原始索引向量I加密的方法包括:
将I扩展至(n+2)维,其中第(n+1)维设置为随机值ε1,第(n+2)维设置为1;
根据以下规则将所述原始索引向量I分裂为{I′,I″}:对于向量中的每个元素ij∈I,i′j∈I′,i″j∈I″,rj∈R,如果rj=1则设置ij=i′j=i″j,否则设置
Figure FDA0002479438180000051
δ1为一随机数;
利用L1,L2将{I′,I″}加密为{L1 TI′,L2 TI″},输出Enc(I)={L1 TI′,L2 TI″},作为最终加密的原始索引向量I;
其中,对所述词干索引向量I1加密的方法包括:
将I1扩展至(n1+2)维,其中第(n1+1)维设置为随机值ε2,第(n1+2)维设置为1;
根据以下规则将所述词干索引向量I1分裂为{I1′,I1″}:对于向量中的每个元素i1j∈I1,i′1j∈I1′,i″1j∈11″,sj∈S,如果sj=1则设置i1j=i′1j=i″1j,否则设置
Figure FDA0002479438180000061
Figure FDA0002479438180000062
δ2为一随机数;
利用M1,M2将{I1′,I1″}加密为{M1 TI1′,M2 TI1″},输出Enc(I1)={M1 TI1′,M2 TI1″},作为最终加密的词干索引向量I1
其中,所述同义词索引向量I2加密的方法包括:
将I2扩展至(n2+2)维,其中第(n2+1)维设置为随机值ε3,第(n2+2)维设置为1;
根据以下规则将所述同义词索引向量I2分裂为{I2′,I2″}:对于向量中的每个元素i2j∈I2,i′2j∈I2′,i″2j∈I2″,tj∈T,如果tj=1则设置i2j=i′2j=i″2j,否则设置
Figure FDA0002479438180000063
Figure FDA0002479438180000064
63为一随机数;
利用N1,N2将{I2′,I2″}加密为{N1 TI2′,N2 TI2″},输出Enc(I2)={N1 TI2′,N2 TI2″},作为最终加密的同义词索引向量I2
将最终加密的原始索引向量I、最终加密的词干索引向量I1、最终加密的同义词索引向量I2这三种类型的加密索引向量及对应的密文上传至云端。
6.一种数据加密检索系统,其特征在于,所述系统包括:
如权利要求4或5所述的数据加密装置;
用户端;
云端服务器;
其中,所述用户端将其需要检索的关键字通过安全信道提交给所述数据加密装置,所述数据加密装置根据所述用户端的语义精度需求为用户生成相应的陷门,然后由所述用户端提交给所述云端服务器,所述云端服务器收到所述用户端的陷门之后将会对密文进行检索并将检索的结果返回给所述用户端。
CN201810779496.5A 2018-07-16 2018-07-16 数据加密方法及其装置、数据加密检索系统 Expired - Fee Related CN109165520B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810779496.5A CN109165520B (zh) 2018-07-16 2018-07-16 数据加密方法及其装置、数据加密检索系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810779496.5A CN109165520B (zh) 2018-07-16 2018-07-16 数据加密方法及其装置、数据加密检索系统

Publications (2)

Publication Number Publication Date
CN109165520A CN109165520A (zh) 2019-01-08
CN109165520B true CN109165520B (zh) 2020-08-11

Family

ID=64897834

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810779496.5A Expired - Fee Related CN109165520B (zh) 2018-07-16 2018-07-16 数据加密方法及其装置、数据加密检索系统

Country Status (1)

Country Link
CN (1) CN109165520B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256753B (zh) * 2020-10-13 2021-05-18 山东三木众合信息科技股份有限公司 一种数据的加密安全传输方法
CN113033915B (zh) * 2021-04-16 2021-12-31 哈尔滨理工大学 一种拼车用户端与司机端最短距离的比较方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615692A (zh) * 2015-01-23 2015-05-13 重庆邮电大学 一种支持动态更新及多关键字安全排序的可搜索加密方法
CN105681280A (zh) * 2015-12-29 2016-06-15 西安电子科技大学 一种云环境中基于中文的可搜索加密方法
CN106951411A (zh) * 2017-03-24 2017-07-14 福州大学 一种云计算中保护数据隐私的快速多关键词语义排序搜索方法
CN108111587A (zh) * 2017-12-15 2018-06-01 中山大学 一种基于时间释放的云存储搜索方法
CN108171071A (zh) * 2017-12-01 2018-06-15 南京邮电大学 一种面向云计算的多关键字可排序密文检索方法
CN108228849A (zh) * 2018-01-10 2018-06-29 浙江理工大学 云网络中基于类别分组索引的密文排序搜索方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615692A (zh) * 2015-01-23 2015-05-13 重庆邮电大学 一种支持动态更新及多关键字安全排序的可搜索加密方法
CN105681280A (zh) * 2015-12-29 2016-06-15 西安电子科技大学 一种云环境中基于中文的可搜索加密方法
CN106951411A (zh) * 2017-03-24 2017-07-14 福州大学 一种云计算中保护数据隐私的快速多关键词语义排序搜索方法
CN108171071A (zh) * 2017-12-01 2018-06-15 南京邮电大学 一种面向云计算的多关键字可排序密文检索方法
CN108111587A (zh) * 2017-12-15 2018-06-01 中山大学 一种基于时间释放的云存储搜索方法
CN108228849A (zh) * 2018-01-10 2018-06-29 浙江理工大学 云网络中基于类别分组索引的密文排序搜索方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于关键字特征的加密云数据检索技术研究;吴新乐;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180331;第2-5章 *
基于用户需求的加密云数据检索方法研究;束建钢;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160131;全文 *

Also Published As

Publication number Publication date
CN109165520A (zh) 2019-01-08

Similar Documents

Publication Publication Date Title
CN109255244B (zh) 数据加密方法及其装置、数据加密检索系统
CN108712366B (zh) 云环境中支持词形词义模糊检索的可搜索加密方法及系统
US11048966B2 (en) Method and device for comparing similarities of high dimensional features of images
CN106997384B (zh) 一种排序可验证的语义模糊可搜索加密方法
CN107220343B (zh) 基于局部敏感哈希的中文多关键词模糊排序密文搜索方法
CN103927340B (zh) 一种密文检索方法
CN109992978B (zh) 信息的传输方法、装置及存储介质
CN108021658B (zh) 一种基于鲸鱼优化算法的大数据智能搜索方法及系统
Fu et al. Privacy-preserving smart similarity search based on simhash over encrypted data in cloud computing
US10467307B1 (en) Grouping of item data using seed expansion
CN112257455B (zh) 一种语义理解的密文空间关键字检索方法及系统
JP6722615B2 (ja) クエリクラスタリング装置、方法、及びプログラム
CN109165520B (zh) 数据加密方法及其装置、数据加密检索系统
CN109902143B (zh) 一种基于密文的多关键字扩展检索方法
CN115757676A (zh) 模糊可搜索加密方法、装置及电子设备
CN111859421A (zh) 一种基于词向量的多关键字密文存储、检索方法及系统
Li et al. Multi-keyword fuzzy search over encrypted cloud storage data
Mittal et al. Privacy preserving synonym based fuzzy multi-keyword ranked search over encrypted cloud data
Raghavendra et al. IGSK: index generation on split keyword for search over cloud data
JP6446987B2 (ja) 映像選択装置、映像選択方法、映像選択プログラム、特徴量生成装置、特徴量生成方法及び特徴量生成プログラム
TW201421267A (zh) 搜索系統及方法
CN108810640B (zh) 一种电视节目的推荐方法
Zhao et al. Privacy-preserving personalized search over encrypted cloud data supporting multi-keyword ranking
CN115795504A (zh) 一种支持中文词义模糊检索的可搜索方法及系统
CN111966778B (zh) 一种基于关键词分组倒排索引的多关键词密文排序检索方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200811

Termination date: 20210716