洒脱喜一周评丨Facebook研究如何阻止PoS协议长程攻击,Filecoin正式启动测试网
导读:这周的学术主题部分,我们会分享两篇与PoS共识机制安全主题相关的研究论文,一篇是关于Tezos的自私性攻击,另一篇则是Facebook Calibra团队针对PoS协议长程攻击进行的研究。而在硬核技术文章周选部分,我们还会看到新layer 2解决方案ZK Sync、二次方支付方案、零知识证明算法Bulletproofs的内容。
另外,上周Filecoin正式上线了测试网,跨链项目Cosmos则完成第二次主网升级,距离其IBC的发布也越来越近,而市场,也即将迎来新一轮的公链上线潮考验。
(图片来自:pexels.com)
以下是上周内容的精选回顾,enjoy ~
一、学术论文一周主题精选:如何解决PoS协议面临的安全挑战
在上一期 周评 论文部分,我们提到了与工作量证明(PoW)共识机制相关的自私挖矿策略研究,可以说,学术界在这方面的研究已经是非常深入了。
然而,当前越来越多的区块链项目在采用权益证明(PoS)共识机制,而非工作量证明机制(PoW),理由是前者具有更好的可扩展性以及更低的能源成本。
相较于相对成熟的PoW,关于PoS的安全研究当前仍处于早期阶段,实际上,权益证明(PoS)共识协议会带来更复杂的建模挑战,目前关于PoS共识协议,最知名的安全挑战就是长程攻击(long range attack)以及无利害攻击(Nothing at Stake) ,而在本周的学术主题精选部分,我们会分享两篇与PoS协议安全主题相关的研究,其中一篇是关于Tezos的自私激励攻击,而另一篇则是关于如何解决PoS长程攻击问题。
论文1 : 《Tezos 权益证明协议中的自私行为》
Brown Cohen等人在2019年初时提出,在最长链PoS协议模型中,完全的安全是不可能的,他们还预测称,PoS协议当中也会存在自私攻击问题。而来自哈佛大学约翰·保尔森工程和应用科学学院的Michael Neuder等人分析了最近更新的Tezos PoS协议,并证明了在某些条件下,理性的参与者确实会被激励参与非诚实的行为。
论文链接: https://arxiv.org/pdf/1912.02954.pdf
他们将这种自私行为,称之为selfish endorsing(自私背书),这是以前只在理论上考虑过的攻击场景。
2019年10月17日,标签为“Babylon”的更新被纳入了Tezos协议,对此,研究者分析了这次升级的一个重要组成部分:一个名为Emmy+的新共识机制。
Tezos中的PoS机制
Tezos实施了一个可选委托权益证明(DPoS)机制,有时也被称为流动性权益证明(LPoS)机制,以区别于其它的DPoS方案。Tezos共识层的成员被称为代表,其需要持有8000个Tezos帐户单元(这被称为roll),每个代理都有一组相关的roll,活跃的代表参加抽签,在链中的每一个区块高度(bake)烘焙和(endorse)背书一个区块。
而Baker(烘焙者)负责将交易纳入区块,而endorser(背书者)则以密码方式签署他们在每一个高度所看到的“最佳”区块。这种烘焙和背书优先权抽签,是通过随机选择roll,并将下一个可用的优先权给予该roll的所有者来进行的,这种技术被称为follow-the-Satoshi。在链的每个高度,使用随机滚动选择过程创建baker列表,该列表中baker的索引确定了它们在此高度创建区块的优先级。此外,为每个区块高度创建一组endorser(背书者,数量为32),但是没有endorser(背书者)的优先级列表,因此每个endorser(背书者)具有相同的权重。而baker(烘焙者)和endorser(背书者)将根据参与情况获得奖励,从而激励代表们保持积极性。
下面是“Babylon”协议的更新内容:
新的共识协议Emmy+,在三个方面不同于其前身Emmy:
- 一个区块的有效期现在是一个函数,除了baker(烘焙者)的优先权外,它还包括背书的数量。
- 分叉选择规则发生了更改,在这次更新之前,“规范的”分叉是得到最多认可的分叉,也就是最重链规则,而现在的最佳分叉就是从创始区块的最长链,而最长链规则使分叉的评估更容易,并减轻了baker(烘焙者)的不确定性;
- 修改了烘焙区块及背书区块的奖励:之前,烘焙一个区块可以为代表赢得16 XTZ的固定奖励,而现在的区块奖励则是由baker的优先权和前一区块的背书数量e共用决定的。
而背书区块奖励也发生了更改,当前的公式是:
自私背书攻击
研究者给出一个其称之为自私背书的激励攻击例子,它在一定概念内激励一个理性的baker X忽略最长链规则,并比网络的其他部分更快地创建一个单独的两区块分叉。
上图显示了baker X如何使用此攻击方式在slot l 烘焙一个区块,尽管它具有第二优先级(此时,以0优先级烘焙的区块也按时发布)。
由于烘焙优先级和背书权限是公开的,委托者X能够预测并计算何时可执行此攻击。
那这种攻击有多有利可图呢?
根据研究者的分析显示,即使持有40%的XTZ权益,执行此类自私攻击的X,其预计能比诚实参与的年收益仅多出254.94 XTC,因此,这种攻击的影响其实是不大的。
但无论如何,这是一种如何针对一般最长链PoS系统的自私攻击示例。
有意思的是,研究者还针对这类攻击提出了一个简单的修复提议,它可以进一步减少攻击收益(减少至一年0.21 XTZ)。
研究者还提供了一个框架,可用于通过参数化特定协议的时间和回报模型来检查其它PoS系统是否存在自私行为的潜在漏洞。
洒脱喜简评:关于PoS类共识机制的自私行为攻击研究,目前还处于非常早期的阶段,虽然这一研究结果表明相关的攻击影响非常有限,但它也为今后相关方向的研究奠定了一些基础。
论文2:《Winkle:阻止PoS系统中存在的长程攻击》
所谓长程攻击(Long Range Attack),是指攻击者创建了一条起始于创世区块的区块链分支,并试图替换掉当前的合法主链,而该分支链上可能存有和主链不同的交易或区块。如果攻击者能够从同一个创始区块开始创建一个与真实交易链不可区分的替代交易链,则我们认为长程攻击是成功的。
(图:试图进行长程攻击的敌对分叉)
此前,人们已提出了一些解决方案来缓解长程攻击问题,例如定期在客户端软件中包含一个“检查点”的方案,但如果不引入一个(令人讨厌的)中心化方式,这些解决方案就很难进行部署。而假设旧密钥的安全销毁,验证者密钥的轮转交替机制有助于缓解这一问题。
然而,验证者也可能会有动力向攻击者出售他们的旧密钥(在清空相关资产之后),尤其是当验证者的真实身份在一个无许可系统中是未知的时候。而当验证者出现这类理性的非诚实行为之时,整个系统的安全性将面临巨大的风险。
那如何有效地解决这个问题呢?
来自Facebook Calibra的George Danezis教授等人注意到,想要贿赂相当数量的PoS币持有者(即使他们已经没有了系统权益),会是更具挑战性的,因为他们要比验证者要多得多。
这一观察使他们引入了一种称为Winkle的新机制,利用来自客户端的投票创建基于客户端验证的去中心化二级层,以确认检查点(区块链的快照)并防止对PoS协议的长程攻击。
而投票机制非常简单:每个客户端在其签署的交易中包含一个附加字段(先前排序区块的哈希)。
这种方法只依赖于验证者的短期诚实度,以及更多利益相关者的长期诚实度。另外,研究者还提出使用委托方案,并假设了比特币或以太坊类似的使用,Winkle检查点延迟大约是数小时或几天的时间。
论文链接: https://eprint.iacr.org/2019/1440.pdf
这种设计用于增强共识协议,动态改变验证者以抵抗长程攻击。虽然Winkle也可以保护其他系统,但它主要适用于基于拜占庭容错(BFT)共识的区块链,如PBFT、LibraBFT、Tendermint、HotStuff或者SBFT。
最后,研究者还提出了关于Winkle的一个关键缺点:其假设有一个诚实的帐户投票给最新的检查点。然而,这会在区块之间创建一个边界竞争条件,这对于冷钱包而言意味着是挑战。
洒脱喜简评:Facebook Calibra团队研究PoS协议的安全问题,大概率是为其Libra项目在将来转向PoS而进行的(注:Libra的长期目标是成为非许可网络,而其最初的设计是联盟链),而长程攻击问题显然是 Libra 最迫切要解决的安全问题,目前来看, Facebook 提出的解决方案依旧是存在缺陷的,这需要进一步的研究与探索。
二、硬核技术文章一周精选
2、1 数百万用户进入加密货币世界的桥梁:一文读懂以太坊扩容方案ZK Sync
由Matter Labs提出的新layer 2解决方案,其建立在ZK Rollup的概念上,旨在为以太坊带来每秒数千笔交易的吞吐量,同时保证资金与layer 1账户一样安全。文章链接:https://www.8btc.com/article/528151
据作者表示,Zinc v0.1将于2020年1月发布。
洒脱喜简评:ZK Sync绝对是近期被讨论最多的以太坊layer 2解决方案,在以太坊完成伊斯坦布尔升级之后,这种layer 2解决方案可使以太坊的tps扩展到2000+,就连比特币开发者Greg Maxwell也对该方案发表了评论,其表示自己在2013年也曾提出过类似的想法(CoinWitness),这也引发了一番有意思的争论;
2、2 Vitalik最新思考:二次方支付将带来怎样的颠覆效应
以太坊联合创始人Vitalik Buterin在这篇文章中介绍了二次方投票( Quadratic voting)及二次方支付(Quadratic Payment)的概念及应用,这种新的方法有可能颠覆许多大大小小的公共决策。文章链接:https://www.8btc.com/article/528030
洒脱喜简评:这篇文章描述了一个投票/支付系统,根据你对目标的重视程度,你可以进行多次投票,但每次新的投票成本都会比之前的投票要高,表面上看,这似乎可以降低富者与穷人之间影响力的差距,但正如文章中指出的,身份管理以及合谋问题是系统面临最大的问题。
2、3 理解零知识证明算法之Bulletproofs:Range Proof ( I & II )
在这个系列当中,零知识证明研究者江小白介绍了Bulletproofs在Range proof上的应用,以及介绍了一个优化过程,将CC降低到O(log(n)级。文章链接1:https://www.8btc.com/media/530155
文章链接2: https://www.8btc.com/media/532874
洒脱喜简评:防弹证明(Bulletproofs)算法的应用已越来越多,其具有较小证明大小以及无需可信设置的优点,缺点在于验证高度复杂的交易时会非常耗时,因此它更适合中低复杂度的交易。
三、主流区块链项目技术进展:
3、1 闪电网络新技术进展
上周关于比特币的技术进展,主要是来自闪电网络方面的,首先,LND迎来了新的维护更新版本LND 0.8.2-beta RC2,这个候选版本包含了几个错误修复以及小的UX改进,特别是对于静态通道备份的恢复。其次是关于C-Lightning以及LND的一些改进。链接:https://bitcoinops.org/en/newsletters/2019/12/11/
洒脱喜简评:闪电网络作为比特币的扩展层,其在过去一年中的发展是非常迅速的(包括用户体验、LAPP以及安全性),随着主流交易所开始逐渐支持这种解决方案,以及相关技术变得越来越成熟,闪电网络的使用量预计将迎来新的增长。
3、2 Filecoin上线测试网,首次公布硬件标准
备受关注的区块链项目Filecoin在上周启动了测试网,而根据官网公布的Q4路线图显示,在经历测试网的两个阶段之后,Filecoin主网预计将在2020年3月-4月正式上线。链接:https://www.8btc.com/article/529640
洒脱喜简评:经历数次的跳票之后,Filecoin终于进入了测试网阶段,此前太多借其影响力的矿机骗局消耗了 Filecoin和IPFS的声誉,而其正式上线时间,和诸多重量级公链是重合的,市场在同一时期迎来诸多大体量项目,情况似乎并不乐观。
3、3 跨链项目Cosmos完成第二次主网升级
Cosmos 主网于北京时间 2019年12月12日成功升级至Cosmos Hub 3。升级后的Cosmos Hub 3添加了参数更改提案、模块重构、供应模块、高度查询,并包含事件重构和其他遗留的技术更新。链接:https://www.8btc.com/media/530042
洒脱喜简评:这次更新,使得开发者可以更便捷地创建出基于Cosmos SDK的应用,但显然,IBC的开发进度还是慢了一些(原计划是11月发布),目前看今年Cosmos的IBC已经很难落地,同样的,其竞争对手Polkadot的主网上线也会延迟,谁会抢先一步上线呢,这会是明年上半年的一大看点。
本周的精彩内容就到这里啦,下周再见~