System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于投机的快速共识优化方法、设备及存储介质技术_技高网

基于投机的快速共识优化方法、设备及存储介质技术

技术编号:41993413 阅读:6 留言:0更新日期:2024-07-12 12:19
本发明专利技术的一种基于投机的快速共识优化方法、设备及存储介质,方法包括设置前置条件和后置条件;通过设置前置条件对当前节点投票进行预判,基于后置条件对当前节点投票交易进行确认;前置条件包括非全票结束假设,后置条件包括预期效果;当前节点投票预判包括最坏投票假设及预判其他诚实节点投票。本发明专利技术可以在作恶情况下,一回合内完成共识。本发明专利技术相较于传统的BFT算法,可以在网络波动较大的环境下运行;论网络情况如何,BFT算法需要两轮来回通信或以上才可以完成区块确认,本发明专利技术共识方法在当网络环境良好且节点运行正常时,可以在一轮来回通信内完成共识,效率较高。

【技术实现步骤摘要】

本专利技术涉及区块链,具体涉及一种基于投机的快速共识优化方法。


技术介绍

1、针对区块链中宕机和作恶问题即当出现节点宕机或者节点作恶,区块链网络中共识过程中断,交易无法被确认。在区块链节点可能存在的宕机容错率或者作恶容错率为3f+1,传统共识算法正是在解决允许有f个以下比例节点(即2f+1个有效投票节点)故障宕机时的链分岔问题,并决出主链:如paxos、raft、pbft往往存在选主流程,由主节点来推动状态改变,出现宕机时重新选举处新主节点,但信息复杂度较高、视图切换复杂。而公链共识领域则常用分散打包权的共识方法,不限定打包者从而产生很多分岔,采用概率性手段解决分岔。

2、但是对于一些重要的交易,必须要等待作恶情况被排除后才可以确认,这往往需要等待数个回合。与全票结束假设不同的是,非全票结束放宽假设条件后,需达到比前者更高的节点限制条件,提供了新的优化思。


技术实现思路

1、本专利技术提出的一种基于投机的快速共识优化方法,可至少解决上述技术问题之一。

2、为实现上述目的,本专利技术采用了以下技术方案:

3、一种基于投机的快速共识优化方法,包括括设置前置条件和后置条件;

4、通过设置前置条件对当前节点投票进行预判,基于后置条件对当前节点投票交易进行确认;

5、前置条件包括非全票结束假设,后置条件包括预期效果;

6、当前节点投票预判包括最坏投票假设及预判其他诚实节点投票。

7、进一步地,非全票结束假设包括假定全网总节点数为n,其中有f个作恶节点,则其他诚实节点收到n-f个投票时,即可确认交易,结束本轮共识过程。

8、进一步地,预期效果包括若在当前节点投票时能够预判其他诚实节点在最坏情况下的分岔投票情况,即保证未完成投票的其他诚实节点在无作恶情况下仍能选择某一分岔出块,那么对于当前节点来说,任何作恶攻击,都不会影响预判且可实现的确认结果。

9、进一步地,最坏投票假设包括,n-f个节点作为确认节点集将投票投给b1分岔,b1被确认,此时最多有f个节点作恶并进行了重复投票,假设有f个拜占庭投票投向了b2,其中全网诚实节点共有n-2f个;

10、因此在有作恶情况下,当前节点所收到的最差的投票情况为n-2f个b1和f个b2;同时按照非全票结束假设,要判断当前节点外的其他诚实节点收集到n-f票时,判断其他诚实节点在有作恶攻击情况下所收到的最坏的投票情况,同时预判因其他诚实节点未收集到的f票可能会导致除本诚实节点的另外节点对自身最坏收票情况的影响,从而帮助其他诚实节点和当前节点判断应当如何选择出块。

11、进一步地,所述预判其他诚实节点投票包括,

12、当前节点收集到的投票情况为n-2f票b1,f票b2时,预判其他诚实节点在收到n-f票时,最坏的情况为收到n-3f个b1分岔投票和2f个b2分岔投票;

13、当其他诚实节点在作恶情况下收到n-3f个b1分岔投票和2f个b2分岔投票的最坏投票情况时,诚实节点会做出以下判断:在宕机情况下,f个未知投票可能都是b2投票,其他节点收集投票的最坏情况为n-4f个f分岔投票、3f个b2分岔投票。

14、进一步地,当前节点投票确认交易包括,当前节点如果判断其他诚实节点在无作恶攻击情况下会选择某一个分岔出块,则成为该分岔的宕机容错确认节点集;

15、如果所有诚实节点成为cft确认节点集,即使在最差情况下即出现任何作恶攻击,都不会影响当前节点确认结果。

16、进一步地,还包括节点限制条件,根据当前节点投票确认规则,若使得任何作恶攻击不影响当前节点确认结果,需满足一定的节点数量限制条件:

17、n-4f>3f

18、可得n=7f+1,也即收到6f+1票就可以确认当前分岔,作恶节点即使作恶,也不会影响到系统的安全性。

19、另一方面,本专利技术还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上述方法的步骤。

20、再一方面,本专利技术还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。

21、由上述技术方案可知,本专利技术的基于投机的快速共识优化方法,为进一步提高上述作恶情况下确认交易的响应速度,提出了一种优化共识算法的方案,可以在作恶情况下,一回合内完成共识。

22、相对现有技术,本专利技术的优点如下:

23、1、相较于传统的bft算法,可以在网络波动较大的环境下运行;

24、2、论网络情况如何,bft算法需要两轮来回通信或以上才可以完成区块确认,本专利技术共识方法在当网络环境良好且节点运行正常时,可以在一轮来回通信内完成共识,效率较高。

本文档来自技高网...

【技术保护点】

1.一种基于投机的快速共识优化方法,其特征在于,包括设置前置条件和后置条件;

2.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:

3.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:预期效果包括若在当前节点投票时能够预判其他诚实节点在最坏情况下的分岔投票情况,即保证未完成投票的其他诚实节点在无作恶情况下仍能选择某一分岔出块,那么对于当前节点来说,任何作恶攻击,都不会影响预判且可实现的确认结果。

4.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:

5.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:

6.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:

7.根据权利要求6所述的基于投机的快速共识优化方法,其特征在于:

8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。

9.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。

...

【技术特征摘要】

1.一种基于投机的快速共识优化方法,其特征在于,包括设置前置条件和后置条件;

2.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:

3.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:预期效果包括若在当前节点投票时能够预判其他诚实节点在最坏情况下的分岔投票情况,即保证未完成投票的其他诚实节点在无作恶情况下仍能选择某一分岔出块,那么对于当前节点来说,任何作恶攻击,都不会影响预判且可实现的确认结果。

4.根据权利要求1所述的基于投机的快速共识优化方法,其特征在于:

5...

【专利技术属性】
技术研发人员:李晓风许金林赵赫盛念祖杜慧超余斌周桐
申请(专利权)人:安徽中科晶格技术有限公司
类型:发明
国别省市:

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

1