CN110390203B - 一种可验证解密权限的策略隐藏属性基加密方法 - Google Patents

一种可验证解密权限的策略隐藏属性基加密方法 Download PDF

Info

Publication number
CN110390203B
CN110390203B CN201910677549.7A CN201910677549A CN110390203B CN 110390203 B CN110390203 B CN 110390203B CN 201910677549 A CN201910677549 A CN 201910677549A CN 110390203 B CN110390203 B CN 110390203B
Authority
CN
China
Prior art keywords
user
verification
attribute
decryption
viewer
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
Application number
CN201910677549.7A
Other languages
English (en)
Other versions
CN110390203A (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.)
Southwest Jiaotong University
Original Assignee
Southwest Jiaotong University
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 Southwest Jiaotong University filed Critical Southwest Jiaotong University
Priority to CN201910677549.7A priority Critical patent/CN110390203B/zh
Publication of CN110390203A publication Critical patent/CN110390203A/zh
Application granted granted Critical
Publication of CN110390203B publication Critical patent/CN110390203B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • 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
    • 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/606Protecting data by securing the transmission between two devices or processes
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供的一种可验证解密权限的策略隐藏属性基加密方法,涉及数据安全领域,其包括系统初始化,生成公开参数PK、主密钥MSK以及云辅助下的布隆过滤器CBF;生成用户参数,包括用户属性私钥SK、用户标签tag以及用户转换密钥TK;生成密文CT和验证量,该验证量包括外包验证量Ver以及权限验证量pf,用户输出数据组{CT,Ver,pf}并发送给云服务器;权限验证和解密,通过查看方用户的用户标签tag和被查看方用户的权限验证量pf进行解密权限验证和匹配,如果匹配成功,则通过云服务器为查看方用户提供部分解密服务以及查看方用户解密两阶段进行解密。该方法兼顾了隐私保护和效率,在策略隐藏的同时实现了高效准确的解密权限验证,算法表达灵活、安全性高。

Description

一种可验证解密权限的策略隐藏属性基加密方法
技术领域
本发明涉及数据安全领域,具体而言,涉及一种可验证解密权限的策略隐藏属性基加密方法。
背景技术
各类智能设备的广泛应用带来了海量数据的存储与管理问题,将数据资源托管到云服务器,成本低,容量大,数据管理更加灵活,相较于传统的硬件存储拥有诸多优势,为企业和个人用户带来了便捷高效的服务。但随之而来的安全问题却不容忽视,由于管理员非法操作和恶意入侵等因素,数据和计算的第三方外包带来了极大的用户隐私信息泄露风险。
传统的CP-ABE算法往往将与密文关联的访问策略与密文一同传输,这使得服务器和其他用户可以直接获取加密者的访问策略,然而,在智能电网、电子病历等场景下,访问控制信息所包含的内容已经足以推断或泄漏用户的隐私,因此不可避免的带来了较大的安全威胁。
Lai等“Lai J,Deng R H,Li Y.Expressive CP-ABE with partially hiddenaccess structures[C].Proc of the 7th ACM Symposium on Information,Computerand Communications Security.New York:ACM Press,2012:18-19.”提出了一个基于线性秘密共享矩阵的部分隐藏方案,支持任意形式的访问结构,方案将属性分成属性名和属性值两部分,通过不公开属性值实现部分隐藏,方案在标准模型下证明了不同访问结构的密文间的不可区分性,但是方案仅能通过属性私钥尝试解密冗余密文的方式判断是否满足访问结构,需耗费较多额外的计算资源。
Jiang等“Jiang S,Zhu X,Wang L.EPPS:Efficient and Privacy-PreservingPersonal Health Information Sharing in Mobile Healthcare Social Networks[J].Sensors,2015,15(9):22419-22438.”借鉴上述方案明文传输属性名的方法,提出了移动健康社交网络下的信息分享方案,将属性值映射入布隆过滤器并在解密前进行检索对比进而快速判定解密权限,但标准布隆过滤器(Bloom filter,BF)存在一定的错判概率,且方案没有安全性证明。
Yang等“Yang K,Han Q,Li H,et al.An Efficient and Fine-Grained Big DataAccess Control Scheme With Privacy-Preserving Policy[J].IEEE Internet ofThings Journal,2017,4(2):563-571.”提出了基于线性秘密共享矩阵的属性完全隐藏的访问控制方案,使用属性布隆过滤器(ABF)解决了BF的误判问题,但由于其解密阶段重构的实质是属性交集,最终仍可能由于不满足访问结构而造成解密失败,加之ABF的询问由终端执行,给用户带来了双重的计算负担,另外方案的安全性较弱,仅实现了相同访问结构的密文间的选择性CPA(选择明文攻击)安全。
发明内容
本发明实施例在于提供一种可验证解密权限的策略隐藏属性基加密方法,其能够缓解上述问题,该方法兼顾了隐私保护和效率,在策略隐藏的同时实现了高效准确的解密权限验证,算法表达灵活、安全性高。
为了缓解上述的问题;本发明实施例采取的技术方案如下:
第一方面,本发明实施例提供的一种可验证解密权限的策略隐藏属性基加密方法,包括如下步骤:
A、系统初始化,包括生成系统参数以及云辅助下的布隆过滤器CBF,系统参数包括公开参数PK以及主密钥MSK;
B、生成用户参数,包括用户属性私钥SK、用户标签tag以及用户转换密钥TK;
C、生成密文CT和验证量,该验证量包括外包验证量Ver以及权限验证量pf,用户输出数据组{CT,Ver,pf}并发送给云服务器;
D、验证和解密
通过查看方用户的用户标签tag和被查看方用户的权限验证量pf进行解密权限验证和匹配,如果匹配成功,则通过云服务器为查看方用户提供部分解密服务以及查看方用户解密两阶段进行解密,并进行外包验证,以保证外包计算的正确性。
在本发明实施例中,将布隆过滤器加以改进,生成了不泄露用户信息的权限验证量,安全性高,过滤器和生成矩阵的满秩子阵重构两重验证使解密权限判定高效准确,用户转换密钥的生成,使得云服务器为用户提供部分解密服务的同时无法获取用户隐私数据,具有极好的隐私保护性,同时使用部分解密服务和用户解密两阶段也提升了用户端的计算效率。
可选地,系统参数的生成包括:
系统运行初始化算法,获得双线性群的描述:(N,p1,p2,p3,p4,G,GT,e),其中p1,p2,p3,p4为不同的素数,阶数N=p1p2p3p4,G和GT是阶为N的循环群,用
Figure GDA0003904454430000031
表示G的p1,p2,p3,p4阶子群,双线性映射函数e:G×G→GT
设属性集合为
Figure GDA0003904454430000032
ZN为正整数模N的剩余类,取GT的一个生成元gT作为消息基量,取随机群元素f∈G作为外包验证参量,外包验证函数H0:{0,1}*→ZN,选择k0作为HMAC的密钥;
选三个随机值α,a,b∈ZN,选随机群元素
Figure GDA0003904454430000033
作为标准运算基量,g3是/>
Figure GDA0003904454430000034
的一个生成元,选/>
Figure GDA0003904454430000035
对每个属性
Figure GDA0003904454430000041
随机选ti∈ZN作为属性对应随机值,并计算ui=HMAC(k0,i)得到属性i与对应ui的列表Ti-u
公开参数
Figure GDA0003904454430000042
主密钥MSK={k0,gα,g3}。
可选地,云辅助下的布隆过滤器CBF的生成包括:
系统使用(m,n,k,H,λ′)-CBF定义一个云辅助下的布隆过滤器,其中安全参数λ′作为数组中字符串位数,λ′等于ui的比特长度Lu与M的行数的最大比特长度Lm之和,M是线性秘密共享访问结构中的生成矩阵,m为CBF长度,n为集合元素个数,H={h1,h2,…hk}为k个相互独立的散列函数,其映射值范围是[0,m-1]。
可选地,步骤B中用户属性私钥SK的生成包括:
授权中心执行密钥生成算法:选随机数t,u∈ZN,R,R′,R″,
Figure GDA0003904454430000043
计算得到用户属性私钥/>
Figure GDA0003904454430000044
并颁发给用户,其中/>
Figure GDA0003904454430000045
为用户属性集合,gαgatgbuR为第一私钥,gtR′为第二私钥,guR″为第三私钥,/>
Figure GDA0003904454430000046
为第四私钥组,gαgatgbu为ga、gb以及随机数t,u计算得到的过程值
用户标签tag的生成包括:
授权中心根据用户属性集合S和列表Ti-u,选取S中的属性i在列表Ti-u中对应的ui值作为用户标签tag并颁发给用户,即
Figure GDA0003904454430000047
用户转换密钥TK的生成包括:
用户随机选择秘密值z∈ZN,使得gcd(z,N)=1,其中,gcd(·)为最大公约数通式,根据用户属性私钥计算得到用户转换密钥
Figure GDA0003904454430000048
Figure GDA0003904454430000049
并将转换密钥发送给云服务器。
可选地,步骤C中密文CT的生成包括:
用户首先制定访问策略A=(M,ρ),即满足该条件的用户才有权查看自己的数据,ρ将行向量Mj映射到属性ρ(j)上,j∈[1,l];
加密算法首先选择随机向量
Figure GDA0003904454430000051
对于j∈[1,l],随机选rj∈ZN,Fj,Fj',fj∈Gp4,生成密文/>
Figure GDA0003904454430000052
Figure GDA0003904454430000053
其中message为用户需要加密的数据;
外包验证量Ver的生成包括:
用户计算
Figure GDA0003904454430000054
作为外包验证量,用于解密后检验部分解密运算的正确性;
权限验证量pf的生成包括:
用户查列表Ti-u得到属性ρ(j)对应值
Figure GDA0003904454430000055
并以下列步骤生成过滤器(m,n,k,H,λ′)-CBF:
1)生成集合Se={j||uρ(j)}j∈[1,l],其中j需补足位数到Lm比特;
2)对集合Se中的某元素ej=j||uρ(j)进行(k,k)秘密分享,即随机生成k-1个λ′比特的字符串r1,r2,…rk-1,计算
Figure GDA0003904454430000056
共得到e的k个秘密分享值;
3)计算ej中uρ(j)部分的索引值:h1(uρ(j)),h2(uρ(j)),…hk(uρ(j)),并分别存入步骤2)中生成的秘密分享值r1,r2,…rk
4)重复步骤2)-3)过程直到集合中所有元素均存入CBF,若某元素秘密分享值存入时该位置已被占用,则选取与该位置相同的值;
5)将CBF中的剩余位置用λ′比特的随机数填满;
6)CBF生成后得到权限验证量pf=(M,CBF)。
可选地,步骤D具体包括以下步骤:
D1、权限验证
当云服务器收到查看方用户的对被查看方用户的数据查看请求后,需通过查看方用户的用户标签tag和被查看方用户的权限验证量pf进行权限验证和匹配;
首先使用CBF询问算法验证查看方用户的用户属性是否存在于访问策略A中,包括以下步骤:
1)用查看方用户的用户标签tag中某元素ui计算索引值h1(ui),h2(ui),…hk(ui),并取出对应位置的k个数值求异或得到ei′;
2)若ei′的后Lu位与ui相等,则元素ei′存在于CBF中,ei′的剩余位数表示该用户属性在生成矩阵中的位置,若不相等,则该用户属性不在访问结构所包含的属性的集合中;
3)重复1)-2)的步骤,直到找到查看方用户的用户标签tag与被查看方用户的权限验证量pf的所有交集Se’={i||ui};
若交集Se’不为空,进一步验证
Figure GDA0003904454430000061
若能够重构出M的列满秩子阵,即存在并能够求出这样的一组常数ωi满足上式,也就是说,交集Se’中的元素对应的属性包含能够满足访问策略的最小子集,即查看方用户满足被查看方用户的访问策略,能够成功解密;
若查看方用户满足被查看方用户的访问策略,则继续执行步骤D2,否则输出⊥;
D2、部分解密服务
权限验证和匹配成功后,服务器为查看方用户提供外包部分解密服务得到部分密文:
Figure GDA0003904454430000062
并发送给查看方用户;
D3、用户解密
查看方用户计算message=C/(PCT)z得到想要查看的数据;
D4、外包验证
查看方用户验证
Figure GDA0003904454430000071
和Ver是否相等,以保证计算外包的正确性,相等则message可用,否则输出⊥。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明所述策略隐藏属性基加密方法的流程图;
图2是本发明所述验证和解密的流程图;
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1和图2所示,本发明实施例提供的一种可验证解密权限的策略隐藏属性基加密方法,包括:
一、系统初始化
系统参数的生成
系统运行初始化算法,获得双线性群的描述:(N,p1,p2,p3,p4,G,GT,e),其中p1,p2,p3,p4为不同的素数,阶数N=p1p2p3p4,G和GT是阶为N的循环群,用
Figure GDA0003904454430000081
表示G的p1,p2,p3,p4阶子群,双线性映射函数e:G×G→GT;设属性集合为/>
Figure GDA0003904454430000082
ZN为正整数模N的剩余类,即用正整数去模N得到的剩余类是ZN,取GT的一个生成元gT作为消息基量,取随机群元素f∈G作为外包验证参量,外包验证函数H0:{0,1}*→ZN,选择k0作为HMAC(密钥相关的哈希运算消息认证码)的密钥;选三个随机值α,a,b∈ZN,选随机群元素/>
Figure GDA0003904454430000083
作为标准运算基量,g3是/>
Figure GDA0003904454430000084
的一个生成元,选/>
Figure GDA0003904454430000085
对每个属性/>
Figure GDA0003904454430000086
随机选ti∈ZN作为属性对应随机值,并计算ui=HMAC(k0,i)得到属性i与对应ui的列表Ti-u
公开参数
Figure GDA0003904454430000087
主密钥MSK={k0,gα,g3}。
云辅助下的布隆过滤器CBF的生成
系统使用(m,n,k,H,λ′)-CBF定义一个云辅助下的布隆过滤器,其中安全参数λ′作为数组中字符串位数,λ′等于ui的比特长度Lu与M的行数的最大比特长度Lm之和,M是线性秘密共享访问结构中的生成矩阵,m为CBF长度,n为集合元素个数,H={h1,h2,…hk}为k个相互独立的散列函数,其映射值范围是[0,m-1]。
二、生成用户参数
用户属性私钥SK的生成
授权中心执行密钥生成算法:选随机数t,u∈ZN,R,R′,R″,
Figure GDA0003904454430000091
(可由/>
Figure GDA0003904454430000092
生成元和随机指数生成),计算得到用户属性私钥/>
Figure GDA0003904454430000093
/>
Figure GDA0003904454430000094
并颁发给用户,其中/>
Figure GDA0003904454430000095
为用户属性集合,gαgatgbuR为第一私钥,gtR′为第二私钥,guR″为第三私钥,/>
Figure GDA0003904454430000096
为第四私钥组,gαgatgbu为ga、gb以及随机 数t,u计算得到的过程值
用户标签tag的生成
授权中心根据用户属性集合S和列表Ti-u,选取S中的属性i在列表Ti-u中对应的ui值作为用户标签tag并颁发给用户,即
Figure GDA0003904454430000097
用户转换密钥TK的生成
用户随机选择秘密值z∈ZN,使得gcd(z,N)=1,其中,gcd(·)为最大公约数通式,根据用户属性私钥计算得到用户转换密钥
Figure GDA0003904454430000098
Figure GDA0003904454430000099
并将转换密钥发送给云服务器。
三、生成密文和验证量
密文CT的生成
用户首先制定访问策略A=(M,ρ),即满足该条件的用户才有权查看自己的数据,其中M为l行o列的生成矩阵,ρ将行向量Mj映射到属性ρ(j)上,j∈[1,l];
加密算法首先选择随机向量
Figure GDA00039044544300000910
对于j∈[1,l],随机选rj∈ZN,Fj,Fj',fj∈Gp4,生成密文/>
Figure GDA00039044544300000911
Figure GDA00039044544300000912
其中message为用户需要加密的数据。
外包验证量Ver的生成
用户计算
Figure GDA00039044544300000913
作为外包验证量,用于解密后检验部分解密运算的正确性。
权限验证量pf的生成
用户查列表Ti-u得到属性ρ(j)对应值
Figure GDA0003904454430000101
并以下列步骤生成过滤器(m,n,k,H,λ′)-CBF:
1)生成集合Se={j||uρ(j)}j∈[1,l],其中j需补足位数到Lm比特;
2)对集合Se中的某元素ej=j||uρ(j)进行(k,k)秘密分享,即随机生成k-1个λ′比特的字符串r1,r2,…rk-1,计算
Figure GDA0003904454430000102
共得到e的k个秘密分享值;
3)计算ej中uρ(j)部分的索引值:h1(uρ(j)),h2(uρ(j)),…hk(uρ(j)),并分别存入步骤2)中生成的秘密分享值r1,r2,…rk
4)重复步骤2)-3)过程直到集合中所有元素均存入CBF,若某元素秘密分享值存入时该位置已被占用,则选取与该位置相同的值;
5)将CBF中的剩余位置用λ′比特的随机数填满;
CBF生成后得到权限验证量pf=(M,CBF)。
数据组发送
用户输出数据组{CT,Ver,pf}并发送给云服务器。
四、验证和解密
权限验证
当云服务器收到查看方用户的对被查看方用户的数据查看请求后,需通过查看方用户的用户标签tag和被查看方用户的权限验证量pf进行权限验证和匹配;
首先使用CBF询问算法验证查看方用户的用户属性是否存在于访问策略A中,包括以下步骤:
1)用查看方用户的用户标签tag中某元素ui计算索引值h1(ui),h2(ui),…hk(ui),并取出对应位置的k个数值求异或得到ei′;
2)若ei′的后Lu位与ui相等,则元素ei′存在于CBF中,ei′的剩余位数表示该用户属性在生成矩阵中的位置,若不相等,则该用户属性不在访问结构所包含的属性的集合中;
3)重复1)-2)的步骤,直到找到查看方用户的用户标签tag与被查看方用户的权限验证量pf的所有交集Se’={i||ui};
若交集Se’不为空,进一步验证
Figure GDA0003904454430000111
若能够重构出M的列满秩子阵,即存在并能够求出这样的一组常数ωi满足上式,也就是说,交集Se’中的元素对应的属性包含能够满足访问策略的最小子集,即查看方用户满足被查看方用户的访问策略,能够成功解密;
若查看方用户满足被查看方用户的访问策略,则继续执行步骤D2,否则输出⊥。
部分解密服务
权限验证和匹配成功后,服务器为查看方用户提供外包部分解密服务得到部分密文:
Figure GDA0003904454430000112
并发送给查看方用户。
用户解密
查看方用户计算message=C/(PCT)z得到想要查看的数据。
外包验证
查看方用户验证
Figure GDA0003904454430000113
和Ver是否相等,以保证计算外包的正确性,相等则message可用,否则输出⊥。
解密过程的公式推导如下:
在使用用户属性私钥解密时,过程如下:
e(C',K)=e(gs,gαgatgbuR)=e(g,g)αse(g,g)aste(g,g)bsu
Figure GDA0003904454430000121
因此
Figure GDA0003904454430000122
计算C/e(g,g)αs=message得到消息。因此,在部分解密服务中的部分
Figure GDA0003904454430000123
此(PCT)z=e(g,g)αs,计算C/(PCT)z得到消息。
与现有技术相比,本发明所述可验证解密权限的策略隐藏属性基加密方法具有以下优势:
一、提出了合数阶双线性群下的策略隐藏的CP-ABE算法。算法采用线性秘密共享矩阵访问结构,效率高,表达灵活,并在标准模型中达到了适应性安全,能够实现两个不同访问结构加密的密文之间的不可区分性。算法建立在四素数乘积的合数阶双线性群中,并依此实现了上述特性,其中标准运算发生在子群
Figure GDA0003904454430000124
中,子群/>
Figure GDA0003904454430000125
是半功能空间,不运用在实际系统中,仅用于安全性证明,子群/>
Figure GDA0003904454430000126
使密钥随机化,帮助方案达到适应性安全,子群/>
Figure GDA0003904454430000127
中元素帮助密文实现了策略隐藏。
二、能够高效准确的判定解密权限。若访问策略未知,不可避免的造成授权用户在尝试解密过程中的计算资源浪费,本发明将布隆过滤器加以改进,生成了不泄露用户信息的权限验证量,因此实现了在属性完全隐藏的同时,能在云端的辅助下完成过滤器询问并确定交集,再利用生成矩阵的满秩子阵重构达到解密权限的准确判定,不存在误判,提升了系统效率。
三、用户端更加高效。本发明为用户端提供了外包部分解密服务,并通过外包验证量确保部分解密密文的正确性,减轻了终端计算负担,提升了系统效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种可验证解密权限的策略隐藏属性基加密方法,其特征在于,包括如下步骤:
A、系统初始化,包括生成系统参数以及云辅助下的布隆过滤器CBF,系统参数包括公开参数PK以及主密钥MSK;
B、生成用户参数,包括用户属性私钥SK、用户标签tag以及用户转换密钥TK;
C、生成密文CT和验证量,该验证量包括外包验证量Ver以及权限验证量pf,用户输出数据组{CT,Ver,pf}并发送给云服务器;
D、验证和解密
通过查看方用户的用户标签tag和被查看方用户的权限验证量pf进行解密权限验证和匹配,如果匹配成功,则通过云服务器为查看方用户提供部分解密服务以及查看方用户解密两阶段进行解密,并进行外包验证,以保证外包计算的正确性;
步骤C中密文CT的生成包括:
用户首先制定访问策略A=(M,ρ),即满足所述访问策略的用户才有权查看自己的数据,ρ为行向量Mj映射到属性ρ(j)上的函数,j∈[1,l],l为生成矩阵M的行数;
加密算法首先选择随机向量
Figure FDA0003975634190000011
其中,s,v2,…vn均为
Figure FDA0003975634190000012
中的随机值,对于j∈[1,l],随机选rj∈ZN,Fj,Fj',fj∈Gp4,其中,Fj,Fj',fj均为Gp4中的随机值,Gp4为N的循环群G的p4阶子群,生成密文CT={C=message·e(g,g)αs,C′=gs,C″=(gb)s,
Figure FDA0003975634190000014
Figure FDA0003975634190000013
message为用户需要加密的数据,e(g,g)αs为e(g,g)α与随机值s的计算值;
外包验证量Ver的生成包括:
用户计算
Figure FDA0003975634190000021
其中,
Figure FDA0003975634190000022
为外包验证量,用于解密后检验部分解密运算的正确性;
权限验证量pf的生成包括:
用户查列表Ti-u得到属性ρ(j)对应值
Figure FDA0003975634190000023
并以下列步骤生成过滤器(m,n,k,H,λ′)-CBF:
1)生成集合Se={j||uρ(j)}j∈[1,l],其中j需补足位数到Lm比特,Lm为线性秘密共享访问结构中的生成矩阵M的行数的最大比特长度;
2)对集合Se中的某元素ej=j||uρ(j)进行(k,k)秘密分享,即随机生成k-1个λ′比特的字符串r1,r2,…rk-1,计算
Figure FDA0003975634190000024
共得到e的k个秘密分享值r1,r2,…rk
3)计算ej中uρ(j)部分的索引值:h1(uρ(j)),h2(uρ(j)),…hk(uρ(j)),并分别存入步骤2)中生成的秘密分享值r1,r2,…rk
4)重复步骤2)-3)过程直到集合中所有元素均存入CBF,若某元素秘密分享值存入时所述索引值中的位置已被占用,则选取与该位置相同的值;
5)将CBF中的剩余位置用λ′比特的随机数填满;
6)CBF生成后得到权限验证量pf=(M,CBF);
步骤D具体包括以下步骤:
D1、权限验证
当云服务器收到查看方用户的对被查看方用户的数据查看请求后,需通过查看方用户的用户标签tag和被查看方用户的权限验证量pf进行权限验证和匹配;
首先使用CBF询问算法验证查看方用户的用户属性是否存在于访问策略A中,包括以下步骤:
1)用查看方用户的用户标签tag中某元素ui计算索引值h1(ui),h2(ui),…hk(ui),并取出对应位置的k个数值求异或得到ei′;
2)若ei′的后Lu位与ui相等,则元素ei′存在于CBF中,ei′的剩余位数表示该用户属性在生成矩阵中的位置,若不相等,则该用户属性不在访问结构所包含的属性的集合中,其中,Lu为属性i对应的认证码ui的比特长度;
3)重复1)-2)的步骤,直到找到查看方用户的用户标签tag与被查看方用户的权限验证量pf的所有交集Se’={i||ui};
若交集Se’不为空,进一步验证
Figure FDA0003975634190000031
其中,Mi为矩阵M的第i行,若能够重构出M的列满秩子阵,即存在并能够求出这样的一组常数ωi满足上式,也就是说,交集Se’中的元素对应的属性包含能够满足访问策略的最小子集,即查看方用户满足被查看方用户的访问策略,能够成功解密;
若查看方用户满足被查看方用户的访问策略,则继续执行步骤D2,否则输出⊥;
D2、部分解密服务
权限验证和匹配成功后,服务器为查看方用户提供外包部分解密服务得到部分密文PCT:
Figure FDA0003975634190000032
并发送给查看方用户,其中,
Figure FDA0003975634190000033
为连续求积通式,tkρ(j)为第四密钥组的转换密钥;
D3、用户解密
查看方用户计算message=C/(PCT)z得到想要查看的数据;
D4、外包验证
查看方用户验证
Figure FDA0003975634190000041
和Ver是否相等,以保证计算外包的正确性,相等则message可用,否则输出⊥。
2.根据权利要求1所述可验证解密权限的策略隐藏属性基加密方法,其特征在于,系统参数的生成包括:
系统运行初始化算法,获得双线性群的描述:(N,p1,p2,p3,p4,G,GT,e),其中p1,p2,p3,p4为不同的素数,阶数N=p1p2p3p4,G和GT是阶为N的循环群,用
Figure FDA0003975634190000042
表示G的p1,p2,p3,p4阶子群,双线性映射函数e:G×G→GT
设属性集合为
Figure FDA0003975634190000043
ZN为正整数模N的剩余类,取GT的一个生成元gT作为消息基量,取随机群元素f∈G作为外包验证参量,外包验证函数H0:{0,1}*→ZN,选择k0作为HMAC的密钥;
选三个随机值α,a,b∈ZN,选随机群元素
Figure FDA0003975634190000044
作为标准运算基量,g3
Figure FDA0003975634190000045
的一个生成元,选
Figure FDA0003975634190000046
对每个属性
Figure FDA0003975634190000047
随机选ti∈ZN作为属性对应随机值,并计算ui=HMAC(k0,i)得到属性i与对应ui的列表Ti-u
公开参数
Figure FDA0003975634190000048
主密钥MSK={k0,gα,g3},其中,k0为HMAC的密钥。
3.根据权利要求2所述可验证解密权限的策略隐藏属性基加密方法,其特征在于,云辅助下的布隆过滤器CBF的生成包括:
系统使用(m,n,k,H,λ′)-CBF定义一个云辅助下的布隆过滤器,其中安全参数λ′作为数组中字符串位数,λ′等于ui的比特长度Lu与M的行数的最大比特长度Lm之和,M是线性秘密共享访问结构中的生成矩阵,m为CBF 长度,n为集合元素个数,H={h1,h2,…hk}为k个相互独立的散列函数,其映射值范围是[0,m-1]。
4.根据权利要求3所述可验证解密权限的策略隐藏属性基加密方法,其特征在于,步骤B中用户属性私钥SK的生成包括:
授权中心执行密钥生成算法:选随机数t,u∈ZN
Figure FDA0003975634190000051
其中,R、R′和R″均为群
Figure FDA0003975634190000052
中的随机群元素,{Ri}i∈S为群
Figure FDA0003975634190000053
中的随机群元素组,计算得到用户属性私钥
Figure FDA0003975634190000054
并颁发给用户,其中
Figure FDA0003975634190000055
为用户属性集合,gαgatgbuR为第一私钥,gtR′为第二私钥,guR″为第三私钥,
Figure FDA0003975634190000056
为第四私钥组,gαgatgbu为ga、gb以及随机数t,u计算得到的过程值;
用户标签tag的生成包括:
授权中心根据用户属性集合S和列表Ti-u,选取S中的属性i在列表Ti-u中对应的ui值作为用户标签tag并颁发给用户,即
Figure FDA0003975634190000057
用户转换密钥TK的生成包括:
用户随机选择秘密值z∈ZN,使得gcd(z,N)=1,其中,gcd()为最大公约数通式,根据用户属性私钥计算得到用户转换密钥
Figure FDA0003975634190000058
Figure FDA0003975634190000059
并将转换密钥发送给云服务器。
CN201910677549.7A 2019-07-25 2019-07-25 一种可验证解密权限的策略隐藏属性基加密方法 Active CN110390203B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910677549.7A CN110390203B (zh) 2019-07-25 2019-07-25 一种可验证解密权限的策略隐藏属性基加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910677549.7A CN110390203B (zh) 2019-07-25 2019-07-25 一种可验证解密权限的策略隐藏属性基加密方法

Publications (2)

Publication Number Publication Date
CN110390203A CN110390203A (zh) 2019-10-29
CN110390203B true CN110390203B (zh) 2023-03-24

Family

ID=68287474

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910677549.7A Active CN110390203B (zh) 2019-07-25 2019-07-25 一种可验证解密权限的策略隐藏属性基加密方法

Country Status (1)

Country Link
CN (1) CN110390203B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111431715B (zh) * 2020-03-30 2020-12-18 中南民族大学 一种支持隐私保护的策略控制签名方法
CN111541535B (zh) * 2020-04-17 2021-12-28 西南交通大学 一种可验证搜索结果的布尔检索属性基加密方法
CN111859030B (zh) * 2020-07-09 2023-04-28 西南交通大学 一种支持复合数据的公开审计方法
CN113423086B (zh) * 2021-03-18 2022-08-05 北京邮电大学 车辆匹配方法及其相关设备
CN114268482A (zh) * 2021-12-15 2022-04-01 北京工业大学 一种基于属性布隆过滤器的快速策略检索方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209790B (zh) * 2016-06-28 2020-02-07 电子科技大学 一种隐藏密文策略的高效可验证外包属性基加密方法
CN106326360B (zh) * 2016-08-10 2019-04-09 武汉科技大学 一种云环境中密文数据的模糊多关键词检索方法
CN107256248B (zh) * 2017-06-07 2020-05-08 福州大学 云存储安全中基于通配符的可搜索加密方法
CN109361644B (zh) * 2018-08-22 2021-03-16 西安工业大学 一种支持快速搜索和解密的模糊属性基加密方法

Also Published As

Publication number Publication date
CN110390203A (zh) 2019-10-29

Similar Documents

Publication Publication Date Title
CN110390203B (zh) 一种可验证解密权限的策略隐藏属性基加密方法
Li et al. Efficient medical big data management with keyword-searchable encryption in healthchain
Tong et al. Cloud-assisted mobile-access of health data with privacy and auditability
Jung et al. Control cloud data access privilege and anonymity with fully anonymous attribute-based encryption
Paulet et al. Privacy-preserving and content-protecting location based queries
Yu et al. LH-ABSC: A lightweight hybrid attribute-based signcryption scheme for cloud-fog-assisted IoT
Han et al. A data sharing protocol to minimize security and privacy risks of cloud storage in big data era
Han et al. Efficient and robust attribute-based encryption supporting access policy hiding in Internet of Things
WO2019098941A1 (en) System and method for private integration of datasets
CN110120873B (zh) 基于云外包交易数据的频繁项集挖掘方法
Ming et al. Efficient revocable multi-authority attribute-based encryption for cloud storage
CN110086615A (zh) 一种媒介混淆的分布式多授权方密文策略属性基加密方法
Liu et al. Offline/online attribute‐based encryption with verifiable outsourced decryption
Fugkeaw A fine-grained and lightweight data access control model for mobile cloud computing
Nasiraee et al. Privacy-preserving distributed data access control for cloudiot
Alimohammadi et al. A secure key-aggregate authentication cryptosystem for data sharing in dynamic cloud storage
Ramesh et al. PCS-ABE (t, n): a secure threshold multi authority CP-ABE scheme based efficient access control systems for cloud environment
Liu et al. Verifiable attribute-based keyword search encryption with attribute revocation for electronic health record system
Suveetha et al. Ensuring confidentiality of cloud data using homomorphic encryption
CN111447058A (zh) 基于中国剩余定理的图书资源访问控制方法
CN116319058A (zh) 一种基于区块链的属性和策略隐藏的访问控制方法
Kavuri et al. An improved integrated hash and attributed based encryption model on high dimensional data in cloud environment
Yarava et al. Efficient and Secure Cloud Storage Auditing Based on the Diffie-Hellman Key Exchange.
Zhou et al. Secure fine-grained access control of mobile user data through untrusted cloud
Hariss et al. Cloud assisted privacy preserving using homomorphic encryption

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