木星链 木星链
Ctrl+D收藏木星链
首页 > LTC > 正文

SPE:Vitalik :Casper FFG 与 Casper CBC 的瑜亮情结

作者:

时间:1900/1/1 0:00:00

编者注:本文为TaipeiEthereumMeetup社区成员邱骏的译作,译自2018年8月Vitalik介绍Casper发展历程的长推特。一年过去,Eth2.0的分叉选择规则已确定为LMDGhost,而非Vitalik在该长推特中表示偏爱的IMDGhost,但文中提到的Casper的观念演变史,仍足一观。

前言

以太坊针对PoS共识模型的研究最早始于2014年,这些研究后来演变成目前广为人知的?CaspertheFridenlyFinalityGadget?/?CorrectbyConstruction两种共识模型,它们分别由两个不同的团队开发且存有不少差异。Vitalik用一系列推文简述了从2014以来Casper的开发脉络,由于中文社群仍缺乏针对Casper开发路线相关的总结,因此译者特将此系列推文翻译成中文并且补上一些注解,希望可以成为开发者或研究员在学习Casper时的重要文献,并期望读者对Casper设计理念有更直觉的理解。

为了避免读来生硬,建议读者先大略掌握PBFT/CasperFFG/GHOST的重要概念,PBFT的部分可以参考译者的这篇文章:若想搞懂区块链就不能忽视的经典:PBFT。最后要特别感谢以太坊基金会研究员梁智程提供诸多素材与协助校阅。

以下正文开始。

Vitalik:新加坡在加密货币监管方面的善意尝试可能不会奏效:11月21日消息,以太坊创始人 Vitalik Buterin 近日在接受采访时表示,新加坡在加密货币监管方面的善意尝试可能不会奏效,因为新加坡监管机构试图将“区块链使用”和“加密货币”区分开,“如果没有加密货币,那么你拥有的区块链就是假的,没有人会关心这些区块链”。

此外,Vitalik Buterin 表示,监管机构既要支持新技术,又要打击不良参与者,在两者之间取得平衡难度很大,但他也表示新加坡很早就将自己定位为对加密货币友好的司法管辖区,只是最近几个月才开始收紧尽管,监管机构只是试图“阻止加密货币投机”,而不是完全禁止加密货币。(straitstimes.com)[2022/11/21 22:11:32]

简介

我将要用一系列的推文来解释以太坊Casper共识协定的研究历史/脉络/进展,包括FFGvsCBC的争论、混合模型到完全PoS的转换、随机性扮演的角色、共识机制的设计考量以及其他议题。

无利害关系问题与远程攻击

以太坊的权益证明研究始于2014年1月的Slasher协定。虽然Slasher演算法并不是非常理想,但它引入了一些重要观念,特别是利用罚金来解决「无利害关系问题」。然而,我所使用的罚金相当少,单只取消投票奖励。VladZamfir于2014年中加入了,他迅速引入验证者必须押金的方法。押金是比奖励还大的数字,做出错误的行为将会使押金被取走。

我们花了2014下半年的大部分时间试着解决「远程攻击」,攻击者可以将他们的押金从主链提领出来,并且形成另一条具有更多签名的攻击链,如此新加入的节点,让他们以为攻击链是一条主链。如果攻击链与主链分叉的时间点距离当前相当近,攻击链不会造成问题,因为验证者若在两条链上同时对两个互相抵触的讯息签名,则这个签名可以当成惩罚验证者的证据来没收押金;但是若分叉发生在很久之前,攻击者可以取出押金以避免被没收。

曾批评DeFi的CFTC专员Dan Berkovitz将于下月离职:金色财经报道,美国商品期货委员会(CFTC)专员Dan Berkovitz周四表示,他将于下个月离职。此前,他曾称未经许可的去中心化金融(DeFi)市场在美国可能是非法的。Berkovitz称,根据商品交易法,DeFi衍生品市场(例如期货合约)可能不合法。[2021/9/10 23:13:59]

我们最后得出:远程攻击是无法避免的,原因大致跟PoW拥护者所说的差不多。然而,我们没有接受他们的结论。因为我们发现:我们可以引入两个额外的安全假设来解决远程攻击:1.节点至少每4个月要登入一次;2.节点直接拒绝4个月以上的回溯。

这对PoW拥护者来说是个令人厌恶的肉中刺,因为这感觉是一个「信任假设」:每一次同步区块时,你必须先信任某个来源以取得区块链。但是对我们这些龌龊的主观主义者来说,这不是大问题:不管在哪一种情况,你都需要某个可信来源告诉你区块链所使用的共识规则,所以PoS所需的额外信任并不大。

确立了押金及罚金的使用后,我们接下来要决定它们「是什么」。我们知道我们希望的是「经济敲定性」,验证者将会基于以下方式对区块签名:一旦一个区块被敲定,如果要敲定一个冲突的区块,则必须要有大部分的验证者签出与自己先前讯息冲突的讯息。但对于这样的讯息,可以被链侦测并惩罚。

我写了一篇又臭又长又离题的「注共识」文章。注共识是一个有趣的提案:验证者下注哪一个区块会被敲定,而注决定了哪一个链会形成共识。PoW也具有这样的性质,因为挖矿是一种注。如果你注在对的链上,你会获得奖励;如果你注在错的链上,你失去挖矿成本。但在PoS我们可以有更高的赔率:验证者的赔率一开始很低,但是随着验证者看到彼此对于某个区块的信心逐渐增加,所有人的赔率都会平行地指数上升,直到所有人都注同一个区块,这就是敲定。

Vitalik Buterin:UNI 应成为预言机代币:以太坊创始人 Vitalik Buterin 在 Uniswap 治理论坛发起提案讨论,建议 Uniswap 能够为 ETH/USD 提供预言价格数据,以及提议 UNI 成为预言机代币,而不是像其它预言机一样使用 ETH/USDC 喂价。

Vitalik Buterin 解释称,算法稳定币需要针对链下法定货币提供资产喂价,而非链上美元稳定币。预言机需要有一个代币来预防女巫攻击(Sybil Attack),这种攻击的成本是代币总市值的一半减去不参与投票的代币价值,而以太坊上市值最高的两个项目代币是 LINK 和 UNI,但 Chainlink 是一个具有许多功能的复杂系统,需要有一个简单的替代方案来对 Chainlink 进行补充,以优化激励措施和最大程度地降低成本。[2021/5/12 21:53:03]

CasperCBC

同时,Vlad开始大量研究机制设计,特别是让Casper更能抵抗寡占。我们也开始研究受到古典拜占庭容错启发的共识,例如Tendermint。Vlad认为古典BFT并没有说服力,他想透过一个他称为「正确建构」的方法尝试重新发明BFT。

正确建构的哲学与传统BFT相当不同的点在于「敲定」是完全主观的。CBC的哲学是,验证节点对讯息签名,且若他们签了与他们先前的讯息相抵触的讯息,则他们必须提交一个「辩护」以证明他们投票的新讯息与旧讯息相比之下有较多的支持,以取得「转换」的权利。

为了侦测敲定性,节点寻求讯息的模式。这些讯息可以证明,多数验证节点以一种方式可靠地对某区块B投票,且偏离B必须大部分验证者非法转换投票。例如,若所有节点投给B,则所有节点都投给「包含所有人对B的投票的区块」,这证明了他们支持B且知道其他所有人都支持B,因此他们不会有转换的合法理由。

Vitalik发起EIP-3298提案 gas费回归正常:2月28日消息,Vitalik在昨天发起EIP 3298提案,提案内容为在伦敦升级中移除“执行SELFDESTRUCT获得gas费减少奖励”的规则。

据悉,以太坊网络的gas费受以太坊状态(节点存储的合约和地址信息集合)大小的影响,以太坊状态越膨胀,全网gas就会相应上涨。而“SELFDESTRUCT(自毁)”是虚拟机级别的操作码,通过执行该操作码销毁合约,以太坊虚拟机会向用户退回一部分gas费,从而激励以太坊状态收缩。但是一部分开发者在gas费较低时将gas存储到合约中,在gas费较高时执行“SELFDESTRUCT”来进行套利,这种事先填充“便宜的gas”的行为其实导致了网络膨胀。Vitalik发起该提案后,以太坊gas已经回到几十Gwei水平。[2021/2/28 18:00:26]

最后我放弃了注共识,因为这个方法似乎有根本上的风险。我也回头试着理解PBFT是怎么运作的。虽然这花了一点时间,但过了几个月后我搞懂了。

CasperFFG

我试着简化了PBFT,将其放入区块链的脉络,并把它描述为4个「砍押金条件」,这些规则阐述哪些讯息的组合是自我抵触因此违反规则的。我定义了决定区块是否敲定的规则并且证明了最关键的「安全性」与「可行活跃性」:1.若某区块被敲定了,则无法在不少于1/3验证者违反砍押金条件下敲定另一个抵触的区块;2.若某区块被敲定了,2/3诚实的验证者总是可以合作以敲定新的区块。因此只要有2/3诚实的验证者,演算法就不会推翻之前的决定或卡住。最后我将砍押金条件从4条简化成2条,并发展成CasperFFG——被设计成为任何PoW/PoS/其他类型区块链提供敲定性的覆盖层。

动态 | EOS今日Activity指数为4380万 排名第一:据IMEOS报道,根据blocktivity.info的数据显示,截止北京时间18年12月03日11点00分 ,区块链活跃度指数排名前五名分别为:EOS,WAX,BitShares,Steem,Kin。其中EOS的Activity指数为43,808,494,排名第1。Activity指数为最近24小时内在区块链上执行的操作数量。[2018/12/3]

敲定性是一个非常重要的进展:一旦区块被敲定,无论网络怎么延迟都能保证安全,而且回溯区块需要超过1/3验证者作弊,且可被检测出来且并销毁押金。因此,回溯敲定性的成本可能会高达数亿美元。透过不同的方式,CasperCBC以及FFG都达到了这个特性。

要注意的是:CasperCBC和FFG都是抽象的覆盖层,他们都需要建立在某个现有的分叉选择规则之上。用大白话讲,CasperCBC是敲定覆盖层适应分叉选择规则;而CasperFFG是分叉选择规则适应敲定覆盖层。

FFGvsCBC

Vlad最初对分叉选择规则的偏好是「最新讯息驱动GHOST」——一种针对PoS的改版GHOST;而我最初的偏好是先采取「混合式PoS」,使用PoW作为基底的分叉选择规则。

在最初版的FFG当中,PoW将会逐个区块地运作一条链,而PoS将会紧随在后敲定区块;CasperCBC从一开始就是完整的PoS。同时,Vlad跟我各自提出了共识诱因的理论。

这里有一个非常重要的区别是「唯一可归责错误」——你可以知道出错时谁应该负责而被惩罚,以及「非唯一可归责错误」——一个错误可能是多方中的一方造成的。一个非唯一可归责错误的经典案例是离线vs屏蔽,也称为「言者-听者错误等效性」。

惩罚唯一可归责错误是容易的;惩罚非唯一可归责错误则是困难的。如果你无法分辨区块停止敲定是因为少数的节点离线或是因为多数的节点正在屏蔽少数会怎么样?针对这个议题目前有三种解法:1.轻微地惩罚两边;2.严厉地惩罚两边;3.将链一分为二,各自惩罚两条链的其中一边,且让市场决定哪条链较有价值。或者可以参考我写的这篇。

2017年11月,我把CasperFFG砍押金条件以及对由于「平方溢金」导致的1/3节点离线的问题的解法写成论文。

当然,我非常清楚诉诸社交层面来解决51%攻击并不是很好,因此我开始寻求至少能让链上节点能自动侦测「合法链」与「攻击链」的方法。这是一个早期的想法。这想法还不错,但是仍不是最理想的,除非网络毫无延迟,否则它只能保证节点之间嫌疑分数差异的上限,而并非所有节点完全同意。

同时,我对Vlad的模型的主要批判与「泄气攻击」有关,攻击者可以有效威胁要制造51%攻击来造成所有人损失金钱,因而驱使所有其他人退出,因此只用极低的成本便能主导链。Vlad开始建立经济模型以评估在他的模型之下进行上述攻击的实际成本。

值得一提的是,上述所有的议题并非为PoS独有。事实上在PoW中,人们倾向直接放弃且假设预防51%攻击几乎不可能,且51%攻击是必须不计代价避免的末日。但是,如同以太坊的传统,Vlad与我误把「有野心的」这个词当成赞美,而继续研究减缓以及恢复51%攻击的不同方法。

2018年初,Vlad在CBC的研究开始快速推进,包括安全性证明的进展。—看这个史诗般的2小时简报以跟上2018年3月为止的研究进度同时,CasperFFG也有了重大进展,以合约的方式实现的决定使开发工作变得容易。2017年12月31日,我们发布了Python版的测试网。

Casper与分片开发路线的整合

不幸的是,FFG的开发慢了下来。以合约实现FFG虽然把一些事情变得更容易,却让未来要从EVM转到EWASM以及从单链Casper转到分片Casper的工作变得更困难。此外,团队的研发工作被分成「主链Casper」和「分片链Casper」,可想而知在这两个团队之间产生了大量不必要的重复工作。

2018年6月,我们做了一个重大的决定:放弃以合约实现的CasperFFG,取而代之的是追求以一条独立链运作的Casper,如此的设计将使分片变得更加容易。

完全PoS的转换导致我开始更认真思考PoS的分叉选择规则。CasperFFG与CBC都需要全部的验证节点在每个「时期」投票以敲定区块,这代表每秒将会数以万计的签章传向每个验证节点。BLS签名聚合使其在计算成本上是可行的。但是我想试着利用这些额外的签名以让链更加稳固,在几秒内取得等同于「100个确认」的安全性。这里是我初步的想法。

然而,所有这些分叉选择的方法都有一个缺点:它们都将验证节点分为「见证节点」与「出块节点」,而这些负责产生区块的出块节点拥有过大的权力。这样做不太好,主要是因为它需要我们有一个很安全的链上随机数生成器以公平地挑选出块节点,而链上随机数生成器很困难,而且一些简单的方法例如RANDAO似乎有愈来愈多问题。JustinDrake跟我开始解决这个问题:Justin使用VDF,这是一个输出具有确定性与可验证的函数,但需要大量不可平行化处理的序列时间进行运算,使提前窜改变得不可能;而我对Vlad教妥协,使用基于GHOST的分叉选择规则以大幅减少对出块节点的依赖,允许在恶意出块节点大于90%且诚实见证节点大于50%的状况下,链仍能不受干扰地成长。Vlad很开心,但还没开心到极点:他偏好LMDGHOST,而我偏好IMDGHOST。

大约同一时间,我也试着想出一个方法来「流水线化」CasperFFG,将敲定时间从2.5个时期减至理论上最佳的2个时期。我对RPJ分叉选择规则能够很好地相容于FFG这件事感到开心。它还有一个很重要的「稳定性」:分叉选择是一个对未来分叉选择的好预测。这看起来很明显,但我们却很容易做出不具有这种特性的分叉规则。最近的进展是:LMDGHOST可能由于技术细节只能在2回合中有25%容错,但是IMDGHOST仍可以有完整的33%容错。

FFG与CBC之间主要的取舍是:CBC似乎有较好的理论性质;而FFG似乎比较容易实现。同时,VDF也取得了许多进展。

还有,我最近决定研究LeslieLamport1982年的老论文,在这边论文中他提出了一个共识演算法:若假设所有节点,包括观察者,皆在线上且具有很低的网络延迟,则具有99%容错。网络延迟的假设按理来说会使其不适合作为主要的共识算法。然而,它可以在某一个情境运作相当良好:作为51%屏蔽侦测的嫌疑分数替代方案:基本上,如果51%共谋团体开始屏蔽区块,其他验证节点以及一般节点可以侦测到屏蔽的发生,并且使用99%容错的共识演算法来达成屏蔽正在发生的共识,并协调少数分叉。关于这个研究的长期目标就是要尽可能减少对社交层的依赖,并将破坏链稳定的成本最大化,使其利用社交层回溯的可能性最小化。

还有什么?FFG的部分还有形式化证明,规格的完善,以及实现的持续进展,并着眼于安全及迅速的开发。CBC的部分也差不多。接下来让我们勇往直前吧!

原文链接:

https://medium.com/taipei-ethereum-meetup/history-and-state-of-ethereums-casper-research-85e8fba26002

作者:?JuinChiu

本文首发于TaipeiEthereumMeetup的Medium站,EthFans经授权转载,为符合大陆读者的习惯,进行了简繁转换并将部分术语改为习惯用法。

标签:SPECasperCASASPEsperscasper币最新消息DividendCashASPO币

LTC热门资讯
区块链:巴比特专栏 | Facebook都认真发币了,银行区块链到底用的怎么样?

2019年6月18日,Facebook发布消息称计划发行一种名为“Libra”的稳定币,通过Libra为全球超过十亿人提供普惠金融服务,Libra让已经略感平静的区块链湖面顿时活跃.

1900/1/1 0:00:00
BTC:行情分析:尚未见到惶恐情绪,止跌还需时日

一个发行“硬通货”的国家,如果出现贸易顺差,那才是见鬼了。这个逻辑我国的专家不清楚正常,美国人会不清楚?人家要得根本不是缩小贸易差,而是阻击你的发展速度,这场较量还在持续,资本市场的动荡将会持续.

1900/1/1 0:00:00
区块链:自汉堡王后,普华永道卢森堡公司接受比特币支付

据Cryptolate报道,普华永道卢森堡分公司9月2日在新闻稿中宣布,从2019年10月1日起,将接受客户的比特币支付,进一步进军区块链和加密资产领域.

1900/1/1 0:00:00
BTC:行情分析:BTC重回5天线之上,反弹即将开启?

有三大负面供给冲击可能会在2020年引发一场全球性衰退,而所有这些冲击都反映了一些影响国际关系的因素,第一个潜在冲击源自中美之间的贸易摩擦;第二个则是美中在科技方面缓慢酝酿的冷战.

1900/1/1 0:00:00
加密货币:观点 | 加密货币“延迟”军备竞赛损害市场流动性,将演变为延迟套利

MaxBoonen是加密贸易公司B2C2的创始人兼首席执行官。这篇文章是在加密货币市场发展的背景下研究高频交易的三篇文章中的第一篇.

1900/1/1 0:00:00
比特币:什么是比特币分叉?通过分叉可以获利吗?

感觉比特币隔三差五就要来个分叉。但什么是分叉呢?我们能从中获利吗?分叉会有风险吗?你通过分叉拿到免费的币了吗?我们一起来聊聊吧.

1900/1/1 0:00:00