跟随Nervos 的脚步,探究Casper前世今生
Casper 最早从2014年出现,并不能算是一个新的项目,所以幸运的在网上能找到很多有关于它的文章。虽然有关的信息非常多,但仍然有很多人对它不了解。为了让大家了解Nervos与很多项目之间的差异,我们今天探一探Nervos创始人早前参与的Casper算法是什么样的?
Casper的定义
Casper 实质是以太坊的 PoS 权益证明实现的工作流。
今天会介绍 Casper 的各种指导性设计原则,它与其它竞争替代方案的差异,以及Casper背后的特点。
首先,Casper保持着非常开放和相互协作的文化,它有以太坊研究人员,开发人员和社区成员共同维护。
Casper 并不是一个具体的实现,它是实际上由以太坊团队正在积极研究的两个主要项目组成。一个非正式地解释是,“Vitalik's Casper” 又称 Casper FFG,还有一个是 “Vlad's Casper”,又名Casper CBC(友善的小精灵)。虽然他们是独立的实现,但他们有着一样的目标:将以太坊的工作量证明转到 PoS 权益证明。
友好的终结工具 Casper(简称“FFG”) - 又名“Vitalik's Casper” - 是一种混合 PoW /PoS 的共识机制,它是以太坊首个通向 PoS 权益证明的候选方法。更具体地说,FFG 在工作量证明(如以太的 ethash PoW 链)的基础上,实施了权益证明。简单地说,块链将用熟悉的 ethashPoW 算法增加区块,但是每50个块有一个 PoS “检查点”,通过网络验证人来评估区块的最终有效性。
而友善的小精灵Casper(其名字源于上世纪90年代的一部电影《鬼马小精灵》) :使用正确的建设(简称“CBC”)- 又称“Vlad's Casper” - 与传统共识协议设计的方式不同:
(1)协议在开始阶段是部分节点是确定的
(2)其余部分协议以证明能够满足所需/必需属性的方式(通常协议被完全定义,然后被测试以满足所述属性)。在这种情况下,得出完整协议的一种方法是实现所预计的安全性,或者提出合理估计的错误的例外,或列举潜在的未来错误估计。更具体地说,“CBC”的工作侧重于协议的设计,使协议适合扩展单个节点对安全性估计的局限视角,以实现共识安全性。
退后一步解释,FFG更侧重于通过多步骤过渡为以太网络引入 PoS。通过准备的迭代实现,增加 PoS在网络中的作用。(PoS 将从较小部分的奖励开始)。相比之下,友善的小精灵Casper着重于通过第一个原则“通过使用正确的建设”得出安全证明的正式方法。尽管令人困惑,解决这个问题的不同方法创造了两个不同的工程。Casper 的最终形式可能来自对 FFG 和 CBC 的互相学习。
Casper与PoS、PoW相比较
权益证明(PoS)是公链的一种共识算法,其实依赖于验证人在区块链全网中的经济利益,利益的大小取决于验证人在全网内存有的代币的数量及代币持有的时间。
而基于工作量证明(PoW)的公链(典型的以比特币为主)中,通过对解答加密算数题的参与者进行工作奖励,来验证交易并创建新的块(即挖矿原理)。而在基于 PoS 共识的公共区块(如以太坊即将推出的 Casper )中,验证人轮流提议新产生的区块并对下一个区块投票,每个验证人的投票权重取决于其持币量的大小(即股权)。验证人对于区块链网络提供服务是有奖励的,而且这种奖励也实现了对攻击者的的经济制约。
但随着区块链生态逐渐复杂,这两者共识算法都各有利弊。
PoS 的明确优点是为全网运行提供安全、降低集权风险和提高能源效率。PoW 工作量证明受到所承受多少电力成本和硬件折旧的限制,因此PoW具有一个动态调整(通过10分钟出块的目标)的隐性成本。虽然 PoS 与PoW相比,其主要优点之一是可以灵活地明确地设计对拜占庭行为(即不遵循协议)进行的惩罚。这使得协议设计者能够对网络中各种行为的不对称风险和收益回报情况进行更多的控制。安全性的另一个方面是对软件和网络精密性进行破坏的成本,因此PoS与PoW相比,具有明确惩罚的能力,可以增加网络的经济安全性。
Vitalik 认为,PoS 具有更好的恢复属性。在 PoW 中,存在一个可以使区块链不可用的“51%算力攻击问题。在 PoS 中,网络可以处罚没收攻击者的股权,防止重放攻击。经济分析进一步澄清了这一概念。重放攻击的边际成本与 PoS 的第一轮相同。而在 PoW 中,51%攻击期间另一轮的主要边际成本是电力成本(重放攻击引起的的硬件折旧和物理空间成本增加很小)。简明如 Vlad Zamfir所说,在PoS 中重复的 51%的攻击成本就好像每一轮都要“你的 ASIC 矿场烧毁”一样。
为了减少算力集中化,也为了达成共识,PoS 权益证明减轻了规模经济的影响。在 PoW 工作量证明中,我们已经看到,为保护网络安全,相对集中的矿池(例如 AntPool)比规模小的更受到信任。大矿池可以通过(1)在较大的运营中摊销固定成本,(2)通过运营较大的实体来提高议价能力,来降低其技术和运营基础设施(如数据中心成本,电力成本,人员成本)的单位成本。
这意味着两个成本相同的矿池,取得的算力会不一样,一个能实现更高的算力,并在网络上有更大的影响,即钱能生钱,例如,10,000名矿工单独挖矿,每个矿工花费1美元/分钟(8,860万美元/年)的成本,比一个同样花费10,000美元/分钟(尽管也花费了8760万美元/年)的矿池的算力要低得多。(进一步说明:量化 PoW 挖矿中心化的好处将是令人着迷的,即它是1bps ,1%还是算力以投资每美元比率的倍数?)
然而,在 POS 权益证明的情况下,一美元就是一美元。这样的好处是,你不能通过汇集在一起,使得一美元值得更多。您也不能开发或购买专用集成电路(ASIC),从而在技术上占有优势。所以,PoS不同于 PoW 挖矿收入的累计分配方式,采用了比例分配。(未来,有可能会实现以成熟的去中心化的声誉及身份管理服务成为按比例分配收益的基础)。
Casper实质作用
1)Casper 将开启分片.
以太坊有很多的目标,但其中之一就是在技术和环境方面提供可扩展的区块链解决方案。以太坊正在构建一个世界,在这个世界里数字货币在全球经济中将拥有更大的空间,数量级上将有很大增长。在这个愿景中,Casper 旨在防止 PoW 挖矿浪费能源,但是我们仍然需要在技术上扩展 Ethereum。这个项目一大部分涵盖在了分片技术中。
如今,网络中的每个节点做了所有事情。分片探索了各种办法来减少每个节点所担负的责任。这些细节超出了这篇文章的范畴,但是一个例子可能提出一个问题“有没有一种办法创建一种新机制,只用很小的节点组来验证每一个交易?
2)明确共识机制,被推崇一致性的区块链所青睐
总的来说,明确的共识对交易清算不是那么重要,对区块链的扩展性和安全性更重要。因为共识机制是每个区块公链的核心。
若需获取更多有关Casper的文章,可看Ethereum Casper 101
但在学习Casper的过程中,对比Nervos,我发现,Nervos采用了混合的共识算法协议,这与以太坊casper相比,做了更多的优化。Nervos企图用节点分类的方式及改变状态存储的方式,加快计算共识的过程,具体内容,我们会陆续呈现。
最后,我们希望Nervos社区的伙伴们能够秉承开源的心态,成员之间相互协作的精神,共同推进社区发展,在社区发展同时,社区内我们每一个成员在天天学习,天天向上。