CN117909995A - 一种基于属性加密的有条件开放类公共数据访问控制系统及方法 - Google Patents
一种基于属性加密的有条件开放类公共数据访问控制系统及方法 Download PDFInfo
- Publication number
- CN117909995A CN117909995A CN202311522819.XA CN202311522819A CN117909995A CN 117909995 A CN117909995 A CN 117909995A CN 202311522819 A CN202311522819 A CN 202311522819A CN 117909995 A CN117909995 A CN 117909995A
- Authority
- CN
- China
- Prior art keywords
- data
- ciphertext
- ogdp
- node
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 10
- 230000001737 promoting effect Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000005520 cutting process Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- SLXKOJJOQWFEFD-UHFFFAOYSA-N 6-aminohexanoic acid Chemical compound NCCCCCC(O)=O SLXKOJJOQWFEFD-UHFFFAOYSA-N 0.000 claims description 2
- 125000004122 cyclic group Chemical group 0.000 claims description 2
- 238000011217 control strategy Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 5
- 238000012550 audit Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于属性加密的有条件开放类公共数据访问控制系统及方法,系统包括可信密钥分发中心TKGC、数据提供者DP、数据使用者DU、政府数据开放平台OGDP、云服务器CS;方法包括公共参数初始化、数据加密、密文去重存储、密钥生成、密文解密。DP将有条件开放类公共数据加密并设置访控策略后上传到OGDP,实现对DU的细粒度访问控制,DU通过OGDP提交数据开放申请可快速得到审批结果,有效提高了有条件开放类公共数据的安全性和审核效率。此方法引入基于密文策略的属性加密访问控制方法,实现DP和DU在不侵犯隐私的前提下开放公共数据,同时根据有条件开放类公共数据的唯一政务信息资源代码建立联合索引实现重复数据的消除,减少数据占用的CS存储空间。
Description
技术领域
本发明涉及一种数据安全技术,具体为一种基于属性加密的有条件开放类公共数据访问控制系统及方法。
背景技术
随着数字化时代的到来,政府数据的开放和共享已成为促进创新、推动社会发展的重要举措。为了能够在数据开放共享和数据保护之间取得平衡,大部分地方立法建立有条件开放类、无条件开放和不予开放的数据分类体系,有条件开放类数据指政府按特定方式向社会公开的政务数据,确保具有高价值却又有一定敏感性的数据只向符合特定条件的用户或组织开放。其中,政府数据开放平台作为政府数字化转型的基础设施,旨在促进各政府部门向公众开放可下载和利用的数据,为企业和个人提供数据支持,推动信息资源增值服务业的发展,并促进相关数据分析和研究工作的进行。不过目前仍然存在着一些问题,有条件开放类的政府数据通过政府数据开放平台向数据提供部门提出申请的方式进行使用,根据各省、市的立法规定申请审批回复时间在2个工作日到10个工作日范围内。这种“依申请公开”模式有效保障了公众自主选择自身需要的信息的权利,但是大多数审核尚未进行或未曾通过,某些省市的政府数据开放平台应用中出现了申请审批超时、数据专员管理不规范等问题,导致数据请求功能缺乏及时、有效的回应,造成数据延迟共享和应用,以及人工审核过程中无意间提高或降低某些数据的开放程度可能带来数据泄露风险。
因此,为了提高审核效率和准确性,进一步扩大数据开放程度,我们提出了一种基于属性加密的有条件开放类公共数据访问控制系统及方法。该方法基于密文策略的属性加密方案,允许数据提供者对有条件开放类数据进行加密并设置访问控制策略,支持多个数据使用者对数据进行细粒度访问,可以根据数据使用者的申请属性信息,动态生成相应的访问密钥,所有属性满足访问策略的用户均能够获取有条件开放类数据,极大缩短了申请结果的回复时间。同时利用索引技术实现上传数据去重,减少云存储中心的数据冗余。
发明内容
本发明针对公共数据开放领域中有条件开放类数据依申请开放审核效率和安全性要求更高的问题,以及重复数据占用大量云存储空间的问题,将政府数据开放平台与CP-ABE加密技术结合,提出了一种基于属性加密的有条件开放类公共数据访问控制系统及方法。数据提供者对有条件开放类数据加密并设置访控策略后,通过政府数据开放平台实现数据去重并上传到云服务器上,这样可对数据使用者实现细粒度的访问授权,所有属性满足访问策略的数据使用者均能够获取有条件开放类数据。在保证有条件开放类数据加密传输和存储安全的同时,提高了审核效率和准确性,减少了云存储空间的占用。
本发明的技术方案为:一种基于属性加密的有条件开放类公共数据访问控制系统及方法,系统包括可信密钥分发中心TKGC、数据提供者DP、数据使用者DU、政府数据开放平台OGDP、云服务器CS五个实体;
可信密钥生成中心TKGC:主要负责公共参数初始化、以及生成数据提供者和数据使用者相关的用户密钥。
数据提供者DP:是指将数据开放给政府数据开放平台的各级政府部门。DP作为开放数据的来源,对数据拥有所有权和控制权。DP会为每一个有条件开放类公共数据编制唯一的政务信息资源代码,其中政务信息资源代码结构由前段码后段码组成。前段码由“类”、“项”、“目”、“细目”组成,作为政务信息资源的分类码;后段码为政务信息资源的顺序码。为保证数据传输、存储和使用安全,他们采用对称密钥加密有条件开放类数据并设置访问策略,然后使用CP-ABE算法加密对称密钥,最后将密文、访问策略以及唯一的政务信息资源代码传到OGDP。
数据使用者DU:是指需要访问有条件开放类数据资源的政府部门、研究人员、公众等。对于开放属性为有条件开放类的数据,需要依申请获取。申请时将自己的属性集合提交给TKGC获得用户私钥,并将私钥提交给OGDP进行数据申请,OGDP进行审批判断DU是否满足访问策略,DU满足访问策略后OGDP将数据下载接口开放给DU,DU方能获取数据。
政府数据开放平台OGDP:是指促进数据开放共享的一个平台,支持开放数据的获取、管理和共享。主要负责将DP提供的有条件开放类公共数据进行去重存储,审核进行数据申请的DU身份的合法性并决定是否进行数据开放。去重策略主要根据有条件开放类公共数据的政务信息资源代码建立联合索引实现,OGDP对上传数据的政务信息资源唯一代码切割之后通过索引表进行快速查找,如果索引表中不存在重复数据,将数据上传到CS并将新添加数据信息加入索引表中。OGDP对数据申请的审核通过CP-ABE的密文解密算法实现,主要将DU私钥与访问策略进行匹配,若匹配成功,则审核通过,将加密的数据进行解密并将数据下载接口开放给DU;否则,拒绝该申请。
云服务器CS:主要为OGDP提供数据对象存储服务,负责将DP提供的有条件开放类数据密文存储在云存储中心,以及为满足访问策略的DU从云服务器下载所需数据的密文。
对于上述描述的系统实体,该方案包括以下步骤:
A初始化:执行Setup(1λ)→(PK,MK),此部分由TKGC完成,输入安全参数λ,输出公钥PK,主密钥MK。
B数据加密:执行Encrypt(PK,M,κ,Γ)→(Cm,C),此部分由DP完成,将公钥PK、有条件开放类数据明文M、对称加密密钥κ和DP自定义的访问策略Γ作为输入,首先使用对称密钥κ将明文M加密成数据密文Cm,然后使用密文访问策略Γ加密对称密钥κ后生成对称密钥密文Cκ,最终生成密文C。
C密文去重存储:Duplicate(UUIDm,Cm,C)→Store(UUIDm,Cm,C),OGDP执行此算法,其中UUIDm为有条件开放类数据M的唯一政务信息资源代码,是一串由阿拉伯数字组成的字符串。OGDP在本地数据库建立一个表用于存储每次上传到CS的有条件类开放数据信息并在表上创建联合索引以实现快速查找和去重。OGDP将UUIDm按照编码规则切割后在联合索引表中进行搜索,如果未存在重复数据,则将数据密文Cm采用对象存储到CS中,并将含有对称密钥密文的C、以及UUIDm存入本地数据表中。
D密钥生成:KeyGen(PK,MK,S)→SK,TKGC运行该算法,该算法以公钥PK、主密钥MK和DU的属性集S作为输入,为DU生成私钥SK。
E密文解密:Decrypt(PK,SK,C)→M,OGDP执行该算法,该算法以公钥PK,私钥SK,含有对称密钥密文的密文C作为输入,解密过程为递归算法,将私钥与对称密钥密文进行匹配,若满足访问策略则申请通过,OGDP先解密获得对称密钥,然后从云端下载数据密文,使用对称密钥将密文解密后得到明文M,最后将申请数据的下载接口开放给用户。
本发明是一种基于属性加密的有条件开放类公共数据访问控制系统及方法,将政府数据开放平台与CP-ABE加密技术结合,对数据使用者实现细粒度的访问授权的同时还提高了有条件开放类数据依申请开放审核效率和安全性。本发明还考虑了重复数据占用大量云存储的问题,通过索引技术实现重复数据的消除,减少云存储空间的占用。
附图说明
图1为本发明系统框架图;
图2为本发明访问控制方法流程图;
图3为本发明创建联合索引数据表的表结构。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
本发明提供一种基于属性加密的有条件开放类公共数据访问控制系统及方法,其大体过程如图1所示,系统包括可信密钥分发中心TKGC、数据提供者DP、数据使用者DU、政府数据开放平台OGDP、云服务器CS五个实体;
可信密钥生成中心TKGC:主要负责公共参数初始化、以及生成数据提供者和数据使用者相关的用户密钥。
数据提供者DP:是指将数据开放给政府数据开放平台的各级政府部门。DP作为开放数据的来源,对数据拥有所有权和控制权。DP会为每一个有条件开放类公共数据编制唯一的政务信息资源代码,其中政务信息资源代码结构由前段码后段码组成。前段码由“类”、“项”、“目”、“细目”组成,作为政务信息资源的分类码;后段码为政务信息资源的顺序码。为保证数据传输、存储和使用安全,他们采用对称密钥加密有条件开放类数据并设置访问策略,然后使用CP-ABE算法加密对称密钥,最后将密文、访问策略以及唯一的政务信息资源代码传到OGDP。
数据使用者DU:是指需要访问有条件开放类数据资源的政府部门、研究人员、公众等。对于开放属性为有条件开放类的数据,需要依申请获取。申请时将自己的属性集合提交给TKGC获得用户私钥,并将私钥提交给OGDP进行数据申请,OGDP进行审批判断用户是否满足访问策略,DU满足访问策略后OGDP将数据下载接口开放给DU,DU方能获取数据。
政府数据开放平台OGDP:是指促进数据开放共享的一个平台,支持开放数据的获取、管理和共享。主要负责将DP提供的有条件开放类公共数据进行去重存储,审核进行数据申请的DU身份的合法性并决定是否进行数据开放。去重策略主要根据有条件开放类公共数据的政务信息资源代码建立联合索引实现,OGDP对上传数据的政务信息资源唯一代码切割之后通过索引表进行快速查找,如果索引表中不存在重复数据,将数据上传到CS并将新添加数据信息加入索引表中。OGDP对数据申请的审核通过CP-ABE的密文解密算法实现,主要将DU私钥与访问策略进行匹配,若匹配成功,则审核通过,将加密的数据进行解密并将数据下载接口开放给DU;否则,拒绝该申请。
云服务器CS:主要为OGDP提供数据对象存储服务,负责将DP提供的有条件开放类数据密文存储在云存储中心,以及为满足访问策略的DU从云服务器下载所需数据的密文。
如图2所示为一种基于属性加密的有条件开放类公共数据访问控制系统及方法流程图,访问控制方法包含以下步骤:
A初始化:执行Setup(1λ)→(PK,MK),此部分由TKGC完成,输入安全参数λ,输出公钥PK,主密钥MK。
具体的,步骤A进一步包括:
A-a:系统初始化生成安全参数λ和双线性映射参数(G1,G2,q,g,e,H),其中G1和G2为两个阶为素数q的乘法循环群,且满足双线性映射对e:G1×G1→G2,g为G1的生成元,定义一个哈希函数H:{0,1}*→G1,其中{0,1}*表示由任意长度的0和1组成的字符串,通常是二进制串,函数H表示将属性或策略字符串映射到群G1中。
A-b:TKGC随机选取2个元素α,β∈Zq,其中Zq表示模q的整数,定义h=gβ作为公钥PK的一个参数用于后续计算使用。最终生成公钥PK=(G1,g,H,h,e(g,g)α),主密钥MK=(α,β)。
B数据加密:执行Encrypt(PK,M,κ,Γ)→(Cm,C),此部分由DP完成,将公钥PK、有条件开放类数据明文M、对称加密密钥κ和DP自定义的访问策略Γ作为输入,首先使用对称密钥κ将明文M加密成数据密文Cm,然后使用密文访问策略Γ加密对称密钥κ后生成对称密钥密文Cκ,最终生成密文C。
具体的,步骤B进一步包括:
B-a:DP自定义密文策略的树形访问结构Γ。定义访问结构树Γ中所有节点集合为Z,访问树的叶子节点为属性,非叶子节点为门限操作。该算法为访问结构树Γ中的每个节点z∈Z选择一个多项式其中设多项式qz(x)的阶为dz=Kz-1,Kz为节点z的门限值,1≤Kz≤num(z),num(z)为节点z的孩子节点数目,为随机生成的dz个数,随机选取一个元素c∈Zq为要隐藏的数值且qz(0)=c,将节点z的孩子节点从左至右依次标记为1,2,3,...,num(z),则qz(x)中的x∈{1,2,3,...,num(z)}为节点z的孩子节点的标记,接下来从根节点root开始自上而下为每个节点选择多项式。
B-b:首先为树形访问结构Γ的根节点root随机选择一个元素μ∈Zq,构造根节点root的多项式为qroot(x),qroot(0)=μ表示根节点root多项式的常数项为μ,即根节点想要隐藏的数值为μ。然后为除根节点root的非叶子节点v∈Z随机生成多项式qv(x),为叶子节点y∈Z随机生成多项式qy(x)。
B-c:定义Y为访问结构树Γ中所有叶子节点y的集合,即y∈Y,Y∈Z。定义att(y)为与叶子节点y相关联的属性。对于访问结构树Γ中的每一个叶子节点y,计算Cy、Cy'是对叶子节点的操作,每个叶子节点计算之后都会得到一个值,用于后续叶子节点的解密计算,其中qy(0)表示叶子节点y的多项式的常数项,H(att(y))表示将与叶子节点y相关联的属性字符串映射到群G1中。
B-d:选择一个对称密钥κ加密有条件开放类数据M,得到数据密文Cm=Enck(M)。根据CP-ABE算法对密钥κ进行加密,随机选择一个元素s∈Zq,计算对称密钥密文Ck=κ×e(g,g)sα,C'=hs,其中C'作为密文C的一个参数用于后续解密对称密钥密文Ck。DP得到密文集合T={Cm,C=(Γ,Ck,C',Cy,C'y)}。
C密文去重存储:Duplicate(UUIDm,Cm,C)→Store(UUIDm,Cm,C),OGDP执行此算法,其中UUIDm为有条件开放类数据M的唯一政务信息资源代码,是一串由阿拉伯数字组成的字符串。OGDP在本地数据库建立一个表用于存储每次上传到CS的有条件类开放数据信息并在表上创建联合索引以实现快速查找和去重。OGDP将UUIDm按照编码规则切割后在联合索引表中进行搜索,如果未存在重复数据,则将数据密文Cm采用对象存储到CS中,并将含有对称密钥密文的C、以及UUIDm存入本地数据表中。
具体的,步骤C进一步包括:
C-a:OGDP在本地数据库创建并维护一张数据表,如图3所示。表字段信息包括(id,class,term,list,dlist,sequence,url,cipher_text),其中对表中五个字段(class,term,list,dlist,sequence)创建联合索引。将DP上传的有条件公开数据的唯一信息资源编码UUIDm=class+term+list+dlist+/+sequence,根据编码规则做切割运算生成一条记录(class,term,list,dlist,sequence),在OGDP中通过联合索引表查找是否存在相同记录。如果存在相同记录,则上传的是重复数据,拒绝上传。
C-b:如果查找为空,OGDP使用对象存储服务将DP上传的数据密文Cm存入云服务器中,并获得在云服务器中的存储地址url。
C-c:OGDP将UUIDm切割生成的记录(class,term,list,dlist,sequence),数据密文Cm的存储地址url,以及密文C=cipher_text,在本地数据库表中添加一条新的记录(id,class,term,list,dlist,sequence,url,cipher_text)。
D密钥生成:KeyGen(PK,MK,S)→SK,TKGC运行该算法,该算法以公钥PK、主密钥MK和DU的属性集S作为输入,为DU生成私钥SK。
具体的,TKGC调用(PK,MK,S)→SK算法为数据使用者生成访问该数据的专属解密私钥。TKGC选择一个随机元素γ∈Zq,然后为用户属性集合S中的每个属性j∈S选择一个对应的随机元素rj∈Zq,计算U=g(α+γ)/β,Uj、Uj'是对用户属性的操作,每个属性计算之后都会得到一个值,用于后续解密计算,其中H(j)表示将与属性j相关联的属性字符串映射到群G1中,U用于后续解密对称密钥。最后,输出与DU属性集合S绑定的属性密钥SK=(U,Uj,U'j)。
E密文解密:Decrypt(PK,SK,C)→M,OGDP执行该算法,该算法以公钥PK,私钥SK,含有对称密钥密文的密文C作为输入,解密过程为递归算法,将私钥与对称密钥密文进行匹配,若满足访问策略则申请通过,OGDP先解密获得对称密钥,然后从云端下载数据密文,使用对称密钥将密文解密后得到明文M,最后将申请数据的下载接口开放给用户。
具体的,步骤E进一步包括:
E-a:DU对唯一信息资源编码为UUIDm的有条件开放数据进行数据申请并发送密钥SK=(U,Uj,U'j)。OGDP根据UUIDm在数据表中快速查找获取对应的密文C=(Γ,Ck,C',Cy,C'y)。对于访问结构树Γ的叶子节点y,当att(y)∈S时,即树Γ的叶子节点集合Y与用户属性集合S中存在可匹配节点j=y,根据双线性映射规则对叶子节点y计算DNy,具体解密计算如下:
否则,输出0。
E-b:对于Γ中的非叶子节点v,通过执行递归算法来计算DNv。对非叶子节点v的所有孩子节点vchild计算令/>为任意Kv大小的孩子结点vchild的集合,其中Kv为节点v的门限值,1≤Kv≤num(v),num(v)为节点z的孩子节点数目。将节点v的孩子节点从左至右依次标记为1,2,3,...,num(v),定义i=index(vchild)为孩子节点vchild的标记,为任意Kv大小的孩子结点vchild的标记集合,为拉格朗日插值法将非叶子节点v的所有子节点的多项式值qv(index(vchild))加入计算得到非叶子节点v的多项式的常数项qv(0)。如果用户属性集S存在的集合,即/>对非叶子节点v计算DNv,具体解密如下:
按照上述计算方式从叶子节点到根节点自下而上执行递归计算得到根节点的解密结果为求得根节点隐藏的数值qroot(0)=μ。
E-c:OGDP根据E-b中输出结果判断用户是否开放数据给用户。如果用户属性集满足访问策略,则存在qroot(0)=μ。计算对称密钥
使用对称密钥κ解密密文Cm获得明文M,计算M=Enck(Cm),将明文M的数据下载接口开放给DU。如果不存在,则返回审批结果不通过。
Claims (7)
1.一种基于属性加密的有条件开放类公共数据访问控制系统及方法,其特征在于,系统包括可信密钥分发中心TKGC、数据提供者DP、数据使用者DU、政府数据开放平台OGDP、云服务器CS五个实体;
可信密钥生成中心TKGC:负责公共参数初始化、以及生成数据提供者和数据使用者相关的用户密钥;
数据提供者DP:是指将数据开放给政府数据开放平台的各级政府部门;DP作为开放数据的来源,对数据拥有所有权和控制权;DP会为每一个有条件开放类公共数据编制唯一的政务信息资源代码,其中政务信息资源代码结构由前段码后段码组成;前段码由“类”、“项”、“目”、“细目”组成,作为政务信息资源的分类码;后段码为政务信息资源的顺序码;为保证数据传输、存储和使用安全,他们采用对称密钥加密有条件开放类数据并设置访问策略,然后使用CP-ABE算法加密对称密钥,最后将密文、访问策略以及唯一的政务信息资源代码传到OGDP;
数据使用者DU:是指需要访问有条件开放类数据资源的政府部门、研究人员、公众等;对于开放属性为有条件开放类的数据,需要依申请获取;申请时将自己的属性集合提交给TKGC获得用户私钥,并将私钥提交给OGDP进行数据申请,OGDP进行审批判断用户是否满足访问策略,DU满足访问策略后OGDP将数据下载接口开放给DU,DU方能获取数据;
政府数据开放平台OGDP:是指促进数据开放共享的一个平台,支持开放数据的获取、管理和共享;负责将DP提供的有条件开放类公共数据进行去重存储,审核进行数据申请的DU身份的合法性并决定是否进行数据开放;去重策略根据有条件开放类公共数据的政务信息资源代码建立联合索引实现,OGDP对上传数据的政务信息资源唯一代码切割之后通过索引表进行快速查找,如果索引表中不存在重复数据,将数据上传到CS并将新添加数据信息加入索引表中;OGDP对数据申请的审核通过CP-ABE的密文解密算法实现,将DU私钥与访问策略进行匹配,若匹配成功,则审核通过,将加密的数据进行解密并将数据下载接口开放给DU;否则,拒绝该申请;
云服务器CS:为OGDP提供数据对象存储服务,负责将DP提供的有条件开放类数据密文存储在云存储中心,以及为满足访问策略的DU从云服务器下载所需数据的密文。
2.应用如权利要求1所述的系统的访问控制方法,其特征在于,包含以下步骤:
A初始化:执行Setup(1λ)→(PK,MK),此部分由TKGC完成,输入安全参数λ,输出公钥PK,主密钥MK;
B数据加密:执行Encrypt(PK,M,κ,Γ)→(Cm,C),此部分由DP完成,将公钥PK、有条件开放类数据明文M、对称加密密钥κ和DP自定义的访问策略Γ作为输入,首先使用对称密钥κ将明文M加密成数据密文Cm,然后使用密文访问策略Γ加密对称密钥κ后生成对称密钥密文Cκ,最终生成密文C;
C密文去重存储:Duplicate(UUIDm,Cm,C)→Store(UUIDm,Cm,C),OGDP执行此算法,其中UUIDm为有条件开放类数据M的唯一政务信息资源代码,是一串由阿拉伯数字组成的字符串;OGDP在本地数据库建立一个表用于存储每次上传到CS的有条件类开放数据信息并在表上创建联合索引以实现快速查找和去重;OGDP将UUIDm按照编码规则切割后在联合索引表中进行搜索,如果未存在重复数据,则将数据密文Cm采用对象存储到CS中,并将含有对称密钥密文的C、以及UUIDm存入本地数据表中;
D密钥生成:KeyGen(PK,MK,S)→SK,TKGC运行该算法,该算法以公钥PK、主密钥MK和DU的属性集S作为输入,为DU生成私钥SK;
E密文解密:Decrypt(PK,SK,C)→M,OGDP执行该算法,该算法以公钥PK,私钥SK,含有对称密钥密文的密文C作为输入,解密过程为递归算法,将私钥与对称密钥密文进行匹配,若满足访问策略则申请通过,OGDP先解密获得对称密钥,然后从云端下载数据密文,使用对称密钥将密文解密后得到明文M,最后将申请数据的下载接口开放给用户。
3.根据权利要求2所述的方法,其特征在于,所述步骤A还包括:
A-a:系统初始化生成安全参数λ和双线性映射参数(G1,G2,q,g,e,H),其中G1和G2为两个阶为素数q的乘法循环群,且满足双线性映射对e:G1×G1→G2,g为G1的生成元,定义一个哈希函数H:{0,1}*→G1,其中{0,1}*表示由任意长度的0和1组成的字符串,通常是二进制串,函数H表示将属性或策略字符串映射到群G1中;
A-b:TKGC随机选取2个元素α,β∈Zq,其中Zq表示模q的整数,定义h=gβ作为公钥PK的一个参数用于后续计算使用;最终生成公钥PK=(G1,g,H,h,e(g,g)α),主密钥MK=(α,β)。
4.根据权利要求2所述的方法,其特征在于,所述步骤B还包括:
B-a:DP自定义密文策略的树形访问结构Γ;定义访问结构树Γ中所有节点集合为Z,访问树的叶子节点为属性,非叶子节点为门限操作;该算法为访问结构树Γ中的每个节点z∈Z选择一个多项式其中设多项式qz(x)的阶为dz=Kz-1,Kz为节点z的门限值,1≤Kz≤num(z),num(z)为节点z的孩子节点数目,/>为随机生成的dz个数,随机选取一个元素c∈Zq为要隐藏的数值且qz(0)=c,将节点z的孩子节点从左至右依次标记为1,2,3,...,num(z),则qz(x)中的x∈{1,2,3,...,num(z)}为节点z的孩子节点的标记,接下来从根节点root开始自上而下为每个节点选择多项式;
B-b:首先为树形访问结构Γ的根节点root随机选择一个元素μ∈Zq,构造根节点root的多项式为qroot(x),qroot(0)=μ表示根节点root多项式的常数项为μ,即根节点想要隐藏的数值为μ;然后为除根节点root的非叶子节点v∈Z随机生成多项式qv(x),为叶子节点y∈Z随机生成多项式qy(x);
B-c:定义Y为访问结构树Γ中所有叶子节点y的集合,即y∈Y,Y∈Z;定义att(y)为与叶子节点y相关联的属性;对于访问结构树Γ中的每一个叶子节点y,计算Cy、Cy'是对叶子节点的操作,每个叶子节点计算之后都会得到一个值,用于后续叶子节点的解密计算,其中qy(0)表示叶子节点y的多项式的常数项,H(att(y))表示将与叶子节点y相关联的属性字符串映射到群G1中;
B-d:选择一个对称密钥κ加密有条件开放类数据M,得到数据密文Cm=Enck(M);根据CP-ABE算法对密钥κ进行加密,随机选择一个元素s∈Zq,计算对称密钥密文Ck=κ×e(g,g)sα,C'=hs,其中C'作为密文C的一个参数用于后续解密对称密钥密文Ck;DP得到密文集合T={Cm,C=(Γ,Ck,C',Cy,C'y)}。
5.根据权利要求2所述的方法,其特征在于,所述步骤C还包括:
C-a:OGDP在本地数据库创建并维护一张数据表,如图3所示;表字段信息包括(id,class,term,list,dlist,sequence,url,cipher_text),其中对表中五个字段(class,term,list,dlist,sequence)创建联合索引;将DP上传的有条件公开数据的唯一信息资源编码UUIDm=class+term+list+dlist+/+sequence,根据编码规则做切割运算生成一条记录(class,term,list,dlist,sequence),在OGDP中通过联合索引表查找是否存在相同记录;如果存在相同记录,则上传的是重复数据,拒绝上传;
C-b:如果查找为空,OGDP使用对象存储服务将DP上传的数据密文Cm存入云服务器中,并获得在云服务器中的存储地址url;
C-c:OGDP将UUIDm切割生成的记录(class,term,list,dlist,sequence),数据密文Cm的存储地址url,以及密文C=cipher_text,在本地数据库表中添加一条新的记录(id,class,term,list,dlist,sequence,url,cipher_text)。
6.根据权利要求2所述的方法,其特征在于,所述步骤D进一步包括:
TKGC调用(PK,MK,S)→SK算法为数据使用者生成访问该数据的专属解密私钥;TKGC选择一个随机元素γ∈Zq,然后为用户属性集合S中的每个属性j∈S选择一个对应的随机元素rj∈Zq,计算U=g(α+γ)/β,Uj、Uj'是对用户属性的操作,每个属性计算之后都会得到一个值,用于后续解密计算,其中H(j)表示将与属性j相关联的属性字符串映射到群G1中,U用于后续解密对称密钥;最后,输出与DU属性集合S绑定的属性密钥SK=(U,Uj,U'j)。
7.根据权利要求2所述的方法,其特征在于,所述步骤E还包括:
E-a:DU对唯一信息资源编码为UUIDm的有条件开放数据进行数据申请并发送密钥SK=(U,Uj,U'j);OGDP根据UUIDm在数据表中快速查找获取对应的密文C=(Γ,Ck,C',Cy,C'y);对于访问结构树Γ的叶子节点y,当att(y)∈S时,即树Γ的叶子节点集合Y与用户属性集合S中存在可匹配节点j=y,根据双线性映射规则对叶子节点y计算DNy,具体解密计算如下:
否则,输出0;
E-b:对于Γ中的非叶子节点v,通过执行递归算法来计算DNv;对非叶子节点v的所有孩子节点vchild计算令/>为任意Kv大小的孩子结点vchild的集合,其中Kv为节点v的门限值,1≤Kv≤num(v),num(v)为节点z的孩子节点数目;将节点v的孩子节点从左至右依次标记为1,2,3,...,num(v),定义i=index(vchild)为孩子节点vchild的标记,为任意Kv大小的孩子结点vchild的标记集合,为拉格朗日插值法将非叶子节点v的所有子节点的多项式值qv(index(vchild))加入计算得到非叶子节点v的多项式的常数项qv(0);如果用户属性集S存在的集合,即/>对非叶子节点v计算DNv,具体解密如下:
按照上述计算方式从叶子节点到根节点自下而上执行递归计算得到根节点的解密结果为求得根节点隐藏的数值qroot(0)=μ;
E-c:OGDP根据E-b中输出结果判断用户是否开放数据给用户;如果用户属性集满足访问策略,则存在qroot(0)=μ;计算对称密钥
使用对称密钥κ解密密文Cm获得明文M,计算M=Enck(Cm),将明文M的数据下载接口开放给DU;如果不存在,则返回审批结果不通过。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311522819.XA CN117909995A (zh) | 2023-11-15 | 2023-11-15 | 一种基于属性加密的有条件开放类公共数据访问控制系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311522819.XA CN117909995A (zh) | 2023-11-15 | 2023-11-15 | 一种基于属性加密的有条件开放类公共数据访问控制系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117909995A true CN117909995A (zh) | 2024-04-19 |
Family
ID=90695348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311522819.XA Pending CN117909995A (zh) | 2023-11-15 | 2023-11-15 | 一种基于属性加密的有条件开放类公共数据访问控制系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117909995A (zh) |
-
2023
- 2023-11-15 CN CN202311522819.XA patent/CN117909995A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105122721B (zh) | 用于管理针对加密数据的托管安全计算的方法和系统 | |
Sleiman et al. | Bitcoin message: Data insertion on a proof-of-work cryptocurrency system | |
Çetin et al. | Private queries on encrypted genomic data | |
Salam et al. | Implementation of searchable symmetric encryption for privacy-preserving keyword search on cloud storage | |
CN105760781B (zh) | 有序可推演大数据文件的存储方法、恢复方法和操作方法 | |
CN114826703B (zh) | 基于区块链的数据搜索细粒度访问控制方法及系统 | |
Garg et al. | Comparative analysis of cloud data integrity auditing protocols | |
US20190044697A1 (en) | Methods and systems for enhanced data-centric homomorphic encryption searching using geometric algebra | |
KR20080030344A (ko) | 바이리니어 맵을 이용한 브로드캐스트 암호화를 위한 방법및 장치 | |
US20180294951A1 (en) | Methods and systems for enhanced data-centric scalar multiplicative homomorphic encryption systems using geometric algebra | |
Abadi et al. | Feather: Lightweight multi-party updatable delegated private set intersection | |
EP4181456A1 (en) | Secure integer comparison using binary trees | |
Aruna et al. | Medical healthcare system with hybrid block based predictive models for quality preserving in medical images using machine learning techniques | |
Jiang et al. | Forward secure public-key authenticated encryption with conjunctive keyword search | |
Sandhia et al. | Secure sharing of data in cloud using MA-CPABE with elliptic curve cryptography | |
Tahbaz et al. | Evolutionary-based image encryption using Magic Square Chaotic algorithm and RNA codons truth table | |
Cai et al. | Privacy of outsourced two‐party k‐means clustering | |
Chinnasamy et al. | Secure and efficient data sharing scheme in cloud for protecting data in smart cities | |
Ramaiah et al. | Complete privacy preserving auditing for data integrity in cloud computing | |
Nayudu et al. | Dynamic Time and Location Information in Ciphertext-Policy Attribute-Based Encryption with Multi-Authorization. | |
KR100561845B1 (ko) | 애드 혹 망에서 멀티 레벨 접근 제어를 위한 데이터암호화 및 복호화 방법 | |
CN117909995A (zh) | 一种基于属性加密的有条件开放类公共数据访问控制系统及方法 | |
Chang | A flexible hierarchical access control mechanism enforcing extension policies | |
Srimathi et al. | Improved Cloud Storage Encryption Using Block Cipher-Based DNA Anti-Codify Model. | |
Wei et al. | Flexible, secure, and reliable data sharing service based on collaboration in multicloud environment |
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 |