来源|?notes.ethereum.org
作者|VitalikButerin
译者注:Balanceattack指的是攻击者快速干扰有相近算力子组的沟通。在此期间,攻击者在一个子组发布交易(称为交易子组),在另一个子组挖区块(称为区块子组),直到区块子组的树以高概率胜过交易子组的树。Balanceattack的新颖之处在于利用GHOST协议把兄弟块或叔块算入选择区块得分的特性。这个策略使得攻击者可以在与网络隔离的情况下挖一个分支,在将它的分支并入竞争区块链之前影响分支选择过程。
eth2的分叉选择区别于eth1和“基于链(chain-based)"的PoS算法(例如像Peercoin和NXT这些旧算法,但也有像Tezos、Ouroboros等的较新的算法)的一个关键是,在eth2,有非常多影响区块”得分(score)“的信息是并行到达的。
基于链的PoS算法:
路透社:SBF在FTX系统中内置后门并借此转移数十亿美元资金:11月12日消息,据路透社报道,SBF在FTX的会计软件中设置了一个后门,该后门允许SBF改变FTX的交易记录,而不会触发安全警报,亦不会触发外部审计人员的警报,他曾借此转移10亿美元资金。对此,SBF予以否认。[2022/11/12 12:55:39]
(像在eth2里)每个slot上的委员会:
基于链的算法更容易证明其活性(事实上,在某些情况里活性已经被证明了),因为通常一次有一个单个行动者,使得它们充当"协作瓶颈(coordinatingbottleneck)",让每个人都对同一个分数达成共识。
加密交易公司QCP:以太坊合并可能不会立即导致通缩:金色财经报道,随着ETH合并即将到来,人们普遍预计此次升级将使ETH成为一种通货紧缩的加密货币。来自新加坡的加密交易公司QCP Capital的策略师在最近发布的一份报告中称,超级看涨的论点是ETH 2.0将立即预示着ETH通货紧缩供应的新时代。但这并不完全正确,至少现在是这样。虽然合并可能会导致以太坊供应减少,使其成为通缩资产,但网络使用率低可能会延迟预期的看涨效应。而看涨的推动力将来自燃烧率,在加密冬季,看起来并不那么乐观。
根据QCP的数据,矿工目前每年收到500万个ETH(约81亿美元)。过渡后,这一数字估计将下降到每年100万ETH,用于支付给PoS质押者的奖励。(支付的奖励金额取决于质押者的数量,而质押者的数量又与质押收益挂钩)。[2022/9/8 13:17:39]
下面是基于链的算法中活性的”稻草人证明概述“。
假设:
在每个slot里就有一个行动者(即区块提议者)可以参与。诚实的区块提议者在slot的前半发布他们的区块网络延迟的上限是半个slot(因此是δ<1/2,以slot为单位测量时间)。被分配到在slotN+1行动的行动者仅会基于他们在slotN前收到的信息行动。我们对节点收到在时间t发出的信息的时间建模为区间?(t,t+δ)的“云”?(到这里为止,这只是陈述了同步假设的标准学术表述)。因此,存在两种情况:
Crypto.com任命前DISG执行董事为新加坡业务总经理:8月18日消息,据外媒报道,Crypto.com已任命Chin Tah Ang为新加坡总经理。Chin Tah Ang此前曾任Digital Industry Singapore执行董事,Digital Industry Singapore是由经济发展局(EDB)、新加坡企业发展局(ESG)和信息通信媒体发展局(IMDA)联合成立的办公室。(彭博社)[2022/8/18 12:33:14]
达成共识
没有达成共识
请注意,只有当在slotN的参与者不诚实时才会出现没有达成共识的情况。因此,如果被分配到某个slot的参与者是诚实的,那么要么(i)在该slot的末端每个参与者都对哪条是正确链达成共识,因为他们都是基于相同的信息计算分叉选择的,要么(ii)攻击者在之前那些他们没有参与的slot上“用掉了”?一些储备的参与权。因此,只有当攻击者对每个诚实参与者有至少一个储备的参与权时,即如果攻击者被分到的slot多于诚实节点时(也就是诚实大多数的假设被打破时),干扰才能继续。
现在看看”有很多并行证明“的情况。当有很多并行证明增加一个区块的得分时,是没有单一行动者创造瓶颈的。因此,攻击者可以操纵网络(再加上有策略地对一些他们自己的验证者广播),以便在每个epoch末端构建就哪些信息算入分叉选择没有达成共识的状态,从而使多条链中的某条链胜出。
请看论文Ebb-and-FlowProtocols:AResolutionoftheAvailability-FinalityDilemma(动态协议:可用性与最终确定性两难困境的解决方法),特别是第4和第5页,那里有对这种攻击的说明。请注意,这种攻击的确建基于一些在实践中非常难以实现的网络假设(攻击者对个人质押者的网络延迟有非常精细的控制),但尽管如此,一个能抵抗这种攻击的协议还是比一个不能的协议好。
提议的解决方案
提议的解决方案是引入明确的”同步瓶颈“小工具到分叉选择上。特别是,我们可以增加以下规则:
1.假设所有被分配到slotN的证明者的集体总权重为W
2.slotN+1里的参与者仅会认为在slotN末前到达(从参与者的角度)的证明是有效的。
3.在slotN+1的提议者应该在slotN+1的开端就马上做提议。他们的提议其实是在选择一条特定的链。在slotN+1的证明者看来,如果他们在slot进行了1/3之前就看到提议到达了,他们会将该提案视为等同于权重为W/4的证明(这个得分调整只对slotN+1有效,在slotN+1后这个得分调整会复原)。
4.把同步假设降低到δ<1/3
分析
(请注意:为了分析的简易,我们假设时钟是完全同步的,以及任何实际的时钟差异都是网络延迟的一部分。)
在slot的末端,所有验证者都已经收到一些证明集了。如果出现了攻击(例如,有k≥1的恶意证明者在slotN做证明),验证者将很可能在每个区块的得分上有分歧。但是,他们分歧的范围将不会超过k。假设(在不丧失一般性的情况下)有两个竞争区块,A和B,如果score(A)?score(B)≥0,则A"胜出",反之则B胜出。score(A)?score(B)的分歧范围的上限是2k(即每个验证者给出?score(A)?score(B)值都将在的范围内,z是个固定值)。
设Wp为提议者的权重(即Wp=上文论述的W/4)。如果提议者是诚实的,他们肯定会遵循以下两种行为:
1.如果他们看到score(A)?score(B)≥0,他们将提议A区块,否则提议B。
2.他们将马上提议他们的区块,以保证所有的证明者都在期限前看到。
设为score(A)?score(B)分歧的区间。我们区分三种情况:
z<?2k?2k≤z<0z≥0在情况(1),提议者将给B投票,这样证明者将看到在内调整过的得分;这里整个区间都是负数,因此对B有充分的共识。
在情况(3),提议者将投票给A,这样证明者将看到在内调整过的得分;这里整个区间都是正数;因此对A有充分的共识。
在情况(2),很大程度由提议者决定。取决于提议者的意见落在区间的哪个位置,提议者不是选择A就是B。因此,区间要么是(i),要么是(ii)。
如果是Wp≥2k的情况,请注意从情况(2)的定义?2k≤z<0来看,当(2.i)z<0且2k?Wp≤0,即?z+2k?Wp的上限是负数,也就是整个区间都是负的。当(2.ii)?z>?2k且Wp≥2k,即z+Wp>0,即整个区间都是正的。因此,充分共识是在A还是B取决于提议者的选择。
现在,让我们回到Wp=W/4的论述中。为了避免提议者起同步瓶颈的作用,上述推理中Wp≥2k的前提必须被打破;因此,必须有超过W/4的证明者在每个slot投票。
如果在任何单个slot中提议者起到了同步瓶颈的作用,所有诚实的证明者都将往该方向投票,使score(A)?score(B)的值与0偏差增大。为了避免其中一方在这个点上胜出,攻击者必须在该slot展示足够多的投票以与所有的诚实验证者抗衡(减去1/4来抵消提议者在slot末端投票的效用);这需要远超过W/4的证明。
因此,要维持一段时间的失活需要至少在每个slot上有W/4的恶意验证者,或?≥1/4的验证者是不诚实的。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。