LUX:Conflux为什么没有选择比特币所采用的最长链规则?_CON

编者按:本文来自Conflux中文社区,作者Conflux研究组,Odaily星球日报经授权转载。由于Conflux采用的是不同于最长链规则的最重链规则,所以在以往的文章中我们比较经常解释Conflux没有选择最长链规则的原因,而对最长链规则本身的优势介绍得比较少。这次我们将从一个更全面的视角来讨论最长链规则的优势与劣势。首先我们来谈谈最长链规则的优势。从比特币开始,无论是最初的只是改改参数的莱特币,还是后来提出的Bitcoin-NG,以及采用了DAG结构的OHIE,众多公链共识算法的核心理念都是最长链规则。能够得到如此多公链项目的青睐,最长链规则的过人之处究竟在哪里呢?OHIE的论文提到了很重要的一点:对于一个区块链系统,最重要的是一个“端到端”的安全性证明——只针对几种特定的攻击方式证明安全性是远远不够的,因为永远无法避免将来有更聪明的人设计出更巧妙的攻击策略。在端到端的安全性证明这点上,最长链规则具有足够的先发优势。作为开加密货币之先河的比特币的核心规则,最长链规则得到了最广泛和深入的研究。实际上,即使是被研究最多的最长链规则,其安全性的完整证明也要晚至2016年9月才由康奈尔大学的密码学教授RafaelPass等人首次完成。Rafael的证明可以直接推广到任何一个合理设计的基于最长链规则的公链系统。相比之下,其它的共识算法包括最重链规则在2019年以前都没有一个完整的安全性证明,甚至有些共识算法连在限定条件下的安全性证明都没有。我们将把有关最重链规则的问题以及Conflux的应对留在之后的几期来讲,此处不再展开。那么Conflux为什么没有采用最长链规则呢?主要原因在于最长链规则对“孤块”非常敏感。“孤块”是指那些形式上合法但是最终没有进入主链的区块。在理想的情况下,诚实节点每次生成区块都会将最长链的长度增加一。但是,如果两个诚实节点近乎同时挖出了两个区块,互相都没有引用对方作为父亲区块,那么这两个区块就形成竞争关系。相互竞争的区块最终至多只有一个进入最长链中,其余的都会成为不对最长链做出任何贡献的“孤块”。一旦系统中的“孤块”过多,最长链的增长速率就会受到影响,进而给攻击者可乘之机。例如在50%的诚实区块成为“孤块”的情况下,最长链的平均增长速度就只有诚实节点出块速度的一半,此时攻击者只需要34%的总算力就可以对任意早的交易发起双花攻击。“孤块”的出现频率与一个比值有关:平均生成一个区块所需的时间/区块在点对点网络中广播需要的时间,我们暂且称为安全性系数。这个比值越高,则孤块出现的频率越少,相应的也就更安全。根据文章中的分析,在这个比值大于7时,双花攻击所需算力的理论阈值是45%左右;比值大于60时,双花攻击所需算力的理论阈值是49.5%左右。目前比特币的比值在60左右。因此我们有以下四个式子:安全性系数=平均生成一个区块的时间/区块广播时间网络带宽系数=区块大小/区块广播时间单笔交易负载=区块大小/每个区块交易数量TPS=每个区块交易数量/平均生成一个区块的时间也就是说,安全性比值*单笔交易负载*TPS=网络带宽系数上式中除了TPS之外的每项都对应了一个在最长链规则下提高TPS的切入点:降低安全性系数:简单地改比特币的参数,牺牲一部分安全性以换取更高的效率。例如缩短出块时间或者增大区块尺寸。降低单笔交易负载:使用致密区块技术,把完整传输每笔交易变成传输交易的短ID。提高网络带宽系数:提高共识节点的加入门槛,牺牲去中心化程度以换取更高的效率。极端情况下可以只保留少量光纤直连的超级节点。这几个修改的方向都非常直接有效,但是可以带来的性能提升是比较有限的,过度使用带来的牺牲也非常大。例如将区块的尺寸增加到上百MB或者将共识节点数量减少到20个都很可能是得不偿失的做法。实际上,Bitcoin-NG和OHIE利用一些特殊的设计绕过以上限制。另一方面,如果将树图结构与最长链规则结合,其实也可以很简单地设计出高TPS的共识机制。关于这一点,我们将专门写一篇文章详细讨论,此处先不展开。总而言之,在提高TPS这条路上,尽管最长链规则受到以上分析的制约,但通过合理的设计,这个天花板还是可以绕开的。最长链规则最大的弱点,是区块的确认时间。如果把安全性系数设为10,则等待6个确认区块的平均时间是60*区块广播需要的时间;如果需要在两分钟内确认一笔交易,就需要把区块广播时间控制在2秒内。实际上,在区块广播中的每一跳,每个节点都需要进行验证和执行等一系列操作之后才能向下一跳转发。在节点数较多的时候,即使是不大的区块想要在2秒内传遍全网所有节点也是一件非常困难的事情。从目前的网络环境来看,3到5分钟的确认时间基本上已经是最长链规则的极限。Conflux的原型版本中区块的确认时间是4到7分钟,看起来也没有做得更好。实际上,随着我们对最重链规则进行更深入的研究并进一步发掘其特有的潜力,在PoW链的确认时间这点上我们已经取得了惊人的突破,实现了远超最长链规则的确认速度……

Trust Wallet宣布集成SPACE ID域名:9月27日消息,据官方消息,多链非托管钱包 Trust Wallet 已集成去中心化域名协议 SPACE ID 域名,用户现在可以在 Trust Wallet 上更改其显示名称并使用 .bnb 域名发送资产。[2022/9/27 22:34:28]

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

大币网

[0:15ms0-3:957ms