跳到正文

权益研磨攻击:操纵权益证明随机性

权益研磨攻击会在协议允许的密钥、区块或随机数贡献中搜索,以获得更有利的未来验证者选择结果。本文解析攻击路径、量化搜索优势,并审查针对具体协议的防御措施。

更新于

仅供协议安全教育分析。随机性、领导者选择、惩罚与攻击成本取决于具体协议和版本;在得出安全性或质押结论前,请核实当前生效的规范与实现。

直接回答

权益研磨攻击利用权益证明参与者在协议随机性固定前能够作出的选择。参与者评估多个有效密钥、候选区块或随机数贡献,再保留或披露能使未来提议者、委员会或分叉结果更有利的选项。额外搜索把一次抽签变成多次候选抽签,可能使其获得超出名义质押份额的影响力。

研磨是一族攻击,而非一种通用流程。区块或种子研磨发生在生成者可改变协议允许的区块内容或祖先,且结果哈希会进入后续随机性时。密钥研磨是参与者在注册前生成大量候选密钥,只保留资格结果有利的身份。选择性披露研磨则是在得知每个允许选项如何改变种子后,选择扣留或发布承诺、揭示值、签名或区块。

哈希、可验证随机函数(VRF)或承诺-揭示方案本身并不能保证完整流程无偏。安全性取决于谁能选择每项输入、何时可知资格、能测试多少替代项、放弃是否带来额外选择,以及种子与其选出的领导者隔离多久。可靠审查必须依据确切协议版本,不能从某个密码学原语的名称推断安全性。

攻击与分析路径

  1. 固定选择规则。 记录网络、版本、epoch 或轮次、有效质押快照、种子推导、资格测试、分叉选择及奖励和惩罚规则。
  2. 列出所有对手选择。 包括注册前创建的密钥、有效交易排序、可选字段、候选父块、区块发布、随机数揭示与放弃。只有当改变某字段能影响被接受的未来状态或种子时,它才相关。
  3. 衡量搜索预算。 估算截止时间前可评估多少不同候选项、哪些试验相互独立,以及每次试验的计算、错失奖励、保证金、延迟或可罚没行为成本。
  4. 把种子连接到未来权力。 确定种子提前多久选择提议者或委员会、攻击者是否在承诺前知道结果,以及一次有利选择是否会创造下一次研磨机会。
  5. 评估接受条件与复利效应。 候选项必须继续满足状态转换、时间、签名和分叉选择规则。应把重复影响建模为有状态过程,不要假设各轮独立而外推单轮概率。
  6. 逐项验证防御。 延迟种子、VRF、密钥注册规则、惩罚、门限随机信标和可验证延迟函数针对不同能力,也各自引入可用性与实现假设。

证据包应保存候选区块或承诺、确切哈希与域、时间数据、质押快照、实际实现的种子计算和反事实选择结果。连续获得提议权本身不是证据,因为诚实的质押加权抽签也会自然形成聚集。

完整示例

假设一个简化协议给予攻击者下一轮提议者概率的 10%。若攻击者只有一个固定种子,其被选中概率为 0.10。现在假设一个缺陷允许它以可忽略成本评估 20 个相互独立且同样有效的候选种子,并任选其一发布。

至少一个候选项选中攻击者的概率为 1 - (1 - 0.10)^20,约为 87.8%。这不表示攻击者拥有 87.8% 的质押,而是协议意外赋予它 20 次抽签机会,并允许在看到结果后再作选择。

此计算是高层说明,并非对已部署链的预测。候选结果可能相关,截止时间会限制试验次数,某些变体会损失手续费或奖励,扣留可能受罚,而成为下一位有利提议者也未必能形成持久的分叉选择影响。评估经济或共识影响前必须测量这些约束。

防御措施与审查清单

随机性构造

  • 从受影响参与者尚不能得知或控制分配结果时已经承诺的输入中推导选择随机性。
  • 在时间上充分分隔贡献、承诺、揭示与使用,使当前领导者无法低成本搜索决定其直接继任者的种子。
  • 处理最后披露者问题:若扣留揭示值能让一名参与者在不同结果间选择,承诺-揭示协议仍会产生偏差。
  • 仅在明确诚实参与、活性、恢复和成员变更假设后使用门限或分布式随机信标。

资格与身份

  • 在相关种子可知前,将 VRF 密钥和质押绑定到注册快照,否则离线生成密钥可能演变为密钥研磨。
  • 按链、版本、轮次、角色和用途分隔随机性的域,防止一个上下文中的证明在另一上下文中复用。
  • 在适用时采用私密资格,同时认识到私密领导者选举能减少提前定向攻击,却不能修复有偏的种子生成。
  • 限制低成本身份轮换,并定义委托质押、质押池和变化中的验证者集合如何进入抽签。

经济与运维

  • 计入错失区块、被没收奖励、锁定资本、可检测的矛盾签名和相关性惩罚;不要把每个合法选择都称为可罚没行为。
  • 在具有统计意义的窗口内监控种子贡献、揭示失败、异常候选生成、提议者频率和软件多样性。
  • 除非规范已证明相关选择无害,否则不要让自主决定的构建者、relay 或交易排序接口接触共识关键随机性。
  • 测试回退行为。只有所有参与方响应才无偏的随机机制,可能用抗偏差能力换来活性故障。

常见误区

  • 哈希输出是随机的,所以无法研磨。 对一个固定输入不可预测的哈希,仍可能被能从多个输入中选择的参与者筛成有偏输出。
  • VRF 能消除所有研磨攻击。 VRF 证明某个密钥和输入对应的输出;密钥生成、种子控制、注册时机与选择性发布仍是独立问题。
  • 承诺-揭示随机性天然无偏。 若协议未消除或定价放弃选项,最后一名参与者可能在揭示与放弃之间作选择。
  • 研磨需要多数质押。 若少数参与者获得多次低成本试验,也可能取得超额选择概率;但要把优势转化为安全性故障,还需要其他协议特定条件。
  • 连续提议次数越多就证明存在操纵。 随机领导者选择会产生连胜。检测需要预先声明的统计模型以及协议和实现证据。
  • 研磨与 nothing at stake 是同一问题。 研磨偏置随机性或资格;nothing at stake 关注支持竞争历史的激励。两者可能相互作用,但分析上不同。

相关主题

来源

导航

搜索知识库...