一种主链侧链之间进行价值跨链转移的模型及其实现方法与流程

文档序号:17996829发布日期:2019-06-22 01:18阅读:352来源:国知局
一种主链侧链之间进行价值跨链转移的模型及其实现方法与流程

本发明涉及分布式账本中的跨链技术,特别是涉及到分布式账本中主链与侧链之间进行价值转移的模型设计与实现方法。



背景技术:

在公链百花齐放地发展的同时,基于交易性能、容量规模、隐私保护、合规监管的考虑,联盟链和私链技术被商业机构特别是金融机构广泛采用。相比起公链来看,现在联盟链的发展势头要耀眼得多,但我们需要警惕的是,不要让联盟链变成纯粹的中心化或多中心化,相比于传统的分布式账本技术,现在大部分的联盟链显然没有提供太多的可实现不可逆交易或降低中心化风险的方式,这些中心化式的信任会使联盟链区块链因网络审查和简单故障点的失误,导致整个网络处于风险之中。相比之下,在公链的框架下,交易一旦完成传输确认无人能更改。对于联盟链,无论是主观的团体作恶或因不可抗的审查或多节点故障等风险,都让他们的用户们对此却无法彻底信任和放心。联盟链和私链的方式从一定程度违背了分布式账本的去中心价值和信任体系,也让数字资产不能在不同的链间直接转移,主动或被动地导致了价值的孤岛。此外,链之间互通性极大程度的限制了分布式账本的应用空间。不论对于公链还是私链来看,跨链技术就是实现价值互联的关键,它是把分布式账本从分散的孤岛中拯救出来的良药,是分布式向外拓展和连接的桥梁。



技术实现要素:

有鉴于此,本发明提供一种主链侧链之间进行价值跨链转移的模型及其实现方法,以解决了跨链技术的两个主要问题:一个是主链侧链之间相互信任的问题,第二个是主链通证与侧链通证之间价值锚定的问题。

本发明的目的在于提供一种主链侧链之间进行价值跨链转移的模型,包括五部分:

1)运行于侧链的智能合约,所述侧链的智能合约内通过算法,生成一个utxo模型的链作为合约链,用于存储存入和取出通证的交易,交易的单位为主链通证的单位,所述侧链的智能合约内通过bancor协议将两个链的通证进行价格锚定;

2)运行于主链的智能合约,所述主链的智能合约内存储所述合约链中每个块的root值;

3)client,用于监听所述主链的智能合约和所述侧链的智能合约所发出的event,并调用所述主链的智能合约和所述侧链的智能合约的对应接口;

4)主链,用于运行所述主链的智能合约;

5)侧链,用于运行所述侧链的智能合约。

本发明的目的还在于提供一种主链侧链之间进行价值跨链转移的实现方法,包括步骤:

步骤101,用户调用所述主链的智能合约,存入主链通证以获取侧链通证;

步骤102,用户调用所述侧链的智能合约startexit方法,将侧链通证兑换为主链通证。

优选的,所述步骤101包括:

步骤1001,用户发交易调用主链合约的deposit方法;

步骤1002,主链合约生成一个块block,放入主链的合约链内,所述块block只包含root和blocknum并发送deposit事件;

步骤1003,client监听到主链的deposit事件,获取所属者、主链通证金额、blockroot值,调用所述侧链的智能合约的deposit方法;

步骤1004,所述侧链的智能合约deposit方法创建一个包含blockroot,blocknum的块block,构造一笔由所有者地址到合约地址的交易,放入所述块block内,将所述块block添加到所述侧链的合约链内;

步骤1005,调用bancor合约,将主链通证金额转换成侧链通证金额,并向所有者侧链上的地址进行转帐;

步骤1006,结束。

优选的,所述步骤102包括:

步骤2001,用户发交易调用所述侧链的智能合约的startexit方法;

步骤2002,侧链合约扣除侧链用户地址内的通证并调用bancor协议,将侧链通证金额转换为主链通证金额,构造一笔utxo交易,从合约地址到用户地址,单位为主链通证,发送出块createblock事件;

步骤2003,client监听到侧链的creatblock事件,将交易进行签名,并生成blockroot,调用主链合约submitblock方法,调用侧链的addblock方法;

步骤2004,主链的智能合约submitblock方法,将新的block加入到主链合约链上,侧链的智能合约addblock方法,将新的块添加到侧链合约链上;

步骤2005,主链的智能合约将对应金额的主链通证转入用户地址;

步骤2006,结束。

优选的,所述主链的智能合约以及所述侧链的智能合约存储同一条合约链,所述主链只存储链上块的root,所述侧链存储的是完整的块,所述主链和侧链存储的是同一条链,从而可相互验证,当发生通证兑换的时候,所述主链智能合约可对侧链智能合约内构建的交易进行验签。

优选的,所述bancor协议作为价值锚定策略,所述bancor是去中心化的流动网络,用网络钱包,即可让用户持有任何token并把它转换为网络中的任何其他代币,无须交易对手,通过算法进行价格计算,所述bancor协议是智能token的加密货币的新标准,通过算法自动计算实现网络中代币的转换,所述bancor协议采用了“连接器”模块,在智能合约中保存其他erc20代币余额,所述bancor公式持续不间断地重新计算价格以保持所述智能token和它们的所述连接器之间的平衡。

本发明的有益效果:

1、本发明的方法解决了主链侧链之间相互信问题,主链和侧链因为存储的是同一条链,所以可相互验证,当发生通证兑换的时候,主链智能合约还可对侧链智能合约内构建的交易进行验签。

2、本发明的方法解决了主链通证与侧链通证之间价值锚定问题,使用bancor协议作为价值锚定策略。

根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。

附图说明

后文将参照附图以示例性而非限制性的方式详细描述本发明的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。本发明的目标及特征考虑到如下结合附图的描述将更加明显,附图中:

图1为根据本发明实施例的主链侧链之间进行价值跨链转移的模型架构示意图;

图2为根据本发明实施例的存入主链通证获取侧链通证方法流程图;

图3为根据本发明实施例的侧链通证兑换为主链通证方法流程图。

具体实施方式

为了使得本发明能够针对其发明要点更加明显易懂,下面将结合附图和实例对本发明作进一步的说明。在下面的描述中阐述了很多细节和具体实例,提供这些实例是为了能够更透彻地理解本发明,并且能够将本发明完整形象地传达给本领域的技术人员。虽然本发明能够以很多不同于此的描述的其它方式实施,但是本领域技术人员可以在不违背本发明内涵的情况下做相应的推广,因此本发明不受下面公开的具体实例及具体附图所限制。

参见图1,主链侧链之间进行价值跨链转移的模型,包括五部分:

1)运行于侧链的智能合约,所述侧链的智能合约内通过算法,生成一个utxo模型的链作为合约链,用于存储存入和取出通证的交易,交易的单位为主链通证的单位,所述侧链的智能合约内通过bancor协议将两个链的通证进行价格锚定;

2)运行于主链的智能合约,所述主链的智能合约内存储所述合约链中每个块的root值;

3)client,用于监听所述主链的智能合约和所述侧链的智能合约所发出的event,并调用所述主链的智能合约和所述侧链的智能合约的对应接口;

4)主链,用于运行所述主链的智能合约;

5)侧链,用于运行所述侧链的智能合约。

主链侧链之间进行价值跨链转移的实现方法,包括步骤:

步骤101,用户调用所述主链的智能合约,存入主链通证以获取侧链通证;

步骤102,用户调用所述侧链的智能合约startexit方法,将侧链通证兑换为主链通证。

参见图2,步骤101包括:

步骤1001,用户发交易调用主链合约的deposit方法;

步骤1002,主链合约生成一个块block,放入主链的合约链内,所述块block只包含root和blocknum并发送deposit事件;

步骤1003,client监听到主链的deposit事件,获取所属者、主链通证金额、blockroot值,调用所述侧链的智能合约的deposit方法;

步骤1004,所述侧链的智能合约deposit方法创建一个包含blockroot,blocknum的块block,构造一笔由所有者地址到合约地址的交易,放入所述块block内,将所述块block添加到所述侧链的合约链内;

步骤1005,调用bancor合约,将主链通证金额转换成侧链通证金额,并向所有者侧链上的地址进行转帐;

步骤1006,结束。

参见图3,步骤102包括:

步骤2001,用户发交易调用所述侧链的智能合约的startexit方法;

步骤2002,侧链合约扣除侧链用户地址内的通证并调用bancor协议,将侧链通证金额转换为主链通证金额,构造一笔utxo交易,从合约地址到用户地址,单位为主链通证,发送出块createblock事件;

步骤2003,client监听到侧链的creatblock事件,将交易进行签名,并生成blockroot,调用主链合约submitblock方法,调用侧链的addblock方法;

步骤2004,主链的智能合约submitblock方法,将新的block加入到主链合约链上,侧链的智能合约addblock方法,将新的块添加到侧链合约链上;

步骤2005,主链的智能合约将对应金额的主链通证转入用户地址;

步骤2006,结束。

主链的智能合约以及所述侧链的智能合约存储同一条合约链,主链只存储链上块的root,而侧链存储的是完整的块,由于主链和侧链存储的是同一条链,从而可相互验证,当发生通证兑换的时候,主链智能合约还可对侧链智能合约内构建的交易进行验签。

采用bancor协议作为价值锚定策略,bancor是去中心化的流动网络,用网络钱包,即可让用户持有任何token并把它转换为网络中的任何其他代币,无须交易对手,通过算法进行价格计算,bancor协议是智能token的加密货币的新标准,通过算法自动计算实现网络中代币的转换,所述bancor协议采用了连接器模块,在智能合约中保存其他erc20代币余额,bancor公式持续不间断地重新计算价格以保持智能token和它们的连接器之间的平衡。通过bancor协议不仅建立新的数字资产,也为货币、银行、金融等领域提供了更多可能性,它为创新世界金融系统提供了更多的工具。

采用本实施例的模型和实现方法,一方面解决了主链侧链之间相互信问题,具体方法为:首先解决主链侧链之间的信任问题的基础是双方信任对方的智能合约。本案中,双方智能合约内存储同一条合约链,不同点在于主链只存储链上块的root,而侧链存储的是完整的块。主链和侧链因为存储的是同一条链,所以可相互验证。当发生通证兑换的时候,主链智能合约还可对侧链智能合约内构建的交易进行验签;另一方面解决了主链通证与侧链通证之间价值锚定问题,所使用的方法为:使用bancor协议作为价值锚定策略。bancor是去中心化的流动网络,用网络钱包,即可让用户持有任何token并把它转换为网络中的任何其他代币,无须交易对手,通过算法进行价格计算,所述bancor协议是智能token的加密货币的新标准,通过算法自动计算实现网络中代币的转换,所述bancor协议采用了“连接器”模块,在智能合约中保存其他erc20代币余额,所述bancor公式持续不间断地重新计算价格以保持所述智能token和它们的连接器之间的平衡。通过bancor协议不仅建立新的数字资产,也为货币、银行、金融等领域提供了更多可能性,它为创新世界金融系统提供了更多的工具。

虽然本发明已经参考特定的说明性实施例进行了描述,但是不会受到这些实施例的限定而仅仅受到附加权利要求的限定。本领域技术人员应当理解可以在不偏离本发明的保护范围和精神的情况下对本发明的实施例能够进行改动和修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1