CN108900585A - 跨链事务一致性实现方法 - Google Patents
跨链事务一致性实现方法 Download PDFInfo
- Publication number
- CN108900585A CN108900585A CN201810626257.6A CN201810626257A CN108900585A CN 108900585 A CN108900585 A CN 108900585A CN 201810626257 A CN201810626257 A CN 201810626257A CN 108900585 A CN108900585 A CN 108900585A
- Authority
- CN
- China
- Prior art keywords
- affairs
- node
- message
- block chain
- witness
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- 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
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1895—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for short real-time information, e.g. alarms, notifications, alerts, updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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
-
- 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/3247—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 involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Marketing (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种跨链事务一致性实现方法,属于区块链技术领域。本发明提供一种跨链事务一致性实现方法,所述方法包括:第一区块链中事务的执行和见证:第一区块链代理节点接收到外部网关的命令;事务的提议节点执行并见证区块链事务,其他节点见证区块链事务;第二区块链中事务的执行和见证:第二区块链代理节点接收第一区块链代理节点的事务对通知;事务的提议节点执行并见证区块链事务,其他节点见证区块链事务;如事务的提议节点执行或见证事务失败,则进行相应的事务回滚;所述见证区块链事务基于DPOS机制。本发明提供的跨链事务一致性实现方法,可以有效保障在跨链事务中的操作一致性,保证用户价值不损失。
Description
技术领域
本发明属于区块链技术领域,具体涉及一种跨链事务一致性实现方法。
背景技术
随着区块链的发展,不同区块链间价值交换和操作已经成为比较普遍的需求。链间价值互换,必须基于用户交换的价值对等,无损害为前提条件。在这个操作过程中,存在如下几个需要解决的问题:
(1)价值互换操作避免中心化的控制,防止蓄意的伪造和篡改,应由分布式去中心化的见证和验证的过程来保证公正和公开。
(2)用户在一个链上转移价值资产,目的是在另外一个链上得到对等价值的资产,当在后面这个区块链上操作没有成功,需要将前区块链的操作回滚,将原资产归还给用户,否则用户将面临价值资产损失。
(3)现有跨链的事务操作一般采用哈希锁,使用锁在两个链上对资产锁定和超时释放,但是这种事务一般都是单操作,复杂连续的多个关联操作,就会比较麻烦,设置的锁过多对控制流程和性能有很大的障碍,缺乏一种系统的控制和回滚事务操作的方法。
申请号为201710257367.5的中国专利申请公开了一种区块链的跨链操作方法。该跨链互操作方法,应用于区块链管理系统,包括:获取参与跨链操作的各个机构提供的各自区块链的操作信息,所述操作信息包括:资源锁操作、原始操作,以及与所述原始操作对应的逆操作;按照所述跨链操作的业务逻辑,确定各个所述操作信息中的多个原始操作的执行顺序;执行各个所述资源锁操作,对参与所述跨链操作的各个机构所需的资源进行锁定;按照所述跨链操作中的各个所述原始操作的执行顺序,依次执行各个所述原始操作,在各个所述原始操作的执行过程中判断是否满足跨链操作失败条件;若满足,执行与已执行的所述原始操作相对应的逆操作,当所有的逆操作都执行完毕时,执行解锁操作释放已锁定的资源;若不满足,当所述跨链操作中的所有原始操作都执行完毕时,执行解锁操作释放已锁定的资源。该方案无法解决上述三个需要解决的问题。
发明内容
本发明目的是提供在跨区块链价值转移过程中,能够保证用户资产安全、等值地转换,系统地控制和回滚事务操作以保证跨链间事务一致性的方法。
具体来说,提供了一种跨链事务一致性实现方法,所述方法包括:
第一区块链中事务的执行和见证:第一区块链代理节点接收到外部网关的命令;事务的提议节点执行并见证区块链事务,其他节点见证区块链事务;
第二区块链中事务的执行和见证:第二区块链代理节点接收第一区块链代理节点的事务对通知;事务的提议节点执行并见证区块链事务,其他节点见证区块链事务;
如事务的提议节点执行或见证事务失败,则进行相应的事务回滚;
所述见证区块链事务基于DPOS机制。采用DPOS共识机制组成事务见证区块链,将事务过程的见证和区块链的共识算法进行了结合;而且DPOS在投票过程中,相对其他例如拜占庭容错共识有更高的效率。
进一步而言,所述见证区块链事务过程包括:
事务提议节点发起提议,并将事务的操作见证请求广播到网络中;
其他节点通过消息缓存系统收集操作,验证后进行投票;
事务提议节点统计接收到投票,赞成票达到预设的赞成比例,发送事务对通知到见证网络中;否则事务提议节点回滚其代理区块链的事务操作。
进一步而言,在事务的执行和见证过程中,通过两个通道传送事务的消息:
一个通道用来传送事务内容的消息,所述事务内容的消息由分布式消息缓存系统中各节点在消息缓存上发布和订阅事务;
另外一个通道用来传送事务验证的消息,事务验证的消息通过P2P网络广播,事务提议人节点发起,其他节点验证并对事务投票。将网络中消息按控制和数据两个平面进行分层设计,相对于纯粹的区块链P2P广播消息方式具有更好的性能指标。
进一步而言,分布式消息缓存系统由kafka组成。
进一步而言,所述事务的提议节点以向其他节点广播消息的方式通知其他节点向分布式消息缓存系统订阅相应主题。
进一步而言,在广播消息时使用事务的提议节点的私钥加密签名。
进一步而言,在P2P网络中,所述加密签名为ECDSA签名。
进一步而言,所述事务提议节点和其他节点对事务操作集做merkle计算和验证。利用了merkle数据结构进行快速的内容计算和交易,相对传统的非区块链事务操作方式,具有很好的计算空间和效率。
进一步而言,所述merkle计算和验证的方法包括:
事务提议节点在执行完并发布最后一个操作后,对事务按栈从底到顶进行merkle运算,将运算的哈希值装入验证消息,广播到见证网络中;
其他节点收到验证消息后,从自己缓存的相应主题标识的栈中取出事务操作,从底到顶做merkle运算,然后和事务的提议节点广播的验证消息进行哈希值比对。
进一步而言,所述哈希值比对的结果包括:
如果相同,所述其他节点投赞成票,并给事务的提议节点回应投票消息;
如果不相同,所述其他节点不投票或者投反对票。
进一步而言,事务的提议节点统计接收到投票,赞成票未达到预设的赞成比例,则事务的提议节点按事务的栈顺序回滚,回滚执行完毕后事务的提议节点发起完成事务广播消息,所述其他节点收到相应消息后取消订阅的主题。
进一步而言,所述事务回滚为栈式回滚。使用栈的先进后出的特性在节点上缓存这个操作,能够快速的还原回滚的顺序,相对传统的事件日志的方式,更加轻便快捷。
进一步而言,所述事务回滚包括以下步骤:
第二区块链中事务的提议节点广播回滚事务对消息;
第一区块链中事务的提议节点接收相应回滚事务对消息,回滚第一区块链中事务,并在相应回滚执行完毕后,广播通知其他节点结束事务对;
其他节点取消订阅的事务对中各事务主题,同时清理掉各自保存的各事务消息的缓存栈。
本发明的有益效果如下:本发明可以提供一种公开公正,对跨链交易事务进行见证和验证的过程,支持两个交换链的事务对关联。通过区块链和kafka订阅发布系统的两个消息通道,支持事务完整性的merkle(默克尔树)验证,支持操作过程失败,回滚事务操作的方法。通过该专利方案可以有效保障在跨链事务中的操作一致性,保证用户价值不损失。
附图说明
图1是本发明实施例的事务一致性网络拓扑图。
图2是本发明实施例的事务消息订阅和发布消息过程示意图。
图3是本发明实施例的事务操作的merkle运算原理示意图。
图4是本发明实施例的事务执行和回滚流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并构成对本发明的限定。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
实施例一
本发明采用了事务见证人对“事务对”的DPOS共识、事务集消息缓存、事务操作集的merkle(默克尔树)计算和验证,以及事务操作栈式回滚四个主要技术点。
一、DPOS共识机制组成的事务见证区块链
网络结构请参见图1。区块链A和区块链B是两个价值交换的目标区块链,两个链上执行的事务的见证将有一个独立的P2P网络来验证和跟踪;这个P2P网络由21个节点组成,基于DPOS机制,达成对事务操作的见证共识。其中一个节点作为A区跨链的事务代理,另外一个节点作为B区块链的事务代理,这两个节点是各自区块链上事务感知和执行的入口,同时这两三个节点也参与其他节点发起事务提议的验证和投票。
两个区块链上的事务Ta和Tb组成一个事务对。
P2P网络是一个分布式的见证网络,交易提议节点发起提议,并将事务的操作见证请求广播到网络中,其他节点通过消息缓存系统收集操作,验证后进行投票,投票数达到预设的赞成比例(如15/21),则事务被认可,否则要求提议节点回滚它代理区块链的事务操作。
如果事务Ta执行并见证完成,但是事务Tb执行过程中最终失败,那么见证网络,除了回滚当前已经执行的Tb,还需要关联回滚整个Ta事务。
采用DPOS共识机制组成事务见证区块链,将事务过程的见证和区块链的共识算法进行了结合;而且DPOS在投票过程中,相对其他例如拜占庭容错共识有更高的效率。
二、基于kafka事务消息缓存
事务消息内容订阅和发布参见图2和图4。为了提高事务传递的效率,存在两个通道,一个是事务消息内容的通道,这个是由kafka组成的分布式消息缓存系统,21个节点可以在消息缓存上发布和订阅事务;另外一个通道用来传递事务验证的消息,这个消息通过P2P网络广播,事务提议人节点发起,其他节点验证并对事务投票。
事务提议节点通过publish msg(即发布事务主题的消息,例如图4中的publishtopic)在kafka中发布针对某个事务Ta的topicID(即主题ID),然后通过区块链通道广播通知其他节点有新事务发布,请订阅。其他节点收到广播后通过subscribe msg(即订阅消息,例如图4中的subscribe topic)从kafka订阅和topicID一致的事务信息。后续事务提议节点通过publish Xn of topic(即发布事务操作Xn的消息)发布该事务的操作Xn到kafka,事务包含多少个操作,kafka将多少个具体的操作内容通过notify Xn(即通知事务操作Xn的消息)通知曾经订阅过该事务的节点。
事务Ta的topicID由用户账号、当前事务(事务名称)、当前时间这三个元素一起计算的哈希值。
将网络中消息按控制和数据两个平面进行分层设计,相对于纯粹的区块链P2P广播消息方式具有更好的性能指标。
三、事务操作集合的merkle计算和验证
事务由先后顺序的不同操作组成,为了保证事务的完整和有效性,必须通过在不同节点上进行验证,同时考虑验证的高效性,本专利采用对事务的操作集做merkle计算。事务操作的merkle运算和验证参见图3。
事务Ta由先后时间关系的5个操作组成,如下:
Ta=[X1,X2,X3,X4,X5]
提议节点在发布完操作X5后,对Ta做merkle运算,得到一个运算哈希值,并将这个哈希值组装成验证消息。
提议节点使用私钥做ECDSA签名后,广播到见证区块链验证,其他节点收到广播后,通过提议节点的公钥还原出验证消息,然后根据自己从kafka接受到的topicID对应的所有操作Xn进行相同的merkle运算,并和提议节点广播的验证消息中的merkle运算得到的哈希值进行比对,相同则投赞成票,不同则可以不投票或者投反对票。
传统的非区块链事务操作方式,一般采用数据缓存、数据比较进行计算和验证。本申请中的事务操作集合的merkle计算和验证,利用merkle数据结构进行快速的内容计算和交易。相对传统的非区块链事务操作方式,具有很好的计算空间和效率。
四、事务操作栈式回滚
事务的操作有时间先后关联顺序,正向执行和反向回滚都依赖这个顺序,不能搞错。为了保存事务的这个操作顺序,本发明使用栈的先进后出的特性在节点上缓存这个操作,能够快速的还原回滚的顺序,相对传统的事件日志的方式,更加轻便快捷。事务执行及回滚全部流程参见图4。
正向执行,先执行X1,最后执行X5;
反向回滚,先回滚X5,最后回滚X1;
两个链间关联事务对[Ta-Tb]的回滚顺序是,先回滚Tb,再回滚Ta。
下面结合一个具体的代币互换的场景,来表述本发明对事务一致性处理的全部实施过程。
场景前置条件:
用户a在区块链A中分两次给b账户各转5个tokenA,期望在区块链B中换取从b账户获得1个tokenB。
事务对[Ta-Tb]中,Ta=[X1,X2],X1和X2分别对应区块链A上两次转账的事务。
X1:用户a在区块链A中给b账户转5个tokenA。
X2:用户a在区块链A中给b账户转5个tokenA。
Tb=[Y1],Y1对应区块链上B上的一次转账事务:
Y1:用户a在区块链B中从b账户获得1个tokenB。
在Y1执行失败时,需要回滚事务Ta。预期结果是用户a没有获取到tokenB,但是除了在区块链A的转账成本外,也没有损失tokenA。
实施步骤包括三个阶段:Ta的执行和见证,Tb的执行和见证,事务回滚和缓存清理。
第一部分:Ta执行和见证
步骤101:
见证网络节点N1是部署在区块链A中的代理节点。该节点接收到外部网关的命令,需要执行关联事务[Ta-Tb],N1为事务Ta的提议节点。
步骤102:
节点N1生成事务Ta的主题topicID,并向其他节点广播init tx消息(用于事务初始化的消息),通知其他节点向kafka订阅topicID主题。N1广播的消息都需要使用N1的私钥加密签名。在P2P网络中,广播的消息需要使用提议节点的私钥做ECDSA签名。
步骤103:
节点N1逐次执行Ta中操作步骤,每执行完一个操作(X1或X2,以Xn表示)后,如果成功就将该操作Xn发布到kafka中,同时将该操作Xn压入topicID为标识的栈中。如果失败,重试执行该操作Xn 3次。重试3次仍失败,则发起回滚事务Ta的广播通知rollblk tx(用于事务回滚的消息)。
步骤104:
其他节点收到kafka通知的topicID主题的操作消息,也将Xn压入topicID为标识的栈中。
步骤105:
节点N1在执行完最后一个操作并发布这个操作后,对事务Ta按栈从底到顶进行merkle运算。将运算的哈希值装入验证消息verfiy tx消息(用于事务验证的消息),广播到见证网络中。
步骤106:
其他节点收到verify tx消息后,从自己缓存topicID栈中取出Ta,从底到顶做merkle运算,然后和节点N1广播的进行比对,如果相同,表示节点N1执行事务Ta是完整可信的,可以投赞成票,并给节点N1回应投票消息vfyblk tx消息(用于投票的消息)。如果不相同,可以不投票或者投反对票。
步骤107:
节点N1统计接收到vfyblk tx的投票,赞成票达到预设的赞成比例(如15/21),认为事务Ta见证被认可,接着根据关联事务[Ta-Tb]发送事务对通知notify txpair(用于通知事务对的消息)到见证网络中。
如果赞成票不达标,则见证网络认为节点N1的执行事务Ta存在问题,不被认可,节点N1需要按事务Ta的栈顺序回滚。回滚完,节点N1发起完成事务广播消息finish tx(用于结束事务的消息),其他节点收到该消息后取消订阅topicID。
第二部分:Tb执行和见证
步骤201-206:
其他节点收到节点N1的事务对通知notify txpair后,保存事务对[Ta-Tb]关联关系。节点N21收到通知后,发现目的区块链中事务Tb的执行节点是自己,按照和节点N1执行的101~106步骤类似的步骤,执行和见证事务Tb。
如果执行事务Tb失败(即节点N21执行事务Tb时,事务Tb包含的唯一操作Y1执行失败,且3次重试均告失败),进入步骤301。
如果执行事务Tb成功,见证事务Tb失败(即事务Tb见证不被其他节点投票认可),进入步骤301。
如果执行事务Tb成功,见证事务Tb成功(即节点N21执行事务Tb成功,见证事务Tb被其他节点投票认可),进入步骤401。
第三部分:关联事务对回滚和清理
步骤301:
回滚Tb关联的整个事务对[Ta-Tb]。节点N21广播回滚事务对消息rollblk txpair(用于事务对回滚的消息),同时自己回滚Tb,进入步骤302。
步骤302:
节点N1接收到节点N21广播的rollblk txpair消息,发现源区块链中事务的执行节点是自己,则开始回滚Ta。回滚执行完毕后,发起结束事务对广播消息finish txpair(用于结束事务对的消息);其他节点收到该广播消息后,取消订阅Ta和Tb,同时清理掉Ta和Tb的缓存栈,流程结束。
第四部分:关联事务执行成功
步骤401:
节点N21广播finish txpair消息,其他节点收到后取消订阅Ta和Tb,并清理各自保存的Ta和Tb信息的缓存栈,流程结束。
Claims (13)
1.一种跨链事务一致性实现方法,其特征在于,所述方法包括,
第一区块链中事务的执行和见证:第一区块链代理节点接收到外部网关的命令;事务的提议节点执行并见证区块链事务,其他节点见证区块链事务;
第二区块链中事务的执行和见证:第二区块链代理节点接收第一区块链代理节点的事务对通知;事务的提议节点执行并见证区块链事务,其他节点见证区块链事务;
如事务的提议节点执行或见证事务失败,则进行相应的事务回滚;
所述见证区块链事务基于DPOS机制。
2.根据权利要求1所述的跨链事务一致性实现方法,其特征在于,所述见证区块链事务过程包括:
事务提议节点发起提议,并将事务的操作见证请求广播到网络中;
其他节点通过消息缓存系统收集操作,验证后进行投票;
事务提议节点统计接收到投票,赞成票达到预设的赞成比例,发送事务对通知到见证网络中;否则事务提议节点回滚其代理区块链的事务操作。
3.根据权利要求1所述的跨链事务一致性实现方法,其特征在于,在事务的执行和见证过程中,通过两个通道传送事务的消息:
一个通道用来传送事务内容的消息,所述事务内容的消息由分布式消息缓存系统中各节点在消息缓存上发布和订阅事务;
另外一个通道用来传送事务验证的消息,事务验证的消息通过P2P网络广播,事务提议人节点发起,其他节点验证并对事务投票。
4.根据权利要求3所述的跨链事务一致性实现方法,其特征在于,分布式消息缓存系统由kafka组成。
5.根据权利要求3所述的跨链事务一致性实现方法,其特征在于,所述事务的提议节点以向其他节点广播消息的方式通知其他节点向分布式消息缓存系统订阅相应主题。
6.根据权利要求3所述的跨链事务一致性实现方法,其特征在于,在广播消息时使用事务的提议节点的私钥加密签名。
7.根据权利要求6所述的跨链事务一致性实现方法,其特征在于,在P2P网络中,所述加密签名为ECDSA签名。
8.根据权利要求1所述的跨链事务一致性实现方法,其特征在于,所述事务提议节点和其他节点对事务操作集做merkle计算和验证。
9.根据权利要求8所述的跨链事务一致性实现方法,其特征在于,所述merkle计算和验证的方法包括:
事务提议节点在执行完并发布最后一个操作后,对事务按栈从底到顶进行merkle运算,将运算的哈希值装入验证消息,广播到见证网络中;
其他节点收到验证消息后,从自己缓存的相应主题标识的栈中取出事务操作,从底到顶做merkle运算,然后和事务的提议节点广播的验证消息进行哈希值比对。
10.根据权利要求9所述的跨链事务一致性实现方法,其特征在于,所述哈希值比对的结果包括:
如果相同,所述其他节点投赞成票,并给事务的提议节点回应投票消息;
如果不相同,所述其他节点不投票或者投反对票。
11.根据权利要求10所述的跨链事务一致性实现方法,其特征在于,事务的提议节点统计接收到投票,赞成票未达到预设的赞成比例,则事务的提议节点按事务的栈顺序回滚,回滚执行完毕后事务的提议节点发起完成事务广播消息,所述其他节点收到相应消息后取消订阅的主题。
12.根据权利要求1所述的跨链事务一致性实现方法,其特征在于,所述事务回滚为栈式回滚。
13.根据权利要求12所述的跨链事务一致性实现方法,其特征在于,所述事务回滚包括以下步骤:
第二区块链中事务的提议节点广播回滚事务对消息;
第一区块链中事务的提议节点接收相应回滚事务对消息,回滚第一区块链中事务,并在相应回滚执行完毕后,广播通知其他节点结束事务对;
其他节点取消订阅的事务对中各事务主题,同时清理掉各自保存的各事务消息的缓存栈。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810626257.6A CN108900585A (zh) | 2018-06-15 | 2018-06-15 | 跨链事务一致性实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810626257.6A CN108900585A (zh) | 2018-06-15 | 2018-06-15 | 跨链事务一致性实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108900585A true CN108900585A (zh) | 2018-11-27 |
Family
ID=64345292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810626257.6A Pending CN108900585A (zh) | 2018-06-15 | 2018-06-15 | 跨链事务一致性实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108900585A (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109873861A (zh) * | 2019-01-11 | 2019-06-11 | 平安科技(深圳)有限公司 | 跨区块链节点的交互方法及装置、存储介质及电子设备 |
CN110049030A (zh) * | 2019-04-08 | 2019-07-23 | 山东公链信息科技有限公司 | 基于随机连续离散的区块链共识系统 |
CN110069533A (zh) * | 2019-04-09 | 2019-07-30 | 深圳前海微众银行股份有限公司 | 一种基于区块链的事件订阅方法及装置 |
CN110113381A (zh) * | 2019-04-09 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种区块链中订阅主题的方法及装置 |
CN110597925A (zh) * | 2019-08-15 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链的跨链数据处理方法及装置 |
CN111046109A (zh) * | 2019-12-27 | 2020-04-21 | 深圳市网心科技有限公司 | 一种跨链任务处理方法、装置、设备及可读存储介质 |
CN111090891A (zh) * | 2020-03-23 | 2020-05-01 | 卓尔智联(武汉)研究院有限公司 | 一种基于区块链的公证人选取方法及系统 |
CN111311414A (zh) * | 2020-02-27 | 2020-06-19 | 杭州云象网络技术有限公司 | 一种基于一致性哈希算法的区块链多方共识方法 |
CN111324425A (zh) * | 2020-02-28 | 2020-06-23 | 百度在线网络技术(北京)有限公司 | 一种数据访问方法、装置、设备及存储介质 |
CN111464536A (zh) * | 2020-03-31 | 2020-07-28 | 中国联合网络通信集团有限公司 | 一种区块链跨链方法及装置 |
CN111488367A (zh) * | 2020-04-16 | 2020-08-04 | 深圳前海微众银行股份有限公司 | 数据一致性的实现方法、装置、设备及计算机存储介质 |
CN111769958A (zh) * | 2020-09-02 | 2020-10-13 | 百度在线网络技术(北京)有限公司 | 区块链跨链处理方法、装置、设备和存储介质 |
CN111984439A (zh) * | 2020-09-03 | 2020-11-24 | 深圳壹账通智能科技有限公司 | 基于区块链的数据处理方法、装置及存储介质 |
CN112235423A (zh) * | 2020-12-11 | 2021-01-15 | 腾讯科技(深圳)有限公司 | 跨链事务处理方法及装置、电子设备、存储介质 |
CN112491846A (zh) * | 2020-11-18 | 2021-03-12 | 深圳前海微众银行股份有限公司 | 一种跨链的区块链通信方法及装置 |
CN112507393A (zh) * | 2020-12-10 | 2021-03-16 | 浙商银行股份有限公司 | 一种保障区块链跨链事务一致性的方法 |
CN112529706A (zh) * | 2020-12-10 | 2021-03-19 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN112581128A (zh) * | 2020-12-10 | 2021-03-30 | 浙商银行股份有限公司 | 一种具有存在证明的异构许可链价值交换方法 |
CN112583917A (zh) * | 2020-12-10 | 2021-03-30 | 浙商银行股份有限公司 | 一种基于cscp的混合链构建方法 |
CN112600699A (zh) * | 2020-12-07 | 2021-04-02 | 华中科技大学 | 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 |
CN112714158A (zh) * | 2020-12-21 | 2021-04-27 | 东软集团股份有限公司 | 事务处理方法、中继网络、跨链网关、系统、介质和设备 |
CN115208880A (zh) * | 2022-03-29 | 2022-10-18 | 深圳大学 | 预期区块生成方法、装置、计算机设备和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573828A (zh) * | 2015-12-17 | 2016-05-11 | 布比(北京)网络技术有限公司 | 一种操作处理方法及装置 |
CN106611061A (zh) * | 2016-12-29 | 2017-05-03 | 北京众享比特科技有限公司 | 基于区块链网络的数据库写入方法及系统 |
CN106682907A (zh) * | 2016-12-10 | 2017-05-17 | 江苏恒为信息科技有限公司 | 区块链数据对比及共识方法 |
CN106899698A (zh) * | 2017-04-11 | 2017-06-27 | 张铮文 | 一种区块链之间的跨链互操作方法 |
CN107248076A (zh) * | 2017-06-24 | 2017-10-13 | 北京天德科技有限公司 | 一种双链式跨链交易的区块链互联网模型的核心算法 |
CN107392608A (zh) * | 2017-07-11 | 2017-11-24 | 北京博晨技术有限公司 | 基于区块链系统的数字资产交易方法及区块链系统 |
US9875510B1 (en) * | 2015-02-03 | 2018-01-23 | Lance Kasper | Consensus system for tracking peer-to-peer digital records |
CN107909369A (zh) * | 2017-10-13 | 2018-04-13 | 布比(北京)网络技术有限公司 | 基于跨链交易的共识方法、装置和存储介质 |
-
2018
- 2018-06-15 CN CN201810626257.6A patent/CN108900585A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9875510B1 (en) * | 2015-02-03 | 2018-01-23 | Lance Kasper | Consensus system for tracking peer-to-peer digital records |
CN105573828A (zh) * | 2015-12-17 | 2016-05-11 | 布比(北京)网络技术有限公司 | 一种操作处理方法及装置 |
CN106682907A (zh) * | 2016-12-10 | 2017-05-17 | 江苏恒为信息科技有限公司 | 区块链数据对比及共识方法 |
CN106611061A (zh) * | 2016-12-29 | 2017-05-03 | 北京众享比特科技有限公司 | 基于区块链网络的数据库写入方法及系统 |
CN106899698A (zh) * | 2017-04-11 | 2017-06-27 | 张铮文 | 一种区块链之间的跨链互操作方法 |
CN107248076A (zh) * | 2017-06-24 | 2017-10-13 | 北京天德科技有限公司 | 一种双链式跨链交易的区块链互联网模型的核心算法 |
CN107392608A (zh) * | 2017-07-11 | 2017-11-24 | 北京博晨技术有限公司 | 基于区块链系统的数字资产交易方法及区块链系统 |
CN107909369A (zh) * | 2017-10-13 | 2018-04-13 | 布比(北京)网络技术有限公司 | 基于跨链交易的共识方法、装置和存储介质 |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109873861A (zh) * | 2019-01-11 | 2019-06-11 | 平安科技(深圳)有限公司 | 跨区块链节点的交互方法及装置、存储介质及电子设备 |
CN109873861B (zh) * | 2019-01-11 | 2022-04-12 | 平安科技(深圳)有限公司 | 跨区块链节点的交互方法及装置、存储介质及电子设备 |
CN110049030A (zh) * | 2019-04-08 | 2019-07-23 | 山东公链信息科技有限公司 | 基于随机连续离散的区块链共识系统 |
CN110113381A (zh) * | 2019-04-09 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种区块链中订阅主题的方法及装置 |
CN110113381B (zh) * | 2019-04-09 | 2023-04-07 | 深圳前海微众银行股份有限公司 | 一种区块链中订阅主题的方法及装置 |
CN110069533A (zh) * | 2019-04-09 | 2019-07-30 | 深圳前海微众银行股份有限公司 | 一种基于区块链的事件订阅方法及装置 |
CN110597925A (zh) * | 2019-08-15 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链的跨链数据处理方法及装置 |
CN110597925B (zh) * | 2019-08-15 | 2021-09-14 | 腾讯科技(深圳)有限公司 | 一种基于区块链的跨链数据处理方法及装置 |
CN111046109A (zh) * | 2019-12-27 | 2020-04-21 | 深圳市网心科技有限公司 | 一种跨链任务处理方法、装置、设备及可读存储介质 |
CN111046109B (zh) * | 2019-12-27 | 2023-09-15 | 深圳市迅雷网络技术有限公司 | 一种跨链任务处理方法、装置、设备及可读存储介质 |
CN111311414A (zh) * | 2020-02-27 | 2020-06-19 | 杭州云象网络技术有限公司 | 一种基于一致性哈希算法的区块链多方共识方法 |
CN111311414B (zh) * | 2020-02-27 | 2023-12-08 | 杭州云象网络技术有限公司 | 一种基于一致性哈希算法的区块链多方共识方法 |
CN111324425A (zh) * | 2020-02-28 | 2020-06-23 | 百度在线网络技术(北京)有限公司 | 一种数据访问方法、装置、设备及存储介质 |
CN111324425B (zh) * | 2020-02-28 | 2023-03-31 | 百度在线网络技术(北京)有限公司 | 一种数据访问方法、装置、设备及存储介质 |
CN111090891A (zh) * | 2020-03-23 | 2020-05-01 | 卓尔智联(武汉)研究院有限公司 | 一种基于区块链的公证人选取方法及系统 |
CN111464536A (zh) * | 2020-03-31 | 2020-07-28 | 中国联合网络通信集团有限公司 | 一种区块链跨链方法及装置 |
CN111464536B (zh) * | 2020-03-31 | 2022-06-07 | 中国联合网络通信集团有限公司 | 一种区块链跨链方法及装置 |
CN111488367A (zh) * | 2020-04-16 | 2020-08-04 | 深圳前海微众银行股份有限公司 | 数据一致性的实现方法、装置、设备及计算机存储介质 |
CN111769958A (zh) * | 2020-09-02 | 2020-10-13 | 百度在线网络技术(北京)有限公司 | 区块链跨链处理方法、装置、设备和存储介质 |
CN111769958B (zh) * | 2020-09-02 | 2021-01-01 | 百度在线网络技术(北京)有限公司 | 区块链跨链处理方法、装置、设备和存储介质 |
CN111984439A (zh) * | 2020-09-03 | 2020-11-24 | 深圳壹账通智能科技有限公司 | 基于区块链的数据处理方法、装置及存储介质 |
CN112491846B (zh) * | 2020-11-18 | 2023-04-18 | 深圳前海微众银行股份有限公司 | 一种跨链的区块链通信方法及装置 |
CN112491846A (zh) * | 2020-11-18 | 2021-03-12 | 深圳前海微众银行股份有限公司 | 一种跨链的区块链通信方法及装置 |
CN112600699A (zh) * | 2020-12-07 | 2021-04-02 | 华中科技大学 | 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 |
CN112600699B (zh) * | 2020-12-07 | 2022-04-01 | 华中科技大学 | 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 |
US11792105B2 (en) | 2020-12-07 | 2023-10-17 | Huazhong University Of Science And Technology | Method of building a dynamic overlay network topology based on cross-chain interaction between blockchains and device therefor |
CN112529706B (zh) * | 2020-12-10 | 2024-04-09 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN112507393A (zh) * | 2020-12-10 | 2021-03-16 | 浙商银行股份有限公司 | 一种保障区块链跨链事务一致性的方法 |
CN112583917A (zh) * | 2020-12-10 | 2021-03-30 | 浙商银行股份有限公司 | 一种基于cscp的混合链构建方法 |
CN112581128A (zh) * | 2020-12-10 | 2021-03-30 | 浙商银行股份有限公司 | 一种具有存在证明的异构许可链价值交换方法 |
CN112529706A (zh) * | 2020-12-10 | 2021-03-19 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN112581128B (zh) * | 2020-12-10 | 2024-04-05 | 浙商银行股份有限公司 | 一种具有存在证明的异构许可链价值交换方法 |
CN112507393B (zh) * | 2020-12-10 | 2024-01-30 | 浙商银行股份有限公司 | 一种保障区块链跨链事务一致性的方法 |
CN112235423A (zh) * | 2020-12-11 | 2021-01-15 | 腾讯科技(深圳)有限公司 | 跨链事务处理方法及装置、电子设备、存储介质 |
CN112714158A (zh) * | 2020-12-21 | 2021-04-27 | 东软集团股份有限公司 | 事务处理方法、中继网络、跨链网关、系统、介质和设备 |
CN112714158B (zh) * | 2020-12-21 | 2023-11-17 | 东软集团股份有限公司 | 事务处理方法、中继网络、跨链网关、系统、介质和设备 |
CN115208880B (zh) * | 2022-03-29 | 2023-11-10 | 深圳大学 | 预期区块生成方法、装置、计算机设备和存储介质 |
CN115208880A (zh) * | 2022-03-29 | 2022-10-18 | 深圳大学 | 预期区块生成方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108900585A (zh) | 跨链事务一致性实现方法 | |
CN109685489B (zh) | 一种区块链之间的资产跨链交易方法 | |
CN110784346B (zh) | 一种基于信誉值的pbft共识系统及方法 | |
CN109462587B (zh) | 区块链分层共识方法、区块链网络系统及区块链节点 | |
CN108492103B (zh) | 一种联盟区块链共识方法 | |
CN107481140B (zh) | 凭证标识码处理方法及系统、服务器及存储介质 | |
CN110351133A (zh) | 用于区块链系统中的主节点切换处理的方法及装置 | |
CN111427957B (zh) | 区块链投票信息校验方法、装置、设备以及存储介质 | |
CN111314067B (zh) | 区块存储方法、装置、计算机设备及存储介质 | |
CN110298754B (zh) | 一种应用于区块链的共识方法 | |
Zhang et al. | Cycledger: A scalable and secure parallel protocol for distributed ledger via sharding | |
CN113746858B (zh) | 一种基于可验证随机函数的跨链通信方法 | |
CN109981565A (zh) | 基于Meta-BFT共识机制的区块链平台及实现方法 | |
US20220278854A1 (en) | Unity Protocol Consensus | |
Chakrabarti et al. | A blockchain based incentive scheme for post disaster opportunistic communication over DTN | |
CN116527684B (zh) | 基于1+1+n中继共识委员会的多链信息交互方法 | |
CN111597077A (zh) | 数据处理方法、装置、计算机设备以及存储介质 | |
CN115174570B (zh) | 一种基于动态委员会的跨链共识方法及系统 | |
CN110535955A (zh) | 一种基于多链的配用电数据共享系统与方法 | |
CN112182626B (zh) | 一种基于区块链技术的供应链金融风险管理系统 | |
US20230360046A1 (en) | Blockchain-based block processing method and apparatus, device, storage medium, and program product | |
CN113922996A (zh) | 一种基于跨区块链技术的电子学籍档案隐私保护方法 | |
CN110555764B (zh) | 一种去中心化环境下区块链达成一致性的方法及系统 | |
CN111970370A (zh) | 基于面向通信设备体系的多层区块链协议拓展系统及方法 | |
CN116260826A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181127 |