以太坊明年就要完成难度炸弹了,这意味着会彻底实施权益证明,不过目前在共识算法细节上仍然在进行讨论研究。
在11月19日,Vitalik在研究者论坛里提到了一个建议,是关于Casper?FFG的,其主要内容我们节选如下:
在CasperFFG保证安全性和活性不变的情况下,允许增加连续epoch之间验证区间来适应延迟。例如,如果epoch100、101未能证明是正确的,则链可以尝试证明epoch102、104、108的合理性,增加了验证区间,这样两个连续尝试的epoch仍然可以成功验证,以便在多个epoch延迟的情况下也可以为我们提供最终结果。
这个调整是需要对Casper?FFG的共识算法中的验证部分进行修改的。目前还未见讨论成果。为了弄明白为什么提及这个部分的设计,我们尝试用下文理解Vitalik这次的建议。
CasperFFG和CasperFFGCBC是以太坊对权益证明的共识算法研究的两个思路,其对拜占庭容错等算法进行了修订和再研,因此是核心算法问题,应该说这是以太坊最明确的未来以及最核心的技术讨论,其主要的思路是在解决共识算法中的确认问题。
Vlad最早开始设计机制时,特别是希望Casper可以更强健地抵制寡头形成,并且抛弃掉一些其他算法的问题,比如传统拜占庭容错理论,在彻底改造BFT理论后,则出现了CorrectbyConstruction的方法,即CBC。
而因为CBC对于算法中的验证的设定更复杂,在CBC里定义了一系列规则来确定什么时候区块会敲定确认,并证实关键的“安全性”和“合理活性。
不过以太坊最终把罚没条件从4条简化为2条,就得到了CasperFFG,它被设计为可以覆盖在任何PoW或PoS或其它类型的区块上,用于增加确定性保证。
2017年12月31日CasperFFG在以太坊的Python测试网上测试,不过后来进展缓慢。
2018年6月,以太坊做了一个决定:彻底放弃“用合约实现混合CasperFFG”,追求完全Casper独立链,改变这个设计让整合分片变得更加容易,也就是会直接在2.0上应用。
不过CasperFFG都要求,在每一个“轮次epoch”有完整的验证者集来投票敲定区块,意味着每秒钟都会有数以千计的签名要通过网络发送。即使有BLS签名聚合方案,在几秒内完成“100个确认”安全性也是很难的。
其需要拥有一个强大的链上随机数源来公正地选出提议者,不过链上随机性也是难以实现的,所以最终使用了可验证延迟函数进行了验证计算,消除了提前操纵的可能。
此时,Vitalik还将CasperFFG的实现确定性的时间从2.5个轮次减少到理论上最优的2个轮次。
尽管有可验证延迟函数的进展,但网络延迟的假设还是必要的,这是有效发现攻击的需求,也就因此会出现延长epoch验证区间的思路。
期待在权益证明正式上线时的CasperFFG和CBC。
来源:金色财经
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。