警惕质押风险:如果你用Geth进行质押,真的可能会失去所有资产

时间:2024-07-25  分类:电子


本文讨论了以太坊网络中执行客户端Nethermind遇到的一个故障,导致所有使用Nethermind的验证器(约占网络的10%)离线。文章强调了Geth客户端在以太坊网络中占据的超多数地位以及由此带来的潜在风险。尽管Geth是稳定且可靠的客户端,但如果出现严重故障,由于其在网络中的普遍使用,可能对整个网络造成重大影响。文章呼吁社区重视执行客户端的多样性,以降低网络面临的集中化风险。


介绍


本周,以太坊网络的一个执行客户端Nethermind经历了一个故障,导致所有运行Nethermind的验证器(约占网络的10%)离线。


这是一个较小的事件,因为Nethermind是少数利益相关者运营的。以下是我自己运行Nethermind的验证器的总余额的图表。你可以看到在当地时间凌晨4点左右,当故障首次发生时,验证器就离线了。团队在大约4小时后发布了一个补丁,等我安装好后,验证器在当地时间上午9点左右恢复运行。在此期间,我的验证器受到的惩罚与它获得的奖励相同。在同一天下午1点,验证器的余额高于宕机前。总的来说,这是一个小的故障。


许多人错误地假设,当运行Geth时,如果发生类似的故障,惩罚会类似。这不是真的。这与Geth或Geth的构建方式无关,而与运行Geth的人数有关。


根据ClientDiversity.org的数据,以太坊上约84%的验证器都在运行Geth。现在这些持有者的辩护是,Geth无疑是最好、最稳定的客户端。虽然像Nethermind这样的少数客户端本周受到了故障和停机的困扰,但Geth自合并以来(甚至在此之前)一直运行良好。根据我自己的经验,当从Geth转换到少数派客户端时,我发现验证器需要更多的资源,遗漏的验证也更多。


这篇文章并不是对Geth的攻击。我非常尊重他们的团队。不幸的是,由于Geth的广泛使用,我们需要诚实地讨论当Geth持有绝大多数质押时运行Geth的风险。


如果他们知道自己更有可能经历更多错过的证明和更多的停机时间,那么没有人愿意离开Geth,尤其是那些依赖于正常运行时间来宣传最高收益的商业模式,比如专业的质押运营商。


截至去年9月,估计最大的运营商Lido在Geth上运行约76%的验证器。


但我很高兴我在运行一个少数的客户端,即使我失去了一些额外的奖励,不是因为我是利他主义者,为了网络的去中心化牺牲个人利益,而是因为我知道我的ETH会因此免于大多数bug的影响。


如果Geth出现bug,会发生什么?


这取决于bug本身。


因为超过三分之二的以太坊验证器运行Geth,任何Geth中的严重故障都会立即阻止链的最终确定。这并不意味着链停止或中断。只要其他客户端仍在运行,链就会继续运行。大约84%的区块将被遗漏,这意味着每隔约75秒才会提出一个新区块,而不是约12秒的区块时间。这些区块将容易发生重组,因此当链再次完成时,这些区块中包含的交易不保证仍然存在。这听起来很糟糕,但让我们记住,多年来以太坊在合并前从未有过最终确认的概念,比特币今天也是如此这就是为什么交易所让你等待6个以上的区块确认才能存款,以降低发生重组和损失资金的风险。


有些人可能还记得,以太坊在2023年5月就已经发生过这种情况,当时一些共识客户端出现了bug。在两天时间里,链条两次停止终结,导致许多区块被遗漏,一度只有40%的网络仍在运行。网络恢复后,大多数DApp用户除了交易区块确认速度稍慢外,没有发现任何问题。


但验证器会怎么样呢?


非活动泄漏


当少数客户端失败时,惩罚是以与获得它的速率相同的速率失去ETH(正如您在我上面的验证器图中看到的),但如果Geth失败,因为它会立即阻止链最终确定,所以惩罚会更加严厉。这种增加的惩罚被称为非活动泄漏(Theinactivityleak),当链停止最终确定4个周期(约25分钟)或更长时间时,它会应用于离线验证器。这种更严厉的惩罚旨在鼓励离线验证器尽快恢复在线,或者在最坏的情况下,销毁离线验证器的权益,直到他们的权益占总权益的1/3以下,从而允许在线验证器完成链的确认。


在非活动泄漏期间,验证器仅需离线2天就会损失其权益的0.6%,或相当于2个月的权益奖励!


仅需离线5天,就会消耗掉整整一年的质押奖励(3.5%)!这意味着需要超过2年多的质押才能恢复验证者在事件发生前拥有的余额。


在离线1周内,10%的权益,或3年的奖励,将会丢失。在大约20天内,50%的权益将会丢失,在大约40天内,90%的权益将会丢失。


相比之下,由于少数客户端故障而离线的验证器在40天内仅会损失其权益的0.4%。


不活跃的惩罚将持续多久?


这取决于bug。


如果bug能被修补,那么惩罚将持续到Geth团队修补bug并将其应用到您的验证器所需的时间(或切换到其他执行客户端所需的时间)。


实际上,我们预计这个问题可以在几个小时或最多几天内得到解决。如果修复bug所需的时间与最近的Nethermind事件相同,验证器将损失0.004%的权益,这不是什么大问题。


如果bug导致验证器产生无效区块,并且Geth将其视为有效并对其进行认证,情况就会变得糟糕。这将导致链分叉。链将分成两个分支,一个包含无效区块的分支(Geth链),另一个忽略无效区块的分支(非Geth链)。运行Geth的验证器将认为这两个分支都是有效的,因此决定在权重最重的链上构建。84%的验证器将其权益认证给Geth链,仅有16%的验证器将其权益认证给非Geth链。因此,Geth验证器将选择Geth链作为权重最重的链,并继续在其上构建。


-->> 1/2 文章未完,请继续阅读

以上就是警惕质押风险:如果你用Geth进行质押,真的可能会失去所有资产的全部内容,望能这篇警惕质押风险:如果你用Geth进行质押,真的可能会失去所有资产可以帮助您解决问题,能够解决大家的实际问题是非常好学习网一直努力的方向和目标。