CN111404679B - 一种面向大数据的安全认证的密文检索方法 - Google Patents
一种面向大数据的安全认证的密文检索方法 Download PDFInfo
- Publication number
- CN111404679B CN111404679B CN202010162939.3A CN202010162939A CN111404679B CN 111404679 B CN111404679 B CN 111404679B CN 202010162939 A CN202010162939 A CN 202010162939A CN 111404679 B CN111404679 B CN 111404679B
- Authority
- CN
- China
- Prior art keywords
- data
- ciphertext
- user
- key
- cloud platform
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及数据安全技术领域,具体涉及一种面向大数据的安全认证的密文检索方法,首先密钥生成中心生成密钥并发送给云计算提供者、云平台、数据拥有者以及数据使用者;之后数据拥有者生成字典和索引并生成用户授权证书以及密文数据包并发送出去;然后数据使用者使用自己同态加密弱密钥的公钥加密搜索的关键字生成陷门并和需要返回的文件个数k一起发送给云平台;之后云平台和云计算提供者交互式协作计算密文相关性分数,最后数据使用者根据获得的用户授权证书解密得到密文文件。本发明设计一个用户授权证书来实现对用户密钥的管理,同时使用同态加密不仅确保检索结果为密文形式,而且确保相关分数排序前k个密文文档返回并解密。
Description
技术领域
本发明涉及数据安全技术领域,尤其涉及一种面向大数据的安全认证的密文检索方法。
背景技术
“大数据”是在经济社会发展产生大量数据基础上形成的一个概念。大数据技术以其容量大、读写快、应用范围广泛等优势飞速发展,成为当下最重要的数据集合技术及信息服务和管理技术。大数据技术能够帮助科技与产业实现交叉融合,帮助人类开发新的知识、创立新的产业、提升传统领域的价值和能力。因此,大数据正逐渐成为当今社会产业革命、群体跃进的重要标志和实现工具。但是,如何确保整个检索过程的安全性是一个阻碍大数据进一步发展的重大问题。
加密是保护隐私的一个有效方式,然而现有的基于明文的检索技术无法应用于密文。于是,可搜索加密作为一种密文检索方式被应用于大数据的检索过程中,可搜索加密通过一种构造的密文匹配方案,在确保查询关键字和文档关键字是密文的情况下有效计算出两者的相关性分数,作为返回文档的衡量标准。
进一步提出了多关键字的排序可搜索加密方案,不仅支持多关键字的查询,还可以对相关性分数进行排序,从而返回最符合用户需求的k个文档,从而解决了带宽资源的浪费问题。
然而现有的密文检索方案,包括可搜索加密方案,都无法解决用户密钥的泄露问题。数据使用者在接收到自己的密钥后可能会泄露给他人,从而对整个系统带来严重的安全隐患。此外,相关性分数作为检索结果是作为明文信息存在的。对此,一些人发现通过统计攻击的方式可以利用相关性分数得到一些用户的兴趣趋向,这泄露了用户的隐私。因此如何设计一个管理密钥和加密检索结果的密文检索方案是一个迫切的问题。
发明内容
为了解决以上技术问题,本发明提供了一种面向大数据的安全认证的密文检索方法。
本发明所解决的技术问题可以采用以下技术方案实现:
一种面向大数据的安全认证的密文检索方法,包括:
步骤S1,一密匙生成中心根据用户身份信息生成用于检索过程使用的同态加密密钥,并将所述同态加密密钥发送给数据拥有者、多个数据使用者、云计算提供者以及云平台;
步骤S2,所述数据拥有者根据每个文档的内容进行关键字提取,并将提取的所述关键字去重得到一字典,同时使用向量空间模型根据所述字典为每个所述文档生成一索引向量;
步骤S3,所述数据拥有者根据一授权用户在每一时间段内访问的数据生成一用户授权证书,并将所述用户授权证书发送到所述云平台、所述云计算提供者以及多个所述数据使用者;
步骤S4,所述数据拥有者使用一对称加密算法加密每个所述文档并进行文档标识同时使用所述同态加密密钥生成一密文索引,然后将加密的每个所述文档和所述密文索引打包形成一密文数据包发送到所述云平台;
步骤S5,所述数据使用者使用所述同态加密密钥加密需要搜索的关键字生成一陷门,并将所述陷门和需要返回的预定数量个文档发送到所述云平台;
步骤S6,所述云平台和所述云计算提供者交互式协作,并根据所述密文索引和所述陷门,分别使用所述同态加密密匙计算出所述预定数量个文档和所述需要搜索的关键字的密文相关性分数;
步骤S7,所述云平台将所述密文数据包中的文档标识和所述密文相关性分数关联发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密所述密文相关性分数得到一明文分数,然后数据使用者将排序前所述预定数量个文档的文档标识发送到所述云平台;
步骤S8,所述云平台将文档标识的前所述预定数量个文档发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密文档标识的前所述预定数量个文档。
优选的,所述步骤S1中,所述密钥生成中心根据所述用户身份信息生成同态加密弱密钥对pki和ski发送到所述数据拥有者和所述数据使用者,以及生成主密钥并将λ分成λ1和λ2作为同态加密强密钥分别发送给云平台和云计算提供者;
其中,ski=H(IDi),pki和ski为使用的同态加密弱密钥的公钥,IDi为用户的身份信息,H(*)为常用的哈希函数,λ1+λ2=0modλ,λ1+λ2=1mod N2。
优选的,所述步骤S2中,数据拥有者使用所述向量空间模型并结合每个所述文档fi的所述关键字和所述字典D为每个所述文档fi生成所述索引向量Ii,所述索引向量的长度和字典的长度相同;索引向量每一位置的内容为是否包含所述字典中对应位置的所述关键字,若所述位置包含对应位置的所述关键字,则所述索引向量中所述位置的内容为1,否则为0;其中所述字典D的长度为n,Ii=(Iil,Ii2,...,Iin),Iij∈{0,1},j=1,2,...,n。
优选的,所述步骤S3包括:
步骤S31,所述数据使用者向所述数据拥有者申请某一时间段AT内的用户授权证书;
步骤S32,当所述数据使用者同意授权所述数据使用者在所述某一时间段AT内访问数据,则为所述数据使用者生成一个用户授权证书UAC;
步骤S33,所述数据使用者将所述用户授权证书UAC发送到所述云平台、所述云计算提供者和所述数据使用者,并通过安全通道将一skΣ单独发送给所述数据使用者;
其中,UAC=(A,B,AT,pk∑),A、B分别为数据拥有者和数据使用者的身份信息,AT为授权的时间段,sk∑=H(A,B,AT,skA)。
优选的,所述步骤S4中,所述对称加密算法为Eγ(x),其中,γ为对称加密密钥,x为加密内容;所述密文文档标识为文档fi的文档标识;所述密文索引Ii’=(Ii1’,Ii2’,...,Iin’),Iij’=[Iij]pkA,j=1,2,...,n;所述同态加密算法/>其中/>C2=grmod N2;所述密文数据包/>其中,Ci=Eγ(fi),Ci为所述密文文档,/>γ′为所述数据拥有者加密对称加密密钥。
优选的,所述步骤S5包括:
步骤S51,所述数据使用者根据自己的需求生成查询关键字向量Q;
步骤S52,所述数据使用者根据所述同态加密密钥的公钥加密所述查询关键字向量Q,生成所述陷门Q’;
步骤S53,所述数据使用者将需要返回的文件个数k和所述陷门Q’发送到所述云平台;
其中,Q=(Q1,Q2,...,Qn),Qi∈{0,1},i=1,2,...,n;Q’=(Q1’,Q2’,...,Qn’),Qi’=[Qi]pkB,i=1,2,...,n。
优选的,所述同态加密密钥的解密包括:一同态加密弱密钥的私钥解密以及一同态加密强密钥解密,所述同态加密弱密钥的私钥解密采用一预定函数L(x)用于解密,所述同态加密强密钥解密先使用同态加密强密钥λ1解密:
再使用同态加密强密钥λ2解密:
其中,L(x)=(x-1)/N,
优选的,所述步骤S6中所述云平台接收到需要返回的文件个数k和陷门Q’并根据所述密文索引Ii’和所述陷门Q’计算所述文档fi的密文相关分数
优选的,所述步骤S7包括:
步骤S71,所述云平台将所述密文数据包CDi中的密文文档标识和所述文档fi的密文相关性分数/>关联,得到一关联数据/> 并发送给所述数据使用者;
步骤S72,所述数据使用者根据所述用户授权证书中的sk∑对所述关联数据进行解密,得到一明文分数;
步骤S73,所述数据使用者根据所述明文分数进行排序并将排序前k个文档的密文文档标识发送给所述云平台。
优选的,所述步骤S8包括:
步骤S81,所述云平台将所述k个文档的密文文档标识密文数据包CDi中的密文文档Ci和所述数据拥有者加密对称加密密钥γ′发送给所述数据使用者;
步骤S82,所述数据使用者根据所述用户授权证书中的sk∑对所述数据拥有者加密对称加密密钥γ′进行解密,得到对称加密密钥γ;
步骤S83,所述数据使用者根据所述对称加密密钥γ对所述k个文档的密文文档标识密文数据包CDi中的密文文档Ci进行解密,得到解密的所述文档fi。
其有益效果在于:
本发明设计一个基于时间段的用户授权证书来实现对用户密钥的管理,同时使用同态加密不仅确保检索结果为密文形式,而且确保相关分数排序前k个密文文档返回并解密。
附图说明
图1为本发明提供的一种面向大数据的安全认证的密文检索方法的步骤图;
图2为本发明一具体实施例S3的子步骤图;
图3为本发明一具体实施例S5的子步骤图;
图4为本发明一具体实施例S7的子步骤图;
图5为本发明一具体实施例S8的子步骤图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
参照图1为一种面向大数据的安全认证的密文检索方法的步骤图,包括:
步骤S1,一密匙生成中心根据用户身份信息生成用于检索过程使用的同态加密密钥,并将同态加密密钥发送给数据拥有者、多个数据使用者、云计算提供者以及云平台;
步骤S2,数据拥有者根据每个文档的内容进行关键字提取,并将提取的关键字去重得到一字典,同时使用向量空间模型根据字典为每个文档生成一索引向量;
步骤S3,数据拥有者根据一授权用户在每一时间段内访问的数据生成一用户授权证书,并将用户授权证书发送到云平台、云计算提供者以及多个数据使用者;
步骤S4,数据拥有者使用一对称加密算法加密每个文档并进行文档标识同时使用同态加密密钥生成一密文索引,然后将加密的每个文档和密文索引打包形成一密文数据包发送到云平台;
步骤S5,数据使用者使用同态加密密钥加密需要搜索的关键字生成一陷门,并将陷门和需要返回的预定数量个文档发送到云平台;
步骤S6,云平台和云计算提供者交互式协作,并根据密文索引和陷门,分别使用同态加密密匙计算出预定数量个文档和需要搜索的关键字的密文相关性分数;
步骤S7,云平台将密文数据包中的文档标识和密文相关性分数关联发送到数据使用者,数据使用者根据用户授权证书解密密文相关性分数得到一明文分数,然后数据使用者将排序前预定数量个文档的文档标识发送到云平台;
步骤S8,云平台将文档标识的前预定数量个文档发送到数据使用者,数据使用者根据用户授权证书解密文档标识的前预定数量个文档。
具体的,一密匙生成中心根据用户身份信息生成用于检索过程使用的同态加密密钥,并将同态加密密钥发送给数据拥有者、多个数据使用者、云计算提供者以及云平台;数据拥有着根据每个文档的内容提取关键字,将生成的所有关键字去重后就是字典,并使用向量空间模型根据字典为每个文档生成索引向量,向量的长度和字典的长度相同且向量中的每一位置的内容为是否包含字典中对应位置的关键字。
在本发明较佳的实施例中,如果数据使用者授权用户在每一时间段内访问数据,则为该数据使用者生成一个用户授权证书。
在本发明较佳的实施例中,数据拥有者使用对称加密算法加密文档同时使用自己同态加密弱密钥的公钥生成密文索引,并将密文数据包发送给云平台,本专利采用常见的对称加密算法为常用的,在此不再叙述。
进一步地,步骤S1中,密钥生成中心根据用户身份信息生成同态加密弱密钥对pki和ski发送到数据拥有者和数据使用者,以及生成主密钥并将λ分成λ1和λ2作为同态加密强密钥分别发送给云平台和云计算提供者;
其中,ski=H(IDi),pki和ski为使用的同态加密弱密钥的公钥,IDi为用户的身份信息,H(*)为常用的哈希函数,λ1+λ2=0modλ,λ1+λ2=1mod N2。
进一步地,,步骤S2中,数据拥有者使用向量空间模型并结合每个文档fi的关键字和字典D为每个文档fi生成索引向量Ii,索引向量的长度和字典的长度相同;索引向量每一位置的内容为是否包含字典中对应位置的关键字,若位置包含对应位置的关键字,则索引向量中位置的内容为1,否则为0;其中字典D的长度为n,Ii=(Iil,Ii2,...,Iin),Iij∈{0,1},j=1,2,...,n。
具体的,数据拥有者根据每个文档fi的内容提取关键字,将生成的所有关键字去重后就是字典D,字典D的长度为n;数据拥有者使用向量空间模型并结合每个文档fi的关键字和字典D为每个文档fi生成索引向量Ii索引向量的长度和字典的长度相同;索引向量每一位置的内容为是否包含字典中对应位置的关键字。
参照图2为本发明一具体实施例S3的子步骤图,包括:
步骤S31,数据使用者向数据拥有者申请某一时间段AT内的用户授权证书;
步骤S32,当数据使用者同意授权数据使用者在某一时间段AT内访问数据,则为数据使用者生成一个用户授权证书UAC;
步骤S33,数据使用者将用户授权证书UAC发送到云平台、云计算提供者和数据使用者,并通过安全通道将一skΣ单独发送给数据使用者;
其中,UAC=(A,B,AT,pk∑),A、B分别为数据拥有者和数据使用者的身份信息,AT为授权的时间段,sk∑=H(A,B,AT,skA)。
进一步地,步骤S4中,对称加密算法为Eγ(x),其中,γ为对称加密密钥,x为加密内容;密文文档标识为文档fi的文档标识;密文索引Ii’=(Ii1’,Ii2’,...,Iin’),Iij’=[Iij]pkA,j=1,2,...,n;同态加密算法/>其中C2=grmod N2;密文数据包/>其中,Ci=Eγ(fi),Ci为密文文档,/>γ′为数据拥有者加密对称加密密钥。
具体的,本专利使用常用的对称加密算法Eγ(x),在此不再叙述。
参照图3为本发明一具体实施例S5的子步骤图,包括:
步骤S51,数据使用者根据自己的需求生成查询关键字向量Q;
步骤S52,数据使用者根据同态加密密钥的公钥加密查询关键字向量Q,生成陷门Q’;
步骤S53,数据使用者将需要返回的文件个数k和陷门Q’发送到云平台;
其中,Q=(Q1,Q2,...,Qn),Qi∈{0,1},i=1,2,...,n;Q’=(Q1’,Q2’,...,Qn’),Qi’=[Qi]pkB,i=1,2,...,n。
具体的,Q的长度和字典D的长度相同,Q中的每一位置的内容为是否包含字典中对应位置的关键字。
进一步地,同态加密密钥的解密包括:一同态加密弱密钥的私钥解密以及一同态加密强密钥解密,同态加密弱密钥的私钥解密采用一预定函数L(x)用于解密,同态加密强密钥解密先使用同态加密强密钥λ1解密:
再使用同态加密强密钥λ2解密:
其中,L(x)=(x-1)/N,
进一步地,步骤S6中云平台接收到需要返回的文件个数k和陷门Q’并根据密文索引Ii’和陷门Q’计算文档fi的密文相关分数
具体的,文档fi的密文相关分数计算包括:
步骤S61,云平台任意选取Rx,计算:
步骤S62,云平台计算将X,Y,X1,Y1发送给云计算提供者。
步骤S63,云计算提供者计算:
并发送给云平台;
步骤S64,云平台计算:
步骤S65,通过循环S61到S64,云平台得到然后云平台计算:
步骤S66,通过循环S61到S65,云平台得到m为文档的个数。
参照图4为本发明一具体实施例S7的子步骤图,包括:
步骤S71,云平台将密文数据包CDi中的密文文档标识和文档fi的密文相关性分数/>关联,得到一关联数据/>并发送给数据使用者;
步骤S72,数据使用者根据用户授权证书中的skΣ对关联数据进行解密,得到一明文分数;
步骤S73,数据使用者根据明文分数进行排序并将排序前k个文档的密文文档标识发送给云平台。
参照图5为本发明一具体实施例S8的子步骤图,包括:
步骤S81,云平台将k个文档的密文文档标识密文数据包CDi中的密文文档Ci和数据拥有者加密对称加密密钥γ'发送给数据使用者;
步骤S82,数据使用者根据用户授权证书中的sk∑对数据拥有者加密对称加密密钥γ'进行解密,得到对称加密密钥γ;
步骤S83,数据使用者根据对称加密密钥γ对k个文档的密文文档标识密文数据包CDi中的密文文档Ci进行解密,得到解密的文档fi。
具体的,云平台将k个文档的密文文档标识密文数据包CDi中的密文文档Ci和数据拥有者加密对称加密密钥γ'发送给数据使用者;刑/>数据使用者用用户授权证书中的sk∑进行解密,得到对称加密密钥γ;对Ci=Eγ(fi),使用对称加密密钥γ进行解密,得到/>
在本发明较佳的实施例中,假设数据拥有者A从4个文档中提取关键字,去重后生成长度为12的字典D,D=[动,漫,小,说,游,戏,羽,毛,球,俯,卧,撑]。数据使用者B向数据拥有者A申请在2019年11月23日到2020年2月23日访问数据,且此次查询的关键字为小说,希望返回2个最相关的文档。可按照以下步骤具体实施:
步骤一,生成密钥
密钥生成中心生成同态加密弱密钥对pki和ski:ski=H(IDi),IDi为用户的ID,且H(*)为常用的哈希函数,不在本专利的权利保护范围内。密钥生成中心将根据用户ID生成的同态加密弱密钥对发送给用户。
密钥生成中心生成主密钥并将λ分成λ1和λ2作为同态加密强密钥,且λ1+λ2=0modλ和λ1+λ2=1mod N2,最后将λ1和λ2分别发送给云平台和云计算提供者。
步骤二,生成字典和索引
数据拥有者A根据每个文档fi的内容提取关键字,将生成的所有关键字去重后就是字典D,D=[动,漫,小,说,游,戏,羽,毛,球,俯,卧,撑],字典D的长度为12;
数据拥有者使用向量空间模型并结合每个文档fi的关键字和字典D为每个文档fi生成索引向量Ii索引向量的长度和字典的长度相同;索引向量每一位置的内容为是否包含字典中对应位置的关键字,即包含对应位置的关键字则向量中此位置的内容为1,否则为0。Ii=(Ii1,Ii2,...,Iin),Iij∈{0,1},j=1,2,...,n。
步骤三,生成用户授权证书:
数据使用者B向数据拥有者A申请某一时间段AT内的用户授权证书AT=(20191123-20200223);
如果数据使用者A同意授权数据使用者在AT时间段内访问数据,则为该数据使用者生成一个用户授权证书UAC,UAC=(A,B,AT,pk∑)。AT为授权的时间段,sk∑=H(A,B,AT,skA);
UAC被发送给云平台、云计算提供者和数据使用者,通过安全通道将sk∑单独发送给数据使用者。
步骤四,加密文档和生成密文索引包括:
密文索引Ii’=(Ii1’,Ii2’,...,Ii12’),Iij’=[Iij]pkA,j=1,2,...,12;
数据拥有者加密对称加密密钥
密文文档标识为文档fi的文档标识;
文档fi的密文数据包并将密文数据包发送给云平台。
步骤五,查询包括:
数据使用者根据自己的需求生成查询关键字向量Q,Q=(0,0,1,1,0,0,0,0,0,0,0,0);
数据使用者根据自己的同态加密弱密钥的公钥加密查询关键字向量Q,生成陷门Q’=(Q1’,Q2’,...,Q12’),Qi’=[Qi]pkB,i=1,2,...,12;
数据使用者将需要返回的文件个数2和陷门一起发送给云平台。
步骤六,同态加密解密的具体过程为:
使用同态加密强密钥λ1解密:
接收后使用同态加密强密钥λ2解密:
步骤七,搜索包括:
云平台任意选取Rx,计算:
云平台计算将X,Y,X1,Y1发送给云计算提供者;
云计算提供者计算:
并发送给云平台;
云平台计算:
通过循环上述过程,云平台得到然后云平台计算:/>
再通过循环上述步骤,云平台得到
步骤八,排序包括:
云平台将密文数据包中的密文文档标识/>和密文相关性分数关联,将/>发送给数据使用者;
对数据使用者用用户授权证书中的sk∑进行解密,得到明文分数,然后数据使用者将排序前2个文档的密文文档标识/>发送给云平台;
步骤九,解密包括:
云平台将2个密文数据包/>中的密文文档Ci和γ'发送给数据使用者;
对数据使用者用用户授权证书中的sk∑进行解密,得到对称加密密钥γ;
对Ci=Eγ(fi),使用对称加密密钥γ进行解密,得到
综上,采用本发明的密文检索方法,既确保了大数据检索过程中信息的安全,又满足了用户的查询需求,同时设计一个基于时间段的用户授权证书,不同时间段用户的密钥不同,有效实现了对用户密钥的管理。
本发明使用同态加密不仅确保检索结果为密文形式,而且同时确保相关分数排序前k个密文文档返回并解密,整个过程云平台都只能获取检索结果和文档标识的密文信息,有效防止了关联统计信息攻击。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。
Claims (1)
1.一种面向大数据的安全认证的密文检索方法,其特征在于,包括:
步骤S1,一密匙生成中心根据用户身份信息生成用于检索过程使用的同态加密密钥,并将所述同态加密密钥发送给数据拥有者、多个数据使用者、云计算提供者以及云平台;
步骤S2,所述数据拥有者根据每个文档的内容进行关键字提取,并将提取的所述关键字去重得到一字典,同时使用向量空间模型根据所述字典为每个所述文档生成一索引向量;
步骤S3,所述数据拥有者根据一授权用户在每一时间段内访问的数据生成一用户授权证书,并将所述用户授权证书发送到所述云平台、所述云计算提供者以及多个所述数据使用者;
步骤S4,所述数据拥有者使用一对称加密算法加密每个所述文档并进行文档标识同时使用所述同态加密密钥生成一密文索引,然后将加密的每个所述文档和所述密文索引打包形成一密文数据包发送到所述云平台;
步骤S5,所述数据使用者使用所述同态加密密钥加密需要搜索的关键字生成一陷门,并将所述陷门和需要返回的预定数量个文档发送到所述云平台;
步骤S6,所述云平台和所述云计算提供者交互式协作,并根据所述密文索引和所述陷门,分别使用所述同态加密密匙计算出所述预定数量个文档和所述需要搜索的关键字的密文相关性分数;
步骤S7,所述云平台将所述密文数据包中的文档标识和所述密文相关性分数关联发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密所述密文相关性分数得到一明文分数,然后数据使用者将排序前所述预定数量个文档的文档标识发送到所述云平台;
步骤S8,所述云平台将文档标识的前所述预定数量个文档发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密文档标识的前所述预定数量个文档;
所述步骤S6中所述云平台接收到需要返回的文件个数k和陷门Q’并根据所述密文索引Ii’和所述陷门Q’计算所述文档fi的密文相关分数
所述密文相关分数的计算过程包括:
步骤S61,云平台任意选取Rx,计算:
步骤S62,云平台计算将X,Y,X1,Y1发送给云计算提供者;
步骤S63,云计算提供者计算:
并发送给云平台;
步骤S64,云平台计算:
步骤S65,通过循环S61到S64,云平台得到然后云平台计算:
步骤S66,通过循环S61到S65,云平台得到m为文档的个数;
所述步骤S1中,所述密钥生成中心根据所述用户身份信息生成同态加密弱密钥对pki和ski发送到所述数据拥有者和所述数据使用者,以及生成主密钥并将λ分成λ1和λ2作为同态加密强密钥分别发送给云平台和云计算提供者;
其中,ski=H(IDi),pki和ski为使用的同态加密弱密钥的公钥和私钥,IDi为用户的身份信息,H(*)为常用的哈希函数,λ1+λ2=0 modλ,λ1+λ2=1 mod N2;
所述步骤S2中,数据拥有者使用所述向量空间模型并结合每个所述文档fi的所述关键字和所述字典D为每个所述文档fi生成所述索引向量Ii,所述索引向量的长度和字典的长度相同;索引向量每一位置的内容为是否包含所述字典中对应位置的所述关键字,若所述位置包含对应位置的所述关键字,则所述索引向量中所述位置的内容为1,否则为0;其中所述字典D的长度为n,Ii=(Ii1,Ii2,…,Iin),Iij∈{0,1},j=1,2,…,n;
所述步骤S3包括:
步骤S31,所述数据使用者向所述数据拥有者申请某一时间段AT内的用户授权证书;
步骤S32,当所述数据使用者同意授权所述数据使用者在所述某一时间段AT内访问数据,则为所述数据使用者生成一个用户授权证书UAC;
步骤S33,所述数据使用者将所述用户授权证书UAC发送到所述云平台、所述云计算提供者和所述数据使用者,并通过安全通道将一skΣ单独发送给所述数据使用者;
其中,UAC=(A,B,AT,pkΣ),A、B分别为数据拥有者和数据使用者的身份信息,AT为授权的时间段,
所述步骤S4中,所述对称加密算法为Eγ(x),其中,γ为对称加密密钥,x为加密内容;密文文档标识 为文档fi的文档标识;所述密文索引Ii’=(Ii1’,Ii2’,…,Iin’),同态加密算法/>其中/>C2=gr mod N2;所述密文数据包CDi=(fγi,Ci,I′i,γ′),其中,Ci=Eγ(fi),Ci为所述密文文档,γ′为所述数据拥有者加密对称加密密钥;
所述步骤S5包括:
步骤S51,所述数据使用者根据自己的需求生成查询关键字向量Q;
步骤S52,所述数据使用者根据所述同态加密密钥的公钥加密所述查询关键字向量Q,生成所述陷门Q’;
步骤S53,所述数据使用者将需要返回的文件个数k和所述陷门Q’发送到所述云平台;
其中,Q=(Q1,Q2,…,Qn),Qi∈{0,1},i=1,2,…,n;i=1,2,…,n;
所述同态加密密钥的解密包括:一同态加密弱密钥的私钥解密以及一同态加密强密钥解密,所述同态加密弱密钥的私钥解密采用一预定函数L(x)用于解密,所述同态加密强密钥解密先使用同态加密强密钥λ1解密:
再使用同态加密强密钥λ2解密:
其中,L(x)=(x-1)/N,
所述步骤S7包括:
步骤S71,所述云平台将所述密文数据包CDi中的密文文档标识和所述文档fi的密文相关性分数/>关联,得到一关联数据/> 并发送给所述数据使用者;
步骤S72,所述数据使用者根据所述用户授权证书中的skΣ对所述关联数据进行解密,得到一明文分数;
步骤S73,所述数据使用者根据所述明文分数进行排序并将排序前k个文档的密文文档标识发送给所述云平台;
所述步骤S8包括:
步骤S81,所述云平台将所述k个文档的密文文档标识密文数据包CDi中的密文文档Ci和所述数据拥有者加密对称加密密钥γ′发送给所述数据使用者;
步骤S82,所述数据使用者根据所述用户授权证书中的skΣ对所述数据拥有者加密对称加密密钥γ′进行解密,得到对称加密密钥γ;
步骤S83,所述数据使用者根据所述对称加密密钥γ对所述k个文档的密文文档标识密文数据包CDi中的密文文档Ci进行解密,得到解密的所述文档fi。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010162939.3A CN111404679B (zh) | 2020-03-10 | 2020-03-10 | 一种面向大数据的安全认证的密文检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010162939.3A CN111404679B (zh) | 2020-03-10 | 2020-03-10 | 一种面向大数据的安全认证的密文检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111404679A CN111404679A (zh) | 2020-07-10 |
CN111404679B true CN111404679B (zh) | 2023-08-08 |
Family
ID=71413274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010162939.3A Active CN111404679B (zh) | 2020-03-10 | 2020-03-10 | 一种面向大数据的安全认证的密文检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111404679B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112039653B (zh) * | 2020-08-28 | 2021-09-28 | 西安电子科技大学 | 基于神经网络激活单元的云外包数据加解密方法 |
CN112332979B (zh) * | 2020-11-11 | 2023-06-27 | 深圳技术大学 | 云计算环境中的密文搜索方法及系统、设备 |
CN113065146A (zh) * | 2021-04-02 | 2021-07-02 | 浙江永旗区块链科技有限公司 | 一种用于区块链数据保护的同态加密方法 |
CN115277267B (zh) * | 2022-09-30 | 2022-12-02 | 北京道达天际科技股份有限公司 | 一种文档安全加解密方法 |
CN117834109B (zh) * | 2024-03-05 | 2024-05-28 | 北京隐算科技有限公司 | 一种基于混淆模分量的密文数据库系统及其应用方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107256248B (zh) * | 2017-06-07 | 2020-05-08 | 福州大学 | 云存储安全中基于通配符的可搜索加密方法 |
CN107491497B (zh) * | 2017-07-25 | 2020-08-11 | 福州大学 | 支持任意语言查询的多用户多关键词排序可搜索加密系统 |
CN107704768A (zh) * | 2017-09-14 | 2018-02-16 | 上海海事大学 | 一种密文的多关键字分级安全检索方法 |
CN108632032B (zh) * | 2018-02-22 | 2021-11-02 | 福州大学 | 无密钥托管的安全多关键词排序检索系统 |
CN108388807B (zh) * | 2018-02-28 | 2020-05-22 | 华南理工大学 | 一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法 |
-
2020
- 2020-03-10 CN CN202010162939.3A patent/CN111404679B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111404679A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111404679B (zh) | 一种面向大数据的安全认证的密文检索方法 | |
US20220368545A1 (en) | Searchable encrypted data sharing method and system based on blockchain and homomorphic encryption | |
CN107480163B (zh) | 一种云环境下支持隐私保护的高效密文图像检索方法 | |
CN108200063B (zh) | 一种可搜索公钥加密方法、采用该方法的系统和服务器 | |
CN108256031B (zh) | 一种支持隐私保护的多源加密图像检索方法 | |
Li et al. | Achieving authorized and ranked multi-keyword search over encrypted cloud data | |
CN113194078A (zh) | 一种云端支持隐私保护的排序多关键字搜索加密方法 | |
CN109063509A (zh) | 一种基于关键词语义排序的可搜索加密方法 | |
KR20150052131A (ko) | 블룸 필터를 숨기는 콘텐츠에 의한 안전한 개인 데이터베이스 쿼링 | |
KR101282281B1 (ko) | 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치 | |
CN110851481B (zh) | 一种可搜索加密方法、装置、设备及可读存储介质 | |
CN115314295B (zh) | 一种基于区块链的可搜索加密技术方法 | |
Guo et al. | Enabling secure cross-modal retrieval over encrypted heterogeneous IoT databases with collective matrix factorization | |
CN112989375A (zh) | 一种分级优化加密无损隐私保护方法 | |
Yu et al. | Privacy-preserving multikeyword similarity search over outsourced cloud data | |
Bauspieß et al. | Privacy-preserving preselection for protected biometric identification using public-key encryption with keyword search | |
CN115459967A (zh) | 一种基于可搜索加密的密文数据库查询方法及系统 | |
Cui et al. | Harnessing encrypted data in cloud for secure and efficient image sharing from mobile devices | |
CN108416037A (zh) | 云环境中基于两级索引的中心关键词密文搜索方法 | |
CN108650268B (zh) | 一种实现多级访问的可搜索加密方法及系统 | |
CN108549701A (zh) | 云环境加密外包数据语义扩展搜索方法及系统 | |
Yan et al. | Privacy-preserving multi-source image retrieval in edge computing | |
Zhang et al. | Encrypted speech retrieval scheme based on multiuser searchable encryption in cloud storage | |
Guan et al. | Achieving privacy-preserving discrete frechet distance range queries | |
CN107679408A (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 |