CN117056983B - 多级可控数据共享授权方法、装置及区块链系统 - Google Patents
多级可控数据共享授权方法、装置及区块链系统 Download PDFInfo
- Publication number
- CN117056983B CN117056983B CN202311323967.9A CN202311323967A CN117056983B CN 117056983 B CN117056983 B CN 117056983B CN 202311323967 A CN202311323967 A CN 202311323967A CN 117056983 B CN117056983 B CN 117056983B
- Authority
- CN
- China
- Prior art keywords
- data
- user
- blockchain
- authorizer
- 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
- 238000013475 authorization Methods 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000013500 data storage Methods 0.000 claims abstract description 16
- 230000008569 process Effects 0.000 claims description 15
- 230000000977 initiatory effect Effects 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 3
- 238000011217 control strategy Methods 0.000 claims description 2
- 230000007423 decrease Effects 0.000 claims 1
- 230000003993 interaction Effects 0.000 abstract description 4
- 238000012545 processing Methods 0.000 abstract description 4
- 239000013598 vector Substances 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 235000006629 Prosopis spicigera Nutrition 0.000 description 1
- 240000000037 Prosopis spicigera Species 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
-
- 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
-
- 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
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2107—File encryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Abstract
本发明提供了一种多级可控数据共享授权方法、装置及区块链系统,涉及区块链数据处理领域。多级可控数据共享授权方法将数据处理流程分为初始化、数据存储、委托、分享四个阶段。通过区块链内智能合约提共多级授权和数据加密解密能力、配合文件存储系统提供存储数据能力,将参与实体分为授权者、被授权者、文件系统、区块链、密钥中心,通过链上智能合约不可改变的特性,解决数据隐私的问题;通过智能合约内预置逻辑,自动判断数据多级授权,解决数据所有者和数据使用者之间频繁交互问题。
Description
技术领域
本发明涉及区块链数据处理领域,尤其涉及一种多级可控数据共享授权方法、装置及区块链系统。
背景技术
个人数据的隐私保护一直作为当前信息时代的难题。如何在保证数据安全的要求下,进行高效的数据共享,避免无限制的数据泄露。每个人都应当对其个人数据拥有绝对的控制权。
通常在共享数据的系统中,常用的技术方案中,第一种是访问控制机制依赖于数据所有者的授权,数据授权的流程,需要使用方发起申请,由数据拥有者进行审批,这种常规方案需要数据所有者和数据使用者之间频繁的交互;第二种是使用授权访问控制机制,如基于角色的访问控制或者基于属性的访问控制机制等,用于决定哪些用户、角色有权访问特定的数据信息等。
现有技术方案存在以下缺点及不足:
1、灵活性有限。基于角色的权限分配,无法灵活地适应每个用户不同的数据访问诉求。如果需要为每个用户指定特定的权限,可能变得复杂且难以管理;
2、权限滥用。当一个用户被分配到某个角色时,该用户将拥有该角色所具有的所有权限,这可能导致滥用权限,获取过多数据的风险;
3、管理复杂性。基于属性的访问控制,需要对多个属性进行访问控制决策,
管理和配置这些属性的规则和策略会非常复杂;
4、性能开销。数据访问申请授权、审核通过,频繁的数据访问控制交互,会增加系统的计算和执行成本。
发明内容
发明目的:提出多级可控数据共享授权方法、装置及区块链系统,以解决现有技术存在的上述问题。
第一方面,提出一种多级可控数据共享授权方法,步骤如下:
初始化阶段:每个用户在区块链上注册一个账号;使用密钥中心生成系统参数,同时生成当前用户的预定参数用户标识用户特定属性;
数据存储阶段:每个用户上传其个人隐私数据至文件存储系统IPFS;每个文件存储系统IPFS文件被哈希计算后,返回其哈希地址;授权人上传对称加密密钥和哈希地址至区块链;每个区块链节点核验上传的数据后生成新的区块;
委托阶段:对链上数据感兴趣的用户发起访问申请,并支付授权人预定的费用值;验证当前授权人委托权限;
分享阶段:被授权人通过解密密文获取哈希地址和对称加密密钥,随后使用哈希地址向文件存储系统IPFS发起访问申请;所述文件存储系统IPFS接收到访问请求时,触发调用访问合约判断用户是否拥有权限;最终智能合约返回访问结果,被授权人从所述文件存储系统IPFS获得密文。
在第一方面进一步的实施例中,初始化阶段进一步包括如下步骤:
S101、系统初始化:系统给定一个安全参数和参数列表;
S102、注册:每个用户通过密钥中心注册一个账号;密钥中心根据用户的不同属性颁发私有密钥。
在第一方面进一步的实施例中,数据存储阶段进一步包括:
数据所有者将个人隐私数据对称加密后,上传至文件存储系统IPFS;文件存储系
统IPFS返回文件的哈希地址,授权人将对称加密密钥k和哈希地址加密后得到,
并将保存至区块链。
在第一方面进一步的实施例中,委托阶段中验证当前授权人委托权限的过程进一步包括:
委托授权深度合约验证授权人的再次委托权限,如果权限不足,则费用自动退回
至用户账号;如果授权人拥有对应的权限,生成一对一的重加密密钥,上传至区块链
后,绑定到用户账号内,并设置委托授权深度为D;表示第j-1级密文重加密为第j级
密文的算法。
委托合约接收到重加密密钥后,核验上层密钥是否被篡改过;如果满足未
被篡改的条件,委托合约使用密钥和进行重加密。
在第一方面进一步的实施例中,为达成多级委托授权的目标,被授权人也可以成为一个授权人;如果其他用户发起授权,被授权者可以执行相同的逻辑直至授权深度D减至0。
在第一方面进一步的实施例中,所述委托阶段包括生成重加密密钥和重加密密文的操作;用户通过发起委托授权深度合约调用,进行隐私数据token的分发;
合约执行的前提要求必须判断委托授权深度大于0,如果小于0,则立刻返还费
用;如果大于0,执行重加密密钥生成算法。
在第一方面进一步的实施例中,生成重加密密钥的过程包括:
S301:将发送给用户;其中,表示为用户j分发的密钥;sign(Sj)表
示对Sj签名;
S302:授权者根据算法生成重加密密钥,并调用委托合约:
;
式中,表示第j-1级密文重加密为第j级密文的算法;P1表示第一随机生成
器,P2表示第二随机生成器;表示将椭圆曲线映射值 e(P1, P2) 加密并进行
次幂运算,以实现密文的重加密操作;
S303:设置委托深度为,并调用委托授权深度合约。
第二方面,提出一种数据共享授权装置,该装置包括初始化模块、数据存储模块、委托模块三个组成部分。
初始化模块用于驱动密钥中心生成系统参数,同时生成当前用户的预定参数
用户标识用户特定属性;
数据存储模块用于接收每个用户上传的个人隐私数据;个人隐私数据被哈
希计算后,返回其哈希地址;授权人上传对称加密密钥和哈希地址至区块链;每个区块
链节点核验上传的数据后生成新的区块;
委托模块用于对链上数据感兴趣的用户发起访问申请,并支付授权人预定的费用值;验证当前授权人委托权限。
在第二方面进一步的实施例中,该数据共享授权装置还包括分享模块,用于驱动并执行如下流程:
被授权人通过解密密文获取哈希地址和对称加密密钥,随后使用哈希地址向文
件存储系统IPFS发起访问申请;所述文件存储系统IPFS接收到访问请求时,触发调用访问
合约判断用户是否拥有权限;最终智能合约返回访问结果,被授权人从所述文件存储系统
IPFS获得密文。
第三方面,提出一种应用如上第一方面所述的多级可控数据共享授权方法的区块链系统,其中,至少一个密钥中心接入该区块链系统;至少一个授权人接入该区块链系统;至少一个被授权人接入该区块链系统;至少一个文件存储系统接入该区块链系统;密钥中心负责生成上传至区块链的公开参数,并根据特定要求将密钥分发给所述被授权人。
在第三方面进一步的实施例中,授权人可以是数据所有者或者数据的被授权用户;数据所有者负责生成、上传、存储加密后的个人信息;作为最初的授权人,数据所有者制定访问控制策略,授权访问权限给其他用户并控制授权深度;授权人也可以重新授权其委派权限;
所述被授权人的属性必须满足预定义的访问控制策略,才能获得访问权限,并可将委托权限给其他的被授权人;并且,被授权人可以作为新的授权人,进一步委托其所拥有的权限;
所述文件存储系统通过基于文件内容分配哈希值存储和分享各种类型的文件;经过加密的个人数据存储在文件系统中,通过其哈希地址索引到具体的文件;
所述区块链系统内存储密钥、系统参数和重加密密钥;
在第三方面进一步的实施例中,该区块链系统还包括用于生成重加密密文和控制委托深度的智能合约。
相对于现有技术,本申请具有明显的技术优点:通过区块链内智能合约提共多级授权和数据加密解密能力、配合文件存储系统IPFS提供存储数据能力,将参与实体分为授权者、被授权者、文件系统、区块链、密钥中心,通过链上智能合约不可改变的特性,解决数据隐私的问题;通过智能合约内预置逻辑,自动判断数据多级授权,解决数据所有者和数据使用者之间频繁交互问题。
附图说明
图1是本发明实施例中区块链系统的系统架构示意图。
图2是本发明实施例中多级可控数据共享授权方法的流程图。
具体实施方式
在下文的描述中,给出了大量具体的细节以便提供对本发明更为彻底的理解。然而,对于本领域技术人员而言显而易见的是,本发明可以无需一个或多个这些细节而得以实施。在其他例子中,为了避免与本发明发生混淆,对于本领域公知的一些技术特征未进行描述。
实施例1:
本实施例一种区块链系统,联盟区块链内的用户,可授权个人数据的访问权限。使用对称加密将个人数据加密后存入文件存储系统IPFS内,对称加密密钥与文件存储路径通过基于属性策略的加密密文,存储至区块链。区块链与代理重加密技术实现用户间的委托授权,并通过智能合约控制委托深度。在这个系统模型中,有5个主体:密钥中心、授权人、被授权人、文件存储系统IPFS和区块链。其中,区块链账本和智能合约共同构成了区块链网络。
该区块链系统的方案架构模型如图1所示。
密钥中心:负责生成上传至区块链的公开参数,并根据特定要求将密钥分发给被授权人。
授权人:授权人可以是数据所有者或者数据的被授权用户。数据所有者负责生成、上传、存储加密后的个人信息。作为最初的授权人,数据所有者制定访问控制策略,授权访问权限给其他用户并控制授权深度。授权人也可以重新授权其委派权限。
被授权人:其属性必须满足预定义的访问控制策略,才能获得访问权限,并可将委托权限给其他的被授权人。并且,被授权人可以作为新的授权人,进一步委托其所拥有的权限。
文件存储:IPFS作为分布式存储系统,通过基于文件内容分配哈希值,能够安全的存储和分享各种类型的文件。经过加密的个人数据存储在文件系统中,可通过其哈希地址索引到具体的文件。
区块链和智能合约:区块链内存储密钥、系统参数和重加密密钥等关键信息。智能合约用于生成重加密密文和控制委托深度。
实施例2:
在实施例1的基础之上,实施例2公开基于密文属性的多级委托授权的代理重加密算法,主要的算法说明如下:
1、基于属性加密的双线性配对算法。假设G 是由阶为p生成的加法群,是一个
相同素数阶p的循环乘法群。是由G生成的。当满足以下3个性质后,一个双线性映射被称为可接受的双线性映射。特质为:双线性性,非退化性,易计算性。
2、线性秘密共享方案。将隐私信息分割为多个部分,并分发给多个参与者,最终实现对信息的安全共享和获取。线性密码共享方案具有的特性为可恢复性、安全性、线性性质。
3、基于密文策略的属性代理重加密算法。Proxy-CPABE 作为一个支持多级的单向CP-ABE方案,对CP-ABE的优化算法,主要优化内容为为支持多级委托授权,进行多级重加密私钥生成和多级加密、多级解密,
优化后主要包括以下几个算法函数:
:本阶段,给定一个安全参数和一个属性全集U作为
输入,这个函数的输出是公共参数param和主密钥msk
:本阶段主密钥生成,基于公共参数param,主密钥
msk和给定的属性集S作为输入参数,输出为私钥密钥
:本阶段多级用户私钥生成,针对用户j给定参数
param和密钥作为参数,输出用于转换密文的重加密密钥
:本阶段加密,给定参数param,访问结构(X,p)和明文m
作为参数,输出原始密文,可用于后续的再次加密
:本阶段重加密,给定公共参数param,重加密密
钥和第级的密文作为参数,输出第级的密文
:本阶段解密,给定公共参数param,私钥和原始密文作为输入,得到明文m
:本阶段多级解密,给定公共参数param,私钥和第级的密文作为输入,得到明文m
实施例3:
基于上述实施例2所公开的区块链架构,本实施例3公开一种多级可控数据共享授权方法,将数据处理流程分为4个阶段:初始化、数据存储、委托、分享。见图2所示。
本方法主要解决的技术问题为:
1. 数据隐私保护:通过使用对称加密将个人数据加密后存入文件存储系统IPFS内,确保用户的个人数据在存储和传输过程中得到了保护。
2. 访问控制:基于密文策略的属性代理重加密算法,将对称加密密钥与文件存储路径存储在区块链上,并实现了委托授权机制。这样,只有被授权人拥有满足访问策略的属性集合,并获得相应的解密密钥,才能解密并访问加密的个人数据。
3. 多级委托授权:通过区块链账本和智能合约,实现了用户间的委托授权。被授权人再次可以授予其他用户对其加密数据的访问权限,而这些授权关系将被记录在区块链上,确保安全可信的委托操作。
4. 区块链网络:整个系统基于区块链技术构建,区块链账本和智能合约共同组成了区块链网络。区块链提供了分布式和不可篡改的数据存储,确保了系统的透明性、可靠性和安全性。
通过以上技术解决方案,该系统模型实现了联盟区块链内的用户对个人数据的授权访问,保护了数据隐私,并实现了灵活的多级委托授权机制,提供了可信的数据访问和管理。
具体来说,四个阶段过程如下:
步骤1.在初始化阶段,每个用户在区块链上注册一个账号。使用密钥中心,生成系
统参数,同时生成此用户的预定参数用户标识用户特定属性。
步骤2.在数据存储阶段,每个用户上传其个人隐私数据至文件存储系统IPFS。
每个文件存储系统IPFS文件被哈希计算后,会返回其哈希地址。然后,授权人上传对称
加密密钥和哈希地址至区块链。每个区块链节点核验上传的数据后生成新的区块。
步骤3.在委托阶段,对链上数据感兴趣的用户,发起访问申请,并支付授权人特定
的费用值。委托授权深度合约验证授权人的再次委托权限,如果权限不足,则费用自动退回
至用户账号;如果授权人拥有对应的权限,生成一对一的重加密密钥,上传至区块链
后,绑定到用户账号内。并设置委托授权深度为D。委托合约接收到重加密密钥后,会
核验上层密钥未被篡改过。如果条件满足,委托合约会使用密钥和进行重加
密。为达成多级委托授权的目标,被授权人也可以称为一个授权人。如果其他用户发起授
权,被授权者可以执行相同的逻辑直至授权深度D减至0。
步骤4.在分享阶段,被授权人通过解密密文获取哈希地址和对称加密密钥,随
后使用哈希地址向文件存储系统IPFS发起访问申请。文件存储接收到访问请求时,触发调
用访问合约判断用户是否拥有权限。最终智能合约返回访问结果,被授权人从文件存储系
统IPFS获得密文。
实施例4:
本实施例基于上述实施例3,对多级可控数据共享授权方法的细节进行进一步公开。
阶段一:初始化
1.系统初始化:
首先,系统给定一个安全参数和参数列表U。密钥中心设定
一个随机值,
随机生成器和m,
双线性配对e:,并且设置下面3个哈希函数H1: , H2: , H3:
公共参数:
2.注册:
每个用户需要通过密钥中心注册一个账号。密钥中心根据用户的不同属性颁发私
有密钥。具体来说,密钥中心选择一个随机数,然后计算,公式中x是属性集S中的一个值。密钥中心通
过加密通道发送密钥给用户。
阶段二:数据存储
数据所有者将个人隐私数据对称加密后,上传至文件存储系统IPFS。IPFS返回文
件的哈希地址,授权人将对称加密密钥k和哈希地址加密后得到,并将保存至
区块链。得到值的加密算法如下:
首先,
设置,随机向量。通过对称加密密钥k进行哈希
运算生成哈希值s,将密钥k转换为一个随机的、与原始密钥无关的数值。随机向量v包含除
了s之外的其他随机元素,增加数据的随机性和安全性。
然后,
循环i=1到l,设置。通过计算向量v与访问结构矩阵x的
每一行的点积,得到一个包含i个元素的向量。向量作为访问结构的编码,表示哪些属
性需要满足才能访问数据,在不直接暴露访问结构的情况下进行安全的数据访问控制。
然后,
根据随机数和哈希值生成一系
列参数。其中A1,A2,A3参与加密,基于密钥k和哈希值x生成。{Bi} 是根据向量和哈希函
数的加权和计算得到,用于构建访问结构控制所需的信息。Ci用于隐藏访问结构属性的随
机数,实现零知识证明的效果。参数E是对生成的所有参数进行哈希运算得到的结果,用于
进一步验证和保护数据的完整性。
最后,生成密钥。通过生成随机数、哈希值以及基于访
问结构的参数,可以确保数据的机密性、完整性和权限控制
阶段三:委托
在这个阶段进行转化级别的密文操作,转化后的密文只能由的被授权
人进行解密。这个阶段包括生成重加密密钥和重加密密文的操作。用户通过发起委托授权
深度合约调用,进行隐私数据token的分发。合约执行的前提要求必须判断委托授权深度大于0,如果小于0,则立刻返还费用;如果大于0,执行重加密密钥生成算法。
重加密密钥生成算法:与密钥生成过程不同,重加密密钥由授权者发起申请。授权
者判断不同申请的可信度来确定请求是否可进行多级委托授权,授权者可通过参数D决定
最大委托深度。授权者为用户j分发密钥,并对进行签名。
步骤如下:
步骤1:将发送给用户
步骤2:授权者根据算法生成重加密密钥,并调用合约:委托合约
式中,表示第j-1级密文重加密为第j级密文的算法;P1表示第一随机生成
器,P2表示第二随机生成器;表示将椭圆曲线映射值 e(P1, P2) 加密并进行
次幂运算,以实现密文的重加密操作;
步骤3:设置委托深度为,并调用合约:委托授权深度合约
阶段四:分享
分享阶段主要分为授权者解密和和被授权者解密2部分。
1.授权者解密:
使用授权者的私钥进行原始密文的解密过程,原始密文的解密通过使用授权者的
密钥进行。解析原始密文为,将私钥解析为;
具体的含义是,将原始密文解析成一系列元素,包括,其中和
是一对值,并且将私钥解析成一系列元素,包括以及元素S中的每个元素x,用于
数据解密的过程。
计算中间值
公式中的参数含义:e表示加密函数;A2是原始密文中的一部分,需要用私钥解析得到实际值;K1和K2是通过私钥解析得到的值;Bi和Ci是原始密文中的一部分,需要用私钥解析得到实际值;Lpi是私钥解析得到实际值。公式的含义:通过计算中间值Z,将加密函数作用于A2和K1,并与每组{Bi,Ci}的加密结果相乘。
计算解密密钥
公式中的参数含义:A1是原始密文中的一部分,需要用私钥解析得到实际值;Z是上述的中间值。公式的设计目的是将中间值z应用于密文的解密,得到最终的解密密钥 k’。
验证解密密钥的正确性并输出结果
公式中的参数含义:A3是原始密文中的一部分,需要用私钥解析得到实际值;H1哈希函数;k’是解密密钥,P2是一个随机数。公式的含义:验证解密密钥的正确性,如果解密密钥k’的哈希结果乘以随机数P2等于A3,则输出解密密钥k’;否则解密失败。
2.被授权者解密:
授权者将重加密与访问策略控制属性的密文传递给被授权者,然后被授权者可以使用其私钥解密密文。下面的算法主要用于描述第一级密文解密,并扩展至多级密文解密。下面的计算过程基于重加密密文C1和密钥sk1,
其中 A1,1、A1,2、A1,3为原始密文或通过私钥解析得到的值;{Bi,Ci}为密文指数
乘积;E为附加信息;K1,1、K1,2为用于解密的密钥;为访问策略相关限制。
计算中间值
公式中的参数含义:e表示加密函数;A1,2、k1,1、B1,i、C1,i、L1,p(i)是原始密文或通过私钥解析得到的值。公式的含义:通过计算中间值Z1,将加密函数应用于 A1,2 和k1,1,并除以一系列 {B1,i, C1,i} 加密结果的指数乘积,用于后续的解密操作。
计算解密密钥
公式中的参数含义:A1,1是原始密文或通过私钥解析得到的值;Z1是上述的中间值;P1是随机数;s1是私钥。公式通过将A1,1除以中间值z1乘上加密函数作用于常数P1,计算得到解密密钥k’的值。
验证解密密钥的正确性并输出结果
公式中的参数含义:A1,3是原始密文或通过私钥解析得到的值;H1哈希函数;k’是解密密钥,P2是一个随机数。公式的含义:验证解密密钥的正确性,如果解密密钥k’的哈希结果乘以随机数P2等于A1,3,则输出解密密钥k’;否则解密失败。
综上,本发明提出一种基于区块链的多级可控授权及数据共享方案,主要实现了几下几个能力:
构建一个融合IPFS和区块链能力的多级委托授权方案。为了达成原始数据存储的安全,使用对称加密算法将个人隐私数据上传至IPFS分布式存储系统中。区块链技术通过智能合约进行密文转换和多级授权监督,为数据存储和交易提供了安全保障。
设计一个基于密文策略的属性代理重加密算法(Proxy-CPABE),主要用于为用户提供细粒度的访问控制和多级授权。Proxy-CPABE算法是基于CP-ABE的算法优化,改变代理重加密密钥的生成,在不改变数据所有者设置的访问策略的基础上获得更高效的密文交换。对于每个数据传输,数据所有者通过智能合约设置访问权限的授权深度,这样,数据所有者在多级授权时仍可以控制个人数据。
实现3个智能合约:委托授权深度合约、委托合约、访问合约。
委托授权深度合约,数据所有者通过设置每个数据的委托深度,严格限制授权数据权限。委托授权深度为0的被授权人,不允许再次分享数据。
委托合约,将密文转换为可由多个被授权人解密的形式,每个转换过程只需要执行一次乘法计算。在这个转换过程中,不需要委托人和被委托人之间进行通信,可节省大量的通信开销。
访问合约,通过查询特定时间段内的授权委托记录,来实现身份认证。
如上所述,尽管参照特定的优选实施例已经表示和表述了本发明,但其不得解释为对本发明自身的限制。在不脱离所附权利要求定义的本发明的精神和范围前提下,可对其在形式上和细节上做出各种变化。
Claims (7)
1.一种多级可控数据共享授权方法,其特征在于,至少包括如下阶段:
初始化阶段:每个用户在区块链上注册一个账号;使用密钥中心生成系统参数,同时生成当前用户的预定参数,作为用户特定属性标识;
所述初始化阶段包括:
系统给定一个安全参数和参数列表;
每个用户通过密钥中心注册一个账号;密钥中心根据用户的不同属性颁发私有密钥;
数据存储阶段:每个用户上传其个人隐私数据至文件存储系统;每个文件存储系统里的文件被哈希计算后,返回其哈希地址;授权人上传对称加密密钥和哈希地址至区块链;每个区块链节点核验上传的数据后生成新的区块;
所述数据存储阶段包括:
数据所有者将个人隐私数据对称加密后,上传至文件存储系统;文件存储系统返回文件的哈希地址,授权人将对称加密密钥k和哈希地址/>加密后得到/>,并将/>保存至区块链;
委托阶段:对链上数据感兴趣的用户发起访问申请,并支付授权人预定的费用值;验证当前授权人委托权限;
委托授权深度合约验证授权人的再次委托权限,如果权限不足,则费用自动退回至用户账号;如果授权人拥有对应的权限,生成一对一的重加密密钥,上传至区块链后,绑定到用户账号内,并设置委托授权深度为D;
委托合约接收到重加密密钥后,核验上层密钥/>是否被篡改过;如果满足未被篡改的条件,委托合约使用密钥/>和/>进行重加密;
所述委托阶段包括生成重加密密钥和重加密密文的操作;用户通过发起委托授权深度合约调用,进行隐私数据的分发;
合约执行的前提要求必须判断委托授权深度大于0,如果小于0,则立刻返还费用;如果大于0,执行重加密密钥生成算法;
生成重加密密钥的过程包括:
将发送给用户;其中,/>表示为用户j分发的密钥;sign(Sj)表示对Sj签名;
授权者根据算法生成重加密密钥,并调用委托合约:
;
式中,表示第j-1级密文重加密为第j级密文的算法;P1表示第一随机生成器,P2表示第二随机生成器;/>表示将椭圆曲线映射值e(P1, P2)加密并进行/>次幂运算,以实现密文的重加密操作;
设置委托深度为,并调用委托授权深度合约;
分享阶段:被授权人通过解密密文获取所述哈希地址和对称加密密钥,随后使用哈希地址向文件存储系统发起访问申请;所述文件存储系统接收到访问请求时,触发调用访问合约判断用户是否拥有权限;最终智能合约返回访问结果,被授权人从所述文件存储系统获得密文。
2.根据权利要求1所述的多级可控数据共享授权方法,其特征在于:为达成多级委托授权的目标,被授权人成为一个授权人;如果其他用户发起授权,被授权者执行相同的逻辑直至授权深度D减至0。
3.一种数据共享授权装置,其特征在于,用于执行如权利要求1至2中任一项所述的多级可控数据共享授权方法;所述数据共享授权装置包括:
初始化模块,用于驱动密钥中心生成系统参数,同时生成当前用户的预定参数用户标识用户特定属性;
数据存储模块,用于接收每个用户上传的个人隐私数据;个人隐私数据被哈希计算后,返回其哈希地址;授权人上传对称加密密钥和哈希地址至区块链;每个区块链节点核验上传的数据后生成新的区块;
委托模块,用于对链上数据感兴趣的用户发起访问申请,并支付授权人预定的费用值;验证当前授权人委托权限。
4.根据权利要求3所述的数据共享授权装置,其特征在于,还包括分享模块,用于驱动并执行如下流程:
被授权人通过解密密文获取哈希地址和对称加密密钥,随后使用哈希地址向文件存储系统发起访问申请;所述文件存储系统接收到访问请求时,触发调用访问合约判断用户是否拥有权限;最终智能合约返回访问结果,被授权人从所述文件存储系统获得密文/>。
5.一种区块链系统,所述区块链系统应用如权利要求1至2中任一项所述的多级可控数据共享授权方法,其特征在于:
至少一个密钥中心接入该区块链系统;
至少一个授权人接入该区块链系统;
至少一个被授权人接入该区块链系统;
至少一个文件存储系统接入该区块链系统;
所述密钥中心负责生成上传至区块链的公开参数,并根据特定要求将密钥分发给所述被授权人。
6.根据权利要求5所述的区块链系统,其特征在于,所述授权人是数据所有者或者数据的被授权用户;数据所有者负责生成、上传、存储加密后的个人信息;作为最初的授权人,数据所有者制定访问控制策略,授权访问权限给其他用户并控制授权深度;授权人重新授权其委派权限;
所述被授权人的属性必须满足预定义的访问控制策略,才能获得访问权限,并可将委托权限给其他的被授权人;并且,被授权人作为新的授权人,进一步委托其所拥有的权限;
所述文件存储系统通过基于文件内容分配哈希值存储和分享各种类型的文件;经过加密的个人数据存储在文件系统中,通过其哈希地址索引到具体的文件;
所述区块链系统内存储密钥、系统参数和重加密密钥。
7.根据权利要求6所述的区块链系统,其特征在于,还包括用于生成重加密密文和控制委托深度的智能合约。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311323967.9A CN117056983B (zh) | 2023-10-13 | 2023-10-13 | 多级可控数据共享授权方法、装置及区块链系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311323967.9A CN117056983B (zh) | 2023-10-13 | 2023-10-13 | 多级可控数据共享授权方法、装置及区块链系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117056983A CN117056983A (zh) | 2023-11-14 |
CN117056983B true CN117056983B (zh) | 2024-01-02 |
Family
ID=88655847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311323967.9A Active CN117056983B (zh) | 2023-10-13 | 2023-10-13 | 多级可控数据共享授权方法、装置及区块链系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117056983B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101272472A (zh) * | 2007-03-23 | 2008-09-24 | 北京东方广视科技有限责任公司 | 多级调度用户授权信息的方法 |
CN101714196A (zh) * | 2009-11-20 | 2010-05-26 | 上海电机学院 | 基于周期时间的权限委托方法 |
CN104038341A (zh) * | 2014-06-20 | 2014-09-10 | 北京航空航天大学 | 一种基于身份的跨系统代理重加密方法 |
CN104158880A (zh) * | 2014-08-19 | 2014-11-19 | 济南伟利迅半导体有限公司 | 一种用户端云数据共享解决方法 |
CN105812141A (zh) * | 2016-03-07 | 2016-07-27 | 东北大学 | 一种面向外包加密数据的可验证交集运算方法及系统 |
CN106059763A (zh) * | 2016-07-29 | 2016-10-26 | 南京邮电大学 | 云环境下属性基多机构层次化密文策略权重加密方法 |
CN111292088A (zh) * | 2020-01-21 | 2020-06-16 | 杭州趣链科技有限公司 | 一种基于区块链的多级授权方法、系统、设备和存储介质 |
CN111343001A (zh) * | 2020-02-07 | 2020-06-26 | 复旦大学 | 一种基于区块链的社交数据共享系统 |
CN111684761A (zh) * | 2018-02-06 | 2020-09-18 | 瑞典爱立信有限公司 | 用于使用智能合约和区块链管理云服务的方法和装置 |
CN114036539A (zh) * | 2021-10-14 | 2022-02-11 | 国家电网有限公司 | 基于区块链的安全可审计物联网数据共享系统及方法 |
CN114513533A (zh) * | 2021-12-24 | 2022-05-17 | 北京理工大学 | 一种分类分级健身健康大数据共享系统及方法 |
CN114710271A (zh) * | 2022-03-21 | 2022-07-05 | 北京数字认证股份有限公司 | 一种共享加密数据的方法、装置、存储介质和电子设备 |
CN115801276A (zh) * | 2022-11-28 | 2023-03-14 | 北京航空航天大学 | 一种汽车网络威胁情报安全共享方法、系统及存储介质 |
CN116595495A (zh) * | 2023-05-19 | 2023-08-15 | 珠海市正北投资有限公司 | 个人数据的跨网络应用程序自动流转方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8904190B2 (en) * | 2010-10-20 | 2014-12-02 | Advanced Micro Devices, Inc. | Method and apparatus including architecture for protecting sensitive code and data |
US9455828B2 (en) * | 2012-08-30 | 2016-09-27 | Nec Corporation | Re-encryption system, re-encryption method and re-encryption program |
EP3041165B1 (en) * | 2014-12-31 | 2019-08-07 | Scytl Secure Electronic Voting, S.A. | A method for the verification of the correct content of an encoded message |
US10791123B2 (en) * | 2015-11-25 | 2020-09-29 | Yaron Gvili | Selectivity in privacy and verification with applications |
HUP1900255A1 (hu) * | 2019-07-15 | 2021-01-28 | Xtendr Zrt | Kriptográfiai álnév leképezõ eljárás és számítógépes rendszer, valamint számítógépes program és számítógéppel olvasható adathordozó |
-
2023
- 2023-10-13 CN CN202311323967.9A patent/CN117056983B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101272472A (zh) * | 2007-03-23 | 2008-09-24 | 北京东方广视科技有限责任公司 | 多级调度用户授权信息的方法 |
CN101714196A (zh) * | 2009-11-20 | 2010-05-26 | 上海电机学院 | 基于周期时间的权限委托方法 |
CN104038341A (zh) * | 2014-06-20 | 2014-09-10 | 北京航空航天大学 | 一种基于身份的跨系统代理重加密方法 |
CN104158880A (zh) * | 2014-08-19 | 2014-11-19 | 济南伟利迅半导体有限公司 | 一种用户端云数据共享解决方法 |
CN105812141A (zh) * | 2016-03-07 | 2016-07-27 | 东北大学 | 一种面向外包加密数据的可验证交集运算方法及系统 |
CN106059763A (zh) * | 2016-07-29 | 2016-10-26 | 南京邮电大学 | 云环境下属性基多机构层次化密文策略权重加密方法 |
CN111684761A (zh) * | 2018-02-06 | 2020-09-18 | 瑞典爱立信有限公司 | 用于使用智能合约和区块链管理云服务的方法和装置 |
CN111292088A (zh) * | 2020-01-21 | 2020-06-16 | 杭州趣链科技有限公司 | 一种基于区块链的多级授权方法、系统、设备和存储介质 |
CN111343001A (zh) * | 2020-02-07 | 2020-06-26 | 复旦大学 | 一种基于区块链的社交数据共享系统 |
CN114036539A (zh) * | 2021-10-14 | 2022-02-11 | 国家电网有限公司 | 基于区块链的安全可审计物联网数据共享系统及方法 |
CN114513533A (zh) * | 2021-12-24 | 2022-05-17 | 北京理工大学 | 一种分类分级健身健康大数据共享系统及方法 |
CN114710271A (zh) * | 2022-03-21 | 2022-07-05 | 北京数字认证股份有限公司 | 一种共享加密数据的方法、装置、存储介质和电子设备 |
CN115801276A (zh) * | 2022-11-28 | 2023-03-14 | 北京航空航天大学 | 一种汽车网络威胁情报安全共享方法、系统及存储介质 |
CN116595495A (zh) * | 2023-05-19 | 2023-08-15 | 珠海市正北投资有限公司 | 个人数据的跨网络应用程序自动流转方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117056983A (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110099043B (zh) | 支持策略隐藏的多授权中心访问控制方法、云存储系统 | |
CN107864139B (zh) | 一种基于动态规则的密码学属性基访问控制方法与系统 | |
CN108881314B (zh) | 雾计算环境下基于cp-abe密文隐私保护方法及系统 | |
Chakrabarti | Grid computing security | |
CN109120639A (zh) | 一种基于区块链的数据云存储加密方法及系统 | |
CN110602063A (zh) | 一种多授权中心访问控制方法、系统及云存储系统 | |
CN110266687B (zh) | 一种采用区块链技术的物联网安全代理数据共享模块设计方法 | |
CN106788988B (zh) | 云环境下可撤销的密钥聚合加密方法 | |
CN109361510A (zh) | 一种支持溢出检测和大整数运算的信息处理方法及应用 | |
CN114039790A (zh) | 一种基于区块链的细粒度云存储安全访问控制方法 | |
CN114036539A (zh) | 基于区块链的安全可审计物联网数据共享系统及方法 | |
Sethia et al. | CP-ABE for selective access with scalable revocation: A case study for mobile-based healthfolder. | |
Chaudhary et al. | RMA-CPABE: A multi-authority CPABE scheme with reduced ciphertext size for IoT devices | |
Almuzaini et al. | Key aggregation cryptosystem and double encryption method for cloud-based intelligent machine learning techniques-based health monitoring systems | |
Nabeel et al. | Privacy-Preserving Fine-Grained Access Control in Public Clouds. | |
Gajmal et al. | Blockchain-based access control and data sharing mechanism in cloud decentralized storage system | |
Khan et al. | Toward a synergy among discretionary, role-based and context-aware access control models in healthcare information technology | |
CN117056983B (zh) | 多级可控数据共享授权方法、装置及区块链系统 | |
Anjali et al. | Design and implementation of secure cloud storage system using hybrid cryptography algorithms with role based access control model | |
Boumezbeur et al. | Privacy-preserving access control for sharing health data in cloud environment. | |
CN114124499B (zh) | 基于区块链的慈善系统隐私保护方法与系统 | |
Wagle | Comparative study of privacy preservation and access control of cloud data | |
Agarwal | A Safe and Resilient Cryptographic System for Dynamic Cloud Groups with Secure Data Sharing and Efficient User Revocation | |
Cheung et al. | Privacy protection for role-based access control in service oriented architecture | |
Divya et al. | Secure Data Sharing in Cloud Environment Using Multi Authority Attribute Based 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 |