12月1日,随着以太坊(ETH)2.0“第0阶段”的发布,向用户介绍了利益相关证明(PoS)共识机制带来的一系列新功能和细微差别。其中之一是“slashing”——一种网络保护机制,如果验证器不能正确完成任务,它将对其进行惩罚。
Prysmatic实验室的以太坊协议开发人员劳尔·乔丹(Raul Jordan)11月30日发表了一篇综合性的博客文章,解释了如何避免被砍价。
什么是砍伤?
在最简单的层面上,切割是以太坊2.0上的一种执法形式。
此机制旨在检测和抑制任何可能对网络有害的验证程序活动。例如,这包括提议或证明同一时段内两个不同的冲突区块,或投票“包围”或被前一个选区“包围”的投票。
以太坊2.0发布信标链
当一个活跃的验证器被砍掉时,系统开始在36天的时间里逐渐销毁其ETH股份的一部分(基本上是烧钱),之后有罪的参与者从以太坊2.0的信标链中被引导出来。值得注意的是,删减是不可逆的,这意味着如果用户希望在被削减后继续验证,就必须生成新的验证器密钥并存入新的赌注。
[以太坊标志]以太坊是市值第二大加密货币。图片:Shutterstock
然而,一些常见的用户错误也可能导致大幅削减,即使没有恶意。
如何避免被砍伤?
根据Jordan的说法,可能导致大幅缩减的最大错误之一是用户将相同的验证密钥输入两个或多个服务器(例如,保留其中一个作为备份)。
“这是让自己被砍伤的最简单的方法。乔丹解释说:“如果故障转移系统出现误报,您的第一个节点就坏了,那么您可能会发现自己处于一种可被严重破坏的情况下。”。
为了避免这种情况,用户不应该同时在两个或多个地方运行相同的验证密钥。尤其是在这种特殊情况下,大多数削减保护措施都无济于事。
我刚刚与被割伤的验证器进行了交谈,我们发现问题就在眼前。他们正在运行另一个验证器实例。下面是一个警告:
不要在多个地方运行验证器和验证器实例https://t.co/e6HaJX5Mkl
—菲尔·埃思🦏(@phil_eth)2020年12月2日
另一个常见的错误是,当用户将他的验证器迁移到另一台机器或eth2.0客户端时,却忘记了重新定位slashing保护历史记录(一个包含本地签名历史的数据库)。
“这个数据库确保验证器不会对根据其自身历史被视为可删减消息的消息进行签名;更简单地说,验证器在决定是否应对消息进行签名时,将数据库视为其唯一的真实来源,”Jordan说,“这种方法可确保单个验证器不会执行重复操作。”
他还解释说,删减保护历史是目前最有效和最简单的方法之一,以保护您的验证器不被砍。因此,当用户切换到新的硬件或软件时,也应该迁移它,避免完全丢失。
什么是以太坊2.0?它为什么重要?
另一种轻松削减的方法是使用没有持久卷的容器化或云环境。
Jordan补充道:“您需要为验证器设置持久卷,这样,如果pod或容器重新启动,(sic)将不会删除大幅删除保护历史记录。”。
最后,虽然“不太可能”,但最坏的情况是实现中的bug。为了避免这些问题,用户必须了解如何设置、配置、升级和排除任何已安装软件的故障。
最终,在大多数情况下,删减保护历史是保护诚实验证器的第一道防线。但最好再检查一遍。