拜占庭容错(BFT)问题描述了一个分布式计算系统,其中在给定有关不同不可靠组件状态的不完全信息的情况下,所有组件都应能够就策略达成一致。假设您已经了解诸如DoS攻击之类的基础知识,下文中讲述了Casper FFG的相关特点,作为我们将分析的BFT问题的一种解决方案。我们将在评估现有BFT解决方案的系列文章中介绍该方案在异步网络中的安全性。
部分同步网络的安全性分析
部分同步网络可以分成两类:类型I不允许拒绝服务(DoS)攻击,类型II允许在全局稳定时间(GST)之前进行。
在II型网络中允许DoS攻击,因此P2P通信通道和广播通道不可靠。下面我们将讨论的是,如果这两者都不可靠,那么建议的解决方案将在GST之前“锁死”,并且到GST之后也无法消除。还有一种攻击中攻击者只需要控制1名参与者,而不是标准n-1 / 3参与者。如果能够证明这些,那么我们可以证明BFT协议在类型 II部分同步网络中并不安全。
如果能证明无需DoS即可导致“锁死”,那么足以说明类型I网络具有相似的结果。在这些协议中,如果参与者在固定时间段内未收到适当的消息,则它将启动“视图更改”流程,在此之后,之前的“视图”中的消息都无法被接受。因此,类型II网络中的攻击也将在类型I网络中起作用。
Casper FFG
Casper FFG(Casperthe Friendly Finality Gadget)是区块提议机制之上的一层。在Casper FFG中,参与者验证并确定在某种机制下提议产出的块。所有验证者都经过加权,但是为了简化此处的讨论,我们假设验证者的权重都相同。
Casper FFG在检查点树上为区块树中特定高度的块工作,每个验证者广播一个签名表决,该表决在区块树中定义两个检查点s和t(其中s是t的祖先)。这一点很重要,因为如果给定对有至少⅔票,那么我们就有一个“超级多数链接”。
如果我们