Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Gasper

Gasper 组合 LMD-GHOST 分叉选择与 Casper FFG 检查点最终性。验证者的参与权重来自有效质押余额,提议与证明通过共识层传播,执行层提供交易执行结果。

时间与投票

主网一个 slot 为 12 秒,一个 epoch 为 32 个 slot,即 6.4 分钟。slot 可以没有区块;检查点引用 epoch 边界对应的链上块,缺块时按祖先规则确定。

证明(attestation)包含链头 head、源检查点 source 和目标检查点 target。head 服务于分叉选择,source/target 服务于 FFG。验证者的投票不是只对当前块表达赞成。

正常连续 justification 下,检查点通常在后续 epoch 处理时终局。约两个 epoch 的最终性描述针对检查点推进,具体交易等待时间还受其所在位置和网络状态影响。

LMD-GHOST

LMD 表示每个验证者用于分叉选择的最新有效消息。节点从 justified 检查点开始,在满足 justified/finalized 兼容约束的候选树上,反复选择具有最大后代投票权重的子分支。

权重由有效余额计算;旧消息不与新消息累加。分叉选择描述节点当前选择的链头,不单独保证确定性最终确认,也不替代可罚没行为的检查。

Proposer boost

及时到达的当前 slot 区块可暂时获得 proposer boost,减轻部分近程重组与投票时序问题。以共识规范 v1.6.0 为准,主网配置为 PROPOSER_SCORE_BOOST = 40:

$$ \text{boost}=\left\lfloor\frac{\left\lfloor\text{totalActiveBalance}/32\right\rfloor\times40}{100}\right\rfloor $$

其基准是每 slot 的平均委员会权重,即约为全网有效余额的 0.40/32 = 1.25%,不是全网约 44%。适用区块、到达时间、分支位置及过期条件由 fork-choice 规则约束。

这个临时分叉权重与 FFG 的三分之二投票阈值具有不同作用,不能将二者直接作为相同尺度的提交票数比较。

Casper FFG

FFG 投票连接已 justified 的 source 与 target。一个有效超级多数链接需要至少三分之二活跃有效余额支持;由有效源到目标的链接可以使目标 justified。

若已 justified 的源检查点与该目标属于连续 epoch,源检查点可以 finalized。实际状态转换也包含跨 epoch 的 justification bits 与相应终局规则,不能把“目标获得三分之二票”脱离源检查点条件单独解释。

在固定权重和罚没规则假设下,冲突终局意味着至少三分之一权重违反可罚没规则,属于 accountable safety。三分之一权重拒绝参与可阻止通常的超级多数进展;网络延迟和其他条件也会影响活性。

可罚没行为与离线惩罚

行为条件
双重区块提议同一提议者在同一 slot 签署两个不同区块头
FFG 双投票同一 target epoch 签署两份不同 attestation data
环绕投票两份 FFG 投票满足 s1 < s2 < t2 < t1

双投票检查针对完整投票数据及 target epoch,不仅是两个不同 target 根。“同一 slot 改变链头”也不能脱离实际签署的证明数据来定义罚没条件。

离线惩罚与 slashing 不同。最终性长期停滞时,inactivity leak 逐步降低缺少合格参与的余额,以使持续参与一侧重新达到超级多数条件。参数按分叉版本确定,不保证所有网络分区下始终存在同一套固定权重。

弱主观性与轻客户端

长期离线节点需要可信近期检查点,以约束长程历史选择。该信任锚包含区块或状态承诺,不是仅凭某一批签名即可从任意历史启动。

同步委员会提供轻客户端可验证的签名。更新还需要验证签名域、参与情况、slot 关系,以及委员会或终局信息到相应状态根的 Merkle 分支。乐观链头更新与带最终性证明的更新具有不同保证。

轻客户端验证不等同于重放全部状态转换。同步委员会也不是决定 Gasper 最终性的另一套共识委员会。

MEV-Boost 与 PBS

在 MEV-Boost 的外部 PBS 模型中,builder 构造执行载荷,relay 验证并转发报价,proposer 选择报价并签署盲化区块,随后获取完整载荷。该服务不是 Gasper 强制要求的出块路径,提议者也可使用本地构建。

选择最高报价属于构建服务和提议者策略,不是共识有效性条件。报价与支付验证、载荷交付及审查风险依赖具体服务机制,不能统一解释为 builder 必须链外预支付或 PBS 自动消除审查。

参考资料