CN112861153A - 一种关键字可搜索延迟加密方法及系统 - Google Patents
一种关键字可搜索延迟加密方法及系统 Download PDFInfo
- Publication number
- CN112861153A CN112861153A CN202110186704.2A CN202110186704A CN112861153A CN 112861153 A CN112861153 A CN 112861153A CN 202110186704 A CN202110186704 A CN 202110186704A CN 112861153 A CN112861153 A CN 112861153A
- Authority
- CN
- China
- Prior art keywords
- trapdoor
- searchable
- ciphertext
- keyword
- representing
- 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.)
- Pending
Links
Images
Classifications
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
- H04L9/3073—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—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/606—Protecting data by securing the transmission between two devices or processes
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/3236—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 using cryptographic hash functions
- H04L9/3239—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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
Abstract
本发明涉及一种关键字可搜索延迟加密方法及系统,方法至少包括:基于公钥PK为至少一个待上传文件的关键字w以延迟加密的方式生成可搜索密文Cw和/或文件密文并上传至云服务器;将基于私钥SK为待检索关键字w生成的至少一个检索陷门Tw发送至云服务器,云服务器基于检索陷门Tw对所有可搜索密文Cw进行检索以获得对应的所述可搜索密文Cw,基于检索得到的可搜索密文Cw确定对应的文件密文并反馈至接收端。本发明通过延迟可搜索密文的生成时间,增加攻击者实施关键字猜测攻击的难度,使得云服务器与发送端、接收端之间在无安全信道、无指定可信服务器、无先验关键字空间、无严格用户认证的场景下,使可搜索公钥加密具有抵抗关键字猜测攻击的特性。
Description
技术领域
本发明涉及加密和云存储技术领域,尤其涉及一种关键字可搜索延迟加密方法及系统。
背景技术
随着云计算技术的快速发展,云服务商为用户提供了便捷又可靠的存储和计算服务,满足了数据量日益增长的服务需求。为了同时保障用户存储在云端的数据的机密性和可用性,可搜索加密技术应运而生。可搜索加密技术主要分为两类,即可搜索对称加密和可搜索公钥加密。可搜索公钥加密得益于公钥体制的特点,天然地适用于发送方和接收方之间非交互式地存储与检索。然而,可搜索公钥加密固有地容易受到关键字猜测攻击的影响。关键字猜测攻击主要有两种方式,(1)攻击者获得某一陷门之后,由于实际场景中关键字空间小,攻击者可以遍历关键字空间生成可搜索密文与捕获的检索陷门进行测试,从而得出检索陷门对应的关键字;(2)攻击者猜测所有可能的关键字并生成相应的密文,将这些密文上传到服务器。将服务器视为测试预言机,观察用户请求的返回结果中是否包含先前生成的密文,以此来验证猜测。
为了抵御关键字猜测攻击,需要在服务器和接收者之间构建安全信道,以防止攻击者获取陷门或者检索结果。然而,建立安全信道需要付出很大的计算开销和通信开销。因此,在无安全信道的前提下,众多学者找到了一些应对关键字猜测攻击的手段。主要包括以下4种,(1)指定可信服务器/服务器集合,限制陷门测试仅由特定服务器执行或者由特定服务器集合联合执行,使得外部攻击者无法验证猜测关键字;(2)模糊关键字检索,增加关键字空间的熵,使得攻击者根据存在暴露嫌疑的模糊陷门不能得到确切的关键字信息;(3)限制发送方,在可搜索密文中嵌入发送方的私钥使得密文不可伪造,仅陷门中指定的发送方生成的可搜索密文才能执行陷门测试;(4)限制用户,增加可信机构对用户身份进行严格限制,影响可搜索密文的构造。
例如,专利文献CN108599937B公开了一种支持多关键字搜索的公钥加密方法用于解决现有多关键字可搜索的公钥加密方法中存在的密文关键字计算过程复杂的技术问题,实现步骤包括:(1)可信第三方设定公共参数;(2)数据拥有者设置存储文件的关键字字段、关键字向量和查询格式;(3)可信第三方计算云存储服务器和数据共享者的密钥并分发;(4)数据拥有者对明文关键字向量中的明文关键字进行加密并发送;(5)数据共享者计算明文关键字向量中的明文关键字的陷门信息并发送;(6)云存储服务器搜索密文集合中的密文关键字,并将搜索到的密文关键字发送给数据共享者。
但是上述解决方案普遍存在乐观的前提假设,这些假设在实际环境中往往难以实现。在无安全信道条件下采用指定可信服务器的方法,需要假设服务器安全可信,然而实际中由于网络攻击或利益驱使,很难找到完全可信的服务器。即使扩展为指定可信服务器集合,将陷门测试过程拆分进行,也难以保证它们之间不会合谋。模糊关键字检索的方法则需要提前确定关键字空间的熵,这样导致关键字的选取丧失了部分灵活性。接收方通过陷门限制发送方的方法也缺乏实用性,接收方不容易先验地知道可信发送方,而且需要为每个发送方构造陷门,极大地增加了通信开销。除此之外,引入可信机构管理用户身份和行为的方法也容易造成额外的代价。因此,如何简化具体构造的先验要求,设计并实现适合实际环境的可搜索公钥加密方案就成了一个亟待解决的问题。
本发明的目的就是解决上述应对关键字猜测攻击的技术手段存在的问题。结合陷门延迟函数和可搜索公钥加密,本发明构造出了一个关键字可搜索延迟加密框架。在这个框架中,用户执行搜索时只需要生成并提交一个具有延迟验证功能的陷门给云服务器,由云服务器执行检索,判断密文中是否含有相应关键字并验证发送方的延迟工作量。在整个过程中,对服务器和关键字空间没有特殊要求,也不需要复杂的身份识别与管理。通过延迟可搜索密文的生成时间,增加攻击者实施关键字猜测攻击的难度,从而在一定程度上抵抗关键字猜测攻击。本发明符合真实世界中关键字检索的应用需求,其执行效果可以达到实用级别。
此外,一方面由于对本领域技术人员的理解存在差异;另一方面由于发明人做出本发明时研究了大量文献和专利,但篇幅所限并未详细罗列所有的细节与内容,然而这绝非本发明不具备这些现有技术的特征,相反本发明已经具备现有技术的所有特征,而且申请人保留在背景技术中增加相关现有技术之权利。
发明内容
针对现有技术之不足,本发明提供一种关键字可搜索延迟加密方法,所述方法至少包括:
基于公钥PK为至少一个待上传文件的关键字w以延迟加密的方式生成可搜索密文Cw和/或文件密文并上传至云服务器;通过在发送端利用陷门延迟函数延迟加密,使得计算陷门延迟函数TDF需要一定的时间,因此发送端的可搜索密文实现延迟加密。将基于私钥SK为待检索关键字w生成的至少一个检索陷门Tw发送至云服务器,本发明通过秘密陷门π能够以较短的时间计算对应的陷门延迟函数TDF,进一步生成检索陷门Tw,使得在检索过程中能够利用检索陷门检验可搜索密文的生成是否符合延迟要求的同时,不影响接收端的计算效率。本发明的发送端通过延迟加密,使得攻击者的攻击代价很大,以至于超过攻击收益,从而使得攻击者放弃对关键字的猜测和攻击。不仅如此,本发明的发送端对延迟要求不可违背,使得云服务器可以利用检索陷门进行检验,从而保证了对发送端的验证的真实性。
云服务器基于所述检索陷门Tw对所有所述可搜索密文Cw进行检索以获得对应的所述可搜索密文Cw,基于检索得到的可搜索密文Cw确定对应的文件密文并反馈至接收端。本发明的云服务器通过验证可搜索密文和陷门匹配,确保发送方在生成可搜索密文时计算得到了与接收方生成检索陷门时一样的陷门延迟函数结果;从而使得发送方生成合法的可搜索密文需要预定的时间开销,极大地增加了攻击者实施关键字猜测攻击的时间成本,实现了不需要建立专门的安全信道、不需要指定云服务器为完全可信;不需要关键字空间分布的先验知识;不需要严格地对用户进行可信度管理的条件下抵抗关键字猜测攻击。
优选地,所述生成可搜索密文Cw和/或文件密文的方法至少包括:
基于公钥PK为至少一个待上传文件的每一个关键字w以延迟加密的方式生成可搜索密文Cw,加密待上传文件生成所述文件密文。
优选地,所述基于公钥PK为至少一个待上传文件的关键字w生成可搜索密文Cw的方法至少包括:
计算Δ=TDF(H1(w),T),令C1=H3(e(H2(Δ)r,h));
基于C0和C1生成可搜索密文Cw=(C0,C1);
其中,TDF表示陷门延迟函数,w表示待上传文件的关键字,H1表示第一密码学哈希函数,H2表示第二密码学哈希函数,H3表示第三密码学哈希函数,e表示双线性映射,h表示检索公钥,T表示陷门延迟函数的公开陷门,g表示椭圆曲线群的生成元。
优选地,基于私钥SK为待检索关键字w生成至少一个检索陷门Tw的方法至少包括:
计算Δ=TDF(H1(w),π);
生成关键字w的陷门Tw=H2(Δ)s;
其中,TDF表示陷门延迟函数,w表示待检索关键字,H1表示第一密码学哈希函数,H2表示第二密码学哈希函数,π表示陷门延迟函数的秘密陷门,s表示检索私钥。
优选地,基于所述检索陷门Tw对所有所述可搜索密文Cw进行检索的方法包括:
基于接收的检索陷门Tw检索所有可搜索密文;
在可搜索密文(C0,C1)满足:H3(e(Tw,C0))=C1的情况下,可搜索密文(C0,C1)为包含关键字w的可搜索密文。
优选地,所述方法还包括初始化参数设置;其中,
基于预设的安全参数和延迟时间参数构建对应的双线性映射和陷门延迟函数,并且根据双线性映射和陷门延迟函数的参数计算公钥PK和私钥SK。
优选地,所述初始化参数设置的方法还包括:
基于所述公开陷门T计算陷门延迟函数的秘密陷门不;
选取三个密码学哈希函数:
本发明还提供一种关键字可搜索延迟加密系统,所述系统至少包括:云服务器以及与所述云服务器分别建立通信的发送端和接收端,
所述发送端基于公钥PK为至少一个待上传文件的关键字w以延迟加密的方式生成可搜索密文Cw和/或文件密文并上传至云服务器;
所述接收端将基于私钥SK为待检索关键字w生成的至少一个检索陷门Tw发送至云服务器,
所述云服务器基于所述检索陷门Tw对所有所述可搜索密文Cw进行检索以获得对应的所述可搜索密文Cw,基于检索得到的可搜索密文Cw确定对应的文件密文并反馈至接收端。
优选地,所述发送端基于公钥PK为至少一个待上传文件的关键字w生成可搜索密文Cw的方法至少包括:
计算Δ=TDF(H1(w),T),令C1=H3(e(H2(Δ)r,h));
基于C0和C1生成可搜索密文Cw=(C0,C1);
其中,TDF表示陷门延迟函数,w表示待上传文件的关键字,H1表示第一密码学哈希函数,H2表示第二密码学哈希函数,H3表示第三密码学哈希函数,e表示双线性映射,h表示检索公钥,T表示陷门延迟函数的公开陷门,g表示椭圆曲线群的生成元。
优选地,接收端基于私钥SK为待检索关键字w生成检索陷门Tw的方法至少包括:
计算Δ=TDF(H1(w),π);
生成关键字w的陷门Tw=H2(Δ)s;
其中,TDF表示陷门延迟函数,w表示待检索关键字,H1表示第一密码学哈希函数,H2表示第二密码学哈希函数,π表示陷门延迟函数的秘密陷门,s表示检索私钥。
相比于现有技术的缺陷,本发明的实现过程中不需要建立专门的安全信道、不需要指定云服务器为完全可信、不需要关键字空间分布的先验知识、不需要严格地对用户进行可信度管理,因此本发明更加符合现实场景的要求。本发明通过在生成可搜索密文的过程中引入了延时效果,极大地增加了攻击者进行关键字猜测攻击的代价,有效应对了关键字猜测攻击。
附图说明
图1是本发明的关键字可搜索延迟加密系统的应用场景示意图;
图2是本发明的关键字可搜索延迟加密方法的流程示意图。
附图标记列表
1:云服务器;2:发送端;3:接收端。
具体实施方式
下面结合附图进行详细说明。
本发明提供一种关键字可搜索延迟加密方法及系统,也可以称为一种关键字可搜索延迟加密方法及装置
本发明中的可搜索密文是指能够执行检索操作的密文。
实施例1
如图1所示,本发明的关键字可搜索延迟加密系统,至少包括云服务器1、发送端2和接收端3。发送端2和接收端3分别与云服务器以有线或者无线的方式建立通信连接。
发送端2和接收端3均可以是计算机、服务器、可移动的计算机、智能手机、平板电脑、可穿戴设备等具有通信功能、发送信息的设备。
发送端2向云服务器1发送至少一个可搜索密文和/或文件密文A1。
接收端3向云服务器1发送含有检索陷门信息的至少一个搜索请求A2。
云服务器1基于检索陷门信息在存储的第一可搜索密文中搜索符合条件的第二可搜索密文,并且将与第二可搜索密文对应的文件密文A3反馈至接收端3。
本发明的关键字可搜索延迟加密系统,在用户和云服务器之间无需建立安全信道;无需指定云服务器为完全可信的;无需关键字空间的先验知识;无需严格地对用户进行可信度管理。相比已有应对关键字猜测攻击的方法,更加符合现实场景的要求。
发送端2执行的程序内容为:
基于公钥PK为至少一个待上传文件的关键字W生成可搜索密文Cw,加密待上传文件以生成文件密文。
优选地,发送端2基于公钥PK为每一个待上传文件的关键字W生成可搜索密文Cw。
发送端2将生成的可搜索密文和/或文件密文上传到云服务器1。
接收端3执行的程序内容为:
基于私钥SK为待检索关键字W生成检索陷门Tw,并且将检索陷门提交给云服务器1。
云服务器1执行的程序内容为:
基于接收端3发送的检索陷门Tw检索所有可搜索密文,找到对应的可搜索密文,进一步将对应的文件密文返回给接收端3。
优选地,在发送端2向云服务器1发送可搜索密文和/或文件密文A1之前,云服务器1、发送端2和接收端3执行初始化参数设置的程序内容。
本发明使用公开陷门进行加密,通过计算陷门延迟函数TDF需要预定的时间特征来实现延迟的效果。不仅如此,本发明的接收端使用秘密陷门来计算陷门延迟函数TDF并生成检索陷门,计算相同的结果需要的时间很短,不会影响接收端的用户体验。
优选地,初始化参数设置的程序内容的方式包括:
公开陷门T与秘密陷门π是彼此一一对应的。例如,公开陷门T与秘密陷门π是成对的。
除却构建TDF的接收端,其他人或其他终端不能根据公开陷门T得出秘密陷门π。同时,使用秘密陷门可以很容易的计算陷门延迟函数TDF,节省计算时间,从而不会影响接收端的用户体验。不仅如此,使用公开陷门计算TDF的时间开销显著且并行加速的效果可忽略,对于一个TDF实例,对于始终有TDF(x,T)=TDF(x,π)成立。这使得云服务器和发送端、接收端之间不需要建立安全通道,仅需要陷门延迟函数的验证就能够确认发送端生成可搜索密文的过程是否至少花费了接收端初始化阶段设定的时间开销。
优选地,陷门延迟函数TDF能够基于模N剩余类环构造。
优选地,构造陷门延迟函数TDF的方法包括:
根据欧拉数和上的运算性质,有 即TDF(x,T)=TDF(x,π)。大整数N的素因子分解是公认困难的,因此,根据N和T难以得到秘密陷门π。在仅有公开陷门T的情况下,计算TDF需要顺序执行T次模N的平方运算,时间开销大且满足预定延迟时间参数的要求。此外,对TDF计算过程并行加速的效果是可忽略的。
接收端进行初始化后,接收端将公开的信息发送至云服务器。发送端可从云服务器获取该公开信息。
例如,接收端初始化了一套参数。发送端根据从云服务器获取的公开的信息,以延迟的方式生成了可搜索密文。由于发送端不能获取到陷门延迟函数TDF的秘密陷门,因此发送端计算陷门延迟函数TDF的时间很长,实现了延迟加密。
接收端基于初始化后的秘密信息生成检索陷门。该检索陷门具备验证“发送端生成的可搜索密文是否按要求延迟”的能力。接收端有TDF秘密陷门,因此计算陷门延迟函数TDF的时间较短。
优选地,发送端2执行的程序中,生成可搜索密文Cw的具体子程序包括:
S22:计算Δ=TDF(H1(w),T),令C1=H3(e(H2(Δ)r,h));
S23:基于C0和C1生成可搜索密文Cw=(C0,C1)。
本发明的发送端2在生成可搜索密文的过程中引入了延时效果,增加了攻击者进行关键字猜测攻击的代价,有效应对了关键字猜测攻击。
在生成可搜索密文的过程中,陷门延迟函数TDF的计算导致了延迟,即计算Δ=TDF(H1(w),T)的过程消耗大量的时间开销;根据陷门延迟函数TDF的定义和功能要求,在仅知道公开陷门T的情况下计算TDF的时间开销显著且并行加速的效果可以忽略,该时间开销符合预定延迟时间参数的要求。虽然利用秘密陷门π可以快速计算TDF,但是除了TDF的构造方,其余人无法根据公开信息得到秘密陷门π,因此,恶意用户和攻击者也无法快速计算TDF,即无法缩短可搜索密文的生成时间。
优选地,接收端3执行程序中,基于私钥SK为待检索关键字W生成检索陷门Tw的子程序包括:
S41:计算Δ=TDF(H1(w),π);
S42:生成关键字w的陷门Tw=H2(Δ)s;
S43:向云服务器1发起搜索请求,即上传陷门Tw到云服务器1。
本发明的接收端3生成的陷门具有延迟验证功能,根据陷门延迟函数的定义,对于相同的关键字w,TDF(H1(w),T)=TDF(H1(w),π)恒成立;因此,本发明可以确保在检索阶段与该陷门匹配的可搜索密文的生成必定花费预定时间开销来计算TDF(H1(w),T)。
优选地,云服务器1基于检索陷门Tw检索所有可搜索密文的子程序包括:
S51:基于接收的检索陷门Tw检索所有可搜索密文。在可搜索密文(C0,C1)满足:H3(e(Tw,C0))=C1的情况下,则可搜索密文为包含关键字w的可搜索密文;该可搜索密文的生成必定花费预定时间开销计算TDF(H1(w),T)。
云服务器判断“检索陷门”和“可搜索密文”是否匹配。在此过程中,云服务器不知道陷门延迟函数TDF的值。
判断“检索陷门”和“可搜索密文”匹配的条件包括:
(1)两者含有相同的关键字;
(2)两者生成过程中,计算的陷门延迟函数TDF的值相同。
由于发送端不能以“高效/容易”的方式计算陷门延迟函数TDF,所以确保了发送端生成该可搜索密文花费了预定的时间;这个时间是由接收端初始化时的延迟时间参数确定的。
S52:将搜索到的对应的文件密文返回给接收端3。
实施例2
本实施例是对实施例1进一步说明,重复的内容不再赘述。
如图2所示,本发明的关键字可搜索延迟加密系统实施的关键字可搜索延迟加密方法的步骤至少包括:
S1:根据预设的安全参数和延迟时间参数构建对应的双线性映射和陷门延迟函数,并且根据双线性映射和陷门延迟函数的参数计算公钥PK和私钥SK。
S2:基于公钥PK为至少一个待上传文件的关键字W生成至少一个可搜索密文Cw。将待上传文件加密生成文件密文,最后将生成的可搜索密文和/或文件密文上传到云服务器1。
S3:云服务器1接收并存储可搜索密文和文件密文。
S4:基于私钥SK为待检索关键字W生成检索陷门Tw,并且将检索陷门发送给云服务器1。
S5:基于检索陷门检索所有可搜索密文,向接收端3返回符合条件的文件密文。
云服务器1基于收到的检索陷门Cw检索所有可搜索密文,找到对应的可搜索密文,进一步将对应的文件密文返回给接收端3。-
优选地,步骤S2还包括:
基于公钥PK为每一个待上传文件的关键字W生成至少一个可搜索密文Cw。
本发明通过在生成可搜索密文的过程中引入了延时效果,增加了攻击者进行关键字猜测攻击的代价,有效应对了关键字猜测攻击。
优选地,在上传密文之前,云服务器、发送端和接收端可以初始化系统,设置系统的各项参数。即通过步骤S1实现系统的初始化参数设置。
初始化系统的详细程序包括:
公开陷门T与秘密陷门π是彼此一一对应的。例如,公开陷门T与秘密陷门π是成对的。
除却构建TDF的一端,其他人或其他终端不能根据公开陷门T得出秘密陷门π。同时,使用秘密陷门可以很容易的计算陷门延迟函数TDF,节省计算时间,从而不会影响接收端的用户体验。不仅如此,使用公开陷门计算TDF的时间开销显著且并行加速的效果可忽略,对于一个TDF实例,对于始终有TDF(x,T)=TDF(x,π)成立。这使得云服务器和发送端、接收端之间不需要建立安全通道,仅需要陷门延迟函数的验证就能够确认发送端生成可搜索密文的过程是否至少花费了接收端初始化阶段设定的时间开销。
优选地,陷门延迟函数TDF能够基于模N剩余类环构造。
优选地,构造陷门延迟函数TDF的方法包括:
根据欧拉数和上的运算性质,有 即TDF(x,T)=TDF(x,π)。大整数N的素因子分解是公认困难的,因此,根据N和T难以得到秘密陷门π。在仅有公开陷门T的情况下,计算TDF需要顺序执行T次模N的平方运算,时间开销大且满足预定延迟时间参数的要求。此外,对TDF计算过程并行加速的效果是可忽略的。
S2:以延迟加密方法生成密文。
生成密文的具体步骤包括:
S22:计算Δ=TDF(H1(w),T),令C1=H3(e(H2(Δ)r,h));
S23:根据步骤S21和S22的结果,生成关键字w的可搜索密文Cw=(C0,C1)。
S24:加密待上传文件得到文件密文,发送端上传可搜索密文和文件密文到云服务器。
S3:云服务器接收并存储发送端上传的可搜索密文和文件密文。
S4:生成检索陷门并发起搜索请求。
生成检索陷门的具体步骤包括:
S41:计算Δ=TDF(H1(w),π);
S42:根据步骤S41的结果生成关键字w的陷门Tw=H2(Δ)s;
S43:接收端上传陷门Tw到云服务器,即发起搜索请求。
本发明通过在接收端生成并向云服务器发送具有延迟验证功能的陷门,由云服务器执行检索,判断密文中是否含有相应关键字并验证发送方的工作量。根据陷门延迟函数的定义,对于相同的关键字w,TDF(H1(w),T)=TDF(H1(w),π)恒成立;因此,可以确保在检索阶段与该陷门匹配的可搜索密文的生成必定花费预定时间开销计算TDF(H1(w),T)。
S5:检索密文并返回结果。
检索密文的步骤包括:
S51:云服务器使用收到的检索陷门Tw检索所有可搜索密文,如果可搜索密文(C0,C1)满足:H3(e(Tw,C0))=C1,则此为包含关键字w的可搜索密文;其中,匹配的可搜索密文的生成至少花费了接收端初始化阶段设定的时间开销,使得攻击者实施关键字猜测攻击的代价极大地增加,有效应对了关键字猜测攻击。
S52:云服务器根据找到的可搜索密文,将对应的文件密文返回给接收端。
在云服务器1、发送端2和接收端3之间的通信过程中,本发明对服务器和关键字空间分布没有特殊要求,也不需要复杂的身份识别与管理。因此,本发明在用户和云服务器之间不需要建立安全信道;也不需要指定云服务器为完全可信;不需要关键字空间分布的先验知识;不需要严格地对用户进行可信度管理。相比已有应对关键字猜测攻击的方法,本发明更加符合真实世界中关键字检索的应用需求,其执行效果可以达到实用级别。
需要注意的是,上述具体实施例是示例性的,本领域技术人员可以在本发明公开内容的启发下想出各种解决方案,而这些解决方案也都属于本发明的公开范围并落入本发明的保护范围之内。本领域技术人员应该明白,本发明说明书及其附图均为说明性而并非构成对权利要求的限制。本发明的保护范围由权利要求及其等同物限定。
本发明说明书包含多项发明构思,申请人保留根据每项发明构思提出分案申请的权利。本发明说明书包含多项发明构思,诸如“优选地”、“根据一个优选实施方式”或“可选地”均表示相应段落公开了一个独立的构思,申请人保留根据每项发明构思提出分案申请的权利。
Claims (10)
1.一种关键字可搜索延迟加密方法,其特征在于,所述方法至少包括:
基于公钥PK为至少一个待上传文件的关键字w以延迟加密的方式生成可搜索密文Cw和/或文件密文并上传至云服务器;
将基于私钥SK为待检索关键字w生成的至少一个检索陷门Tw发送至云服务器,
云服务器基于所述检索陷门Tw对所有所述可搜索密文Cw进行检索以获得对应的所述可搜索密文Cw,基于检索得到的可搜索密文Cw确定对应的文件密文并反馈至接收端。
2.根据权利要求1所述的关键字可搜索延迟加密方法,其特征在于,所述生成可搜索密文Cw和/或文件密文的方法至少包括:
基于公钥PK为至少一个待上传文件的每一个关键字w以延迟加密的方式生成可搜索密文Cw,加密待上传文件生成所述文件密文。
4.根据权利要求3所述的关键字可搜索延迟加密方法,其特征在于,基于私钥SK为待检索关键字w生成至少一个检索陷门Tw的方法至少包括:
计算Δ=TDF(H1(w),π);
生成关键字w的陷门Tw=H2(Δ)s;
其中,TDF表示陷门延迟函数,w表示待检索关键字,H1表示第一密码学哈希函数,H2表示第二密码学哈希函数,π表示陷门延迟函数的秘密陷门,s表示检索私钥。
5.根据权利要求1~4任一项所述的关键字可搜索延迟加密方法,其特征在于,基于所述检索陷门Tw对所有所述可搜索密文Cw进行检索的方法包括:
基于接收的检索陷门Tw检索所有可搜索密文;
在可搜索密文(C0,C1)满足:H3(e(Tw,C0))=C1的情况下,可搜索密文(C0,C1)为包含关键字w的可搜索密文。
6.根据权利要求5所述的关键字可搜索延迟加密方法,其特征在于,所述方法还包括初始化参数设置;其中,
基于预设的安全参数和延迟时间参数构建对应的双线性映射和陷门延迟函数,并且根据双线性映射和陷门延迟函数的参数计算公钥PK和私钥SK。
8.一种关键字可搜索延迟加密系统,其特征在于,所述系统至少包括:云服务器(1)以及与所述云服务器(1)分别建立通信的发送端(2)和接收端(3),
所述发送端(2)基于公钥PK为至少一个待上传文件的关键字w以延迟加密的方式生成可搜索密文Cw和/或文件密文并上传至云服务器;
所述接收端(3)将基于私钥SK为待检索关键字w生成的至少一个检索陷门Tw发送至云服务器,
所述云服务器基于所述检索陷门Tw对所有所述可搜索密文Cw进行检索以获得对应的所述可搜索密文Cw,基于检索得到的可搜索密文Cw确定对应的文件密文并反馈至接收端。
10.根据权利要求8所述的关键字可搜索延迟加密系统,其特征在于,接收端(3)基于私钥SK为待检索关键字w生成至少一个检索陷门Tw的方法至少包括:
计算Δ=TDF(H1(w),π);
生成关键字w的陷门Tw=H2(Δ)s;
其中,TDF表示陷门延迟函数,w表示待检索关键字,H1表示第一密码学哈希函数,H2表示第二密码学哈希函数,π表示陷门延迟函数的秘密陷门,s表示检索私钥。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110186704.2A CN112861153A (zh) | 2021-02-10 | 2021-02-10 | 一种关键字可搜索延迟加密方法及系统 |
US17/444,613 US11784815B2 (en) | 2021-02-10 | 2021-08-06 | Method of time-delay encryption with keyword search and system using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110186704.2A CN112861153A (zh) | 2021-02-10 | 2021-02-10 | 一种关键字可搜索延迟加密方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112861153A true CN112861153A (zh) | 2021-05-28 |
Family
ID=75988147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110186704.2A Pending CN112861153A (zh) | 2021-02-10 | 2021-02-10 | 一种关键字可搜索延迟加密方法及系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11784815B2 (zh) |
CN (1) | CN112861153A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312643A (zh) * | 2021-06-09 | 2021-08-27 | 杭州趣链科技有限公司 | 基于sm2和sm3算法的关键字匹配方法 |
CN114422114A (zh) * | 2021-12-08 | 2022-04-29 | 河南大学 | 基于多时间服务器的时控性加密方法和系统 |
CN114884700A (zh) * | 2022-04-18 | 2022-08-09 | 华中科技大学 | 抗关键字猜测攻击的可搜索公钥加密批处理方法及系统 |
CN115021993A (zh) * | 2022-05-27 | 2022-09-06 | 山东大学 | 一种可验证的公钥可搜索加密系统及方法 |
CN115333845A (zh) * | 2022-08-19 | 2022-11-11 | 南京理工大学 | 基于子集的隐私数据验证方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10348693B2 (en) * | 2009-12-15 | 2019-07-09 | Microsoft Technology Licensing, Llc | Trustworthy extensible markup language for trustworthy computing and data services |
EP2945313B1 (en) * | 2013-01-12 | 2017-09-06 | Mitsubishi Electric Corporation | Key generation device, key generation program, concealed data search system, and key distribution method |
SG11201704440QA (en) * | 2015-02-03 | 2017-06-29 | Visa Int Service Ass | Secure multi-channel communication system and method |
CN108200063B (zh) * | 2017-12-29 | 2020-01-03 | 华中科技大学 | 一种可搜索公钥加密方法、采用该方法的系统和服务器 |
CN108449309B (zh) * | 2018-01-19 | 2019-08-20 | 华中科技大学 | 一种混合型可搜索加密方法和系统 |
GB2580406B (en) * | 2019-01-10 | 2022-12-21 | City Univ Of London | A client-server computer system |
-
2021
- 2021-02-10 CN CN202110186704.2A patent/CN112861153A/zh active Pending
- 2021-08-06 US US17/444,613 patent/US11784815B2/en active Active
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312643A (zh) * | 2021-06-09 | 2021-08-27 | 杭州趣链科技有限公司 | 基于sm2和sm3算法的关键字匹配方法 |
CN114422114A (zh) * | 2021-12-08 | 2022-04-29 | 河南大学 | 基于多时间服务器的时控性加密方法和系统 |
CN114422114B (zh) * | 2021-12-08 | 2023-08-11 | 河南大学 | 基于多时间服务器的时控性加密方法和系统 |
CN114884700A (zh) * | 2022-04-18 | 2022-08-09 | 华中科技大学 | 抗关键字猜测攻击的可搜索公钥加密批处理方法及系统 |
CN114884700B (zh) * | 2022-04-18 | 2023-04-28 | 华中科技大学 | 抗关键字猜测攻击的可搜索公钥加密批处理方法及系统 |
CN115021993A (zh) * | 2022-05-27 | 2022-09-06 | 山东大学 | 一种可验证的公钥可搜索加密系统及方法 |
CN115021993B (zh) * | 2022-05-27 | 2023-02-28 | 山东大学 | 一种可验证的公钥可搜索加密系统及方法 |
CN115333845A (zh) * | 2022-08-19 | 2022-11-11 | 南京理工大学 | 基于子集的隐私数据验证方法 |
CN115333845B (zh) * | 2022-08-19 | 2024-04-12 | 南京理工大学 | 基于子集的隐私数据验证方法 |
Also Published As
Publication number | Publication date |
---|---|
US20220255744A1 (en) | 2022-08-11 |
US11784815B2 (en) | 2023-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109614818B (zh) | 可授权的基于身份的带关键词搜索加密方法 | |
CN112861153A (zh) | 一种关键字可搜索延迟加密方法及系统 | |
CN108200063B (zh) | 一种可搜索公钥加密方法、采用该方法的系统和服务器 | |
CN107256248B (zh) | 云存储安全中基于通配符的可搜索加密方法 | |
Zhu et al. | An efficient and privacy-preserving biometric identification scheme in cloud computing | |
CN109086615A (zh) | 一种抗关键字猜测攻击的支持多关键字搜索公钥加密方法 | |
Kerschbaum | Collusion-resistant outsourcing of private set intersection | |
CN111930688B (zh) | 云服务器中多关键词查询的密态数据可搜索方法及装置 | |
CN108924103B (zh) | 面向云存储的基于身份的在线/离线可搜索加密方法 | |
Chenam et al. | A designated cloud server-based multi-user certificateless public key authenticated encryption with conjunctive keyword search against IKGA | |
Saldamli et al. | Private proximity testing with an untrusted server | |
CN108390760B (zh) | 一种云数据传输中端到端的公钥关键字可搜索加密方法 | |
CN109040060B (zh) | 终端匹配方法和系统、计算机设备 | |
US8528060B2 (en) | Method and system for password protocols in the bounded retrieval mode with security dictionary attacks and intrusions | |
CN114124371A (zh) | 一种基于无证书的满足mtp安全的公钥可搜索加密方法 | |
CN114417073B (zh) | 一种加密图的邻居节点查询方法及装置、电子设备 | |
CN109274659B (zh) | 一种无证书的在线/离线可搜索密文方法 | |
CN112560075B (zh) | 一种基于椭圆曲线的轻量级可搜索加密方法及装置 | |
Gu et al. | Public key encryption with keyword search from lattices | |
CN106230840A (zh) | 一种高安全性的口令认证方法 | |
CN115021993B (zh) | 一种可验证的公钥可搜索加密系统及方法 | |
KR101217491B1 (ko) | 공개키 기반의 키워드 검색 방법 | |
Saito et al. | Designated-senders public-key searchable encryption secure against keyword guessing attacks | |
CN108259172B (zh) | 云存储系统中的密文搜索方法 | |
JP5799635B2 (ja) | 暗号データ検索システム、装置、方法及びプログラム |
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 |