CN111404679A - 一种面向大数据的安全认证的密文检索方法 - Google Patents

一种面向大数据的安全认证的密文检索方法 Download PDF

Info

Publication number
CN111404679A
CN111404679A CN202010162939.3A CN202010162939A CN111404679A CN 111404679 A CN111404679 A CN 111404679A CN 202010162939 A CN202010162939 A CN 202010162939A CN 111404679 A CN111404679 A CN 111404679A
Authority
CN
China
Prior art keywords
data
ciphertext
user
document
key
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.)
Granted
Application number
CN202010162939.3A
Other languages
English (en)
Other versions
CN111404679B (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.)
Shanghai Big Data Center
Original Assignee
Shanghai Big Data Center
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 Shanghai Big Data Center filed Critical Shanghai Big Data Center
Priority to CN202010162939.3A priority Critical patent/CN111404679B/zh
Publication of CN111404679A publication Critical patent/CN111404679A/zh
Application granted granted Critical
Publication of CN111404679B publication Critical patent/CN111404679B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • 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/602Providing cryptographic facilities or services
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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/32Cryptographic 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/3263Cryptographic 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及数据安全技术领域,具体涉及一种面向大数据的安全认证的密文检索方法,首先密钥生成中心生成密钥并发送给云计算提供者、云平台、数据拥有者以及数据使用者;之后数据拥有者生成字典和索引并生成用户授权证书以及密文数据包并发送出去;然后数据使用者使用自己同态加密弱密钥的公钥加密搜索的关键字生成陷门并和需要返回的文件个数k一起发送给云平台;之后云平台和云计算提供者交互式协作计算密文相关性分数,最后数据使用者根据获得的用户授权证书解密得到密文文件。本发明设计一个用户授权证书来实现对用户密钥的管理,同时使用同态加密不仅确保检索结果为密文形式,而且确保相关分数排序前k个密文文档返回并解密。

Description

一种面向大数据的安全认证的密文检索方法
技术领域
本发明涉及数据安全技术领域,尤其涉及一种面向大数据的安全认证的密文检索方法。
背景技术
“大数据”是在经济社会发展产生大量数据基础上形成的一个概念。大数据技术以其容量大、读写快、应用范围广泛等优势飞速发展,成为当下最重要的数据集合技术及信息服务和管理技术。大数据技术能够帮助科技与产业实现交叉融合,帮助人类开发新的知识、创立新的产业、提升传统领域的价值和能力。因此,大数据正逐渐成为当今社会产业革命、群体跃进的重要标志和实现工具。但是,如何确保整个检索过程的安全性是一个阻碍大数据进一步发展的重大问题。
加密是保护隐私的一个有效方式,然而现有的基于明文的检索技术无法应用于密文。于是,可搜索加密作为一种密文检索方式被应用于大数据的检索过程中,可搜索加密通过一种构造的密文匹配方案,在确保查询关键字和文档关键字是密文的情况下有效计算出两者的相关性分数,作为返回文档的衡量标准。
进一步提出了多关键字的排序可搜索加密方案,不仅支持多关键字的查询,还可以对相关性分数进行排序,从而返回最符合用户需求的k个文档,从而解决了带宽资源的浪费问题。
然而现有的密文检索方案,包括可搜索加密方案,都无法解决用户密钥的泄露问题。数据使用者在接收到自己的密钥后可能会泄露给他人,从而对整个系统带来严重的安全隐患。此外,相关性分数作为检索结果是作为明文信息存在的。对此,一些人发现通过统计攻击的方式可以利用相关性分数得到一些用户的兴趣趋向,这泄露了用户的隐私。因此如何设计一个管理密钥和加密检索结果的密文检索方案是一个迫切的问题。
发明内容
为了解决以上技术问题,本发明提供了一种面向大数据的安全认证的密文检索方法。
本发明所解决的技术问题可以采用以下技术方案实现:
一种面向大数据的安全认证的密文检索方法,包括:
步骤S1,一密匙生成中心根据用户身份信息生成用于检索过程使用的同态加密密钥,并将所述同态加密密钥发送给数据拥有者、多个数据使用者、云计算提供者以及云平台;
步骤S2,所述数据拥有者根据每个文档的内容进行关键字提取,并将提取的所述关键字去重得到一字典,同时使用向量空间模型根据所述字典为每个所述文档生成一索引向量;
步骤S3,所述数据拥有者根据一授权用户在每一时间段内访问的数据生成一用户授权证书,并将所述用户授权证书发送到所述云平台、所述云计算提供者以及多个所述数据使用者;
步骤S4,所述数据拥有者使用一对称加密算法加密每个所述文档并进行文档标识同时使用所述同态加密密钥生成一密文索引,然后将加密的每个所述文档和所述密文索引打包形成一密文数据包发送到所述云平台;
步骤S5,所述数据使用者使用所述同态加密密钥加密需要搜索的关键字生成一陷门,并将所述陷门和需要返回的预定数量个文档发送到所述云平台;
步骤S6,所述云平台和所述云计算提供者交互式协作,并根据所述密文索引和所述陷门,分别使用所述同态加密密匙计算出所述预定数量个文档和所述需要搜索的关键字的密文相关性分数;
步骤S7,所述云平台将所述密文数据包中的文档标识和所述密文相关性分数关联发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密所述密文相关性分数得到一明文分数,然后数据使用者将排序前所述预定数量个文档的文档标识发送到所述云平台;
步骤S8,所述云平台将文档标识的前所述预定数量个文档发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密文档标识的前所述预定数量个文档。
优选的,所述步骤S1中,所述密钥生成中心根据所述用户身份信息生成同态加密弱密钥对pki和ski发送到所述数据拥有者和所述数据使用者,以及生成主密钥
Figure BDA0002406425780000031
并将λ分成λ1和λ2作为同态加密强密钥分别发送给云平台和云计算提供者;
其中,ski=H(IDi),
Figure BDA0002406425780000032
pki和ski为使用的同态加密弱密钥的公钥,IDi为用户的身份信息,H(*)为常用的哈希函数,λ12=0modλ,λ12=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为授权的时间段,
Figure BDA0002406425780000041
sk=H(A,B,AT,skA)。
优选的,所述步骤S4中,所述对称加密算法为Eγ(x),其中,γ为对称加密密钥,x为加密内容;所述密文文档标识
Figure BDA0002406425780000042
为文档fi的文档标识;所述密文索引Ii’=(Ii1’,Ii2’,...,Iin’),Iij’=[Iij]pkA,j=1,2,...,n;所述同态加密算法
Figure BDA0002406425780000043
其中
Figure BDA0002406425780000044
C2=grmod N2;所述密文数据包
Figure BDA0002406425780000045
其中,Ci=Eγ(fi),Ci为所述密文文档,
Figure BDA0002406425780000046
γ′为所述数据拥有者加密对称加密密钥。
优选的,所述步骤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解密:
Figure BDA0002406425780000051
再使用同态加密强密钥λ2解密:
Figure BDA0002406425780000052
其中,L(x)=(x-1)/N,
Figure BDA0002406425780000053
优选的,所述步骤S6中所述云平台接收到需要返回的文件个数k和陷门Q’并根据所述密文索引Ii’和所述陷门Q’计算所述文档fi的密文相关分数
Figure BDA0002406425780000061
优选的,所述步骤S7包括:
步骤S71,所述云平台将所述密文数据包CDi中的密文文档标识
Figure BDA0002406425780000062
和所述文档fi的密文相关性分数
Figure BDA0002406425780000063
关联,得到一关联数据
Figure BDA0002406425780000064
Figure BDA0002406425780000065
并发送给所述数据使用者;
步骤S72,所述数据使用者根据所述用户授权证书中的sk对所述关联数据进行解密,得到一明文分数;
步骤S73,所述数据使用者根据所述明文分数进行排序并将排序前k个文档的密文文档标识
Figure BDA0002406425780000066
发送给所述云平台。
优选的,所述步骤S8包括:
步骤S81,所述云平台将所述k个文档的密文文档标识
Figure BDA0002406425780000067
密文数据包CDi中的密文文档Ci和所述数据拥有者加密对称加密密钥γ′发送给所述数据使用者;
步骤S82,所述数据使用者根据所述用户授权证书中的sk对所述数据拥有者加密对称加密密钥γ′进行解密,得到对称加密密钥γ;
步骤S83,所述数据使用者根据所述对称加密密钥γ对所述k个文档的密文文档标识
Figure BDA0002406425780000071
密文数据包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发送到数据拥有者和数据使用者,以及生成主密钥
Figure BDA0002406425780000091
并将λ分成λ1和λ2作为同态加密强密钥分别发送给云平台和云计算提供者;
其中,ski=H(IDi),
Figure BDA0002406425780000092
pki和ski为使用的同态加密弱密钥的公钥,IDi为用户的身份信息,H(*)为常用的哈希函数,λ12=0modλ,λ12=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为授权的时间段,
Figure BDA0002406425780000101
sk=H(A,B,AT,skA)。
进一步地,步骤S4中,对称加密算法为Eγ(x),其中,γ为对称加密密钥,x为加密内容;密文文档标识
Figure BDA0002406425780000102
为文档fi的文档标识;密文索引Ii’=(Ii1’,Ii2’,...,Iin’),Iij’=[Iij]pkA,j=1,2,...,n;同态加密算法
Figure BDA0002406425780000103
其中
Figure BDA0002406425780000104
C2=grmod N2;密文数据包
Figure BDA0002406425780000105
其中,Ci=Eγ(fi),Ci为密文文档,
Figure BDA0002406425780000106
γ′为数据拥有者加密对称加密密钥。
具体的,本专利使用常用的对称加密算法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解密:
Figure BDA0002406425780000111
再使用同态加密强密钥λ2解密:
Figure BDA0002406425780000112
其中,L(x)=(x-1)/N,
Figure BDA0002406425780000121
进一步地,步骤S6中云平台接收到需要返回的文件个数k和陷门Q’并根据密文索引Ii’和陷门Q’计算文档fi的密文相关分数
Figure BDA0002406425780000122
具体的,文档fi的密文相关分数
Figure BDA0002406425780000123
计算包括:
步骤S61,云平台任意选取Rx
Figure BDA0002406425780000124
计算:
Figure BDA0002406425780000125
Figure BDA0002406425780000126
步骤S62,云平台计算
Figure BDA0002406425780000127
将X,Y,X1,Y1发送给云计算提供者。
步骤S63,云计算提供者计算:
Figure BDA0002406425780000128
Figure BDA0002406425780000129
并发送给云平台;
步骤S64,云平台计算:
Figure BDA00024064257800001210
Figure BDA00024064257800001211
Figure BDA0002406425780000131
Figure BDA0002406425780000132
步骤S65,通过循环S61到S64,云平台得到
Figure BDA0002406425780000133
然后云平台计算:
Figure BDA0002406425780000134
步骤S66,通过循环S61到S65,云平台得到
Figure BDA0002406425780000135
m为文档的个数。
参照图4为本发明一具体实施例S7的子步骤图,包括:
步骤S71,云平台将密文数据包CDi中的密文文档标识
Figure BDA0002406425780000136
和文档fi的密文相关性分数
Figure BDA0002406425780000137
关联,得到一关联数据
Figure BDA0002406425780000138
并发送给数据使用者;
步骤S72,数据使用者根据用户授权证书中的skΣ对关联数据进行解密,得到一明文分数;
步骤S73,数据使用者根据明文分数进行排序并将排序前k个文档的密文文档标识
Figure BDA0002406425780000141
发送给云平台。
参照图5为本发明一具体实施例S8的子步骤图,包括:
步骤S81,云平台将k个文档的密文文档标识
Figure BDA0002406425780000142
密文数据包CDi中的密文文档Ci和数据拥有者加密对称加密密钥γ'发送给数据使用者;
步骤S82,数据使用者根据用户授权证书中的sk对数据拥有者加密对称加密密钥γ'进行解密,得到对称加密密钥γ;
步骤S83,数据使用者根据对称加密密钥γ对k个文档的密文文档标识
Figure BDA0002406425780000143
密文数据包CDi中的密文文档Ci进行解密,得到解密的文档fi
具体的,云平台将k个文档的密文文档标识
Figure BDA0002406425780000144
密文数据包CDi中的密文文档Ci和数据拥有者加密对称加密密钥γ'发送给数据使用者;刑
Figure BDA0002406425780000145
数据使用者用用户授权证书中的sk进行解密,得到对称加密密钥γ;对Ci=Eγ(fi),使用对称加密密钥γ进行解密,得到
Figure BDA0002406425780000146
在本发明较佳的实施例中,假设数据拥有者A从4个文档中提取关键字,去重后生成长度为12的字典D,D=[动,漫,小,说,游,戏,羽,毛,球,俯,卧,撑]。数据使用者B向数据拥有者A申请在2019年11月23日到2020年2月23日访问数据,且此次查询的关键字为小说,希望返回2个最相关的文档。可按照以下步骤具体实施:
步骤一,生成密钥
密钥生成中心生成同态加密弱密钥对pki和ski:ski=H(IDi),
Figure BDA0002406425780000151
IDi为用户的ID,且H(*)为常用的哈希函数,不在本专利的权利保护范围内。密钥生成中心将根据用户ID生成的同态加密弱密钥对发送给用户。
密钥生成中心生成主密钥
Figure BDA0002406425780000152
并将λ分成λ1和λ2作为同态加密强密钥,且λ12=0modλ和λ12=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为授权的时间段,
Figure BDA0002406425780000161
sk=H(A,B,AT,skA);
UAC被发送给云平台、云计算提供者和数据使用者,通过安全通道将sk单独发送给数据使用者。
步骤四,加密文档和生成密文索引包括:
密文索引Ii’=(Ii1’,Ii2’,...,Ii12’),Iij’=[Iij]pkA,j=1,2,...,12;
数据拥有者加密对称加密密钥
Figure BDA0002406425780000162
密文文档标识
Figure BDA0002406425780000163
为文档fi的文档标识;
文档fi的密文数据包
Figure BDA0002406425780000164
并将密文数据包发送给云平台。
步骤五,查询包括:
数据使用者根据自己的需求生成查询关键字向量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解密:
Figure BDA0002406425780000165
接收
Figure BDA0002406425780000166
后使用同态加密强密钥λ2解密:
Figure BDA0002406425780000171
步骤七,搜索包括:
云平台任意选取Rx
Figure BDA0002406425780000172
计算:
Figure BDA0002406425780000173
Figure BDA0002406425780000174
云平台计算
Figure BDA0002406425780000175
将X,Y,X1,Y1发送给云计算提供者;
云计算提供者计算:
Figure BDA0002406425780000176
Figure BDA0002406425780000177
并发送给云平台;
云平台计算:
Figure BDA0002406425780000178
Figure BDA0002406425780000179
Figure BDA00024064257800001710
Figure BDA0002406425780000181
通过循环上述过程,云平台得到
Figure BDA0002406425780000182
然后云平台计算:
Figure BDA0002406425780000183
再通过循环上述步骤,云平台得到
Figure BDA0002406425780000184
步骤八,排序包括:
云平台将密文数据包
Figure BDA0002406425780000185
中的密文文档标识
Figure BDA0002406425780000186
和密文相关性分数关联,将
Figure BDA0002406425780000187
发送给数据使用者;
Figure BDA0002406425780000188
数据使用者用用户授权证书中的sk进行解密,得到明文分数,然后数据使用者将排序前2个文档的密文文档标识
Figure BDA0002406425780000189
发送给云平台;
步骤九,解密包括:
云平台将2个
Figure BDA0002406425780000191
密文数据包
Figure BDA0002406425780000192
中的密文文档Ci和γ'发送给数据使用者;
Figure BDA0002406425780000193
数据使用者用用户授权证书中的sk进行解密,得到对称加密密钥γ;
对Ci=Eγ(fi),使用对称加密密钥γ进行解密,得到
Figure BDA0002406425780000194
综上,采用本发明的密文检索方法,既确保了大数据检索过程中信息的安全,又满足了用户的查询需求,同时设计一个基于时间段的用户授权证书,不同时间段用户的密钥不同,有效实现了对用户密钥的管理。
本发明使用同态加密不仅确保检索结果为密文形式,而且同时确保相关分数排序前k个密文文档返回并解密,整个过程云平台都只能获取检索结果和文档标识的密文信息,有效防止了关联统计信息攻击。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

Claims (10)

1.一种面向大数据的安全认证的密文检索方法,其特征在于,包括:
步骤S1,一密匙生成中心根据用户身份信息生成用于检索过程使用的同态加密密钥,并将所述同态加密密钥发送给数据拥有者、多个数据使用者、云计算提供者以及云平台;
步骤S2,所述数据拥有者根据每个文档的内容进行关键字提取,并将提取的所述关键字去重得到一字典,同时使用向量空间模型根据所述字典为每个所述文档生成一索引向量;
步骤S3,所述数据拥有者根据一授权用户在每一时间段内访问的数据生成一用户授权证书,并将所述用户授权证书发送到所述云平台、所述云计算提供者以及多个所述数据使用者;
步骤S4,所述数据拥有者使用一对称加密算法加密每个所述文档并进行文档标识同时使用所述同态加密密钥生成一密文索引,然后将加密的每个所述文档和所述密文索引打包形成一密文数据包发送到所述云平台;
步骤S5,所述数据使用者使用所述同态加密密钥加密需要搜索的关键字生成一陷门,并将所述陷门和需要返回的预定数量个文档发送到所述云平台;
步骤S6,所述云平台和所述云计算提供者交互式协作,并根据所述密文索引和所述陷门,分别使用所述同态加密密匙计算出所述预定数量个文档和所述需要搜索的关键字的密文相关性分数;
步骤S7,所述云平台将所述密文数据包中的文档标识和所述密文相关性分数关联发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密所述密文相关性分数得到一明文分数,然后数据使用者将排序前所述预定数量个文档的文档标识发送到所述云平台;
步骤S8,所述云平台将文档标识的前所述预定数量个文档发送到所述数据使用者,所述数据使用者根据所述用户授权证书解密文档标识的前所述预定数量个文档。
2.根据权利要求1所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤S1中,所述密钥生成中心根据所述用户身份信息生成同态加密弱密钥对pki和ski发送到所述数据拥有者和所述数据使用者,以及生成主密钥
Figure FDA0002406425770000021
并将λ分成λ1和λ2作为同态加密强密钥分别发送给云平台和云计算提供者;
其中,ski=H(IDi),
Figure FDA0002406425770000022
pki和ski为使用的同态加密弱密钥的公钥,IDi为用户的身份信息,H(*)为常用的哈希函数,λ12=0 modλ,λ12=1mod N2
3.根据权利要求2所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤S2中,数据拥有者使用所述向量空间模型并结合每个所述文档fi的所述关键字和所述字典D为每个所述文档fi生成所述索引向量Ii,所述索引向量的长度和字典的长度相同;索引向量每一位置的内容为是否包含所述字典中对应位置的所述关键字,若所述位置包含对应位置的所述关键字,则所述索引向量中所述位置的内容为1,否则为0;其中所述字典D的长度为n,Ii=(Ii1,Ii2,…,Iin),Iij∈{0,1},j=1,2,…,n。
4.根据权利要求3所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤S3包括:
步骤S31,所述数据使用者向所述数据拥有者申请某一时间段AT内的用户授权证书;
步骤S32,当所述数据使用者同意授权所述数据使用者在所述某一时间段AT内访问数据,则为所述数据使用者生成一个用户授权证书UAC;
步骤S33,所述数据使用者将所述用户授权证书UAC发送到所述云平台、所述云计算提供者和所述数据使用者,并通过安全通道将一skΣ单独发送给所述数据使用者;
其中,UAC=(A,B,AT,pk),A、B分别为数据拥有者和数据使用者的身份信息,AT为授权的时间段,
Figure FDA0002406425770000031
5.根据权利要求4所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤S4中,所述对称加密算法为Eγ(x),其中,γ为对称加密密钥,x为加密内容;所述密文文档标识
Figure FDA0002406425770000032
Figure FDA0002406425770000033
为文档fi的文档标识;所述密文索引Ii’=(Ii1’,Ii2’,...,Iin’),Iij’=[Iij]pkA,j=1,2,...,n;所述同态加密算法
Figure FDA0002406425770000034
其中
Figure FDA0002406425770000035
C2=grmod N2;所述密文数据包
Figure FDA0002406425770000037
其中,Ci=Eγ(fi),Ci为所述密文文档,
Figure FDA0002406425770000036
γ'为所述数据拥有者加密对称加密密钥。
6.根据权利要求5所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤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。
7.根据权利要求6所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述同态加密密钥的解密包括:一同态加密弱密钥的私钥解密以及一同态加密强密钥解密,所述同态加密弱密钥的私钥解密采用一预定函数L(x)用于解密,所述同态加密强密钥解密先使用同态加密强密钥λ1解密:
Figure FDA0002406425770000041
再使用同态加密强密钥λ2解密:
Figure FDA0002406425770000042
其中,L(x)=(x-1)/N,
Figure FDA0002406425770000043
8.根据权利要求7所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤S6中所述云平台接收到需要返回的文件个数k和陷门Q’并根据所述密文索引Ii’和所述陷门Q’计算所述文档fi的密文相关分数
Figure FDA0002406425770000044
9.根据权利要求8所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤S7包括:
步骤S71,所述云平台将所述密文数据包CDi中的密文文档标识
Figure FDA0002406425770000055
和所述文档fi的密文相关性分数
Figure FDA0002406425770000051
关联,得到一关联数据
Figure FDA0002406425770000052
Figure FDA0002406425770000053
并发送给所述数据使用者;
步骤S72,所述数据使用者根据所述用户授权证书中的sk对所述关联数据进行解密,得到一明文分数;
步骤S73,所述数据使用者根据所述明文分数进行排序并将排序前k个文档的密文文档标识
Figure FDA0002406425770000056
发送给所述云平台。
10.根据权利要求8所述所述的一种面向大数据的安全认证的密文检索方法,其特征在于,所述步骤S8包括:
步骤S81,所述云平台将所述k个文档的密文文档标识fγi密文数据包CDi中的密文文档Ci和所述数据拥有者加密对称加密密钥γ'发送给所述数据使用者;
步骤S82,所述数据使用者根据所述用户授权证书中的sk对所述数据拥有者加密对称加密密钥γ'进行解密,得到对称加密密钥γ;
步骤S83,所述数据使用者根据所述对称加密密钥γ对所述k个文档的密文文档标识
Figure FDA0002406425770000054
密文数据包CDi中的密文文档Ci进行解密,得到解密的所述文档fi
CN202010162939.3A 2020-03-10 2020-03-10 一种面向大数据的安全认证的密文检索方法 Active CN111404679B (zh)

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 true CN111404679A (zh) 2020-07-10
CN111404679B 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)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112039653A (zh) * 2020-08-28 2020-12-04 西安电子科技大学 基于神经网络激活单元的云外包数据加解密方法
CN112332979A (zh) * 2020-11-11 2021-02-05 深圳技术大学 云计算环境中的密文搜索方法及系统、设备
CN113065146A (zh) * 2021-04-02 2021-07-02 浙江永旗区块链科技有限公司 一种用于区块链数据保护的同态加密方法
CN115277267A (zh) * 2022-09-30 2022-11-01 北京道达天际科技股份有限公司 一种文档安全加解密方法
CN117834109A (zh) * 2024-03-05 2024-04-05 北京隐算科技有限公司 一种基于混淆模分量的密文数据库系统及其应用方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107256248A (zh) * 2017-06-07 2017-10-17 福州大学 云存储安全中基于通配符的可搜索加密方法
CN107491497A (zh) * 2017-07-25 2017-12-19 福州大学 支持任意语言查询的多用户多关键词排序可搜索加密系统
CN107704768A (zh) * 2017-09-14 2018-02-16 上海海事大学 一种密文的多关键字分级安全检索方法
CN108388807A (zh) * 2018-02-28 2018-08-10 华南理工大学 一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法
CN108632032A (zh) * 2018-02-22 2018-10-09 福州大学 无密钥托管的安全多关键词排序检索系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107256248A (zh) * 2017-06-07 2017-10-17 福州大学 云存储安全中基于通配符的可搜索加密方法
CN107491497A (zh) * 2017-07-25 2017-12-19 福州大学 支持任意语言查询的多用户多关键词排序可搜索加密系统
CN107704768A (zh) * 2017-09-14 2018-02-16 上海海事大学 一种密文的多关键字分级安全检索方法
CN108632032A (zh) * 2018-02-22 2018-10-09 福州大学 无密钥托管的安全多关键词排序检索系统
CN108388807A (zh) * 2018-02-28 2018-08-10 华南理工大学 一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112039653A (zh) * 2020-08-28 2020-12-04 西安电子科技大学 基于神经网络激活单元的云外包数据加解密方法
CN112332979A (zh) * 2020-11-11 2021-02-05 深圳技术大学 云计算环境中的密文搜索方法及系统、设备
CN112332979B (zh) * 2020-11-11 2023-06-27 深圳技术大学 云计算环境中的密文搜索方法及系统、设备
CN113065146A (zh) * 2021-04-02 2021-07-02 浙江永旗区块链科技有限公司 一种用于区块链数据保护的同态加密方法
CN115277267A (zh) * 2022-09-30 2022-11-01 北京道达天际科技股份有限公司 一种文档安全加解密方法
CN115277267B (zh) * 2022-09-30 2022-12-02 北京道达天际科技股份有限公司 一种文档安全加解密方法
CN117834109A (zh) * 2024-03-05 2024-04-05 北京隐算科技有限公司 一种基于混淆模分量的密文数据库系统及其应用方法
CN117834109B (zh) * 2024-03-05 2024-05-28 北京隐算科技有限公司 一种基于混淆模分量的密文数据库系统及其应用方法

Also Published As

Publication number Publication date
CN111404679B (zh) 2023-08-08

Similar Documents

Publication Publication Date Title
CN113194078B (zh) 一种云端支持隐私保护的排序多关键字搜索加密方法
US20220368545A1 (en) Searchable encrypted data sharing method and system based on blockchain and homomorphic encryption
CN108632032B (zh) 无密钥托管的安全多关键词排序检索系统
CN111404679A (zh) 一种面向大数据的安全认证的密文检索方法
KR101679156B1 (ko) 블룸 필터를 숨기는 콘텐츠에 의한 안전한 개인 데이터베이스 쿼링
Lien et al. A novel privacy preserving location-based service protocol with secret circular shift for k-nn search
CN112989375B (zh) 一种分级优化加密无损隐私保护方法
CN108256031B (zh) 一种支持隐私保护的多源加密图像检索方法
CN105933281B (zh) 一种量子同态对称可搜索加密的方法及系统
CN109063509A (zh) 一种基于关键词语义排序的可搜索加密方法
CN108171066A (zh) 一种医疗云中隐私保护下的关键词跨域搜索方法及系统
CN108768990A (zh) 一种基于区块链的可搜索加密方法
CN112149076B (zh) 一种安全的计算机存储系统
Guan et al. Toward oblivious location-based k-nearest neighbor query in smart cities
CN111556072B (zh) 一种改进索引加密算法与系统
Bauspieß et al. Privacy-preserving preselection for protected biometric identification using public-key encryption with keyword search
CN111159352A (zh) 一种支持多关键词加权检索和结果排序且可验证的加解密方法
Zhang et al. BIB-MKS: post-quantum secure biometric identity-based multi-keyword search over encrypted data in cloud storage systems
CN109412754B (zh) 一种编码云的数据存储、分发以及访问方法
CN108920968B (zh) 一种基于连接关键词的文件可搜索加密方法
CN114640458B (zh) 云边协同环境下细粒度的多用户安全可搜索加密方法
Singhai et al. An efficient image security mechanism based on advanced encryption standard
CN114430321A (zh) 基于dfa自适应安全的黑盒可追踪密钥属性加密方法及装置
Lin et al. A secure fine-grained access control mechanism for networked storage systems
CN115168909B (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