• 手机下载链向财经官方IOS和安卓版APP

      链向财经APP下载

      使用环境
      iOS 9.0及以上
      Android 4.3及以上

    • 链向财经官方微信公众号

      链向财经官方微信公众号

      微信号:LXcaijing

    • 链向财经官方QQ群

      链向财经官方QQ群

      群号:570828491

    • 意见反馈
    • 回到顶部
    • 10119
    • 评论
    • 喜欢
    • 举报
    V神:通向单槽终局的路径

    来源:FTFTX

    V神:通向单槽终局的路径

    特别感谢 Justin Drake、Dankrad Feist、Alex Obadia、Hasu 和其他 hackmd anons对本文不同版本的反馈和审阅。

    如今,以太坊区块需要64-95个插槽(约 15 分钟)才能完成。这是合理的,因为在去中心化/最终确定时间/开销权衡曲线上选择了一个中等程度的权衡:15 分钟不算太长,与现有交易所的确认时间相当,它允许用户运行节点在普通计算机上,即使存款规模为32 ETH产生大量的验证器(而不是早期的1500 ETH值)。但是,有很多关于最终确认时间减少到单个插槽的很好的论据。这是一篇研究现状的文章,回顾了一些可能的策略。

    以太坊质押今天如何以及为何有效?

    如今,大约有285,000个验证器,这些账户已存入32 ETH,因此可以参与质押。验证器不会与用户一一对应:富有的质押者可能控制着数百个验证器。最低32ETH限制了验证器账户的可能数量,确保区块链仍然具有处理这些账户的计算能力。

    每个插槽(12 秒)都会将一个新区块添加到区块链中。在每个插槽中,还有数千个证明在区块链的头部进行投票。有一个名为LMD GHOST的分叉选择规则,它将这些证明作为输入,并确定区块链的头部。这种由数千个证明进行的并行投票使得以太坊比传统的最长链系统更加健壮:除非存在主动攻击或巨大的网络事故,否则即使是单个插槽也几乎永远不会恢复。

    这种证明还有第二个目的:它们在称为Casper FFG的大规模共识算法中充当投票。每个时期(32 个插槽,或 6.4 分钟),所有活跃的验证者都有机会证明一次。经过两轮这样,如果一切顺利,一个纪元(以及其中的所有块)将被最终确定。一旦一个区块被敲定,恢复该区块需要至少 1/3 的验证者销毁他们的存款:攻击成本超过 300 万 ETH。

    持续地审查验证器或交易的成本同样高昂,尽管防御审查攻击需要额外的协议干预。如果51%的验证者开始审查,受害者和用户可以在少数软分叉上进行协调,他们在彼此的区块上构建并忽略攻击者。在少数软分叉上,攻击者的存款将因不活跃的泄漏而损失数百万 ETH,几周后区块链恢复完成。

    为什么要尝试实现单槽确定性?

    尝试摆脱现状并将最终确定时间缩短到一个位置有几个关键原因:

    • 用户体验。大多数用户不愿意为最终结果等待15 分钟。今天,即使 12-20 个 PoW 确认提供的安全保证(与真正的 PoS 最终确定相比)低安全性保证(与真正的 PoS 最终确定相比),即使是交易所也经常认为存款仅在 12-20 次确认(约 3-5 分钟)后“最终确定”。单槽终结性将以用户越来越习惯期望的速度提供非常高的安全性。
    • MEV 重组阻力。单槽确定性将使得即使是大多数人也无法为 MEV 提取目的重组链。合并中的 LMD GHOST 已经使这变得困难,但是单槽终结性使这种保证更加强大,并产生了强大而压倒性的抑制作用,甚至可以阻止敌对的大多数人串通和攻击。
    • 减少协议复杂性和错误的机会。Casper FFG 最终确定和 LMD GHOST 分叉选择之间的“接口”是一个非常复杂的来源,导致许多攻击需要相当复杂的补丁来修复,并且经常发现更多的弱点。单槽确定性提供了在单槽确认机制和分叉选择规则(仅在≥13≥13离线案例)。其他复杂性来源(例如,改组为固定规模的委员会)也可以减少。

    想法 1:通过超级委员会进行单槽终结

    不是所有验证者都参与每轮 Casper FFG 轮,而是只有几千名验证者的中型超级委员会参与,这使得每轮共识在一个时间段内发生。该技术理念最初是在这篇 ethresear.ch 帖子中介绍的。这篇文章更详细地描述了这个想法,但核心原则如下:

    • BFT 共识不是在每个epoch运行,而是在每个slot运行。这意味着一旦交易被包含在一个区块中,在一个插槽之后,将花费数千枚ETH 来恢复该交易。
    • 我们不依赖完整的活动验证器集来完成每个插槽。相反,我们依靠随机选择的数千名验证者组成的超级委员会。
    • 分叉选择规则 (LMD GHOST) 仅用于委员会未确认的例外情况(这需要 >1/4 离线或恶意)。如果发生这种情况,分叉选择规则将决定哪个区块是链的头部,并且委员会在再次确认之前会被泄露不活动。

    V神:通向单槽终局的路径

    如果委员会未能确认,则链继续使用分叉选择来确定头部,并且离线验证者泄漏,直到他们的余额被稀释到剩余验证者余额的 2/3 在线并且委员会可以确认的程度。

    切换到超级委员会的次要好处

    从全局验证者集切换到超级委员会有一些次要好处:

    • 运行验证器节点的计算负载变得更加稳定。与其要求与验证者总数成正比,不如强制验证者拥有强大的机器以防验证者数量大幅增加,计算负载将是稳定的,因此验证者确切地知道他们需要什么计算要求。
    • 大多数情况下,验证者可以立即退出。目前不属于委员会的验证者将能够立即退出(除非有很多提款正在进行并且有一个队列)。即使是委员会中的验证者也可以很快退出(1-5 分钟),因为委员会可以在单槽确定性下快速轮换。只有在真正特殊的情况下(意外的大规模退出或积极的持续攻击),验证者才需要留下并继续保护链,直到一切恢复正常。

    超级委员会有多大?

    就验证器数量而言,答案是“大到足以成为一个安全委员会”(所以,有几百个)。但就总 ETH 而言,委员会也必须足够大。被削减和不活动泄露的 ETH 数量需要大于可以从攻击中实际获得的收入,并且需要足够大以阻止或破坏具有大量外部动机来破坏区块链的强大攻击者。

    这个需要多少 ETH 的问题不可避免地是一个直觉问题。以下是您可以提出的一些问题来引导您的直觉:

    • 假设以太坊链受到 51% 的攻击,社区需要花几天时间协调链下治理事件以恢复,但所有 ETH 的 X% 被销毁。X 需要多少才能对以太坊生态系统产生净效益?
    • 假设一家大型交易所因数百万 ETH 被黑客入侵,攻击者将收益存入并获得超过 51% 的验证者。在他们所有的赃款被销毁之前,他们应该有多少次 51% 的攻击机会?
    • 假设一个 51% 的攻击者开始反复重组区块链,只在很短的时间内捕获所有的MEV。我们希望对攻击者施加的每秒成本是多少?
    • 据Justin Drake估计,如今spawn-camp 攻击比特币的成本(因此,在社区改变 PoW 算法之前反复攻击 51%)约为 100 亿美元,或市值的 1%。一次性 51% 攻击以太坊的成本应该是这个水平的多少倍?

    V神:通向单槽终局的路径

    以太坊研究人员的内部民意调查

    如果我们只关注与延迟无关的51%攻击,100万ETH的攻击成本将意味着200万ETH(约65536个验证器)的超级委员会规模,如果我们还包括34%的攻击,其中涉及恶意验证器和网络操纵的复杂组合,则300万ETH(约97152个验证器)的攻击成本将意味着300万ETH的超级委员会规模。但是,如果我们希望以太坊链负载保持与现在相同(每个插槽约 9,000 或约 288,000 ETH),这将对应于 96,000 到 144,000 ETH 的攻击成本。这两个数字之间仍然存在很大差异。

    因此,除非以太坊社区可以确信攻击以太坊的较低成本是可以接受的(请记住:攻击者仍然需要控制超过 50% 的质押ETH,这只是他们将损失的数量),仅依靠这条路径似乎很难。

    想法 2:努力让非常高的证明者数量发挥作用

    假设我们确实希望有一个链,每个插槽有大量验证者参与(例如,131,072 个验证者以获得保守的约 400 万 ETH)。那上面的性能数字会是什么样子?

    事实证明,每个插槽有大量验证者证明的链上成本并没有看起来那么令人望而却步:

    • 存储验证器记录所需的状态空间将与今天完全相同(每个验证器约 150 字节)
    • 验证签名需要将 131,072 个公钥的事实上的随机子集相加。每个椭圆曲线加法可以在 ~1 微秒内完成,因此这可以在~130 毫秒内完成。这将需要每个插槽执行两次(如果一个块包含冗余证明,则可能需要更多次)
    • 如果我们假设在槽 N 中活跃的验证者通常在槽 N+1 中保持活跃,则可以进一步优化链上添加成本;这意味着对于每个插槽,我们只需要计算新旧聚合公钥之间的增量,在良好的条件下,它可能包含几千个甚至几百个验证者公钥。即使在最坏的情况下,至少 2 倍优化(因此,约 65 毫秒)应该始终是可能的。

    剩下的最大问题是签名聚合。有 131,072 个验证者制作和发送签名,这些需要快速组合成一个大型聚合签名。

    今天,聚合是在 p2p 子网中完成的。每个大小为 256 的委员会都在其自己的子网中聚合了签名。有 16 个随机选择的特权聚合器可以进行聚合并将它们提交到主子网。然后,提议者从每个委员会中获取最佳聚合,并将它们聚合在一起,形成单一的总合并聚合。

    V神:通向单槽终局的路径

    这给每个小组委员会带来了负担,验证者需要单独验证签名(每个签名一对),特别是在攻击用无效签名淹没网络的情况下,以及在全局子网中,16 * n如果存在签名,提议者必须验证签名n委员会。
    聚合很可能成为未来两年显着优化的目标。目前,最大的实际瓶颈是每个子网中的负载,特别是对于需要在多个子网中的节点。

    获得显着改进的两条有希望的简单途径是:

    • 增加子网的数量以允许更多的总证明,而不会增加每个子网的负载。主子网中的负载会增加,但这将通过dank-sharding得到补偿,它通过允许插槽中的所有验证者对相同数据进行签名来提高效率,从而更容易地对这些签名进行批量验证。
    • 更改网络规则,以便即使是具有许多验证者的节点也只需要参与一个子网,从而为增加每个子网的负载和子网数留出空间。如果验证者是其中的聚合器,则验证者仅需要严格订阅子网;仅仅发布到子网的验证器只需要找到订阅该子网的诚实对等方,而无需自己订阅它。

    更专业的聚合器

    支持更多验证者的一种可能更激进的策略是将签名聚合转变为更专业的角色(类似于PBS 中的块构建器),我们期望专业参与者在每个子网(甚至所有子网)中持续存在并执行收集签名的好工作。这些参与者可以得到报酬,或者这可以是志愿者角色(因为对于已经质押许多验证者的用户而言,额外成本非常低)。

    一个简单的协议是允许验证者签署一条ProposedAggregate消息,其中包含 (i) 聚合签名,(ii) 参与人的位域(假设 131,072 个验证者只有 16 kB)和 (iii) 对这两个对象的签名,由聚合器。

    提议者将侦听ProposedAggregate消息,并验证参与人数最多的签名。如果它是有效的,他们包括它。如果签名无效,提议者将失去最多约 130 毫秒的验证时间,他们将继续验证参与度第二高的聚合(如果需要,第三高等),以及聚合器所有无效ProposedAggregate的消息都可以被削减。

    未来发展计划

    转向单槽确认是一个多年的路线图。即使很快就开始进行大量的开发工作,这也将是后来添加到以太坊的重大更改之一,远在完全推出权益证明、分片和 Verkle 树之后。一般来说,实现路径大致如下:

    • 加紧优化证明聚合的工作。无论如何,这是一个重要的问题,因为预计验证者数量会增加。无论我们为其他任何步骤做什么,我们都需要对这个问题进行更专注的研究和开发工作。
    • 同意一般参数:我们的目标是什么规模的超级委员会(或者超级委员会是所有活跃验证者的集合,我们实施一些不同的机制来控制可以有多少活跃验证者)?我们对什么水平的开销感到满意,我们将使用哪些技术来减少开销?
    • 研究、达成一致并指定一个理想的共识和分叉选择机制以实现单槽终结性。这将结合 BFT 共识机制(Casper FFG 或更传统的东西)和分叉选择规则,其中分叉选择规则仅在以下情况下相关≥13≥13 的验证者离线。
    • 同意并在实施路径上执行。这可能是多步骤的,其中一步引入超级委员会机制,然后下一步添加全新的共识和聚合机制。

    最终的好处将非常显着,并且该技术可以随着时间的推移而改进以实现此处未描述的其他好处(例如,使用增加的最大验证者数量来减少最小存款规模)。因此,值得尽快开始对本文中描述的技术挑战进行更深入、更专注的研究和开发。

    已有0人喜欢

    本文经授权发布,不代表链向财经立场。如若转载请标注文章来源:链向财经(www.chainfor.com)

    为了您能更及时的获取到最新热门资讯,请关注链向财经微信公众号:LXcaijing

    发表评论
    请先 注册 / 登录 后参与评论
    已有0发布
      已查看全部
      举报
      • 内容涉嫌抄袭,代表月亮消灭他/她
      • 发布不实消息,画个圈圈诅咒他/她
      • 诱导投资,放毛毛,揍他/她
      • 侵犯名誉、隐私,这个借一步说话
      • 其他
      具体描述(选填):
      取消提交