LMD 是在 2.0 新加入的分叉原则,和 Ghost 一起构成了 LMD GHOST。LMD 就是指最新的消息。由于在 2.0 中采用 PoS 加入了验证者的角色,最新的消息就是指更多验证者的证明,就是在 Ghost 原则里,再加入更多验证者的证明 (attestation),这就使得最长的链变成权威链(canonical chain),根据 Casper 协议拥有最终确定性。 最终性问题-不会被逆转,解决长程攻击以太坊 2.0 的最终性由 Casper 协议来解决。 PoS 类型的共识有三类:中本聪类型的共识、PBFT 基础的共识(Tendermint,Casper FFG)和以链为基础的共识 (Casper CBC)。但是只有后两种可以达到最终性。 所谓最终性就是当一个区块被确认过以后,就基本不会被逆转。而中本聪类的共识,是依靠概率去「确定」最终性的,就是还可以被小概率事件所推翻。而 PBFT 类或者 CBC 类的最终性,即是 100% 概率的最终性,除非 1/4 (CBC)或者 1/3 (PBFT)以上的验证者站出来去反对,才可以翻转这个结果。 Casper FFG 对 PBFT 进行了改良,继承了 PBFT 的优点,并针对 PBFT 不可抵抗共谋进行了设计,并加入了抽象的共识机制、抗长程攻击、灾难性崩溃等机制的设计,并开始整合分片方案,成为 ETH2.0 phase0 阶段的共识机制。 Phase0 会开始采用一个修改后的 FFG,最终在 Phase2 或以后部分完成 CBC 的转换,CBC 拥有更高的安全性和理论性质,但复杂度和效率较低,实现起来难度大。 分片是 2.0 实现扩展的基本设计为什么要分片?共识协议改变成 PoS 是对扩展性是没有提升的,扩展性依靠的是分片。分片是计算机术语,数据库的分片已经久已存在。分片的难点在于维护安全性,因为一旦分片,每个分片的安全性就要自己维护。 2.0 的主要做法是,通过洗牌 Shuffle,通过伪随机来选择一批验证者,随机给分片链进行投票。如果没有随机,那可能大量的恶意验证者被分配的到一个随机验证委员会,这样通过洗牌,可以确定的是即便有 1/3 恶意攻击者存在的情况下,对分片链的攻击成功概率仍然很低。 除了分片以外,Layer2 一直也是扩展的主要途径。2.0 下 Layer2 仍然必要。目前来看 2.0 下若分片可以顺利实施,则 Layer2 的必要性可能不大。但关键在于分片实现的时间和稳定性。 Vitalik 自己都对以 rollup 为代表的 Layer2 的方案都很积极,分片的实现还需要好几年,目前 Layer2 就可以直接在 1.0 上使用,那扩容在今后几年都需要依靠 Layer2,所以这是非常必要的一个方向。即便 2.0 分片实现,Layer2 变得可能没有那么必须,但仍是可选方案,彼时其相比分片将非常成熟。 (责任编辑:admin) |