CN113312427A - 区块链调用方法、装置、管理服务平台及存储介质 - Google Patents
区块链调用方法、装置、管理服务平台及存储介质 Download PDFInfo
- Publication number
- CN113312427A CN113312427A CN202110568235.0A CN202110568235A CN113312427A CN 113312427 A CN113312427 A CN 113312427A CN 202110568235 A CN202110568235 A CN 202110568235A CN 113312427 A CN113312427 A CN 113312427A
- Authority
- CN
- China
- Prior art keywords
- block chain
- target
- interface
- calling
- service
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Abstract
本发明提供一种区块链调用方法、装置、管理服务平台及存储介质,涉及数据处理技术领域。包括:接收第一客户端发送的第一调用请求;其中,第一调用请求包括:区块链标识和业务参数;根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口;采用目标调用接口,调用目标区块链,以使得目标区块链基于业务参数进行业务处理,得到业务处理结果;获取目标区块链返回的业务处理结果。根据业务参数确定区块链标识对应的目标区块链的目标调用接口;采用目标调用接口可以调用目标区块链,继而获取到目标区块链返回的业务处理结果。实现了对于不同区块链通用化调用,使得管理服务平台的调用服务更加简便。
Description
技术领域
本发明涉及数据处理技术领域,具体而言,涉及一种区块链调用方法、装置、管理服务平台及存储介质。
背景技术
区块链技术,也被称之为分布式账本技术,区块链技术具有去中心化、公开透明、每台计算设备可以参与数据库记录、并且各计算设备之间可以快速的进行数据同步的特性,使得区块链技术已在众多的领域中广泛的进行应用,对于区块链的管理也变得越来越重要。
相关技术中,区块链管理平台不同类型的区块链,采用调用服务层根据待调用的链类型以及链地址,调用不同类型链的sdk(Software Development Kit,软件开发工具包)。
但是,相关技术中,不同类型的区块链的调用均基于链类型以及链地址进行调用,出现区块链管理平台调用服务复杂、冗余的情况。
发明内容
本发明的目的在于,针对上述现有技术中的不足,提供一种区块链调用方法、装置、管理服务平台及存储介质,以便解决相关技术中,不同类型的区块链的调用均基于链类型以及链地址进行调用,出现区块链管理平台调用服务复杂、冗余的情况的问题。
为实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种区块链调用方法,包括:
接收第一客户端发送的第一调用请求;其中,所述第一调用请求包括:区块链标识和业务参数;
根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口;
采用所述目标调用接口,调用所述目标区块链,以使得所述目标区块链基于所述业务参数进行业务处理,得到业务处理结果;
获取所述目标区块链返回的所述业务处理结果。
可选的,所述根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口,包括:
根据所述业务参数的类型,从所述目标区块链的调用接口中,确定所述业务参数的类型对应的调用接口为所述目标调用接口;所述业务参数的类型为区块链交易类型或者链查询类型。
可选的,所述采用所述目标调用接口,调用所述目标区块链之前,所述方法还包括:
若所述业务参数的类型为区块链交易类型,根据所述业务参数,组装所述目标调用接口的接口参数。
可选的,所述采用所述目标调用接口,调用所述目标区块链之前,所述方法还包括:
若所述业务参数的类型为链查询类型,则根据所述链查询类型对应的预设参数,确定所述目标调用接口的接口参数。
可选的,所述采用所述目标调用接口,调用所述目标区块链之前,所述方法还包括:
根据所述目标区块链的节点信息,从所述目标区块链上确定目标节点;
所述采用所述目标调用接口,调用所述目标区块链,包括:
根据所述目标调用接口,向所述目标节点发送第二调用请求,所述第二调用请求包括:所述目标调用接口的接口参数和所述目标区块链对应的调用类型。
可选的,所述根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口之前,所述方法还包括:
根据所述区块链标识,确定所述目标区块链的驱动接口;
所述根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口,包括:
根据所述业务参数和所述目标区块链的驱动接口,调用所述目标区块链的驱动层,以使得所述目标区块链的驱动层根据所述业务参数,从所述目标区块链的调用接口中,确定所述目标调用接口。
可选的,所述方法还包括:
接收第二客户端发送的区块链更新请求,所述区块链更新请求包括:第二区块链标识;
根据所述第二区块链标识,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口。
可选的,所述根据所述第二区块链标识,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口,包括:
根据所述第二区块链标识,确定所述第二区块链标识对应的节点信息;
根据所述第二区块链标识对应的节点信息,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口。
可选的,所述方法还包括:
接收第三客户端发送的区块链删除请求,所述区块链删除请求包括:第三区块链标识;
根据所述第三区块链标识,删除所述第三区块链标识对应的所述第三区块链的驱动接口;
可选的,所述根据所述第三区块链标识,删除所述第三区块链标识对应的所述第三区块链的驱动,包括:
删除所述第三区块链的驱动接口对应的节点信息;
移除所述第三区块链的驱动接口。
可选的,所述获取所述目标区块链返回的所述业务处理结果之后,所述方法包括:
对所述业务处理结果进行解析,得到解析后的结果;
向所述第一客户端发送所述解析后的结果。
第二方面,本发明实施例还提供了一种区块链调用装置,包括:
接收模块,用于接收第一客户端发送的第一调用请求;其中,所述第一调用请求包括:区块链标识和业务参数;
确定模块,用于根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口;
调用模块,用于采用所述目标调用接口,调用所述目标区块链,以使得所述目标区块链基于所述业务参数进行业务处理,得到业务处理结果;
获取模块,用于获取所述目标区块链返回的所述业务处理结果。
可选的,所述确定模块,还用于根据所述业务参数的类型,从所述目标区块链的调用接口中,确定所述业务参数的类型对应的调用接口为所述目标调用接口;所述业务参数的类型为区块链交易类型或者链查询类型。
可选的,所述装置还包括:
组装模块,用于若所述业务参数的类型为区块链交易类型,根据所述业务参数,组装所述目标调用接口的接口参数。
可选的,所述装置还包括:
第一确定模块,用于若所述业务参数的类型为链查询类型,则根据所述链查询类型对应的预设参数,确定所述目标调用接口的接口参数。
可选的,所述装置还包括:
第二确定模块,用于根据所述目标区块链的节点信息,从所述目标区块链上确定目标节点;
所述调用模块,还用于根据所述目标调用接口,向所述目标节点发送第二调用请求,所述第二调用请求包括:所述目标调用接口的接口参数和所述目标区块链对应的调用类型。
可选的,所述装置还包括:
第三确定模块,用于根据所述区块链标识,确定所述目标区块链的驱动接口;
所述确定模块,还用于根据所述业务参数和所述目标区块链的驱动接口,调用所述目标区块链的驱动层,以使得所述目标区块链的驱动层根据所述业务参数,从所述目标区块链的调用接口中,确定所述目标调用接口。
可选的,所述装置还包括:
第一接收模块,用于接收第二客户端发送的区块链更新请求,所述区块链更新请求包括:第二区块链标识;
执行模块,用于根据所述第二区块链标识,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口。
可选的,所述执行模块,还用于根据所述第二区块链标识,确定所述第二区块链标识对应的节点信息;根据所述第二区块链标识对应的节点信息,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口。
可选的,所述装置还包括:
第二接收模块,用于接收第三客户端发送的区块链删除请求,所述区块链删除请求包括:第三区块链标识;
删除模块,用于根据所述第三区块链标识,删除所述第三区块链标识对应的所述第三区块链的驱动接口;
可选的,所述删除模块,还用于删除所述第三区块链的驱动接口对应的节点信息;移除所述第三区块链的驱动接口。
可选的,所述装置包括:
解析模块,用于对所述业务处理结果进行解析,得到解析后的结果;
发送模块,用于向所述第一客户端发送所述解析后的结果。
第三方面,本发明实施例还提供了一种管理服务平台,包括:存储器和处理器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一项所述的区块链调用方法。
第四方面,本发明实施例还提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被读取并执行时,实现上述第一方面任一项所述的区块链调用方法。
本发明的有益效果是:本申请实施例提供一种区块链调用方法,包括:接收第一客户端发送的第一调用请求;其中,第一调用请求包括:区块链标识和业务参数;根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口;采用目标调用接口,调用目标区块链,以使得目标区块链基于业务参数进行业务处理,得到业务处理结果;获取目标区块链返回的业务处理结果。根据业务参数确定区块链标识对应的目标区块链的目标调用接口;采用目标调用接口可以调用目标区块链,继而获取到目标区块链返回的业务处理结果。实现了对于不同区块链通用化调用,使得管理服务平台的调用服务更加简便。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种区块链调用系统的结构示意图;
图2为本发明实施例提供的一种区块链调用方法的流程示意图;
图3为本发明实施例提供的一种区块链调用方法的流程示意图;
图4为本发明实施例提供的一种区块链调用方法的流程示意图;
图5为本发明实施例提供的一种区块链调用方法的流程示意图;
图6为本发明实施例提供的一种区块链调用方法的流程示意图;
图7为本发明实施例提供的一种区块链调用方法的流程示意图;
图8为本发明实施例提供的一种区块链调用方法的流程示意图;
图9为本发明实施例提供的一种区块链调用方法的流程示意图;
图10为本发明实施例提供的一种区块链调用装置的结构示意图;
图11为本发明实施例提供的一种管理服务平台的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,需要说明的是,若出现术语“上”、“下”、等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
此外,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。
图1为本发明实施例提供的一种区块链调用系统的结构示意图,如图1所示,该区块链调用系统可以包括:管理服务平台101、用户端设备102以及区块链集合103。
其中,区块链集合103中可以包括:不同类型的多个区块链;管理服务平台101分别可以与用户端设备102、区块链集合103中的各个区块链进行通信。用户端设备102上可以安装有第一客户端。
在一些实施方式中,第一客户端可以向管理服务平台101发送的第一调用请求,其中,第一调用请求包括:区块链标识和业务参数;管理服务平台101可以接收第一调用请求,并根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口;管理服务平台101可以采用目标调用接口,调用目标区块链,以使得目标区块链基于业务参数进行业务处理,得到业务处理结果;继而获取目标区块链返回的业务处理结果。
需要说明的是,上述不同类型的多个区块链可以包括:太坊区块链、fabric区块链(具有权限管理的区块链网络)、天玄区块链、趣链区块链等等。
可选的,本申请文件中的管理服务平台101可以为baas平台。
在本申请实施例中,根据业务参数确定区块链标识对应的目标区块链的目标调用接口;采用目标调用接口可以调用目标区块链,继而获取到目标区块链返回的业务处理结果。实现了对于不同区块链通用化调用,使得管理服务平台101的调用服务更加简便。
以下以管理服务平台101为执行主体,对本申请实施例提供的区块链调用方法进行解释说明。
图2为本发明实施例提供的一种区块链调用方法的流程示意图,如图2所示,该方法包括:
S201、接收第一客户端发送的第一调用请求;其中,第一调用请求包括:区块链标识和业务参数。
其中,区块链标识可以为区块链ID(Identity,身份标识号码)。当然,区块链标识还可以为其他可以标识区块链的唯一标识,本申请实施例对此不进行具体限制。
在一种可能的实施方式中,第一客户端可以响应输入的第一调用操作确定第一调用请求,并向管理服务平台发送第一调用请求,相应的,管理服务平台可以接收该第一调用请求。
可选的,管理服务平台上可以部署有业务层,管理服务采用业务层接收第一客户端发送的第一调用请求,对第一调用请求进行业务处理。
S202、根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口。
其中,目标区块链的调用接口的数量可以为多个,每个调用接口可以对应一种业务参数。
在一些实施方式中,根据区块链标识可以确定出区块链标识对应的目标区块链,继而确定出目标区块链的调用接口,根据业务参数可以从目标区块链的调用接口中,可以确定出目标调用接口。
可选的,管理服务平台上可以部署有驱动层,管理服务平台可以采用驱动层,根据业务参数从目标区块链的调用接口中确定目标调用接口。
需要说明的是,上述目标区块链的调用接口可以包括:deploySignContract(部署已签名合约)接口、sendSignTransaction(发送签名交易)接口、call(合约查询调用)接口、getLastBlockNumber(最后一个区块编号调用)接口、getBlockByNumbe(获取区块详情)接口等。目标区块链的目标调用接口可以为上述目标区块链的调用节口中的一个。
S203、采用目标调用接口,调用目标区块链,以使得目标区块链基于业务参数进行业务处理,得到业务处理结果。
在一种可能的实施方式中,目标区块链上可以部署有多个节点,管理服务平台采用目标调用接口,调用目标区块链中多个节点的一个节点,目标区块链中的该节点可以进行业务处理,得到业务处理结果。
可选的,管理服务平台上可以部署有链接层,管理服务平台可以采用链接层基于目标调用接口,调用目标区块链。
S204、获取目标区块链返回的业务处理结果。
在本申请实施例中,目标区块链可以向管理服务平台返回业务处理结果,管理服务平台可以获取该业务处理结果,并根据所述业务处理结果向第一客户端返回最终的调用结果。
综上所述,本申请实施例提供一种区块链调用方法,包括:接收第一客户端发送的第一调用请求;其中,第一调用请求包括:区块链标识和业务参数;根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口;采用目标调用接口,调用目标区块链,以使得目标区块链基于业务参数进行业务处理,得到业务处理结果;获取目标区块链返回的业务处理结果。根据业务参数确定区块链标识对应的目标区块链的目标调用接口;采用目标调用接口可以调用目标区块链,继而获取到目标区块链返回的业务处理结果。实现了对于不同区块链通用化调用,使得管理服务平台的调用服务更加简便。
可选的,上述S202中根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口的过程,可以包括:
根据业务参数的类型,从目标区块链的调用接口中,确定业务参数的类型对应的调用接口为目标调用接口。
其中,业务参数的类型为区块链交易类型或者链查询类型。
需要说明的是,当业务参数的类型为区块链交易类型时,根据具体业务参数的不同,目标调用接口可以为下述接口中的一个:deploySignContract(部署已签名合约)接口、sendSignTransaction(发送签名交易)接口、call(合约查询调用)接口。
另外,当业务参数的类型为链查询类型,根据具体业务参数的不同,目标调用接口可以为下述接口中的一个:getLastBlockNumber(最后一个区块编号调用)接口、getBlockByNumbe(获取区块详情)接口。
例如,业务参数可以签名交易参数,业务参数的类型即签名交易参数的类型,属于区块链交易类型,则管理服务平台可以确定目标调用接口可以为sendSignTransaction(签名交易)接口。
可选的,上述S203中采用目标调用接口,调用目标区块链的过程之前,该方法还可以包括:
若业务参数的类型为区块链交易类型,根据业务参数,组装目标调用接口的接口参数。
其中,管理服务平台上可以部署有驱动层。
在一些实施方式中,若业务参数的类型为区块链交易类型,管理服务平台采用驱动层,基于目标区块链对应的参数组装逻辑和业务参数,组装目标调用接口的接口参数。
在本申请实施例中,驱动层的实现程序代码如下:
/**
*类ChainDriver.java的实现描述:链驱动层
*/
public abstract class ChainDriver{
private ChainConnections connections;
public ChainDriver(ChainConnections connections){
this.connections=connections;
}
/**
*部署已签名合约
*
*@param request
*@return
*/
TransactionResponsedeploySignContract(SignTransactionRequest request){//1.组装参数可选
//2.调用connections
ChainResponseresp=connections.send("deploySignContract","合约部署交易参数");
//3.解析通用结果参数并返回
TransactionResponse response=transfer(resp);
return response;
}
需要说明的是,驱动层是各自链有各自的实现类,需要继承ChainDriver类。例如,如天玄链需实现驱动层TianXuanDriver、以太坊链需实现驱动层如EthDriver。
其中,链接层的connections信息保存:当驱动层初始化的时候,需要将当前链的链接层对象配置好。
上述过程,程序代码实现如下:
public ChainDriver(ChainConnections connections){
this.connections=connections;
}
当目标区块链可以为天玄链,业务参数的类型为区块链交易类型,业务参数可以表示为SignTransactionRequest参数。对部署合约的交易参数SignTransactionRequest进行组装,目标调用接口的接口参数可以为天玄链部署已签名合约的调用参数;对发送交易参数SignTransactionRequest进行组装,目标调用接口的接口参数可以为天玄发送交易的参数;对合约查询的参数SignTransactionRequest进行组装,目标调用接口的接口参数可以为天玄链合约查询的参数。
另外,可以输入调用的方法名称类型(部署已签名合约(deploySignContract)、已签名交易调用(sendSignTransaction)、合约查询调用(call)、获取最后一个区块编号(getLastBlockNumber)、通过区块编号获取区块(getBlockByNumber));输入组装目标调用接口的接口参数。调用结束后输出链调用结果ChainResponse。
上述过程的程序代码实现如下:
//
ChainResponseresp=connections.send("deploySignContract","合约部署交易参数");
ChainResponseresp=connections.send("sendSignTransaction","交易参数");
ChainResponseresp=connections.send("call","查询参数");
在S204的过程中,可以将业务处理结果ChainResponse参数转换成通用的交易调用结果返回值TransactionResponse参数,不同的链各自将ChainRespons转换成TransactionResponse参数即可,可以包括交易hash、块高、通用结果值。其中,ChainResponse只有一个参数,任一个区块链的调用的直接结果。
上述过程的程序代码实现如下:
@Data
public class ChainResponse{
//直接调用的返回结果
private Object data;
}
可选的,上述S203中采用目标调用接口,调用目标区块链的过程之前,该方法还可以包括:
若业务参数的类型为链查询类型,则根据链查询类型对应的预设参数,确定目标调用接口的接口参数。
其中,若业务参数的类型为链查询类型,则无需进行接口参数的组装。
在一些实施方式中,管理服务平台可以采用驱动层,根据链查询类型对应的预设参数,确定getLastBlockNumber(最后一个区块编号调用)接口的接口参数,或者,确定getBlockByNumbe(获取区块详情)接口的接口参数。
需要说明的是,在S203中,对于最后一个区块编号调用接口,可以输入调用的方法名称(getLastBlockNumber),调用send接口,返回链的调用结果ChainRespone,将ChainRespone转换成数字类型的块高返回即可。
上述过程的程序代码实现如下:
/**
*获取最后一个区块编号
*
*@return
*/
long getLastBlockNumber(){
//1.调用connections
ChainResponseresp=connections.send("getLastBlockNumber",null);
return(long)resp.getData();
}
另外,在S203中,对于获取区块详情接口,输入调用的方法名称(getBlockByNumber)和需要查询的块高blockNumber,调用send接口,返回链的调用结果ChainRespone,将ChainRespone转换块高详情BlockResponse。
上述过程的程序代码实现如下:
/**
*通过区块编号获取区块
*
*@paramblockNumber
*@return BlockHeader
*/
BlockResponsegetBlockByNumber(long blockNumber){
//1.调用connections
ChainResponseresp=connections.send("getBlockByNumber",blockNumber+"");
//2.解析通用结果参数并返回
BlockResponse response=transfer(resp);
return response;
可选的,图3为本发明实施例提供的一种区块链调用方法的流程示意图,如图3所示,上述S203中采用目标调用接口,调用目标区块链的过程之前,该方法还可以包括:
S301、根据目标区块链的节点信息,从目标区块链上确定目标节点。
其中,目标区块链的节点信息可以存储于驱动层。管理服务平台上可以部署有链接层,可以采用链接层从目标区块链上确定目标节点。
在本申请实施例中,目标区块链上的目标区块链的节点信息可以以链接列表(nodeInfoList)的形式存储;采用链接层,从链接列表中随机确定目标节点。
需要说明的是,采用链接层可以解析链接列表所有的节点信息;根据节点信息(链接方式、端口、IP(Internet Protocol,网际互连协议)),调用各自链的SDK进行链接初始化。
例如,天玄链(tianXuanChainA),有4个节点(node0,node1,node2,node3),则调用天玄的SDK(Software Development Kit,软件开发工具包)初始化4个链接信息,并保存到链接列表。
链接层的初始化以及解析的实现程序代码,如下所示:
/**
*类ChainConnections.java的实现描述:链的链接层
*/
public abstract class ChainConnections{
//节点链接列表
private List<NodeInfo>nodeInfoList=new ArrayList<>();
/**
*初始化链接列表
*
*@paramnodeInfo
*/
public ChainConnections(String nodeInfos){
//1.解析nodeInfos所有的节点
//2.采用tcp or http等不同方式连接节点
//3.加入到nodeInfoList
}
上述S203中采用目标调用接口,调用目标区块链的过程,可以包括:
S302、根据目标调用接口,向目标节点发送第二调用请求,第二调用请求包括:目标调用接口的接口参数和目标区块链对应的调用类型。
需要说明的是,根据业务参数的不同,目标区块链对应的调用类型可以包括下述至少一种类型的组合:部署已签名合约(deploySignContract)类型、已签名交易调用(sendSignTransaction)类型、合约查询调用(call)类型、获取最后一个区块编号(getLastBlockNumber)类型、通过区块编号获取区块(getBlockByNumber)类型。
在一些实施方式中,采用链接层调用send(发送)接口调用目标节点,send接口的输入参数可以为目标区块链对应的调用类型和目标调用接口的接口参数(requestData)。可以根据目标区块链对应的调用类型,调用对应的SDK接口,调用目标区块链的目标节点。
例如,天玄链(tianXuanChainA),有4个节点(node0,node1,node2,node3);以太坊链(ethChainA),也有四个节点(node0,node1,node2,node3)。天玄链及以太坊链需要各自实现驱动层及连接层,同时实现关键接口。
链接层的调用过程的实现程序代码,如下所示:
/**
*发送请求到区块链,并获取原始结果
*
*@param request
*@return
*/
ChainResponsesend(String type,String requestData){
//随机获取一个节点
NodeInfonodeInfo=getRandomNodeId();
switch(type){
case"deploySignContract":
//执行部署合约的sdk对应接口的调用逻辑,并返回原始结果
Break;
case"sendSignTransaction":
//执行发送交易的sdk对应接口的调用逻辑,并返回原始结果
Break;
case"call":
//执行合约查询的sdk对应接口的调用逻辑,并返回原始结果
Break;
case"getLastBlockNumber":
//执行获取最后一个块高的sdk对应接口的调用逻辑,并返回原始结果Break;
case"getBlockByNumber:
//执行获取块详情的sdk对应接口的调用逻辑,并返回原始结果
Break;
}
}
可选的,图4为本发明实施例提供的一种区块链调用方法的流程示意图,如图4所示,在上述S202根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口的过程之前,该方法还可以包括:
S401、根据区块链标识,确定目标区块链的驱动接口。
其中,管理服务平台上可以部署有桥梁层,管理服务平台可以采用桥梁层,根据区块链ID确定目标区块链的驱动接口。
在本申请实施例中,目标区块链的驱动接口可以为下述接口中的至少一个的组合:deploySignContractByChainId(部署已签名合约)驱动接口、sendSignTransactionByChainId(发送签名交易)驱动接口、callByChainId(合约查询调用)驱动接口、getLastBlockNumberByChainId(最后一个区块编号调用)驱动接口、getBlockByNumberAndChainId(获取区块详情)驱动接口。
需要说明的是,部署已签名合约驱动接口、发送签名交易驱动接口、合约查询调用驱动接口,输入的业务参数可以为SignTransactionRequest参数[签名校验参数(data)(部署合约为部署合约的交易参数,发送交易为发送交易的参数,合约查询为合约查询的参数)、可选参数],链id(chainId)。可选参数说明:不同的区块链调用可能需要不同的参数,保留可选参数是为了让用户对不要链的操作有操作空间。
对于上述过程的程序代码实现如下:
public class SignTransactionRequest{
/**
*交易数据部署合约为部署合约的交易参数,发送交易为发送交易的参数,合约查询为合约查询的参数
*/
private byte[]data;
/**
*返回数据参数、返回事件等其他参数定义
*/
Map<String,Object>options=new HashMap<>();
}
另外,返回参数为交易通用结果TransactionResponse:交易hash(本次操作的链上唯一编号)、本次操作的块高blocknumber、本次操作的通用结果result。通用结果为链调用完成后的返回结果,供上层业务解析。
对于上述过程的程序代码实现如下:
public class TransactionResponse{
/**
*交易hash
*/
private String hash;
/**
*块高
*/
private long blockNumber;
/**
*结果
*/
private Object result;
}
在本申请实施例中,最后一个区块编号调用驱动接口,区块链标识可以为链id(chainId),输出参数当前链的块高;获取区块详情驱动接口,业务参数可以为查询的区块编号blockNumber,区块链标识可以为链id(chainId),输出参数为块详情(BlockResponse)。
其中,块详情(BlockResponse)参数如下所述:包括块高、前一个块高、当前块高hash、块数据、扩展信息(根据不同的链的块数据用户可自行返回数据)。
对于上述过程的程序代码实现如下:
public class BlockResponse{
private long number;//块高
private String prevHash;//前一个块高
private String hash;//当前块高hash
private String blockData;//块数据
/**
*返回扩展数据
*/
Map<String,Object>options=new HashMap<>();
}
上述S202中根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口的过程,可以包括:
S402、根据业务参数和目标区块链的驱动接口,调用目标区块链的驱动层,以使得目标区块链的驱动层根据业务参数,从目标区块链的调用接口中,确定目标调用接口。
其中,管理服务平台可以采用桥梁层根据业务参数和目标区块链的驱动接口,调用目标区块链的驱动层。
可选的,图5为本发明实施例提供的一种区块链调用方法的流程示意图,如图5所示,该方法还可以包括:
S501、接收第二客户端发送的区块链更新请求,区块链更新请求包括:第二区块链标识。
在本申请实施例中,在新增或变更一条的区块链信息时,可以调用刷新接口,执行驱动的重新加载。例如,变更天玄链(tianXuanChainA)的任意一个节点(node0,node1,node2,node3)链接地址,或删除一个节点或新增一个节点,均需要重新刷新。
另外,第二客户端和第一客户端可以为同一客户端,也可以为不同客户端,本申请实施例对此不进行具体限制。
S502、根据第二区块链标识,重新执行第二区块链标识对应的区块链的驱动加载,以刷新第二区块链标识对应的驱动接口。
在一些实施方式中,可以根据第二区块链标识,初始化链接层,将初始化后的链接层传入驱动层,初始化驱动层,将初始化后的驱动层存储至目标对象中,以便进行调用。
可选的,图6为本发明实施例提供的一种区块链调用方法的流程示意图,如图6所示,上述S502中根据第二区块链标识,重新执行第二区块链标识对应的区块链的驱动加载,以刷新第二区块链标识对应的驱动接口的过程,可以包括:
S601、根据第二区块链标识,确定第二区块链标识对应的节点信息。
其中,管理服务平台可以根据第二区块链标识,从数据库获取第二区块链对应的节点信息,该节点信息主要包括节点的链接地址IP和端口。
S602、根据第二区块链标识对应的节点信息,重新执行第二区块链标识对应的区块链的驱动加载,以刷新第二区块链标识对应的驱动接口。
在一些实施方式中,输入第二区块链标识对应的节点信息,初始化链接层,链接层每一种链有各自的实现类,继承ChainConnections类(例如,天玄链的连接层可实现名称为TianXuanConnections)。将初始化好的链接层传入驱动层,初始化驱动层。其中,驱动层也是各自链有对应的实现类,继承ChainDriver类,(例如天玄链的驱动层可实现为名称为TianXuanDriver)。将初始化好的驱动层,存放到chainMap对象中,便于后续调用。
上述过程的程序代码实现如下:
Boolean reloadChainDriverByChainId(long chainId){
//1、数据库加载链-节点详情
//2.初始化链接层
ChainConnections connections=new ChainConnections("节点信息");
//3.初始化驱动层
ChainDriver driver=new ChainDriver(connections);
//4.存放驱动
chainMap.put(chainId,driver);
return true;
}
可选的,图7为本发明实施例提供的一种区块链调用方法的流程示意图,如图7所示,该方法还包括:
S701、接收第三客户端发送的区块链删除请求,区块链删除请求包括:第三区块链标识。
其中,第三客户端和第一客户端可以为同一客户端,也可以为不同客户端,本申请实施例对此不进行具体限制。
S702、根据第三区块链标识,删除第三区块链标识对应的第三区块链的驱动接口。
在一些实施方式中,管理服务平台可以调用删除接口,根据第三区块链标识,删除第三区块链标识对应的第三区块链的驱动接口。
可选的,图8为本发明实施例提供的一种区块链调用方法的流程示意图,如图8所示,上述S702中根据第三区块链标识,删除第三区块链标识对应的第三区块链的驱动的过程,可以包括:
S801、删除第三区块链的驱动接口对应的节点信息。
S802、移除第三区块链的驱动接口。
在本申请实施例中,调用删除接口,关闭第三区块链的驱动接口对应的节点信息,防止内存泄漏;移除第三区块链的驱动接口。第三区块链的驱动接口可以存放于目标对象中,目标对象可以为:chainMap对象。
上述过程的实现程序代码如下所示:
BooleandestroyChainDriverByChainID(long chainId){
//删除驱动,关闭连接,移除链
chainMap.remove(chainId);
return true;
}
可选的,图9为本发明实施例提供的一种区块链调用方法的流程示意图,如图9所示,上述S204中获取目标区块链返回的业务处理结果的过程之后,该方法可以包括:
S901、对业务处理结果进行解析,得到解析后的结果。
S902、向第一客户端发送解析后的结果。
在一种可能的实施方式中,可以先采用链接层获取业务处理结果,继而采用驱动层对业务处理结果进行解析,得到解析后的结果,解析后的结果通过桥梁层、业务层发送至第一客户端,第一客户端可以接收该解析后的结果。
需要说明的是,以下以天玄链(tianXuanChainA),发送一笔签名交易(sendSignTransaction)为例,对本申请实施例提供的区块链调用方法进行说明。
第一调用请求可以表征发送一笔签名交易,第一调用请求包括:链ID(tianXuanChainA),签名交易参数(如某个用户的某个合约的某个方法的私钥签名后的交易参数),调用桥梁层的发送签名交易接口(sendSignTransactionByChainId),输入参数可以包括:链Id和签名交易参数。桥梁服务层通过链Id获取到天玄链(tianXuanChainA)驱动,调用驱动的发送签名交易接口(sendSignTransaction),输入签名交易参数,天玄链tianXuanChainA驱动的发送签名交易接口(sendSignTransaction)执行操作:天玄链的交易参数组装,将组装完成交易的参数发送给链接层的send接口(ChainResponseresp=connections.send("send1·SignTransaction","交易参数");)天玄链-链接层send接口执行:随机选择4个节点(node0,node1,node2,node3)中的一个执行操作,链接层调用最终的天玄链交易接口tianXuanSignTransaction(),获取交易结果。并将交易原始结果返回给天玄链驱动层,驱动层将原始数据解析成通用的结果参数对象返回给桥梁层。桥梁层再返回给业务层,业务层在返回给用户,调用即结束。
此外,调用天玄链(tianXuanChainA),获取块高、部署合约、查询等操作流程跟上述过程类似,此处不再赘述。
下述对用以执行本申请所提供的区块链调用方法的区块链调用装置、管理服务平台及存储介质等进行说明,其具体的实现过程以及技术效果参见上述管理服务平台方法的相关内容,下述不再赘述。
图10为本发明实施例提供的一种区块链调用装置的结构示意图,如图10所示,该装置可以包括:
接收模块1001,用于接收第一客户端发送的第一调用请求;其中,第一调用请求包括:区块链标识和业务参数;
确定模块1002,用于根据业务参数,从区块链标识对应的目标区块链的调用接口中,确定目标调用接口;
调用模块1003,用于采用目标调用接口,调用目标区块链,以使得目标区块链基于业务参数进行业务处理,得到业务处理结果;
获取模块1004,用于获取目标区块链返回的业务处理结果。
可选的,确定模块1002,还用于根据业务参数的类型,从目标区块链的调用接口中,确定业务参数的类型对应的调用接口为目标调用接口;业务参数的类型为区块链交易类型或者链查询类型。
可选的,装置还包括:
组装模块,用于若业务参数的类型为区块链交易类型,根据业务参数,组装目标调用接口的接口参数。
可选的,装置还包括:
第一确定模块,用于若业务参数的类型为链查询类型,则根据链查询类型对应的预设参数,确定目标调用接口的接口参数。
可选的,装置还包括:
第二确定模块,用于根据目标区块链的节点信息,从目标区块链上确定目标节点;
调用模块1003,还用于根据目标调用接口,向目标节点发送第二调用请求,第二调用请求包括:目标调用接口的接口参数和目标区块链对应的调用类型。
可选的,装置还包括:
第三确定模块,用于根据区块链标识,确定目标区块链的驱动接口;
确定模块1002,还用于根据业务参数和目标区块链的驱动接口,调用目标区块链的驱动层,以使得目标区块链的驱动层根据业务参数,从目标区块链的调用接口中,确定目标调用接口。
可选的,装置还包括:
第一接收模块,用于接收第二客户端发送的区块链更新请求,区块链更新请求包括:第二区块链标识;
执行模块,用于根据第二区块链标识,重新执行第二区块链标识对应的区块链的驱动加载,以刷新第二区块链标识对应的驱动接口。
可选的,执行模块,还用于根据第二区块链标识,确定第二区块链标识对应的节点信息;根据第二区块链标识对应的节点信息,重新执行第二区块链标识对应的区块链的驱动加载,以刷新第二区块链标识对应的驱动接口。
可选的,装置还包括:
第二接收模块,用于接收第三客户端发送的区块链删除请求,区块链删除请求包括:第三区块链标识;
删除模块,用于根据第三区块链标识,删除第三区块链标识对应的第三区块链的驱动接口;
可选的,删除模块,还用于删除第三区块链的驱动接口对应的节点信息;移除第三区块链的驱动接口。
可选的,装置包括:
解析模块,用于对业务处理结果进行解析,得到解析后的结果;
发送模块,用于向第一客户端发送解析后的结果。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图11为本发明实施例提供的一种管理服务平台的结构示意图,如图11所示,包括:处理器1101、存储器1102。
存储器1102用于存储程序,处理器1101调用存储器1102存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本发明还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种区块链调用方法,其特征在于,包括:
接收第一客户端发送的第一调用请求;其中,所述第一调用请求包括:区块链标识和业务参数;
根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口;
采用所述目标调用接口,调用所述目标区块链,以使得所述目标区块链基于所述业务参数进行业务处理,得到业务处理结果;
获取所述目标区块链返回的所述业务处理结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口,包括:
根据所述业务参数的类型,从所述目标区块链的调用接口中,确定所述业务参数的类型对应的调用接口为所述目标调用接口;所述业务参数的类型为区块链交易类型或者链查询类型。
3.根据权利要求2所述的方法,其特征在于,所述采用所述目标调用接口,调用所述目标区块链之前,所述方法还包括:
若所述业务参数的类型为区块链交易类型,根据所述业务参数,组装所述目标调用接口的接口参数。
4.根据权利要求2所述的方法,其特征在于,所述采用所述目标调用接口,调用所述目标区块链之前,所述方法还包括:
若所述业务参数的类型为链查询类型,则根据所述链查询类型对应的预设参数,确定所述目标调用接口的接口参数。
5.根据权利要求1所述的方法,其特征在于,所述采用所述目标调用接口,调用所述目标区块链之前,所述方法还包括:
根据所述目标区块链的节点信息,从所述目标区块链上确定目标节点;
所述采用所述目标调用接口,调用所述目标区块链,包括:
根据所述目标调用接口,向所述目标节点发送第二调用请求,所述第二调用请求包括:所述目标调用接口的接口参数和所述目标区块链对应的调用类型。
6.根据权利要求1所述的方法,其特征在于,所述根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口之前,所述方法还包括:
根据所述区块链标识,确定所述目标区块链的驱动接口;
所述根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口,包括:
根据所述业务参数和所述目标区块链的驱动接口,调用所述目标区块链的驱动层,以使得所述目标区块链的驱动层根据所述业务参数,从所述目标区块链的调用接口中,确定所述目标调用接口。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
接收第二客户端发送的区块链更新请求,所述区块链更新请求包括:第二区块链标识;
根据所述第二区块链标识,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口。
8.根据权利要求7所述的方法,其特征在于,所述根据所述第二区块链标识,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口,包括:
根据所述第二区块链标识,确定所述第二区块链标识对应的节点信息;
根据所述第二区块链标识对应的节点信息,重新执行所述第二区块链标识对应的区块链的驱动加载,以刷新所述第二区块链标识对应的驱动接口。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收第三客户端发送的区块链删除请求,所述区块链删除请求包括:第三区块链标识;
根据所述第三区块链标识,删除所述第三区块链标识对应的所述第三区块链的驱动接口。
10.根据权利要求9所述的方法,其特征在于,所述根据所述第三区块链标识,删除所述第三区块链标识对应的所述第三区块链的驱动,包括:
删除所述第三区块链的驱动接口对应的节点信息;
移除所述第三区块链的驱动接口。
11.根据权利要求1-10任一所述的方法,其特征在于,所述获取所述目标区块链返回的所述业务处理结果之后,所述方法包括:
对所述业务处理结果进行解析,得到解析后的结果;
向所述第一客户端发送所述解析后的结果。
12.一种区块链调用装置,其特征在于,包括:
接收模块,用于接收第一客户端发送的第一调用请求;所述第一调用请求包括:区块链标识和业务参数;
确定模块,用于根据所述业务参数,从所述区块链标识对应的目标区块链的调用接口中,确定目标调用接口;
调用模块,用于采用所述目标调用接口,调用所述目标区块链,以使得所述目标区块链基于所述业务参数进行业务处理,得到业务处理结果;
获取模块,用于获取所述目标区块链返回的所述业务处理结果。
13.一种管理服务平台,其特征在于,包括:存储器和处理器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1-11任一项所述的区块链调用方法。
14.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被读取并执行时,实现上述权利要求1-11任一项所述的区块链调用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110568235.0A CN113312427B (zh) | 2021-05-24 | 2021-05-24 | 区块链调用方法、装置、管理服务平台及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110568235.0A CN113312427B (zh) | 2021-05-24 | 2021-05-24 | 区块链调用方法、装置、管理服务平台及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113312427A true CN113312427A (zh) | 2021-08-27 |
CN113312427B CN113312427B (zh) | 2023-04-28 |
Family
ID=77374475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110568235.0A Active CN113312427B (zh) | 2021-05-24 | 2021-05-24 | 区块链调用方法、装置、管理服务平台及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113312427B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145712A (zh) * | 2022-09-06 | 2022-10-04 | 云账户技术(天津)有限公司 | 对外服务平台的接口调用方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899680A (zh) * | 2017-03-09 | 2017-06-27 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法和装置 |
US20190102423A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | System and method for providing an interface for a blockchain cloud service |
CN111260474A (zh) * | 2020-02-12 | 2020-06-09 | 北京百度网讯科技有限公司 | 跨区块链的资产交易方法、装置、设备、系统和存储介质 |
CN111506584A (zh) * | 2020-03-26 | 2020-08-07 | 金蝶软件(中国)有限公司 | 基于区块链的业务数据处理方法、装置和计算机设备 |
US20200344233A1 (en) * | 2019-04-29 | 2020-10-29 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing a role based access control and authorization validator via blockchain smart contract execution using distributed ledger technology (dlt) |
CN112631803A (zh) * | 2020-12-21 | 2021-04-09 | 杭州趣链科技有限公司 | 区块链的智能合约调用方法、装置、服务器和存储介质 |
-
2021
- 2021-05-24 CN CN202110568235.0A patent/CN113312427B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899680A (zh) * | 2017-03-09 | 2017-06-27 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法和装置 |
US20190102423A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | System and method for providing an interface for a blockchain cloud service |
US20200344233A1 (en) * | 2019-04-29 | 2020-10-29 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing a role based access control and authorization validator via blockchain smart contract execution using distributed ledger technology (dlt) |
CN111260474A (zh) * | 2020-02-12 | 2020-06-09 | 北京百度网讯科技有限公司 | 跨区块链的资产交易方法、装置、设备、系统和存储介质 |
CN111506584A (zh) * | 2020-03-26 | 2020-08-07 | 金蝶软件(中国)有限公司 | 基于区块链的业务数据处理方法、装置和计算机设备 |
CN112631803A (zh) * | 2020-12-21 | 2021-04-09 | 杭州趣链科技有限公司 | 区块链的智能合约调用方法、装置、服务器和存储介质 |
Non-Patent Citations (2)
Title |
---|
不会CODE的DDG: "蚂蚁区块链官方Demo解析(java版)及相关接口调用", 《HTTPS://BLOG.CSDN.NET/WEIXIN_41734080/ARTICLE/DETAILS/108664340》 * |
刘雄文: "多区块链交易分发和事件处理的系统方案", 《计算机科学》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145712A (zh) * | 2022-09-06 | 2022-10-04 | 云账户技术(天津)有限公司 | 对外服务平台的接口调用方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113312427B (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112631803A (zh) | 区块链的智能合约调用方法、装置、服务器和存储介质 | |
Arfaoui et al. | Distributedly testing cycle-freeness | |
CN113312427A (zh) | 区块链调用方法、装置、管理服务平台及存储介质 | |
CN110247977A (zh) | 一种基于边缘计算的数据融合的方法和系统 | |
WO2022267769A1 (zh) | 图数据生成的方法及装置 | |
WO2022076182A1 (en) | Neighborhood‐based entity disambiguation system and method | |
KR102015980B1 (ko) | 전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법 | |
Bousquet et al. | Reconfiguration of spanning trees with degree constraints or diameter constraints | |
CN111224981B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN110908801B (zh) | 基于区块链的数据处理方法、装置、计算机设备和存储介质 | |
Aljazzaf | Modelling and measuring the quality of online services | |
Di Luna et al. | Population protocols with faulty interactions: the impact of a leader | |
CN106959903A (zh) | 陷阱指令Trap的处理方法及装置 | |
Sainz et al. | Multipartite composition of contextuality scenarios | |
US20220051110A1 (en) | Neighborhood-based entity resolution system and method | |
Steinheimer et al. | M2M application service provision: an autonomous and decentralised approach | |
US11100077B2 (en) | Event table management using type-dependent portions | |
Pereira | Development of MOSGUITO: a user-friendly graphical interface for meta-omics data analyses | |
WO2022060445A1 (en) | Interface threat assessment in multi-cluster system | |
Davis et al. | Conflict Patterns: Toward Identifying Suitable Middleware. | |
Peterson | Caesar: A proposed method for evaluating security in component-based distributed information systems | |
Zweig et al. | Understanding and Designing Network Measures | |
CN117829993A (zh) | 在相互连接的多个子网中发现目标资源的方法及装置 | |
JP2023526916A (ja) | アプリケーション・トポロジの発見 | |
CN117435456A (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 |