CN113095940B - 基于同构多链的交易处理方法、区块链系统、设备及介质 - Google Patents
基于同构多链的交易处理方法、区块链系统、设备及介质 Download PDFInfo
- Publication number
- CN113095940B CN113095940B CN202110473782.0A CN202110473782A CN113095940B CN 113095940 B CN113095940 B CN 113095940B CN 202110473782 A CN202110473782 A CN 202110473782A CN 113095940 B CN113095940 B CN 113095940B
- Authority
- CN
- China
- Prior art keywords
- transaction
- processed
- chain
- main
- account
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 238000012545 processing Methods 0.000 claims abstract description 46
- 238000000034 method Methods 0.000 claims abstract description 23
- 239000003999 initiator Substances 0.000 claims abstract description 22
- 238000004806 packaging method and process Methods 0.000 claims abstract description 6
- 238000012795 verification Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 10
- 230000000977 initiatory effect Effects 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 238000012856 packing Methods 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 6
- 230000000670 limiting effect Effects 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 230000002860 competitive effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Economics (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明涉及区块链技术领域,尤其涉及一种基于同构多链的交易处理方法、区块链系统、设备及介质。该基于同构多链的交易处理方法应用在同构多链的区块链系统中,所述区块链系统包括多个主账户;每一所述主账户对应维护一条子链;所述多个主账户间可相互通信;该方法包括获取待处理交易,并基于待处理交易对应的交易接收方和交易发起方,确定处理待处理交易的目标主账户;通过目标主账户处理待处理交易,并将待处理交易广播至其他主账户,使其他主账户验证待处理交易;基于PBFT共识算法对待处理交易进行共识;若待处理交易共识通过,则将待处理交易打包至新区块,并将新区块记录在目标主账户维护的子链上,该方法可有效提高区块链系统的吞吐量。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于同构多链的交易处理方法、区块链系统、设备及介质。
背景技术
现有的区块链在拓扑结构的架构设计上基本以单链设计为主,结合若干不同的共识机制(例如,开放式POW、开放式POS、封闭式POS、封闭式BFT等),以取得链上一致性的状态变更共识,然而为达到链上一致性的状态变更共识,区块链必然需要付出一定的代价以换取状态的确定性,或者在某些开放性系统中取得共识的分散程度(或去中心化程度)。
这一基本事实导致所有单链账本结构的区块链设计中,其共识的去中心化程度、能耗、吞吐能力与可扩展性存在不可调和的矛盾。例如在当今全球最被广泛接受的应用型公有链以太坊(Ethereum)为例:由于以太坊需要基于POW(工作量证明)机制来更新块的全局状态,结合其15秒钟左右的出块时间以及额定块容量,以太坊处理交易的能力是十分有限的(约100-200TPS),然而POW共识的能耗十分巨大,使得区块的确认共识达成的周期较长,从而导致传统区块链系统在处理一笔交易时,需要耗费大量的时间。
发明内容
本发明实施例提供一种基于同构多链的交易处理方法、区块链系统、设备及介质,以解决传统区块链系统通量受制于其串行单链结构,导致区块链系统的吞吐量较低的问题。
一种基于同构多链的交易处理方法,应用在同构多链的区块链系统中,所述区块链系统包括多个主账户;每一所述主账户对应维护一条子链;所述多个主账户间可相互通信;所述基于同构多链的交易处理方法包括:
获取待处理交易,并基于所述待处理交易对应的交易接收方和交易发起方,确定处理所述待处理交易的目标主账户;
通过所述目标主账户处理所述待处理交易,并将所述待处理交易广播至其他主账户,使其他主账户验证所述待处理交易;
基于PBFT共识算法对所述待处理交易进行共识,以确定所述待处理交易是否可被记录在所述目标主账户维护的子链上;
若所述待处理交易共识通过,则将所述待处理交易打包至新区块,并将所述新区块记录在所述目标主账户维护的子链上。
一种区块链系统,所述区块链系统包括多个主账户;每一所述主账户对应维护一条子链;所述多个主账户间可相互通信;所述同构多链的区块链系统包括:
待处理交易获取模块,用于获取待处理交易,并基于所述待处理交易对应的交易接收方和交易发起方,确定处理所述待处理交易的目标主账户;
交易分流处理模块,用于通过所述目标主账户处理所述待处理交易,并将所述待处理交易广播至其他主账户,使其他主账户验证所述待处理交易;
共识模块,用于基于PBFT共识算法对所述待处理交易进行共识,以确定所述待处理交易是否可被记录在所述目标主账户维护的子链;
区块上链模块,用于若所述待处理交易共识通过,则将所述待处理交易打包至新区块,并将所述新区块记录在所述目标主账户维护的子链上。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于同构多链的交易处理方法的步骤。
一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于同构多链的交易处理方法的步骤。
上述基于同构多链的交易处理方法、区块链系统、设备及介质中,通过获取待处理交易,并基于待处理交易对应的交易接收方和交易发起方,确定处理待处理交易的目标主账户,从而通过目标主账户处理该待处理交易,无需全网的节点处理同一笔交易,以在分散交易处理能力的同时实现交易的针对性管理,即每一主账户维护并存储对应交易的区块数据。然后,将待处理交易广播至其他主账户,使其他主账户验证待处理交易,以在同构多链的基础上,进一步保证区块链的安全性以及不可篡改性。通过基于PBFT共识算法对待处理交易进行共识,以确定交易是否有效,即在主账户处理交易后,还需要通过若干其他主账户对该交易进行共识,以确定该交易是否可被全网接受,即是否可被记录在所述目标主账户维护的子链上;若共识通过,即可被记录在所述目标主账户维护的子链上,则将待处理交易打包至新区块,并记录在目标主账户维护的子链上,相比以太坊需要通过POW机制通过算力竞争记账的方式来说,该方法可有效降低系统能耗。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中基于同构多链的交易处理方法的一应用环境示意图;
图2是本发明一实施例中基于同构多链的交易处理方法的一流程图;
图3是本发明一实施例中基于同构多链的交易处理方法的一流程图;
图4是本发明一实施例中基于同构多链的交易处理方法的一流程图;
图5是本发明一实施例中基于同构多链的交易处理方法的一流程图;
图6是本发明一实施例中区块链系统的一示意图;
图7是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
该基于同构多链的交易处理方法可应用在如图1的应用环境中,其中,计算机设备通过网络与服务器进行通信。计算机设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器来实现。
在一实施例中,如图2所示,提供一种基于同构多链的交易处理方法,应用在同构多链的区块链系统中,所述区块链系统包括多个主账户;每一所述主账户对应维护一条子链;所述多个主账户间可相互通信;以该方法应用在图1中的服务器为例进行说明,包括如下步骤:
S201:获取待处理交易,并基于待处理交易对应的交易接收方和交易发起方,确定处理待处理交易的目标主账户。
其中,同构多链即区块链系统中所维护的多条子链,且每一子链虽然独立成立,但是其密码学基础、交易结构、交易处理和验证机制都是一致的,既彼此识别交易或数据没有任何障碍。于本实施例中,通过构建多个不同的主账户,每一主账户对应维护一条子链,且多个主账户间可相互通信,即为同构多链。
具体地,接受方即指待处理交易的交易接收方,例如转账交易接收方。交易发起方即为指待处理交易的交易发起方,例如转账交易发起方。示例性地,假设一笔待处理交易为主账户A转账给主账户B,则主账户A作为交易的交易发起方,主账户B作为交易的交易接收方,且主账户A以及主账户B作为处理该待处理交易的目标主账户。在实际应用中,交易发起方可以是当前交易平台上的任何节点,在发生交易时,交易发起方可根据交易需求触发生成对应的待处理交易,该待处理交易中包含了交易发方的信息,交易接收方的信息以及交易的具体内容等。当在主账户对应的子链中构建该待处理交易后,可将待处理交易进行广播,以使网络中的验证节点可以对该待处理交易进行验证后,生成区块数据。
具体地,主账户指由私钥控制的、公钥和地址公开的区块链账户主体。主账户与其他主账户所维护的子链构成所谓“同构多链”,并可进行交互式的交易分发验证。本实施例中的主账户是指能够参与共识、接收、处理和验证交易的全节点。该全节点可储存所有的区块链数据。在同构多链的区块链架构下,该主账户必须存储交易的所有数据。可以理解地是,该主账户的身份是极为明确的(而非可随意加入的匿名网络),即该主账户默认为受信任的诚实节点。
S202:通过目标主账户处理待处理交易,并将待处理交易广播至其他主账户,使其他主账户验证待处理交易。
具体地,通过将涉及不同主账户的交易分配到对应的主账户进行处理,以实现交易的分流处理,可有效降低交易的处理时间,提高吞吐量。
可以理解地是,传统的同构多链为设置多个不同的子链,当大量的交易并发时,可采用不同的子链处理不同的交易,或者将一笔交易拆分为多个子交易分摊到各子链处理,这就导致上述同构多链的交易处理的针对性不强且交易数据较为分散,不易管理。而本实施例中,通过设置的不同的主账户针对性处理涉及该主账户的待处理交易,以在分散交易处理能力的同时实现交易的针对性管理,即每一主账户维护并存储对应交易的区块数据。
具体地,由于仅由主账户所维护的子链处理交易,可能会导致安全性问题,故在同构多链的基础上,进一步保证区块链的安全性以及不可篡改性,本实施例中,还需要将待处理交易广播至其他主账户,以使其他主账户对该笔待处理交易进行验证,即验证包括但不限于交易哈希、交易时间与涉及的主账户等信息。该验证方法与现有技术中基于哈希值进行交易验证的方式相同,此处不再详述。
S203:基于PBFT共识算法对待处理交易进行共识,以待处理交易是否可被记录在目标主账户维护的子链上。
具体地,PBFT共识算法即为基于容错机制的拜占庭共识算法,它可以容忍小于1/3个无效或者恶意节点。换句话说,只要全网超过三分之二的其他主账户验证并通过该笔待处理交易,即达到共识,认为该待处理交易为有效的,可被全网接受并记录上链。
需要说明的是,传统的同构多链网络中每一条子链相互独立,且独立共识,即每一条子链内部针对每一笔交易都需要单独使用共识机制进行链内共识,这就导致每条子链中需要设置相应的共识节点。而本实施例中的同构多链的共识机制是链间共识,即由目标主账户广播交易,使其他主账户对该笔交易验证,实现共识,无需设置共识节点,该其他主账户即可作为共识节点或验证节点进行验证或共识。
S204:若待处理交易共识通过,则将待处理交易打包至新区块,并将新区块记录在目标主账户维护的子链上。
具体地,若待处理交易有效,则认为该待处理交易为有效的,可被全网接受并记录上链,即可将待处理交易打包至新区块,并记录在目标主账户维护的子链上。
在一实施例中,步骤S203中,即基于PBFT共识算法对待处理交易进行共识,以确定交易是否有效,具体为:当区块链系统中超过三分之二的其他主账户在预设时间范围内验证通过待处理交易,则确定待处理交易共识通过,可被记录在目标主账户维护的子链上。
其中,预设时间范围可设置为10分钟、20分钟等等,可根据实际需要进行设定。具体地,当区块链系统中超过三分之二的其他主账户在交易发生后的一预设时间范围内验证通过待处理交易,则确定待处理交易共识通过,可被记录在目标主账户维护的子链上。
本实施例中,通过获取待处理交易,并基于待处理交易对应的交易接收方和交易发起方,确定处理待处理交易的目标主账户,从而通过目标主账户处理该待处理交易,无需全网的节点处理同一笔交易,以在分散交易处理能力的同时实现交易的针对性管理,即每一主账户维护并存储对应交易的区块数据。然后,将待处理交易广播至其他主账户,使其他主账户验证待处理交易,以在同构多链的基础上,进一步保证区块链的安全性以及不可篡改性。通过基于PBFT共识算法对待处理交易进行共识,以确定交易是否有效,即在主账户处理交易后,还需要通过若干其他主账户对该交易进行共识,以确定该交易是否可被全网接受,即是否可被记录在所述目标主账户维护的子链上;若共识通过,即可被记录在目标主账户维护的子链上,则将待处理交易打包至新区块,并记录在目标主账户维护的子链上,相比以太坊需要通过POW机制通过算力竞争记账的方式来说,该方法可有效降低系统能耗。
在一实施例中,目标主账户包括交易接收方对应的第一主账户以及交易发起方对应的第二主账户;如图3所示,步骤S202之前还包括如下步骤:
S301:在第一主账户对应的子链上构建接收交易,并在第二主账户对应的子链上构建发起交易。
S302:基于接收交易以及发起交易,以在区块链系统中构建待处理交易,使目标主账户处理待处理交易。
具体地,当交易发生时,需要两个“当事”主账户(即交易接收方对应的第一主账户以及交易发起方对应的第二主账户)在子链上构建交易;除了第二主账户构建的发起交易(From交易)以外,还需要在第一主账户对应的子链上构建接收交易(To交易),以基于接收交易以及发起交易形成完整的交易链条,使得系统内部交易余额(Balance)平衡。通过在区块链系统中构建该待处理交易后,即可使目标主账户处理该待处理交易。
在一实施例中,如图4所示,步骤S204中,即若待处理交易有效,则将待处理交易打包至新区块,并记录在目标主账户维护的子链上,具体包括如下步骤:
S401:接收其他主账户对待处理交易进行验证的验证信息。
S402:将验证信息加入至新区块对应的区块头中,并将新区块的区块头信息同步至其他主账户,使其他主账户将区块头信息记录在所维护的子链上。
具体地,若待处理交易有效,则接受其他主账户对待处理交易进行验证的验证信息,该验证信息用于表明已经对该交易作出验证,例如可通过一验证签名表征。在接收到验证信息后,可将该验证信息加入至新区块对应的区块头中,并将新区块的区块头信息同步至其他主账户,使其他主账户将区块头信息记录在所维护的子链上。
可以理解地是,本实施例中仅仅由直接涉及交易的双方(主账户及其维护的子链)来记录交易细节,而其他系统内的子链仅仅对交易作出验证,并在链上记录信息,表明已经对该交易作出验证,但并不会详细维护交易数据,无需区块链系统中的所有主账户进行同步记账,可有效降低维护成本。
由于本方法所实现的同构多链架构,具有高吞吐量,因此随着网络的扩展,不同的子链可以维护更多量级的交易,并记录这些信息,且不受到区块链上数据包裹(例如区块体积)的限制。
在一实施例中,如图5所示,待处理交易对应一交易数据;该基于同构多链的交易处理方法还包括如下步骤:
S501:通过第二主账户对应的账户数据以及交易数据,验证待处理交易是否有效。
S502:若待处理交易有效,则通过目标主账户处理待处理交易。
其中,交易数据可包括待处理交易的交易金额。该第二主账户的账户数据可包括第二主账户对应的剩余金额。进一步地,在通过目标主账户处理待处理交易之前,可初步判断该待处理交易是否发起,即通过交易发起方对应的第二主账户对应的剩余金额是否大于交易金额,以验证该待处理交易信息是否有效;若第二主账户对应的剩余金额大于交易金额,则认为该待处理交易可发起,则通过目标主账户处理待处理交易;否则,可直接关闭该待处理交易,保证交易处理的有效性。
在一实施例中,目标主账户对应一设定的限制频次;通过目标主账户处理所述待处理交易具体为:当目标主账户当前累计的交易频次小于限制频次时,通过目标主账户处理待处理交易。
进一步地,由于本实施例中,不同的主账户仅维护一条子链,即对子链的行为负责,故可针对不同的待处理交易灵活设置不同的交易机制,例如:零手续费、固定手续费、固定手续费率或固定手续费受益方。
可以理解地是,在传统的区块链系统中,常常采用“谁打包出块谁获得该块的所有手续费奖励”,本方法之所以可以灵活设定交易机制,是因为From交易和To交易是由当事主账户(即目标账户)维护的,其他节点只负责在共识况下加验证交易并记录交易的区块头信息;并且由于本实施例中的主账户为受信任节点(且大部分情况下建议设置“许可进入”模式),故该网络内部的利益和权责分配是可被定义的。
具体地,目标主账户对应一设定的限制频次,用于限制每一主账户上的交易频次。由于目前针对零手续费机制下,容易引起大批量的恶意节点攻击,使网络崩溃,无法正常使用的DDoS攻击问题,而由于本实施例中,为解决上述题,由于不同主账户维护对应的子链,故可通过设置每一主账户对应的限制频次,以限制每一主账户上的交易频次,从而可有效解决零手续费的交易机制下,容易引起DDoS攻击的问题。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种区块链系统,该区块链系统与上述实施例中基于同构多链的交易处理方法一一对应。如图6所示,该区块链系统包括待处理交易获取模块10、交易分流处理模块20、共识模块30以及区块上链模块40。各功能模块详细说明如下:
待处理交易获取模块10,用于获取待处理交易,并基于待处理交易对应的交易接收方和交易发起方,确定处理待处理交易的目标主账户。
交易分流处理模块20,用于通过目标主账户处理待处理交易,并将待处理交易广播至其他主账户,使其他主账户验证待处理交易。
共识模块30,用于基于PBFT共识算法对待处理交易进行共识,以确定待处理交易是否可被记录在目标主账户维护的子链上。
区块上链模块40,用于若待处理交易共识通过,则将待处理交易打包至新区块,并将新区块记录在目标主账户维护的子链上。
具体地,共识模块具体为:当区块链系统中超过三分之二的其他主账户在预设时间范围内验证通过待处理交易,则确定待处理交易共识通过,可被记录在目标主账户维护的子链上。
具体地,目标主账户包括交易接收方对应的第一主账户以及交易发起方对应的第二主账户;该区块链系统还包括主账户构建子交易模块和待处理交易构建模块。
主账户构建子交易模块,用于在第一主账户对应的子链上构建接收交易,并在第二主账户对应的子链上构建发起交易。
待处理交易构建模块,用于基于接收交易以及发起交易,以在区块链系统中构建待处理交易,使目标主账户处理待处理交易。
具体地,该区块链系统还包括验证信息接收模块和区块头信息同步模块。
验证信息接收模块,用于接收其他主账户对待处理交易进行验证的验证信息。
区块头信息同步模块,用于将验证信息加入至新区块对应的区块头中,并将新区块的区块头信息同步至其他主账户,使其他主账户将区块头信息记录在所维护的子链上。
具体地,待处理交易对应一交易数据;该该区块链系统还包括交易验证模块以及交易处理模块。
交易验证模块,用于通过第二主账户对应的账户数据以及交易数据,验证待处理交易是否有效。
交易处理模块,用于若待处理交易有效,则通过目标主账户处理待处理交易。
具体地,待处理交易对应一设定的限制频次;该交易分流处理模块具体为:当目标主账户当前累计的交易频次小于限制频次时,通过目标主账户处理待处理交易。
关于同构多链的区块链系统的具体限定可以参见上文中对于基于同构多链的交易处理方法的限定,在此不再赘述。上述同构多链的区块链系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括计算机存储介质、内存储器。该计算机存储介质存储有操作系统、计算机程序和数据库。该内存储器为计算机存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储执行基于同构多链的交易处理方法过程中生成或获取的数据,如待处理交易。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于同构多链的交易处理方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中的基于同构多链的交易处理方法的步骤,例如图2所示的步骤S201-S204,或者图3至图5中所示的步骤。或者,处理器执行计算机程序时实现上述区块链系统这一实施例中的各模块/单元的功能,例如图6所示的各模块/单元的功能,为避免重复,这里不再赘述。
在一实施例中,提供一计算机存储介质,该计算机存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中基于同构多链的交易处理方法的步骤,例如图2所示的步骤S201-S204,或者图3至图5中所示的步骤,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述区块链系统这一实施例中的各模块/单元的功能,例如图6所示的各模块/单元的功能,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
Claims (8)
1.一种基于同构多链的交易处理方法,其特征在于,应用在同构多链的区块链系统中,所述区块链系统包括多个主账户;每一所述主账户对应维护一条子链;所述多个主账户间可相互通信;所述基于同构多链的交易处理方法,包括:
获取待处理交易,并基于所述待处理交易对应的交易接收方和交易发起方,确定处理所述待处理交易的目标主账户,所述目标主账户包括所述交易接收方对应的第一主账户以及所述交易发起方对应的第二主账户,所述待处理交易对应一交易数据;
在所述第一主账户对应的子链上构建接收交易,并在所述第二主账户对应的子链上构建发起交易;
基于所述接收交易以及所述发起交易,以在所述区块链系统中构建所述待处理交易,使所述目标主账户处理所述待处理交易;
通过所述第二主账户对应的账户数据以及所述交易数据,验证所述待处理交易是否有效;
若所述待处理交易有效,则通过所述目标主账户处理所述待处理交易,并将所述待处理交易广播至其他主账户,使其他主账户验证所述待处理交易;
基于PBFT共识算法对所述待处理交易进行共识,以确定所述待处理交易是否可被记录在所述目标主账户维护的子链上;
若所述待处理交易共识通过,则将所述待处理交易打包至新区块,并将所述新区块记录在所述目标主账户维护的子链上。
2.如权利要求1所述基于同构多链的交易处理方法,其特征在于,所述基于PBFT共识算法对所述待处理交易进行共识,以确定所述待处理交易是否可被记录在所述目标主账户维护的子链上,包括:
当所述区块链系统中超过三分之二的其他主账户在预设时间范围内验证通过所述待处理交易,则确定所述待处理交易共识通过,可被记录在所述目标主账户维护的子链上。
3.如权利要求1所述基于同构多链的交易处理方法,其特征在于,在所述将所述待处理交易打包至新区块之前,所述基于同构多链的交易处理方法还包括:
接收其他主账户对所述待处理交易进行验证的验证信息;
在所述将所述待处理交易打包至新区块之后,所述基于同构多链的交易处理方法还包括:
将所述验证信息加入至所述新区块对应的区块头中,并将所述新区块的区块头信息同步至其他主账户,使其他主账户将所述区块头信息记录在所维护的子链上。
4.如权利要求1所述基于同构多链的交易处理方法,其特征在于,所述目标主账户对应一设定的限制频次;所述通过所述目标主账户处理所述待处理交易,包括:
当所述目标主账户当前累计的交易频次小于所述限制频次时,通过所述目标主账户处理所述待处理交易。
5.一种区块链系统,所述区块链系统包括多个主账户;每一所述主账户对应维护一条子链;所述多个主账户间可相互通信;其特征在于,包括:
待处理交易获取模块,用于获取待处理交易,并基于所述待处理交易对应的交易接收方和交易发起方,确定处理所述待处理交易的目标主账户,所述目标主账户包括所述交易接收方对应的第一主账户以及所述交易发起方对应的第二主账户,所述待处理交易对应一交易数据;
主账户构建子交易模块,用于在所述第一主账户对应的子链上构建接收交易,并在所述第二主账户对应的子链上构建发起交易;
待处理交易构建模块,用于基于所述接收交易以及所述发起交易,以在所述区块链系统中构建所述待处理交易,使所述目标主账户处理所述待处理交易;
交易验证模块,用于通过所述第二主账户对应的账户数据以及所述交易数据,验证所述待处理交易是否有效;
交易处理模块,用于若所述待处理交易有效,则通过所述目标主账户处理所述待处理交易;
交易分流处理模块,用于将所述待处理交易广播至其他主账户,使其他主账户验证所述待处理交易;
共识模块,用于基于PBFT共识算法对所述待处理交易进行共识,以确定所述待处理交易是否可被记录在所述目标主账户维护的子链上;
区块上链模块,用于若所述待处理交易共识通过,则将所述待处理交易打包至新区块,并将所述新区块记录在所述目标主账户维护的子链上。
6.如权利要求5所述的区块链系统,其特征在于,还包括:
验证信息接收模块,用于接收其他主账户对所述待处理交易进行验证的验证信息;
区块头信息同步模块,用于将所述验证信息加入至所述新区块对应的区块头中,并将所述新区块的区块头信息同步至其他主账户,使其他主账户将所述区块头信息记录在所维护的子链上。
7.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述基于同构多链的交易处理方法的步骤。
8.一种计算机存储介质,所述计算机存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述基于同构多链的交易处理方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110473782.0A CN113095940B (zh) | 2021-04-29 | 2021-04-29 | 基于同构多链的交易处理方法、区块链系统、设备及介质 |
PCT/CN2021/096603 WO2022227172A1 (zh) | 2021-04-29 | 2021-05-28 | 基于同构多链的交易处理方法、区块链系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110473782.0A CN113095940B (zh) | 2021-04-29 | 2021-04-29 | 基于同构多链的交易处理方法、区块链系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113095940A CN113095940A (zh) | 2021-07-09 |
CN113095940B true CN113095940B (zh) | 2024-05-10 |
Family
ID=76681285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110473782.0A Active CN113095940B (zh) | 2021-04-29 | 2021-04-29 | 基于同构多链的交易处理方法、区块链系统、设备及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113095940B (zh) |
WO (1) | WO2022227172A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114663091B (zh) * | 2022-03-25 | 2023-01-31 | 上海电力大学 | 基于多链式区块链架构的电力交易方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107464112A (zh) * | 2017-07-20 | 2017-12-12 | 捷德(中国)信息科技有限公司 | 基于区块链的交易管理方法及系统 |
CN111080452A (zh) * | 2019-12-17 | 2020-04-28 | 电子科技大学 | 一种适用于能源区块链的分层交易方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10158527B2 (en) * | 2016-10-28 | 2018-12-18 | International Business Machines Corporation | Changing an existing blockchain trust configuration |
CN108985740B (zh) * | 2018-07-07 | 2021-08-06 | 夸克链科技(深圳)有限公司 | 高性能共识算法的实现方法 |
CN109859047A (zh) * | 2019-01-31 | 2019-06-07 | 北京瑞卓喜投科技发展有限公司 | 一种区块链更新方法和区块链更新系统 |
-
2021
- 2021-04-29 CN CN202110473782.0A patent/CN113095940B/zh active Active
- 2021-05-28 WO PCT/CN2021/096603 patent/WO2022227172A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107464112A (zh) * | 2017-07-20 | 2017-12-12 | 捷德(中国)信息科技有限公司 | 基于区块链的交易管理方法及系统 |
CN111080452A (zh) * | 2019-12-17 | 2020-04-28 | 电子科技大学 | 一种适用于能源区块链的分层交易方法 |
Non-Patent Citations (1)
Title |
---|
许可链多中心动态共识机制;闵新平等;计算机学报(第05期);第39-54页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113095940A (zh) | 2021-07-09 |
WO2022227172A1 (zh) | 2022-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11895242B2 (en) | Data processing method and apparatus in blockchain network, storage medium, and computer device | |
CN111090888B (zh) | 验证合约的方法及装置 | |
CN112152800B (zh) | 生成共享合约密钥的方法及装置 | |
CN111090876B (zh) | 调用合约的方法及装置 | |
CN110535872B (zh) | 在区块链网络中处理数据请求的方法和装置 | |
CN109361664B (zh) | 基于区块链的数据验证方法、系统和计算机可读存储介质 | |
CN111200641B (zh) | 数据跨链共享方法、系统,计算机设备和存储介质 | |
CN110598446A (zh) | 基于区块链的测试方法、装置、存储介质和计算机设备 | |
CN111988141A (zh) | 共享集群密钥的方法及装置 | |
CN108632110B (zh) | 设备性能测试方法、系统、计算机设备和存储介质 | |
CN109600377B (zh) | 防越权方法、装置、计算机设备及存储介质 | |
CN111191294B (zh) | 基于区块链的单节点记账方法、系统、设备和存储介质 | |
CN113095940B (zh) | 基于同构多链的交易处理方法、区块链系统、设备及介质 | |
CN110839002B (zh) | 云的开户、认证及访问方法和设备 | |
CN110933022A (zh) | 区块处理方法、装置、计算机设备及存储介质 | |
CN113010894A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
Singh et al. | Security Issues in Blockchain Integrated WSN: Challenges and Concerns | |
CN110650132A (zh) | 边缘计算节点的接入方法、装置、计算机设备和存储介质 | |
Al-Mamun et al. | Dean: A lightweight and resource-efficient blockchain protocol for reliable edge computing | |
CN111131329A (zh) | 区块链系统的数据共识方法、装置及硬件设备 | |
Böhner et al. | Extending software architectures from safety to security | |
CN111738726B (zh) | 基于区块链的资源核验方法、装置和计算机设备 | |
CN112532576B (zh) | 一种网关数据交互方法、装置、计算机设备及存储介质 | |
Radis et al. | Proposed Security Measures for Code Injection for CubeSats | |
CN116980145A (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 |