CN113379550B - 区块执行方法、计算机设备和存储介质 - Google Patents

区块执行方法、计算机设备和存储介质 Download PDF

Info

Publication number
CN113379550B
CN113379550B CN202110729026.XA CN202110729026A CN113379550B CN 113379550 B CN113379550 B CN 113379550B CN 202110729026 A CN202110729026 A CN 202110729026A CN 113379550 B CN113379550 B CN 113379550B
Authority
CN
China
Prior art keywords
transaction
chain
intelligent contract
block
executing
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.)
Active
Application number
CN202110729026.XA
Other languages
English (en)
Other versions
CN113379550A (zh
Inventor
何正军
王志文
吴思进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Fuzamei Technology Co Ltd
Original Assignee
Hangzhou Fuzamei Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN202110729026.XA priority Critical patent/CN113379550B/zh
Publication of CN113379550A publication Critical patent/CN113379550A/zh
Application granted granted Critical
Publication of CN113379550B publication Critical patent/CN113379550B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Economics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明提供一种区块执行方法、计算机设备和存储介质,涉及区块链等技术领域,该方法包括:区块链模块接收第一交易,第一交易为第一类交易;第一链外智能合约缓存执行第一交易所需获取的第一索引集合;区块链模块缓存待执行的第一区块的第二交易;第二链外智能合约筛选出当前链外智能合约可执行的各第二交易,查找出执行各第二交易所需获取的第二索引集合,根据第二索引集合、区块链数据读写接口从区块链上获得执行各第二交易的数据集合,并根据数据集合执行各第二交易以得到执行结果集合;区块链模块根据第一执行结果集合执行第一区块。本申请使得区块链开发更便利。

Description

区块执行方法、计算机设备和存储介质
技术领域
本申请涉及区块链技术领域,具体涉及一种区块执行方法、计算机设备和存储介质。
背景技术
智能合约语言仅支持部分语言,如Solidity、WASM,且存在学习门槛,入门难度大的问题;区块链开发者如果想要在链上增加新的智能合约语言,需要开发相对应的解释执行,比如JVM等,难度大,成本高。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种更利于开发区块链的区块执行方法、设备和存储介质。
第一方面,本发明提供一种适用于运行区块链节点的设备的区块执行方法,各区块链节点均部署有智能合约适配器模块,各运行区块链节点的设备上在区块链程序外均配置有若干相同的链外智能合约,链外智能合约为用链外的语言编写的智能合约,上述方法包括:
区块链模块接收第一交易,在判断出第一交易为需要调用链外智能合约才能执行的第一类交易时,将第一交易发送至智能合约适配器模块;
智能合约适配器模块向执行第一交易的第一链外智能合约发送第一通知信息;
第一链外智能合约接收第一通知信息后,缓存执行第一交易所需获取的第一索引集合;
区块链模块对待执行的第一区块的各第二交易分别执行:在判断出第二交易为第一类交易时,缓存第二交易;
区块链模块将各第二交易发送至智能合约适配器模块;
智能合约适配器模块,向执行各第二交易对应的若干第二链外智能合约发送第二通知信息;
第二链外智能合约接收第二通知信息后,筛选出当前链外智能合约可执行的各第二交易,查找出执行当前链外智能合约可执行的各第二交易所需获取的第二索引集合,根据第二索引集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各第二交易的第一数据集合,并根据第一数据集合执行当前链外智能合约可执行的各第二交易以得到第一执行结果集合;
智能合约适配器模块获取各第二链外智能合约的第一执行结果集合,并将各第一执行结果集合发送至区块链模块;
区块链模块根据各第一执行结果集合执行第一区块。
第二方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的区块执行方法。
第三方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的区块执行方法。
本发明诸多实施例提供的区块执行方法、计算机设备和存储介质通过区块链模块接收第一交易,在判断出第一交易为需要调用链外智能合约才能执行的第一类交易时,将第一交易发送至智能合约适配器模块;智能合约适配器模块向执行第一交易的第一链外智能合约发送第一通知信息;第一链外智能合约接收第一通知信息后,缓存执行第一交易所需获取的第一索引集合;区块链模块对待执行的第一区块的各第二交易分别执行:在判断出第二交易为第一类交易时,缓存第二交易;区块链模块将各第二交易发送至智能合约适配器模块;智能合约适配器模块向执行各第二交易对应的若干第二链外智能合约发送第二通知信息;第二链外智能合约接收第二通知信息后,筛选出当前链外智能合约可执行的各第二交易,查找出执行当前链外智能合约可执行的各第二交易所需获取的第二索引集合,根据第二索引集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各第二交易的第一数据集合,并根据第一数据集合执行当前链外智能合约可执行的各第二交易以得到第一执行结果集合;智也适配器模板获取各第二链外智能合约的第一执行结果集合,并将各第一执行结果集合发送至区块链模块;区块链模块根据各第一执行结果集合执行第一区块的方法,使得区块链开发更便利。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种区块执行方法的流程图。
图2为本发明一实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1为本发明一实施例提供的一种区块执行方法的流程图。如图1所示,在本实施例中,本发明提供一种适用于运行区块链节点的设备的区块执行方法,各区块链节点均部署有智能合约适配器模块,各运行区块链节点的设备上在区块链程序外均配置有若干相同的链外智能合约,链外智能合约为用链外的语言编写的智能合约,上述方法包括:
S11:区块链模块接收第一交易,在判断出第一交易为需要调用链外智能合约才能执行的第一类交易时,将第一交易发送至智能合约适配器模块;
S12:智能合约适配器模块向执行第一交易的第一链外智能合约发送第一通知信息;
S13:第一链外智能合约接收第一通知信息后,缓存执行第一交易所需获取的第一索引集合;
S14:区块链模块对待执行的第一区块的各第二交易分别执行:在判断出第二交易为第一类交易时,缓存第二交易;
S15:区块链模块将各第二交易发送至智能合约适配器模块;
S16:智能合约适配器模块向执行各第二交易对应的若干第二链外智能合约发送第二通知信息;
S17:第二链外智能合约接收第二通知信息后,筛选出当前链外智能合约可执行的各第二交易,查找出执行当前链外智能合约可执行的各第二交易所需获取的第二索引集合,根据第二索引集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各第二交易的第一数据集合,并根据第一数据集合执行当前链外智能合约可执行的各第二交易以得到第一执行结果集合;
S18:智能合约适配器模块获取各第二链外智能合约的第一执行结果集合,并将各第一执行结果集合发送至区块链模块;
S19:区块链模块根据各第一执行结果集合执行第一区块。
具体地,以在判断出第一交易为需要调用链外智能合约才能执行的第一类交易时,将第一交易发送至智能合约适配器模块包括“根据区块链上是否部署有第一交易所调用的第一合约判断第一交易是否为需要调用链外智能合约才能执行的第一类交易;在判断出第一交易为第一类交易时,将第一交易发送至智能合约适配器模块”,以及,缓存执行第一交易所需获取的第一索引集合包括“缓存执行第一交易所需获取的第一键集合;其中,第一键集合中的各第一键包括第一交易的第一交易哈希”,查找出执行当前链外智能合约可执行的各第二交易所需获取的第二索引集合,根据第二索引集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各第二交易的第一数据集合,并根据第一数据集合执行当前链外智能合约可执行的各第二交易以得到第一执行结果集合包括“根据当前链外智能合约可执行的各第二交易的第二交易哈希查找执行当前链外智能合约可执行的各第二交易所需获取的第二键集合;根据第二键集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各第二交易的第一值集合,并根据第一值集合执行当前链外智能合约可执行的各第二交易以得到第一执行结果集合”;以及,第一通知信息包括第一交易,第二通知信息包括各第二交易为例;
假设运行区块链节点的设备为N1~N10,其上分别运行有区块链节点n1~n10;n1~n10本身部署有使用语言L1编写的智能合约C1_L1~C10_L1;在区块链程序外,N1~N10还分别配置有用语言L2编写的C1_L2~C10_L2、用语言L3编写的C1_L3~C10_L3、用语言L4编写的C1_L4~C10_L4;n1~n10分别先后收到tx1、tx2,执行tx1所需调用的智能合约是C1_L1,执行tx2所需调用的智能合约是C10_L4;待执行的区块为block(100),block(100)包括tx11~tx20,执行tx11~tx15所需调用的智能合约是C1_L1,执行tx16~tx18所需调用的智能合约是C10_L4,执行tx19~tx20所需调用的智能合约是C10_L3;
对于tx1:
区块链模块接收tx1,由于执行tx1所需调用的智能合约是C1_L1,C1_L1为n1~n10本身部署的智能合约,则按照现有技术进行操作;
对于tx2:
区块链模块执行步骤S11,区块链模块接收tx2,由于执行tx2所需调用的智能合约是C10_L4,C10_L4是区块链程序外的链外智能合约,则将tx1发送至智能合约适配器模块;
智能合约适配器模块执行步骤S12,向C10_L4发送tx2;
C10_L4执行步骤S13,接收tx2后,缓存执行tx2所需获取的索引集合,假设为{key1,key2};
区块链模块执行步骤S14,由于block(100)包括tx11~tx20,执行tx11~tx15所需调用的智能合约是C1_L1,执行tx16~tx18所需调用的智能合约是C10_L4,执行tx19~tx20所需调用的智能合约是C10_L3,则缓存tx16~tx20;
区块链模块执行步骤S15,将tx16~tx20发送至智能合约适配器模块;
智能合约适配器模块执行步骤S16,向C10_L4和C10_L3发送tx16~tx20;
对于C10_L4:
C10_L4执行步骤S17,接收tx16~tx20后,筛选出当前链外智能合约可执行的tx16~tx18,查找执行tx16~tx18所需获取的索引集合,假设为{key10~key20},根据{key10~key20}、区块链数据读写接口从区块链上获得执行tx16~tx18的数据集合{value10~value20},并根据{value10~value20}执行tx16~tx18以得到执行tx16~tx18的执行结果集合;
对于C10_L3:
C10_L3执行步骤S17,接收tx16~tx20后,筛选出当前链外智能合约可执行的tx19~tx20,查找执行tx19~tx20所需获取的索引集合,假设为{key21~key25},根据{key21~key25}、区块链数据读写接口从区块链上获得执行tx19~tx20的数据集合{value21~value25},并根据{value21~value25}执行tx19~tx20以得到执行tx19~tx20的执行结果集合;
智能合约适配器模块执行步骤S18,获取C10_L4和C10_L3的执行结果集合,并将C10_L4和C10_L3的执行结果集合发送至区块链模块;
区块链模块执行步骤S19,根据C10_L4和C10_L3的执行结果集合执行block(100)。
在更多实施例中,“在判断出第一交易为需要调用链外智能合约才能执行的第一类交易时,将第一交易发送至智能合约适配器模块”步骤还可以根据实际需求进行配置,例如配置为“根据第一交易的链外智能合约标识判断第一交易是否为需要调用链外智能合约才能执行的第一类交易;在判断出第一交易为第一类交易时,将第一交易发送至智能合约适配器模块”,可实现相同的技术效果。
在上述实施例中,所选用的数据库为kv数据库,所以索引集合为key集合,数据集合为值集合(即value集合),在更多实施例中,区块链数据存储所选用的数据库根据实际需求进行配置,可实现相同的技术效果。
在更多实施例中,第一通知信息包括第一交易的第一交易哈希,第二通知信息包括各第二交易的第二交易哈希;则第一链外智能合约接收第一交易哈希后可以根据第一交易哈希从区块链模块或智能合约适配器模块拉取第一交易,第二链外智能合约在接收第二通知信息后可以根据第二交易哈希从区块链模块或智能合约适配器模块拉取各第二交易,可实现相同的技术效果。
在更多实施例中,第二通知信息也可以根据实际需求配置为第二链外智能合约对应的第二交易,或第二链外智能合约对应的第二交易的第二哈希值;此时,“智能合约适配器模块向执行各第二交易对应的若干第二链外智能合约发送第二通知信息”应当配置为“智能合约适配器模块向各第二链外智能合约发送相应的第二通知信息”;以及,“第二链外智能合约接收第二通知信息后,筛选出当前链外智能合约可执行的各第二交易,查找出执行当前链外智能合约可执行的各第二交易所需获取的第二索引集合”应当配置为“第二链外智能合约接收第二通知信息后,查找出所接收的各第二交易所需获取的第二索引集合”,可实现相同的技术效果。
本领域技术人员应当理解,若智能合约适配器模块无法找到一笔所缓存的第二交易对应的第二链外智能合约时,该笔第二交易执行失败。
本领域技术人员应当理解“,智能合约适配器模块向执行各第二交易对应的若干第二链外智能合约发送第二通知信息”还可以根据实际需求进行配置,例如配置为“智能合约适配器模块向各链外智能合约发送第二通知信息”,后续仍然只有C10_L4和C10_L3会执行步骤S17;但此方法由于需要向各链外智能合约发送第二通知信息,会占用较大的网络开销。
本领域技术人员应当理解,当前方案更适合联盟链和私链,因为联盟链和私链的各区块链节点的内存池所缓存的交易基本相同;而在公链中,由于网络等原因,不同区块链节点内存池中的交易有一定的差距,假设待执行的区块为block(101),block(101)包括第一类交易tx21~tx25,当前设备的链外智能合约缓存有执行tx21~tx24所需获取的索引集合,则链外智能合约应当先缓存执行tx25的索引集合,再根据tx21~tx25的索引集合、区块链数据读写接口从公链上获得执行tx21~tx25的数据集合。在当前方案用于联盟链和私链时,基本可以认为不存在“当链外智能合约应当先缓存执行tx25的索引集合”的情况,相较于公链,节省了网络开销。
上述实施例使得区块链开发更便利。
优选地,在判断出第一交易为需要调用链外智能合约才能执行的第一类交易时,将第一交易发送至智能合约适配器模块包括:
根据区块链上是否部署有第一交易所调用的第一合约判断第一交易是否为需要调用链外智能合约才能执行的第一类交易;
在判断出第一交易为第一类交易时,将第一交易发送至智能合约适配器模块。
上述实施例的区块执行原理可参考图1所示的方法,此处不再赘述。
优选地,缓存执行第一交易所需获取的第一索引集合包括:
缓存执行第一交易所需获取的第一键集合;其中,第一键集合中的各第一键包括第一交易的第一交易哈希;
查找出执行当前链外智能合约可执行的各第二交易所需获取的第二索引集合,根据第二索引集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各第二交易的第一数据集合,并根据第一数据集合执行当前链外智能合约可执行的各第二交易以得到第一执行结果集合包括:
根据当前链外智能合约可执行的各第二交易的第二交易哈希查找执行当前链外智能合约可执行的各第二交易所需获取的第二键集合;
根据第二键集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各第二交易的第一值集合,并根据第一值集合执行当前链外智能合约可执行的各第二交易以得到第一执行结果集合。
上述实施例的区块执行原理可参考图1所示的方法,此处不再赘述。
优选地,第一通知信息包括第一交易的第一交易哈希,第二通知信息包括各第二交易的第二交易哈希。
上述实施例的区块执行原理可参考图1所示的方法,此处不再赘述。
优选地,第一通知信息包括第一交易,第二通知信息包括各第二交易。
上述实施例的区块执行原理可参考图1所示的方法,此处不再赘述。
图2为本发明一实施例提供的一种计算机设备的结构示意图。
如图2所示,作为另一方面,本申请还提供了一种计算机设备,包括一个或多个中央处理单元(CPU)201,其可以根据存储在只读存储器(ROM)202中的程序或者从存储部分208加载到随机访问存储器(RAM)203中的程序而执行各种适当的动作和处理。在RAM203中,还存储有计算机设备操作所需的各种程序和数据。CPU201、ROM202以及RAM203通过总线204彼此相连。输入/输出(I/O)接口205也连接至总线204。
以下部件连接至I/O接口205:包括键盘、鼠标等的输入部分206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分207;包括硬盘等的存储部分208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分209。通信部分209经由诸如因特网的网络执行通信处理。驱动器210也根据需要连接至I/O接口205。可拆卸介质211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器210上,以便于从其上读出的计算机程序根据需要被安装入存储部分208。
特别地,根据本公开的实施例,上述任一实施例描述的方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行上述任一方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分209从网络上被下载和安装,和/或从可拆卸介质211被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入计算机设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请提供的方法。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的***来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (7)

1.一种区块执行方法,其特征在于,各区块链节点均部署有智能合约适配器模块,各运行区块链节点的设备上在区块链程序外均配置有若干相同的链外智能合约,所述链外智能合约为用链外的语言编写的智能合约,所述方法适用于运行区块链节点的设备,所述方法包括:
区块链模块接收第一交易,在判断出所述第一交易为需要调用链外智能合约才能执行的第一类交易时,将所述第一交易发送至所述智能合约适配器模块;
所述智能合约适配器模块向执行所述第一交易的第一链外智能合约发送第一通知信息;
所述第一链外智能合约接收所述第一通知信息后,缓存执行所述第一交易所需获取的第一索引集合;
所述区块链模块对待执行的第一区块的各第二交易分别执行:在判断出所述第二交易为所述第一类交易时,缓存所述第二交易;
所述区块链模块将各所述第二交易发送至所述智能合约适配器模块;
所述智能合约适配器模块向执行各所述第二交易对应的若干第二链外智能合约发送第二通知信息;
所述第二链外智能合约接收所述第二通知信息后,筛选出当前链外智能合约可执行的各所述第二交易,查找出执行当前链外智能合约可执行的各所述第二交易所需获取的第二索引集合,根据所述第二索引集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各所述第二交易的第一数据集合,并根据所述第一数据集合执行当前链外智能合约可执行的各所述第二交易以得到第一执行结果集合;
所述智能合约适配器模块获取各所述第二链外智能合约的第一执行结果集合,并将各所述第一执行结果集合发送至所述区块链模块;
所述区块链模块根据各所述第一执行结果集合执行所述第一区块。
2.根据权利要求1所述的方法,其特征在于,所述在判断出所述第一交易为需要调用链外智能合约才能执行的第一类交易时,将所述第一交易发送至智能合约适配器模块包括:
根据区块链上是否部署有所述第一交易所调用的第一合约判断所述第一交易是否为需要调用链外智能合约才能执行的第一类交易;
在判断出所述第一交易为所述第一类交易时,将所述第一交易发送至智能合约适配器模块。
3.根据权利要求1所述的方法,其特征在于,所述缓存执行所述第一交易所需获取的第一索引集合包括:
缓存执行所述第一交易所需获取的第一键集合;其中,所述第一键集合中的各第一键包括所述第一交易的第一交易哈希;
所述查找出执行当前链外智能合约可执行的各所述第二交易所需获取的第二索引集合,根据所述第二索引集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各所述第二交易的第一数据集合,并根据所述第一数据集合执行当前链外智能合约可执行的各所述第二交易以得到第一执行结果集合包括:
根据当前链外智能合约可执行的各所述第二交易的第二交易哈希查找执行当前链外智能合约可执行的各所述第二交易所需获取的第二键集合;
根据所述第二键集合、区块链数据读写接口从区块链上获得执行当前链外智能合约可执行的各所述第二交易的第一值集合,并根据所述第一值集合执行当前链外智能合约可执行的各所述第二交易以得到第一执行结果集合。
4.根据权利要求1所述的方法,其特征在于,所述第一通知信息包括所述第一交易的第一交易哈希,所述第二通知信息包括各所述第二交易的第二交易哈希。
5.根据权利要求1所述的方法,其特征在于,所述第一通知信息包括所述第一交易,所述第二通知信息包括各所述第二交易。
6.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-5中任一项所述的方法。
7.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的方法。
CN202110729026.XA 2021-06-29 2021-06-29 区块执行方法、计算机设备和存储介质 Active CN113379550B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110729026.XA CN113379550B (zh) 2021-06-29 2021-06-29 区块执行方法、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110729026.XA CN113379550B (zh) 2021-06-29 2021-06-29 区块执行方法、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN113379550A CN113379550A (zh) 2021-09-10
CN113379550B true CN113379550B (zh) 2023-04-14

Family

ID=77579925

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110729026.XA Active CN113379550B (zh) 2021-06-29 2021-06-29 区块执行方法、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN113379550B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110264204A (zh) * 2019-06-06 2019-09-20 杭州趣链科技有限公司 一种基于智能合约定序的区块链跨链交易方法
CN111383031A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 一种区块链中的智能合约执行方法、***和电子设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11068470B2 (en) * 2018-11-09 2021-07-20 Innoplexus Ag System and method for interoperability of blockchains
US11170376B2 (en) * 2019-05-29 2021-11-09 Vivigle, Inc. Informational and analytical system and method for ensuring the level of trust, control and secure interaction of counterparties when using electronic currencies and contracts
CN111401903B (zh) * 2020-06-03 2020-09-11 腾讯科技(深圳)有限公司 区块链消息处理方法、装置、计算机以及可读存储介质
CN111708825B (zh) * 2020-06-11 2021-08-24 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、设备及可读存储介质
CN112084234B (zh) * 2020-09-03 2024-05-17 ***股份有限公司 数据获取方法、装置、设备和介质
CN112583585B (zh) * 2020-12-09 2022-06-28 杭州复杂美科技有限公司 交易执行方法、设备和存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110264204A (zh) * 2019-06-06 2019-09-20 杭州趣链科技有限公司 一种基于智能合约定序的区块链跨链交易方法
CN111383031A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 一种区块链中的智能合约执行方法、***和电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
区块链的税收智能合约设计;陈宇翔等;《通信技术》(第06期);全文 *

Also Published As

Publication number Publication date
CN113379550A (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
US10320879B2 (en) Software service discovery and service evolution management
CN108846753B (zh) 用于处理数据的方法和装置
US11243921B2 (en) Database expansion system, equipment, and method of expanding database
CN112583585B (zh) 交易执行方法、设备和存储介质
US10963298B2 (en) Method, device and computer-readable for managing virtual machines
CN108011949B (zh) 用于获取数据的方法和装置
CN111666293A (zh) 数据库访问方法和装置
CN109614312A (zh) 测试用例生成方法、装置、电子设备及存储介质
CN110580305A (zh) 生成标识符的方法、装置、***和介质
US8600960B2 (en) Processing proposed changes to data
CN112416425A (zh) App构建方法、装置、计算机设备及存储介质
CN114816393B (zh) 信息生成方法、装置、设备以及存储介质
CN109992279A (zh) 配置数据更新方法、装置、计算设备及存储介质
CN113379550B (zh) 区块执行方法、计算机设备和存储介质
CN113779452A (zh) 数据处理方法、装置、设备及存储介质
US20230208659A1 (en) Blockchain apparatus and method for mobile edge computing
CN113590611B (zh) 区块执行方法、计算机设备和存储介质
CN113254819B (zh) 一种页面渲染方法、***、设备和存储介质
CN112866365A (zh) 节点通信方法、计算机设备和存储介质
CN111796845B (zh) 数据库升级方法、状态数据查询方法、设备和存储介质
CN110535922B (zh) 状态数据存储方法和平行链区块生成方法
CN111858770B (zh) 共识方法、设备和存储介质
CN113806229B (zh) 接口变更的测试脚本复用方法、装置、设备、介质及产品
CN116305288B (zh) 一种隔离数据库资源的方法、装置、设备和存储介质
CN113760835B (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