相关证明者惩罚的具体提案 - 经济学

本文提出了一个具体的提案,旨在实现相关的惩罚机制,该机制能最大程度地保持简单性,并与当前已有的有价值的不变性相一致。该机制通过调整罚款因子,根据未正确参与的验证者总余额来动态调整惩罚,从而鼓励验证者之间的反相关性,同时保持平均验证者收入不变。

参见之前的工作:关于“相关性证明惩罚”的分析通过更多反相关激励来支持去中心化质押

这篇文章介绍了一个关于如何实施相关性惩罚的具体方案,该方案最大程度地兼顾了 (i) 简易性,以及 (ii) 与现有有价值的不变性保持一致。

目标

  1. 复制此处所提出的基本设计精神。
  2. 最大程度的简易性(与我们在例如 EIP-4844 blob gas market design 中看到的那种简易性相同)
  3. 在所有“正确证明百分比”水平下,验证者的平均收入与今天相同。即使是拥有大量权益并试图破坏它的攻击者,这也应该作为一个硬性不变量成立。
  4. 因未能完成一次证明而受到的平均惩罚与今天相同
  5. 验证者应该只因为发送证明而获得奖励,而不是被动地获得奖励

机制

  • 我们设置两个常量:PENALTY_ADJUSTMENT_FACTOR = 2**12MAX_PENALTY_FACTOR = 4
  • 我们向状态添加一个计数器,NET_EXCESS_PENALTIES
  • 在一个 slot 中,设 non_attesting_balance 为在该 slot 中_未_正确证明的总余额
  • 设:penalty_factor = min((non_attesting_balance * PENALTY_ADJUSTMENT_FACTOR) // (NET_EXCESS_PENALTIES * total_active_balance + 1), MAX_PENALTY_FACTOR)
  • R 为当前正确证明的奖励(基于 base_reward 计算,并根据分配给相关工作的 fraction 进行调整)。这保持不变。
  • 如果验证者_未能_正确证明,他们将受到 penalty_factor * R 的惩罚(而不是像今天一样受到 R 的惩罚)
  • 在一个 slot 结束时,设置:NET_EXCESS_PENALTIES = max(1, NET_EXCESS_PENALTIES + penalty_factor) - 1

理由

应该很容易看出 NET_EXCESS_PENALTIES 跟踪了 sum(penalty_factor[slot] for slot in slots) - len(slots)。因此,如果 penalty_factor 在一段时间内平均超过 1,NET_EXCESS_PENALTIES 将持续上升,直到不再是这种情况。NET_EXCESS_PENALTIESpenalty_factor 计算中的分母,因此 NET_EXCESS_PENALTIES 的上升将压低平均 penalty_factor 值,直到平均值低于 1(反之亦然,如果它下降)。

penalty_factor 与当前 slot 的总 non_attesting_balance 成正比,因此为了使其平均值为 1,它必须大致等于当前 slot 的 non_attesting_balance 除以长期平均值 - 这与此处提出的设计完全相同。

因为 penalty_factor 的平均值为 1,所以平均非参与惩罚等于 R,与今天相同。因此,对于任何正确的证明率,验证者的平均奖励与今天相同,假设他们的不正确证明与其他验证者的不相关。

PENALTY_ADJUSTMENT_FACTOR 影响惩罚调整的速度。

可能的扩展

  • 使 penalty_factor 更加“连续”,例如,将 base_reward 放入计算 penalty_factor 的分子中(以及最大值中,以及每个 slot 的递减量中),然后使用它直接计算惩罚。

  • 探索更巧妙的方法来跨多个工作应用此机制(正确的 head 证明、target 证明...)。一种朴素的方法是仅对每个工作按顺序应用它,但可能存在更巧妙的方法。

  • 规模不经济:反相关惩罚 (EIP-7716)

  • 关于“相关性证明惩罚”的分析

  • 原文链接: ethresear.ch/t/a-concret...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
以太坊中文
以太坊中文
以太坊中文, 用中文传播以太坊的最新进展