【技术实现步骤摘要】
一种区块链多链跨链系统及其实现机制
[0001]本专利技术涉及区块链
,特别涉及一种区块链多链跨链系统及其实现机制。
技术介绍
[0002]随着区块链技术的不断创新和持续发展,在全球范围内的金融、电商、溯源、数字版权等领域都与区块链技术有着不同程度的结合,产生了“区块链+行业”的新应用场景。基于不同应用场景的特点及需求,各领域大都搭建了联盟区块链网络实现其业务逻辑,不同区块链网络之间相互隔离,信息交互及业务互通的壁垒高。但是,随着应用场景需求的多样化发展,单个区块链网络无法满足业务需求的不断变化,跨链互操作成为区块链研究的一大发展趋势。
[0003]区块链跨链技术是实现区块链间互联互通的重要技术手段。近年来,随着应用场景及业务需求的多样化发展,众多学者针对区块链跨链技术及其应用到某些场景后所表现出的不足做了许多理论方面的研究。同时,已有许多团队开始探索如何利用跨链技术实现不同区块链网络间的互联互通。Wang等人提出一种利用公证人机制实现异构区块链之间评论数据互通的方法,其在智能合约中定义了评论的三个状态:未审查、审查中、审查后。由公证人对评论进行审核与签名,并遵从少数服从多数的原则审核该评论的正确性;张诗童等提出了一种基于哈希锁定的多方跨链协议,并在该协议中融入了交易撮合算法及价格磋商机制,支持实现价格最优的多方跨链资产互换;解雯霖等构建了许可环境下的基于预言机的对等跨链协议,不同区块链的节点可以通过预言机与其他区块链进行交互;Li等提出一种基于多重签名技术的跨链系统——代理链,用户可通过将其资产锚定到 ...
【技术保护点】
【技术特征摘要】
1.一种区块链多链跨链系统,其特征在于包括:基础层、核心层、业务层以及核心层和基础层之间的跨链层,其中,所述基础层、核心层及业务层为区块链原有层级,基础层是区块链的最底层,封装了密码学、P2P及数据库技术;核心层由智能合约和共识算法构成,用于实现区块链主要的业务逻辑;业务层封装了区块链的应用场景,为用户提供与区块链交互的接口。2.根据权利要求1所述的一种区块链多链跨链系统,其特征在于:所述跨链层由跨链智能合约及跨链底层合约两部分构成,所述跨链智能合约包含跨链通证转移合约及跨链查值合约,其与区块链系统上智能合约的编写、部署及调用规则完全一致,负责调用跨链底层合约实现对外交互,并记录交互过程中产生的信息;所述跨链底层合约支持通过发送HTTP请求来获取外部数据,所述跨链底层合约需要在区块链上线时部署且其地址需被提前定义,包含跨链通证转移底层合约及跨链查值底层合约两部分;区块链间的资产转移操作由跨链通证转移合约及跨链通证转移底层合约负责,所述跨链查值合约及所述跨链查值底层合约用于实现链间的查值操作;其中,跨链通证转移合约由路由合约、通证控制合约、跨链交易发起合约及跨链交易接收合约四个合约组成,跨链查值合约由路由合约、用户合约及查询合约组成,所述跨链通证转移底层合约包括转移发送模块和状态查询模块。3.根据权利要求2所述的一种区块链多链跨链系统,其特征在于:所述区块链多链跨链系统的链间交互方式包括:在没有第三方公证人或区块链的情况下,实现链间直接交互,区块链网络中的节点被分为普通节点及跨链节点,其中,普通节点只参与共识过程,而跨链节点负责跨链交易的接收,其数量为一个或多个,在发起跨链交易前,跨链双方需要在对方区块链上注册跨链节点的链标识chainFlag、IP地址及跨链所用合约的地址,所述链间交互方式的形式包括:链间通证转移以及链间查值,所述跨链通证转移支持链与链的一对一交互方式,所述跨链查值支持一链对多链的链间交互。4.根据权利要求2所述的一种区块链多链跨链系统,其特征在于:所述区块链多链跨链系统的合约调用关系包括:跨链通证转移以及跨链查值,其中所述跨链通证转移操作通过跨链通证转移跨链合约与跨链通证转移底层合约的相互调用实现,跨链通证转移合约包含4个区块链智能合约:路由合约、通证控制合约、跨链交易发起合约及跨链交易接收合约,其中,路由合约用于跨链节点的选择以及对方跨链节点信息的记录;通证控制合约用于账户注册及通证管理;跨链交易发起合约和跨链交易接收合约负责跨链交易的发送与接收以及交易状态的查询,所述跨链通证转移底层合约支持对外通信,包含转移发送及交易状态查询两个模块,在跨链通证转出链部署路由合约、通证控制合约及跨链交易发起合约,在跨链通证接收链部署路由合约、通证控制合约以及跨链交易接收合约;所述跨链查值操作由跨链查值合约及跨链查值底层合约实现,跨链查值合约包括用户合约、路由合约及查询合约,其中,用户合约负责用户信息及业务信息的记录,路由合约用于存储跨链区块链的节点信息等数据,查询合约用于调用路由合约及跨链查值底层合约完成查值操作,用户合约调用查询合约进行跨链查值操作时,会触发查询合约调用路由合约以获取需要的跨链信息;获取必要的跨链信息后,查询合约发起跨链查询请求,并通过调用跨链查值底层合约调用被查询区块链的用户合约来获取查询结果。5.根据权利要求4所述的一种区块链多链跨链系统,其特征在于:跨链交易发起合约和跨链交易接收合约是跨链通证转移的主合约,在执行一笔跨链通证转移操作时,转出链及
转入链上存在如下的合约调用操作:(1)转出链上跨链交易发起合约的操作步骤为:调用路由合约获取转入链的跨链信息;调用通证控制合约进行通证的增、减、锁定操作;调用跨链通证转移底层合约,并由其向转入链的跨链交易接收合约发送跨链交易;跨链交易发送完成后,通过底层合约调用转入链上的跨链交易接收合约,并根据查询结果更改本链上该交易的状态;(2)收到转出链的跨链交易后,转入链上跨链交易接受合约的操作步骤:调用路由合约获取转出链的跨链信息;通过底层合约调用转出链上的交易发送合约,查询该笔跨链交易在转出链上的状态,并根据查询结果更改该交易在本链的状态;根据查询的状态,调用通证控制合约对收到的跨链通证进行管理。6.一种基于权利要求1-5任一所述的区块链多链跨链系统的实现机制,其特征在于包括:原子性保障策略以及安全保障策略,其中原子性保障策略基于跨链交易状态转换模型,安全保障策略包括跨链节点动态选择策略和签名跨链交易数据构造策略,由所述原子性保障策略以及安全保障策略构建跨链通证转移协议。7.根据权利要求6所述的实现机制,其特征在于所述原子性保障策略所基于的跨链交易状态转换模型定义了交易执行的四个状态以反映跨链交易当前的执行情况以及后续需要执行的操作,其中,“0”为交易的初始状态,“1”为交易的中间状态,即跨链交易执行中但尚未结束的一个状态,“2”、“3”则为交易的最终状态,跨链通证转移交易的执行过程中,跨链交易的发起方与接收方具有如下状态变化过程:(1)发起方状态变化描述A.跨链交易发起方的某笔跨链通证转移交易不存在时,其state为0;B.当跨链交易发起合约执行交易发送方法,且跨链交易数据发送成功时,更新state从0
→
1,并将需转移的通证转至锁定状态,此时,锁定的通证仍属于发起方,但暂时不能被其使用;若发送失败则更新state从0
→
3;C.通过跨链交易发起合约查询到接收方链上该笔交易的状态值为1,则更新本链state从1
→
2,并减去账户中处于锁定状态的通证,此时,该通证不再属于发起方;若查询结果为3,交易执行失败,更新本链state从1
→
3,并将锁定的通证解锁,此时,发送方可任意支配该笔通证;若查询结果为0,暂不更新state;(2)接收方状态变化描述A.跨链交易接收方的某笔跨链通证转移交易初始state为0,当跨链交易接收合约的交易接收方法被调用且跨链交易被接收时,更新该交易的state从0
→
1,并将发送方转移的锁定通证加入账户,此时该笔通证属于接收方,但暂时不能被其支配使用;B.当查询到发送方链上该跨链交易的state为2时,更新本链state从1
→
2,并将账户中处于锁定状态的通证解锁以供支配使用;若查询结果为3,交易执行失败,更新本链state从1
→
3并减去账户中的锁定通证,此时,该笔通证不再属于接收方;若查询结果1,暂不更新state;每次状态的变化都会对应一种通证变化操作。8.根据权利要求6所述的实现机制,其特征在于所述安全保障策略包括:跨链节点动态...
【专利技术属性】
技术研发人员:丁毅,马宁,华芳,钟琼慧,师灵芝,王晨硕,李洁,靳军,
申请(专利权)人:北京物资学院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。