CN112651724A - 跨链交互方法、装置和系统 - Google Patents
跨链交互方法、装置和系统 Download PDFInfo
- Publication number
- CN112651724A CN112651724A CN202010351384.7A CN202010351384A CN112651724A CN 112651724 A CN112651724 A CN 112651724A CN 202010351384 A CN202010351384 A CN 202010351384A CN 112651724 A CN112651724 A CN 112651724A
- Authority
- CN
- China
- Prior art keywords
- account
- chain
- information
- cross
- blockchain
- 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.)
- Pending
Links
- 230000003993 interaction Effects 0.000 title claims abstract description 32
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012795 verification Methods 0.000 claims abstract description 59
- 238000012545 processing Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 6
- 238000007599 discharging Methods 0.000 claims description 6
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (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
本申请提出一种跨链交互方法、装置和系统,其中,系统包括:平台交易模块接收第一区块链发送的第一原始账户的第一账户信息和第一余额信息和第二区块链发送的第二原始账户的第二账户信息和第二余额信息;验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给平台交易模块;平台交易模块根据原子交换成功信息,从汇款账户中扣除目标余额,以及将目标余额添加到收款账户;平台交易模块更新第一原始账户余额信息和的第二原始账户余额信息返回第一区块链和第二区块链。由此,能够给有跨链需求的区块链提供跨链服务,提高跨链交易的速度和吞吐量。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种跨链交互方法、装置和系统。
背景技术
随着区块链技术和经济的发展,对区块链跨链提出明显的诉求。目前的区块链项目都是由不同团队基于不同的场景需求和设计理念,采用不同的技术架构开发出的异构区块链。由于区块链本身的技术特点,每个区块链都是一个孤立的网络,因此这些项目就像是一个个相互隔绝的“信息孤岛”。因此,如何实现区块链之间的互联互通和价值转移成为当前区块链技术的研究重点。
其中,跨链指的是通过某些技术让价值跨过链与链之间的障碍,使得原本存储在特定区块链上的价值转换为另一条链上的价值,从而实现价值的流通。
具体地,区块链是分布式总账的一种,一条区块链就是一个独立的账本,而两条分属于不同区块链系统的链,就是两个不同的独立的账本,彼此没有关联性。本质上价值没有办法在异质账本间转移,但是对于具体的某个用户,用户在一条区块链上存储的价值,能够变成另一条链上的价值,这就是价值的流通。区块链技术可以被应用在金融、健康医疗、供应链、资产管理等诸多领域,但是受吞吐量、网络孤立性、监管、伸缩性等因素的制约,目前的区块链项目并不能很好的服务于商业应用。在区块链所面临的诸多问题中,网络孤立性阻碍了不同区块链之间的协同操作,极大程度的限制了区块链的发挥空间。
相关技术中,实现区块链跨链交易首先要设计两个跨链区块链交易之间的交易信任机制,主要包括确认交易已经发生并写入各自的区块链账本中,交易发生转移的时候转移资产没有双花,发生的交易已经达成了两个区块链系统的共识导致;或者是一个跨链交易可以分为很多步骤,如何保证交易所包含的步骤全部发生或者全部不发生,即交易的原子性保障,此保障使得交易没有临界状态,交易状态更加明确;或者是当跨链交易共识达成之后,如何完成跨链的资产管理,真正做到跨链交易物理上的完成;以及当两个跨链系统发生跨链交易时,两系统的状态难免彼此影响,如果两交易链的状态无法隔离,就会出现这样一种情况,当跨链交易中的一条链受到攻击时,另一条区块链也会受到影响,因此,如何在跨链交易进行的过程中保障对方的区块链系统安全以及保障本区块链系统的安全这也是很关键的。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请提出一种跨链交互系统,能够给有跨链需求的区块链提供跨链服务,提高跨链交易的速度和吞吐量。
本申请提出一种跨链交互方法。
本申请提出一种跨链交互装置。
本申请一方面实施例提出了一种跨链交互系统,包括:包括:第一区块链、第二区块链和跨链交易平台端,所述跨链交易平台端包括:平台交易模块和验证实体;所述平台交易模块接收所述第一区块链发送的第一原始账户的第一账户信息和第一余额信息和所述第二区块链发送的第二原始账户的第二账户信息和第二余额信息;所述验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给所述平台交易模块;所述平台交易模块根据所述原子交换成功信息,从所述汇款账户中扣除目标余额,以及将所述目标余额添加到所述收款账户;所述平台交易模块更新所述第一原始账户余额信息和所述的第二原始账户余额信息返回所述第一区块链和所述第二区块链。
本申请另一方面实施例提出了一种跨链交互方法,包括:所述平台交易模块接收所述第一区块链发送的第一原始账户的第一账户信息和第一余额信息和所述第二区块链发送的第二原始账户的第二账户信息和第二余额信息;所述验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给所述平台交易模块;所述平台交易模块根据所述原子交换成功信息,从所述汇款账户中扣除目标余额,以及将所述目标余额添加到所述收款账户;所述平台交易模块更新所述第一原始账户余额信息和所述的第二原始账户余额信息返回所述第一区块链和所述第二区块链。
本申请又一方面实施例提出了一种跨链交互装置,包括:接收模块,用于所述平台交易模块接收所述第一区块链发送的第一原始账户的第一账户信息和第一余额信息和所述第二区块链发送的第二原始账户的第二账户信息和第二余额信息;发送模块,用于所述验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给所述平台交易模块;处理模块,用于所述平台交易模块根据所述原子交换成功信息,从所述汇款账户中扣除目标余额,以及将所述目标余额添加到所述收款账户;返回模块,用于所述平台交易模块更新所述第一原始账户余额信息和所述的第二原始账户余额信息返回所述第一区块链和所述第二区块链。
本申请实施例所提供的技术方案可以包含如下的有益效果:
通过平台交易模块接收第一区块链发送的第一原始账户的第一账户信息和第一余额信息和第二区块链发送的第二原始账户的第二账户信息和第二余额信息;验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给平台交易模块;平台交易模块根据原子交换成功信息,从汇款账户中扣除目标余额,以及将目标余额添加到收款账户;平台交易模块更新第一原始账户余额信息和的第二原始账户余额信息返回第一区块链和第二区块链。由此,能够给有跨链需求的区块链提供跨链服务,提高跨链交易的速度和吞吐量。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例所提供的一种跨链交互系统的结构示意图;
图2为本申请实施例所提供的一种跨链交互系统的结构示例图;
图3为本申请实施例所提供的验证实体的工作流程示意图;
图4为本申请实施例所提供的系统账本结构示例图;
图5为本申请实施例所提供的一种跨链交互方法的流程示意图;
图6为本申请实施例所提供的一种跨链交互系统的流程示例图;
图7为本申请实施例提供的一种跨链交互装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的跨链交互方法、装置和系统。
图1为本申请实施例所提供的一种跨链交互系统的结构示意图。
具体地,跨链交互系统是一个独立的适用于跨链场景区块链系统,能够给两个或者两个以上有跨链需求的区块链提供跨链服务,应用于有跨链需求的各种区块链中,安全可信的完成跨链交易的完成,保证跨链交易后的账本一致性,具有跨链交易速度快,吞吐量大的特点。
如图1所示,该跨链交互系统包括:第一区块链100、第二区块链200和跨链交易平台端300,跨链交易平台端300包括:平台交易模块301和验证实体302。
在本申请实施例中,第一区块链100通过第一接口与跨链交易平台端300连接,第二区块链200通过第二接口与跨链交易平台端300连接,实现跨链交易,跨链共识,账本更新,资产转移的功能。
第一区块链100通过第一接口主要负责给跨链交易平台端300传输属于第一区块链的第一账户信息和相对应的余额值,以及给第一区块链中的交易账户返回更新后的交易信息。
第二区块链200通过第二接口负责给跨链交易平台端300传输属于第二区块链的第二账户信息和相对应的余额值,以及给第二区块链中的交易账户返回更新后的交易信息。
跨链交易平台端300包括:平台交易模块301和验证实体302,验证实体302(Validation Peer Entity,简称VPE),验证实体302的主要功能是验证原子交易的成功与否,在跨链交易平台端300中构建验证实体302,用于验证跨链交易的成功性,一开始对应账户的初始状态为undefined(未限定的),根据原子交换的成功与否,分为交易的成功或失败。
平台交易模块301主要负责处理验证实体302输出的原子交易成功的交易,并将交易结果各账户余额信息返回给第一区块链100、第二区块链200。平台交易模块301的每个账户,按交易顺序分别记录仅属于该账户的交易事件,形成该账户对应的唯一的一条链,一个账户一条链的设计,使得每笔支付交易只会导致相关的两条链(或两个以上,若同一笔支付交易中可以包含多个接收账户)需要变更,而不影响其他链,不同链之间的更新是异步的,不需要同时进行,提高了系统的吞吐量。每个链的最新区块(尾部区块)代表了该链的(当前有效状态),尾部区块之前的区块数据只代表历史,仅用于回溯对账,计算节点可抛弃历史数据(即账本修剪),只保留每条链的尾部区块作为最新账本,这就极大地降低了存储需求。
为了本领域人员更加清楚上述结构,如图2所示,跨链交互系统以区块链A作为第一区块链,区块链B作为第二区块链为例,如图2所示,区块链A和区块链B可以进行导出数据、交易和更新数据等操作,跨链交易平台端包括平台交易模块和验证实体,平台交易模块包括账户a、b和c,区块链A与跨链交易平台端可以进行双向信息交互,区块链B也可以与跨链交易平台端可以进行双向信息交互。
具体地基于上述结构,给有跨链需求的区块链提供跨链服务,平台交易模块301接收第一区块链100发送的第一原始账户的第一账户信息和第一余额信息和第二区块链200发送的第二原始账户的第二账户信息和第二余额信息。
可以理解的是,平台交易模块301是由一条条账户链构成的,其中,初始账户块是根据第一区块链通过第一接口,第二区块链通过第二接口传递过来的跨链交易区块链的账户信息进行初始化,一个账户块只包含一个账户及其对应的余额信息,账户余额记录在系统账本中,对应的是系统账本每条账户链的最后一个账户块,验证要求检查发送块的余额与前一个块的余额之间的差(即发送的金额数),然后接收账户可以将先前的测量余额(按测量值)增加到新的接收块中给出的最终余额中,由此,提高下载大量块时的处理速度,请求账户历史记录时,系统账户已经给出了历史记录。
其中,账户信息可以是账户号码、账户名称等信息,请求账户可以是第一原始账户也可以是第二原始账户,同理,接收账户可以是第一原始账户也可以是第二原始账户,可以根据需要进行选择,余额信息指的是原始账户当前时刻的账户具体数值。
验证实体302验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给平台交易模块301。
其中,验证实体302验证跨链交易的原子交换验证的方式有很多种,作为一种可能实现方式,第一区块链的将第一账户金额存入第一合约地址,并生成访问合约地址的第一密钥,以及对第一密钥进行哈希处理生成第一哈希值,第二区块链根据第一哈希值生成第二合约地址,并将第二账户金额存入第二合约地址,第一区块链根据第一密钥获取第二账户金额,第二区块链根据第一密钥获取第一账户金额,则确定原子交换验证成功。
举例而言,如图3所示,当区块链A中的Alice,区块链B中的Bob要进行跨链交易时,执行原子交换的方法如下:
具体地,(1)区块链A中存入交易金额,A将账户金额存入合约地址,该地址类似于一个保险箱,通过该方式创建好安全防护后,A还会生成一个用于访问它的密钥,然后,她与B共享此密钥的加密哈希值;(2)区块链B存入交易金额,B使用A提供的哈希值创建出另一个安全合约地址,用于存入他的交易金额D;(3)区块链A在兑换区块链B中交易金额成功性判断,A使用它自身创建的密钥进行兑换区块链B中交易金额成功性判断;(4)验证实体记录,原子交换成功与否信息,若区块A中成功性判断完成,此时B自然可以凭借A的密钥拿到A的账户金额,此时原子交易成功,被记录在验证实体中,若原子交易不成功,验证实体记录为undefined。
也就是说,原子交换就是要么交换成功,要么失败,不会存在中间状态,当原子交换的状态发生改变时,在跨链交易平台端300的验证实体302中记录原子交换的状态为true,若原子交换失败,则在验证实体302内部记录undefined。当验证实体302记录一个true状态的交易时,验证实体302就开始向平台交易模块301传输信息,原子交换保证了跨链交易信息的状态统一性,继而达成共识。
进一步地,平台交易模块301根据原子交换成功信息,从汇款账户中扣除目标余额,以及将目标余额添加到收款账户,平台交易模块更新第一原始账户余额信息和的第二原始账户余额信息返回第一区块链100和第二区块链200。
举例而言,当区块链A中的账户a与区块链B中的账户b,原子交换验证成功,验证实体初始化为true时,在跨链交易平台端300-平台交易模块301中对应的账户a和账户b发生交易,a账户链中会生成只包含这笔交易信息的区块,a账户的余额发生了变化,b账户链感知到a账户链中的数据变化后,也会生成只包含这笔交易信息的区块,b账户的余额也发生了相应的变化。
虽然A链与B链在形式上是互相独立的,但是a账户链与b账户链的数据更新必须相互融洽,不可以出现资金发送与接收数额不一致的现象,区块格通过交易数据的数字签名和锁定机制确保整个账本的一致性,并实现对冲突区块(恶意分叉、双花交易可制造多个冲突区块)的选择与淘汰,区块格的每个账户链的第一个区块中填写了用户自愿选择的投票代表,并允许用户随时发送更新交易将其更换,投票代表的权重由选择作为代表的所有账户的余额总和所决定。
具体地,将资金从一个账户转移到另一个账户需要进行两次交易:一次汇款从汇款人的账户中扣除余额、另一次交易是收款人将金额添加到收款人账户的余额中。在发送者和接收者的账户中将金额作为单独的交易进行转移有几个重要目的:可以实现顺序传入的交易是固定异步的、保持较小的交易以适合UDP(用户数据报协议,User DatagramProtocol)数据包、通过最小化数据占用来促进账本修剪和将已结算的交易与未结算的交易隔离开。
在本申请的一个实施例中,根据账户所在原区块链的出块时间,第一区块链和第二区块链每隔与出块时间相同的固定时间收集一次平台交易模块中完成的交易信息。
在本申请的一个实施例中,在平台交易模块301接收第一区块链发送的第一原始账户余额信息和第二区块链发送的第二原始账户余额信息之后,还包括:将第一区块链100中的第一原始账户在区块格中创建其对应的多个第一子账户;将第二区块链200中的第二原始账户在区块格中创建其对应的多个第二子账户。
需要说明的是,块包含单个交易,交易专门是指操作,而块是指交易的数字编码,交易由属于执行交易的账户的私钥进行签名,区块组成区块格(block-lattice)结构,每个账户链,相当于账户的交易/余额历史记录。每个账户链只能由账户的所有者更新。这就允许立即以异步方式将每个账户链更新到区块格的其余部分,从而快速生成交易。
在本申请的一个实施例中,平台交易模块301,包括:所有账户集合的系统账本;系统账本通过第一区块链的第一接口和第二区块链的第一接口转发到跨链交易的第一区块链和所述第二区块链中,第一区块链和第二区块链根据平台交易模块301返回系统账本信息来进行本地账本更新。
举例而言,如图4所示,账本结构参考区块格结构,系统账本是具有全局性质的所有账户集合,是每一个账户链的集合,每个账户都同意通过签名检查,只有账户所有者可以修改自己的链,系统账本记录了每条账户链上的余额变化,当平台交易模块301的系统账本达成共识后,将系统账本通过区块链A接口,区块链B接口来转发到对应跨链交易的区块链中,跨链交易的区块链根据返回系统账本信息来进行本地账本更新。
在本申请的一个实施例中,当一个发送或接收交易要改变一个节点的账户状态时,将目标账户的状态设为锁定状态。
具体地,两个(或多个)带符号的块引用同一先前的块时,就会发生分叉,这些分叉区块导致账户链的状态产生分歧,必须解决。所以在此系统内引入一个预先占位的机制,因为区块格里的接受和发送是异步的,所以在分叉产生的时候只考虑一个节点的状态变化,当一个发送或接收交易要改变一个节点的账户状态的时候,将这个账户的状态设为不可达即锁定状态。若由其他节点也想改变这个账户的状态就排队等待,当交易完成后,账户状态更改为可达,再继续下面的操作。
本申请实施例的跨链交互系统中,通过平台交易模块接收第一区块链发送的第一原始账户的第一账户信息和第一余额信息和第二区块链发送的第二原始账户的第二账户信息和第二余额信息;验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给平台交易模块;平台交易模块根据原子交换成功信息,从汇款账户中扣除目标余额,以及将目标余额添加到收款账户;平台交易模块更新第一原始账户余额信息和的第二原始账户余额信息返回第一区块链和第二区块链。由此,能够给有跨链需求的区块链提供跨链服务,提高跨链交易的速度和吞吐量。
为了实现上述实施例,本申请还提出一种跨链交互方法。
图5为本申请实施例提供的一种跨链交互方法的流程示意图。
如图5所示,该跨链交互方法包括:
步骤101,平台交易模块接收第一区块链发送的第一原始账户的第一账户信息和第一余额信息和第二区块链发送的第二原始账户的第二账户信息和第二余额信息。
步骤102,验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给平台交易模块。
在本申请的一个实施例中,验证实体验证跨链交易的原子交换验证成功,包括:第一区块链的将第一账户金额存入第一合约地址,并生成访问合约地址的第一密钥,以及对第一密钥进行哈希处理生成第一哈希值,第二区块链根据第一哈希值生成第二合约地址,并将第二账户金额存入第二合约地址,第一区块链根据第一密钥获取第二账户金额,第二区块链根据第一密钥获取第一账户金额,则确定原子交换验证成功。
步骤103,平台交易模块根据原子交换成功信息,从汇款账户中扣除目标余额,以及将目标余额添加到收款账户。
步骤104,平台交易模块更新第一原始账户余额信息和的第二原始账户余额信息返回第一区块链和第二区块链。
具体地,在跨链交互系统中如何进行交易,跨链交易平台端-平台交易模块使用区块格(block-lattice)结构,每个账户链,相当于账户的交易/余额历史记录,每个账户链只能由账户的所有者更新,允许立即以异步方式将每个账户链更新到区块格的其余部分,从而快速生成交易,完成了跨链交易的核心交易功能以及共识保证账本一致性的功能,对跨链交易的准确性,时效性起到了主要作用。
第一,两个需要进行跨链交易的区块链的账户信息及余额信息的导入成功;第二,初始化跨链交易平台端-平台交易模块成功;第三,为进行跨链交易的区块链的出块时间,考虑到跨链交易平台端-平台交易模块里面交易进行的情况和返回信息的高效,当验证实体中原子交换成功的交易传递给跨链交易平台端-平台交易模块后,根据账户所在原区块链的出块时间,第一区块链的第一接口、第二区块链的第二接口每隔与出块时间相同的固定时间收集一次跨链交易平台端-平台交易模块中完成的交易;第四,跨链交易平台端-平台交易模块账户状态信息返回。
为了本领域人员更加清楚上述过程,以图6为了进行详细说明。
具体地,如图6所示,1)区块链A接口、区块链B接口、跨链交易平台端-平台交易模块:系统预配置功能:当两个区块链要进行跨链交易时,将其原始账户余额信息导入跨链交易平台端-平台交易模块;2)构建跨链交易平台端-平台交易模块,两个需要进行跨链交易的区块链的账户信息及余额信息的导入成功,表明信息成功导入跨链交易平台端-平台交易模块,进行区块格系统的区块账户初始化:将区块链A中的账户在区块格中创建其对应的账户a1,a2,a3……;将区块链B中的账户在区块格中创建其对应的账户b1,b2,b3……;跨链交易平台端-平台交易模块->区块链A接口、区块链B接口:区块信息初始化成功信息返回。区块链A接口,区块链B接口进行初始化跨链交易平台端-平台交易模块成功的监测,在事件监测成功后,进行对于验证实体的监测。
3)跨链交易平台端-验证实体的信息构建,对于跨链交易的原子交换的成功与否进行记录,若跨链交易原子交换成功,则在验证实体中进行交易的记录,否则将验证实体记录为undefined;4)跨链交易平台端-验证实体->跨链交易平台端-平台交易模块,原子交换成功交易信息传递,将验证实体中原子交换成功的交易信息传递给平台交易模块;5)跨链交易平台端-平台交易模块,进行跨链交易,根据原子交换交易成功的信息找到对应的账户,进行交易,发送金额-从汇款人的账户中扣除余额-接受金额-收款人将金额添加到收款人账户的余额-发送和接收的动作是分开进行的,保证了交易的异步性;6)跨链交易平台端-平台交易模块:进行跨链交易共识;7)跨链交易平台端-平台交易模块:根据账户所在原区块链的出块时间,第一区块链的第一接口、第二区块链的第二接口每隔与出块时间相同的固定时间收集一次跨链交易平台端-平台交易模块中完成的交易,账户状态信息返回;8)跨链交易平台端-区块链A接口,区块链B接口:进行跨链交易平台端-平台交易模块账户状态信息返回,当收到跨链系统账户信息时,分别发送给区块链A,区块链B。
需要说明的是,前述对实施例的解释说明也适用于该实施例的方法,此处不再赘述。
本申请实施例的跨链交互方法中,通过平台交易模块接收第一区块链发送的第一原始账户的第一账户信息和第一余额信息和第二区块链发送的第二原始账户的第二账户信息和第二余额信息;验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给平台交易模块;平台交易模块根据原子交换成功信息,从汇款账户中扣除目标余额,以及将目标余额添加到收款账户;平台交易模块更新第一原始账户余额信息和的第二原始账户余额信息返回第一区块链和第二区块链。由此,能够给有跨链需求的区块链提供跨链服务,提高跨链交易的速度和吞吐量。
为了实现上述实施例,本申请还提出一种跨链交互装置。
图7为本申请实施例提供的一种跨链交互装置的结构示意图。
如图7所示,该装置包括:接收模块701、发送模块702、处理模块703和返回模块704。
接收模块701,用于所述平台交易模块接收所述第一区块链发送的第一原始账户的第一账户信息和第一余额信息和所述第二区块链发送的第二原始账户的第二账户信息和第二余额信息。
发送模块702,用于所述验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给所述平台交易模块。
处理模块703,用于所述平台交易模块根据所述原子交换成功信息,从所述汇款账户中扣除目标余额,以及将所述目标余额添加到所述收款账户。
返回模块704,用于所述平台交易模块更新所述第一原始账户余额信息和所述的第二原始账户余额信息返回所述第一区块链和所述第二区块链。
需要说明的是,前述对实施例的解释说明也适用于该实施例的装置,此处不再赘述。
本申请实施例的跨链交互装置中,通过平台交易模块接收第一区块链发送的第一原始账户的第一账户信息和第一余额信息和第二区块链发送的第二原始账户的第二账户信息和第二余额信息;验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给平台交易模块;平台交易模块根据原子交换成功信息,从汇款账户中扣除目标余额,以及将目标余额添加到收款账户;平台交易模块更新第一原始账户余额信息和的第二原始账户余额信息返回第一区块链和第二区块链。由此,能够给有跨链需求的区块链提供跨链服务,提高跨链交易的速度和吞吐量。
为了实现上述实施例,本申请实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述终端设备执行方法实施例所述的跨链交互方法。
为了实现上述实施例,本申请实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现前述方法实施例所述的跨链交互方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种跨链交互系统,其特征在于,包括:第一区块链、第二区块链和跨链交易平台端,所述跨链交易平台端包括:平台交易模块和验证实体;
所述平台交易模块接收所述第一区块链发送的第一原始账户的第一账户信息和第一余额信息和所述第二区块链发送的第二原始账户的第二账户信息和第二余额信息;
所述验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给所述平台交易模块;
所述平台交易模块根据所述原子交换成功信息,从所述汇款账户中扣除目标余额,以及将所述目标余额添加到所述收款账户;
所述平台交易模块更新所述第一原始账户余额信息和所述的第二原始账户余额信息返回所述第一区块链和所述第二区块链。
2.如权利要求1所述的系统,其特征在于,所述验证实体验证跨链交易的原子交换验证成功,包括:
所述第一区块链的将第一账户金额存入第一合约地址,并生成访问所述合约地址的第一密钥,以及对所述第一密钥进行哈希处理生成第一哈希值;
所述第二区块链根据第一哈希值生成第二合约地址,并将第二账户金额存入所述第二合约地址;
所述第一区块链根据所述第一密钥获取所述第二账户金额,所述第二区块链根据所述第一密钥获取所述第一账户金额,则确定所述原子交换验证成功。
3.如权利要求1所述的系统,其特征在于,
根据账户所在原区块链的出块时间,所述第一区块链和所述第二区块链每隔与所述出块时间相同的固定时间收集一次所述平台交易模块中完成的交易信息。
4.如权利要求1所述的系统,其特征在于,在所述平台交易模块接收所述第一区块链发送的第一原始账户余额信息和所述第二区块链发送的第二原始账户余额信息之后,还包括:
将所述第一区块链中的第一原始账户在区块格中创建其对应的多个第一子账户;
将所述第二区块链中的第二原始账户在区块格中创建其对应的多个第二子账户。
5.如权利要求1所述的系统,其特征在于,所述平台交易模块,包括:所有账户集合的系统账本;
所述系统账本通过所述第一区块链的第一接口和所述第二区块链的第一接口转发到跨链交易的所述第一区块链和所述第二区块链中,所述第一区块链和所述第二区块链根据所述平台交易模块返回系统账本信息来进行本地账本更新。
6.如权利要求5所述的系统,其特征在于,
当一个发送或接收交易要改变一个节点的账户状态时,将目标账户的状态设为锁定状态。
7.一种跨链交互方法,其特征在于,包括以下步骤:
所述平台交易模块接收所述第一区块链发送的第一原始账户的第一账户信息和第一余额信息和所述第二区块链发送的第二原始账户的第二账户信息和第二余额信息;
所述验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给所述平台交易模块;
所述平台交易模块根据所述原子交换成功信息,从所述汇款账户中扣除目标余额,以及将所述目标余额添加到所述收款账户;
所述平台交易模块更新所述第一原始账户余额信息和所述的第二原始账户余额信息返回所述第一区块链和所述第二区块链。
8.如权利要求7所述的方法,其特征在于,所述验证实体验证跨链交易的原子交换验证成功,包括:
所述第一区块链的将第一账户金额存入第一合约地址,并生成访问所述合约地址的第一密钥,以及对所述第一密钥进行哈希处理生成第一哈希值;
所述第二区块链根据第一哈希值生成第二合约地址,并将第二账户金额存入所述第二合约地址;
所述第一区块链根据所述第一密钥获取所述第二账户金额,所述第二区块链根据所述第一密钥获取所述第一账户金额,则确定所述原子交换验证成功。
9.如权利要求7所述的方法,其特征在于,
根据账户所在原区块链的出块时间,所述第一区块链和所述第二区块链每隔与所述出块时间相同的固定时间收集一次所述平台交易模块中完成的交易信息。
10.一种跨链交互装置,其特征在于,包括:
接收模块,用于所述平台交易模块接收所述第一区块链发送的第一原始账户的第一账户信息和第一余额信息和所述第二区块链发送的第二原始账户的第二账户信息和第二余额信息;
发送模块,用于所述验证实体验证跨链交易的原子交换验证成功,则将原子交换成功信息发送给所述平台交易模块;
处理模块,用于所述平台交易模块根据所述原子交换成功信息,从所述汇款账户中扣除目标余额,以及将所述目标余额添加到所述收款账户;
返回模块,用于所述平台交易模块更新所述第一原始账户余额信息和所述的第二原始账户余额信息返回所述第一区块链和所述第二区块链。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010351384.7A CN112651724A (zh) | 2020-04-28 | 2020-04-28 | 跨链交互方法、装置和系统 |
PCT/CN2021/080793 WO2021218459A1 (zh) | 2020-04-28 | 2021-03-15 | 跨链交互方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010351384.7A CN112651724A (zh) | 2020-04-28 | 2020-04-28 | 跨链交互方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112651724A true CN112651724A (zh) | 2021-04-13 |
Family
ID=75347103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010351384.7A Pending CN112651724A (zh) | 2020-04-28 | 2020-04-28 | 跨链交互方法、装置和系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112651724A (zh) |
WO (1) | WO2021218459A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254538A (zh) * | 2021-06-17 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | 在区块链中执行交易的方法和区块链节点 |
CN113409145A (zh) * | 2021-06-18 | 2021-09-17 | 支付宝(杭州)信息技术有限公司 | 一种跨区块链的交易同步方法和装置 |
WO2021218459A1 (zh) * | 2020-04-28 | 2021-11-04 | 北京邮电大学 | 跨链交互方法、装置和系统 |
CN113610530A (zh) * | 2021-08-27 | 2021-11-05 | 中国银行股份有限公司 | 跨新旧系统的账户多级联动系统及方法 |
WO2023078124A1 (zh) * | 2021-11-08 | 2023-05-11 | 支付宝(杭州)信息技术有限公司 | 基于区块链的跨境汇款 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113807832A (zh) * | 2021-09-17 | 2021-12-17 | 平安国际智慧城市科技股份有限公司 | 基于区块链的交易方法、装置、设备及可读存储介质 |
CN114301912A (zh) * | 2021-12-23 | 2022-04-08 | 支付宝(杭州)信息技术有限公司 | 基于区块链的信息交互方法和装置 |
CN115208817B (zh) * | 2022-05-29 | 2023-10-10 | 北京理工大学 | 一种基于跨链网关和Floyd算法的可信跨链路由方法 |
CN115526634B (zh) * | 2022-11-21 | 2023-04-18 | 北京共识数信科技有限公司 | 一种基于区块链的智能跨链交互方法、系统和存储介质 |
CN116155624B (zh) * | 2023-04-18 | 2023-07-18 | 北京邮电大学 | 针对异构联盟链的跨链方法、装置及系统 |
CN117294540B (zh) * | 2023-11-27 | 2024-01-23 | 人民法院信息技术服务中心 | 基于角色授权的隐私数据跨链获取方法、装置及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108492108A (zh) * | 2018-03-29 | 2018-09-04 | 深圳前海微众银行股份有限公司 | 区块链跨链通信方法、系统和计算机可读存储介质 |
CN108596619A (zh) * | 2018-04-26 | 2018-09-28 | 深圳怡化电脑股份有限公司 | 用于区块链系统的交易方法、装置、中心节点及系统 |
CN110443704A (zh) * | 2019-06-28 | 2019-11-12 | 阿里巴巴集团控股有限公司 | 一种跨链发送资源的方法和装置 |
CN110689434A (zh) * | 2019-09-26 | 2020-01-14 | 重庆邮电大学 | 一种基于公证人组的跨区块链交互方法 |
WO2020047169A1 (en) * | 2018-08-30 | 2020-03-05 | Alibaba Group Holding Limited | Method, apparatus and electronic device for blockchain transactions |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10255342B2 (en) * | 2017-04-12 | 2019-04-09 | Vijay K. Madisetti | Method and system for tuning blockchain scalability, decentralization, and security for fast and low-cost payment and transaction processing |
CN108876370B (zh) * | 2018-06-12 | 2021-12-17 | 北京航空航天大学 | 一种异构多链架构下跨区块链共享开放数据的体系架构 |
CN108876618A (zh) * | 2018-06-15 | 2018-11-23 | 浙江华信区块链科技服务有限公司 | 一种交换区块链系统及相应的通用区块链互操作方法和网络 |
CN109493037A (zh) * | 2018-11-27 | 2019-03-19 | 深圳声笑科技有限公司 | 基于dag结构的资产发行方法、装置及存储介质 |
CN109685489B (zh) * | 2018-12-28 | 2021-06-01 | 杭州云象网络技术有限公司 | 一种区块链之间的资产跨链交易方法 |
CN112651724A (zh) * | 2020-04-28 | 2021-04-13 | 北京邮电大学 | 跨链交互方法、装置和系统 |
-
2020
- 2020-04-28 CN CN202010351384.7A patent/CN112651724A/zh active Pending
-
2021
- 2021-03-15 WO PCT/CN2021/080793 patent/WO2021218459A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108492108A (zh) * | 2018-03-29 | 2018-09-04 | 深圳前海微众银行股份有限公司 | 区块链跨链通信方法、系统和计算机可读存储介质 |
CN108596619A (zh) * | 2018-04-26 | 2018-09-28 | 深圳怡化电脑股份有限公司 | 用于区块链系统的交易方法、装置、中心节点及系统 |
WO2020047169A1 (en) * | 2018-08-30 | 2020-03-05 | Alibaba Group Holding Limited | Method, apparatus and electronic device for blockchain transactions |
CN110443704A (zh) * | 2019-06-28 | 2019-11-12 | 阿里巴巴集团控股有限公司 | 一种跨链发送资源的方法和装置 |
CN110689434A (zh) * | 2019-09-26 | 2020-01-14 | 重庆邮电大学 | 一种基于公证人组的跨区块链交互方法 |
Non-Patent Citations (1)
Title |
---|
高政风 等: "《基于DAG的分布式账本共识机制研究》", 《HTTP://KNS.CNKI.NET/KCMS/DETAIL/11.2560.TP.20191205.1454.010.HTML》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021218459A1 (zh) * | 2020-04-28 | 2021-11-04 | 北京邮电大学 | 跨链交互方法、装置和系统 |
CN113254538A (zh) * | 2021-06-17 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | 在区块链中执行交易的方法和区块链节点 |
CN113254538B (zh) * | 2021-06-17 | 2021-11-16 | 支付宝(杭州)信息技术有限公司 | 在区块链中执行交易的方法和区块链节点 |
CN114385756A (zh) * | 2021-06-17 | 2022-04-22 | 支付宝(杭州)信息技术有限公司 | 在区块链中执行交易的方法和区块链节点 |
CN113409145A (zh) * | 2021-06-18 | 2021-09-17 | 支付宝(杭州)信息技术有限公司 | 一种跨区块链的交易同步方法和装置 |
CN113409145B (zh) * | 2021-06-18 | 2022-04-22 | 支付宝(杭州)信息技术有限公司 | 一种跨区块链的交易同步方法和装置 |
WO2022262510A1 (zh) * | 2021-06-18 | 2022-12-22 | 支付宝(杭州)信息技术有限公司 | 跨区块链交易同步的方法和装置 |
CN113610530A (zh) * | 2021-08-27 | 2021-11-05 | 中国银行股份有限公司 | 跨新旧系统的账户多级联动系统及方法 |
WO2023078124A1 (zh) * | 2021-11-08 | 2023-05-11 | 支付宝(杭州)信息技术有限公司 | 基于区块链的跨境汇款 |
Also Published As
Publication number | Publication date |
---|---|
WO2021218459A1 (zh) | 2021-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112651724A (zh) | 跨链交互方法、装置和系统 | |
CN107392608B (zh) | 基于区块链系统的数字资产交易方法及区块链系统 | |
US10986177B2 (en) | Systems and methods of self-forking blockchain protocol | |
Robinson et al. | Atomic crosschain transactions for ethereum private sidechains | |
JP7472333B2 (ja) | バリデータノードにより提供されるブロックチェーントランザクションをマイニングする方法及びシステム | |
EP3438903B1 (en) | Hierarchical network system, and node and program used in same | |
CN110597925B (zh) | 一种基于区块链的跨链数据处理方法及装置 | |
Johnson et al. | Sidechains and interoperability | |
Kaur et al. | Scalability in blockchain: Challenges and solutions | |
WO2020059865A1 (ja) | 決済システム、決済方法、利用者装置、決済プログラム | |
CN115427995A (zh) | 时间锁定的区块链事务和相关区块链技术 | |
US20230245080A1 (en) | Convergent Consensus Method for Distributed Ledger Transaction Processing | |
JPWO2019038839A1 (ja) | ブロックチェーン管理装置、ブロックチェーン管理方法及びプログラム | |
CN111488396A (zh) | 业务数据区块链的数据同步方法及装置 | |
Pop et al. | Blockchain based decentralized applications: Technology review and development guidelines | |
Westerkamp et al. | Verilay: A verifiable proof of stake chain relay | |
Grybniak et al. | Waterfall: a scalable distributed ledger technology | |
Bu et al. | Cross hyperledger fabric transactions | |
CN116938523A (zh) | 区块链系统、运行方法、电子设备和存储介质 | |
Harishankar et al. | Plasma Go: A Scalable Sidechain Protocol for Flexible Payment Mechanisms in Blockchain-based Marketplaces | |
Antal et al. | Distributed Ledger Technology Review and Decentralized Applications Development Guidelines. Future Internet 2021, 13, 62 | |
CN111488611A (zh) | 业务数据区块链的关系数据存储方法及装置 | |
KR20200140094A (ko) | 블록체인 기반 배송 시스템 및 이의 운용 방법 | |
Chard et al. | Blockchain scalability for smart contract systems using eUTXO model | |
CN111488606B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210413 |
|
RJ01 | Rejection of invention patent application after publication |