一种区块链中的分布式应用负载降低方法与流程

文档序号:21029315发布日期:2020-06-09 20:06阅读:242来源:国知局
一种区块链中的分布式应用负载降低方法与流程

本发明属于区块链技术领域,具体涉及一种区块链中的分布式应用负载降低方法。



背景技术:

区块链(blockchain),是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。

当前区块链共识机制不仅包括对交易的共识过程,还包括对基于智能合约的分布式应用的共识过程。即一个智能合约的执行,需要在所有分布式节点上分别执行,并在所有的节点之间对执行过程和结果达成共识,这一过程导致了处理速度的下降和冗余运行,同时低算力节点的存在也限制了分布式应用的大小和复杂度。任意一个节点是单点,都会成为高可用性的瓶颈,所以高可用性的客户端应用需要连接多个区块链节点,并采用负载均衡技术对客户端的请求做分发。同时,基于区块链的分布式资源管理需要更复杂,更完备的分布式应用以满足处理、利用资源的要求。



技术实现要素:

本发明所要解决的技术问题是克服现有技术的不足,提供一种区块链中的分布式应用负载降低方法,采用链下计算的方案,将复杂计算转移至链下,避免共识过程中的冗余计算,降低分布式应用对节点产生的负载,提高分布式应用的复杂程度与数据处理能力。

本发明提供一种区块链中的分布式应用负载降低方法,包括如下步骤,

步骤s1、初始化区块链中所有分布式应用;

步骤s2、进入链上执行阶段,应用中的参与方提供所需输入的信息;

步骤s3、进行链下执行阶段,合约各方在链下执行计算,并将计算结果和合同状态提交至区块链;

步骤s4、进入最后链上执行阶段,分布式应用根据链下执行阶段的运行结果进行代币奖励和抵押的分配。

作为本发明的进一步技术方案,步骤s2中,所需输入的信息包括将代币和抵押存入、表明需要执行的计算和输入的数据。

进一步的,步骤s2中,在链上执行阶段中,参与执行合约的各方需提供与链上运行所耗费经济成本相对应的抵押,这部分抵押以托管的形式持有,直至链下执行阶段结束进行结算。

进一步的,步骤s3中,合约各方在链下执行计算为加密哈希计算。

进一步的,步骤s4中,链下阶段执行结束后,若对合约状态和合约运行结果有异议,则会在链上再进行一次运算从而判定正确合约状态或结果;对于提交不正确结果或合约状态错误的若干方,其抵押将被用于支付链上计算的费用;若对执行结果没有异议,则链上计算消耗的花费会根据事先约定的规则从抵押中扣除,剩余的部分将会返还。

本发明采用链下计算的方案,将复杂计算转移至链下,避免共识过程中的冗余计算,降低分布式应用对节点产生的负载,进一步提高分布式应用的复杂程度与数据处理能力。

附图说明

图1为本发明的方法示意图。

具体实施方式

请参阅图1,本实施例提供一种区块链中的分布式应用负载降低方法,包括如下步骤,

步骤s1、初始化区块链中所有分布式应用;

步骤s2、进入链上执行阶段,应用中的参与方提供所需输入的信息;

步骤s3、进行链下执行阶段,合约各方在链下执行计算,并将计算结果和合同状态提交至区块链;

步骤s4、进入最后链上执行阶段,分布式应用根据链下执行阶段的运行结果进行代币奖励和抵押的分配。

步骤s2中,所需输入的信息包括将代币和抵押存入、表明需要执行的计算和输入的数据。

步骤s2中,在链上执行阶段中,参与执行合约的各方需提供与链上运行所耗费经济成本相对应的抵押,这部分抵押以托管的形式持有,直至链下执行阶段结束进行结算。

步骤s3中,合约各方在链下执行计算为加密哈希计算。

步骤s4中,链下阶段执行结束后,若对合约状态和合约运行结果有异议,则会在链上再进行一次运算从而判定正确合约状态或结果;对于提交不正确结果或合约状态错误的若干方,其抵押将被用于支付链上计算的费用;若对执行结果没有异议,则链上计算消耗的花费会根据事先约定的规则从抵押中扣除,剩余的部分将会返还

以上显示和描述了本发明的基本原理、主要特征和优点。本领域的技术人员应该了解,本发明不受上述具体实施例的限制,上述具体实施例和说明书中的描述只是为了进一步说明本发明的原理,在不脱离本发明精神范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护的范围由权利要求书及其等效物界定。



技术特征:

1.一种区块链中的分布式应用负载降低方法,其特征在于,包括如下步骤,

步骤s1、初始化区块链中所有分布式应用;

步骤s2、进入链上执行阶段,应用中的参与方提供所需输入的信息;

步骤s3、进行链下执行阶段,合约各方在链下执行复杂的加密哈希计算,并将计算结果和合同状态提交至区块链;

步骤s4、进入最后链上执行阶段,分布式应用根据链下执行阶段的运行结果进行代币奖励和抵押的分配。

2.根据权利要求1所述的一种区块链中的分布式应用负载降低方法,其特征在于,所述步骤s2中,所需输入的信息包括将代币和抵押存入、表明需要执行的计算和输入的数据。

3.根据权利要求1所述的一种区块链中的分布式应用负载降低方法,其特征在于,所述步骤s2中,在链上执行阶段中,参与执行合约的各方需提供与链上运行所耗费经济成本相对应的抵押,这部分抵押以托管的形式持有,直至链下执行阶段结束进行结算。

4.根据权利要求1所述的一种区块链中的分布式应用负载降低方法,其特征在于,所述步骤s3中,合约各方在链下执行计算为加密哈希计算。

5.根据权利要求1所述的一种区块链中的分布式应用负载降低方法,其特征在于,所述步骤s4中,链下阶段执行结束后,若对合约状态和合约运行结果有异议,则会在链上再进行一次运算从而判定正确合约状态或结果;对于提交不正确结果或合约状态错误的若干方,其抵押将被用于支付链上计算的费用;若对执行结果没有异议,则链上计算消耗的花费会根据事先约定的规则从抵押中扣除,剩余的部分将会返还。


技术总结
一种区块链中的分布式应用负载降低方法,包括如下步骤,步骤S1、初始化区块链中所有分布式应用;步骤S2、进入链上执行阶段,应用中的参与方提供所需输入的信息;步骤S3、进行链下执行阶段,合约各方在链下执行复杂的加密哈希计算,并将计算结果和合同状态提交至区块链;步骤S4、进入最后链上执行阶段,分布式应用根据链下执行阶段的运行结果进行代币奖励和抵押的分配。本发明采用链下计算的方案,将复杂计算转移至链下,避免共识过程中的冗余计算,降低分布式应用对节点产生的负载,进一步提高分布式应用的复杂程度与数据处理能力。

技术研发人员:王堃;雷文;陈悦妍;凌章;钱凯;孙雁飞;陈思光
受保护的技术使用者:南京邮电大学
技术研发日:2020.01.19
技术公布日:2020.06.09
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1