一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于区块链系统交易的处理方法和装置与流程

2022-06-05 12:09:01 来源:中国专利 TAG:


1.本技术涉及区块链技术领域,具体而言,涉及一种基于区块链系统交易的处理方法和装置。


背景技术:

2.随着个人信息保护法的正式通过,对用户隐私信息的保护以及对用户信息的合法使用等工作已经刻不容缓。目前区块链系统对数据的隐私保护主要集中在数据上链时的哈希处理,然而交易双方的账户地址以及交易金额尚未实现真正的匿名化处理,这一定程度上存在泄漏交易双方隐私的隐患。虽然目前区块链系统已有针对交易账户地址及交易金额的隐私保护方案,但是该隐私保护方案仅支持一类账户模型,而在跨链交易时通常可能会涉及到多类账户模型(utxo、account等账户模型),因此存在隐私交易保护的兼容性比较差的问题。
3.针对相关技术中区块链系统上的隐私交易保护仅支持单一的账户模型,而在进行交易时通常会涉及到多类账户模型,导致隐私交易保护的兼容性比较差的问题,目前尚未提出有效的解决方案。


技术实现要素:

4.本技术的主要目的在于提供一种基于区块链系统交易的处理方法和装置,以解决相关技术中区块链系统上的隐私交易保护仅支持单一的账户模型,而在进行交易时通常会涉及到多类账户模型,导致隐私交易保护的兼容性比较差的问题。
5.为了实现上述目的,根据本技术的一个方面,提供了一种基于区块链系统交易的处理方法。该方法包括:通过交易发起方的客户端,获取交易请求,其中,所述交易请求中至少包括:交易类型,交易金额,交易发起方的地址信息,所述交易发起方的账户类型,交易接收方的地址信息和所述交易接收方的账户类型;通过区块链服务网关确定所述交易发起方的账户类型,其中,所述账户类型为以下之一:account账户模型和utxo账户模型;若所述交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对所述交易请求进行处理,得到目标交易请求,其中,所述隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;若所述交易发起方的账户类型为utxo账户模型,则通过所述交易发起方的客户端上的token机制调用所述隐匿api服务对所述交易请求进行处理,得到所述目标交易请求;依据所述交易发起方的账户类型,通过所述区块链节点对所述目标交易请求进行处理,以执行所述目标交易请求。
6.进一步地,在通过交易发起方的客户端,获取交易请求之前,所述方法还包括:调用预设模块进行参数初始化,得到公共参数;依据所述公共参数,调用密钥生成模块,得到证明密钥和验证公钥。
7.进一步地,若所述交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对所述交易请求进行处理,得到目标交易请求,包括:将所
述交易请求发送至区块链节点上的背书节点,所述背书节点对所述交易请求进行校验;若所述交易请求校验通过,则将所述交易请求发送至所述智能合约;通过所述智能合约调用所述隐匿api服务对所述交易请求进行处理,得到所述目标交易请求。
8.进一步地,在依据所述交易发起方的账户类型,通过所述区块链节点对所述目标交易请求进行处理,以执行所述目标交易请求之前,所述方法还包括:通过所述证明密钥生成所述交易请求的交易证明。
9.进一步地,若所述交易发起方的账户类型为account账户模型,依据所述交易发起方的账户类型,通过所述区块链节点对所述目标交易请求进行处理,以执行所述目标交易请求,包括:通过所述背书节点对所述目标交易请求进行背书,得到背书响应,并将所述背书响应和所述目标交易请求发送至所述交易发起方的客户端;通过所述交易发起方的客户端对所述背书响应,所述目标交易请求,交易证明和验证公钥进行封装处理,得到目标交易报文;通过所述交易发起方的客户端调用所述区块链节点上排序节点的广播接口,通过所述广播接口将所述目标交易报文发送至所述排序节点;通过所述排序节点将所述目标交易报文排序,得到目标区块一,并将所述目标区块一广播至区块链系统的所有区块链节点;通过所述区块链节点上的记账节点对所述目标区块一进行处理,得到所述目标交易请求的交易结果;依据所述交易证明和所述验证公钥,通过所述区块链节点上的记账节点对所述目标区块一和所述交易结果进行校验,得到校验结果;若所述校验结果为通过,则表示所述目标交易请求执行成功。
10.进一步地,若所述交易发起方的账户类型为utxo账户模型,依据所述交易发起方的账户类型,通过所述区块链节点对所述目标交易请求进行处理,以执行所述目标交易请求,包括:将所述目标交易请求发送至所述区块链节点上的证明节点;通过所述证明节点查询所述交易发起方的账户信息和所述交易接收方的账户信息,得到输入信息;通过所述证明节点执行所述目标交易请求,得到输出信息;将所述目标交易请求,所述输入信息,所述输出信息,交易证明和验证公钥作为目标数据信息;将所述目标数据信息反馈至所述交易发起方的客户端;通过所述交易发起方的客户端调用所述区块链节点上排序节点的广播接口,通过所述广播接口将所述目标数据信息发送至所述排序节点;所述排序节点将所述目标数据信息进行排序,得到目标区块二,并将所述目标区块二广播至区块链系统的所有区块链节点;依据所述交易证明和所述验证公钥,通过所述区块链节点上的记账节点对所述目标区块二进行校验,得到校验结果;若所述校验结果为通过,则表示所述目标交易请求执行成功。
11.进一步地,通过所述证明节点执行所述目标交易请求,得到输出信息,包括:通过所述隐匿api服务进行所述目标交易请求的隐私计算工作,得到所述输出信息。
12.进一步地,通过交易发起方的客户端,获取交易请求,包括:通过交易发起方的客户端调用预设函数,以获取所述交易发起方的地址信息和所述交易接收方的地址信息;将所述交易发起方的地址信息和所述交易接收方的地址信息作为所述交易请求中的内容。
13.为了实现上述目的,根据本技术的另一方面,提供了一种基于区块链系统交易的处理装置。该装置包括:获取单元,用于通过交易发起方的客户端,获取交易请求,其中,所述交易请求中至少包括:交易类型,交易金额,交易发起方的地址信息,所述交易发起方的账户类型,交易接收方的地址信息和所述交易接收方的账户类型;确定单元,用于通过区块
链服务网关确定所述交易发起方的账户类型,其中,所述账户类型为以下之一:account账户模型和utxo账户模型;第一调用单元,用于若所述交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对所述交易请求进行处理,得到目标交易请求,其中,所述隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;第二调用单元,用于若所述交易发起方的账户类型为utxo账户模型,则通过所述交易发起方的客户端上的token机制调用所述隐匿api服务对所述交易请求进行处理,得到所述目标交易请求;处理单元,用于依据所述交易发起方的账户类型,通过所述区块链节点对所述目标交易请求进行处理,以执行所述目标交易请求。
14.进一步地,所述装置还包括:第三调用单元,用于在通过交易发起方的客户端,获取交易请求之前,调用预设模块进行参数初始化,得到公共参数;第四调用单元,用于依据所述公共参数,调用密钥生成模块,得到证明密钥和验证公钥。
15.进一步地,所述第一调用单元包括:第一校验模块,用于将所述交易请求发送至区块链节点上的背书节点,所述背书节点对所述交易请求进行校验;第一发送模块,用于若所述交易请求校验通过,则将所述交易请求发送至所述智能合约;处理模块,用于通过所述智能合约调用所述隐匿api服务对所述交易请求进行处理,得到所述目标交易请求。
16.进一步地,所述装置还包括:构建单元,用于在依据所述交易发起方的账户类型,通过所述区块链节点对所述目标交易请求进行处理,以执行所述目标交易请求之前,通过所述证明密钥生成所述交易请求的交易证明。
17.进一步地,若所述交易发起方的账户类型为account账户模型,所述处理单元包括:背书模块,用于通过所述背书节点对所述目标交易请求进行背书,得到背书响应,并将所述背书响应和所述目标交易请求发送至所述交易发起方的客户端;第一处理模块,用于通过所述交易发起方的客户端对所述背书响应,所述目标交易请求,交易证明和验证公钥进行封装处理,得到目标交易报文;调用模块,用于通过所述交易发起方的客户端调用所述区块链节点上排序节点的广播接口,通过所述广播接口将所述目标交易报文发送至所述排序节点;第一广播模块,用于通过所述排序节点将所述目标交易报文排序,得到目标区块一,并将所述目标区块一广播至区块链系统的所有区块链节点;第二处理模块,用于通过所述区块链节点上的记账节点对所述目标区块一进行处理,得到所述目标交易请求的交易结果;第二校验模块,用于依据所述交易证明和所述验证公钥,通过所述区块链节点上的记账节点对所述目标区块一和所述交易结果进行校验,得到校验结果;第一判断模块,用于若所述校验结果为通过,则表示所述目标交易请求执行成功。
18.进一步地,若所述交易发起方的账户类型为utxo账户模型,所述处理单元还包括:第二发送模块,用于将所述目标交易请求发送至所述区块链节点上的证明节点;查询模块,用于通过所述证明节点查询所述交易发起方的账户信息和所述交易接收方的账户信息,得到输入信息;执行模块,用于通过所述证明节点执行所述目标交易请求,得到输出信息;第三处理模块,用于将所述目标交易请求,所述输入信息,所述输出信息,交易证明和验证公钥作为目标数据信息;反馈模块,用于将所述目标数据信息反馈至所述交易发起方的客户端;第三发送模块,用于通过所述交易发起方的客户端调用所述区块链节点上排序节点的广播接口,通过所述广播接口将所述目标数据信息发送至所述排序节点;第二广播模块,用于所述排序节点将所述目标数据信息进行排序,得到目标区块二,并将所述目标区块二广
播至区块链系统的所有区块链节点;第三校验模块,用于依据所述交易证明和所述验证公钥,通过所述区块链节点上的记账节点对所述目标区块二进行校验,得到校验结果;第二判断模块,用于若所述校验结果为通过,则表示所述目标交易请求执行成功。
19.进一步地,所述执行模块包括:计算子模块,用于通过所述隐匿api服务进行所述目标交易请求的隐私计算工作,得到所述输出信息。
20.进一步地,所述获取单元包括:获取模块,用于通过交易发起方的客户端调用预设函数,以获取所述交易发起方的地址信息和所述交易接收方的地址信息;第四处理模块,用于将所述交易发起方的地址信息和所述交易接收方的地址信息作为所述交易请求中的内容。
21.为了实现上述目的,根据本技术的一个方面,提供了一种处理器,处理器用于运行程序,其中,所述程序运行时执行上述任意一项所述的基于区块链系统交易的处理方法。
22.为了实现上述目的,根据本技术的一个方面,提供了一种电子设备,电子设备包括一个或多个处理器和存储器,存储器用于存储一个或多个处理器实现上述任意一项的基于区块链系统交易的处理方法。
23.通过本技术,采用以下步骤:通过交易发起方的客户端,获取交易请求;通过区块链服务网关确定交易发起方的账户类型;若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,其中,隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;若交易发起方的账户类型为utxo账户模型,则通过交易发起方的客户端上的token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求;依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,解决了相关技术中区块链系统上的隐私交易保护仅支持单一的账户模型,而在进行交易时通常会涉及到多类账户模型,导致隐私交易保护的兼容性比较差的问题。通过引入token机制实现对不同账户模型下的交易信息的保护,在交易发起方的账户类型为account账户模型,通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求;在交易发起方的账户类型为utxo账户模型,通过token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求,进而达到了提高隐私交易保护的兼容性的效果。
附图说明
24.构成本技术的一部分的附图用来提供对本技术的进一步理解,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
25.图1是根据本技术实施例提供的基于区块链系统交易的处理方法的流程图;
26.图2是根据本技术实施例提供的account账户模型的示意图;
27.图3是根据本技术实施例提供的utxo账户模型的示意图;
28.图4是根据本技术实施例提供的可选的交易发起方的账户类型为account账户模型时基于区块链系统交易的处理方法的流程图;
29.图5是根据本技术实施例提供的可选的交易发起方的账户类型为utxo账户模型时基于区块链系统交易的处理方法的流程图;
30.图6是根据本技术实施例提供的可选的基于区块链系统交易的处理方法的流程
图;
31.图7是根据本技术实施例提供的基于区块链系统交易的处理装置的示意图;
32.图8是根据本技术实施例提供的电子设备的示意图。
具体实施方式
33.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
34.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
35.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
36.需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
37.下面结合优选的实施步骤对本发明进行说明,图1是根据本技术实施例提供的基于区块链系统交易的处理方法的流程图,如图1所示,该方法包括如下步骤:
38.步骤s101,通过交易发起方的客户端,获取交易请求,其中,交易请求中至少包括:交易类型,交易金额,交易发起方的地址信息,交易发起方的账户类型,交易接收方的地址信息和交易接收方的账户类型。
39.具体地,通过交易发起方的客户端发起交易请求,在交易请求中需要包括交易的类型,交易金额,交易发起方的地址信息,交易发起方的账户类型,交易接收方的地址信息以及交易接收方的账户类型等信息。
40.步骤s102,通过区块链服务网关确定交易发起方的账户类型,其中,账户类型为以下之一:account账户模型和utxo账户模型。
41.具体地,区块链服务网关在发起交易请求转发时会识别出交易发起方的账户类型。账户类型分两种:account账户模型和utxo账户模型。account账户模型如图2所示,通常这种模型具备更好的编程性。utxo(unspent transaction output)账户模型如图3所示,最早的区块链系统中的比特币采用的就是这种账户类型。这种账户模型不汇总存储余额而是记录一笔笔交易结果,用户的账户余额是通过扫描所有交易结果的集合进行聚合计算得来的。
42.步骤s103,若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,其中,隐匿api服务至
少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务。
43.具体地,由于account账户模型对智能合约有更好的兼容性,因而可以直接通过智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求。隐匿api服务包括交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务。交易身份隐匿服务可以通过环签名接口实现,交易金额隐匿服务可以通过佩德森承诺接口实现,隐私交易合规可验服务可以通过防弹证明接口实现。用户可以根据具体的场景需求来灵活调度不同服务实现对交易请求的处理工作。
44.步骤s104,若交易发起方的账户类型为utxo账户模型,则通过交易发起方的客户端上的token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求。
45.具体地,交易发起方的账户类型为utxo账户模型,在交易发起方的客户端上部署token机制,通过token机制调用隐匿api服务对交易请求进行处理来得到目标交易请求。
46.步骤s105,依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求。
47.综上所述,通过引入token机制实现对不同账户模型下的交易信息的保护,在交易发起方的账户类型为account账户模型,通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求;在交易发起方的账户类型为utxo账户模型,通过token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求,提高了隐私交易保护的兼容性。
48.可选地,在本技术实施例提供的基于区块链系统交易的处理方法中,在通过交易发起方的客户端,获取交易请求之前,该方法还包括:调用预设模块进行参数初始化,得到公共参数;依据公共参数,调用密钥生成模块,得到证明密钥和验证公钥。
49.具体地,在进行交易请求之前,通过预设模块进行参数初始化,生成公共参数;然后根据公共参数,调用密钥生成模块,生成证明密钥和验证公钥。通过证明密钥和验证公钥验证该交易请求的合法性,保证该交易的成功执行。
50.可选地,在本技术实施例提供的基于区块链系统交易的处理方法中,若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,包括:将交易请求发送至区块链节点上的背书节点,背书节点对交易请求进行校验;若交易请求校验通过,则将交易请求发送至智能合约;通过智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求。
51.具体地,交易发起方的账户类型account账户模型时,交易的处理流程图如图4所示,首先通过交易发起方的客户端将交易请求发送至区块链节点上的背书节点,背书节点对交易请求进行校验,校验通过则将交易请求发送至智能合约,智能合约根据实际的需求调用隐匿api服务对交易请求进行处理,得到目标交易请求。通过背书节点对交易请求进行校验,保证了交易的合法性。
52.可选地,在本技术实施例提供的基于区块链系统交易的处理方法中,在依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求之前,该方法还包括:通过证明密钥生成交易请求的交易证明。
53.具体地,利用证明密钥生成该交易请求的交易证明,以便后续区块链节点上的记账节点进行校验工作。
54.可选地,在本技术实施例提供的基于区块链系统交易的处理方法中,若交易发起方的账户类型为account账户模型,依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,包括:通过背书节点对目标交易请求进行背书,得到背书响应,并将背书响应和目标交易请求发送至交易发起方的客户端;通过交易发起方的客户端对背书响应,目标交易请求,交易证明和验证公钥进行封装处理,得到目标交易报文;通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标交易报文发送至排序节点;通过排序节点将目标交易报文排序,得到目标区块一,并将目标区块一广播至区块链系统的所有区块链节点;通过区块链节点上的记账节点对目标区块一进行处理,得到目标交易请求的交易结果;依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块一和交易结果进行校验,得到校验结果;若校验结果为通过,则表示目标交易请求执行成功。
55.具体地,如图4所示,交易发起方的账户类型是account账户模型,得到目标交易请求后,背书节点会对目标交易请求进行背书工作,并将背书响应返回至交易发起方的客户端,交易发起方的客户端接收到背书响应后,将背书响应,目标交易请求,交易证明和验证公钥进行封装处理,得到目标交易报文。交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标交易报文发送至排序节点,排序节点对目标交易报文进行排序处理,得到目标区块一,并将目标区块一广播至该区块链系统的所有区块链节点上以实现共识工作。然后记账节点对目标区块一进行处理以得到此次交易请求的交易结果,记账节点对目标区块一和交易结果进行校验,得到校验结果;如果校验结果为通过,那么目标交易请求执行成功。如果校验结果失败,那么目标交易请求失败。通过上述过程,保证了区块链系统上交易的安全性和合法性。
56.可选地,在本技术实施例提供的基于区块链系统交易的处理方法中,若交易发起方的账户类型为utxo账户模型,依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,包括:将目标交易请求发送至区块链节点上的证明节点;通过证明节点查询交易发起方的账户信息和交易接收方的账户信息,得到输入信息;通过证明节点执行目标交易请求,得到输出信息;将目标交易请求,输入信息,输出信息,交易证明和验证公钥作为目标数据信息;将目标数据信息反馈至交易发起方的客户端;通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标数据信息发送至排序节点;排序节点将目标数据信息进行排序,得到目标区块二,并将目标区块二广播至区块链系统的所有区块链节点;依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块二进行校验,得到校验结果;若校验结果为通过,则表示目标交易请求执行成功。
57.具体地,如图5所示,交易发起方的账户类型是utxo账户模型时,交易发起方的客户端发起交易请求后,通过token机制按需调用隐匿api服务对交易请求进行处理,得到目标交易请求。将目标交易请求发送至区块链节点上的证明节点,证明节点先查询交易发起方的账户信息(也就是余额信息,余额信息采用密文方式表示)和交易接收方的账户信息,得到输入信息,证明节点执行目标交易请求,进行隐私交易计算得到输出信息。例如,账户a向账户b转账xx元,那么证明节点先查询得到账户a和账户b的余额信息(也就是上述输入信息),然后进行隐私计算,计算转账后的账户a和账户b的余额信息(也就是上述输出信息)。
之后将目标交易请求,输入信息,输出信息,交易证明和验证公钥作为目标数据信息,并将目标数据信息反馈至交易发起方的客户端。这里是为了通过发起方的客户端调用区块链节点上排序节点的广播接口以便将目标数据信息广播出去。通过广播接口将目标数据信息发送至排序节点,排序节点将目标数据信息进行排序处理,得到目标区块二,将目标区块二广播至区块链系统的所有区块链节点以实现共识工作。最后依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块二进行校验,得到校验结果;若校验结果为通过,那么该交易请求执行成功。通过上述过程,保证了区块链系统上交易的安全性和合法性。
58.可选地,在本技术实施例提供的基于区块链系统交易的处理方法中,通过证明节点执行目标交易请求,得到输出信息,包括:通过隐匿api服务进行目标交易请求的隐私计算工作,得到输出信息。
59.具体地,证明节点执行目标交易请求,通过隐匿api服务进行隐私计算工作以得到输出信息。通过隐私计算保证数据的隐私性和安全性。
60.可选地,在本技术实施例提供的基于区块链系统交易的处理方法中,通过交易发起方的客户端,获取交易请求,包括:通过交易发起方的客户端调用预设函数,以获取交易发起方的地址信息和交易接收方的地址信息;将交易发起方的地址信息和交易接收方的地址信息作为交易请求中的内容。
61.具体地,通过预设函数生成交易发起方的地址信息和交易接收方的地址信息。
62.本技术实施例提供的基于区块链系统交易的处理方法,通过交易发起方的客户端,获取交易请求;通过区块链服务网关确定交易发起方的账户类型;若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,其中,隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;若交易发起方的账户类型为utxo账户模型,则通过交易发起方的客户端上的token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求;依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,解决了相关技术中区块链系统上的隐私交易保护仅支持单一的账户模型,而在进行交易时通常会涉及到多类账户模型,导致隐私交易保护的兼容性比较差的问题。通过引入token机制实现对不同账户模型下的交易信息的保护,在交易发起方的账户类型为account账户模型,通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求;在交易发起方的账户类型为utxo账户模型,通过token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求,进而达到了提高隐私交易保护的兼容性的效果。
63.如图6所示,根据本技术实施例提供的可选的基于区块链系统交易的处理方法的流程图。通过预设模块得到公共参数,通过公共参数得到证明密钥和验证公钥。交易发起方的客户端发送交易请求,区块链服务网关确定交易发起方的账户类型,如果账户类型为account账户模型,通过区块链节点上部署的智能合约调用隐匿api服务对交易请求进行处理得到目标交易请求;如果账户类型为utxo账户模型,则交易发起方的客户端通过token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求。通过证明密钥生成交易请求的交易证明。然后在区块链节点进行交易背书,交易广播以及交易验证,以执行该交易请求。
64.需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
65.本技术实施例还提供了一种基于区块链系统交易的处理装置,需要说明的是,本技术实施例的基于区块链系统交易的处理装置可以用于执行本技术实施例所提供的用于基于区块链系统交易的处理方法。以下对本技术实施例提供的基于区块链系统交易的处理装置进行介绍。
66.图7是根据本技术实施例的基于区块链系统交易的处理装置的示意图。如图7所示,该装置包括:获取单元701,确定单元702,第一调用单元703,第二调用单元704和处理单元705。
67.获取单元701,用于通过交易发起方的客户端,获取交易请求,其中,交易请求中至少包括:交易类型,交易金额,交易发起方的地址信息,交易发起方的账户类型,交易接收方的地址信息和交易接收方的账户类型;
68.确定单元702,用于通过区块链服务网关确定交易发起方的账户类型,其中,账户类型为以下之一:account账户模型和utxo账户模型;
69.第一调用单元703,用于若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,其中,隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;
70.第二调用单元704,用于若交易发起方的账户类型为utxo账户模型,则通过交易发起方的客户端上的token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求;
71.处理单元705,用于依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求。
72.本技术实施例提供的基于区块链系统交易的处理装置,通过获取单元701通过交易发起方的客户端,获取交易请求,其中,交易请求中至少包括:交易类型,交易金额,交易发起方的地址信息,交易发起方的账户类型,交易接收方的地址信息和交易接收方的账户类型;确定单元702通过区块链服务网关确定交易发起方的账户类型,其中,账户类型为以下之一:account账户模型和utxo账户模型;第一调用单元703若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,其中,隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;第二调用单元704若交易发起方的账户类型为utxo账户模型,则通过交易发起方的客户端上的token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求;处理单元705依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,解决了相关技术中区块链系统上的隐私交易保护仅支持单一的账户模型,而在进行交易时通常会涉及到多类账户模型,导致隐私交易保护的兼容性比较差的问题。通过引入token机制实现对不同账户模型下的交易信息的保护,在交易发起方的账户类型为account账户模型,通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求;在交易发起方的账户类型为utxo账户模型,通过token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求,进而达到了提高隐私交易保护的兼容性的效果。
73.可选地,在本技术实施例提供的基于区块链系统交易的处理装置中,该装置还包括:第三调用单元,用于在通过交易发起方的客户端,获取交易请求之前,调用预设模块进行参数初始化,得到公共参数;第四调用单元,用于依据公共参数,调用密钥生成模块,得到证明密钥和验证公钥。
74.可选地,在本技术实施例提供的基于区块链系统交易的处理装置中,第一调用单元703包括:第一校验模块,用于将交易请求发送至区块链节点上的背书节点,背书节点对交易请求进行校验;第一发送模块,用于若交易请求校验通过,则将交易请求发送至智能合约;处理模块,用于通过智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求。
75.可选地,在本技术实施例提供的基于区块链系统交易的处理装置中,该装置还包括:构建单元,用于在依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求之前,通过证明密钥生成交易请求的交易证明。
76.可选地,在本技术实施例提供的基于区块链系统交易的处理装置中,若交易发起方的账户类型为account账户模型,处理单元705包括:背书模块,用于通过背书节点对目标交易请求进行背书,得到背书响应,并将背书响应和目标交易请求发送至交易发起方的客户端;第一处理模块,用于通过交易发起方的客户端对背书响应,目标交易请求,交易证明和验证公钥进行封装处理,得到目标交易报文;调用模块,用于通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标交易报文发送至排序节点;第一广播模块,用于通过排序节点将目标交易报文排序,得到目标区块一,并将目标区块一广播至区块链系统的所有区块链节点;第二处理模块,用于通过区块链节点上的记账节点对目标区块一进行处理,得到目标交易请求的交易结果;第二校验模块,用于依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块一和交易结果进行校验,得到校验结果;第一判断模块,用于若校验结果为通过,则表示目标交易请求执行成功。
77.可选地,在本技术实施例提供的基于区块链系统交易的处理装置中,若交易发起方的账户类型为utxo账户模型,处理单元705还包括:第二发送模块,用于将目标交易请求发送至区块链节点上的证明节点;查询模块,用于通过证明节点查询交易发起方的账户信息和交易接收方的账户信息,得到输入信息;执行模块,用于通过证明节点执行目标交易请求,得到输出信息;第三处理模块,用于将目标交易请求,输入信息,输出信息,交易证明和验证公钥作为目标数据信息;反馈模块,用于将目标数据信息反馈至交易发起方的客户端;第三发送模块,用于通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标数据信息发送至排序节点;第二广播模块,用于排序节点将目标数据信息进行排序,得到目标区块二,并将目标区块二广播至区块链系统的所有区块链节点;第三校验模块,用于依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块二进行校验,得到校验结果;第二判断模块,用于若校验结果为通过,则表示目标交易请求执行成功。
78.可选地,在本技术实施例提供的基于区块链系统交易的处理装置中,执行模块包括:计算子模块,用于通过隐匿api服务进行目标交易请求的隐私计算工作,得到输出信息。
79.可选地,在本技术实施例提供的基于区块链系统交易的处理装置中,获取模块,用于通过交易发起方的客户端调用预设函数,以获取交易发起方的地址信息和交易接收方的
地址信息;第四处理模块,用于将交易发起方的地址信息和交易接收方的地址信息作为交易请求中的内容。
80.所述基于区块链系统交易的处理装置包括处理器和存储器,上述获取单元701,确定单元702,第一调用单元703,第二调用单元704和处理单元705等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
81.处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现对区块链系统中交易的处理工作。
82.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。
83.本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述基于区块链系统交易的处理方法。
84.如图8所示,本发明实施例提供了一种电子设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:通过交易发起方的客户端,获取交易请求,其中,交易请求中至少包括:交易类型,交易金额,交易发起方的地址信息,交易发起方的账户类型,交易接收方的地址信息和交易接收方的账户类型;通过区块链服务网关确定交易发起方的账户类型,其中,账户类型为以下之一:account账户模型和utxo账户模型;若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,其中,隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;若交易发起方的账户类型为utxo账户模型,则通过交易发起方的客户端上的token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求;依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求。
85.可选地,在通过交易发起方的客户端,获取交易请求之前,该方法还包括:调用预设模块进行参数初始化,得到公共参数;依据公共参数,调用密钥生成模块,得到证明密钥和验证公钥。
86.可选地,若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,包括:将交易请求发送至区块链节点上的背书节点,背书节点对交易请求进行校验;若交易请求校验通过,则将交易请求发送至智能合约;通过智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求。
87.可选地,在依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求之前,该方法还包括:通过证明密钥生成交易请求的交易证明。
88.可选地,若交易发起方的账户类型为account账户模型,依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,包括:通过背书节点对目标交易请求进行背书,得到背书响应,并将背书响应和目标交易请求发送至交易发起方的客户端;通过交易发起方的客户端对背书响应,目标交易请求,交易证明和验证公钥进行封装处理,得到目标交易报文;通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标交易报文发送至排序节点;通过排序节点将目标交易报文
排序,得到目标区块一,并将目标区块一广播至区块链系统的所有区块链节点;通过区块链节点上的记账节点对目标区块一进行处理,得到目标交易请求的交易结果;依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块一和交易结果进行校验,得到校验结果;若校验结果为通过,则表示目标交易请求执行成功。
89.可选地,若交易发起方的账户类型为utxo账户模型,依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,包括:将目标交易请求发送至区块链节点上的证明节点;通过证明节点查询交易发起方的账户信息和交易接收方的账户信息,得到输入信息;通过证明节点执行目标交易请求,得到输出信息;将目标交易请求,输入信息,输出信息,交易证明和验证公钥作为目标数据信息;将目标数据信息反馈至交易发起方的客户端;通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标数据信息发送至排序节点;排序节点将目标数据信息进行排序,得到目标区块二,并将目标区块二广播至区块链系统的所有区块链节点;依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块二进行校验,得到校验结果;若校验结果为通过,则表示目标交易请求执行成功。
90.可选地,通过证明节点执行目标交易请求,得到输出信息,包括:通过隐匿api服务进行目标交易请求的隐私计算工作,得到输出信息。
91.可选地,通过交易发起方的客户端,获取交易请求,包括:通过交易发起方的客户端调用预设函数,以获取交易发起方的地址信息和交易接收方的地址信息;将交易发起方的地址信息和交易接收方的地址信息作为交易请求中的内容。本文中的设备可以是服务器、pc、pad、手机等。
92.本技术还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:通过交易发起方的客户端,获取交易请求,其中,交易请求中至少包括:交易类型,交易金额,交易发起方的地址信息,交易发起方的账户类型,交易接收方的地址信息和交易接收方的账户类型;通过区块链服务网关确定交易发起方的账户类型,其中,账户类型为以下之一:account账户模型和utxo账户模型;若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,其中,隐匿api服务至少包括:交易身份隐匿服务,交易金额隐匿服务和隐私交易合规可验服务;若交易发起方的账户类型为utxo账户模型,则通过交易发起方的客户端上的token机制调用隐匿api服务对交易请求进行处理,得到目标交易请求;依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求。
93.可选地,在通过交易发起方的客户端,获取交易请求之前,该方法还包括:调用预设模块进行参数初始化,得到公共参数;依据公共参数,调用密钥生成模块,得到证明密钥和验证公钥。
94.可选地,若交易发起方的账户类型为account账户模型,则通过区块链节点上的智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求,包括:将交易请求发送至区块链节点上的背书节点,背书节点对交易请求进行校验;若交易请求校验通过,则将交易请求发送至智能合约;通过智能合约调用隐匿api服务对交易请求进行处理,得到目标交易请求。
95.可选地,在依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求之前,该方法还包括:通过证明密钥生成交易请求的交易证明。
96.可选地,若交易发起方的账户类型为account账户模型,依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,包括:通过背书节点对目标交易请求进行背书,得到背书响应,并将背书响应和目标交易请求发送至交易发起方的客户端;通过交易发起方的客户端对背书响应,目标交易请求,交易证明和验证公钥进行封装处理,得到目标交易报文;通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标交易报文发送至排序节点;通过排序节点将目标交易报文排序,得到目标区块一,并将目标区块一广播至区块链系统的所有区块链节点;通过区块链节点上的记账节点对目标区块一进行处理,得到目标交易请求的交易结果;依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块一和交易结果进行校验,得到校验结果;若校验结果为通过,则表示目标交易请求执行成功。
97.可选地,若交易发起方的账户类型为utxo账户模型,依据交易发起方的账户类型,通过区块链节点对目标交易请求进行处理,以执行目标交易请求,包括:将目标交易请求发送至区块链节点上的证明节点;通过证明节点查询交易发起方的账户信息和交易接收方的账户信息,得到输入信息;通过证明节点执行目标交易请求,得到输出信息;将目标交易请求,输入信息,输出信息,交易证明和验证公钥作为目标数据信息;将目标数据信息反馈至交易发起方的客户端;通过交易发起方的客户端调用区块链节点上排序节点的广播接口,通过广播接口将目标数据信息发送至排序节点;排序节点将目标数据信息进行排序,得到目标区块二,并将目标区块二广播至区块链系统的所有区块链节点;依据交易证明和验证公钥,通过区块链节点上的记账节点对目标区块二进行校验,得到校验结果;若校验结果为通过,则表示目标交易请求执行成功。
98.可选地,通过证明节点执行目标交易请求,得到输出信息,包括:通过隐匿api服务进行目标交易请求的隐私计算工作,得到输出信息。
99.可选地,通过交易发起方的客户端,获取交易请求,包括:通过交易发起方的客户端调用预设函数,以获取交易发起方的地址信息和交易接收方的地址信息;将交易发起方的地址信息和交易接收方的地址信息作为交易请求中的内容。
100.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
101.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
102.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
103.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
104.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
105.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
106.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
107.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
108.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
109.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献