CN108510389A - 基于区块链的智能合约调用方法、设备及可读存储介质 - Google Patents
基于区块链的智能合约调用方法、设备及可读存储介质 Download PDFInfo
- Publication number
- CN108510389A CN108510389A CN201810293385.3A CN201810293385A CN108510389A CN 108510389 A CN108510389 A CN 108510389A CN 201810293385 A CN201810293385 A CN 201810293385A CN 108510389 A CN108510389 A CN 108510389A
- Authority
- CN
- China
- Prior art keywords
- intelligent contract
- block chain
- transaction
- transaction request
- contract
- 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
Classifications
-
- 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
-
- 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/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Development Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于区块链的智能合约调用方法、设备及可读存储介质,该方法包括步骤:当接收到客户端发送的调用区块链中智能合约的交易请求后,根据所述交易请求获取所述智能合约的名字和调用所述智能合约的调用接口;获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约;根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端。本发明简化了调用区块链中智能合约的调用流程,降低了智能合约的调用难度。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于区块链的智能合约调用方法、设备及可读存储介质。
背景技术
在现有的区块链技术中,智能合约的使用一般包括编写智能合约、编译智能合约和发布智能合约,其中,每个智能合约还对应着一套合约接口描述信息。当智能合约发布到区块链中后,智能合约会生成一个地址。在调用智能合约过程中,需要结合该智能合约的地址和接口描述信息才能成功调用智能合约。而智能合约的地址是一个没有规律、没有特定意义的魔数,因此,该地址不便于区块链的识别和存储。若区块链丢失智能合约的地址,区块链将无法找回该地址。接口描述信息所采用的描述方式是比较复杂难懂的描述方式,在调用智能合约过程中,会由于接口描述信息错误而导致智能合约调用错误。由此可知,现有的调用区块链中智能合约的调用流程繁琐,且容易导致调用错误。
发明内容
本发明的主要目的在于提供一种基于区块链的智能合约调用方法、设备及可读存储介质,旨在解决现有的调用区块链中智能合约的调用流程繁琐,且容易导致调用错误的技术问题。
为实现上述目的,本发明提供一种基于区块链的智能合约调用方法,所述基于区块链的智能合约调用方法包括步骤:
当接收到客户端发送的调用区块链中智能合约的交易请求后,根据所述交易请求获取所述智能合约的名字和调用所述智能合约的调用接口;
获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约;
根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端。
优选地,所述根据所述名字和所述调用接口调用所述智能合约的步骤之前,还包括:
检测所述交易请求中是否携带所述智能合约的版本号;
若所述交易请求中携带所述版本号,则所述获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约的步骤包括:
获取所述交易请求中的交易参数,并根据所述名字、所述调用接口和所述版本号调用所述智能合约。
优选地,所述检测所述交易请求中是否携带所述智能合约的版本号的步骤之后,还包括:
若所述交易请求中未携带所述版本号,则获取预设的流量分配规则;
所述获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约的步骤包括:
获取所述交易请求中的交易参数,并基于所述流量分配规则,根据所述名字和所述调用接口调用不同版本的所述智能合约。
优选地,所述根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端的步骤包括:
根据所述流量分配规则在不同版本号的所述智能合约中执行所述交易请求对应的业务,并检测是否成功在高版本的所述智能合约中执行所述业务;
若成功在高版本的所述智能合约中执行所述业务,则将低版本的所述智能合约所占用的流量转移至高版本的所述智能合约中,以在高版本的所述智能合约执行所述业务。
优选地,所述基于区块链的智能合约调用方法还包括:
当所述智能合约中执行的业务量大于预设业务量时,将所述智能合约部署到至少两个区块链中,其中,同一智能合约在不同区块链中的调用接口是一致的。
优选地,所述根据所述名字和所述调用接口调用所述智能合约的步骤包括:
基于区块链中预先存储的名字与合约描述信息之间的映射关系,根据所述名字获取所述智能合约的地址和接口描述信息列表;
在所述接口描述信息列表中查找所述调用接口的接口描述信息,根据所述地址和所述接口描述信息调用所述智能合约。
优选地,所述基于区块链的智能合约调用方法还包括:
当侦测到更新所述映射关系的更新指令后,根据所述更新指令更新所述映射关系,得到更新后的所述映射关系;
将更新后的所述映射关系同步到所述区块链的各个节点中。
优选地,所述根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端的步骤包括:
根据所述交易参数在所述智能合约中执行所述交易请求对应的业务;
若所述业务执行成功,则生成交易成功的第一提示信息,并将所述第一提示信息返回给所述客户端;
若所述业务执行失败,则生成交易失败的第二提示信息,并将所述第二提示信息返回给所述客户端。
此外,为实现上述目的,本发明还提供一种基于区块链的智能合约调用设备,所述基于区块链的智能合约调用设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的基于区块链的智能合约调用程序,所述基于区块链的智能合约调用程序被所述处理器执行时实现如上所述的基于区块链的智能合约调用方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于区块链的智能合约调用程序,所述基于区块链的智能合约调用程序被处理器执行时实现如上所述的基于区块链的智能合约调用方法的步骤。
本发明通过当接收到客户端发送的调用区块链中智能合约的交易请求后,根据所述交易请求获取所述智能合约的名字和调用所述智能合约的调用接口;获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约;根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端。实现了在调用区块链中的智能合约时,不需要知道该智能合约的地址和接口描述信息,只需要知道该智能合约的名字和调用接口,即可成功调用智能合约,简化了调用区块链中智能合约的调用流程,降低了智能合约的调用难度,且由于不需要知道接口描述信息,避免了由于接口描述信息错误而导致智能合约调用错误的情况出现。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明基于区块链的智能合约调用方法第一实施例的流程示意图;
图3为本发明实施例中区块链的框架示意图;
图4为本发明基于区块链的智能合约调用方法第二实施例的流程示意图;
图5为本发明基于区块链的智能合约调用方法第三实施例的流程示意图;
图6为本发明基于区块链的智能合约调用方法第四实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的结构示意图。
需要说明的是,图1即可为基于区块链的智能合约调用设备的硬件运行环境的结构示意图。本发明实施例基于区块链的智能合约调用设备可以是PC,便携计算机等终端设备。
如图1所示,该基于区块链的智能合约调用设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的基于区块链的智能合约调用设备结构并不构成对基于区块链的智能合约调用设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于区块链的智能合约调用程序。其中,操作系统是管理和控制设备硬件和软件资源的程序,支持基于区块链的智能合约调用程序以及其它软件或程序的运行。
在图1所示的基于区块链的智能合约调用设备中,用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于区块链的智能合约调用程序,并执行以下操作:
当接收到客户端发送的调用区块链中智能合约的交易请求后,根据所述交易请求获取所述智能合约的名字和调用所述智能合约的调用接口;
获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约;
根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端。
进一步地,所述根据所述名字和所述调用接口调用所述智能合约的步骤之前,处理器1001还可以用于调用存储器1005中存储的基于区块链的智能合约调用程序,并执行以下步骤:
检测所述交易请求中是否携带所述智能合约的版本号;
若所述交易请求中携带所述版本号,则所述获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约的步骤包括:
获取所述交易请求中的交易参数,并根据所述名字、所述调用接口和所述版本号调用所述智能合约。
进一步地,所述检测所述交易请求中是否携带所述智能合约的版本号的步骤之后,处理器1001还可以用于调用存储器1005中存储的基于区块链的智能合约调用程序,并执行以下步骤:
若所述交易请求中未携带所述版本号,则获取预设的流量分配规则;
所述获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约的步骤包括:
获取所述交易请求中的交易参数,并基于所述流量分配规则,根据所述名字和所述调用接口调用不同版本的所述智能合约。
进一步地,所述根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端的步骤包括:
根据所述流量分配规则在不同版本号的所述智能合约中执行所述交易请求对应的业务,并检测是否成功在高版本的所述智能合约中执行所述业务;
若成功在高版本的所述智能合约中执行所述业务,则将低版本的所述智能合约所占用的流量转移至高版本的所述智能合约中,以在高版本的所述智能合约执行所述业务。
进一步地,处理器1001还可以用于调用存储器1005中存储的基于区块链的智能合约调用程序,并执行以下步骤:
当所述智能合约中执行的业务量大于预设业务量时,将所述智能合约部署到至少两个区块链中,其中,同一智能合约在不同区块链中的调用接口是一致的。
进一步地,所述根据所述名字和所述调用接口调用所述智能合约的步骤包括:
基于区块链中预先存储的名字与合约描述信息之间的映射关系,根据所述名字获取所述智能合约的地址和接口描述信息列表;
在所述接口描述信息列表中查找所述调用接口的接口描述信息,根据所述地址和所述接口描述信息调用所述智能合约。
进一步地,处理器1001还可以用于调用存储器1005中存储的基于区块链的智能合约调用程序,并执行以下步骤:
当侦测到更新所述映射关系的更新指令后,根据所述更新指令更新所述映射关系,得到更新后的所述映射关系;
将更新后的所述映射关系同步到所述区块链的各个节点中。
进一步地,所述根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端的步骤包括:
根据所述交易参数在所述智能合约中执行所述交易请求对应的业务;
若所述业务执行成功,则生成交易成功的第一提示信息,并将所述第一提示信息返回给所述客户端;
若所述业务执行失败,则生成交易失败的第二提示信息,并将所述第二提示信息返回给所述客户端。
基于上述的结构,提出基于区块链的智能合约调用方法的各个实施例。
参照图2,图2为本发明基于区块链的智能合约调用方法第一实施例的流程示意图。
本发明实施例提供了基于区块链的智能合约调用方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
基于区块链的智能合约调用方法包括:
步骤S10,当接收到客户端发送的调用区块链中智能合约的交易请求后,根据所述交易请求获取所述智能合约的名字和调用所述智能合约的调用接口。
当区块链接收到客户端发送的调用智能合约的交易请求后,区块链解析该交易请求,从交易请求中获取客户端所需调用的智能合约的名字和调用智能合约的调用接口。在本实施例中,客户端通过RPC(Remote Procedure Call,远程过程调用协议)将交易请求发送给区块链。其中,交易请求中携带有所需调用的智能合约的名字、调用接口、业务类型和交易参数。客户端包括但不限于个人计算机、智能手机和便携式计算机等终端。区块链是由一系列区块组成的一条链,每个块上除了记录本块的数据还会记录上一块的哈希值,通过这种方式组成一条链。区块链的核心理念有两个,一个是密码学技术,另一个是去中心化思想,基于这两个理念做到区块链上的历史信息无法被篡改。一个区块由块头和块体组成,其中块头定义包括该区块高度,上一个区块的哈希值等重要字段,而块体主要存储交易数据。一个智能合约是一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议。在区块链中智能合约是指部署在区块链网络中的一段代码,各方都将按照代码规定逻辑执行其定义的协议。
步骤S20,获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约。
当区块链获取到智能合约的名字和调用接口后,区块链获取交易请求中的交易参数,并根据智能合约的名字和调用接口调用智能合约。其中,交易参数是交易请求对应业务中的数据。如当交易请求对应的业务是转账业务时,该交易参数为转账数额。当需要转账的金额为100元时,对应的交易参数为100。
进一步地,根据所述名字和所述调用接口调用所述智能合约的步骤包括:
步骤a,基于区块链中预先存储的名字与合约描述信息之间的映射关系,根据所述名字获取所述智能合约的地址和接口描述信息列表。
步骤b,在所述接口描述信息列表中查找所述调用接口的接口描述信息,根据所述地址和所述接口描述信息调用所述智能合约。
进一步地,区块链根据智能合约名字和调用接口调用智能合约的具体过程为:区块链获取预先存储的智能合约与合约描述信息之间的映射关系,根据智能合约的名字在映射关系中查找智能合约的地址和接口描述信息列表,以获取到智能合约的地址和接口描述信息列表。当获取到智能合约的接口描述信息列表后,区块链根据调用接口在所获取的接口描述信息列表查找与调用接口对应的接口描述信息。当区块链查找到调用接口的接口描述信息后,区块链根据该地址和接口描述信息调用智能合约。其中,区块链可通过接口标识在接口描述信息列表中查找到与调用接口对应的接口描述信息。
其中,合约描述信息包括智能合约的地址和接口描述信息列表。区块链可通过不同的调用接口调用智能合约,不同的调用接口对应着不同的接口描述信息。在接口描述信息列表中,存储着所有能调用智能合约的调用接口对应的接口描述信息。进一步地,合约描述信息还可包括智能合约的版本号。
进一步地,所述基于区块链的智能合约调用方法还包括:
步骤c,当侦测到更新所述映射关系的更新指令后,根据所述更新指令更新所述映射关系,得到更新后的所述映射关系。
步骤d,将更新后的所述映射关系同步到所述区块链的各个节点中。
区块链检测是否侦测到更新智能合约名字与合约描述信息之间映射关系的更新指令。当区块链侦测到更新映射关系的更新指令后,区块链根据更新指令更新该映射关系,得到更新后的映射关系,并将更新后的映射关系同步到其各个节点中,使映射关系在区块链的各个节点中是完全一致的。其中,该更新指令可由用户根据需要进行触发,或者当智能合约升级后,也会触发更新指令。因为当智能合约升级后,该智能合约对应的地址会改变。更新指令包括但不限于更改智能合约的名字、地址和接口描述信息等。
需要说明的是,对等网络中的每一个参与者就是一个节点,节点参与网络组建和数据交换。在区块链对等网络中,一个节点是指一个具有唯一身份的参与者,该节点具有一份完整的账本拷贝,具有参与区块链对等网络共识和账本维护的能力。
步骤S30,根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端。
当获取到交易参数后,区块链确定与交易请求对应的业务类型,根据该交易参数在智能合约中执行与所确定的业务类型对应的业务,得到交易结果,并将交易结果返回给客户端。需要说明的是,通过该交易请求,可确定交易请求对应的业务类型。如交易请求对应的内容可为“{"contract":"ClearBank","method":"trans","param":{"args":[“100”]}}”,其中,"ClearBank"表示智能合约的名字,"trans"表示业务类型,“100”表示交易参数。业务类型包括但不限于转账业务、支付业务和购买业务。
进一步地,步骤S30还包括:
步骤e,根据所述交易参数在所述智能合约中执行所述交易请求对应的业务。
步骤f,若所述业务执行成功,则生成交易成功的第一提示信息,并将所述第一提示信息返回给所述客户端。
步骤g,若所述业务执行失败,则生成交易失败的第二提示信息,并将所述第二提示信息返回给所述客户端。
当区块链根据交易参数在智能合约中执行交易请求对应的业务后,判断是否在智能合约中成功执行交易请求对应的业务,以生成对应的交易结果。当在智能合约中成功执行该业务后,区块链生成交易成功的第一提示信息,并将第一提示信息发送给客户端,以供客户端根据第一提示信息确认交易请求对应的业务成功执行。当该业务在智能合约中执行失败后,区块链生成交易失败的第二提示信息,并将第二提示信息发送给客户端,以供客户端根据第二提示信息确认交易请求对应的业务执行失败。进一步地,当客户端接收到区块链发送的第一提示信息或第二提示信息后,客户端将第一提示信息或第二提示信息显示在显示界面中,以供用户查看。
参照图3,在本实施例中,区块链包括交易框架、合约命名服务模块和存储智能合约的业务合约模块,合约命名服务模块用于记录智能合约的地址、接口描述信息和版本号等信息。以下以交易框架、合约命名服务模块和业务合约模块阐述基于区块链的智能合约调用方法:
客户端通过RPC接口将交易请求发送给区块链的交易框架。当交易框架接收到交易请求后,获取交易请求携带的智能合约的名字,并将智能合约的名字发送给合约命名服务模块。合约命名服务模块根据智能合约的名字和预先存储的映射关系获取智能合约的地址和接口描述信息列表,并将智能合约的地址和接口描述信息列表返回给交易框架。当交易框架接收到智能合约的地址和接口描述信息列表后,通过调用智能合约的调用接口在接口描述信息列表中确定该调用接口对应的接口描述信息,并根据该地址和接口描述信息向业务合约模块发送调用请求,并将交易请求中的交易参数发送给业务合约模块,以在业务合约模块中执行与交易请求对应的业务,得到交易结果。当业务合约模块得到交易结果后,将交易结果返回给交易框架。当交易框架得到交易结果后,将交易结果发送给客户端。
其中,合约命名服务模块中的命名服务是将名称映射为对象引用,这种“名称-引用”的关系称为名称绑定,提供这种名称绑定的服务就是命名服务。如DNS(domain namesystem,域名系统)是Internet为TCP/IP(Transmission Control Protocol/InternetProtocol,传输控制协议/因特网互联协议)提供的命名服务,DNS为IP地址服务提供主机名,通过便于识别和记忆的主机名来访问IP地址。
本实施例通过当接收到客户端发送的调用区块链中智能合约的交易请求后,根据所述交易请求获取所述智能合约的名字和调用所述智能合约的调用接口;获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约;根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端。实现了在调用区块链中的智能合约时,不需要知道该智能合约的地址和接口描述信息,只需要知道该智能合约的名字和调用接口,即可成功调用智能合约,简化了调用区块链中智能合约的调用流程,降低了智能合约的调用难度,且由于不需要知道接口描述信息,避免了由于接口描述信息错误而导致智能合约调用错误的情况出现。
进一步地,提出本发明基于区块链的智能合约调用方法第二实施例。
所述基于区块链的智能合约调用方法第二实施例与所述基于区块链的智能合约调用方法第一实施例的区别在于,参照图4,基于区块链的智能合约调用方法还包括:
步骤S40,检测所述交易请求中是否携带所述智能合约的版本号。
若所述交易请求中携带所述版本号,则步骤S20还包括:
步骤S21,获取所述交易请求中的交易参数,并根据所述名字、所述调用接口和所述版本号调用所述智能合约。
当区块链接收到客户端发送的交易请求后,区块链获取交易请求中的交易数据,并检测交易请求中是否携带有智能合约的版本号。需要说明的是,当智能合约升级后,就会存在不同版本的智能合约,一个版本的智能合约对应着一个版本号。
若检测到交易请求中携带有智能合约的版本号,区块链则根据智能合约的名字、调用智能合约的调用接口和版本号调用对应的智能合约。
本实施例通过在交易请求中携带版本号,实现了客户端可根据版本号选择不同版本的智能合约。
进一步地,提出本发明基于区块链的智能合约调用方法第三实施例。
所述基于区块链的智能合约调用方法第三实施例与所述基于区块链的智能合约调用方法第二实施例的区别在于,参照图5,基于区块链的智能合约调用方法还包括:
步骤S50,若所述交易请求中未携带所述版本号,则获取预设的流量分配规则。
步骤S20还包括:
步骤S22,获取所述交易请求中的交易参数,并基于所述流量分配规则,根据所述名字和所述调用接口调用不同版本的所述智能合约。
若检测到交易请求中未携带版本号,区块链则获取交易请求中的交易参数,以及获取预设的流量分配规则,并基于流量分配规则,根据智能合约的名字和调用接口调用不同版本的智能合约。其中,在预先设置好的流量分配规则中,高版本智能合约所占用的流量小于低版本智能合约所占用的流量。如当存在版本号为1和版本号为2的智能合约时,区块链根据流量分配规则将当前可用流量的90%分配给版本号为1的智能合约,将当前流量的10%分配给版本号为2的智能合约。
进一步地,当区块链调用到不同版本的智能合约后,区块链根据交易参数在不同版本的智能合约执行交易请求对应的业务,得到交易结果,并将交易结果返回给客户端。
需要说明的是,由于高版本的智能合约为升级后的新智能合约,区块链还不了解该新智能合约是否能成功执行交易请求对应的任务,因此,区块链会将大部分的可用流量分配给低版本的智能合约,将小部分的可用流量分配给高版本的智能合约,以保证交易请求对应任务执行的成功率。
在本实施例中,可根据交易请求对应业务的不同,为不同业务设置不同的流量分配规则。由于不会在同一时间得到两个新版本的智能合约,因此,本实施例中的高版本为新升级后的智能合约,低版本为比高版本低一个版本的智能合约。如当高版本为版本号为4的智能合约,则低版本为版本号为3的智能合约。
本实施例通过当交易请求中未携带智能合约的版本号后,根据预设的流量分配规则将当前可用流量分配给不同版本号的智能合约,实现了在不同版本号的智能合约中执行交易请求对应的业务。
进一步地,步骤S30还包括:
步骤h,根据所述流量分配规则在不同版本号的所述智能合约中执行所述交易请求对应的业务,并检测是否成功在高版本的所述智能合约中执行所述业务。
步骤i,若成功在高版本的所述智能合约中执行所述业务,则将低版本的所述智能合约所占用的流量转移至高版本的所述智能合约中,以在高版本的所述智能合约执行所述业务。
当区块链获取到预先设置好的流量分配规则后,区块链根据流量分配规则在不同版本号的智能合约中执行交易请求对应的业务,并检测是否成功在高版本的智能合约中执行交易请求对应的任务。若区块链成功在高版本的智能合约中执行交易请求对应的任务,区块链则将低版本的智能合约所占用的流量转移至高版本的智能合约中,以在高版本的智能合约中执行交易请求对应的任务。如当区块链确定在版本号为2的智能合约中成功执行交易请求对应的业务后,区块链将版本号为1的智能合约所占用的90%流量转移至版本号为2的智能合约中,以在版本号为2的智能合约中执行交易请求对应的业务。可以理解的是,高版本智能合约的性能优于低版本智能合约的性能,因此,在高版本智能合约中执行交易请求对应的业务,会得到更好的执行效果,如可能会提高执行交易请求对应业务的执行效率,或者提高执行交易请求对应业务的执行成功率等。
进一步地,提出本发明基于区块链的智能合约调用方法第四实施例。
所述基于区块链的智能合约调用方法第四实施例与所述基于区块链的智能合约调用方法第一、第二或第三实施例的区别在于,参照图6,基于区块链的智能合约调用方法还包括:
步骤S60,当所述智能合约中执行的业务量大于预设业务量时,将所述智能合约部署到至少两个区块链中,其中,同一智能合约在不同区块链中的调用接口是一致的。
区块链定时或者实时检测智能合约中执行的业务量是否大于预设业务量。当智能合约中的业务量大于预设业务量时,区块链将智能合约部署到其它一个或者多个区块链中。需要说明的是,当多条区块链部署同一智能合约后,该智能合约在各条区块链中对应的调用接口一致,因此,客户端只需要知道智能合约对应的名字和调用接口即可,无需存储该智能合约对应的接口描述信息和地址。其中,预设业务量可根据具体需要而设置,在本实施例中不做具体限制;对应部署的区块链个数也是预先设置好的。
需要说明的是,图6的执行顺序只是步骤S10、步骤S20、步骤S30和步骤S60的一种具体情况,在本实施例中不限制步骤S10、步骤S20、步骤S30和步骤S60之间执行的先后顺序。
本实施例通过将同一智能合约部署在各个区块链中,且同一智能合约在不同区块链中的名字和调用接口是一致的,实现了在多区块链的架构下,客户端不需要记录同一智能合约在不同区块链中的接口描述信息和地址等信息,减轻了客户端的负担。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有基于区块链的智能合约调用程序,所述基于区块链的智能合约调用程序被处理器执行时实现如上所述的基于区块链的智能合约调用方法步骤。
本发明计算机可读存储介质具体实施方式与上述基于区块链的智能合约调用方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于区块链的智能合约调用方法,其特征在于,所述基于区块链的智能合约调用方法包括以下步骤:
当接收到客户端发送的调用区块链中智能合约的交易请求后,根据所述交易请求获取所述智能合约的名字和调用所述智能合约的调用接口;
获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约;
根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端。
2.如权利要求1所述的基于区块链的智能合约调用方法,其特征在于,所述根据所述名字和所述调用接口调用所述智能合约的步骤之前,还包括:
检测所述交易请求中是否携带所述智能合约的版本号;
若所述交易请求中携带所述版本号,则所述获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约的步骤包括:
获取所述交易请求中的交易参数,并根据所述名字、所述调用接口和所述版本号调用所述智能合约。
3.如权利要求2所述的基于区块链的智能合约调用方法,其特征在于,所述检测所述交易请求中是否携带所述智能合约的版本号的步骤之后,还包括:
若所述交易请求中未携带所述版本号,则获取预设的流量分配规则;
所述获取所述交易请求中的交易参数,并根据所述名字和所述调用接口调用所述智能合约的步骤包括:
获取所述交易请求中的交易参数,并基于所述流量分配规则,根据所述名字和所述调用接口调用不同版本的所述智能合约。
4.如权利要求3所述的基于区块链的智能合约调用方法,其特征在于,所述根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端的步骤包括:
根据所述流量分配规则在不同版本号的所述智能合约中执行所述交易请求对应的业务,并检测是否成功在高版本的所述智能合约中执行所述业务;
若成功在高版本的所述智能合约中执行所述业务,则将低版本的所述智能合约所占用的流量转移至高版本的所述智能合约中,以在高版本的所述智能合约执行所述业务。
5.如权利要求1所述的基于区块链的智能合约调用方法,其特征在于,所述基于区块链的智能合约调用方法还包括:
当所述智能合约中执行的业务量大于预设业务量时,将所述智能合约部署到至少两个区块链中,其中,同一智能合约在不同区块链中的调用接口是一致的。
6.如权利要求1所述的基于区块链的智能合约调用方法,其特征在于,所述根据所述名字和所述调用接口调用所述智能合约的步骤包括:
基于区块链中预先存储的名字与合约描述信息之间的映射关系,根据所述名字获取所述智能合约的地址和接口描述信息列表;
在所述接口描述信息列表中查找所述调用接口的接口描述信息,根据所述地址和所述接口描述信息调用所述智能合约。
7.如权利要求6所述的基于区块链的智能合约调用方法,其特征在于,所述基于区块链的智能合约调用方法还包括:
当侦测到更新所述映射关系的更新指令后,根据所述更新指令更新所述映射关系,得到更新后的所述映射关系;
将更新后的所述映射关系同步到所述区块链的各个节点中。
8.如权利要求1至7任一项所述的基于区块链的智能合约调用方法,其特征在于,所述根据所述交易参数在所述智能合约中执行所述交易请求对应的业务,得到交易结果,并将所述交易结果返回给所述客户端的步骤包括:
根据所述交易参数在所述智能合约中执行所述交易请求对应的业务;
若所述业务执行成功,则生成交易成功的第一提示信息,并将所述第一提示信息返回给所述客户端;
若所述业务执行失败,则生成交易失败的第二提示信息,并将所述第二提示信息返回给所述客户端。
9.一种基于区块链的智能合约调用设备,其特征在于,所述基于区块链的智能合约调用设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的基于区块链的智能合约调用程序,所述基于区块链的智能合约调用程序被所述处理器执行时实现如权利要求1至8中任一项所述的基于区块链的智能合约调用方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于区块链的智能合约调用程序,所述基于区块链的智能合约调用程序被处理器执行时实现如权利要求1至8中任一项所述的基于区块链的智能合约调用方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810293385.3A CN108510389B (zh) | 2018-03-30 | 2018-03-30 | 基于区块链的智能合约调用方法、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810293385.3A CN108510389B (zh) | 2018-03-30 | 2018-03-30 | 基于区块链的智能合约调用方法、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108510389A true CN108510389A (zh) | 2018-09-07 |
CN108510389B CN108510389B (zh) | 2020-12-18 |
Family
ID=63380356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810293385.3A Active CN108510389B (zh) | 2018-03-30 | 2018-03-30 | 基于区块链的智能合约调用方法、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108510389B (zh) |
Cited By (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109034814A (zh) * | 2018-09-14 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 基于以太坊虚拟机的智能合约处理方法和装置 |
CN109272324A (zh) * | 2018-09-25 | 2019-01-25 | 深圳市元征科技股份有限公司 | 一种业务功能实现方法、系统、设备及计算机存储介质 |
CN109316752A (zh) * | 2018-09-12 | 2019-02-12 | 杭州复杂美科技有限公司 | 游戏部署方法、游戏方法、设备和存储介质 |
CN109359956A (zh) * | 2018-09-12 | 2019-02-19 | 杭州复杂美科技有限公司 | 合约配置方法、合约应用方法、设备和存储介质 |
CN109377222A (zh) * | 2018-10-16 | 2019-02-22 | 东莞市大易产业链服务有限公司 | 一种基于区块链技术的智能交易方法 |
CN109445820A (zh) * | 2018-10-29 | 2019-03-08 | 深圳市元征科技股份有限公司 | 一种智能合约升级方法、系统、设备及计算机存储介质 |
CN109472149A (zh) * | 2018-10-21 | 2019-03-15 | 浙江数值跳跃网络科技有限公司 | 一种基于区块链的数据运营方法 |
CN109544341A (zh) * | 2018-11-23 | 2019-03-29 | 中链科技有限公司 | 基于区块链的数字化检测方法及装置 |
CN109559229A (zh) * | 2018-11-30 | 2019-04-02 | 众安信息技术服务有限公司 | 基于区块链的更新智能合约组的方法 |
CN109615517A (zh) * | 2018-12-07 | 2019-04-12 | 北京瑞卓喜投科技发展有限公司 | 一种智能合约执行方法及智能合约执行系统 |
CN109801152A (zh) * | 2019-01-24 | 2019-05-24 | 中国农业银行股份有限公司 | 基于区块链的企业年金业务处理方法及系统 |
CN109829013A (zh) * | 2018-12-27 | 2019-05-31 | 上海点融信息科技有限责任公司 | 用于在区块链网络中运行智能合约的方法、存储介质、计算设备 |
CN109859038A (zh) * | 2018-12-26 | 2019-06-07 | 联动优势科技有限公司 | 一种区块链智能合约的生效方法及装置 |
CN109885612A (zh) * | 2018-12-26 | 2019-06-14 | 联动优势科技有限公司 | 区块链智能合约的同步生效方法及装置 |
CN109949156A (zh) * | 2019-02-28 | 2019-06-28 | 矩阵元技术(深圳)有限公司 | 一种区块链合约的数据处理方法及服务器 |
CN109995850A (zh) * | 2019-03-05 | 2019-07-09 | 深圳前海微众银行股份有限公司 | 一种区块链系统及区块链系统的交易处理方法 |
CN110060069A (zh) * | 2019-03-05 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 基于区块链的在线教育商品合约处理方法、装置和设备 |
CN110097364A (zh) * | 2019-04-30 | 2019-08-06 | 翟红鹰 | 区块链智能合约模块化生成方法、系统、终端及存储介质 |
CN110134510A (zh) * | 2019-03-28 | 2019-08-16 | 熊睿 | 基于智能合约的ram资源分配方法及装置 |
CN110177079A (zh) * | 2019-04-17 | 2019-08-27 | 北京百度网讯科技有限公司 | 智能合约的调用系统及调用方法 |
CN110264217A (zh) * | 2018-10-11 | 2019-09-20 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、设备及存储介质 |
CN110471921A (zh) * | 2019-08-08 | 2019-11-19 | 杭州复杂美科技有限公司 | 一种智能合约配置、调用和更新方法、设备及存储介质 |
CN110544097A (zh) * | 2019-09-06 | 2019-12-06 | 杭州复杂美科技有限公司 | 智能合约版本控制、调用和升级方法、设备及存储介质 |
WO2019101236A3 (en) * | 2019-03-04 | 2020-01-02 | Alibaba Group Holding Limited | Software interface for smart contracts |
CN111160911A (zh) * | 2019-12-31 | 2020-05-15 | 杭州趣链科技有限公司 | 一种面向区块链的智能合约调用频率控制方法 |
CN111273970A (zh) * | 2020-01-21 | 2020-06-12 | 腾讯科技(深圳)有限公司 | 智能合约的调用方法、装置、系统、介质及电子设备 |
CN111352835A (zh) * | 2020-02-25 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 一种智能合约的测试方法、装置、设备及存储介质 |
CN111782668A (zh) * | 2018-12-20 | 2020-10-16 | 阿里巴巴集团控股有限公司 | 数据结构的读取及更新方法、装置、电子设备 |
CN111813441A (zh) * | 2020-09-10 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 智能合约发布方法、装置、计算机可读介质及电子设备 |
WO2020215925A1 (zh) * | 2019-04-22 | 2020-10-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链的事件订阅的方法及装置 |
CN111861465A (zh) * | 2020-07-21 | 2020-10-30 | 国家计算机网络与信息安全管理中心 | 基于智能合约的检测方法及装置、存储介质、电子装置 |
CN111915304A (zh) * | 2019-05-08 | 2020-11-10 | 百度在线网络技术(北京)有限公司 | 数字元素的数据处理方法、装置、设备及存储介质 |
CN111932260A (zh) * | 2020-09-18 | 2020-11-13 | 杭州趣链科技有限公司 | 一种智能合约版本的管理方法、设备及可读存储介质 |
CN111932215A (zh) * | 2020-09-18 | 2020-11-13 | 杭州趣链科技有限公司 | 一种智能合约版本的管理方法、设备及可读存储介质 |
CN112118289A (zh) * | 2020-08-12 | 2020-12-22 | 北京大学 | 一种针对智能合约的自适应同步方法和系统 |
WO2021027612A1 (zh) * | 2019-08-13 | 2021-02-18 | 深圳前海微众银行股份有限公司 | 一种区块链中的交易执行方法及装置 |
CN112541756A (zh) * | 2019-09-20 | 2021-03-23 | 上海哔哩哔哩科技有限公司 | 区块链合约升级方法、装置、计算机设备及可读存储介质 |
CN112671878A (zh) * | 2020-12-17 | 2021-04-16 | 杭州趣链科技有限公司 | 一种区块链的信息订阅方法、装置、服务器和存储介质 |
CN112882774A (zh) * | 2021-02-08 | 2021-06-01 | 北京微芯区块链与边缘计算研究院 | 并行执行的智能合约芯片装置及方法、区块链节点装置 |
CN112929396A (zh) * | 2019-12-06 | 2021-06-08 | 顺丰科技有限公司 | 基于区块链的业务处理方法、装置、设备和可读存储介质 |
CN113220704A (zh) * | 2021-07-01 | 2021-08-06 | 支付宝(杭州)信息技术有限公司 | 在区块链中部署、查询和执行智能合约的方法及装置 |
CN113574483A (zh) * | 2019-03-27 | 2021-10-29 | 西门子股份公司 | 用于控制交易的执行的方法和控制系统 |
CN113711264A (zh) * | 2019-03-01 | 2021-11-26 | 中国银联股份有限公司 | 一种基于关联交易规则的交易管理方法及装置 |
WO2022134186A1 (zh) * | 2020-12-21 | 2022-06-30 | 杭州趣链科技有限公司 | 区块链的智能合约调用方法、装置、服务器和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145521A (zh) * | 2017-04-10 | 2017-09-08 | 杭州趣链科技有限公司 | 一种面向区块链多级智能合约的数据迁移方法 |
WO2017153495A1 (en) * | 2016-03-08 | 2017-09-14 | Appii Pty Ltd | A system and method for creating a database of independently validated educational and work experience profiles (curricula vitae) using blockchain smart contracts |
CN107329888A (zh) * | 2017-05-31 | 2017-11-07 | 深圳前海微众银行股份有限公司 | 智能合约操作码覆盖率计算方法和系统 |
CN107392767A (zh) * | 2017-07-28 | 2017-11-24 | 广州亦云信息技术股份有限公司 | 基于区块链的电力市场的交易方法、电子设备及存储介质 |
CN107832275A (zh) * | 2017-11-29 | 2018-03-23 | 北京欧链科技有限公司 | 区块链中智能合约标识的生成方法、装置及系统 |
-
2018
- 2018-03-30 CN CN201810293385.3A patent/CN108510389B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017153495A1 (en) * | 2016-03-08 | 2017-09-14 | Appii Pty Ltd | A system and method for creating a database of independently validated educational and work experience profiles (curricula vitae) using blockchain smart contracts |
CN107145521A (zh) * | 2017-04-10 | 2017-09-08 | 杭州趣链科技有限公司 | 一种面向区块链多级智能合约的数据迁移方法 |
CN107329888A (zh) * | 2017-05-31 | 2017-11-07 | 深圳前海微众银行股份有限公司 | 智能合约操作码覆盖率计算方法和系统 |
CN107392767A (zh) * | 2017-07-28 | 2017-11-24 | 广州亦云信息技术股份有限公司 | 基于区块链的电力市场的交易方法、电子设备及存储介质 |
CN107832275A (zh) * | 2017-11-29 | 2018-03-23 | 北京欧链科技有限公司 | 区块链中智能合约标识的生成方法、装置及系统 |
Cited By (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109316752A (zh) * | 2018-09-12 | 2019-02-12 | 杭州复杂美科技有限公司 | 游戏部署方法、游戏方法、设备和存储介质 |
CN109359956A (zh) * | 2018-09-12 | 2019-02-19 | 杭州复杂美科技有限公司 | 合约配置方法、合约应用方法、设备和存储介质 |
CN109034814B (zh) * | 2018-09-14 | 2020-10-16 | 百度在线网络技术(北京)有限公司 | 基于以太坊虚拟机的智能合约处理方法和装置 |
CN109034814A (zh) * | 2018-09-14 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 基于以太坊虚拟机的智能合约处理方法和装置 |
CN109272324A (zh) * | 2018-09-25 | 2019-01-25 | 深圳市元征科技股份有限公司 | 一种业务功能实现方法、系统、设备及计算机存储介质 |
CN110264217A (zh) * | 2018-10-11 | 2019-09-20 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、设备及存储介质 |
CN109377222A (zh) * | 2018-10-16 | 2019-02-22 | 东莞市大易产业链服务有限公司 | 一种基于区块链技术的智能交易方法 |
CN109377222B (zh) * | 2018-10-16 | 2021-09-17 | 东莞市大易产业链服务有限公司 | 一种基于区块链技术的智能交易方法 |
CN109472149A (zh) * | 2018-10-21 | 2019-03-15 | 浙江数值跳跃网络科技有限公司 | 一种基于区块链的数据运营方法 |
CN109445820A (zh) * | 2018-10-29 | 2019-03-08 | 深圳市元征科技股份有限公司 | 一种智能合约升级方法、系统、设备及计算机存储介质 |
CN109544341A (zh) * | 2018-11-23 | 2019-03-29 | 中链科技有限公司 | 基于区块链的数字化检测方法及装置 |
CN109544341B (zh) * | 2018-11-23 | 2023-07-07 | 苏州朗润创新知识产权运营有限公司 | 基于区块链的数字化检测方法及装置 |
CN109559229A (zh) * | 2018-11-30 | 2019-04-02 | 众安信息技术服务有限公司 | 基于区块链的更新智能合约组的方法 |
CN109615517A (zh) * | 2018-12-07 | 2019-04-12 | 北京瑞卓喜投科技发展有限公司 | 一种智能合约执行方法及智能合约执行系统 |
CN111782668A (zh) * | 2018-12-20 | 2020-10-16 | 阿里巴巴集团控股有限公司 | 数据结构的读取及更新方法、装置、电子设备 |
CN109885612A (zh) * | 2018-12-26 | 2019-06-14 | 联动优势科技有限公司 | 区块链智能合约的同步生效方法及装置 |
CN109859038A (zh) * | 2018-12-26 | 2019-06-07 | 联动优势科技有限公司 | 一种区块链智能合约的生效方法及装置 |
CN109829013A (zh) * | 2018-12-27 | 2019-05-31 | 上海点融信息科技有限责任公司 | 用于在区块链网络中运行智能合约的方法、存储介质、计算设备 |
CN109801152A (zh) * | 2019-01-24 | 2019-05-24 | 中国农业银行股份有限公司 | 基于区块链的企业年金业务处理方法及系统 |
CN109949156A (zh) * | 2019-02-28 | 2019-06-28 | 矩阵元技术(深圳)有限公司 | 一种区块链合约的数据处理方法及服务器 |
CN109949156B (zh) * | 2019-02-28 | 2024-03-01 | 矩阵元技术(深圳)有限公司 | 一种区块链合约的数据处理方法及服务器 |
CN113711264A (zh) * | 2019-03-01 | 2021-11-26 | 中国银联股份有限公司 | 一种基于关联交易规则的交易管理方法及装置 |
WO2019101236A3 (en) * | 2019-03-04 | 2020-01-02 | Alibaba Group Holding Limited | Software interface for smart contracts |
US10812255B2 (en) | 2019-03-04 | 2020-10-20 | Alibaba Group Holding Limited | Software interface for smart contracts |
TWI706284B (zh) * | 2019-03-04 | 2020-10-01 | 香港商阿里巴巴集團服務有限公司 | 用於智慧合約的軟體介面 |
CN109995850B (zh) * | 2019-03-05 | 2022-04-26 | 深圳前海微众银行股份有限公司 | 一种区块链系统及区块链系统的交易处理方法 |
CN110060069A (zh) * | 2019-03-05 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 基于区块链的在线教育商品合约处理方法、装置和设备 |
CN109995850A (zh) * | 2019-03-05 | 2019-07-09 | 深圳前海微众银行股份有限公司 | 一种区块链系统及区块链系统的交易处理方法 |
CN113574483A (zh) * | 2019-03-27 | 2021-10-29 | 西门子股份公司 | 用于控制交易的执行的方法和控制系统 |
CN110134510B (zh) * | 2019-03-28 | 2021-09-14 | 熊睿 | 基于智能合约的ram资源分配方法及装置 |
CN110134510A (zh) * | 2019-03-28 | 2019-08-16 | 熊睿 | 基于智能合约的ram资源分配方法及装置 |
CN110177079B (zh) * | 2019-04-17 | 2021-10-15 | 北京百度网讯科技有限公司 | 智能合约的调用系统及调用方法 |
CN110177079A (zh) * | 2019-04-17 | 2019-08-27 | 北京百度网讯科技有限公司 | 智能合约的调用系统及调用方法 |
WO2020215925A1 (zh) * | 2019-04-22 | 2020-10-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链的事件订阅的方法及装置 |
CN110097364A (zh) * | 2019-04-30 | 2019-08-06 | 翟红鹰 | 区块链智能合约模块化生成方法、系统、终端及存储介质 |
CN111915304A (zh) * | 2019-05-08 | 2020-11-10 | 百度在线网络技术(北京)有限公司 | 数字元素的数据处理方法、装置、设备及存储介质 |
CN111915304B (zh) * | 2019-05-08 | 2024-06-07 | 百度在线网络技术(北京)有限公司 | 数字元素的数据处理方法、装置、设备及存储介质 |
CN110471921A (zh) * | 2019-08-08 | 2019-11-19 | 杭州复杂美科技有限公司 | 一种智能合约配置、调用和更新方法、设备及存储介质 |
WO2021027612A1 (zh) * | 2019-08-13 | 2021-02-18 | 深圳前海微众银行股份有限公司 | 一种区块链中的交易执行方法及装置 |
CN110544097A (zh) * | 2019-09-06 | 2019-12-06 | 杭州复杂美科技有限公司 | 智能合约版本控制、调用和升级方法、设备及存储介质 |
CN112541756A (zh) * | 2019-09-20 | 2021-03-23 | 上海哔哩哔哩科技有限公司 | 区块链合约升级方法、装置、计算机设备及可读存储介质 |
CN112929396B (zh) * | 2019-12-06 | 2023-03-31 | 顺丰科技有限公司 | 基于区块链的业务处理方法、装置、设备和可读存储介质 |
CN112929396A (zh) * | 2019-12-06 | 2021-06-08 | 顺丰科技有限公司 | 基于区块链的业务处理方法、装置、设备和可读存储介质 |
CN111160911B (zh) * | 2019-12-31 | 2023-10-24 | 杭州趣链科技有限公司 | 一种面向区块链的智能合约调用频率控制方法 |
CN111160911A (zh) * | 2019-12-31 | 2020-05-15 | 杭州趣链科技有限公司 | 一种面向区块链的智能合约调用频率控制方法 |
CN111273970B (zh) * | 2020-01-21 | 2022-05-06 | 腾讯科技(深圳)有限公司 | 智能合约的调用方法、装置、系统、介质及电子设备 |
CN111273970A (zh) * | 2020-01-21 | 2020-06-12 | 腾讯科技(深圳)有限公司 | 智能合约的调用方法、装置、系统、介质及电子设备 |
CN111352835B (zh) * | 2020-02-25 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 一种智能合约的测试方法、装置、设备及存储介质 |
CN111352835A (zh) * | 2020-02-25 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 一种智能合约的测试方法、装置、设备及存储介质 |
CN111861465A (zh) * | 2020-07-21 | 2020-10-30 | 国家计算机网络与信息安全管理中心 | 基于智能合约的检测方法及装置、存储介质、电子装置 |
CN112118289A (zh) * | 2020-08-12 | 2020-12-22 | 北京大学 | 一种针对智能合约的自适应同步方法和系统 |
CN111813441A (zh) * | 2020-09-10 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 智能合约发布方法、装置、计算机可读介质及电子设备 |
WO2022052632A1 (zh) * | 2020-09-10 | 2022-03-17 | 腾讯科技(深圳)有限公司 | 智能合约发布方法、装置、计算机可读介质及电子设备 |
CN111813441B (zh) * | 2020-09-10 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 智能合约发布方法、装置、计算机可读介质及电子设备 |
CN111932215B (zh) * | 2020-09-18 | 2023-09-29 | 杭州趣链科技有限公司 | 一种智能合约版本的管理方法、设备及可读存储介质 |
WO2022057153A1 (zh) * | 2020-09-18 | 2022-03-24 | 杭州趣链科技有限公司 | 一种智能合约版本的管理方法、设备及可读存储介质 |
CN111932260A (zh) * | 2020-09-18 | 2020-11-13 | 杭州趣链科技有限公司 | 一种智能合约版本的管理方法、设备及可读存储介质 |
CN111932215A (zh) * | 2020-09-18 | 2020-11-13 | 杭州趣链科技有限公司 | 一种智能合约版本的管理方法、设备及可读存储介质 |
CN111932260B (zh) * | 2020-09-18 | 2021-01-26 | 杭州趣链科技有限公司 | 一种智能合约版本的管理方法、设备及可读存储介质 |
CN112671878A (zh) * | 2020-12-17 | 2021-04-16 | 杭州趣链科技有限公司 | 一种区块链的信息订阅方法、装置、服务器和存储介质 |
CN112671878B (zh) * | 2020-12-17 | 2023-03-24 | 杭州趣链科技有限公司 | 一种区块链的信息订阅方法、装置、服务器和存储介质 |
WO2022134186A1 (zh) * | 2020-12-21 | 2022-06-30 | 杭州趣链科技有限公司 | 区块链的智能合约调用方法、装置、服务器和存储介质 |
CN112882774A (zh) * | 2021-02-08 | 2021-06-01 | 北京微芯区块链与边缘计算研究院 | 并行执行的智能合约芯片装置及方法、区块链节点装置 |
CN113220704A (zh) * | 2021-07-01 | 2021-08-06 | 支付宝(杭州)信息技术有限公司 | 在区块链中部署、查询和执行智能合约的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108510389B (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108510389A (zh) | 基于区块链的智能合约调用方法、设备及可读存储介质 | |
CN103841134B (zh) | 基于api发送、接收信息的方法、装置及系统 | |
CN113014651B (zh) | 灰度发布方法、应用服务器及灰度发布系统 | |
CN110166409A (zh) | 设备接入方法、相关平台及计算机存储介质 | |
CN108170740A (zh) | 数据迁移方法、系统和计算机可读存储介质 | |
CN110519401A (zh) | 提高网络访问成功率的方法、装置、设备及存储介质 | |
CN108737325A (zh) | 一种多租户数据隔离方法、装置及系统 | |
CN108335237A (zh) | 立案方法、终端和计算机可读存储介质 | |
CN109639636A (zh) | 业务数据转发、业务数据处理方法、装置及电子设备 | |
CN107920138A (zh) | 一种用户统一标识生成方法、装置及系统 | |
CN109802916A (zh) | 资源转移方法、系统、服务器和计算机可读存储介质 | |
CN109379448A (zh) | 一种文件分布式部署方法、装置、电子设备及存储介质 | |
CN106357791A (zh) | 业务处理方法、装置及系统 | |
CN109639598A (zh) | 基于微服务的请求处理方法、服务器、存储介质及装置 | |
CN109710214A (zh) | 电子签约软件的组建方法、装置、终端设备及存储介质 | |
CN110287266A (zh) | 一种分布式系统及数据处理方法 | |
CN107067559A (zh) | 一种实现充电桩互联充电的方法和装置 | |
CN114064062B (zh) | 基于Kubernetes平台和负载均衡组件的缺省灰度发布方法和装置 | |
CN108966316A (zh) | 展示多媒体资源、预测连接等待时长的方法、装置及设备 | |
CN101431755B (zh) | 一种实现用户登录的系统及方法 | |
CN110324317A (zh) | 业务处理方法、装置、设备及存储介质 | |
CN109218447A (zh) | 媒体文件分发方法及文件分发平台 | |
CN108805587A (zh) | 一种客户信息处理方法、装置、介质和电子设备 | |
CN108696864A (zh) | 虚拟号码请求和发送方法、装置及存储介质 | |
CN112633953B (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 |