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

技术编号:32751058 阅读:14 留言:0更新日期:2022-03-20 08:59
本发明专利技术提供一种预言机多主链跨链方法、设备和存储介质,该方法包括:在监测到第一主链生成了第一主链区块时,按序同步第一主链区块中的各需要调用第一类合约的第一交易;执行各第一交易以更新二层网络上第一主链的第一状态树;响应于触发结算条件,按序根据各第二交易的第二交易信息生成零知识证明证据,根据按序的各第二交易、零知识证明证据生成第一证明数据;将第一证明数据发送给各主链。本申请在节省成本的基础上防止双花。节省成本的基础上防止双花。节省成本的基础上防止双花。

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


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

技术介绍

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

技术实现思路

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

【技术保护点】

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

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

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

1