CN106330865B - 云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统 - Google Patents
云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统 Download PDFInfo
- Publication number
- CN106330865B CN106330865B CN201610662419.2A CN201610662419A CN106330865B CN 106330865 B CN106330865 B CN 106330865B CN 201610662419 A CN201610662419 A CN 201610662419A CN 106330865 B CN106330865 B CN 106330865B
- Authority
- CN
- China
- Prior art keywords
- attribute
- user
- management server
- index
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000007246 mechanism Effects 0.000 claims abstract description 22
- 238000013475 authorization Methods 0.000 claims abstract description 10
- 230000008569 process Effects 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 8
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000011217 control strategy Methods 0.000 claims 1
- 238000007726 management method Methods 0.000 description 46
- 238000005516 engineering process Methods 0.000 description 4
- 208000017520 skin disease Diseases 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- MKXZASYAUGDDCJ-NJAFHUGGSA-N dextromethorphan Chemical compound C([C@@H]12)CCC[C@]11CCN(C)[C@H]2CC2=CC=C(OC)C=C21 MKXZASYAUGDDCJ-NJAFHUGGSA-N 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 208000019423 liver disease Diseases 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0478—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computational Linguistics (AREA)
- Algebra (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种云环境下支持高效撤销的属性基关键字搜索方法,包括以下步骤:(1)系统初始化,管理服务器生成公钥及主密钥;(2)新用户完成在可信第三方和授权机构的注册,获得注册密钥及属性主密钥;(3)数据拥有者生成加密文件和索引,分别发送给云服务器和管理服务器,管理服务器重加密该索引并发送给云服务器;(4)为了在查询阶段验证用户身份,云服务器生成查询标记;(5)用户生成加密陷门发送给管理服务器,管理服务器重加密接收到的陷门,发送给云服务器;(6)云服务器接收到加密索引及陷门,进行关键字搜索;(7)完成用户属性撤销。本发明基于属性加密机制实现了可搜索加密,保护了用户隐私的同时,降低了用户开销。
Description
技术领域
本发明涉及云计算安全技术,具体涉及一种云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统。
背景技术
目前,云计算已经成为一个新的企业IT结构。许多公司已经将他们的应用程序和数据库放到云服务器上,并开始享受云计算带来的许多无可比拟的优势,例如灵活性的计算资源配置,普遍灵活的访问,节约大量的资源成本等等。但是,隐私问题仍然是阻碍云计算被更加广泛应用的一个主要障碍。当敏感数据被外包到云服务器时,数据拥有者自然会担心他们的数据隐私。外包之前加密一直是一个被视为在云服务器上保护数据隐私的基本方法。但是,如何让这些加密过的数据被高效的使用又成为了另外一个挑战。这个问题得到了很大的重视和很多的关注,从安全可搜索数据加密、安全功能评估,到完全同态加密系统,都在理论上提供了一般解决这个问题的方法,但是由于实际情况的复杂性,仍然很难较好的解决这个问题。
可搜索加密是近来发展的一个用来有效搜索存储在云服务器上的数据的基本方法。在可搜索加密中,数据拥有者加密所有文件以及与其相关联的关键字并外包到云服务器上。搜索用户会生成一些加密陷门,其中包含了用户感兴趣的并且已经存储在云上的关键字。最后,经过云服务器的搜索操作,返回给用户匹配到的结果。为了提高搜索的准确度,提出的可搜索加密方案应该支持多关键字搜索,而不是只支持单关键字搜索。而且,为了使可搜索加密方案支持更多的实际应用场景,例如多数据拥有者和多用户,我们的方案应该支持搜索授权,这意味着云服务器仅仅会返回搜索结果给已获得权限的用户。
与单个数据拥有者方案相比,建立一个完全成熟的多数据拥有者方案将会面临许多的挑战。第一,在单数据拥有者方案中,数据拥有者不得不一直保持在线状态去为用户生成加密索引。但是,当有大量的数据拥有者参与进来的时候,让他们同时在线生成索引将会大大影响整个系统的灵活性和可用性。第二,没有人会愿意与他人分享自己的密钥,不同的数据拥有者会使用它们自身的密钥去加密他们需要加密的数据。因此,在使用不同的密钥加密数据的情况下,实现安全、灵活、高效的密文搜索是非常具有挑战性的。第三,当系统中存在多数据使用者时,应该确保系统拥有高效的用户注册和撤销机制,使系统具有良好的安全性和可扩展性。
基于属性加密(ABE)的提出解决了上述的问题。一个ABE方案中,每一个用户都用一个属性集合来标识自己的身份,同时一些有关这个属性集的函数、策略都被用来决定用户的解密能力。根据访问策略的不同,ABE分为两种类型——密钥策略的属性加密方案(Key-policy attribute-based encryption,KP-ABE)和密文策略的属性加密方案(ciphertext-policy attribute-based encryption,CP-ABE)。在KP-ABE中,访问控制策略与用户私钥绑定,而数据拥有者提供属性集合来加密消息;相反在CP-ABE中,属性集合与用户私钥绑定,而数据拥有者以访问控制策略来加密消息。
发明内容
发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统。
技术方案:本发明所述的一种云环境下支持高效撤销的属性基关键字搜索方法,包括以下步骤:
(1)系统初始化和建立多个属性授权机构,管理服务器生成公钥及主密钥,属性授权机构生成属性公钥和属性私钥;
(2)新用户完成在可信第三方和属性授权机构的注册,获得注册密钥及属性主密钥;
(3)数据拥有者使用属性加密机制生成加密文件和索引,分别发送给云服务器和管理服务器,管理服务器用其私钥重加密该索引并发送给云服务器;
(4)为了在查询阶段验证用户身份,防止用户合谋,云服务器生成查询标记;
(5)用户使用属性加密机制生成加密陷门并发送给管理服务器,管理服务器重加密接收到的陷门并生成Sf,同时发送给云服务器;
(6)云服务器接收到加密索引及陷门,进行关键字搜索;
(7)待用户完成搜索任务后,进行用户撤销。
进一步的,所述步骤(1)的具体过程为:
(11)可信第三方执行初始化算法,得到系统公钥和主密钥,即管理服务器得到系统公钥和主密钥:由TA执行系统初始化算法,输入安全参数λ,生成两个生成元为g的p阶循环群G1、G2,一个双线性配对e:G1×G1→G2,和一个抗碰撞哈希函数H:{0,1}*→Zp,TA随机选择一个参数γ∈Zp,g1∈G1,g2∈G1,计算g3=g2 γ,公钥PK:={e,g1,g2,g3,H},并且生成主秘钥MSK:=γ;
(12)属性授权机构获得公钥和属性集,得到属性私钥和属性公钥:向CAs输入公钥PK和属性集合,生成相对TA保密的属性私钥AMKj=tj和属性公钥CAs将属性公钥APKj提交给TA并自己拥有属性私钥AMKj。
进一步的,所述步骤(2)的具体过程为:
(21)可信第三方生成相对用户保密的私钥SKi,并为需要注册的用户颁发注册密钥RKi;
(22)用户获得注册密钥后,在属性授权机构进行属性注册,属性授权机构进行认证并为该用户颁发属性主密钥ASKi,j。
进一步的,所述步骤(3)的具体过程为:
(31)数据拥有者为要加密的文件定义一个树形访问控制结构Ψ,并构造访问树T;
(32)数据拥有者使用属性加密机制加密索引;
(33)数据拥有者得到初步加密的索引后,将该索引发送给管理服务器,管理服务器用自身的私钥重加密索引。
进一步的,所述步骤(4)的具体过程为:(41)云服务器构造一个访问策略同样为Ψ的访问树Ti,并计算得到查询标记QTi,Ψ。
进一步的,所述步骤(5)的具体过程为:
(51)用户利用属性私钥,分别针对访问树T、Ti计算得到拉格朗日系数,再递归地计算得到访问树T、Ti的拉格朗日插值FR、LR;
(52)用户利用属性加密机制加密陷门;
(53)用户将初步加密后的陷门发送给管理服务器,管理服务器对接收到的陷门进行重加密,同时生成Sf。
进一步的,所述步骤(6)的具体过程为:
(61)管理服务器将发送给云服务器;
(62)判断用户陷门与数据拥有者的索引属性是否相符;
用户通过步骤(51)计算得到LR=e(RKi,g2)β;云服务器重计算L′R=e(RKi,g2)β;云服务器通过判断LR与L′R、与Y2是否相等来判定陷门与索引的属性是否相符,其中FR=e(g1,g2)α,Y1=g2 α,Y2=e(E1,g2 s)α;
(63)匹配用户陷门中的关键字与索引中的关键字:
云服务器通过计算等式e(E1,T3)=e(E2,T1)·e(Sf,T2)是否成立来匹配关键字,
其中,E2=g1 α·β,若等式成立,则匹配成功;反之,则匹配失败。
进一步的,所述步骤(7)的具体过程为:
(71)用户撤销:管理服务器更新存储在云服务器上的Sf,即更新管理服务器自身的私钥;
(72)用户属性撤销:管理服务器更新Sf,属性授权机构更新系统属性私钥,生成新的用户属性私钥。
本发明还公开了一种云环境下支持高效撤销的属性基关键字搜索方法的云计算应用系统,包括数据拥有者、管理服务器、用户、多属性授权机构以及云服务器加,其中,数据拥有者分别发送加密文件集和密索引给云服务器和管理服务器;新用户在管理服务器进行注册,并从属性授权机构获得属性私钥,然后发送加密陷门给管理服务器;管理服务器重加密获得的索引及陷门并发给云服务器;在云服务器上进行关键字搜索操作。
有益效果:与现有技术相比,本发明具有以下的优点:
1.本发明考虑了在实际场景中使用可搜索加密技术时经常会出现的系统可扩展性问题,由于单个用户、单个数据拥有者的系统结构的适用性不强,而在实际场景中,经常会有用户、数据拥有者加入、退出系统,本发明在利用属性加密的基础上,构造了可扩展的多关键字可搜索加密方法,能够支持多数据拥有者和多用户的系统结构。
2.本发明考虑了在可搜索加密技术下,用户的搜索权限问题,数据拥有者上传数据后,只有符合数据拥有者设定的权限的用户才能搜索数据。本发明设置了分布式的多属性授权机构,对系统中的用户进行属性授权,每个用户都有由属性授权机构颁发的属性主密钥ASKi,j,用来证明该用户拥有某个属性,从而可以判断用户是否拥有搜索数据的权限,以防非法用户攻击,防止了恶意用户可能对系统造成的威胁。
3.本发明考虑了用户在完成搜索任务后的撤销问题。管理服务器更新存储在云服务器上的Sf,用户无法生成正确的陷门,使得用户在搜索阶段始终无法获得搜索结果,起到撤销整个用户的作用。若只是针对用户某个属性进行撤销,在本发明中,使管理服务器更新Sf,属性授权机构针对剩余属性重新颁发用户属性私钥即可。
综上所述,本发明基于属性加密机制实现了可搜索加密,保护了用户隐私的同时,降低了用户开销。
附图说明
图1为本发明的整体流程图;
图2为本发明所应用的系统功能模块示意图;
图3为本发明中步骤(3)的具体流程图;
图4为本发明的步骤(5)的具体流程图;
图5为本发明中步骤(7)的具体流程图。
具体实施方式
下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
此处,对发明的技术术语进行解释和说明:
数据拥有者:数据集的拥有者,需要将数据集和查询索引加密后外包到云服务器;
用户:需要从数据拥有者上传的数据中搜索到自己想要的数据;
管理服务器:在发明中起到了可信第三方的作用,同时重加密数据拥有者和用户上传的加密索引和陷门,并用于用户撤销;
云服务器:存储数据拥有者的数据集,会忠实地执行用户发出的搜索请求,但有可能窥探数据拥有者的数据隐私和用户的查询隐私;
属性授权机构:对用户进行属性认证,使用户获得搜索权限,同时为数据拥有者颁发密钥加密数据;
数据集:数据拥有者需要上传至云端的数据;
属性加密机制:基于属性加密(ABE),又称模糊的基于身份的加密(FuzzyIdentity-Based Encryption)。它把身份标识被看作是一系列的属性。IBE中解密者,只有当自己的身份信息和信息加密者描述的信息是一致的时候,才可以解密加密者加密的信息。和IBE不同的是,采用基于属性加密后,当用户拥有的属性超过加密者所描述的预设门槛时,用户是可以解密的。但这种基于预设门槛的方案不具有通用性。
公钥:由可信第三方生成并公开;
主密钥:由可信第三方生成且仅由可信第三方持有;
注册密钥:由可信第三方生成,用于生成用户标识;
属性主密钥:由属性授权机构生成,用于证明用户拥有某个属性;
属性私钥:属性授权机构本发给用户、数据拥有者的密钥,不同的对象获得的属性私钥不同,用于执行加密操作;
以下结合实施例和附图对本发明做进一步说明。
如图1所示,本发明的云环境下支持高效撤销的属性基关键字搜索方法,包含以下步骤:
(1)系统初始化和建立多个属性授权机构,管理服务器生成公钥及主密钥,授权机构生成属性公、私钥;
(2)新用户完成在可信第三方和属性授权机构的注册,获得注册密钥及属性主密钥;
(3)数据拥有者使用属性加密机制生成加密文件和索引,分别发送给云服务器和管理服务器,管理服务器用其私钥重加密该索引并发送给云服务器;
(4)为了在查询阶段验证用户身份,防止用户合谋,云服务器生成查询标记;
(5)用户使用属性加密机制生成加密陷门并发送给管理服务器,管理服务器重加密接收到的陷门并生成Sf,同时发送给云服务器;
(6)云服务器接收到加密索引及陷门,进行关键字搜索;
(7)待用户完成搜索任务后,进行用户撤销。
如图2所示,将上述云环境下支持高效撤销的属性基关键字搜索方法应用于云计算系统,该系统包括数据拥有者、管理服务器、用户、多属性授权机构以及云服务器。
本发明的详细步骤为:
步骤(1)具体实施过程如下:
由TA执行系统初始化算法,输入安全参数λ,生成两个生成元为g的p阶循环群G1、G2,一个双线性配对e:G1×G1→G2,和一个抗碰撞哈希函数H:{0,1}*→Zp,TA随机选择一个参数γ∈Zp,g1∈G1,g2∈G1,计算g3=g2 γ,公钥PK:={e,g1,g2,g3,H},并且生成主秘钥MSK:=γ。
向CAs输入公钥PK和属性集合,生成相对TA保密的属性私钥AMKj=tj和属性公钥CAs将属性公钥APKj提交给TA并自己拥有属性私钥AMKj。
步骤(2)具体实施过程如下:
1.如果一个搜索用户Ui在系统中是合法的,TA首先会为该用户分配一个注册秘钥RKi,用于生成用户标识,并生成秘钥SKi且相对该用户保密,此时,TA选择一个随机参数xi∈Zp,令SKi=xi,然后,TA计算并将RKi提交给该用户。
2.用户获得注册秘钥RKi后,根据自己的需求向属性认证机构(CAs)提出属性认证申请,CAs在接到申请后会生成一个用户属性主密钥ASKi,j用于证明用户i拥有属性j,当接收到该用户的RKi后,CAs计算ASKi,j=RKi 1/AMKj并传递给该用户。
如图3所示,步骤(3)具体实施过程如下:
1.给定文件Fi,k的第h个关键字,i.e,wk,h,数据拥有者选择两个随机数α,β∈Zp并计算E2=g1 α·β。数据拥有者定义文件Fi,k的访问控制策略Ψ为一个访问树T,然后首先为树T中的每个节点x(包括叶子节点)选择一个多项式qx。这些多项式根据以下方式从根节点R开始自上而下的选取。对于树中的每个节点x,设置多项式qx的阶dx比该节点的门限值少1,也就是说,dx=kx-1。
2.从根节点R开始,数据拥有者首先令qR(0)=α。然后,多项式qR在其他dR个点的值完全进行随机选取实现访问树T完整的定义。对于任一其他的节点x,令qx(0)=qparent(x)(index(x))并且随机选择dx其他点来完整定义qx。对于每个叶子节点Lj,计算为了便于描述和理解,令 加密索引表示如下:
3.数据拥有者计算出后,将其传递给管理服务器,管理服务器获得后,用其私钥k1和k2进一步对进行重加密,并且计算Y1=g2 α,Y2=e(E1,g2 s)α。因此,更新后的加密索引管理服务器进一步将传递给云服务器。
步骤(4)具体实施过程如下:
为了在查询阶段验证用户身份,防止用户合谋,云服务器会生成一个查询标记QTi,Ψ。首先,云服务器随机选择β∈Zp,与步骤(3)中相同,服务器构造一个访问策略同样为Ψ的访问树Ti。对于任意一个节点N∈T,选择多项式QN(X),令QR(0)=β。对于Ti中的每个叶子节点Lj,服务器计算计算出
如图4所示,步骤(5)具体实施过程如下:
1.当用户Ui在CAs上进行注册时,生成一个用户属性私钥ASKi,j,表示用户i拥有属性j,计算对于集合ASi中的属性j,计算 用户针对访问树T、Ti,计算其拉格朗日系数其中|IND|:=Threshold(Parent(N)),然后递归地计算当用户Ui拥有足够的属性时,最终得到访问树T、Ti的拉格朗日插值FR=e(g1,g2)α、LR=e(RKi,g2)β。
2.如果想要搜索关键字wh′,用户选择一个随机参数ri,加密陷门表示如下:
3.用户计算出TΨ,w后,将其传递给管理服务器,管理服务器获得TΨ,w后,随机生成一个参数rf,利用私钥k1,k2进一步重加密TΨ,w,计算为方便表示,令 同时管理服务器生成管理服务器进一步将Sf传递给云服务器。
步骤(6)具体实施过程如下:
1.云服务器存储所有经过属性加密的文件和不同数据所有者的关键词,管理服务器同时也会将Sf存储至云服务器。在接收到一个查询请求时,云将在所有这些数据主的数据中进行搜索,同时重新计算L′R=e(RKi,g2)β。
2.计算是否等于Y2且判定
3.当云服务器获得陷门T(wh′)和加密索引后,首先计算
然后,根据计算下列等式是否成立,即判断wh′=wk,h是否成立,判断搜索是否成功。
如图5所示,步骤(7)具体实施过程如下:
1.用户撤销:在撤销一个用户时,只需管理服务器更新存储在云服务器上的Sf。如Trapdoor Generation所示,(k1,k2为管理服务器的私钥),当管理服务器更新Sf时,即更新私钥k1,k2,用户就无法生成正确的的陷门因此,用户在Search阶段始终无法成功搜索,相当于该用户已被撤销。
2.用户属性撤销:管理服务器更新Sf,CAs更新tj,产生新的用户属性私钥ASKi,j,重新注册即可。
验证分析
(1)安全性分析
1.关键字语义安全
给出一个概率多项式时间敌手А,在多项式时间内,А向挑战者B询问他提交的关键字密文。然后,А发送两个先前未被改变的关键字ω0,ω1给B。B随机选择μ∈{0,1},并返回一个加密的关键字给А。А继续向B询问关键字ω的密文,唯一的限制是ω既不是ω0也不是ω1。最后,А输出他有关μ的猜想μ′。此处,定义А攻破ABESK的有利条件为如果AdvA是可忽略的,则本发明可抵抗选择关键字攻击。
2.关键字保密
给出一个概率多项式时间敌手А,在t时间内,А向挑战者B询问他查询的关键字密文。然后,B随机选择一个关键字ω*并将其加密为传递给А。А给出关于ω*的猜测ω′,如果ω′=ω*,则敌手获胜。此处,定义А攻破关键字保密的概率为AdvA=Pr[ω′=ω*],如果(其中ε是可忽略的参数,t代表А知道的关键字数量,u代表关键字字典的大小),那么本发明能够实现关键字保密。
3.陷门不可链接性
由于查询用户想要掩藏真正查询的内容,所以陷门在被传至云服务器之前应该先做加密处理。但是,如果陷门产生函数是固定的,那么其生成的包含同样关键字的陷门也会相同,这些陷门揭示了用户在云服务器上的搜索信息。在一般的模型中,云服务器会知道陷门的统计值并且进一步确认他们中所包含的关键字。因此,陷门产生函数应该是随机的。在本发明方案中,陷门的产生分为两个阶段。在第一阶段,用户会选择一个随机参数ri生成初始化陷门TΨ,w;第二阶段,TΨ,w被传至管理服务器后,管理服务器会随机生成一个参数rf对Tψ,w进行重加密,生成陷门在完整的陷门生成过程中,用户和管理服务器分别使用了两个随机参数,所以即使陷门中包含相同的关键字,每次加密也都会产生不同的结果。也就是说,云服务器不能推断出陷门之间的任何联系。
4.抵抗合谋
在系统初始化阶段,CAs会根据公钥PK和属性集生成相对用户保密的属性密钥AMKj;等到新用户注册时,TA会计算出注册密钥RKi并提交给CAs,CAs根据AMKj和RKi计算出用户的主属性私钥ASKi,j。这里面,当每次有新用户注册时,TA都会选择一个随机参数xi来生成注册密钥RKi。因此,即使两个不同的用户拥有相同的属性集,也会得到不同的用户属性私钥。然而仅仅是使属性集相同的用户拥有不同的属性密钥是不能够完全抵抗合谋攻击的,这时云服务器会使用注册密钥RKi生成一个查询标记QTi,Ψ表示用户i可以搜索以访问控制策略Ψ加密的关键字。服务器通过检查QTi,Ψ再一次检查发出搜索请求的用户的注册密钥RKi,从而验证搜索用户提供的陷门是由同一人创建的,实现了抵抗合谋攻击。
(2)效率分析
本发明中,定义Tg表示G1中一次求幂操作的时间;Tgt表示G2中一次求幂操作的时间;Th表示G1中一次哈希映射的时间;Tp表示一个双线性对操作时间。我们忽略乘法和其他哈希操作。定义n代表数据拥有者定义在文件的访问策略中的属性个数;N表示整个系统中的属性个数;s表示搜索用户拥有的属性个数。表1分别从索引生成、陷门生成、关键字搜索和用户撤销四个方面的计算复杂度进行对比:
表1计算复杂度比较
Sun’s | ARMS | 本发明 | |
索引 | (N+1)T<sub>g</sub>+T<sub>gt</sub> | (2n+5)T<sub>g</sub>+T<sub>gt</sub>+nT<sub>h</sub> | (2n+6)T<sub>g</sub>+Tgt+T<sub>h</sub>+Tp |
陷门 | (2N+1)T<sub>g</sub> | (2s+4)T<sub>g</sub> | (2s+2)T<sub>p</sub>+2sT<sub>gt</sub>+3Tg+2T<sub>h</sub> |
搜索 | (N+1)T<sub>p</sub>+T<sub>gt</sub> | (2n+3)T<sub>p</sub>+nT<sub>gt</sub>+2nT<sub>g</sub> | 4T<sub>p</sub>+T<sub>h</sub>+T<sub>g</sub> |
撤销 | (αN<sub>c</sub>T<sub>g</sub>)+βN<sub>s</sub>T<sub>g</sub> | (3s+2)T<sub>g</sub>+sT<sub>h</sub> | sT<sub>g</sub> |
从表1可以看出Sun等人的方案在上面四个方面的计算复杂度要高于ARMS和本发明。本发明虽然在陷门生成时计算复杂度比ARMS稍高,但在其他三个方面要优于或近似于ARMS,总体而言,本发明在计算复杂度上要优于其他两个方案。
实施例:
本发明可以应用在类似于下面的例子中:
某医院将医疗数据上传至云平台用于研究,设定三甲医院的医生或者研究所的研究员可以访问这些数据,该医院在上传数据之前使用不同的关键字标识不同类别的数据,如皮肤病类、肝病类等等。
假使某皮肤病研究所的研究员想要获取这家医院的皮肤病类的数据,现有的基于属性的访问控制技术要想解决该问题通常做法是去云端访问到这家医院的全部数据,然后下载到本地解密后才能挑出所需的皮肤病类数据。而应用本发明中的技术方案不仅可以在云端访问到这些数据,还可以直接在云端执行关键字搜索功能,最后仅仅下载自己所需的文件,有效的降低通信成本。
上述实施例可扩展到多家医院同时上传他们的数据,并使用不同的访问控制结构,在数据上传前对数据进行加密处理。此时,医院会公开他们的访问结构,查询者可根据访问结构快速定位其想要搜索密文的位置。
Claims (7)
1.一种云环境下支持高效撤销的属性基关键字搜索方法,其特征在于:包括以下步骤:
(1)系统初始化和建立多属性授权机构,管理服务器生成公钥及主密钥,属性授权机构生成属性公钥和属性私钥,具体方法为:
(11)可信第三方执行初始化算法,得到系统公钥和主密钥,即管理服务器得到系统公钥和主密钥:由TA执行系统初始化算法,输入安全参数λ,生成两个生成元为g的p阶循环群G1、G2,一个双线性配对e:G1×G1→G2,和一个抗碰撞哈希函数H:{0,1}*→Zp,TA随机选择一个参数γ∈Zp,g1∈G1,g2∈G1,计算g3=g2 γ,公钥PK:={e,g1,g2,g3,H},并且生成主秘钥MSK:=γ;
(12)属性授权机构获得公钥和属性集,得到属性私钥和属性公钥:向CAs输入公钥PK和属性集合,生成相对TA保密的属性私钥AMKj=tj和属性公钥CAs将属性公钥APKj提交给TA并自己拥有属性私钥AMKj;
(2)新用户完成在可信第三方和属性授权机构的注册,获得注册密钥及属性主密钥,具体方法为:
(21)可信第三方生成相对用户保密的私钥SKi,并为需要注册的用户颁发注册密钥RKi;
(22)用户获得注册密钥后,在属性授权机构进行属性注册,属性授权机构进行认证并为该用户颁发属性主密钥ASKi,j;
(3)数据拥有者使用属性加密机制生成加密文件和索引,分别发送给云服务器和管理服务器,管理服务器用其私钥重加密该索引并发送给云服务器;
(4)为了在查询阶段验证用户身份,防止用户合谋,云服务器生成查询标记;
(5)用户使用属性加密机制生成加密陷门并发送给管理服务器,管理服务器重加密接收到的陷门并生成Sf,同时发送给云服务器;
(6)云服务器接收到加密索引及陷门,进行关键字搜索;
(7)待用户完成搜索任务后,进行用户撤销。
2.根据权利要求1所述的云环境下支持高效撤销的属性基关键字搜索方法,其特征在于:所述步骤(3)的具体过程为:
(31)数据拥有者为要加密的文件定义一个树形访问控制策略结构Ψ,并构造访问树T;
(32)数据拥有者使用属性加密机制加密索引;
(33)数据拥有者得到初步加密的索引后,将该索引发送给管理服务器,管理服务器用自身的私钥重加密索引。
3.根据权利要求1所述的云环境下支持高效撤销的属性基关键字搜索方法,其特征在于:所述步骤(4)的具体过程为:
(41)云服务器构造一个访问策略同样为Ψ的访问树Ti,并计算得到查询标记QTi,Ψ。
4.根据权利要求1所述的云环境下支持高效撤销的属性基关键字搜索方法,其特征在于:所述步骤(5)的具体过程为:
(51)用户利用属性私钥,分别针对访问树T、Ti计算得到拉格朗日系数,再递归地计算得到访问树T、Ti的拉格朗日插值FR、LR;
(52)用户利用属性加密机制加密陷门;
(53)用户将初步加密后的陷门发送给管理服务器,管理服务器对接收到的陷门进行重加密,同时生成Sf。
5.根据权利要求1所述的云环境下支持高效撤销的属性基关键字搜索方法,其特征在于:所述步骤(6)的具体过程为:
(61)管理服务器将发送给云服务器;
(62)判断用户陷门与数据拥有者的索引属性是否相符;
用户通过步骤(51)计算得到LR=e(RKi,g2)β;云服务器重计算L′R=e(RKi,g2)β;云服务器通过判断LR与L′R、与Y2是否相等来判定陷门与索引的属性是否相符,其中FR=e(g1,g2)α,Y1=g2 α,Y2=e(E1,g2 s)α;
其中,据拥有者选择两个随机数α,β∈Zp并计算E2=g1 α·β;wk,h是文件中第h个关键字;
(63)匹配用户陷门中的关键字与索引中的关键字:
云服务器通过计算等式e(E1,T3)=e(E2,T1)·e(Sf,T2)是否成立来匹配关键字,其中,E2=g1 α·β,若等式成立,则匹配成功;反之,则匹配失败;
其中,ri为用户选择的一个随机参数,rf为管理服务器获得TΨ,w后而随机生成一个参数;且且E1、E2、Y1和Y2均是更新后的加密索引中的一部分。
6.根据权利要求1所述的云环境下支持高效撤销的属性基关键字搜索方法,其特征在于:所述步骤(7)的具体过程为:
(71)用户撤销:管理服务器更新存储在云服务器上的Sf,即更新管理服务器自身的私钥;
(72)用户属性撤销:管理服务器更新Sf,属性授权机构更新参数tj为剩余的属性生成新的属性私钥。
7.一种实现权利要求1~6任意一项所述的云环境下支持高效撤销的属性基关键字搜索方法的云计算应用系统,其特征在于:包括数据拥有者、管理服务器、用户、多属性授权机构以及云服务器,其中,数据拥有者分别发送加密文件集和密索引给云服务器和管理服务器;新用户在管理服务器进行注册,并从属性授权机构获得属性私钥,然后发送加密陷门给管理服务器;管理服务器重加密获得的索引及陷门并发给云服务器;在云服务器上进行关键字搜索操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610662419.2A CN106330865B (zh) | 2016-08-12 | 2016-08-12 | 云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610662419.2A CN106330865B (zh) | 2016-08-12 | 2016-08-12 | 云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106330865A CN106330865A (zh) | 2017-01-11 |
CN106330865B true CN106330865B (zh) | 2019-03-29 |
Family
ID=57740933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610662419.2A Active CN106330865B (zh) | 2016-08-12 | 2016-08-12 | 云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106330865B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220343B (zh) * | 2017-05-26 | 2020-09-01 | 福州大学 | 基于局部敏感哈希的中文多关键词模糊排序密文搜索方法 |
CN107291851B (zh) * | 2017-06-06 | 2020-11-06 | 南京搜文信息技术有限公司 | 基于属性加密的密文索引构造方法及其查询方法 |
US20210081562A1 (en) * | 2017-09-12 | 2021-03-18 | Mitsubishi Electric Corporation | Data processing apparatus, data processing method, and computer readable medium |
CN107704768A (zh) * | 2017-09-14 | 2018-02-16 | 上海海事大学 | 一种密文的多关键字分级安全检索方法 |
CN109726580B (zh) * | 2017-10-31 | 2020-04-14 | 阿里巴巴集团控股有限公司 | 一种数据统计方法和装置 |
CN107734054A (zh) * | 2017-11-06 | 2018-02-23 | 福州大学 | 安全云存储中的加密数据检索系统 |
CN108092766B (zh) * | 2017-11-30 | 2020-12-18 | 深圳大学 | 一种密文搜索权限验证方法及其系统 |
WO2019104675A1 (zh) * | 2017-11-30 | 2019-06-06 | 深圳大学 | 一种密文搜索结果验证方法及其系统 |
CN108200181B (zh) * | 2018-01-11 | 2021-03-19 | 中国人民解放军战略支援部队信息工程大学 | 一种面向云存储的可撤销属性基加密系统及方法 |
CN108632248B (zh) * | 2018-03-22 | 2019-10-29 | 平安科技(深圳)有限公司 | 数据加密方法、数据查询方法、装置、设备及存储介质 |
CN108777623B (zh) * | 2018-05-03 | 2021-07-30 | 上海海事大学 | 一种基于模糊关键字搜索的可撤销公钥加密方法 |
CN109361644B (zh) * | 2018-08-22 | 2021-03-16 | 西安工业大学 | 一种支持快速搜索和解密的模糊属性基加密方法 |
CN110035067B (zh) * | 2019-03-13 | 2022-03-25 | 西安电子科技大学 | 云存储中支持高效数据去重和属性撤销的属性加密方法 |
CN109981643A (zh) * | 2019-03-26 | 2019-07-05 | 长沙学院 | 一种细粒度查询授权的可搜索加密方法及系统 |
CN110224986B (zh) * | 2019-05-07 | 2020-09-25 | 电子科技大学 | 一种基于隐藏策略cp-abe的高效可搜索访问控制方法 |
CN112543099B (zh) * | 2020-11-25 | 2023-05-23 | 南京邮电大学 | 一种基于边缘计算的无证书可搜索加密方法 |
CN112733192B (zh) * | 2021-01-22 | 2023-03-31 | 福州大学 | 基于联盟链同态加密的司法电子证据系统及方法 |
CN115174568B (zh) * | 2022-06-23 | 2023-05-16 | 南京信息工程大学 | 一种基于属性的密文检索方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102938767A (zh) * | 2012-11-13 | 2013-02-20 | 西安电子科技大学 | 基于云数据外包系统的高效可验证的模糊关键词搜索方法 |
CN102945356A (zh) * | 2012-12-12 | 2013-02-27 | 上海交通大学 | 云环境下搜索引擎的访问控制方法及系统 |
CN103281377A (zh) * | 2013-05-31 | 2013-09-04 | 北京鹏宇成软件技术有限公司 | 一种面向云的密文数据存储与查询方法 |
CN104363215A (zh) * | 2014-11-04 | 2015-02-18 | 河海大学 | 一种基于属性的加密方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10007803B2 (en) * | 2012-10-26 | 2018-06-26 | Infosys Limited | Searching over encrypted keywords in a database |
-
2016
- 2016-08-12 CN CN201610662419.2A patent/CN106330865B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102938767A (zh) * | 2012-11-13 | 2013-02-20 | 西安电子科技大学 | 基于云数据外包系统的高效可验证的模糊关键词搜索方法 |
CN102945356A (zh) * | 2012-12-12 | 2013-02-27 | 上海交通大学 | 云环境下搜索引擎的访问控制方法及系统 |
CN103281377A (zh) * | 2013-05-31 | 2013-09-04 | 北京鹏宇成软件技术有限公司 | 一种面向云的密文数据存储与查询方法 |
CN104363215A (zh) * | 2014-11-04 | 2015-02-18 | 河海大学 | 一种基于属性的加密方法和系统 |
Non-Patent Citations (4)
Title |
---|
Attribute based data sharing with attribute revocation;Shucheng Yu,Cong Wang,Kui Ren,Wenjing Lou;《Proceeding ASIACCS "10 Proceedings of the 5th ACM Symposium on Information, Computer and Communications Security》;20101231;261-270 * |
Provably secure ciphertext policy ABE;Ling Cheung,Calvin Newport;《Proceeding CCS "07 Proceedings of the 14th ACM conference on Computer and communications security》;20071231;456-465 * |
云存储中一种模糊关键字搜索加密方案;秦志光,包文意,赵洋,熊虎;《信息网络安全》;20150610;7-12 * |
关键字搜索公钥加密方案的分析与设计;倪建兵;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160315;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106330865A (zh) | 2017-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106330865B (zh) | 云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统 | |
CN111916173B (zh) | 基于ipfs和联盟链的医疗数据安全共享系统及方法 | |
CN111835500B (zh) | 基于同态加密与区块链的可搜索加密数据安全共享方法 | |
CN112365945B (zh) | 基于区块链的电子病历细粒度访问控制和密文可搜索方法 | |
CN107256248B (zh) | 云存储安全中基于通配符的可搜索加密方法 | |
Li et al. | Privacy-preserving data utilization in hybrid clouds | |
CN108171066A (zh) | 一种医疗云中隐私保护下的关键词跨域搜索方法及系统 | |
CN106656997B (zh) | 一种基于移动社交网络代理重加密跨域交友隐私保护方法 | |
CN108632385B (zh) | 基于时间序列的多叉树数据索引结构云存储隐私保护方法 | |
CN108092766B (zh) | 一种密文搜索权限验证方法及其系统 | |
CN107547530A (zh) | 移动云环境下基于属性的在线/离线关键字搜索方法及其云计算应用系统 | |
CN116469501A (zh) | 基于区块链的电子病历共享方法、系统、设备及存储介质 | |
CN112543099A (zh) | 一种基于边缘计算的无证书可搜索加密方法 | |
CN115473743A (zh) | 一种抗内部关键字猜测攻击的可搜索医疗数据共享方法 | |
CN116910739A (zh) | 基于区块链的设备数据访问控制方法、系统、设备和介质 | |
CN113836571B (zh) | 基于云和区块链的医疗数据拥有终端位置匹配方法及系统 | |
CN114567465A (zh) | 基于区块链的分类医疗数据可搜索加密方法 | |
KR101140576B1 (ko) | 암호화 문서에 대한 다자간 검색 시스템 및 그 방법 | |
CN115412259B (zh) | 基于区块链的云健康系统可搜索代理签密方法及产品 | |
CN116827670A (zh) | 一种基于国密算法的智能医疗数据安全共享方法 | |
CN116663046A (zh) | 基于区块链的隐私数据共享和检索方法、系统及设备 | |
CN115250205A (zh) | 基于联盟链的数据共享方法、系统、电子设备及存储介质 | |
CN114826575A (zh) | 云中基于内积谓词的单关键词可搜索加密方法 | |
CN108632023A (zh) | 一种支持非单调访问结构的密文长度固定的属性基可搜索加密方法 | |
CN108055256A (zh) | 云计算SaaS的平台高效部署方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |