多主链跨链方法、计算机设备和存储介质技术

技术编号:32546445 阅读:15 留言:0更新日期:2022-03-05 11:44
本发明专利技术提供一种多主链跨链方法、计算机设备和存储介质,该方法包括:在监测到第一主链生成了第一主链区块时,按序同步第一主链区块中的各需要调用转账类合约的第一交易;对各第一交易执行如下操作:判断第一交易调用的转账类合约是否为跨链转账合约:否,则执行第一交易以更新二层网络上第一主链的第一状态树;是,则执行第一交易以更新二层网络上第一主链的第一状态树,和,第一交易指定的待跨链的第二主链的第二状态树;按序根据各第一交易的交易信息生成零知识证明证据,根据按序的各第一交易、零知识证明证据生成第一证明数据;将第一证明数据发送给第一主链和其它各主链。本申请在节省成本的基础上防止双花。请在节省成本的基础上防止双花。请在节省成本的基础上防止双花。

【技术实现步骤摘要】
多主链跨链方法、计算机设备和存储介质


[0001]本申请涉及区块链
,具体涉及一种多主链跨链方法、计算机设备和存储介质。

技术介绍

[0002]当前基于二层网络的跨链方案一般是一对一的,一个二层网络对应一个主链。申请人希望提出一种一个二层网络对应多个主链的跨链方案,上述方案相较于现有技术,更加节省了成本,但也存在双花的问题。

技术实现思路

[0003]鉴于现有技术中的上述缺陷或不足,期望提供一种在节省成本的基础上防止双花的多主链跨链方法、计算机设备和存储介质。
[0004]第一方面,本专利技术提供一种适用于二层网络的节点的多主链跨链方法,二层网络上有分别对应于各主链的状态树,各状态树的初始根哈希相同,各主链配置有跨链验证合约,跨链验证合约中部署有验证交易信息的零知识证明电路,上述方法包括:
[0005]在监测到第一主链生成了第一主链区块时,按序同步第一主链区块中的各需要调用转账类合约的第一交易;其中,转账类合约包括存款合约、取款合约、转账合约、跨链转账合约;
[0006]对各第一交易执行如下操作:
[0007]判断第一交易调用的转账类合约是否为跨链转账合约:
[0008]否,则执行第一交易以更新二层网络上第一主链的第一状态树;
[0009]是,则执行第一交易以更新二层网络上第一主链的第一状态树,和,第一交易指定的待跨链的第二主链的第二状态树;
[0010]按序根据各第一交易的交易信息生成零知识证明证据,根据按序的各第一交易、零知识证明证据生成第一证明数据;
[0011]将第一证明数据发送给第一主链和其它各主链,以供第一主链的主链节点:
[0012]通过跨链验证合约判断第一证明数据中的各第一交易与第一主链区块中的各第一交易的顺序是否相同:
[0013]相同,则将零知识证明证据输入零知识证明电路以验证第一证明数据中的各第一交易的交易信息是否正确:
[0014]验证正确,则结束;
[0015]第一证明数据还用于供其它各主链的主链节点:
[0016]将零知识证明证据输入零知识证明电路以验证第一证明数据中的各第一交易的交易信息是否正确:
[0017]验证正确,则执行各第一交易。
[0018]第二方面,本专利技术还提供一种设备,包括一个或多个处理器和存储器,其中存储器
包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本专利技术各实施例提供的多主链跨链方法。
[0019]第三方面,本专利技术还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本专利技术各实施例提供的多主链跨链方法。
[0020]本专利技术诸多实施例提供的多主链跨链方法、计算机设备和存储介质通过在监测到第一主链生成了第一主链区块时,按序同步第一主链区块中的各需要调用转账类合约的第一交易;对各第一交易执行如下操作:判断第一交易调用的转账类合约是否为跨链转账合约:否,则执行第一交易以更新二层网络上第一主链的第一状态树;是,则执行第一交易以更新二层网络上第一主链的第一状态树,和,第一交易指定的待跨链的第二主链的第二状态树;按序根据各第一交易的交易信息生成零知识证明证据,根据按序的各第一交易、零知识证明证据生成第一证明数据;将第一证明数据发送给第一主链和其它各主链的方法,在节省成本的基础上防止双花。
附图说明
[0021]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0022]图1为本专利技术一实施例提供的一种多主链跨链方法的流程图。
[0023]图2为本专利技术一实施例提供的一种设备的结构示意图。
具体实施方式
[0024]下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与专利技术相关的部分。
[0025]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0026]申请人希望提出一种一个二层网络对应多个主链的跨链方案,上述方案相较于现有技术,更加节省了成本,但也存在双花的问题——如果运营方作弊存款后和另一条链的资产交换,另一条链将无法验证。举例,假设有3条主链(A链、B链、C链);A链上运行有资产AAA,B链上运行有资产BBB,C链上运行有资产CCC,AAA与BBB与CCC的兑换比例为1:1:1;假设运营方私自在二层网络中存款100AAA,并立即和二层网络中某一用户的BBB做了交换,这100AAA是凭空多出来的,最终会在A链上验证失败,但是运营者已经兑换了100BBB并提交到了B链,对B链造成危害。
[0027]上述问题可以通过本申请的各实施例解决。
[0028]图1为本专利技术一实施例提供的一种多主链跨链方法的流程图。如图1所示,在本实施例中,本专利技术提供一种适用于二层网络的节点的多主链跨链方法,二层网络上有分别对应于各主链的状态树,各状态树的初始根哈希相同,各主链配置有跨链验证合约,跨链验证合约中部署有验证交易信息的零知识证明电路,上述方法包括:
[0029]S11:在监测到第一主链生成了第一主链区块时,按序同步第一主链区块中的各需要调用转账类合约的第一交易;其中,转账类合约包括存款合约、取款合约、转账合约、跨链
转账合约;
[0030]对各第一交易执行如下操作:
[0031]S131:判断第一交易调用的转账类合约是否为跨链转账合约:
[0032]否,则执行步骤S132:执行第一交易以更新二层网络上第一主链的第一状态树;
[0033]是,则执行步骤S133:执行第一交易以更新二层网络上第一主链的第一状态树,和,第一交易指定的待跨链的第二主链的第二状态树;
[0034]S15:按序根据各第一交易的交易信息生成零知识证明证据,根据按序的各第一交易、零知识证明证据生成第一证明数据;
[0035]S17:将第一证明数据发送给第一主链和其它各主链,以供第一主链的主链节点:
[0036]通过跨链验证合约判断第一证明数据中的各第一交易与第一主链区块中的各第一交易的顺序是否相同:
[0037]相同,则将零知识证明证据输入零知识证明电路以验证第一证明数据中的各第一交易的交易信息是否正确:
[0038]验证正确,则结束;
[0039]第一证明数据还用于供其它各主链的主链节点:
[0040]将零知识证明证据输入零知识证明电路以验证第一证明数据中的各第一交易的交易信息是否正确:
[0041]验证正确,则执行各第一交易。
[0042]具体的,假设有3条主链(A链、B链、C链);A链上运行有资产AAA,B链上运行有资产BBB,C链上运行有资产CCC,AAA与BBB与CCC的兑换比例为1:1:1;二层网络上有A链的状态尔本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多主链跨链方法,其特征在于,二层网络上有分别对应于各主链的状态树,各所述状态树的初始根哈希相同,各主链配置有跨链验证合约,所述跨链验证合约中部署有验证交易信息的零知识证明电路,所述方法适用于二层网络的节点,所述方法包括:在监测到第一主链生成了第一主链区块时,按序同步所述第一主链区块中的各需要调用转账类合约的第一交易;其中,所述转账类合约包括存款合约、取款合约、转账合约、跨链转账合约;对各所述第一交易执行如下操作:判断所述第一交易调用的转账类合约是否为跨链转账合约:否,则执行所述第一交易以更新二层网络上所述第一主链的第一状态树;是,则执行所述第一交易以更新二层网络上所述第一主链的第一状态树,和,所述第一交易指定的待跨链的第二主链的第二状态树;按序根据各所述第一交易的交易信息生成零知识证明证据,根据按序的各所述第一交易、所述零知识证明证据生成第一证明数据;将所述第一证明数据发送给所述第一主链和其它各主链,以供所述第一主链的主链节点:通过所述跨链验证合约判断所述第一证明数据中的各所述第一交易与所述第一主链区块中的各所述第一交易的顺序是否相同:相同,则将所述零知识证明证据输入所述零知识证明电路以验证所述第一证明数据中的各所述第一交易的交易信息是否正确:验证正确,则结束;所述第一证明数据还用于供其它各主链的主链节点:将所述零知识证明证据输入所述零知识证明电路以验证所述第一证明数据中的各所述第一交易的交易信息是否正确:验证正确,则执行各所述第一交易。2.根据权利要求1所述的方法,其特征在于,还包括:在监测到顺序不同,或,验证失败时,回滚所述第一状态树,或,回滚所述第一状态树和所述第二状态树至未执行各所述第一交易时的状态;返回所述按序同步所述第一主链区块中的各需要调...

【专利技术属性】
技术研发人员:马登极王志文吴思进
申请(专利权)人:杭州复杂美科技有限公司
类型:发明
国别省市:

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

1