起底 PoS 共识的前世今生,展望 Staking Economy 新时代

起底 PoS 共识的前世今生,展望 Staking Economy 新时代

作者:卡咩

一、PoW + PoS

一个名为 QuantumMechanic 的人,2011 年 7 月 11 日在 Bitcointalk 论坛首次提出的 Proof of Stake,当时还没有 PoS 的简称,是对 Proof of Work 提出来的。文章预见性的提出了很多现在仍在使用的方案,诸如由持币量代替算力权重,委托权益,奖励分配等等,还有一些词汇像 Delegate、Vote、Voting Power 等,在 2018 年的今天我们仍然能看得到:

起底 PoS 共识的前世今生,展望 Staking Economy 新时代

那时候,人们对于 PoS 的提出都感到非常的兴奋,这种兴奋一直持续到今天,很多后起的项目都开始研究 PoS 算法的区块链,甚至很多已有的项目都开始考虑转型 PoS,以太坊就是最典型的例子。从提出到落地,大概经历了 1 年左右的发展,2012 年 8 月 19 日,首个基于 PoS 共识的区块链项目点点币(Peercoin)诞生,Token 代号 PPC。点点币的出现真正代表了 PoS 从纸面走向了工程实现的里程碑。

点点币是一种类似 BTC 的电子货币,SunnyKing (点点币创始人)在最初设计的时候,可能因为时间过短,没有想清楚如何解决 PoS 机制下出现的问题,也可能是 PoW 共识在人们的思维方式里面占据着主要地位,点点币的共识实际上是基于 PoW + PoS 的混合共识,而不是纯 PoS (Pure PoS)的共识,混合共识里面保留继承了大量 PoW 的设计,PoS 算法在其中所起到的作用实际上并没有想象着那么大。但毕竟是第一个将 PoS 共识工程化到区块链中的项目,在点点币的白皮书里面,我们可以看到很多新的概念,币龄(Coinage),随机数参数(prev_blocks_data),PoS 的 checkpoint 等等。

混合 PoW + PoS 共识是 PoW 过渡到 PoS 的一种过渡阶段。在 2009 ~ 2014 年期间,比特币的 PoW 还是具有较高的权威性,大部分人对 PoW 的印象里面,除了浪费资源和效率稍低一点之外,并没有太大的致命性问题,而且很多基于比特币的二代 PoW,像莱特币,仅仅因为缩小了区块时间而备受推崇。可以说点点币的设计还是站在了比特币 PoW 的肩膀上的,并继承了很多好的策略,像激励措施,分叉保护,共识实现,分发策略等等。但是由于 PoS 共识的实践过程过短,PoS 在点点币的实现中以探索的成分居多,所以说这种混合共识其实算是一种过渡方式。

二、纯 PoS

PoS 在不断发展,继点点币横空出世之后,纯 PoS 共识成为了人们重点的研究方向。在点点币发布后一年左右的时间,2013 年 9 月 28 日,一个账号名为 BCNext 的人在 Bitcointalk 上宣布启动 Nxt 项目的众筹(那时叫众筹 Fundraise,还不叫 ICO)。

Nxt 是一个 100% PoS 的项目,没有 PoW 共识同时存在。Nxt 的亮点在于没有和其他的山寨币(altcoin)一样,简单复制比特币代码,然后改变哈希机理,缩短区块之间的时间、或是改变启动难度,而是基于自己全新编写的算法的区块链。强调 100% 的 PoS 挖矿,没有预挖。PoS 里面要求的股权(Stake)也完全由捐赠来决定总量和分配,用捐赠的方式把 PoW 的分发直接分配了。

众筹持续了 21 天,有 73 个用户参加,总共捐赠了 21 个 BTC,一起瓜分 10 个亿 Nxt,2013 年 11 月 24 日,Nxt 发布主网,预示着首个 100% 基于 PoS 共识的创世区块在 Nxt 上诞生。

Nxt 的发展并不顺利,论坛对 Nxt 记录历史停留在了 2014 年 5 月 12。Nxt 的没落归结于太过于中心化的开发,代码质量和速度一直跟不上,只有 3 个开发者并不能完成众多投资者的预期,虽然主网功能的开发顺序有社区投票,但是 Nxt 还是慢慢的走向了众多投资者的诟病,市值在 2014 年 6 月 5 日达到 8 千万美元市值的高峰后,留下一地鸡毛。但无论怎么说,和当初众筹的 21 个 BTC 比较起来,简直是一个天上一个地下,对比同时期起来项目,真可谓是老来迎新春。再看同时期的点点币和黑币,它们可就没有那么好过了。

黑币(Blackcoin),最早于 2014 年 2 月 24 号开始公布计划,宣称是基于纯 PoS 搭建,但实际也是 PoW + PoS 混合共识。那为什么在纯 PoS 这里说混合共识,是因为黑币上运行的 PoW 只持续到 10000 个区块高度,按照 1 分钟一个块,挖矿时间大概是一个星期左右(6.9 天),随后整个区块的验证将不再接受 PoW 的挖矿,转而形成 PoS 的挖矿,从这个角度,加上时间顺序,我把黑币也归结到了纯 PoS 的阵营中。

PoW 挖矿总量最大是 10,000,000,进入 PoS 之后每年通胀 1%(和 Nxt 一样,没有最大限制)。纯 PoS 有更短的区块间隔,更合理的铸币方式,从而吸引了很多早期的人进来挖矿,甚至有很多专门做矿池的开始在论坛收币做验证人(Validator)。那时候,PoS 这种新型共识的确吸引了很多人的眼球,不需要电脑,不需要 GPU,只要持币就可以获得奖励。

但黑币的好景也没有持续多长时间,在 2014 年 4 月 14 号,短短不到 2 个月时间,就将近 2 千万美元的市值,后一路下挫,几经周折,还是没能逃过摸底的厄运。而因为市值的下挫,1% 的增发奖励对于 PoS Staking 的人来说,也显得杯水车薪了。

虽然,2016 年新的一批开发者又重启了对黑币的开发,并花了重金请来正规军,公司化,全面宣传,但是,黑币以及它的 PoS 也没再回到主流世界的视野中来。还记得黑币经典的宣传语,简直如教科书般的存在:第一个基于纯 PoS 币,公平启动,没有预挖,没有 ICO,以社区为中心,重新回归,比以往更好,比以前更强。

The first fair-launch pure Proof of Stake coin. No premine. No ICO. Community focused.
Back again, better than ever, stronger than before.

2014 年 7 月 18 日,一个和黑币共识类似的币,叫影子币(Shadowcoin),是一种基于聊天匿名的应用币,也基于 PoW+PoS 混合共识,PoW 只挖 31000 个块,随后进入 PoS,但是和黑币不一样的是,影子币看到了激励的不足,它提高了每年的通胀率,把黑币的每年 1% 提到了每年的 2%。但进入 2015 年后,应用币的价值远远还看不到,加上熊市到来,影子币很快就消失在人们的视野中了。

我总结了整个 PoS 的历史,发现很多基于 PoS 的项目,基本都出现在 2012~2014 年,那时候加密货币市场处于上涨周期,带富了一批项目,一批人,很多人虽然都为项目的探索买了单,但是总体上来说在那段时间周期,大家在纸面上都是很好看的。到了 2015 年~2016 年,币圈进入了大熊市,很多项目和开发者就进入了冬眠过冬阶段,也很少有项目再出现吆喝捐赠,IPO 或者 ICO 了,PoS 的研究也在市场上消失了一段时间。

排除市场大周期的原因,我们归结那段时间 PoS 机制币种失败的原因,点点币,Nxt,黑币,影子币都是 PoS 很早期的探索项目,技术上并未完全考虑全面(在第九章节中我们会介绍 PoS 的技术缺陷),另外,对于 PoS 中 Staking 的激励太小,无法支持验证人的成本,还有就是去中心化的运行模式在 PoS 上的应用并不想 PoW 上那么完善。

年 1%~2% 的增发比例无法让矿工维持,特别特别是在熊市阶段。这种初创的 PoS 增发模式,在很多人开来还是足够新鲜的,在初始可能爆发的币价上来看,增发的初期利益只是一个非常重要的诱因罢了,但当投资者面对币价无法带来预期的收益之后,低激励变成了一种鸡肋。矿工看不到收益,自然无法参与网络验证,那么网络要不发生堵塞,要不就是慢性死亡,潜在的攻击成本越来越低。

另外,多数项目的启动都是几个开发者甚至 1 个开发者发起的项目,Bitcointalk 发起一个话题,大概描述要做什么,100%PoS,1% 奖励 ...... 然后就没有然后了,初次上线后,开发者像中本聪一样隐匿,这样的结果,带来的不是像比特币一样的繁荣,而是死亡。

至此,这是 PoS 的发展第二个阶段。

三、委托 PoS (DPoS)

委托 PoS,也称作为 Delegate Proof of Stake,DPoS,其雏形诞生在 2013 年 12 月 8 日,Daniel Larimer 在 bitsharetalk 首次谈及用投票选择出块人的方式,代替 PoS 中可能出现的选举随机数被操纵的问题,描述是这样的:

我最近有一个可以用的点子,但是我还不能完全确定是否可行。为何不让持币人选出签名区块的验证人?持币人用币天(CDD coin-day-destroyed)投票给签名人,当签名人签名的时候会消耗投票人的币龄。没有人会被允许在 100 个区块里面签超过 1 个的区块数。这个点子可能会有潜在的问题,但是我会把它加入我的点子库。

I recently came up with another system that could work, though I am not fully sold on it.What if the share holders elected people who would sign blocks? You vote for the signers with CDD. When they sign they spend the CDD they accumulated from people voting for them. No one would be allowed to sign more than 1 in 100 blocks. This plan has many potential problems, but I thought I would add it to the idea pool.

这就是委托(Delegate) PoS 的雏形,这个系统被成功的运用到了比特股(Bitshares)上,比特股社区对 DPoS 的宣传语是:DPoS 不仅解决了 PoW 的浪费资源问题,同时还解决了点点币和未来币的 PoS 问题。在当时看来,DPoS 的确是一种解决方案。虽然比特股的发展也非一番风顺,Dan 最终还被踢出比特股的社区,但不可否认的是,委托权益 DPoS 共识在未来一段时间里,为 PoS 的进一步发展起到了奠基作用。

比特股的 DPoS 基于石墨烯(Graphene)平台搭建,这套石墨烯技术后来发展成了 DPoS 的专用底层,基于石墨烯开发的区块链项目可以直接使用 DPoS 的共识机制,免去了重复开发的苦恼,像 Steemit,EOS,Lisk 等都是基于石墨烯平台搭建的 DPoS 公链。直到现在的 2018 年,我们仍然可以看到在比特股交易所(Bitshares DEX)里面,很多网关资产都是基于石墨烯的 DPoS,基于 PoS 共识的项目在数量上达到了一个数量级。

的确,DPoS 有比较多的优点。DPoS 解决了权益使用不及时的问题,是一种让专业人做专业事情的基本原则,可以理解为是国家治理里面的代议制,或者说是人大代表制度,乡里乡镇的居民通过选举选出乡长,然后是镇长,县长,省长等等,这种制度最大的好处就是解决了验证人过多导致的效率低下问题,当然,这种制度也有很明显的缺点,就是中心化诟病。

比特股的初始节点验证人大概人数在 100 人左右,后逐渐减少到 30 多(因为无利可图),EOS 的节点验证人固定在 21 个人。在去中心化思想被及其推崇的区块链世界里,倾向中心化的项目是容易为人诟病的,很多开发者并不会认同这种委托权益的做法。在 2014 年开始起源的另外一个项目 —— Tezos,把去中心化和委托权益更好的结合到了一起。

Tezos 的 PoS,开发团队更喜欢称之为 LPoS (Liquid Proof of Stake),但称之为 DPoS 也不为过,因为委托权益在 Tezos 的 PoS 里是极其重要的一环。为了保证系统安全,PoS 希望提高系统代币的 Staking 量,这样攻击者发动 51% 攻击的代价就会变得很大。

Tezos 解决了初期激励不够大和用户 Staking 意愿比较低的问题,用年 5.5% 的增发来给 Staking 用户作为奖励,同时,用户可以将自己的权益委托给验证人(Tezos 中叫面包师,baker),让验证人帮助委托人行使权益。验证人可以收取用户一点的手续费,作为服务费用,这样验证人节点除了自己 Staking 的奖励之后,还能得到接受委托的奖励,这种激励对于未来币,黑币的 1%~2% 的激励,高出了很多。

另外,Tezos 的委托和 EOS 的委托有很多方面不一样,原则上,每一位委托人都可以选择任意候选人进行投票,但由于 Tezos 和 EOS 的投票激励不同,导致了不同的结果。Tezos 上,委托人可以选中任意一个验证人,投票并获得收益,而 EOS 的委托选中的验证人只有当选不当选的结果,并没有激励。

EOS 上的当选者有责任和义务代表投票人意志,在大部分节点候选人都诚实的情况下,委托人并不能很好的判断出来区别,所以投票动机也变得不一样了。总体上来说,两种 DPoS 都是根据持币的权重占比给与分配一定的权益,此权益是否委托在于持币人的初始动机,这就是 DPoS 的精髓了。

Tezos 于 2018 年 6 月 30 日上线了主网,目前主网节点数量 400 多个,验证人 100 多个。EOS 于 2018 年 6 月 15 号启动了主网,主网主节点数量 21 个,备选节点 100 个。

四、BFT + PoS

拜占庭容错(Byzantine Fault Tolerance,简称 BFT )和 PoS 结合最早是在 2014 年由 Tendermint 团队,Jae Kwon 提出的。而 Tendermint 前身,则是基于 1988 年在麻省理工学院开发的经过验证的 BFT 算法,Tendermint 进行了优化和改良。但是 Tendermint 出来之后一直没有被运营到项目当中,Jae Kwon 后来创建了 Cosmos 项目,可以说是基于 Tendermin 的第一个项目。

按照主网上线时间排序,BFT + PoS 或者是类 BFT + PoS 的项目应用最早开始于 2018 年,先是 EOS 带着 BFT + DPoS 的上线,然后,Tezos 的类 BFT + PoS 的算法在 EOS 后一个月也上线了。而基于 Tendermint 的第一个项目 Cosmos,则会在 2019 年 Q1 上线主网,另外,我现在知道的还有 Ethereum,Algorand 都会采用了 BFT + PoS 的共识算法,具体的上线时间未知。虽然说 Tendermint 先出来,Cosmos 却别别人占据了先机,但是不得不说的是后来者基本都参考了 Tendermint 的设计,所以 Tendermint 对 BFT 在项目中的应用还是起到了很好的带头作用的。2018 年 ~ 2019 年,会是 BFT 上线大量项目的共识,百花齐放。

BFT 容错能给分布式网络带来了可观的抗风险能力,还能带来了较快的区块确认速度,解决区块链分叉问题,并带来一定程度的交易的最终确定性,间接的提高了性能。如果说纯 PoS 比起纯 PoW,仅仅是解决了能源消耗,那么 BFT + PoS 比起纯 PoS,那就是除了解决能源消耗外,还解决了 PoW 的交易确认,交易分叉,性能较低等问题,带来的飞跃是不可忽视的,特别在安全这块,我们来看 Tendermint:

Tendermint 中很重要的一部分就是它的共识引擎部分(Tendermint Core),该共识引擎将 BFT 和 PoS 共识结合到了一起,持币人通过 stake 获得验证区块机会,签名完成后,新区块的验证通过 3 轮提交,2 轮 2/3 的投票过程,来达成最终共识。由于投票是在区块广播后就开始的,那么当它完成了验证之后,新区块即获得了及时确定性(Instant Finality),这和比特币交易需要 6 个区块确认不一样,Tendermint 大大缩短了验证时间,使得交易能及时生效,提前避免了交易被回滚,双花等问题的出现。

除了交易确认这块,同时拜占庭容错最大能容忍系统中小于 1/3 的验证权重宕机,能很好的保证系统运行,可以简单理解为,只要系统中大部分人是诚实的,不管其他验证人怎么做,系统还能运行,不会出现停止,宕机的情况。

基于 Tendermint Core 引擎打造的第一个项目叫 Cosmos,Cosmos 是一个以提供跨链功能为目的的公有链项目。Cosmos hub 是这个项目最重要的部分,也是作为跨链总协调方,如果跨链生态繁荣,多链接入到 Cosmos 中心,那么这个中心的安全性可见多么的重要。而提到 Cosmos,就不得不提到另外一个跨链项目波卡(Polkadot),波卡同样是基于 BFT 的 PoS 项目,由以太坊黄皮书撰写人 Gavin Wood 带领,云集众多技术牛人,团队阵容可谓强大。只不过,在作者写系列文章时,波卡的 GRANDPA 共识还在不断改进当中,具体需要等到对于波卡临近上线的时候才能具体分析了。

目前,已经在运行的 Tezos,情况良好,只有一次因为 Slash 判断出现问题,导致整个网络暂停了出块(Halt),原因共识机制有部分关系,但是通过手动注入 Nonce 后解决了问题。除此之外,Tezos 运行了小半年,除了受到了低手续费的垃圾交易攻击外,共识部分并没有出现过大的问题。

2014 年 BFT 开始引入到区块链分布式网络,后配合 PoS 开始开始流行起来,BFT+PoS 的混合共识已经受到了很多项目的重视,不仅因为 BFT 这种算法的安全性已经研究了将近 30 年时间,而且因为这种算法提高系统的抗风险能力和性能,所以我预计未来一段时间内,这种共识会流行很长一段时间。

五、PoS 新时代

PoS 的研究脚步还在不断前进,安全、性能和去中心化一直都是 PoS 所追求的方向。2018 年后开始发起的一些新起的项目,我看到了它们身上或多或少都有前人的影子,基于此,要不优化了性能,要不优化了安全性,要不极致的优化不可能的铁三角。Algorand 和 Thunderalla 是 2018 后开始走入我的视野的新项目,这两个项目我认为可以在一定程度上代表了新的 PoS 时代。如果把 PoS 的发展分成 4 年一个轮回的话,恰巧,这两个项目都会在 2022 左右开始成型。

Algorand 和 Thunderalla 都站在了巨人的肩膀上。由图灵奖得主、MIT 教授 Sivio Micali 带领研究的 Algorand,专注于新的 PoS+BFT 共识算法(简称 BA,Byzantine Agreement),旨在让验证人的选举更加随机,不可预测,以更好的保证系统的安全为研究方向;Thunderella,由两位康奈尔大学计算机教授 Rafael Pass 和 Elaine Shi 发起,旨在解决 PoS 当中的性能扩展问题,目前理论性能最高可以达到 1000~2000Tps。

相信 2019 年会是 PoS 丰收的一年,众多 2014 年~2018 年间做的研究将在 2019 年上线验证,预示 PoS2.0 时代的开启。我觉得我很幸运能经历 PoS 两个时代(20112014,20152019)从 PoW + PoW,到纯 PoS,再到 DPoS,最后来到 BFT + PoS 新的混合共识里面。我相信,这远远不是终点,而是新时代的起点。

本文来自,仅作分享,存在异议请联系平台删除。本文观点不代表刺猬财经 - 刺猬区块链资讯站立场。

(0)
上一篇 2019年5月6日 下午10:26
下一篇 2019年5月6日 下午11:00

相关推荐