System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 交易的执行方法、装置、计算机可读介质及电子设备制造方法及图纸_技高网

交易的执行方法、装置、计算机可读介质及电子设备制造方法及图纸

技术编号:40482474 阅读:26 留言:0更新日期:2024-02-26 19:16
本申请的实施例提供了一种交易的执行方法、装置、计算机可读介质及电子设备,该方法由区块链网络中的区块链主节点执行,该方法包括:在获取到待执行交易后,在数据中转方创建新交易,并将待执行交易的交易内容存入新交易中,以便区块链主节点对应的第一交易执行方在监测到数据中转方中产生了与区块链主节点对应的新交易之后,根据新交易的交易内容调用目标智能合约执行所述新交易,并将新交易的执行结果存入数据中转方;交易内容包括与目标智能合约相关的信息;当监测到数据中转方产生了所述新交易的执行结果,获取新交易的执行结果。本申请实施例可以简化不同语言的交易执行方与区块链节点的交互过程,并能够降低系统实施的难度和维护成本。

【技术实现步骤摘要】

本申请涉及区块链,具体而言,涉及一种交易的执行方法、装置、计算机可读介质及电子设备


技术介绍

1、目前,区块链节点通常使用交易执行方来执行交易。

2、然而,对于每一种语言的交易执行方,都需要设计一套交互的协议和处理的代码用来和区块链节点进行互通,导致了开发、设计和管理工作相对繁琐,增加了系统实施的难度和维护成本。


技术实现思路

1、本申请的实施例提供了一种交易的执行方法、装置、计算机可读介质及电子设备,进而至少在一定程度上可以简化不同语言的交易执行方与区块链节点的交互过程,并能够降低系统实施的难度和维护成本。

2、本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。

3、根据本申请实施例的一个方面,提供了一种交易的执行方法,该方法由区块链网络中的区块链主节点执行,该方法包括:在获取到待执行交易后,在数据中转方创建新交易,并将所述待执行交易的交易内容存入所述新交易中,以便所述区块链主节点对应的第一交易执行方在监测到所述数据中转方中产生了与所述区块链主节点对应的所述新交易之后,根据所述新交易的交易内容调用目标智能合约执行所述新交易,并将所述新交易的执行结果存入所述数据中转方;所述交易内容包括与所述目标智能合约相关的信息;当监测到所述数据中转方产生了所述新交易的执行结果,获取所述新交易的执行结果。

4、根据本申请实施例的一个方面,提供了一种交易的执行装置,所述装置应用于区块链网络中的区块链主节点,所述装置包括:创建和保存单元,用于在获取到待执行交易后,在数据中转方创建新交易,并将所述待执行交易的交易内容存入所述新交易中,以便所述区块链主节点对应的第一交易执行方在监测到所述数据中转方中产生了与所述区块链主节点对应的所述新交易之后,根据所述新交易的交易内容调用目标智能合约执行所述新交易,并将所述新交易的执行结果存入所述数据中转方;所述交易内容包括与所述目标智能合约相关的信息;获取单元,用于当监测到所述数据中转方产生了所述新交易的执行结果,获取所述新交易的执行结果。

5、在本申请的一些实施例中,基于前述方案,所述与所述目标智能合约相关的信息包括所述目标智能合约的名称、所述目标智能合约对应的方法名称和参数,所述第一交易执行方在监测到所述数据中转方中产生了与所述区块链主节点对应的所述新交易之后,通过如下方式根据所述新交易的交易内容调用目标智能合约执行所述新交易,并将所述新交易的执行结果存入所述数据中转方:启动用于执行所述新交易的合约进程;根据所述目标智能合约对应的方法名称确定所述目标智能合约对应的若干合约语句;通过所述合约进程根据所述目标智能合约对应的参数逐一执行所述目标智能合约对应的若干合约语句;若当前合约语句为需要与区块链交互的语句,则生成交互请求创建指令,并将所述交互请求创建指令发送至数据中转方,以指示在所述数据中转方中创建新交互请求;当监测到所述数据中转方中产生了所述新交互请求的应答结果,根据所述应答结果执行所述当前合约语句,其中,所述新交互请求的应答结果是所述区块链主节点在监测到所述数据中转方创建的所述新交互请求之后,由所述区块链主节点通过处理所述新交互请求生成并存入所述数据中转方的;若当前合约语句为无需与外部交互的普通执行语句,则通过所述合约进程执行所述当前合约语句;若当前合约语句为用于返回结果的语句,则在得到所述新交易的执行结果之后,通过所述合约进程执行所述当前合约语句将所述新交易的执行结果存入所述数据中转方。

6、在本申请的一些实施例中,基于前述方案,所述装置还包括待执行交易获取单元及验证和共识单元;在数据中转方创建新交易之前,所述待执行交易获取单元用于:在获取到交易后,将所述交易放入交易池中;生成新区块创建指令,并将所述新区块创建指令发送至数据中转方,以指示在所述数据中转方中创建新区块;从所述交易池中获取用于产生新区块的若干交易,作为待执行交易;所述创建和保存单元配置为:在获取到待执行交易后,在数据中转方创建与所述新区块关联的新交易,并将所述待执行交易的交易内容存入所述新交易中,以便所述区块链主节点对应的第一交易执行方在监测到所述数据中转方中产生了与所述区块链主节点对应的所述新区块中的所述新交易之后,根据所述新交易的交易内容调用目标智能合约执行所述新交易,并将所述新交易的执行结果存入所述数据中转方;在获取所述新交易的执行结果之后,所述验证和共识单元用于:当获取到与所述新区块关联的所有新交易的执行结果,根据各新交易和各新交易的执行结果生成待验证区块,并将所述待验证区块发送至区块链网络中与所述区块链主节点对应的区块链从节点中,由所述区块链从节点基于由与所述区块链从节点对应的第二交易执行方产生的各新交易的验证执行结果对所述待验证区块进行验证,并将验证结果发送至其他区块链节点;若根据各所述区块链从节点对所述待验证区块的验证结果确定所述区块链网络对所述待验证区块的验证达成共识,则将所述待验证区块添加至所述区块链网络所维护的区块链中。

7、在本申请的一些实施例中,基于前述方案,所述第二交易执行方通过如下方式产生各新交易的验证执行结果:从所述区块链从节点获取所述待验证区块中的新交易;启动用于执行所述新交易的新合约进程;根据所述新交易中目标智能合约对应的方法名称确定所述目标智能合约对应的若干合约语句;通过所述新合约进程根据所述新交易中所述目标智能合约对应的参数逐一执行所述目标智能合约对应的若干合约语句;若当前合约语句为需要与区块链交互的语句,则生成交互请求创建指令,并将所述交互请求创建指令发送至所述数据中转方,以指示在所述数据中转方中创建新交互请求;从所述数据中转方中获取所述新交互请求的应答结果,并根据所述应答结果执行所述当前合约语句,其中,所述新交互请求的应答结果是所述数据中转方在接收到所述交互请求创建指令之后,根据已存在根据所述交互请求创建指令创建的交互请求而直接将所述交互请求的应答结果作为新交互请求的应答结果返回给所述第二交易执行方的;若当前合约语句为无需与外部交互的普通执行语句,则通过所述新合约进程执行所述当前合约语句;若当前合约语句为用于返回结果的语句,则在得到所述新交易的验证执行结果之后,通过所述新合约进程执行所述当前合约语句将所述验证执行结果存入所述数据中转方。

8、在本申请的一些实施例中,基于前述方案,所述数据中转方为包括多个数据库的分布式数据库,所述分布式数据库中不同数据库之间自动同步数据。

9、在本申请的一些实施例中,基于前述方案,所述区块链从节点是通过专属的私有数据中转方与所述第二交易执行方交互的,所述私有数据中转方与所述数据中转方之间不进行数据同步。

10、在本申请的一些实施例中,基于前述方案,所述装置还包括请求验证单元;在将所述交易放入交易池中之前,所述请求验证单元用于:在所述区块链主节点接收到客户端发来的携带有交易的交易请求之后,对所述交易请求进行签名验证和权限验证,其中,将所述交易放入交易池中是在所述交易请求通过了所述签名验证和所述权限验证的本文档来自技高网...

【技术保护点】

1.一种交易的执行方法,其特征在于,所述方法由区块链网络中的区块链主节点执行,所述方法包括:

2.根据权利要求1所述的交易的执行方法,其特征在于,所述与所述目标智能合约相关的信息包括所述目标智能合约的名称、所述目标智能合约对应的方法名称和参数,所述第一交易执行方在监测到所述数据中转方中产生了与所述区块链主节点对应的所述新交易之后,通过如下方式根据所述新交易的交易内容调用目标智能合约执行所述新交易,并将所述新交易的执行结果存入所述数据中转方:

3.根据权利要求1所述的交易的执行方法,其特征在于,在数据中转方创建新交易之前,所述方法还包括:

4.根据权利要求3所述的交易的执行方法,其特征在于,所述第二交易执行方通过如下方式产生各新交易的验证执行结果:

5.根据权利要求1-4任意一项所述的交易的执行方法,其特征在于,所述数据中转方为包括多个数据库的分布式数据库,所述分布式数据库中不同数据库之间自动同步数据。

6.根据权利要求3所述的交易的执行方法,其特征在于,所述区块链从节点是通过专属的私有数据中转方与所述第二交易执行方交互的,所述私有数据中转方与所述数据中转方之间不进行数据同步。

7.根据权利要求3所述的交易的执行方法,其特征在于,在将所述交易放入交易池中之前,所述方法还包括:

8.根据权利要求3所述的交易的执行方法,其特征在于,所述在获取到待执行交易后,在数据中转方创建与所述新区块关联的新交易,并将所述待执行交易的交易内容存入所述新交易中,包括:

9.根据权利要求3所述的交易的执行方法,其特征在于,在将验证结果发送至其他区块链节点之后,所述方法还包括:

10.一种交易的执行装置,其特征在于,所述装置应用于区块链网络中的区块链主节点,所述装置包括:

11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9中任一项所述的交易的执行方法。

12.一种电子设备,其特征在于,包括:

13.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令,使得所述计算机设备执行如权利要求1至9中任一项所述的交易的执行方法。

...

【技术特征摘要】

1.一种交易的执行方法,其特征在于,所述方法由区块链网络中的区块链主节点执行,所述方法包括:

2.根据权利要求1所述的交易的执行方法,其特征在于,所述与所述目标智能合约相关的信息包括所述目标智能合约的名称、所述目标智能合约对应的方法名称和参数,所述第一交易执行方在监测到所述数据中转方中产生了与所述区块链主节点对应的所述新交易之后,通过如下方式根据所述新交易的交易内容调用目标智能合约执行所述新交易,并将所述新交易的执行结果存入所述数据中转方:

3.根据权利要求1所述的交易的执行方法,其特征在于,在数据中转方创建新交易之前,所述方法还包括:

4.根据权利要求3所述的交易的执行方法,其特征在于,所述第二交易执行方通过如下方式产生各新交易的验证执行结果:

5.根据权利要求1-4任意一项所述的交易的执行方法,其特征在于,所述数据中转方为包括多个数据库的分布式数据库,所述分布式数据库中不同数据库之间自动同步数据。

6.根据权利要求3所述的交易的执行方法,其特征在于,所述区块链从节点是通过专属的私有数据中转方与所述第二交易执行方交互的,所述私有数据中转方与所述数据中转方之间...

【专利技术属性】
技术研发人员:卢光宏丁有振
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1