CN115883154A - 访问凭证的颁发方法、基于区块链的数据访问方法及装置 - Google Patents
访问凭证的颁发方法、基于区块链的数据访问方法及装置 Download PDFInfo
- Publication number
- CN115883154A CN115883154A CN202211486262.4A CN202211486262A CN115883154A CN 115883154 A CN115883154 A CN 115883154A CN 202211486262 A CN202211486262 A CN 202211486262A CN 115883154 A CN115883154 A CN 115883154A
- Authority
- CN
- China
- Prior art keywords
- service
- target
- certificate
- access
- data
- 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
Images
Abstract
本申请提供一种访问凭证的颁发方法、基于区块链的数据访问方法及装置,可用于金融领域或其他技术领域。所述访问凭证的颁发方法包括:根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板;根据所述第一设备发送的业务请求,将所述业务请求和所述数据访问控制策略发送至区块链网络;根据第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证;将每个业务参与方的访问凭证发送给该业务参与方的服务网关。本申请实施例解决了CA集中式分发密钥处理效率问题和安全问题。
Description
技术领域
本申请涉及金融或其他技术领域,具体涉及一种访问凭证的颁发方法、基于区块链的数据访问方法及装置。
背景技术
目前区块链内区块数据和世界状态数据能通过智能合约接口访问获取,同一通道内的联盟方可以获取该通道内的所有数据,对联盟方的隐私数据的保护不够。针对这种情况,传统的做法是将链上数据获取之后,通过链下加密机或者网关使用不同业务应用的公钥进行加密,业务应用收到数据后通过自身的私钥解密。
经过加密机或者网关处理的数据有两个问题,第一是集中式处理耗时,处理链上获取的数据需要用到不同的公钥,同一份数据推送给N个业务应用要经历N次加密,在高并发的情况下,多次加密会导致加密机或者网关处理压力会更大,排队加密的耗时严重;第二是加密公私钥对的安全性无法保证,公私钥对要么是业务应用自己生成,要么是通过集中式的CA生成,如果是业务自己生成,加密机或者网关无法管理公钥的有效周期,如果是集中式CA生成,密钥的分发依赖CA的处理效率和CA的高可用部署。
申请内容
针对现有技术中的问题,本申请实施例提供一种访问凭证的颁发方法、基于区块链的数据访问方法及装置,能够至少部分地解决现有技术中存在的问题。
第一方面,本申请提出一种访问凭证的颁发方法,包括:
根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板;
根据所述第一设备发送的业务请求,将所述业务请求和所述数据访问控制策略发送至区块链网络,其中,所述区块链网络中的共识节点用于根据所述业务请求背书智能合约,所述区块链网络中的记账节点用于根据所述数据访问控制策略对所述智能合约生成的有效数据进行加密后存储;
根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
将每个业务参与方的访问凭证发送给该业务参与方的服务网关。
第二方面,本申请提出一种基于区块链的数据访问方法,包括:
根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据,其中,所述访问凭证是所述业务发起方的服务网关根据所述业务发起方发送的该业务场景下的数据访问控制策略以及业务参与方的访问属性生成的,该业务场景下的加密数据是所述区块链网络中的记账节点根据所述数据访问控制策略对该业务场景下的有效数据进行加密后得到的;
将所述目标数据发送给所述第二设备。
第三方面,本申请提出一种访问凭证的颁发装置,包括:
第一生成模块,用于根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板;
第一发送模块,用于根据所述第一设备发送的业务请求,将所述业务请求和所述数据访问控制策略发送至区块链网络,其中,所述区块链网络中的共识节点用于根据所述业务请求背书智能合约,所述区块链网络中的记账节点用于根据所述数据访问控制策略对所述智能合约生成的有效数据进行加密后存储;
第二生成模块,用于根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
第二发送模块,用于将每个业务参与方的访问凭证发送给该业务参与方的服务网关。
第四方面,本申请提出一种访问凭证的颁发装置,包括:
解密模块,用于根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据,其中,所述访问凭证是所述业务发起方的服务网关根据所述业务发起方发送的该业务场景下的数据访问控制策略以及业务参与方的访问属性生成的,该业务场景下的加密数据是所述区块链网络中的记账节点根据所述数据访问控制策略对该业务场景下的有效数据进行加密后得到的;
发送模块,用于将所述目标数据发送给所述第二设备。
本申请实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述方法的步骤。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述方法的步骤。
本申请实施例提供的访问凭证的颁发方法、基于区块链的数据访问方法及装置,对链上数据使用业务发起方定制的访问控制策略一次性加密,且注册访问控制策略相关的属性统一模板(目标凭证模板),按照该模板颁发访问凭证,以使业务参与方使用该访问凭证访问该业务参与方具有访问权限的数据。这样,基于数字身份的去中心化特征,解决了CA集中式分发密钥处理效率问题和安全问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本申请一实施例提供的数据权限控制系统的结构示意图。
图2是本申请一实施例提供的分布式服务网关的结构示意图。
图3是本申请实施例提供的一种访问凭证的颁发方法的流程示意图。
图4是本申请实施例提供的一种访问凭证的颁发方法的部分流程示意图。
图5是本申请一实施例提供的CPT模板数据结构示意图。
图6是本申请实施例提供的一种访问凭证的颁发方法的部分流程示意图。
图7是本申请实施例提供的一种访问凭证的颁发方法的部分流程示意图。
图8是本申请实施例提供的一种基于区块链的数据访问方法的流程示意图。
图9是本申请实施例提供的一种基于区块链的数据访问方法的部分流程示意图。
图10是本申请实施例提供的一种基于区块链的数据访问方法的流程示意图。
图11是本申请一实施例提供的一种访问凭证的颁发装置的结构示意图。
图12是本申请一实施例提供的一种基于区块链的数据访问装置的结构示意图。
图13是本申请一实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本申请实施例做进一步详细说明。在此,本申请的示意性实施例及其说明用于解释本申请,但并不作为对本申请的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意排序。
关于本文中所使用的“第一”、“第二”、……等,并非特别指称次序或顺位的意思,亦非用以限定本申请,其仅为了区别以相同技术用语描述的元件或操作。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
关于本文中所使用的“及/或”,包括所述事物的任一或全部排序。
本申请引入CP-ABE算法和数字身份技术,为链上数据的访问控制和访问策略的安全性提供解决方案,详细技术方案如下:
请参考图1,本方案的实现主要依赖以下三个部分,应用服务器1、分布式服务网关2和区块链网络3。其中应用服务器1主要负责发起交易和接收交易返回数据,分布式服务网关2归属应用,集成数字身份和基于CP-ABE算法的访问控制能力,主要负责数字身份注册、凭证颁发与验证、访问控制策略制定等,区块链网络3主要负责业务逻辑的处理和整个流程的可追溯可审计可监管,保证业务逻辑的实现以及联盟方身份、访问凭证、服务网关身份、访问策略等的安全性和完整性。
所述应用服务器1,包括发起方应用服务器和参与方应用服务器,发起方应用服务器是业务场景的主导方,负责数据的采集和上送,参与方应用服务器主要负责数据获取和解析,应用服务器1的身份信息和权限控制都通过分布式服务网关2实现。
所述分布式服务网关2,集成数字身份能力和基于CP-ABE算法的访问控制能力,每个联盟方拥有自己的分布式服务网关,请参考图2,包括数字身份注册模块2-1,凭证颁发模块2-2,凭证验证模块2-3,访问控制策略定制模块2-4,业务数据处理模块2-5。其中:
数字身份注册模块2-1,即用于为联盟方应用和服务网关注册可信数字身份DID,用于保证链上交互以及与其他联盟方服务网关交互的身份安全,服务网关在启动时自动注册DID,一般联盟方共用同一套服务网关,而联盟方应用在初次与服务网关交互时,通过服务网关注册可信数字身份DID,注册DID生成的公钥会在链上背书存储,私钥由持有者保管,也可统一托管于服务网关;
凭证颁发模块2-2,用于基于访问控制策略定制模块2-4定制的变形后的凭证模板CPT颁发联盟方应用的凭证,凭证内的数据会根据系统智能合约背书的属性说明按如下规则填充:有效属性按业务传输的报文和业务规则填充;无效属性为字符串类型则使用雪花算法随机生成;无效属性为数字类型使用公钥按顺序截取3位。
凭证验证模块2-3,用于验证凭证颁发模块2-2签发的凭证的有效性和不被篡改性,通过链上获取背书的CPT模板、模板属性说明、凭证哈希,分别验证CPT模板的一致性、模板值与模板属性说明的一致性、凭证哈希的一致性。
访问控制策略定制模块2-4,用于联盟方应用灵活定制基于CP-ABE算法的访问控制策略,该策略能控制各个联盟方应用链上数据访问权限,控制策略由业务场景确定,控制策略所需属性统一提炼抽取为一个凭证模板CPT(原),为了防暴力破解攻击,通过服务网关注册并变形(增加一些冗余属性)为新的凭证模板,链上背书该变形后的访问控制策略凭证模板,模板的属性说明通过系统智能合约在链上背书。
业务数据处理模块2-5,负责对上链交易报文进行应用私钥签名,以及对交易获取的链上数据使用用户凭证基于CP-ABE算法的访问策略解密。加解密保持与传统的CP-ABE算法一致。
所述区块链网络3,主要负责背书分布式服务网关生成的可信数字身份的公钥和DID、背书分布式服务网关对外暴露地址、背书基于CP-ABE算法的访问控制策略的业务数据、背书变形后的访问控制策略CPT模板、背书CPT模板属性详细说明,同时还需要对最终的链上存储数据进行基于CP-ABE算法的访问策略加密。
CP-ABE:基于属性的加密运用密码机制保护数据,由数据拥有者规定访问密文的策略,将属性集合与访问资源相关联,数据使用者可以根据自己的授权属性的访问密文信息,该技术适合隐私数据共享等访问类应用。
数字身份:通过数字化信息将个体可识别地刻画,将真实信息浓缩为数字代码形式的公私钥,以便对个人的实时行为信息进行绑定、查询和验证。
以下对本申请提供的访问凭证的颁发方法以及基于区块链的数据访问方法分别进行详细说明。
本申请实施例提供的访问凭证的颁发方法以及基于区块链的数据访问方法的执行主体包括但不限于计算机。
图3是本申请实施例提供的一种访问凭证的颁发方法的流程示意图,如图3所示,本申请实施例提供的一种访问凭证的颁发方法,包括:
S101、根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板;
步骤S101中,应当说明的是,每个联盟方的分布式服务网关启动时,自动注册数字身份DID,公钥上链背书,私钥本地保管;每个联盟方的应用在本地配置服务网关地址,启动时通过服务网关自动注册数字身份DID,公钥上链背书,私钥保管在应用本地服务器或者托管于服务网关;业务发起方根据业务场景制定每个联盟方应用的数据访问控制策略,然后通过发起方应用服务器(第一设备)将该策略传输给对应的服务网关;服务网关解析该策略,将该策略中涉及的属性进行抽取提炼,形成该访问控制策略的目标凭证模板。
S102、根据所述第一设备发送的业务请求,将所述业务请求和所述数据访问控制策略发送至区块链网络,其中,所述区块链网络中的共识节点用于根据所述业务请求背书智能合约,所述区块链网络中的记账节点用于根据所述数据访问控制策略对所述智能合约生成的有效数据进行加密后存储;
步骤S102中,业务发起方通过应用服务器(第一设备)向服务网关发起业务请求;服务网关接收到业务请求后,验证业务发起方应用的数字身份DID,将业务请求和访问控制策略使用应用数字身份的私钥签名,发送至区块链网络;区块链网络的共识节点通过链上存储的应用数字身份DID对应的公钥,验签业务请求的有效性;共识节点背书智能合约后,记账节点将合约内需要存储的数据(有效数据),按照服务网关上传的访问控制策略基于CP-ABE算法进行加密和存储。
S103、根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
步骤S103中,区块链的记账节点落块后,通知服务网关合约调用完成;服务网关通知业务发起方可以发起凭证获取请求;业务发起方根据该业务场景,设置每个业务参与方的访问属性,请求服务网关为每个参与方生成访问凭证;
服务网关根据所述目标凭证模板CPT以及预先设置的凭证生成规则,根据业务发起方的凭证获取请求,为每个业务方生成访问凭证。
S104、将每个业务参与方的访问凭证发送给该业务参与方的服务网关。
步骤S104中,业务发起方的服务网关生成访问凭证后,将每个参与方的访问凭证分发给该参与方的服务网关,服务网关之间通过数字身份进行验证后,接收并保管凭证。
本申请实施例提供的访问凭证的颁发方法,对链上数据使用业务发起方定制的访问控制策略一次性加密,且注册访问控制策略相关的属性统一模板(目标凭证模板),按照该模板颁发访问凭证,以使业务参与方使用该访问凭证访问该业务参与方具有访问权限的数据。这样,基于数字身份的去中心化特征,解决了CA集中式分发密钥处理效率问题和安全问题。
在一些实施例中,所述方法还包括:将所述目标凭证模板以及所述目标凭证模板的属性说明发送至区块链网络进行上链背书。具体而言,可将目标凭证模板通过调用数字身份智能合约上链背书、将属性说明通过系统智能合约上链背书。
如图4所示,在一些实施例中,所述根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板包括:
S1021、根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的原始凭证模板;
S1022、根据预设的模板更改策略对所述原始凭证模板进行更改,得到目标凭证模板。
具体来说,如图5所示,服务网关解析所述访问控制策略,将该访问控制策略中的属性进行抽取提炼,形成原始凭证模板;接着服务网关对原始凭证模板进行变形,将属性打乱,加入一些冗余属性,并根据模板中的属性生成属性说明;服务网关将变形后的模板作为目标凭证模板CPT,再将该CPT模板通过调用数字身份智能合约上链背书,将属性说明通过系统智能合约上链背书。
如图6所示,在一些实施例中,所述根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证包括:
S1031、根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,从区块链网络中获取所述目标凭证模板以及所述属性说明,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
S1032、根据所述目标凭证模板、所述属性说明、凭证生成规则以及每个所述业务参与方的访问属性,生成该业务参与方的访问凭证。
具体来说,业务发起方根据业务场景,设置每个参与方的访问属性,请求服务网关为每个参与方生成访问凭证;服务网关从链上获取CPT模板及属性说明,根据业务发起方的凭证获取请求,按照预先设置的凭证生成规则为每个业务方生成访问凭证。
在一些实施例中,所述目标凭证模板中包括属性信息;所述属性说明用于说明所述目标凭证模板中的每个属性的特征;所述凭证生成规则包括:有效属性根据业务参与方的访问属性填充,无效属性按照预设的填充规则进行填充。
具体来说,如图5所示,目标凭证模板是固定的,包括了至少一种属性,凭证说明是按业务规则制定的,将模板中定义的属性进行有效和无效说明,比如同一个模板有3个属性,姓名、身份证和手机号,查询身份信息的时候要用姓名和身份证,那按照业务来说这个模板中的手机号就是无效属性,手机号的类型为数字类型,在生成凭证的时候,举例而言,手机号在凭证里面可以用该业务参与方的公钥按顺序截取3位数字填充,姓名和身份证属性按照正常业务数据填充;对于字符串类型的无效属性,可以用雪花算法随机生成一串字符串。
如图7所示,基于图5中所示的目标凭证模板和属性说明,业务发起方的服务网关为每个业务参与方生成访问凭证的具体步骤如下:
T1:联盟方应用服务器发起凭证申请;
T2:服务网关链上获取CPT模板和模板属性说明;
T3:根据获取的模板和说明生成凭证,按以下规则填充凭证内容:有效属性按业务传输的报文和业务规则填充;无效属性为字符串类型则使用雪花算法随机生成;无效属性为数字类型使用公钥按顺序截取3位;
T4:链上背书凭证哈希;
T5:凭证返回至联盟方应用服务器自行保管,或者托管存储于服务网关。
图8是本申请实施例提供的一种基于区块链的数据访问方法的流程示意图,如图8所示,本申请实施例提供的一种基于区块链的数据访问方法,包括:
S201、根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据,其中,所述访问凭证是所述业务发起方的服务网关根据所述业务发起方发送的该业务场景下的数据访问控制策略以及业务参与方的访问属性生成的,该业务场景下的加密数据是所述区块链网络中的记账节点根据所述数据访问控制策略对该业务场景下的有效数据进行加密后得到的;
步骤S201中,业务参与方通过应用服务器(第二设备)发起所述数据访问请求,其服务网关根据该请求,从链上获取该业务场景下按照业务发起方提供的访问控制策略基于CP-ABE算法的加密的数据,接着该服务网关根据从业务发起方的服务网关获取的访问凭证,对从链上获取的所述加密数据进行解密,得到目标数据。可以理解的是,在获取的所述加密数据中,只有该业务参与方具有访问权限的数据才能够使用该访问凭证成功解密,得到目标数据。
S202、将所述目标数据发送给所述第二设备。
步骤S202中,所述业务参与方服务网关将可访问的数据解密后返回至参与方的应用服务器,参与方应用服务器收到解密后的数据,完成整个业务流程。
本申请实施例提供的基于区块链的数据访问方法,
链上数据使用业务发起方定制的访问控制策略一次性加密,且注册访问控制策略相关的属性统一模板(目标凭证模板),按照该模板颁发访问凭证,业务参与方使用该访问凭证访问该业务参与方具有访问权限的数据。这样,基于数字身份的去中心化特征,解决了CA集中式分发密钥处理效率问题和安全问题。
如图9所示,在一些实施例中,所述根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据包括:
S2011、根据第二设备发送的针对目标业务场景的数据访问请求,从区块链网络获取该目标业务场景下的目标凭证模板以及所述目标凭证模板的属性说明;
S2012、根据从业务发起方的服务网关获取的访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证;
S2013、利用所述原始凭证对从所述区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据。
具体来说,业务参与方的服务网关从链上获取CPT模板和模板属性说明,然后根据从业务发起方的服务网关获取的访问凭证、CPT模板、模板属性说明和凭证生成规则,还原原始的凭证。
参与方的服务网关根据该请求,从链上获取利用所述访问控制策略基于CP-ABE算法加密的数据后,使用该原始凭证,将可访问的数据解密返回至参与方的应用服务器。
如图10所示,在一些实施例中,所述根据从业务发起方的服务网关获取的访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证包括:
S20121、利用所述目标凭证模板验证从业务发起方的服务网关获取的访问凭证的有效性;
S20122、若所述访问凭证有效,则根据所述访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证。
具体来说,业务参与方的服务网关在根据所述访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证之前,还利用从区块链网络获取的目标凭证模板对从业务发起方的服务网关获取的访问凭证进行了有效性验证,即验证业务发起方的服务网关签发的凭证的有效性和不被篡改性,具体的,通过链上获取背书的CPT模板、模板属性说明、凭证哈希,分别验证所述访问凭证与所述CPT模板的一致性、模板值与模板属性说明的一致性、凭证哈希的一致性。在验证通过后再执行步骤S20122。
本申请实施例提供的访问凭证的颁发及访问方法,结合CP-ABE算法和数字身份,解决链上数据的访问控制权限以及CP-ABE算法的访问控制策略易被破解的问题,具体效果为:
1、基于数字身份的去中心化特性,解决了CA集中式分发密钥的安全问题,而且数字身份代理之间的互相认证机制,也能保证分发密钥的权威机构的身份安全;
2、结合数字身份和CP-ABE算法,解决链上数据的自定义权限控制,牵头业务方可在同一个通道内,根据不同业务场景写访问控制策略,将策略写入密文中,将可解密的属性写入数字身份凭证中;
3、数字身份的凭证模板解决了CP-ABE将属性写入密钥容易被暴力破解的弊端,凭证模板由权威机构指定,上链背书,保证模板的不可篡改,同时凭证增加混淆措施,防止凭证被盗取后导致的链上密文解密所需属性被破解的风险。
图11是本申请一实施例提供的一种访问凭证的颁发装置的结构示意图,如图11所示,本申请实施例提出的一种访问凭证的颁发装置,包括:
第一生成模块31,用于根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板;
第一发送模块32,用于根据所述第一设备发送的业务请求,将所述业务请求和所述数据访问控制策略发送至区块链网络,其中,所述区块链网络中的共识节点用于根据所述业务请求背书智能合约,所述区块链网络中的记账节点用于根据所述数据访问控制策略对所述智能合约生成的有效数据进行加密后存储;
第二生成模块33,用于根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
第二发送模块34,用于将每个业务参与方的访问凭证发送给该业务参与方的服务网关。
本申请实施例提供的访问凭证的颁发装置,对链上数据使用业务应用定制的访问控制策略一次性加密,且注册访问控制策略相关的属性统一模板(目标凭证模板),按照该模板颁发访问凭证。不仅实现了链上数据的访问控制,同时也解决了基于CP-ABE算法将属性写入私钥被盗取后容易被暴力破解获取访问控制策略的问题。
在一些实施例中,所述装置还包括:
第三发送模块,用于将所述目标凭证模板以及所述目标凭证模板的属性说明发送至区块链网络进行上链背书。
在一些实施例中,所述第一生成模块具体用于:
根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的原始凭证模板;
根据预设的模板更改策略对所述原始凭证模板进行更改,得到目标凭证模板。
在一些实施例中,所述第二生成模块具体用于:
根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,从所述区块链网络中获取所述目标凭证模板以及所述属性说明,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
根据所述目标凭证模板、所述属性说明、凭证生成规则以及每个所述业务参与方的访问属性,生成该业务参与方的访问凭证。
在一些实施例中,所述目标凭证模板中包括属性信息;所述属性说明用于说明所述目标凭证模板中的每个属性的特征;所述凭证生成规则包括:
有效属性根据业务参与方的访问属性填充,无效属性按照预设的填充规则进行填充。
本申请实施例提供的装置的实施例具体可以用于执行上述访问凭证的颁发方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图12是本申请一实施例提供的一种基于区块链的数据访问装置的结构示意图,如图12所示,本申请实施例提出的一种基于区块链的数据访问装置,包括:
解密模块41,用于根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据,其中,所述访问凭证是所述业务发起方的服务网关根据所述业务发起方发送的该业务场景下的数据访问控制策略以及业务参与方的访问属性生成的,该业务场景下的加密数据是所述区块链网络中的记账节点根据所述数据访问控制策略对该业务场景下的有效数据进行加密后得到的;
发送模块42,将所述目标数据发送给所述第二设备。
本申请实施例提供的基于区块链的数据访问装置,对链上数据使用业务应用定制的访问控制策略一次性加密,且注册访问控制策略相关的属性统一模板(目标凭证模板),按照该模板颁发访问凭证。不仅实现了链上数据的访问控制,同时也解决了基于CP-ABE算法将属性写入私钥被盗取后容易被暴力破解获取访问控制策略的问题。
在一些实施例中,所述解密模块具体用于:
根据第二设备发送的针对目标业务场景的数据访问请求,从区块链网络获取该目标业务场景下的目标凭证模板以及所述目标凭证模板的属性说明;
根据从业务发起方的服务网关获取的访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证;
利用所述原始凭证对从所述区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据。
在一些实施例中,所述解密模块根据从业务发起方的服务网关获取的访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证包括:
利用所述目标凭证模板验证从业务发起方的服务网关获取的访问凭证的有效性;
若所述访问凭证有效,则根据所述访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证。
本申请实施例提供的装置的实施例具体可以用于执行上述各基于区块链的数据访问方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
需要说明的是,本申请实施例提供的访问凭证的颁发方法、基于区块链的数据访问方法及装置可用于金融领域,也可用于除金融领域之外的任意技术领域,本申请实施例对访问凭证的颁发方法、基于区块链的数据访问方法及装置的应用领域不做限定。
图13为本申请一实施例提供的电子设备的实体结构示意图,如图13所示,该电子设备可以包括:处理器(processor)501、通信接口(Communications Interface)502、存储器(memory)503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信。处理器501可以调用存储器503中的逻辑指令,以执行上述任一实施例所述的方法。
此外,上述的存储器503中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施例而已,并不用于限定本申请的保护范围,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种访问凭证的颁发方法,其特征在于,包括:
根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板;
根据所述第一设备发送的业务请求,将所述业务请求和所述数据访问控制策略发送至区块链网络,其中,所述区块链网络中的共识节点用于根据所述业务请求背书智能合约,所述区块链网络中的记账节点用于根据所述数据访问控制策略对所述智能合约生成的有效数据进行加密后存储;
根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
将每个业务参与方的访问凭证发送给该业务参与方的服务网关。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述目标凭证模板以及所述目标凭证模板的属性说明发送至区块链网络进行上链背书。
3.根据权利要求2所述的方法,其特征在于,所述根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板包括:
根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的原始凭证模板;
根据预设的模板更改策略对所述原始凭证模板进行更改,得到目标凭证模板。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证包括:
根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,从所述区块链网络中获取所述目标凭证模板以及所述属性说明,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
根据所述目标凭证模板、所述属性说明、凭证生成规则以及每个所述业务参与方的访问属性,生成该业务参与方的访问凭证。
5.根据权利要求4所述的方法,其特征在于,所述目标凭证模板中包括属性信息;所述属性说明用于说明所述目标凭证模板中的每个属性的特征;所述凭证生成规则包括:
有效属性根据业务参与方的访问属性填充,无效属性按照预设的填充规则进行填充。
6.一种基于区块链的数据访问方法,其特征在于,包括:
根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据,其中,所述访问凭证是所述业务发起方的服务网关根据所述业务发起方发送的该业务场景下的数据访问控制策略以及业务参与方的访问属性生成的,该业务场景下的加密数据是所述区块链网络中的记账节点根据所述数据访问控制策略对该业务场景下的有效数据进行加密后得到的;
将所述目标数据发送给所述第二设备。
7.根据权利要求6所述的方法,其特征在于,所述根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据包括:
根据第二设备发送的针对目标业务场景的数据访问请求,从区块链网络获取该目标业务场景下的目标凭证模板以及所述目标凭证模板的属性说明;
根据从业务发起方的服务网关获取的访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证;
利用所述原始凭证对从所述区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据。
8.根据权利要求7所述的方法,其特征在于,所述根据从业务发起方的服务网关获取的访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证包括:
利用所述目标凭证模板验证从业务发起方的服务网关获取的访问凭证的有效性;
若所述访问凭证有效,则根据所述访问凭证、所述目标凭证模板、所述目标凭证模板的属性说明以及凭证生成规则,生成所述访问凭证对应的原始凭证。
9.一种访问凭证的颁发装置,其特征在于,包括:
第一生成模块,用于根据第一设备发送的针对目标业务场景的数据访问控制策略,生成与所述数据访问控制策略对应的目标凭证模板;
第一发送模块,用于根据所述第一设备发送的业务请求,将所述业务请求和所述数据访问控制策略发送至区块链网络,其中,所述区块链网络中的共识节点用于根据所述业务请求背书智能合约,所述区块链网络中的记账节点用于根据所述数据访问控制策略对所述智能合约生成的有效数据进行加密后存储;
第二生成模块,用于根据所述第一设备发送的针对所述目标业务场景的凭证获取请求,利用所述目标凭证模板、凭证生成规则以及每个业务参与方的访问属性,生成该业务参与方的访问凭证,其中,所述凭证获取请求中包括至少一个业务参与方的访问属性;
第二发送模块,用于将每个业务参与方的访问凭证发送给该业务参与方的服务网关。
10.一种基于区块链的数据访问装置,其特征在于,包括:
解密模块,用于根据第二设备发送的针对目标业务场景的数据访问请求,利用从业务发起方的服务网关获取的访问凭证对从区块链网络获取的该目标业务场景下的加密数据进行解密,得到目标数据,其中,所述访问凭证是所述业务发起方的服务网关根据所述业务发起方发送的该业务场景下的数据访问控制策略以及业务参与方的访问属性生成的,该业务场景下的加密数据是所述区块链网络中的记账节点根据所述数据访问控制策略对该业务场景下的有效数据进行加密后得到的;
发送模块,用于将所述目标数据发送给所述第二设备。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5或6至8任一项所述方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5或6至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211486262.4A CN115883154A (zh) | 2022-11-24 | 2022-11-24 | 访问凭证的颁发方法、基于区块链的数据访问方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211486262.4A CN115883154A (zh) | 2022-11-24 | 2022-11-24 | 访问凭证的颁发方法、基于区块链的数据访问方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115883154A true CN115883154A (zh) | 2023-03-31 |
Family
ID=85763877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211486262.4A Pending CN115883154A (zh) | 2022-11-24 | 2022-11-24 | 访问凭证的颁发方法、基于区块链的数据访问方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115883154A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117040930A (zh) * | 2023-10-08 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 区块链网络的资源处理方法、装置、产品、设备和介质 |
CN117252676A (zh) * | 2023-11-20 | 2023-12-19 | 成都新希望金融信息有限公司 | 业务处理方法、装置、电子设备和指标策略系统 |
-
2022
- 2022-11-24 CN CN202211486262.4A patent/CN115883154A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117040930A (zh) * | 2023-10-08 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 区块链网络的资源处理方法、装置、产品、设备和介质 |
CN117040930B (zh) * | 2023-10-08 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 区块链网络的资源处理方法、装置、产品、设备和介质 |
CN117252676A (zh) * | 2023-11-20 | 2023-12-19 | 成都新希望金融信息有限公司 | 业务处理方法、装置、电子设备和指标策略系统 |
CN117252676B (zh) * | 2023-11-20 | 2024-02-02 | 成都新希望金融信息有限公司 | 业务处理方法、装置、电子设备和指标策略系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110602138B (zh) | 区块链网络的数据处理方法、装置、电子设备及存储介质 | |
CN111090876B (zh) | 调用合约的方法及装置 | |
EP4120114A1 (en) | Data processing method and apparatus, smart device and storage medium | |
CN111130757B (zh) | 一种基于区块链的多云cp-abe访问控制方法 | |
CN111600908B (zh) | 数据处理的方法、系统、计算机设备和可读存储介质 | |
CN111797415A (zh) | 基于区块链的数据共享方法、电子设备和存储介质 | |
CN109728903B (zh) | 一种使用属性密码的区块链弱中心密码授权方法 | |
CN109450843B (zh) | 一种基于区块链的ssl证书管理方法及系统 | |
CN115883154A (zh) | 访问凭证的颁发方法、基于区块链的数据访问方法及装置 | |
CN115296838B (zh) | 基于区块链的数据共享方法、系统及存储介质 | |
CN114036539A (zh) | 基于区块链的安全可审计物联网数据共享系统及方法 | |
CN112152778B (zh) | 一种节点管理方法、装置、及电子设备 | |
CN114143108B (zh) | 一种会话加密方法、装置、设备及存储介质 | |
CN115345618B (zh) | 基于混合后量子数字签名的区块链交易验证方法及系统 | |
CN113901432A (zh) | 区块链身份认证方法、设备、存储介质及计算机程序产品 | |
CN113242219A (zh) | 数据传输方法、区块链网络及存储介质 | |
CN113722749A (zh) | 基于加密算法的区块链baas服务的数据处理方法及装置 | |
CN114124392B (zh) | 支持访问控制的数据可控流通方法、系统、设备和介质 | |
CN115834047A (zh) | 一种基于区块链的连续可信数据共享方法 | |
CN109981662A (zh) | 一种安全通信系统及方法 | |
CN113746630A (zh) | 区块链证书管理方法、装置、联盟链及存储介质 | |
US11954672B1 (en) | Systems and methods for cryptocurrency pool management | |
CN115473642B (zh) | 可监管恶意投票的区块链时间锁加密电子投票系统及方法 | |
US20240121078A1 (en) | Method for controlling validity of an attribute | |
Rao et al. | VAPKI: A blockchain-based identification system with validation and authentication |
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 |