CN109740364A - 可控搜索权限的基于属性的密文搜索方法 - Google Patents
可控搜索权限的基于属性的密文搜索方法 Download PDFInfo
- Publication number
- CN109740364A CN109740364A CN201910009193.XA CN201910009193A CN109740364A CN 109740364 A CN109740364 A CN 109740364A CN 201910009193 A CN201910009193 A CN 201910009193A CN 109740364 A CN109740364 A CN 109740364A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- search
- attribute
- private key
- input
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims description 14
- 239000013598 vector Substances 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 7
- 239000000203 mixture Substances 0.000 claims description 6
- 125000004122 cyclic group Chemical group 0.000 claims description 2
- 238000010845 search algorithm Methods 0.000 claims 4
- 230000000694 effects Effects 0.000 abstract description 2
- 230000008901 benefit Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 206010053240 Glycogen storage disease type VI Diseases 0.000 description 1
- HEFNNWSXXWATRW-UHFFFAOYSA-N Ibuprofen Chemical compound CC(C)CC1=CC=C(C(C)C(O)=O)C=C1 HEFNNWSXXWATRW-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000010230 functional analysis Methods 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
可控搜索权限的基于属性的密文搜索方法,属于可搜索加密领域,解决不能对搜索权限进行分享问题,S5.重加密密钥生成:输入公共参数、私钥、访问结构,获取重加密密钥;S6.重加密密文生成:输入公共参数、初始密文和重加密密钥,云服务器输出重加密密文;S7.密文搜索:输入原密文和数据拥有者令牌,执行密文搜索算法;S8.重加密密文搜索:输入重加密密文和数据使用者令牌,执行密文搜索算法,效果是检索和解密区分开使得设计上更加灵活易操作。
Description
技术领域
本发明属于可搜索加密领域,涉及一种可控搜索权限的基于属性的密文搜索方法。
背景技术
随着云计算技术和大数据的飞速发展,云存储方式有效地降低了本地数据存储和管理成本,实现了高质量的应用服务,因此越来越多地受到企业和个人用户的青睐。因云服务器上的数据并不绝对安全,通常需对数据加密后再将密文数据存储在云服务器中,这一做法虽然解决了数据的安全问题,但加密后的数据密文检索和搜索访问控制成为一个难题。
为保证数据机密性的同时又能限制用户解密能力,属性基加密(Attribute-BasedEncryption,ABE)的方法被提出。基于属性加密方案的通信模式是一对多的,保证数据机密性的同时,具有灵活、方便的特点,可有效降低数据加密过程中的开销,很好地保护用户隐私。随着研究的深入,基于属性的加密方案按照密文或密钥关联属性的不同可以分为两种形式:密钥策略的属性基加密和密文策略的属性基加密。在属性加密的基础上,文献提出了基于属性的密文策略的可搜索加密(Ciphertext-Policy Atrribute based SearchableEncryption,CP-ABSE)的方案,但文献的研究成果表明,CP-ABS方案中密钥在没有任何处理情况下直接上传给云服务器会引发密钥泄露等不安全问题,且采用树形访问结构效率较低。
1998年,BLAZE M等人提出了代理重加密(ProxyRe-encryption,PRE)的概念,在PRE中,授权者基于自己的私钥生成一个代理重加密密钥给代理者,代理者利用重加密密钥将授权人的密文转换成针对被授权人的密文,而代理者却无法获得明文,也无法根据重加密密钥获取授权人的私钥。2014年,文献将基于属性可搜索加密方案和代理重加密技术相结合,提出了一种支持可搜索功能的代理重加密,在满足条件的情况下,该方案可以将自身搜索能力赋给代理者,由代理者执行密文检索操作。2015年,Liang等人提出了一种基于KP-ABE的可搜索加密方案。该方案支持关键字更新,且具有较高的检索效率,并在随机预言模型下证明了方案的安全性。但是采用密钥策略的属性加密,访问策略的设定只能依赖授权中心。
发明内容
针对上述问题,本发明提出一种可控搜索权限的基于属性的密文搜索方法,包括如下步骤:
S1.系统建立,获取公共参数和主私钥;
S2.密钥生成:输入用户的属性集合以及主私钥,获取对应属性集合的用户私钥;
S3.密文生成:输入访问结构、公共参数、主私钥和关键字,数据拥有者执行算法产生原密文;
S4.门限生成:输入公共参数、私钥和待查询关键字,数据拥有者生成关键字的令牌;
S5.重加密密钥生成:输入公共参数、私钥、访问结构,获取重加密密钥;
S6.重加密密文生成:输入公共参数、初始密文和重加密密钥,云服务器输出重加密密文;
S7.密文搜索:输入原密文和数据拥有者令牌,执行密文搜索算法;
S8.重加密密文搜索:输入重加密密文和数据使用者令牌,执行密文搜索算法。
进一步的,系统建立,获取公共参数和主私钥的步骤如下:
系统建立setup(N,n):输入系统的属性总个数N和访问控制矩阵M的最大列数n,生成一个4-多线性映射:{ei:G0×Gi→Gi+1|i=0,1,2},其中(G0,...,G3)是阶为p的素阶循环群,令g0∈G0,g0是G0的生成元,且对于i=0,1,2,gi+1=ei(g0,g1)是Gi+1的生成元,取h1,1,h1,2,...,hn,N∈G0,定义哈希函数H:{0,1}*→G0,随机选取 表示整数集合{0,1,…,p-1},,则公共参数为和主私钥为:
msk=(a,b) (2)。
进一步的,密钥生成的步骤如下:
密钥生成keyGen(msk,S):输入用户的属性集合S以及主私钥msk,随机选取指数t1,...tn←ZP,ZP表示整数{0,1,…,p-1}的集合,设取x∈S,对应属性集合S的用户生的私钥为:
sk=(D,{Lj}j∈[1,n],{Dx}x∈S) (3)。
进一步的,密文生成的步骤如下:
密文生成Enc(kw,pp,msk,(M,ρ)):输入访问结构(M,ρ)、公共参数pp、主私钥msk和关键字kw∈{0,1}*,数据拥有者执行该算法产生原密文,用l和n分别表示矩阵M的行数和列数,将访问结构每一行关联到属性,定义该映射函数为ρ,计算随机选取n-1个随机元素和选择s←ZP作为共享秘密组成向量对于i∈{1,2,…,l},取和j∈{1,...,n},计算
并得出密文:
cph=((M,ρ),Ai,j,B,Ci,C1,C2)i∈[1,l],j∈[1,n] (4)。
进一步的,门限生成TokenGen(pp,sk,kw):输入公共参数pp、私钥sk和待查询关键字kw,对于i∈{1,2,…,l}分别计算T1=e0(H(kw),D),Tj=e0(H(kw),Lj),Tx=e0(H(kw),Dx)x∈S,则数据拥有者生成关键字kw的令牌为:
token=(S,T1,{Tj}j∈[1,n],{Tx}∈S) (5)。
进一步的,重加密密钥生成ReKeyGen(pp,sk,(M′,ρ′)):输入公共参数pp、私钥sk、访问结构(M′,ρ′),用l和n分别表示矩阵M′的行数和列数,将访问结构每一行关联到属性,定义该映射函数为ρ′,随机选取n-1个随即元素并组成向量对于i′∈{1,2,…,l},取和j′∈{1,...,n},计算
输出重加密密钥为:
rk(M′,ρ′)=(B′,{A′i,j}i∈[1,l],j∈[1,n]) (6)。
进一步的,重加密密文生成ReEnc(cph,pp,rk(M′,ρ′)):输入公共参数pp、初始密文cph=(C1,C2)和重加密密钥rk(M′,ρ′),计算云服务器输出重加密密文为:
cphR=((M′,ρ′),C′1,C′2,B′,{Ai,j}i∈[1,l],j∈[1,n]) (7)。
进一步的,密文搜索Search(token,cph):输入原密文cph和数据拥有者令牌token,执行密文搜索算法,验证用户属性集S是否满足访问结构P=(M,ρ),如果满足,则一定能够在多项式时间内得到集合ci,该集合满足∑ρ(i)∈Sci·λi=(1,0,...,0),则计算
如果则证明搜索成功,否则搜索失败。
进一步的,重加密密文搜索SearchR(tokenR,cphR):输入重加密密文cphR、和数据使用者令牌token,执行密文搜索算法,验证用户属性集S是否满足访问结构P=(M′,ρ′),如果满足,则一定能够在多项式时间内得到集合c′i,该集合满足∑ρ′(i)∈Sc′i·λ′i=(1,0,...,0),然后计算
如果e2(K′,C′1)=C′2,则证明搜索成功,否则搜索失败。
有益效果:采用基于密文策略的可搜索属性加密方式实现可控搜索,结合代理重加密的方式分享搜索权限。方案中将密文中的关键字部分提取出来形成搜索令牌,检索和解密区分开使得设计上更加灵活易操作。采用的方式为LSSS线性共享矩阵,细粒度控制访问的同时提高了搜索效率。新方案可在保证数据安全的同时可对搜索权限进行细粒度的控制。
附图说明
图1系统模型图。
具体实施方式
1基本概念说明
1.1双线性映射
定义1双线性映射。G和GT是两个阶为p的乘法循环群。双线性映射e:G×G→GT,g,gT分别为G,GT的生成元,同时满足以以下性质:
·双线性:存在e(ga,gb)=e(g,g)ab,其中
·非退化性:存在g∈G,使得e(g,g)≠1。
·可计算性:对e(u,v)都能有效的计算。
1.2困难性问题假设
n-多线性映射的定义:给定安全参数l和一个l比特的素数p,n-多线性映射是由n个p阶群(G0,G1,...,Gn-1)和n-1个映射ei:G0×Gi→Gi+1(i=0,...n-2)组成。n-多线性映射应该满足下性质,对于(i=0,...n-2):
·如果g∈G0为G0的生成元,那么gi+1=ei(g0,gi)是Gi+1的生成元。
·满足
·ei可以有效计算。
n-多线性判定性Diffie-Hellman假设(n-Mut-ilinear Decisional Diffie-Hellman Assumption,n-MDDH)选择g是G的生成元。给定ga,gb,gs,gz,不存在概率多项式时间算法可以以不可忽略的优势区分Z=e(g,g)abs和Z=e(g,g)z,其中算法的优势定义为|Pr[Α(ga,gb,gs,e(g,g)abs)=1]-Pr[Α(ga,gb,gs,e(g,g)z)=1]|。
2方案模型
2.1系统模型
本发明采用的系统模型如图1所示,以医疗云场景为例来阐释:模型包含四个实体,分别是授权中心,云服务器,数据属主Alice和搜索用户Bob。数据属主Alice把自己的个人医疗数据及数据关键字加密后上传至云端,随后的检索操作可分为两种情况,一是当她的主治医生Bob需要查看病例时,条件可以设置为C1={主治医生}的访问条件,并将检索令牌并且将其发送给云服务器,委托云服务器完成密文检索;二是主治医生需要查看她的病例与其他医生Carol探讨病情时,Alice可以根据自己需要制定访问策略如医生需满足C2={主治医生Bob,医生Carol}的条件产生重加密密钥并且发送给云服务器,委托云服务器将检索关键字的权限分享给满足访问条件的数据使用者。在此模型中,授权中心负责管理属性集,并根据属性集为用户生成和分发系对应的私钥。云服务器负责存储加密的数据、为用户提供密文搜索服务以及使用重加密密钥,使得被授权者可以对重加密的密文进行关键字检索。整个过程中,数据授权者完成了不在线且不与被授权用户相交互的情况下,将搜索权限分享给其他用户。
3算法实现
3.1方案的具体实现
系统建立setup(N,n):输入系统的属性总个数N和访问控制矩阵M的最大列数n,生成一个4-多线性映射:{ei:G0×Gi→Gi+1|i=0,1,2},其中(G0,...,G3)是阶为p的素阶循环群。令g0∈G0是G0的生成元,且对于i=0,1,2,gi+1=ei(g0,g1)是Gi+1的生成元。取h1,1,h1,2,...,hn,N∈G0,定义哈希函数H:{0,1}*→G0。随机选取表示整数集合{0,1,…,p-1}的所有子集,从集合中均匀随机地选取元素a,b,c,则公共参数为和主私钥为:
msk=(a,b) (11)
密钥生成keyGen(msk,S):输入用户的属性集合S以及主私钥msk。随机选取指数t1,...tn←ZP,表示整数{0,1,…,p-1}的集合,此公式的意义为在集合中随机选取n个随机数,设取x∈S,对应属性集合S的用户生的私钥为:
sk=(D,{Lj}j∈[1,n],{Dx}x∈S) (12)
密文生成Enc(kw,pp,msk,(M,ρ)):输入访问结构(M,ρ)、公共参数pp、主私钥msk和关键字kw∈{0,1}*,数据拥有者执行该算法产生原密文。用l和n分别表示矩阵M的行数和列数,将访问结构每一行关联到属性,定义该映射函数为ρ。计算随机选取n-1个随机元素和选择s←ZP作为共享秘密组成向量对于i∈{1,2,…,l},取和j∈{1,...,n},计算 需要说明书的是:H表示哈希函数,是一种运算。H(kw)表示对kw进行哈希运算。
由上述,得出密文:
cph=((M,ρ),Ai,j,B,Ci,C1,C2)i∈[1,l],j∈[1,n] (13)。
门限生成TokenGen(pp,sk,kw):输入公共参数pp、私钥sk和待查询关键字kw,对于i∈{1,2,…,l}分别计算T1=e0(H(kw),D),Tj=e0(H(kw),Lj),Tx=e0(H(kw),Dx)x∈S,则数据拥有者生成关键字kw的令牌为:
token=(S,T1,{Tj}j∈[1,n],{Tx}∈S) (14)
重加密密钥生成ReKeyGen(pp,sk,(M′,ρ′)):输入公共参数pp、私钥sk、访问结构(M′,ρ′)。用l和n分别表示矩阵M′的行数和列数,将访问结构每一行关联到属性,定义该映射函数为ρ′。随机选取n-1个随即元素并组成向量对于i′∈{1,2,…,l},取和j′∈{1,...,n},计算 输出重加密密钥为:
rk(M′,ρ′)=(B′,{A′i,j}i∈[1,l],j∈[1,n]) (15)
重加密密文生成ReEnc(cph,pp,rk(M′,ρ′)):输入公共参数pp、初始密文cph=(C1,C2)和重加密密钥rk(M′,ρ′)。计算云服务器输出重加密密文为:
cphR=((M′,ρ′),C′1,C′2,B′,{Ai,j}i∈[1,l],j∈[1,n]) (16)
密文搜索Search(token,cph):输入原密文cph、和数据拥有者令牌token,执行密文搜索算法。验证用户属性集S是否满足访问结构P=(M,ρ),如果满足,则一定能够在多项式时间内得到集合ci,该集合满足∑ρ(i)∈Sci·λi=(1,0,...,0),则计算
如果则证明搜索成功,输出1,否则搜索失败,输出0。
重加密密文搜索SearchR(tokenR,cphR):输入重加密密文cphR、和数据使用者令牌token,执行密文搜索算法。
验证用户属性集S是否满足访问结构P=(M′,ρ′),如果满足,则一定能够在多项式时间内得到集合c′i,该集合满足∑ρ′(i)∈Sc′i·λ′i=(1,0,...,0),然后计算
如果e2(K′,C′1)=C′2,则证明搜索成功,输出1,否则搜索失败,输出0。
3.2正确性
检索关键词正确性验证:
如果属性集S满足访问结构(M,ρ),且重加密密文对应关键相同,则
因此可以得到:
重加密后检索关键词正确性验证:
因此可以得到:
4安全性证明
4.1数据机密性
定理1如果4-MDDH问题是难解的,那么CP-ABRKS方案在随机预言模型下是不可区分性选择关键字攻击安全的。
证明假设存在一个概率多项式时间敌手A以不可忽略的优势ε攻破CP-ABRK的随机预言模型下不可区分性选择关键字攻击安全游戏,那么就可以构造出一个挑战者以不可忽略的概率解决4-MDDH问题,其中qT是敌手查询应答器的最大次数。
挑战者C给定一个4-MDDH问题的实例其中w是从集合中的随机数,按如下方式模拟游戏:
初始化:敌手A选择一个挑战访问结构(M*,ρ*)其中M*为l*×k*的矩阵,l*为行数,k*为列数,并将它们发送给挑战者。假设系统中属性总个数为N,访问控制矩阵M*的最大列数为nmax,挑战者按照如下方式产生公共参数和主私钥:
⑴给定访问结构(M*,ρ*),对于每一对(j,x),其中1≤x≤N,1≤j≤nmax,选择如果存在一个i使得ρ*(i)=x且i≤k*,则令 是矩阵的i行j列;否则令设公共参数为:
主私钥为mk=(a,b)。
⑵挑战者按照如下方式模拟应答器H
OH(kw):给定一个关键字kw,模拟器按照如下方式工作:
如果kw未被查询过,取且以概率Pr[ci=0]=1/(qT+1)选择一个比特ci∈{0,1}。如果ci=0,计算否则计算把(kw,ai,H(kw),ci)加入表LH中并且返回H(kw)。否则,从LH中检索出与kw对应的H(kw)且返回H(kw)。
阶段1:A可进行多项式次以下应答器的查询:
(a)OkeyGen(S)给定属性集S,挑战者按如下方式工作:
如果S满足访问结构,返回⊥(结束符)。
否则,如果S不满足访问结构(M*,ρ*),则存在一个向量 表示整数{0,1,…,p-1}中n次向量运算的集合,使得w1=-1且 对于k*≤j≤n设计算随机选择且隐含地定义tj=rj+wjb,然后对于每一个x∈S,设定如果存在i使得否则设
(b)Ork(S,P):输入一个属性集S和一个访问结构P=(M,ρ),其中M为l×k的矩阵,挑战者按如下方式工作:
Lrk是重加密列表,如果Lrk表中记录不存在,返回⊥。否则如果记录存在,则随机选取n个指数并组成向量设否则,组成向量 设其中定义s=cs′。
(c)OReEnc(S,cph):给定一个属性集S和原密文cph,挑战者按如下方式工作:
如果Lrk表中已存在记录或时P≠P*,用(S,P)查询Ork得到重加密密钥rkuid→P,且计算cphR←Re Enc(cph,pp,rkP)。可理解为属性集与访问结构构成的组合。
否则,如果在如中LH存在kwi,使得ci=1且选择d∈ZP,设 且对于每一对i=1,...N,且j=1,...n返回cphR=(C1,C′2,B,{Ri,j}i∈[1,l],j∈[1,n])。
否则,发生错误且停止。
(d)Otoken(S,kw):给定一个属性集S和一个关键字kw,挑战者按如下方式工作:
用kw查询OH得到(ai,H(kw),ci)。
如果ci=1,选择计算L′j=e0(H(kw),Lj)j∈[1,n];且对于每一个x∈S,
如果ci=0且不符合访问结构,用S查询OkeyGen得到sk对于j=1,...n,计算D′、L′j、方式同上。
否则,产生错误且停止。
挑战:A两个等长的关键字(kw0,kw1)。如果c0=1且c1=0,设η=1;当c0=0且c1=1,那么设η=0;如果c0=1∧c1=1,挑战者产生错误且停止;否则,随机选择
挑战者将用kwη查询得到密文返回给A。
阶段2:增加限制(kw0,kw1)不可以查询Otoken,其他类似阶段1。如果S满足访问结构,那么(S,kw0)和((S,kw1)不能查询
猜测:A输出一个猜测μ′。如果μ=μ′,挑战者输出否则,输出
至此完成了游戏的模拟。现对工作正常的条件下挑战者赢得游戏概率进行分析。如果输出那么cph*实际上是kwμ的一个有效密文,所以A输出μ=μ′的概率为1/2+ε。如果Z是从G3中随机选择的,那么A输出μ=μ′的概率为1/2。因此,挑战者正确猜测出的概率为1/2(1/2+ε)+1/2·1/2=1/2+ε/2。
也就是说,挑战者具有解决4-MDDH问题的优势为(1/e+1/qT)ε/2。
5功能分析
在本节中,将本发明提出方案与文献[1]、文献[2]的方法从性能方面进行比较,见表1。文献[1]的方案支持可搜索加密但不支持重加密,不利用户对数据检索权限的共享,搜索的灵活性降低;且树形访问结构效率较低,这在云计算的数据转发和搜索机制中并不占优势。文献[16]虽可以实现关键词搜索和代理重加密,但采用基于密钥策略的属性加密方案极不利于数据属主对于访问权限的控制。而本发明方案由于采用访问效率较高的LSSS结构,可以同时实现关键词搜索和代理重加密的功能,因此更适用于云计算和实际应用。
[1]Zheng Q,Xu S,Ateniese G.VABKS:Verifiable attribute-based keywordsearch over outsourced encrypted data[C]//Proc of IEEE INFOCOM.2014:522-530.
[2]Liang K,Susilo W.Searchable Attribute-based mechanism withefficient data sharing for secure cloud storage[J].IEEE Trans on InformationForensics&Security,2015,10(9):1981-1992.
表1方案性能比较
6效率分析
本节将从效率方面与文献[1]、文献[2]进行对比,比较结果见表2。其中s表示属性集中属性个数,l表示访问结构中属性的个数,E是用来表示G上的一次指数操作指数运算,P是表示双线性对配对运算。由于哈希算法、非生成元群元素上的指数操作计算量较小,故忽略不计两种算法的计算量。
表2计算开销比较
从表2可以看出本发明的方案在密钥生成和密文生成阶段明显优于文献[1]。当属性集中属性个数与访问结构数相近时,本发明方案在密钥生成阶段的效率将远高于文献[2],在门限生成和搜索阶段,同时高于这两种方案。这是由于本发明采用基于密文策略加密方式而文献[2]采用密钥生成阶段计算访问结构密钥策略,因此效率降低。即使在密文生成阶段加入访问控制的加密计算后,本发明方案的效率仍高于文献[2]。综合分析可得出,本方案相比于同阶段的基于属性的搜索方案更具实用性。
7效果
针对云环境下存在的密文检索、检索权限共享和访问控制问题,本发明采用关键字与密文分割运算的方式,结合基于密钥策略的属性代理重加密方案,提出了一种云端可控搜索权限的基于属性的密文搜索方案。方案在云端密文条件下,可进行条件设置的数据检索及搜索权限的共享。同时,结合云计算能力,节省了本地存储以及管理维护的成本,提高了检索速度,使得用户在不在线的情况下仍能够共享搜索权限。方案虽然实现了访问控制、提升了检索速度,但在功能上,只能实现单关键词的搜索,尚不能实现多关键字或关键字的模糊查询、排序、关系运算等功能,因此如何解决上述问题,也是未来的一个研究方向。
云存储环境下,支持关键词搜索的密文检索方案无法实现细粒度访问控制,不能对搜索权限进行分享。为此,本发明将基于属性的可搜索加密方案与代理重加密技术相结合提出一种云端可控搜索权限的基于属性的密文搜索方案。本方案中,采用关键字与密文分割运算的方式,多个属性组成的访问结构与关键字实现搜索访问控制;通过代理重加密技术可实现用户不在线的情况下,将搜索权限分享给符合访问条件的其他用户。安全分析表明,本方案在多线性判定性Diffie-Hellman假设下可以有效证明本方案的安全性。
以上所述,仅为本发明创造较佳的具体实施方式,但本发明创造的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明创造披露的技术范围内,根据本发明创造的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明创造的保护范围之内。
Claims (9)
1.一种可控搜索权限的基于属性的密文搜索方法,其特征在于,包括如下步骤:
S1.系统建立,获取公共参数和主私钥;
S2.密钥生成:输入用户的属性集合以及主私钥,获取对应属性集合的用户私钥;
S3.密文生成:输入访问结构、公共参数、主私钥和关键字,数据拥有者执行算法产生原密文;
S4.门限生成:输入公共参数、私钥和待查询关键字,数据拥有者生成关键字的令牌;
S5.重加密密钥生成:输入公共参数、私钥、访问结构,获取重加密密钥;
S6.重加密密文生成:输入公共参数、初始密文和重加密密钥,云服务器输出重加密密文;
S7.密文搜索:输入原密文和数据拥有者令牌,执行密文搜索算法;
S8.重加密密文搜索:输入重加密密文和数据使用者令牌,执行密文搜索算法。
2.如权利要求1所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,
系统建立,获取公共参数和主私钥的步骤如下:
系统建立setup(N,n):输入系统的属性总个数N和访问控制矩阵M的最大列数n,生成一个4-多线性映射:{ei:G0×Gi→Gi+1|i=0,1,2},其中(G0,...,G3)是阶为p的素阶循环群,令g0∈G0,g0是G0的生成元,且对于i=0,1,2,gi+1=ei(g0,g1)是Gi+1的生成元,取h1,1,h1,2,...,hn,N∈G0,定义哈希函数H:{0,1}*→G0,随机选取 表示整数集合{0,1,…,p-1},,则公共参数为和主私钥为:
msk=(a,b) (2)。
3.如权利要求2所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,
密钥生成的步骤如下:
密钥生成keyGen(msk,S):输入用户的属性集合S以及主私钥msk,随机选取指数t1,...tn←ZP,ZP表示整数{0,1,…,p-1}的集合,设取x∈S,对应属性集合S的用户生的私钥为:
sk=(D,{Lj}j∈[1,n],{Dx}x∈S) (3)。
4.如权利要求3所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,密文生成的步骤如下:
密文生成Enc(kw,pp,msk,(M,ρ)):输入访问结构(M,ρ)、公共参数pp、主私钥msk和关键字kw∈{0,1}*,数据拥有者执行该算法产生原密文,用l和n分别表示矩阵M的行数和列数,将访问结构每一行关联到属性,定义该映射函数为ρ,计算随机选取n-1个随机元素和选择s←ZP作为共享秘密组成向量对于i∈{1,2,…,l},取和j∈{1,...,n},计算
并得出密文:
cph=((M,ρ),Ai,j,B,Ci,C1,C2)i∈[1,l],j∈[1,n] (4)。
5.如权利要求4所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,门限生成的步骤如下:
TokenGen(pp,sk,kw):输入公共参数pp、私钥sk和待查询关键字kw,对于i∈{1,2,…,l}分别计算T1=e0(H(kw),D),Tj=e0(H(kw),Lj),Tx=e0(H(kw),Dx)x∈S,则数据拥有者生成关键字kw的令牌为:
token=(S,T1,{Tj}j∈[1,n],{Tx}∈S) (5)。
6.如权利要求5所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,重加密密钥生成的步骤如下:
重加密密钥生成ReKeyGen(pp,sk,(M′,ρ′)):输入公共参数pp、私钥sk、访问结构(M′,ρ′),用l和n分别表示矩阵M′的行数和列数,将访问结构每一行关联到属性,定义该映射函数为ρ′,随机选取n-1个随即元素并组成向量对于i′∈{1,2,…,l},取和j′∈{1,...,n},计算
输出重加密密钥为:
rk(M′,ρ′)=(B′,{A′i,j}i∈[1,l],j∈[1,n]) (6)。
7.如权利要求6所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,重加密密文生成的步骤如下:
重加密密文生成ReEnc(cph,pp,rk(M′,ρ′)):输入公共参数pp、初始密文cph=(C1,C2)和重加密密钥rk(M′,ρ′),计算云服务器输出重加密密文为:
cphR=((M′,ρ′),C′1,C′2,B′,{Ai,j}i∈[1,l],j∈[1,n]) (7)。
8.如权利要求7所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,密文搜索的步骤如下:
密文搜索Search(token,cph):输入原密文cph和数据拥有者令牌token,执行密文搜索算法,验证用户属性集S是否满足访问结构P=(M,ρ),如果满足,则一定能够在多项式时间内得到集合ci,该集合满足∑ρ(i)∈Sci·λi=(1,0,...,0),则计算
如果则证明搜索成功,否则搜索失败。
9.如权利要求8所述的可控搜索权限的基于属性的密文搜索方法,其特征在于,重加密密文搜索的步骤如下:
重加密密文搜索SearchR(tokenR,cphR):输入重加密密文cphR、和数据使用者令牌token,执行密文搜索算法,验证用户属性集S是否满足访问结构P=(M′,ρ′),如果满足,则一定能够在多项式时间内得到集合c′i,该集合满足∑ρ′(i)∈Sc′i·λ′i=(1,0,...,0),然后计算
如果e2(K′,C′1)=C′2,则证明搜索成功,否则搜索失败。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910009193.XA CN109740364B (zh) | 2019-01-04 | 2019-01-04 | 可控搜索权限的基于属性的密文搜索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910009193.XA CN109740364B (zh) | 2019-01-04 | 2019-01-04 | 可控搜索权限的基于属性的密文搜索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109740364A true CN109740364A (zh) | 2019-05-10 |
CN109740364B CN109740364B (zh) | 2020-12-15 |
Family
ID=66363521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910009193.XA Active CN109740364B (zh) | 2019-01-04 | 2019-01-04 | 可控搜索权限的基于属性的密文搜索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109740364B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110602099A (zh) * | 2019-09-16 | 2019-12-20 | 广西师范大学 | 基于可验证的对称可搜索加密的隐私保护方法 |
CN110933026A (zh) * | 2019-10-22 | 2020-03-27 | 东北大学 | 一种轻量级隐私保护的等值查询方法 |
CN113343258A (zh) * | 2021-06-09 | 2021-09-03 | 哈尔滨学院 | 一种适用于体测成绩云共享的格基密文策略的属性基代理重加密方法 |
CN113569271A (zh) * | 2021-09-27 | 2021-10-29 | 深圳前海环融联易信息科技服务有限公司 | 一种基于属性条件门限代理重加密方法和系统 |
CN113904818A (zh) * | 2021-09-27 | 2022-01-07 | 九江学院 | 一种支持密文共享和汇聚的轻量级细粒度访问控制方法 |
CN114257446A (zh) * | 2021-12-20 | 2022-03-29 | 湖北工业大学 | 基于可搜索加密的数据访问控制方法、计算机设备 |
CN114615050A (zh) * | 2022-03-08 | 2022-06-10 | 中山大学 | 基于区块链存储的可验证的可搜索对称加密方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103701833A (zh) * | 2014-01-20 | 2014-04-02 | 深圳大学 | 一种基于云计算平台的密文访问控制方法及系统 |
WO2014112048A1 (ja) * | 2013-01-16 | 2014-07-24 | 三菱電機株式会社 | 暗号システム、再暗号化鍵生成装置、再暗号化装置、暗号方法及び暗号プログラム |
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
CN106850652A (zh) * | 2017-02-21 | 2017-06-13 | 重庆邮电大学 | 一种仲裁可搜索加密方法 |
CN108092766A (zh) * | 2017-11-30 | 2018-05-29 | 深圳大学 | 一种密文搜索权限验证方法及其系统 |
CN108400871A (zh) * | 2018-01-25 | 2018-08-14 | 南京邮电大学 | 结合身份和属性的支持代理重加密的密文检索系统及方法 |
CN108418681A (zh) * | 2018-01-22 | 2018-08-17 | 南京邮电大学 | 一种支持代理重加密的基于属性的密文检索系统及方法 |
CN108512662A (zh) * | 2018-04-12 | 2018-09-07 | 上海海事大学 | 一种格上支持策略隐藏的多机构加密方法 |
-
2019
- 2019-01-04 CN CN201910009193.XA patent/CN109740364B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014112048A1 (ja) * | 2013-01-16 | 2014-07-24 | 三菱電機株式会社 | 暗号システム、再暗号化鍵生成装置、再暗号化装置、暗号方法及び暗号プログラム |
CN103701833A (zh) * | 2014-01-20 | 2014-04-02 | 深圳大学 | 一种基于云计算平台的密文访问控制方法及系统 |
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
CN106850652A (zh) * | 2017-02-21 | 2017-06-13 | 重庆邮电大学 | 一种仲裁可搜索加密方法 |
CN108092766A (zh) * | 2017-11-30 | 2018-05-29 | 深圳大学 | 一种密文搜索权限验证方法及其系统 |
CN108418681A (zh) * | 2018-01-22 | 2018-08-17 | 南京邮电大学 | 一种支持代理重加密的基于属性的密文检索系统及方法 |
CN108400871A (zh) * | 2018-01-25 | 2018-08-14 | 南京邮电大学 | 结合身份和属性的支持代理重加密的密文检索系统及方法 |
CN108512662A (zh) * | 2018-04-12 | 2018-09-07 | 上海海事大学 | 一种格上支持策略隐藏的多机构加密方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110602099A (zh) * | 2019-09-16 | 2019-12-20 | 广西师范大学 | 基于可验证的对称可搜索加密的隐私保护方法 |
CN110933026A (zh) * | 2019-10-22 | 2020-03-27 | 东北大学 | 一种轻量级隐私保护的等值查询方法 |
CN110933026B (zh) * | 2019-10-22 | 2021-06-04 | 东北大学 | 一种轻量级隐私保护的等值查询方法 |
CN113343258A (zh) * | 2021-06-09 | 2021-09-03 | 哈尔滨学院 | 一种适用于体测成绩云共享的格基密文策略的属性基代理重加密方法 |
CN113569271A (zh) * | 2021-09-27 | 2021-10-29 | 深圳前海环融联易信息科技服务有限公司 | 一种基于属性条件门限代理重加密方法和系统 |
CN113904818A (zh) * | 2021-09-27 | 2022-01-07 | 九江学院 | 一种支持密文共享和汇聚的轻量级细粒度访问控制方法 |
CN113569271B (zh) * | 2021-09-27 | 2022-01-25 | 深圳前海环融联易信息科技服务有限公司 | 一种基于属性条件门限代理重加密方法 |
CN113904818B (zh) * | 2021-09-27 | 2023-04-18 | 九江学院 | 一种支持密文共享和汇聚的轻量级细粒度访问控制方法 |
CN114257446A (zh) * | 2021-12-20 | 2022-03-29 | 湖北工业大学 | 基于可搜索加密的数据访问控制方法、计算机设备 |
CN114257446B (zh) * | 2021-12-20 | 2023-05-23 | 湖北工业大学 | 基于可搜索加密的数据访问控制方法、计算机设备 |
CN114615050A (zh) * | 2022-03-08 | 2022-06-10 | 中山大学 | 基于区块链存储的可验证的可搜索对称加密方法 |
CN114615050B (zh) * | 2022-03-08 | 2023-03-28 | 中山大学 | 基于区块链存储的可验证的可搜索对称加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109740364B (zh) | 2020-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Full verifiability for outsourced decryption in attribute based encryption | |
CN104038349B (zh) | 一种基于kp‑abe的有效可验证的公钥可搜索加密方法 | |
CN109740364A (zh) | 可控搜索权限的基于属性的密文搜索方法 | |
CN104021157B (zh) | 云存储中基于双线性对的关键词可搜索加密方法 | |
Ying et al. | A lightweight policy preserving EHR sharing scheme in the cloud | |
CN111835500A (zh) | 基于同态加密与区块链的可搜索加密数据安全共享方法 | |
Zaghloul et al. | P-MOD: Secure privilege-based multilevel organizational data-sharing in cloud computing | |
Sun et al. | Multi-keyword searchable and data verifiable attribute-based encryption scheme for cloud storage | |
CN112765650A (zh) | 一种属性基可搜索加密的区块链医疗数据共享方法 | |
CN105024802B (zh) | 云存储中基于双线性对的多用户多关键词可搜索加密方法 | |
Yao et al. | Privacy-preserving search over encrypted personal health record in multi-source cloud | |
CN107395568A (zh) | 一种多数据拥有者认证的密文检索方法 | |
CN112365945A (zh) | 基于区块链的电子病历细粒度访问控制和密文可搜索方法 | |
Huang et al. | FSSR: Fine-grained EHRs sharing via similarity-based recommendation in cloud-assisted eHealthcare system | |
CN105049196A (zh) | 云存储中指定位置的多个关键词可搜索的加密方法 | |
CN104993931A (zh) | 一种云存储中多用户的加密搜索方法 | |
Xiong et al. | A secure re‐encryption scheme for data services in a cloud computing environment | |
Du et al. | A Lightweight Blockchain‐based Public‐Key Authenticated Encryption with Multi‐Keyword Search for Cloud Computing | |
CN109451077A (zh) | 医疗云搜索权限分享的模型 | |
Yang et al. | Efficient and provably secure data selective sharing and acquisition in cloud-based systems | |
Shen et al. | BMSE: Blockchain-based multi-keyword searchable encryption for electronic medical records | |
Liu et al. | Verifiable attribute-based keyword search encryption with attribute revocation for electronic health record system | |
Fugkeaw et al. | Secure and fine-grained access control with optimized revocation for outsourced iot ehrs with adaptive load-sharing in fog-assisted cloud environment | |
Zhou et al. | Fine‐Grained Attribute‐Based Multikeyword Search for Shared Multiowner in Internet of Things | |
CN117744120B (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 |