CN113935070A - 基于区块链的数据处理方法、装置、设备以及存储介质 - Google Patents
基于区块链的数据处理方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN113935070A CN113935070A CN202111536613.3A CN202111536613A CN113935070A CN 113935070 A CN113935070 A CN 113935070A CN 202111536613 A CN202111536613 A CN 202111536613A CN 113935070 A CN113935070 A CN 113935070A
- Authority
- CN
- China
- Prior art keywords
- data
- party
- signature
- request
- user
- 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
Images
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/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/604—Tools and structures for managing or administering access control systems
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Automation & Control Theory (AREA)
- Storage Device Security (AREA)
Abstract
本公开提供了一种基于区块链的数据处理方法、装置、设备以及存储介质,涉及区块链技术领域,可用于云计算和云服务。具体实现方案为:响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果;根据所述数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥;根据所述验签密钥对所述签名结果进行验证;若验证通过,则将所述待使用数据反馈给所述数据使用方。通过本公开的技术,能够提高数据使用的安全性。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及区块链技术,可用于云计算和云服务。
背景技术
随着计算机技术的发展,海量隐私、高价值数据需要安全存储与使用。数据拥有方面临巨大的存储压力,需要一种存储服务,利用闲置存储资源,对数据拥有方所生成的数据进行存储。此时,如何保证存储在闲置存储资源中的数据的安全使用至关重要。
发明内容
本公开提供了一种基于区块链的数据处理方法、装置、设备以及存储介质。
根据本公开的一方面,提供了一种基于区块链的数据处理方法,包括:
响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果;
根据所述数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥;
根据所述验签密钥对所述签名结果进行验证;
若验证通过,则将所述待使用数据反馈给所述数据使用方。
根据本公开的另一方面,提供了一种基于区块链的数据处理方法,包括:
在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定所述待使用数据的数据存储方;
向所述数据存储方发起数据使用请求,并获取所述数据存储方反馈的待使用数据。
根据本公开的另一方面,提供了一种电子设备,该电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任一实施例所述的基于区块链的数据处理方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行本公开任一实施例所述的基于区块链的数据处理方法。
本公开实施例的方案,能够提高数据使用的安全性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例提供的一种基于区块链的数据处理方法的流程图;
图2是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图;
图3是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图;
图4是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图;
图5是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图;
图6是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图;
图7是根据本公开实施例提供的一种基于区块链的数据处理方法的信令图;
图8是根据本公开实施例提供的一种基于区块链的数据处理装置的结构示意图;
图9是根据本公开实施例提供的另一种基于区块链的数据处理装置的结构示意图;
图10是用来实现本公开实施例的基于区块链的数据处理方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本公开实施例提供的一种基于区块链的数据处理方法的流程图。本公开实施例适用于基于区块链技术,如何安全使用数据存储方所存储的数据的情况。整套基于区块链的数据处理方法由数据使用方、数据存储方、以及委托签名方相互配合来执行。其中,所谓数据使用方即为需要使用数据存储方所存储的数据的一方。其可以是直接具有数据使用需求的一方,也可以是间接具有数据使用需求的一方。例如,若使用方A想要使用数据进行模型训练,则使用方A为直接具有数据使用需求的数据使用方;若使用方A的计算能力不足,需要委托代理方B来代替他获取数据进行模型的训练,则此时代理方B为间接具有数据使用需求的数据使用方。数据存储方是为数据拥有方提供存储资源,来存储数据拥有方的数据的一方。本实施例的数据存储方的计算设备至少包括:访问控制层和数据处理层;其中,数据处理层用于向数据使用方提供数据;访问控制层位于数据处理层之前,用于在向数据使用方提供数据之前,核实数据使用方的访问权限。委托签名方即数据拥有方所信任的,能够提供审核及签名等服务的机构,具体用于在数据使用方请求使用数据拥有方的数据时,根据数据拥有方为其数据所配置的使用权限,来对数据使用方进行权限审核,并在审核通过后,生成签名结果。可选的,不同数据拥有方所信任的委托签名方可以相同,也可以不同。
本实施例中基于区块链的数据处理方法可以由基于区块链的数据处理装置来执行,该装置可以采用软件和/或硬件的方式实现,并可集成于承载数据存储方的计算设备中。如图1所示,本实施例提供的基于区块链的数据处理方法可以包括:
S101,响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果。
其中,所谓数据使用请求可以是数据使用方在具有数据使用需求时所发起的请求。可选的,数据使用方在具有数据使用需求时,可以先确定存储待使用数据的数据存储方,进而基于待使用数据的相关信息(如数据标识信息)向数据存储方发起数据使用请求。所谓待使用数据可以是数据使用方想要从数据存储方中获取并使用的数据。例如,可以是在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定待使用数据的数据存储方;向该数据存储方发起数据使用请求。其中,所谓租赁智能合约可以是基于插件机制所编写的代码段,专门用于处理数据拥有方和数据存储方之间数据存储交易等的相关事宜。例如,基于租赁智能合约对数据拥有方和存储方之间的数据存储交易进行撮合,以及将数据拥有方和存储方之间的存储关系记录在租赁智能合约中等。可选的,该租赁智能合约通常存储于区块链网络,也可以存储于该租赁智能合约对应的存储交易的参与方(如数据存储方和数据拥有方)本地。需要说明的是,在本实施例中,对于数据拥有方和数据存储方之间的每一次数据存储交易,都对应一个租赁智能合约。
所谓签名结果可以是委托签名方对数据使用方进行权限审核通过后,按照预设签名规则,所生成的签名结果。例如,可以是采用委托代理方的密钥对权限审核时的待审核信息(如数据使用方的标识信息、待使用数据标识或数据用途等)进行签名得到。可选的,委托签名方对数据使用方进行权限审核的过程可以包括但不限于:根据数据使用方的标识审核数据使用方是否得到数据拥有方的授权;根据待使用数据的标识信息审核待使用数据是否得到数据拥有方的授权;根据数据用途审核该数据用途是否得到数据拥有方的授权;还可以根据数据使用方的标识、待使用数据的标识信息和数据用途等中的至少两种信息来对数据使用方进行权限审核。对此本实施例不进行限定。
需要说明的是,本实施例的委托签名方可以是由至少一个参与方构成,若由多个参与方构成时,该签名结果可以是每个参与方对应一个签名结果,也可以是多个参与方生成的一个联合的签名结果(如门限签名结果)。对此本实施例不进行限定。
可选的,在本实施例中,数据存储方的计算设备的访问控制层(即数据存储方的访问控制层)获取并响应数据使用方发起的数据使用请求,进而根据该数据使用请求来获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果。具体的,根据该数据使用请求来获取委托签名方对数据使用方审核后反馈的签名结果的方式有很多,对此本实施例不进行限定。
一种可实施方式为:由数据使用方请求委托签名方对其进行审核,并将委托签名方签名通过后生成的签名结果携带在数据使用请求中发送给数据存储方。例如,数据使用方可以调用待使用数据关联的租赁智能合约,确定待使用数据关联的委托签名方;向委托签名方发起数据授权请求,并获取委托签名方响应于数据授权请求对数据使用方审核后反馈的签名结果;向数据存储方发起携带有签名结果的数据使用请求。此时,数据使用方的访问控制层可以从数据使用方发起的数据使用请求中,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果。例如,可以是从数据使用请求中的相关字段中查找并获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果。这样设置的好处是提高了签名结果的获取效率,进而提高了数据存储方的访问控制层对数据使用方访问权限验证的效率,以实现快速向数据使用方反馈待使用数据。
另一种可实施方式为:数据使用请求中没有携带委托签名方反馈的签名结果,此时数据使用方的访问控制层可以根据数据使用请求,调用待使用数据关联的租赁智能合约,来确定待使用数据所属数据拥有方信任的委托签名方,并请求该委托签名方对发起该数据使用请求的数据使用方进行审核,获取委托签名方对数据使用方审核通过后反馈的签名结果。
另一种可实施方式为:数据使用方在向数据存储方发起数据使用请求的同时,也向其待使用数据关联的委托签名方发起了数据授权请求。委托签名方对数据使用方审核通过,并生成签名结果后,可以直接向数据存储方来反馈该签名结果,此时数据使用方的访问控制层可以根据数据使用请求,调用待使用数据关联的租赁智能合约,来确定待使用数据所属数据拥有方信任的委托签名方,并接收该委托签名方反馈的签名结果。
S102,根据数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥。
其中,验签密钥可以是对委托签名方生成的签名结果进行验证所需的密钥。例如,若签名结果是委托签名方基于其私钥签名得到,则该验签密钥可以是委托签名方的公钥。需要说明的是,在委托签名方由多个参与方构成的情况下,若委托签名方生成的签名结果是每个参与方对应一个签名结果,则此时可以是每个参与方对应一个验签密钥;若委托签名方生成的签名结果是多个参与方生成的一个联合的签名结果(如门限签名结果),则此时可以是多个参与方对应一个公共的验签密钥。
需要说明的是,在本实施例中,由于待使用数据关联的委托签名方是待使用数据所属数据拥有方安排的,所以数据拥有方可以在其与存储方进行存储交易后,为了保证存储数据的安全性,授权让委托签名方对使用其数据的数据使用方进行审核,并将委托签名方的验签密钥记录在本次存储交易的租赁智能合约中。
可选的,数据存储方的访问控制层要想对委托签名方反馈的签名结果进行验证,就需要调用待使用数据所属存储交易的租赁智能合约,执行获取委托方验签密钥的相关逻辑,获取待使用数据所属数据拥有方的委托签名方的验签密钥。
具体的,数据存储方的访问控制层在调用租赁智能合约之前,需要先根据数据使用请求,从众多存储交易的租赁智能合约中获取到待使用数据所属存储交易的租赁智能合约。具体的,一种可实施方式为:在数据使用请求中携带有待使用数据所关联的租赁智能合约的标识信息时,访问控制层可以基于该标识信息在区块链网络或本地查找并获取该标识信息对应的租赁智能合约。另一种可实施方式为:在数据使用请求中未携带待使用数据所关联的租赁智能合约的标识信息时,访问控制层可以基于数据使用请求中的待使用数据,在区块链网络或本地查找并获取记录有该待使用数据的标识信息的存储交易的租赁智能合约。需要说明的是,为了保证调用的租赁智能合约的精准性和时效性,本实施例优选在区块链网络中查找并调用租赁智能合约。
S103,根据验签密钥对签名结果进行验证。
可选的,数据存储方的访问控制层在获取到委托签名方反馈的签名结果和委托签名方的验签密钥后,可以调用租赁智能合约,执行验签的相关逻辑,基于验签密钥对签名结果进行验证。具体的验签逻辑取决于委托签名方的签名逻辑。对此本实施例不进行限定。例如,若验签密钥是委托签名方的公钥,签名结果是委托签名方采用其私钥生成的,则此时可以基于验签密钥对签名结果进行解密,若解密成功则说明验签通过。
可选的,若本实施例的签名结果是由多个参与方的多个签名结果构成,则此时可以基于每个参与方的验签密钥,对该参与方生成的签名结果进行验证,若所有参与方或满足数量的参与方的签名结果验证通过,则说明本次签名验证通过;若本实施例的签名结果是多个参与方的一个联合的签名结果,则此时可以是基于各参与方公共的验签密钥,对联合的签名结果进行验证,若验证通过,则说明本次签名验证通过。
S104,若验证通过,则将待使用数据反馈给数据使用方。
可选的,若数据存储方的访问控制层通过上述步骤对委托签名方的签名结果验签通过,则说明发起该数据使用请求的数据使用方有权限获取待使用数据,此时访问控制层可以将该数据使用请求传输至数据存储方的计算设备的数据处理层(即数据存储方的数据处理层),由数据处理层基于该数据使用请求查找到数据使用方所需的待使用数据,并反馈给数据使用方。
例如,可以是从数据使用请求中获取待使用数据的标识信息和数据使用方信息,基于待使用数据的标识信息,在本次存储的众多数据中查找该标识信息对应的数据(即待使用数据),进而基于数据使用方信息将查找到的该待使用数据反馈给数据使用方。
需要说明的是,在本实施例中,若数据使用方的待使用数据是多个不同数据拥有方的数据,则数据存储方需要针对每个数据拥有方,分别获取其委托签名方对数据使用方反馈的签名结果,以及分别获取每个委托签名方的验签密钥,若基于每个委托签名方的验签密钥对该委托签名方的签名结果审核验证都通过,则可向数据使用方反馈全部的待使用数据。若仅有一部分委托签发方的签名结果验证通过,则可以是反馈验证通过的委托签名方对应的数据拥有方的那部分待使用数据;也可以所有的待使用数据都不进行反馈。
本实施例的技术方案,数据存储方响应于数据使用方的数据使用请求,先获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果,并调用对应的租赁智能合约确定委托签名方的验签密钥,进而根据验签密钥对签名结果进行验证,若验证通过则向数据使用方反馈待使用数据。本方案数据存储方在向数据使用方提供待使用数据之前,需要待使用数据所属数据拥有方的委托签名方对数据使用方审核通过,且需要对委托签名方对数据使用方审核通过后反馈的签名结果也验证通过。即保证了数据使用方在获取数据拥有方数据之前,得到了委托签名方(即数据拥有方)的认可,从而实现数据拥有方将其数据存储于数据存储方的情况下,也能保证其数据使用的安全性。
进一步的,在本实施例中,根据数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥的过程可以包括:根据数据使用请求,确定待使用数据的标识信息;在区块链网络中查找该标识信息关联的租赁智能合约,并调用该租赁智能合约,确定待使用数据关联的委托签名方的验签密钥。具体的,数据使用方要想获取数据,至少需要将待使用数据的标识信息携带在数据使用请求中,所以本实施例可以是基于数据使用请求中携带的待使用数据的标识信息,在区块链网络中查找记录有该待使用数据的标识信息的存储交易的租赁智能合约,并调用该租赁智能合约,执行验签密钥获取的相关逻辑,从而得到待使用数据关联的委托签名方的验签密钥。这样设置的好处是无需要求数据使用方在数据使用请求中添加额外的信息即可精准获取到委托签名方的验签密钥,提高了验签密钥获取的灵活性和便捷性。
图2是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图。本实施例在上述实施例的基础上,进一步对如何“响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果”进行详细解释说明。如图2所示,本实施例提供的基于区块链的数据处理方法可以包括:
S201,根据数据使用方发起的数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方。
其中,待使用数据关联的委托签名方可以是待使用数据所属数据拥有方信任的委托签名方,即该委托签名能够代表数据拥有方,对使用数据拥有方数据的数据使用方进行审核。
可选的,在本实施例中,数据存储方的访问控制层调用租赁智能合约前,需要先基于数据使用请求,从众多存储交易关联的租赁智能合约中,查找到数据使用请求中的待使用数据所属存储交易的租赁智能合约,进而调用该租赁智能合约,执行委托签名方获取的相关逻辑,来得到待使用数据关联的委托签名方。
可选的,若本实施例的待使用数据包含多个数据拥有方的数据,则此时需要针对每个数据拥有方,根据属于该数据拥有方的那部分待使用数据,定位该部分待使用数据关联的租赁智能合约,进而调用该关联的租赁智能合约来确定该数据拥有方的委托签名方。即针对每个数据拥有方,都要确定出其对应的委托签名方。
S202,向委托签名方发起数据授权请求,并获取委托签名方响应于数据授权请求对数据使用方审核后反馈的签名结果。
其中,数据授权请求可以是在数据使用方使用数据拥有方的数据时,向数据拥有方的委托签名方所发起的请求,以请求委托签名方对数据使用方是否有权使用数据进行审核。
可选的,数据存储方的访问控制层在确定出待使用数据关联的委托签名方后,会向该委托签名方发起包含待审核信息的数据授权请求,其中,待审核信息可以是供委托签名方审核数据使用方所提供的信息,其可以包括但不限于:待使用数据的标识信息、数据使用方信息、数据用途和数据拥有方签名等中的至少一种。委托签名方会基于该待审核数据,对数据使用方进行审核,具体的审核方式在上述实施例已经介绍,在此不进行赘述。若审核通过,委托签名方会基于预设规则,生成一个签名结果,并将该签名结果反馈给数据存储方的访问控制层。
可选的,若本实施例的待使用数据包含多个数据拥有方的数据,则数据存储方的访问控制层,会向每个数据拥有方的委托签名方都发起一个数据授权请求,并获取各个委托签名方响应于其收到的数据授权请求对数据使用方审核后反馈的签名结果,即针对每个数据拥有方,都要获取其对应的委托签名方反馈的签名结果,相应的,后续可以是在所有委托签名方的验签密钥都对该委托签名方的签名结果审核验证通过,才反馈全部的待使用数据;否则不反馈待使用数据,或仅反馈审核验证通过的委托签名方对应的数据拥有方的那部分待使用数据。
S203,根据数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥。
S204,根据验签密钥对签名结果进行验证。
S205,若验证通过,则将待使用数据反馈给数据使用方。
本公开实施例的方案,数据存储方响应于数据使用方的数据使用请求,调用对应的租赁智能合约确定待使用数据关联的委托签名方,向该委托签名方发起数据授权请求,并获取委托签名方对数据使用方审核后反馈的签名结果,再调用对应的租赁智能合约确定委托签名方的验签密钥,进而根据验签密钥对签名结果进行验证,若验证通过则向数据使用方反馈待使用数据。本方案由数据存储方与委托签名方交互来获取委托签名方反馈的签名结果,无需要求数据使用方来确定并反馈签名结果。也就是说,数据使用方只需发起常规的包含待使用数据的标识信息的数据使用请求,数据存储方即可完成对数据使用方的审核,即能够在数据使用方不知情的情况下,即可完成对数据使用方的审核。
需要说明的是,本实施例中的数据使用方可以是任意想要使用数据存储方所存储数据的一方,虽然都属于数据使用方,但是不同的数据使用方的身份可能不同,例如,有的身份可以是待使用数据的数据拥有方;有的身份可以是直接具有数据使用需求的直接使用方;还有的身份可以是间接具有数据使用需求的代理计算方等。可选的,本实施中数据存储方在向委托签名方发起数据授权请求时,可以包括:根据数据使用方的身份信息,确定待审核信息;向委托签名方发起包含有该待审核信息的数据授权请求。具体的,本实施例可以根据不同数据使用方的身份信息,基于身份信息与待审核信息的关联策略,向委托签名方发起包含不同类型待审核信息的数据授权请求。例如,若数据使用方的身份信息为数据拥有方,则该待审核信息可以是数据拥有方签名;若数据使用方的身份信息为代理计算方,则该待审核信息可以是委托该代理计算方的直接使用方信息和数据用途等。这样设置的好处是,委托签名方基于不同身份的数据使用方,采用不同策略进行审核,提高了对不同身份数据使用方审核过程的灵活性和多样性。
本实施例在上述实施例的基础上,对委托签名方及其签名结果进行了进一步的限定,即委托签名方包括至少一个层级的至少两个参与方;所述签名结果是至少两个参与方的门限签名结果。
其中,委托签名方中的每个参与方可以视为一个节点,即委托签名方由多个参与方节点构成。且在本实施例中,多个参与方节点中的每个节点属于一个或多个层级。所述多个参与方节点对应有至少一个层级,层级的级别递减,低层级节点中包括相邻的高层级参与方节点。
例如,多个参与方为行政关系,则按照行政级别,可以分为主管级和员工级这样两个层级。有的节点属于员工级,而有的节点可同时属于主管级和员工级,按照行政级别,员工级的层级低于主管级的层级。每个节点可基于所属最高层级确定对应所属层级。例如,主管级节点所属最高层级为主管级,则还属于较低的员工级。这表明,高层级节点可向下兼容低层级节点,可获知其信息,例如获知哪个节点是员工级节点,而低层级节点不能反向获知哪个节点是高层级节点。同层级的节点可相互获知所属最高层级。低层级的节点应包含有相邻的所有高一层级节点,层级的级别越高,对应的节点数量越少。
本实施例中,至少一个层级的至少两个参与方可以基于门限签名技术,来生成一个联合的门限签名结果,具体生成过程包括:
(一)、针对每个参与方需要先基于如下步骤生成非对称密钥对:
A、针对本机节点所属的每个层级,基于随机数,按照设定生成算法生成一个字节数组或数字,作为所述第一本地秘密;或,针对本机节点所属的每个层级,根据用户设置的助记词,按照设定恢复算法生成一个字节数组或数字,作为所述第一本地秘密。
B、分别将每个层级作为当前层级,按照当前层级中节点的数量以及当前层级的设定门限签名阈值,将当前层级的第一本地秘密切分为秘密碎片;将当前层级的各所述秘密碎片,按照所述秘密碎片被切分时确定的碎片编号和所述多方节点的节点编号,分别传输给所述当前层级中的每个节点;其中,所述设定门限签名阈值为当前层级需要参与门限签名的节点数量下限值;每个节点中记录的节点编号与节点的对应关系相同。
C、获取所述当前层级其他节点各自切分并传输的秘密碎片,分别将每个层级作为当前层级,将获取的当前层级的节点各自的秘密碎片进行累加,作为当前层级的第二本地秘密;将所述当前层级的第二本地秘密转换为设定精度整数;基于设定椭圆曲线,将所述设定精度整数转换为所述设定椭圆曲线上的私钥,作为当前层级的非对称密钥对的私钥。分别将每个层级作为当前层级,根据所述当前层级的第一本地秘密生成当前层级的层级验证值,将每个层级的层级验证值进行累加,以生成节点验证值;将所述节点验证值传输给所述多方节点中的每个节点;获取所述多方节点中其他节点各自生成并传输的节点验证值,并根据获取的所述多方节点各自的节点验证值,基于设定椭圆曲线的基点生成非对称密钥对的公钥。
(二),由多参与方基于其生成的非对称密钥,按照如下步骤来进行多门限签名:
A、采用本机节点每个层级的私钥对待审核信息分别进行签名,以产生层级密钥参数碎片,将层级密钥参数碎片进行累加以生成密钥参数碎片,将所述密钥参数碎片传输给所述多方节点中的其他节点。
B、获取根据各节点的密钥参数碎片生成的密钥参数。
C、根据所述密钥参数封装形成所述待审核信息的门限签名结果。
可选的,本实施例可以为每个层级可分别配置各自的门限签名阈值,结合作为限定门限签名的条件。设定门限签名阈值,为需要参与门限签名的节点数量下限值,若参与签名的节点数量小于设定门限签名阈值,则门限签名无法得到有效验签。
本实施例由至少一个层级的至少两个参与方,基于分布式门限签名技术(DKMS)生成的门限签名结果。只需满足门限数量要求,无需所有节点参与签名,即可完成对待审核信息的签名,从而降低了区块链的计算工作量,降低了成本,另外通过交换密钥参数碎片的方式,根据获取到的密钥参数碎片生成密钥参数,而后据此生成签名。实现了分布式的密钥参数生成,不必依赖于中心节点生成,从而提高了签名的安全度。
进一步,在委托签名方包括至少一个层级的至少两个参与方;所述签名结果是至少两个参与方的门限签名结果的前提下,对如何“根据验签密钥对签名结果进行验证”进行详细解释说明。如图3所示,本实施例提供的基于区块链的数据处理方法可以包括:
S301,响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果。
S302,根据数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥。
S303,根据设定椭圆曲线的基点、验签密钥、待审核信息,以及签名结果中的第一密钥参数和第二密钥参数,确定待验证签名参数。
其中,第一密钥参数和第二密钥参数都属于签名结果中的密钥参数,其具体确定过程在上述实施例已经介绍,在此不进行赘述。
可选的,在本实施例中,可以基于如下公式来计算待验证签名参数:
Rv = SG-eC;
其中,Rv为待验证签名参数,S为签名结果中的第二密钥参数,G是设定椭圆曲线的基点,C是验签密钥,e = HASH(C,R,M),R为签名结果中的第一密钥参数,M为待审核信息。
S304,若待验证签名参数和第一密钥参数匹配,则签名结果验证通过。
可选的,如果待验证签名参数Rv和第一密钥参数R匹配,则签名结果验证通过。例如,Rv==R,表明两者匹配。本实施例根据基于密钥的门限签名过程中产生的第一密钥参数和第二密钥参数完成对签名结果的签名验证,保证了验证过程的安全性及可信性。
需要说明的是,由于第一密钥参数是本公开实施例提供的基于密钥的门限签名方法中产生的。如果待验证签名参数和第一密钥参数匹配,则签名结果验证通过,表明对数据使用方审核通过。如果待验证签名参数和第一密钥参数不匹配,则签名结果验证失败,表明对数据使用方审核未通过。
S305,将待使用数据反馈给数据使用方。
具体的,在S304审核通过的情况下,将待使用数据反馈给数据使用方。
本公开实施例的方案,在委托签名方包括至少一个层级的至少两个参与方;签名结果是至少两个参与方的门限签名结果的情况下,数据存储方响应于数据使用方的数据使用请求,先获取待使用数据关联的委托签名方对数据使用方审核后反馈的门限签名结果,并调用对应的租赁智能合约确定委托签名方的验签密钥,进而根据待审核信息和门限签名结果,采用验签密钥对门限签名结果进行签名验证,若验证通过则向数据使用方反馈待使用数据。本方案,在验证签名的过程中,无法获知哪个节点参与了签名,具有一定的匿名性。有效地保证了数据使用方审核验证过程的安全性及可信性。
图4是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图。本公开实施例适用于基于区块链技术,如何安全使用数据存储方所存储的数据的情况。整套基于区块链的数据处理方法由数据使用方、数据存储方、以及委托签名方相互配合来执行。本实施例中基于区块链的数据处理方法可以由基于区块链的数据处理装置来执行,该装置可以采用软件和/或硬件的方式实现,并可集成于承载数据使用方的计算设备中。如图4所示,本实施例提供的基于区块链的数据处理方法可以包括:
S401,在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定待使用数据的数据存储方。
可选的,由于租赁智能合约中记录有数据存储交易的参与方信息,即数据存储方和数据拥有方。所以调用待使用数据关联的租赁智能合约,可以从租赁智能合约中获取待使用数据的数据存储方。即,数据使用方在有数据使用需求时,需要从区块链网络调用待使用数据所属存储交易的租赁智能合约,并执行获取数据存储方的相关逻辑,得到待使用数据的数据存储方,如得到数据存储方的标识信息。
优选的,数据存储方可以根据待使用数据的标识信息,在区块链网络中查找标识信息关联的租赁智能合约;调用该租赁智能合约,确定待使用数据的数据存储方。具体的,数据使用方要想获取数据,至少知道其待使用数据的标识信息,因此,数据使用方可以在区块链网络中查找记录有该待使用数据的标识信息的存储交易的租赁智能合约,并调用该租赁智能合约,执行数据存储方获取的相关逻辑,从而得到待使用数据的数据存储方。仅根据待使用数据的数据信息即可精准定位到数据存储方,提高了数据存储方确定的灵活性和便捷性。
可选的,若数据使用方是待使用数据的数据拥有方,由于数据拥有方参与了待使用数据的存储交易,所以其本地可能存储有该存储交易的租赁智能合约,此时数据使用方也可以在本地获取到该待使用数据所属存储交易的租赁智能合约。
需要说明的是,若待使用数据是一个数据拥有方的数据,且该数据拥有方将该待使用数据分片存储在多个不同数据存储方,则此时数据使用方可以是调用该待使用数据关联的租赁智能合约,确定出待使用数据的多个数据存储方。若待使用数据是多个数据拥有方的数据,且每个数据拥有方的数据又存储在至少一个数据存储方,则此时数据使用方可以是分别调用每个数据拥有方的待使用数据所关联的租赁智能合约,确定出每个数据拥有方的待使用数据所对应的至少一个数据存储方。
S402,向数据存储方发起数据使用请求,并获取数据存储方反馈的待使用数据。
其中,数据使用请求用于指示数据存储方对委托签名方提供的签名结果进行验签,并在验签通过的情况下,反馈待使用数据。需要说明的,数据存储方怎么响应数据使用请求的过程在上述实施例已经进行了详细的介绍,在此不进行详细介绍。
可选的,本实施例可以根据待使用数据的标识信息和数据使用方自身的标识信息等,调用待使用数据关联的租赁智能合约,执行发起数据使用请求的相关逻辑代码,发起一个数据使用请求,并将该数据使用请求发送至数据存储方。数据存储方在接收到该数据使用请求后,会获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果;根据数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥;根据验签密钥对签名结果进行验证;若验证通过,则将待使用数据反馈给数据使用方。相应的,数据使用方即可获取到数据存储方反馈的待使用数据。
需要说明的是,若S401确定出待使用数据由多个数据存储方存储时,本实施例可以是针对每个数据存储方,基于该数据存储方所存储的待使用数据的标识信息和数据使用方自身的标识信息等,向该数据存储方发起一个数据使用请求。即针对每个数据存储方都发起一个单独的数据使用请求。
本公开实施例的方案,在数据使用方存在数据使用需求时,可以调用待使用数据关联的租赁智能合约,确定出待使用数据的数据存储方,并向数据存储方发起数据使用请求,以使数据存储方根据数据使用请求获取待使用数据关联的委托签名方对数据使用方审核通过后提供的签名结果,和委托签名方的验签密钥,基于验签密钥对签名结果验证通过后,向数据使用方反馈待使用数据。本方案,对任意数据使用方,其想从数据存储方获取数据,需要待使用数据所属数据拥有方的委托签名方对数据使用方审核通过,且需要对委托签名方对数据使用方审核通过后反馈的签名结果也验证通过。即使是数据拥有方其也不能随意使用存储在数据存储方的数据。极大的提高了数据存储方所存储数据的使用安全。
图5是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图。本实施例在上述实施例的基础上,进一步对如何“向数据存储方发起数据使用请求”进行详细解释说明。如图5所示,本实施例提供的基于区块链的数据处理方法可以包括:
S501,在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定待使用数据的数据存储方。
S502,调用待使用数据关联的租赁智能合约,确定待使用数据关联的委托签名方。
可选的,本实施例数据使用方如何调用待使用数据关联的租赁智能合约,确定待使用数据关联的委托签名方的过程与上述实施例介绍的数据存储方调用租赁智能合约,确定待使用数据关联的委托签名方的过程类似。例如,可以是先基于待使用数据的标识信息,从区块链网络中的众多存储交易的租赁智能合约中,查找到待使用数据所属存储交易的租赁智能合约,进而调用该租赁智能合约,执行委托签名方获取的相关逻辑,得到待使用数据关联的委托签名方。
需要说明的是,若本实施例的待使用数据包含多个数据拥有方的数据,则针对每个数据拥有方,都要需要基于上述方法确定出其对应的委托签名方。
S503,向委托签名方发起数据授权请求,并获取委托签名方响应于数据授权请求对数据使用方审核后反馈的签名结果。
可选的,数据使用方向委托签名方发起数据授权请求,并获取委托签名方响应于数据授权请求对数据使用方审核后反馈的签名结果的过程,与上述实施例数据存储方向委托签名方发起数据授权请求,并获取委托签名方响应于数据授权请求对数据使用方审核后反馈的签名结果的实现方式类似。例如,可以是数据使用方向该委托签名方发起包含待审核信息的数据授权请求,其中,待审核信息可以是供委托签名方对自身进行审核所提供的信息,其可以包括但不限于:待使用数据的标识信息、数据使用方信息、数据用途和数据拥有方签名等中的至少一种。委托签名会基于该待审核数据,对自身审核通过后,会生成并反馈一个签名结果。
需要说明的是,若本实施例的待使用数据包含多个数据拥有方的数据,则会向每个数据拥有方的委托签名方都发起一个数据授权请求,并获取各个委托签名方响应于其收到的数据授权请求对自身审核后反馈的签名结果。
可选的,所述委托签名方包括至少一个层级的至少两个参与方;所述签名结果是所述至少两个参与方的门限签名结果。本实施例,由至少一个层级的至少两个参与方,基于分布式门限签名技术(DKMS)生成的门限签名结果。这样设置的好处是只需满足门限数量要求,无需所有节点参与签名,即可完成对待审核信息的签名,从而降低了区块链的计算工作量,降低了成本,另外通过交换密钥参数碎片的方式,根据获取到的密钥参数碎片生成密钥参数,而后据此生成签名。实现了分布式的密钥参数生成,不必依赖于中心节点生成,从而提高了签名的安全度。
S504,向数据存储方发起携带有签名结果的数据使用请求。
可选的,在本实施例中,数据使用方向数据存储方发起数据使用请求时,可以是将其获取的委托签名方反馈的签名结果也携带到数据使用请求中,以便数据存储方基于该签名结果快速完成对自身访问权限的审核,从而快速反馈待使用数据。
本实施例的技术方案,在数据使用方存在数据使用需求时,调用待使用数据关联的租赁智能合约,确定出待使用数据的数据存储方和委托签名方,进而向委托签名方发起数据授权请求,并获取委托签名方反馈的签名结果添加到向数据存储方发起数据使用请求中,以使数据存储方根据数据使用请求中携带的签名结果,和委托签名方的验签密钥,基于验签密钥对签名结果验证通过后,向数据使用方反馈待使用数据。本方案由数据使用方来向委托签名方发起数据授权请求,数据使用方直接将签名结果携带在数据使用请求中发送至数据存储方,提高了数据存储方获取签名结果的效率,进而提高了数据存储方对数据使用方访问权限验证的效率,以实现快速获取待使用数据。
可选的,在本实施例中,由于数据使用方可以是任意想要使用数据存储方所存储数据的一方,所以不同的数据使用方,其对应的身份可能不同,例如,有的身份可以是待使用数据的数据拥有方;有的身份可以是直接具有数据使用需求的直接使用方;还有的身份可以是间接具有数据使用需求的代理计算方。因此,本实施中数据使用方在向委托签名方发起数据授权请求时,可以包括:根据本地身份信息,确定待审核信息;向委托签名方发起包含有该待审核信息的数据授权请求。具体的,数据使用方可以结合自身的身份信息,基于身份信息与待审核信息的关联策略,向委托签名方发起包含不同类型待审核信息的数据授权请求。例如,若自身是数据拥有方,则该待审核信息可以是数据拥有方签名,即其自身的签名信息;若自身为代理计算方,则该待审核信息可以是委托自身进行计算的直接使用方信息和数据用途等。这样设置的好处是,委托签名方基于不同身份的数据使用方,采用不同策略进行审核,提高了对不同身份数据使用方审核过程的灵活性和多样性。
图6是根据本公开实施例提供的另一种基于区块链的数据处理方法的流程图。本实施例在上述实施例的基础上,进一步对如何“向数据存储方发起数据使用请求”进行详细解释说明。如图6所示,本实施例提供的基于区块链的数据处理方法可以包括:
S601,在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定待使用数据的可选数据存储方。
需要说明的是,数据拥有方在存储其数据时,为了保证数据的安全性,可能将其数据备份后分布存储在多个不同的数据存储方中,此时,数据使用方在使用该数据时,基于租赁智能合约,可能会确定出多个存储有该待使用数据的数据存储方,此时这多个数据存储方统称为可选数据存储方。
S602,若待使用数据备份存储于至少两个可选数据存储方,则根据至少两个可选数据存储方的健康度,从至少两个可选数据存储方中确定至少一个目标数据存储方。
其中,健康度可以是用于表征数据存储方稳定性的一种指标。可选的,健康度可以以分值的形式呈现;或者可以以类别等其他形式呈现,比如,按照健康度从高到底的顺序,可以将健康度分为红色、黄色和绿色三个等级。可选的,数据存储方的健康度可以是调用租赁智能合约,根据数据存储方的历史任务完成情况和/或历史心跳情况确定。
可选的,在本实施例中,若待使用数据备份存储于至少两个可选数据存储方中,此时由于多个可选存储方重复存储有待使用数据,无需从多个数据存储方重复获取待使用数据,因此,可以基于各可选存储方的健康度,从各可选数据存储方中筛选出一部分目标存储方,来从目标存储方中获取待使用数据。具体的,从可选数据存储方中筛选目标存储方的策略可以有很多种,对此本实施例不进行限定。
一种可实施方式为:对各可选数据存储方进行分类,如将存储有相同待使用数据的目标存储方分为一类,针对每一类,选择健康度最高的一个可选存储方,组成目标存储方。
另一种可实施方式为:基于各可选存储方存储的待使用数据的数据量,选出至少一组能够覆盖全部待使用数据的存储方集合;结合各存储方集合中的可选存储方的健康度和可选存储方数量,尽可能选择出健康度高,且存储方数量少的一个存储方集合,并将该存储方集合中的各可选数据存储方作为目标存储方。
S603,向至少一个目标存储方发起数据使用请求,并获取目标数据存储方反馈的待使用数据。
具体的,本实例只向筛选出来的目标存储方发起数据请求,并获取目标存储方反馈的待使用数据。
本公开实施例的技术方案,在数据使用方存在数据使用需求,且其待使用数据备份存储于至少两个可选数据存储方时,可以调用待使用数据关联的租赁智能合约,确定出待使用数据的多个可选数据存储方,并根据多个可选存储方的健康度,从中选出至少一个目标数据存储方,向目标数据存储方发起数据使用请求,并获取目标数据存储方反馈的待使用数据,本实施例在待使用数据备份存储于至少两个可选数据存储方时,无需重复获取待使用数据,避免了资源的浪费,另外,本实施例在选择目标数据存储方时,结合了数据存储方的健康度,由于健康度高的数据存储方的性能更稳定,所以本实施例获取到的待使用数据的安全性更强。
图7是根据本公开实施例提供的一种基于区块链的数据处理方法的信令图。本实施例在上述实施例的基础上,给出了一种数据使用方、数据存储方和委托签名方相互配合来执行数据使用方法的优选实例。如图7所示,本实施例提供的基于区块链的数据处理方法可以包括:
S701,数据使用方存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定待使用数据的数据存储方和委托签名方。
其中,所述委托签名方包括至少一个层级的至少两个参与方。
S702,数据使用方向委托签名方发起数据授权请求
S703,委托签名方响应于数据授权请求,对数据使用方进行审核,若审核通过,则基于多门限签名技术,生成门限签名结果,并向数据使用方反馈门限签名结果。
S704,数据使用方获取委托签名方反馈的门限签名结果。
S705,数据使用方向数据存储方发起携带有门限签名结果的数据使用请求。
S706,数据存储方的访问控制层响应于数据使用方发起的数据使用请求,从数据使用请求中获取门限签名结果。
S707,数据存储方的访问控制层根据数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥。
S708,数据存储方的访问控制层根据验签密钥对门限签名结果进行验证。
S709,若验证通过,则数据存储方的数据处理层将待使用数据反馈给数据使用方。
S710,数据使用方获取数据存储方反馈的待使用数据。
本实施例给出了数据使用方、数据存储方和委托签名方相互配合来执行数据使用方法的优选实例,提高了数据使用的安全性。
图8是根据本公开实施例提供的一种基于区块链的数据处理装置的结构示意图。该装置可实现本公开实施例所述的基于区块链的数据处理方法。该装置可集成于承载数据存储方的计算设备中。该基于区块链的数据处理装置800具体包括:
签名获取模块801,用于响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果;
密钥确定模块802,用于根据所述数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥;
签名验证模块803,用于根据所述验签密钥对所述签名结果进行验证;
数据反馈模块804,用于若验证通过,则将所述待使用数据反馈给所述数据使用方。
本实施例的技术方案,数据存储方响应于数据使用方的数据使用请求,先获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果,并调用对应的租赁智能合约确定委托签名方的验签密钥,进而根据验签密钥对签名结果进行验证,若验证通过则向数据使用方反馈待使用数据。本方案数据存储方在向数据使用方提供待使用数据之前,需要待使用数据所属数据拥有方的委托签名方对数据使用方审核通过,且需要对委托签名方对数据使用方审核通过后反馈的签名结果也验证通过。即保证了数据使用方在获取数据拥有方数据之前,得到了委托签名方(即数据拥有方)的认可,从而实现数据拥有方将其数据存储于数据存储方的情况下,也能保证其数据使用的安全性。
进一步的,上述签名获取模块801具体用于:
从数据使用方发起的数据使用请求中,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果。
进一步的,上述签名获取模块801包括:
第一委托签名方确定单元,用于根据数据使用方发起的数据使用请求,调用租赁智能合约,确定所述待使用数据关联的委托签名方;
第一授权请求发起单元,用于向所述委托签名方发起数据授权请求;
第一签名结果获取单元,用于获取所述委托签名方响应于所述数据授权请求对数据使用方审核后反馈的签名结果。
进一步的,上述第一授权请求发起单元具体用于:
根据数据使用方的身份信息,确定待审核信息;
向所述委托签名方发起包含有所述待审核信息的数据授权请求。
进一步的,上述密钥确定模块802具体用于:
根据所述数据使用请求,确定待使用数据的标识信息;
在区块链网络中查找所述标识信息关联的租赁智能合约,并调用所述租赁智能合约,确定待使用数据关联的委托签名方的验签密钥。
进一步的,上述委托签名方包括至少一个层级的至少两个参与方;所述签名结果是所述至少两个参与方的门限签名结果。
进一步的,上述签名验证模块803具体用于:
根据设定椭圆曲线的基点、所述验签密钥、待审核信息,以及所述签名结果中的第一密钥参数和第二密钥参数,确定待验证签名参数;
若所述待验证签名参数和所述第一密钥参数匹配,则所述签名结果验证通过。
图9是根据本公开实施例提供的另一种基于区块链的数据处理装置的结构示意图。该装置可实现本公开实施例所述的基于区块链的数据处理方法。该装置可集成于承载数据使用方的计算设备中。该基于区块链的数据处理装置900具体包括:
存储方确定模块901,用于在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定所述待使用数据的数据存储方;
请求发起模块902,用于向所述数据存储方发起数据使用请求;
数据获取模块903,用于获取所述数据存储方反馈的待使用数据。
本公开实施例的方案,在数据使用方存在数据使用需求时,可以调用待使用数据关联的租赁智能合约,确定出待使用数据的数据存储方,并向数据存储方发起数据使用请求,以使数据存储方根据数据使用请求获取待使用数据关联的委托签名方对数据使用方审核通过后提供的签名结果,和委托签名方的验签密钥,基于验签密钥对签名结果验证通过后,向数据使用方反馈待使用数据。本方案,对任意数据使用方,其想从数据存储方获取数据,需要待使用数据所属数据拥有方的委托签名方对数据使用方审核通过,且需要对委托签名方对数据使用方审核通过后反馈的签名结果也验证通过。即使是数据拥有方其也不能随意使用存储在数据存储方的数据。极大的提高了数据存储方所存储数据的使用安全。
进一步的,请求发起模块902,包括:
第二委托签名方确定单元,用于调用待使用数据关联的租赁智能合约,确定所述待使用数据关联的委托签名方;
第二授权请求发起单元,用于向所述委托签名方发起数据授权请求;
第二签名结果获取单元,用于获取所述委托签名方响应于所述数据授权请求对数据使用方审核后反馈的签名结果。
数据使用请求发起单元,用于向数据存储方发起携带有所述签名结果的数据使用请求。
进一步的,上述第二授权请求发起单元具体用于:
根据本地身份信息,确定待审核信息;
向所述委托签名方发起包含有所述待审核信息的数据授权请求。
进一步的,所述委托签名方包括至少一个层级的至少两个参与方;所述签名结果是所述至少两个参与方的门限签名结果。
进一步的,上述请求发起模块902具体用于:
若所述待使用数据备份存储于至少两个可选数据存储方,则根据所述至少两个可选数据存储方的健康度,从所述至少两个可选数据存储方中确定至少一个目标数据存储方;
向所述至少一个目标存储方发起数据使用请求。
进一步的,上述存储方确定模块901具体用于:
根据待使用数据的标识信息,在区块链网络中查找所述标识信息关联的租赁智能合约;
调用所述租赁智能合约,确定待使用数据的数据存储方。
进一步的,上述数据使用请求用于指示所述数据存储方对委托签名方提供的签名结果进行验签,并在验签通过的情况下,反馈待使用数据。
上述产品可执行本公开任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
本公开的技术方案中,所涉及的待使用数据、历史任务完成情况和历史心跳情况等的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图10示出了可以用来实施本公开的实施例的示例电子设备1000的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如基于区块链的数据处理方法。例如,在一些实施例中,基于区块链的数据处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由计算单元1001执行时,可以执行上文描述的基于区块链的数据处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于区块链的数据处理方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式***的服务器,或者是结合了区块链的服务器。
人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作***、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (19)
1.一种基于区块链的数据处理方法,包括:
响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果;
根据所述数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥;
根据所述验签密钥对所述签名结果进行验证;
若验证通过,则将所述待使用数据反馈给所述数据使用方。
2.根据权利要求1所述的方法,其中,所述响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果,包括:
从数据使用方发起的数据使用请求中,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果。
3.根据权利要求1所述的方法,其中,所述响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果,包括:
根据数据使用方发起的数据使用请求,调用租赁智能合约,确定所述待使用数据关联的委托签名方;
向所述委托签名方发起数据授权请求,并获取所述委托签名方响应于所述数据授权请求对数据使用方审核后反馈的签名结果。
4.根据权利要求3所述的方法,其中,所述向所述委托签名方发起数据授权请求,包括:
根据数据使用方的身份信息,确定待审核信息;
向所述委托签名方发起包含有所述待审核信息的数据授权请求。
5.根据权利要求1所述的方法,其中,所述根据所述数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥,包括:
根据所述数据使用请求,确定待使用数据的标识信息;
在区块链网络中查找所述标识信息关联的租赁智能合约,并调用所述租赁智能合约,确定待使用数据关联的委托签名方的验签密钥。
6.根据权利要求1-5中任一项所述的方法,其中,
所述委托签名方包括至少一个层级的至少两个参与方;所述签名结果是所述至少两个参与方的门限签名结果。
7.根据权利要求6所述的方法,其中,所述根据所述验签密钥对所述签名结果进行验证,包括:
根据设定椭圆曲线的基点、所述验签密钥、待审核信息,以及所述签名结果中的第一密钥参数和第二密钥参数,确定待验证签名参数;
若所述待验证签名参数和所述第一密钥参数匹配,则所述签名结果验证通过。
8.一种基于区块链的数据处理方法,包括:
在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定所述待使用数据的数据存储方;
向所述数据存储方发起数据使用请求,并获取所述数据存储方反馈的待使用数据。
9.根据权利要求8所述的方法,其中,所述向所述数据存储方发起数据使用请求,包括:
调用待使用数据关联的租赁智能合约,确定所述待使用数据关联的委托签名方;
向所述委托签名方发起数据授权请求,并获取所述委托签名方响应于所述数据授权请求对数据使用方审核后反馈的签名结果;
向数据存储方发起携带有所述签名结果的数据使用请求。
10.根据权利要求9所述的方法,其中,所述向所述委托签名方发起数据授权请求,包括:
根据本地身份信息,确定待审核信息;
向所述委托签名方发起包含有所述待审核信息的数据授权请求。
11.根据权利要求9或10所述的方法,其中,所述委托签名方包括至少一个层级的至少两个参与方;所述签名结果是所述至少两个参与方的门限签名结果。
12.根据权利要求8所述的方法,其中,所述向所述数据存储方发起数据使用请求,包括:
若所述待使用数据备份存储于至少两个可选数据存储方,则根据所述至少两个可选数据存储方的健康度,从所述至少两个可选数据存储方中确定至少一个目标数据存储方;
向所述至少一个目标存储方发起数据使用请求。
13.根据权利要求8所述的方法,其中,所述调用待使用数据关联的租赁智能合约,确定所述待使用数据的数据存储方,包括:
根据待使用数据的标识信息,在区块链网络中查找所述标识信息关联的租赁智能合约;
调用所述租赁智能合约,确定待使用数据的数据存储方。
14.根据权利要求8-13中任一项所述的方法,其中,所述数据使用请求用于指示所述数据存储方对委托签名方提供的签名结果进行验签,并在验签通过的情况下,反馈待使用数据。
15.一种基于区块链的数据处理装置,包括:
签名获取模块,用于响应于数据使用方发起的数据使用请求,获取待使用数据关联的委托签名方对数据使用方审核后反馈的签名结果;
密钥确定模块,用于根据所述数据使用请求,调用租赁智能合约,确定待使用数据关联的委托签名方的验签密钥;
签名验证模块,用于根据所述验签密钥对所述签名结果进行验证;
数据反馈模块,用于若验证通过,则将所述待使用数据反馈给所述数据使用方。
16.一种基于区块链的数据处理装置,包括:
存储方确定模块,用于在确定存在数据使用需求的情况下,调用待使用数据关联的租赁智能合约,确定所述待使用数据的数据存储方;
请求发起模块,用于向所述数据存储方发起数据使用请求;
数据获取模块,用于获取所述数据存储方反馈的待使用数据。
17.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7或8-14中任一项所述的基于区块链的数据处理方法。
18.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-7或8-14中任一项所述的基于区块链的数据处理方法。
19.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-7或8-14中任一项所述的基于区块链的数据处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111536613.3A CN113935070B (zh) | 2021-12-16 | 2021-12-16 | 基于区块链的数据处理方法、装置、设备以及存储介质 |
US18/082,356 US11734455B2 (en) | 2021-12-16 | 2022-12-15 | Blockchain-based data processing method and apparatus, device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111536613.3A CN113935070B (zh) | 2021-12-16 | 2021-12-16 | 基于区块链的数据处理方法、装置、设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113935070A true CN113935070A (zh) | 2022-01-14 |
CN113935070B CN113935070B (zh) | 2022-06-07 |
Family
ID=79289067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111536613.3A Active CN113935070B (zh) | 2021-12-16 | 2021-12-16 | 基于区块链的数据处理方法、装置、设备以及存储介质 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11734455B2 (zh) |
CN (1) | CN113935070B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112636929B (zh) * | 2020-12-29 | 2023-01-17 | 北京百度网讯科技有限公司 | 群组业务实现方法、装置、设备和存储介质 |
CN116938594B (zh) * | 2023-09-08 | 2024-03-22 | 数盾信息科技股份有限公司 | 一种基于高速加密技术的多层次身份验证*** |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1737721A (zh) * | 2005-08-03 | 2006-02-22 | 武汉理工大学 | 一种基于椭圆曲线的可控授权电子签名方法 |
CN108648084A (zh) * | 2018-05-18 | 2018-10-12 | 百度在线网络技术(北京)有限公司 | 一种区块链网络的数据处理方法、装置、设备及存储介质 |
CN111143880A (zh) * | 2019-12-27 | 2020-05-12 | 中电长城网际***应用有限公司 | 数据处理方法和装置、电子设备、可读介质 |
CN111294379A (zh) * | 2018-12-10 | 2020-06-16 | 北京沃东天骏信息技术有限公司 | 区块链网络服务平台及其权限托管方法、存储介质 |
WO2020192743A1 (zh) * | 2019-03-28 | 2020-10-01 | 腾讯科技(深圳)有限公司 | 权限管理方法、权限验证方法和相关装置 |
CN111934890A (zh) * | 2020-10-13 | 2020-11-13 | 百度在线网络技术(北京)有限公司 | 密钥生成方法、签名和验签方法、装置、设备和介质 |
CN112187471A (zh) * | 2020-09-23 | 2021-01-05 | 上海万向区块链股份公司 | 基于区块链与智能合约的数据抄送方法、***及介质 |
CN112287379A (zh) * | 2020-12-24 | 2021-01-29 | 北京百度网讯科技有限公司 | 业务数据使用方法、装置、设备、存储介质和程序产品 |
US20210075870A1 (en) * | 2018-02-05 | 2021-03-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for managing service access authorization using smart contracts |
CN112532646A (zh) * | 2020-12-09 | 2021-03-19 | 杭州趣链科技有限公司 | 数据共享方法、***、装置、设备和存储介质 |
CN113792318A (zh) * | 2021-09-18 | 2021-12-14 | 上海数据交易中心有限公司 | 数据授权方法及装置、计算机可读存储介质、计算机设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RO134065A0 (ro) * | 2019-08-14 | 2020-04-30 | Ingenium Blockchain Technologies S.R.L. | Platformă şi metodă de conectare a unui motor de blockchain |
WO2021186754A1 (ja) * | 2020-03-17 | 2021-09-23 | 株式会社モールサービス | 情報処理システム、情報処理方法、情報処理プログラム、秘密分散システム、秘密分散方法、秘密分散プログラム、秘密計算システム、秘密計算方法、及び、秘密計算プログラム |
EP3837617B1 (en) * | 2020-06-08 | 2023-08-02 | Alipay Labs (Singapore) Pte. Ltd. | Distributed storage of custom clearance data |
SG11202102402QA (en) * | 2020-06-08 | 2021-04-29 | Alipay Labs Singapore Pte Ltd | Blockchain-based import custom clearance data processing |
EP3841507B1 (en) * | 2020-06-08 | 2023-04-26 | Alipay Labs (Singapore) Pte. Ltd. | User management of blockchain-based custom clearance service platform |
EP3844655B1 (en) * | 2020-06-08 | 2023-05-03 | Alipay Labs (Singapore) Pte. Ltd. | Managing user authorizations for blockchain-based custom clearance services |
EP3841491B1 (en) * | 2020-06-08 | 2023-08-02 | Alipay Labs (Singapore) Pte. Ltd. | Blockchain-based smart contract pools |
CN112184441B (zh) * | 2020-09-29 | 2024-01-19 | 平安科技(深圳)有限公司 | 数据处理方法、装置、节点设备及存储介质 |
CN112600671B (zh) * | 2021-03-02 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN113254169B (zh) * | 2021-06-11 | 2021-11-09 | 北京百度网讯科技有限公司 | 区块链***的运行方法、装置、设备和存储介质 |
-
2021
- 2021-12-16 CN CN202111536613.3A patent/CN113935070B/zh active Active
-
2022
- 2022-12-15 US US18/082,356 patent/US11734455B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1737721A (zh) * | 2005-08-03 | 2006-02-22 | 武汉理工大学 | 一种基于椭圆曲线的可控授权电子签名方法 |
US20210075870A1 (en) * | 2018-02-05 | 2021-03-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for managing service access authorization using smart contracts |
CN108648084A (zh) * | 2018-05-18 | 2018-10-12 | 百度在线网络技术(北京)有限公司 | 一种区块链网络的数据处理方法、装置、设备及存储介质 |
CN111294379A (zh) * | 2018-12-10 | 2020-06-16 | 北京沃东天骏信息技术有限公司 | 区块链网络服务平台及其权限托管方法、存储介质 |
WO2020192743A1 (zh) * | 2019-03-28 | 2020-10-01 | 腾讯科技(深圳)有限公司 | 权限管理方法、权限验证方法和相关装置 |
CN111143880A (zh) * | 2019-12-27 | 2020-05-12 | 中电长城网际***应用有限公司 | 数据处理方法和装置、电子设备、可读介质 |
CN112187471A (zh) * | 2020-09-23 | 2021-01-05 | 上海万向区块链股份公司 | 基于区块链与智能合约的数据抄送方法、***及介质 |
CN111934890A (zh) * | 2020-10-13 | 2020-11-13 | 百度在线网络技术(北京)有限公司 | 密钥生成方法、签名和验签方法、装置、设备和介质 |
CN112532646A (zh) * | 2020-12-09 | 2021-03-19 | 杭州趣链科技有限公司 | 数据共享方法、***、装置、设备和存储介质 |
CN112287379A (zh) * | 2020-12-24 | 2021-01-29 | 北京百度网讯科技有限公司 | 业务数据使用方法、装置、设备、存储介质和程序产品 |
CN113792318A (zh) * | 2021-09-18 | 2021-12-14 | 上海数据交易中心有限公司 | 数据授权方法及装置、计算机可读存储介质、计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
US20230195940A1 (en) | 2023-06-22 |
US11734455B2 (en) | 2023-08-22 |
CN113935070B (zh) | 2022-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10341109B2 (en) | Controlling exposure of sensitive data and operation using process bound security tokens in cloud computing environment | |
US10237254B2 (en) | Conditional login promotion | |
US11048690B2 (en) | Contribution of multiparty data aggregation using distributed ledger technology | |
EP3100432B1 (en) | Virtual identity of a user based on disparate identity services | |
CN113935070B (zh) | 基于区块链的数据处理方法、装置、设备以及存储介质 | |
EP3114602A1 (en) | Method and apparatus for verifying processed data | |
EP3742300A1 (en) | Parameter based key derivation and resource access delegation | |
CN112738253B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
US20230037932A1 (en) | Data processing method and apparatus based on blockchain network, and computer device | |
US20220045849A1 (en) | Group service implementation method and device, equipment and storage medium | |
CN111064749B (zh) | 网络连接方法、设备及存储介质 | |
CN108769230A (zh) | 交易数据存储方法、装置、服务器及存储介质 | |
US10776481B2 (en) | Managing passwords | |
CN108650289A (zh) | 一种基于区块链的管理数据的方法和装置 | |
CN112231652A (zh) | 可信环境远程验证方法、装置、设备、***及介质 | |
JP2022525551A (ja) | データレコードのコピーの分散型台帳システムへの誤伝送の防止 | |
CN112422516B (zh) | 基于电力边缘计算的可信连接方法、装置和计算机设备 | |
JP2022549777A (ja) | ブロックチェーンのトランザクションへの要求のパーティション | |
CN110765210B (zh) | 基于区块链的鉴权方法、装置、设备和介质 | |
CN111339571B (zh) | 一种区块链密钥管理方法、装置、设备和存储介质 | |
CN113032817A (zh) | 基于区块链的数据对齐方法、装置、设备和介质 | |
KR20210027011A (ko) | 피어 노드, 피어 노드에서 수행되는 처리 방법 및 블록체인 플랫폼 시스템 | |
KR102531826B1 (ko) | 블록체인에 의해 난수를 획득하는 방법, 장치, 설비 및 매체 | |
CN114362969B (zh) | 一种基于区块链的数据验证方法、装置、设备及存储介质 | |
CN114172660B (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 |