联盟链跨链系统及方法技术方案

技术编号:29878847 阅读:35 留言:0更新日期:2021-08-31 23:55
本公开涉及一种联盟链跨链系统及方法,系统包括中继节点集合、跨链数据发送方和跨链数据接收方,中继节点集合包括多个从节点,多个从节点周期性地从该多个从节点共识中确定主节点;主节点用于,接收跨链数据发送方异步发送的跨链账本数据,将跨链账本数据添加至主节点的消息队列中,并复制至中继节点集合中的各从节点中,以使得从节点在接收到跨链账本数据之后将跨链账本数据添加至自身的消息队列中;主节点以及多个从节点还用于,根据自身消息队列中的跨链账本数据的排序依次对各跨链账本数据进行存储;中继节点集合中的任一节点还用于,在接收到来自跨链数据接收方的跨链账本数据请求时,将对应的跨链账本数据发送至跨链数据接收方。

【技术实现步骤摘要】
联盟链跨链系统及方法
本公开涉及区块链
,具体地,涉及一种联盟链跨链系统及方法。
技术介绍
区块链是一种能够通过去中心化和去信任的方式集体维护一个可靠数据库的技术。其能够把一段时间内发生的事务以区块为单位进行存储,并以密码学算法将区块按时间先后顺序连接,形成类似链条的一种数据结构。为了实现不同区块链网络之间的数据交互,在区块链技术的发展过程中,衍生出了基于哈希锁定、二阶段提交等方式的跨链技术方案。但是,这些技术方案主要针对实时性要求较高、强事务一致性的场景,而不能够满足实时性要求较低的应用场景的需求。
技术实现思路
本公开的目的是提供一种联盟链跨链系统及方法,用以解决上述相关技术问题。为了实现上述目的,根据本公开实施例的第一方面,提供一种联盟链跨链系统,包括中继节点集合、跨链数据发送方以及跨链数据接收方,所述中继节点集合包括多个从节点,所述多个从节点通过周期性地共识从所述多个从节点中确定主节点;所述主节点用于,接收来自所述跨链数据发送方异步发送的跨链账本数据,将所述跨链账本数据添加至所述主节点的消息队列中,并将所述跨链账本数据复制至所述中继节点集合中的各个从节点中,以使得所述多个从节点在接收到所述跨链账本数据之后,将所述跨链账本数据添加至自身的消息队列中;所述主节点以及所述多个从节点还用于,根据自身所对应的消息队列中的跨链账本数据的排序,依次对各所述跨链账本数据进行存储;所述中继节点集合中的任一节点还用于,在接收到来自所述跨链数据接收方的跨链账本数据请求时,将存储的对应于所述跨链账本数据请求的跨链账本数据发送至所述跨链数据接收方。可选地,所述多个从节点周期性地通过共识投票从所述多个从节点中确定主节点,所述从节点还用于执行如下步骤:在接收到所述多个从节点中的候选从节点发送的投票请求时,生成所述从节点的投票信息;基于所述从节点的私钥证书对所述投票信息进行签名,得到该投票信息的签名验证信息;将所述投票信息以及对应该投票信息的签名验证信息发送至所述候选从节点。可选地,所述候选从节点用于执行如下步骤:接收所述多个从节点中的目标从节点发送的投票信息以及对应该投票信息的签名验证信息;基于所述目标从节点的公钥证书以及所述签名验证信息对所述目标从节点发送的投票信息进行验证;当验证通过时,将该投票信息作为有效投票信息;其中,若所述候选从节点接收到的有效投票信息的数量大于数量阈值,则将该候选从节点作为新的主节点。可选地,所述主节点还用于执行如下步骤:在接收到来自跨链数据发送方的跨链账本数据时,获取所述跨链账本数据所对应的默克尔根证明信息;根据所述默克尔根证明信息计算所述跨链账本数据所对应的默克尔树的第一根哈希值;基于所述默克尔根证明信息中的账本信息,获取所述跨链数据发送方所对应的区块链网络中、对应于所述账本信息的账本数据的第二根哈希值;当所述第一根哈希值与所述第二根哈希值相同时,将所述跨链账本数据添加至所述主节点的消息队列中,并将所述跨链账本数据复制至所述中继节点集合中的各个从节点中。可选地,所述从节点还用于执行如下步骤:在接收到所述主节点发送的跨链账本数据之后,获取所述跨链账本数据所对应的默克尔根证明信息;根据所述默克尔根证明信息计算所述跨链账本数据所对应的默克尔树的第三根哈希值;基于所述默克尔根证明信息中的账本信息,获取所述跨链数据发送方所对应的区块链网络中、对应于所述账本信息的账本数据的第四根哈希值;当所述第三根哈希值与所述第四根哈希值相同时,将所述跨链账本数据添加至该从节点所对应的消息队列中。可选地,所述联盟链跨链系统还包括治理节点集合,所述治理节点集合中的各治理节点之间能够共识产生至少一条治理链,所述联盟链跨链系统还包括针对所述治理节点集合部署的跨链治理模块,所述跨链治理模块包括与跨链业务相关的智能合约,所述治理节点集合中的各节点之间能够共识产生用于保存与所述跨链业务相关的数据的治理链,所述智能合约包括跨链接入合约,所述治理链中保存有接入所述联盟链跨链系统中的每一跨链参与方的访问信息。可选地,所述跨链治理模块用于通过所述跨链接入合约执行以下操作:接收跨链参与方发送的注册请求,将所述注册请求中对应于该跨链参与方的元信息保存至所述治理链;生成对应于该跨链参与方的注册结果信息,所述注册结果信息包括对应于所述跨链参与方的证书信息以及权限信息;向所述跨链参与方发送所述注册结果信息。可选地,所述联盟链跨链系统还包括针对所述跨链数据发送方设置的第一跨链网关,以及针对所述跨链数据接收方设置的第二跨链网关,所述第一跨链网关用于,向所述主节点发送所述跨链账本数据;所述第二跨链网关用于,向所述中继节点集合中的任一节点发送所述跨链账本数据请求,并在接收到该节点发送的跨链账本数据时,将所述跨链账本数据写入至所述跨链数据接收方所对应的区块链中。根据本公开实施例的第二方面,提供一种联盟链跨链方法,应用于上述第一方面中任一项所述的联盟链跨链系统,所述方法包括:所述主节点接收来自所述跨链数据发送方的跨链账本数据,将所述跨链账本数据添加至所述主节点的消息队列中;所述主节点将所述跨链账本数据复制至所述中继节点集合中的各个从节点中;所述从节点在接收到所述跨链账本数据之后,将所述跨链账本数据添加至自身的消息队列中;所述主节点以及所述多个从节点根据自身所对应的消息队列中的跨链账本数据的排序,依次对各所述跨链账本数据进行存储;所述中继节点集合中的任一节点在接收到来自所述跨链数据接收方的跨链账本数据请求时,将存储的对应于所述跨链账本数据请求的跨链账本数据发送至所述跨链数据接收方。可选地,还包括:所述从节点在接收到所述多个从节点中的候选从节点发送的投票请求时,生成所述从节点的投票信息;所述从节点基于所述从节点的私钥证书对所述投票信息进行签名,得到该投票信息的签名验证信息;所述从节点将所述投票信息以及对应该投票信息的签名验证信息发送至所述候选从节点。可选地,还包括:所述候选从节点接收所述多个从节点中的目标从节点发送的投票信息以及对应该投票信息的签名验证信息;所述候选从节点基于所述目标从节点的公钥证书以及所述签名验证信息对所述目标从节点发送的投票信息进行验证;当验证通过时,所述候选从节点将该投票信息作为有效投票信息;其中,若所述候选从节点接收到的有效投票信息的数量大于数量阈值,则将该候选从节点作为新的主节点。上述技术方案至少可以具备如下有益效果:通过在所述联盟链跨链系统中设置中继节点集合,跨链数据发送方可以向所述中继节点集合中的主节点发送跨链账本数据。相应的,所述主节点能够在接收到所述跨链账本数据之后将所述跨链账本数据添加至消息队列中进行异步处理,并将所述跨链账本数据复制至所述中继节点集合中的各本文档来自技高网...

【技术保护点】
1.一种联盟链跨链系统,其特征在于,包括中继节点集合、跨链数据发送方以及跨链数据接收方,所述中继节点集合包括多个从节点,所述多个从节点通过周期性地共识从所述多个从节点中确定主节点;/n所述主节点用于,接收来自所述跨链数据发送方异步发送的跨链账本数据,将所述跨链账本数据添加至所述主节点的消息队列中,并将所述跨链账本数据复制至所述中继节点集合中的各个从节点中,以使得所述多个从节点在接收到所述跨链账本数据之后,将所述跨链账本数据添加至自身的消息队列中;/n所述主节点以及所述多个从节点还用于,根据自身所对应的消息队列中的跨链账本数据的排序,依次对各所述跨链账本数据进行存储;/n所述中继节点集合中的任一节点还用于,在接收到来自所述跨链数据接收方的跨链账本数据请求时,将存储的对应于所述跨链账本数据请求的跨链账本数据发送至所述跨链数据接收方。/n

【技术特征摘要】
1.一种联盟链跨链系统,其特征在于,包括中继节点集合、跨链数据发送方以及跨链数据接收方,所述中继节点集合包括多个从节点,所述多个从节点通过周期性地共识从所述多个从节点中确定主节点;
所述主节点用于,接收来自所述跨链数据发送方异步发送的跨链账本数据,将所述跨链账本数据添加至所述主节点的消息队列中,并将所述跨链账本数据复制至所述中继节点集合中的各个从节点中,以使得所述多个从节点在接收到所述跨链账本数据之后,将所述跨链账本数据添加至自身的消息队列中;
所述主节点以及所述多个从节点还用于,根据自身所对应的消息队列中的跨链账本数据的排序,依次对各所述跨链账本数据进行存储;
所述中继节点集合中的任一节点还用于,在接收到来自所述跨链数据接收方的跨链账本数据请求时,将存储的对应于所述跨链账本数据请求的跨链账本数据发送至所述跨链数据接收方。


2.根据权利要求1所述的联盟链跨链系统,其特征在于,所述多个从节点周期性地通过共识投票从所述多个从节点中确定主节点,所述从节点还用于执行如下步骤:
在接收到所述多个从节点中的候选从节点发送的投票请求时,生成所述从节点的投票信息;
基于所述从节点的私钥证书对所述投票信息进行签名,得到该投票信息的签名验证信息;
将所述投票信息以及对应该投票信息的签名验证信息发送至所述候选从节点。


3.根据权利要求2所述的联盟链跨链系统,其特征在于,所述候选从节点用于执行如下步骤:
接收所述多个从节点中的目标从节点发送的投票信息以及对应该投票信息的签名验证信息;
基于所述目标从节点的公钥证书以及所述签名验证信息对所述目标从节点发送的投票信息进行验证;
当验证通过时,将该投票信息作为有效投票信息;
其中,若所述候选从节点接收到的有效投票信息的数量大于数量阈值,则将该候选从节点作为新的主节点。


4.根据权利要求1所述的联盟链跨链系统,其特征在于,所述主节点还用于执行如下步骤:
在接收到来自跨链数据发送方的跨链账本数据时,获取所述跨链账本数据所对应的默克尔根证明信息;
根据所述默克尔根证明信息计算所述跨链账本数据所对应的默克尔树的第一根哈希值;
基于所述默克尔根证明信息中的账本信息,获取所述跨链数据发送方所对应的区块链网络中、对应于所述账本信息的账本数据的第二根哈希值;
当所述第一根哈希值与所述第二根哈希值相同时,将所述跨链账本数据添加至所述主节点的消息队列中,并将所述跨链账本数据复制至所述中继节点集合中的各个从节点中。


5.根据权利要求1所述的联盟链跨链系统,其特征在于,所述从节点还用于执行如下步骤:
在接收到所述主节点发送的跨链账本数据之后,获取所述跨链账本数据所对应的默克尔根证明信息;
根据所述默克尔根证明信息计算所述跨链账本数据所对应的默克尔树的第三根哈希值;
基于所述默克尔根证明信息中的账本信息,获取所述跨链数据发送方所对应的区块链网络中、对应于所述账本信息的账本数据的第四根哈希值;
当所述第三根哈希值与所述第四根哈希值相同时,将所述跨链账本数据添加至该从节点所对应的消息队列中。


6.根据...

【专利技术属性】
技术研发人员:王诗鈞刘思瀚徐石成何光宇
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:辽宁;21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1