CN112965985A - 一种实现跨链互操作的数据一致性维护方法 - Google Patents
一种实现跨链互操作的数据一致性维护方法 Download PDFInfo
- Publication number
- CN112965985A CN112965985A CN202110166366.6A CN202110166366A CN112965985A CN 112965985 A CN112965985 A CN 112965985A CN 202110166366 A CN202110166366 A CN 202110166366A CN 112965985 A CN112965985 A CN 112965985A
- Authority
- CN
- China
- Prior art keywords
- chain
- cross
- transaction
- consensus
- link
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Technology Law (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- Computing Systems (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于区块链技术领域,具体为一种实现跨链互操作的数据一致性维护方法。针对跨链业务场景,本发明方法包括:设计新的跨链协同模型,实现在本链即可对多链上的资源完成互操作。设计面向稳定通证与数字资产的跨链一致性维护方法,用于保证跨链互操作在多链的因果和最终一致性。设计基于事务模式和随机可验证函数的跨链共识协议,用于保证跨链操作的确定性。本发明以服务的形式插件化嵌入到区块链***中,对已有***无侵入性。本发明可满足跨场景、跨地域不同区块链应用之间的跨链协作需求。
Description
技术领域
本发明属于区块链技术领域,具体涉及一种实现跨链互操作的数据一致性维护方法。
背景技术
区块链作为构建未来价值互联网的重要基础设施,已在对账与清结算、跨境支付、供应链金融、司法仲裁、政务服务、物联网、智慧城市等众多领域落地企业级应用。然而目前不同区块链应用之间互操作性不足,无法有效进行可信数据流通和协作,各个区块链俨然成为一座座信任孤岛,很大程度阻碍了区块链应用生态的融合发展。区块链想要跨越到真正的价值互联网,需要一种通用、高效的区块链跨链协作机制,实现跨场景、跨地域不同区块链应用之间的互联互通。
当前区块链平台种类众多,各种平台的接口、协议、架构等多方面都存在异构的情况,要实现跨区块链之间的交互就需要有一套可靠的跨链协议。跨链协议除了要打通区块链平台的交互,还需要实现在区块链平台之间的原子性操作。现有的跨链协议包括哈希时间锁定、中继、侧链、分布式密钥交换等,但是大部分仅考虑了数字货币兑换这种单一场景。多元化的数字资产场景和区块链应用带来了区块链资产相互隔离的问题,不同数字资产业务彼此搭建的区块链上的数字资产无法安全可信地实现互通,区块链上存在的数字资产价值越来越大,种类越来越多,跨链的需求愈发迫切。而现有的跨链技术还无法满足用户方便与高效的跨链互操作需求,同时保证跨链数据的一致性。在面对更复杂的联盟链场景下的数字资产交换、合约接口调用等场景,如何在各链共享数据与非共享数据的情况下实现跨链互操作,如何保证跨链操作的原子性和事务性,还需要有更多理论和工程层面的探索和突破。
发明内容
为了实现高效的跨链互操作功能,本发明提供一种实现跨链互操作的数据一致性维护方法;本发明通过设计新的跨链协同模型和跨链数字资产互操作对象,能够让用户在单链上方便的实现高效的跨链互操作,跨链一致性维护方法用于保证跨链互操作在多链的因果和最终一致性,事务模式下基于随机可验证函数的跨链共识协议,保证跨链操作的确定性。该方法无需事先锁定其他链上的资源,能够以乐观的方式的在本链立即完成跨链操作,提高整个***跨链操作的效率。同时本发明以服务的形式插件化嵌入到区块链***中,对已有***无侵入性。
本发明将他链上需要跨链的资源同步到相关链上,使得用户能在单链上对其他链上拥有的链上资源方便地进行跨链互操作。本发明能够在各链服务物理位置较远的情况下,也即跨链延迟高的情况下,保证跨链操作的因果一致性。同时如果有冲突产生,基于回溯算法和分支失效算法也能保证各链数据的最终一致性。本发明在事务模式下,基于随机可验证函数不断生成跨链区块,保证跨链操作的安全性和确定性。本发明采用的技术方案如下。
本发明提供一种实现跨链互操作的数据一致性维护方法,适用于跨链场景的数据模型,在跨链场景中将未花费输出(Unspent Transaction Output,UTXO)扩展到通用数据,提出跨链UTXO,在各链之间流通与操作,适用于去中心化场景和复杂场景的跨链协作。将一个跨链交易C-Tx(Cross-chain Transaction)定义为:
C-Tx=<TxID,ChainID,List[TxIput],List[TxOutput],CTS>
TxInput=<TxID,Vout,scriptSig>
TxOutput=<Value,scriptPubKey,Extra>
其中,TxID为交易的唯一标识,ChainID为来源链标识,Vout为输出在引用交易中的顺序,顺序CTS为时间戳,scriptSig为解锁脚本,scriptPubKey为锁定脚本,Extra为辅助信息。
本发明中,基于跨链协同模型实现跨链互操作的数据一致性维护;所述跨链协同模型基于区块链分层模型构建,除了包括数据层、网络层、共识层和合约层外,还包括基于合约层构建的互操作层,所述互操作层包括三个模块:一致性维护模块、跨链路由模块和跨链共识模块。其中:
(1)跨链路由模块
跨链路由模块用于实现无侵入式的异构跨链互操作。基于跨链路由模块实现同步区块头的基础上,路由完成跨链交易的处理,主要分为两类操作。
监听跨链合约发出的Event,广播给其他路由。当本链的业务逻辑触发了跨链合约数据的修改后,路由监听到事件,并将其转化成相应的协议格式通知其他路由。
收到其他路由发送的跨链交易,并将其提交到链上,验证合法性,再通过一致性维护模块来提交执行。
(2)一致性维护模块
利用基于改进的地址空间转换算法作为跨链数据一致性维护方法,保证各链上跨链数据的因果和最终一致性;所述基于改进的地址空间转换算法如下:
Branch-check算法,用于检测某个跨链交易C-Tx是否与当前全局视图存在冲突,遍历该C-Tx的引用跨链交易,如果不存在重复引用,即可执行该跨链操作,并且更新全局视图和交易的引用输出列表。
跨链数据一致性维护算法部分,如果是本链操作,直接执行即可,不需锁定他链资源。如果是其他链产生的操作,当该操作满足执行的条件时,首先回溯所有C-Tx到该C-Tx的时间戳,隐藏所有在其之后产生的操作的执行效果,使用Branch-Check算法判断是否能执行,如果不能,直接丢弃,接着恢复已有操作,如果检查恢复的交易中存在与C-Tx引用的跨链UTXO相同,为这些并发的操作定义全序,使用FOrder来处理数字资产的并发冲突。
给出如下定义
FOrder(Tx1)<FOrder(Tx2)当且仅当:
i.Tx1.fee>Tx2.fee或者
ii.sum(BV)<sum(BV)或者
iii.sum(BV)=sum(BV)时a<b
根据FOrder,当恢复的操作中存在交易FOrder比C-Tx小时,C-Tx废弃,如果C-Tx比FOrder小,冲突的交易整个Branch将标记为失效。
(3)跨链共识模块
引入事务模式下的基于随机可验证函数的跨链共识协议,保证跨链操作的确定性;跨链共识协议如下:
对于一个事务操作,每个站点产生一个特殊的VOP(VRF proof operation)操作与其他的本地操作构成依赖关系,并要求事务与它所有相关的VOP操作一起执行,从而实现全局的序列化。在某链收集到对应事务的所有VOP操作后,即可判断自己是否是本轮区块的Proposer,并且可以保证跨链共识操作在所有链的全局序列化特性,这里的VOP操作具体定义为:
VOP=<Result,Proof,PublicKey>
其中,Result为随机可验证算法结果,Proof为随机可验证算法证明,PublicKey为公钥。
跨链共识操作S1被广播到其他链,同时上轮的胜出者BC3产生一个对应的VOP操作,附上自己的相关验证信息,当其他链收到跨链共识操作S1后,会产生对应的VOP操作并广播,实现跨链操作的全局序列化。当跨链共识操作S1满足执行条件后,此时每个链都收到了其他链的随机可验证凭证,根据规则得出本轮共识区块的Proposer,由该链负责生成跨链共识区块,保证跨链操作的确定性。
本发明中,基于跨链协同模型构建的应用层中还包括两种跨链互操作对象:跨链稳定通证CFT和跨链数字资产CNFT。
和现有技术相比,本发明的有益效果在于:
1、提出了一种新的跨链协同模型,基于此模型可以很好地实现跨链互操作功能,用户在本链应用上即可对他链的资源进行操作,提高易用性。
2、提出了一种跨链数据一致性维护方法,以乐观无锁的方式高效完成跨链互操作,同时保证跨链数据的最终一致性。
3、基于上述模型等,提出了一种事务模式下基于随机可验证函数的跨链共识协议,保证跨链操作的确定性。
附图说明
图1为本发明跨链协同分层模型图示。
图2为本发明各链维护跨链资产图示。
图3为本发明跨链***设计图示。
图4为本发明跨链共识图示。
图5为本发明实施例1图示。
图6为本发明实施例2图示。
具体实施方式
下面结合附图和实施例对本发明的技术方案进行详细阐述。
1.跨链协同模型
尼克萨博提出的智能合约理论几乎与互联网同时出现,但应用实践却一直严重地落后于理论,主要是面临三个问题,一是资产需要数字化和数字资产的账本化。二是合约方需要一个受信任的执行环境。三是代码合约需要有类似合同盖章不可随意变更和可审核机制。而区块链技术的出现,解决了这些问题,从而触发了智能合约的应用。区块链为完全数字化资产的记录和转移奠定了基础,通过完全数字化的资产和分布式账本,区块链使计算机代码可以控制资产,资产的控制就是控制资产对应的密钥,而不是任何实物。自从以太坊出现之后,新的区块链***层出不穷,但是都提供了各种智能合约的实现,并且其虚拟机是图灵完备的,只是从资源消耗方面解决了著名的停机问题的限制。异构区块链之间因底层架构、数据结构、接口协议、安全机制等多维异构性导致无法互联互通问题,于是本发明在各异构区块链平台之上基于智能合约实现跨链协同模型。如图1所示,传统的区块链分层模型包括数据层、网络层、共识层、合约层,本发明基于合约层构建跨链互操作层,包含三个模块:一致性维护引擎模块、跨链路由模块和跨链共识模块。
本发明基于区块链传统底层构建跨链互操作层,通过跨链路由模块实现无侵入式的异构跨链互操作,基于跨链互操作层开发者可开发诸如数字资产、司法举证等跨链应用。
本发明提出的跨链协同模型主要包含两种跨链互操作对象以及相应的互操作范式。
UTXO模型中,交易只是代表了UTXO集合的变更。而账户和余额的概念是在UTXO集合上更高的抽象,账号和余额的概念只存在于钱包中。一笔交易将引用之前的UTXO,生成新的UTXO,以及通过非对称加密的技术来消费output。计算是在链外的,交易本身既是结果也是证明。节点只做验证即可,不需要对交易进行额外的计算,也没有额外的状态存储。交易无法被重放,并且交易的先后顺序和依赖关系容易被验证,交易是否被消费也容易被举证。UTXO模型是无状态的,更容易并发处理。在简单业务和跨链上,UTXO有其非常独到和开创性的优点。我们在跨链场景中将UTXO扩展到通用数据,提出跨链UTXO,能够高效的在各链之间流通与操作,适用于去中心化场景和复杂场景的跨链协作。我们可以将一个跨链交易建模为:
C-Tx=<TxID,ChainID,List[TxIput],List[TxOutput],CTS>
TxInput=<TxID,Vout,scriptSig>
TxOutput=<Value,scriptPubKey,Extra>
其中,TxID为交易的唯一标识,ChainID为来源链标识,Vout为输出在引用交易中的顺序,顺序CTS为时间戳,scriptSig为解锁脚本,scriptPubKey为锁定脚本,Extra为辅助信息。
NFT由于其非同质化、不可拆分的特性,使得它可以锚定现实世界中商品等概念,例如通证化的门票、司法证据等等。NFT能够将任意有价值的事物通证化,并追溯该信息的所有权,这样就实现了信息与价值的交汇。本发明基于跨链UTXO进一步提出两种跨链互操作对象,跨链稳定通证(Cross-chain Fungible Token,CFT)和跨链数字资产(Cross-chainNon-Fungible Token,CNFT)。每一个跨链UTXO可以是CFT或者CNFT,通过Value与Extra字段可以联合判断跨链UTXO的类型,CNFT能够很好的描述跨链数字资产,在各链间实现流通。
如图2,不同区块链共同维护一个Cross-chain UTXO的DAG,可以看作全复制式架构。而跨链UTXO等结构在支持图灵完备的智能合约的区块链上都可以实现。待相关合约部署到所有区块链上后,所有区块链就可以自动进行跨链数据的修改与同步。对跨链数据的修改记录也将存在于每个链上,起到存证的作用。多个链可以共同编辑跨链数据的功能大大增加了跨链的互操作性,同时单链无需先访问其他链获取数据就可以对共享数据作出修改。
基于上述两种跨链互操作对象,本发明可以实现两种互操作范式:
(1)基于CFT的跨链桥
本发明提出的CFT和一致性维护方法形成了跨链桥,A链上的代币与资产可以通过A链上的去中心化应用转换为CFT,待同步到B链上后,用户可在B链上使用CFT与B链上的去中心化应用完成交互,如购买B链专属的数组资产,起到跨链数字资产的转换作用。(2)基于CNFT的跨链互操作
本发明提出的CNFT与一致性维护方法可以实现更为丰富的跨链互操作,用户在A链上的CNFT可以同步到B链上,在单链上即可使用多链上存在的CNFT,可实现如联合举证等跨链应用。
事件是以太坊提供的基本功能,用来将数据记录成日志,保存在区块链上,同时事件也可用于用于和外部交互,例如和前端的交互、异步调用等作用。Event机制可以看作外部应用感知链上状态变更的方式,除了以太坊和超级账本,主流的区块链基本都在智能合约中支持Event的触发。
如图3所示,基于跨链路由模块实现同步区块头的基础上,路由完成跨链交易的处理,主要分为两类操作。
监听跨链合约发出的Event,广播给其他路由。当本链的业务逻辑触发了跨链合约数据的修改后,路由监听到事件,并将其转化成相应的协议格式通知其他路由。
收到其他路由发送的跨链交易,并将其提交到链上,验证合法性,再通过一致性维护模块来提交执行。
跨链数据一致性维护技术的设计
根据上文所述定义,我们需要在每条链上维护相同的有向无环图DAG,达到最终一致性。考虑两个操作T1和T2,如果它们满足因果顺序,则显然结果是确定的,如果它们是两个并发操作,我们需要保证在每条链上最终状态相同,而不管其到达的顺序。
下面本发明将介绍如何基于改进的地址空间转换算法来维护一致性。首先定义Branch-check算法,如表1的伪代码所示,用于检测某个C-Tx是否与当前全局C-DAG存在冲突,遍历该C-TX的引用跨链交易,如果不存在重复引用,即可执行该跨链操作,并且更新C-DAG和出度列表。
表1
跨链数据一致性维护算法Control部分如表2的伪代码所示,如果是本链操作,直接执行即可,不需锁定他链资源,特别是锁定他链资源的申请还要经过他链共识,非常低效。本发明提出的一致性维护算法本链上产生的跨链交易立即执行,跨链操作产生冲突的概率理论上较低,可以显著提高跨链***的性能。如果是其他链产生的操作,当该操作满足执行的条件时,首先回溯所有C-Tx到该C-Tx的时间戳,隐藏所有在其之后产生的操作的执行效果,使用Branch-Check算法判断是否能执行,如果不能,直接丢弃。接着恢复已有操作,我们将看到在恢复已有操作时,如何维护一致性,解决并发冲突。
表2
在最后一步恢复屏蔽的交易时,这些交易与C-Tx都是并发的交易,但不一定与C-Tx产生并发冲突。我们相比地址空间转换算法引入第四个阶段,如果检查恢复的交易中存在与C-Tx引用的跨链UTXO相同,我们需要做特别的处理。我们为这些并发的操作定义全序,地址空间转换算法中的TOrder适用于普通数据,但不适用于数字资产,在去中心化的世界中,C-Tx有一定的交易费,本发明使用FOrder来处理数字资产的并发冲突。
我们给出如下定义1:
给出如下定义
FOrder(Tx1)<FOrder(Tx2)当且仅当:
i.Tx1.fee>Tx2.fee或者
ii.sum(BV)<sum(BV)或者
iii.sum(BV)=sum(BV)时a<b
根据FOrder,当恢复的操作中存在交易FOrder比C-Tx小时,C-Tx将废弃。如果C-TxFOrder小,冲突的交易整个Branch将标记为失效。
我们看到,基于地址空间转换算法改进的算法虽然能够满足跨链数据一致性以及去中心化意愿,但是很轻易地就能通过给出fee大的交易来破坏已经延伸很长的branch,通用数据也有类似的问题,所以需要一个落盘机制来保证***的安全性,如同区块链共识中的T-confirm Window,将概率转化为确定的事件。
2.事务模式下基于随机可验证函数的跨链共识协议
在区块链设置中,确定性是保证了所有有效区块一旦被提交到区块链上就不会被撤销。当用户进行交易时,他们也希望在转账完成后能够保证转账操作不能随意更改或撤销。因此,在设计区块链共识协议时,确定性变得至关重要。同样
在本发明中,用户可故意构造操作来使***中已经达到一致性的交易失效,而这个交易可能已经生效很久,并且在现实世界中产生了一定的影响,所以跨链操作的确定性变得至关重要。
然而如果让各链再来维护一条公共链或中继链来进行共识,将会大大增加复杂度,降低跨链***的性能。首先,该中继链维护节点的选取重复引入了去中心化的问题。其次,中继链的共识过程将显著降低跨链操作的性能。
另外,本质上一个跨链操作已经经过某条链的共识过程,具有相当的公信力,其他链通过SPV机制验证该跨链操作确实在该链被打包进共识区块即可。综上所述,在本发明的跨链协同模型中,只需要保证每轮生成跨链共识区块的链是随机的,无法预知,就能保证***的安全性和跨链操作的确定性。
本发明提出一种轻量级的跨链共识协议,基于随机可验证函数随机选取本轮打包跨链操作的链,同时在事务模式下执行,保证跨链共识操作与其他跨链操作是序列化的关系,保证跨链共识操作在多链间共识结果的完整性。
相关研究者在地址空间转换算法的研究中,技巧性的使用了远程操作的执行条件,对于一个事务操作,每个站点产生一个特殊的NOOP空操作与其他的本地操作构成依赖关系,并要求事务与它所有相关的NOOP操作一起执行,从而实现全局的序列化。
本发明基于此技术,将原有的NOOP操作替换为VRF proof operation(VOP),在某链收集到对应事务的所有VOP操作后,即可判断自己是否是本轮区块的Proposer,并且可以保证跨链共识操作在所有链的全局序列化特性,高效的利用了本来并不做实际操作的NOOP操作。这里的VOP操作具体建模为:
VOP=<Result,Proof,PublicKey>
其中,Result为随机可验证算法结果,Proof为随机可验证算法证明,PublicKey为公钥。
如图4所示,实线表示跨链共识操作的广播,虚线表示普通跨链操作。链BC3是上轮的胜出者,这轮由它发起跨链共识操作S1,由谁发起跨链共识操作与本轮的跨链共识结果无关。
S1被广播到其他链,同时BC3产生一个对应的VOP操作,附上自己的相关验证信息。当其他链收到S1后,也会产生对应的VOP操作并广播,显然这里实现了跨链操作的全局序列化,不再赘述。
当S1满足执行条件后,此时每个链都收到了其他链的随机可验证凭证,根据规则可得出本轮共识区块的Proposer,由该链负责生成跨链共识区块,保证跨链操作的确定性。
采用WINDOWS10操作***的PC机作为终端设备,基于以太坊底层区块链、Truffle和Ganache框架,以Intellj IDEA和VSCODE为开发平台,使用Java和Golang语言编程,使用Solidty编写智能合约、基于本发明介绍的一种实现跨链互操作的数据一致性维护方法,研究开发了跨链数字资产互操作平台,可承载不同的跨链应用,用户可开发基于多链的智能合约应用。
实施例1
如图5所示,用户在链A上查看到属于自己的稳定通证,可选取自己若干可使用的稳定通证,转移给其他账户。用户在票夹中选取Unspent通证后,指定交易费和转移地址,发起交易。待跨链交易在各链同步后,可在其他链上查看到自己票夹的变动。实际应用中,如果没有本发明,用户无法在B链上使用A链的资产,必须通过链下中心化的方式,如中心化交易所,安全性低且较为复杂。基于本发明形成的跨链Bridge,用户可以将A链上的资产经过A链的应用转换为跨链稳定通证,等待通证状态同步后,即可在B链上的应用中使用该通证购买B链专属的资产,实现丰富的跨链互操作功能。
实施例2
如图6所示,链A是一条发行卡券的区块链,而A链上部署了某音乐剧门票的去中心化应用,用户可在B链上使用卡券和稳定通证购买该门票。交易成功后,可在A链上查看购买到的门票信息与唯一链上ID,同时该跨链交易在A链上和B链上均存证。
实施例3
链A是一条版权区块链,通过区块链、公钥加密和可信时间戳等技术,为原创作品提供原创认证、版权保护和交易服务。链B是一条司法存证区块链,把侵权违法的证据传到区块链上,***出电子公证书,从而为诉讼环节提供法律支撑。而用户可能需要在法院区块链C上提交证据,此时用户可基于跨链数字资产互操作平台,在链C上利用链A的版权证据和链B的侵权举证提交联合举证,帮助仲裁机构完成裁决。
Claims (3)
1. 一种实现跨链互操作的数据一致性维护方法,其特征在于,建立适用于跨链场景的跨链协同模型,在跨链场景中将未花费输出UTXO扩展到通用数据,提出跨链UTXO,在各链之间流通与操作,适用于去中心化场景和复杂场景的跨链协作;将一个跨链交易C-Tx定义为:
C-Tx = <TxID, ChainID, List[TxIput], List[TxOutput], CTS>
TxInput = <TxID, Vout, scriptSig>
TxOutput = < Value, scriptPubKey, Extra>
其中,TxID为交易的唯一标识,ChainID为来源链标识,Vout为输出在引用交易中的顺序,顺序CTS为时间戳,scriptSig为解锁脚本,scriptPubKey为锁定脚本,Extra为辅助信息。
2.根据权利要求1所述的数据一致性维护方法,其特征在于,基于跨链协同模型实现跨链互操作的数据一致性维护;所述跨链协同模型基于区块链分层模型构建,除了包括数据层、网络层、共识层和合约层外,还包括基于合约层构建的互操作层,所述互操作层包括三个模块:跨链路由模块、一致性维护模块和跨链共识模块;
(1)跨链路由模块
跨链路由模块用于实现无侵入式的异构跨链互操作;基于跨链路由模块实现同步区块头的基础上,路由 完成跨链交易的处理,主要分为两类操作:
监听跨链合约发出的 Event,广播给其他路由,当本链的业务逻辑触发了跨链合约数据的修改后,路由监听到事件,并将其转化成相应的协议格式通知其他路由;
收到其他路由发送的跨链交易,并将其提交到链上,验证合法性,再通过一致性维护模块来提交执行;
(2)一致性维护模块
利用基于改进的地址空间转换算法作为跨链数据一致性维护方法,保证各链上跨链数据的因果和最终一致性; 所述基于改进的地址空间转换算法如下:
Branch-check 算法,用于检测某个跨链交易 C-Tx 是否与当前全局视图存在冲突,遍历该 C-Tx 的引用跨链交易,如果不存在重复引用,即可执行该跨链操作,并且更新全局视图和交易的引用输出列表;
跨链数据一致性维护算法部分,如果是本链操作,直接执行即可,不需锁定他链资源;如果是其他链产生的操作,当该操作满足执行的条件时,首先回溯所有 C-Tx 到该 C-Tx的时间戳,隐藏所有在其之后产生的操作的执行效果,使用 Branch-Check 算法判断是否能执行,如果不能,直接丢弃,接着恢复已有操作,如果检查恢复的交易中存在与 C-Tx 引用的 跨链UTXO 相同,为这些并发的操作定义了特殊的全序,处理数字资产的并发冲突;
(3)跨链共识模块
引入事务模式下的基于随机可验证函数的跨链共识协议,保证跨链操作的确定性;跨链共识协议如下:
对于一个事务操作,每个站点产生一个特殊的包含随机可验证证明的VOP操作与其他的本地操作构成依赖关系,并要求事务与它所有相关的VOP操作一起执行,从而实现全局的序列化;
在某链收集到对应事务的所有 VOP 操作后,即可判断自己是否是本轮区块的Proposer,并且可以保证跨链共识操作在所有链的全局序列化特性;
跨链共识操作S1被广播到其他链,同时上轮的胜出者 BC3 产生一个对应的VOP操作,附上自己的相关验证信息,当其他链收到跨链共识操作S1后,会产生对应的VOP操作并广播,实现跨链操作的全局序列化;
当跨链共识操作S1满足执行条件后,此时每个链都收到了其他链的随机可验证凭证,根据规则得出本轮共识区块的Proposer,由该链负责生成跨链共识区块,保证跨链操作的确定性。
3.根据权利要求1所述的实现跨链互操作的数据一致性维护方法,其特征在于,基于跨链协同模型构建的应用层中还包括两种跨链互操作对象:跨链稳定通证CFT和跨链数字资产CNFT。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110166366.6A CN112965985B (zh) | 2021-02-04 | 2021-02-04 | 一种实现跨链互操作的数据一致性维护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110166366.6A CN112965985B (zh) | 2021-02-04 | 2021-02-04 | 一种实现跨链互操作的数据一致性维护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112965985A true CN112965985A (zh) | 2021-06-15 |
CN112965985B CN112965985B (zh) | 2022-04-12 |
Family
ID=76274873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110166366.6A Active CN112965985B (zh) | 2021-02-04 | 2021-02-04 | 一种实现跨链互操作的数据一致性维护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112965985B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113327166A (zh) * | 2021-06-21 | 2021-08-31 | 史云凌 | 一种基于utxo的区块链多级共识方法 |
CN113627906A (zh) * | 2021-08-31 | 2021-11-09 | 浙江大学 | 哈希锁定和侧链技术的跨链交易方法、***、可存储介质 |
CN113888333A (zh) * | 2021-10-04 | 2022-01-04 | 杭州复杂美科技有限公司 | 一种非同质化资产跨链交易方法、设备及储存介质 |
CN114024687A (zh) * | 2021-11-11 | 2022-02-08 | 上海证章信息科技有限公司 | 一种通过锁定再发行实现nft可拆分可互换的方法 |
CN114047928A (zh) * | 2022-01-12 | 2022-02-15 | 北京大学 | 一种适用于组合交易的智能合约形式化验证方法及*** |
CN114297680A (zh) * | 2021-12-27 | 2022-04-08 | 广州大学 | 一种用于物联网环境的区块链跨链共识方法和*** |
CN114900334A (zh) * | 2022-04-14 | 2022-08-12 | 福建博泉哈希科技有限公司 | Nft权限控制方法、***、计算机可读存储介质及终端设备 |
CN115914244A (zh) * | 2022-09-23 | 2023-04-04 | 四川启睿克科技有限公司 | 一种优化分布式账本互操作性的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899698A (zh) * | 2017-04-11 | 2017-06-27 | 张铮文 | 一种区块链之间的跨链互操作方法 |
CN111598566A (zh) * | 2020-04-30 | 2020-08-28 | 厦门潭宏信息科技有限公司 | 基于混合跨链的网络支付*** |
CN111666323A (zh) * | 2020-05-15 | 2020-09-15 | 西安纸贵互联网科技有限公司 | 区块链的跨链互通方法及*** |
CN112287029A (zh) * | 2020-11-17 | 2021-01-29 | 北京物资学院 | 一种区块链多链跨链***及其实现机制 |
-
2021
- 2021-02-04 CN CN202110166366.6A patent/CN112965985B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899698A (zh) * | 2017-04-11 | 2017-06-27 | 张铮文 | 一种区块链之间的跨链互操作方法 |
CN111598566A (zh) * | 2020-04-30 | 2020-08-28 | 厦门潭宏信息科技有限公司 | 基于混合跨链的网络支付*** |
CN111666323A (zh) * | 2020-05-15 | 2020-09-15 | 西安纸贵互联网科技有限公司 | 区块链的跨链互通方法及*** |
CN112287029A (zh) * | 2020-11-17 | 2021-01-29 | 北京物资学院 | 一种区块链多链跨链***及其实现机制 |
Non-Patent Citations (1)
Title |
---|
邵斌,卢暾,顾宁: "《实时协同中的一致性维护关键技术》", 《计算机工程》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113327166A (zh) * | 2021-06-21 | 2021-08-31 | 史云凌 | 一种基于utxo的区块链多级共识方法 |
CN113627906B (zh) * | 2021-08-31 | 2022-03-25 | 浙江大学 | 哈希锁定和侧链技术的跨链交易方法、***、可存储介质 |
CN113627906A (zh) * | 2021-08-31 | 2021-11-09 | 浙江大学 | 哈希锁定和侧链技术的跨链交易方法、***、可存储介质 |
CN113888333A (zh) * | 2021-10-04 | 2022-01-04 | 杭州复杂美科技有限公司 | 一种非同质化资产跨链交易方法、设备及储存介质 |
CN114024687A (zh) * | 2021-11-11 | 2022-02-08 | 上海证章信息科技有限公司 | 一种通过锁定再发行实现nft可拆分可互换的方法 |
CN114297680A (zh) * | 2021-12-27 | 2022-04-08 | 广州大学 | 一种用于物联网环境的区块链跨链共识方法和*** |
CN114297680B (zh) * | 2021-12-27 | 2024-05-17 | 广州大学 | 一种用于物联网环境的区块链跨链共识方法和*** |
CN114047928B (zh) * | 2022-01-12 | 2022-03-15 | 北京大学 | 一种适用于组合交易的智能合约形式化验证方法及*** |
CN114047928A (zh) * | 2022-01-12 | 2022-02-15 | 北京大学 | 一种适用于组合交易的智能合约形式化验证方法及*** |
CN114900334A (zh) * | 2022-04-14 | 2022-08-12 | 福建博泉哈希科技有限公司 | Nft权限控制方法、***、计算机可读存储介质及终端设备 |
CN114900334B (zh) * | 2022-04-14 | 2023-09-15 | 福建博泉哈希科技有限公司 | Nft权限控制方法、***、计算机可读存储介质及终端设备 |
CN115914244A (zh) * | 2022-09-23 | 2023-04-04 | 四川启睿克科技有限公司 | 一种优化分布式账本互操作性的方法 |
CN115914244B (zh) * | 2022-09-23 | 2024-05-17 | 四川启睿克科技有限公司 | 一种优化分布式账本互操作性的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112965985B (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112965985B (zh) | 一种实现跨链互操作的数据一致性维护方法 | |
CN110650189B (zh) | 一种基于中继的区块链的交互***及方法 | |
CN111666323B (zh) | 区块链的跨链互通方法及*** | |
Zakhary et al. | Atomic commitment across blockchains | |
CN111598566A (zh) | 基于混合跨链的网络支付*** | |
CN110597925B (zh) | 一种基于区块链的跨链数据处理方法及装置 | |
Pu et al. | Towards the semantics and verification of BPEL4WS | |
CN111052165A (zh) | 使用区块链的并发状态机处理 | |
CN111431903B (zh) | 一种跨链中继方法、装置以及计算机可读存储介质 | |
CN111723406A (zh) | 一种区块链的共识算法及*** | |
CN113570466A (zh) | 一种交易数据处理方法、装置以及可读存储介质 | |
JP2023509035A (ja) | トランザクション処理方法、装置、コンピュータデバイス及びコンピュータプログラム | |
JP2013008329A (ja) | 照合装置および照合プログラム | |
Mostéfaoui et al. | Intrusion-tolerant broadcast and agreement abstractions in the presence of Byzantine processes | |
CN112070608A (zh) | 信息处理方法、装置、介质及电子设备 | |
Meng et al. | Synthesis of Reo circuits from scenario-based interaction specifications | |
CN116827957B (zh) | 基于多区块链的信息处理方法、装置、设备以及介质 | |
Zhu et al. | A study on the challenges and solutions of blockchain interoperability | |
Grossmann et al. | Behavior based integration of composite business processes | |
CN112396427B (zh) | 一种面向通用场景的跨链互换操作方法 | |
CN112910835B (zh) | 基于区块链的配置管理方法、装置、***、设备和介质 | |
CN112069529A (zh) | 基于区块链的卷宗管理方法、装置、计算机以及存储介质 | |
CN113094398B (zh) | 一种基于区块链技术的数据链路追踪的方法 | |
Popovic et al. | Formal verification of distributed transaction management in a SOA based control system | |
Deng et al. | PSSC: Practical and secure sidechains construction for heterogeneous blockchains orienting IoT |
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 |