最近以太坊2.0发布升级进度的消息,其创始人Vitalik发文详述以太坊从PoW转向PoS的三大关键原因,引起加密货币社区的广泛讨论。
因此,白话区块链邀请Nervos 基金会联合发起人 & COO 吕国宁、Cobo 联合创始人兼 CEO、F2Pool 联合创始人神鱼 Daniel以及星火矿池产品负责人喵叔一起来聊聊PoW和PoS等共识机制。
01PoS VS PoW
11月4日,Vitalik Buterin 发文表示,与 PoW 相比,PoS 是一种优越的区块链安全机制。原因有三:PoS 以相同的成本提供更高的安全性;PoS 很容易从攻击中恢复;PoS 比 ASIC 更去中心化。
PoW 具备两个主要优势,但 Vitalik Buterin 认为这些优势相当有限:PoS 更像是一个「封闭系统」,从长远来看会导致更高的财富集中度;PoS 需要「弱主观性」,而 PoW 并不需要。您认同V神对于PoW和PoS的看法吗?对于PoW和PoS您怎么看?
Cobo&F2Pool 神鱼:PoW共识机制已经稳定运行了十多年的时间,经过了理论与实践的双重验证。虽然新的共识机制层出不穷,但PoW的江湖地位不减。
PoS目前来看也有比较多的硬伤,它主要是系统内的一种资源的分配。PoW更多的是采用系统外的资源来获取对区块链的保护。这两种共治方式各有优劣,在需要非常强的安全性的情况下,还是PoW的可靠性更强一些。
对比二者的特点,PoW更适用于追求绝对公平、安全的领域,比如比特币、各类隐私货币等;在一些对去中心化程度要求不高,但对性能要求更高的领域,比如联盟链,PoS可能是更好的解决方案。
星火矿池喵叔:Vitalik 描述了从他的视角所观察到的 PoS 的优点,我觉得说的蛮好的,但是我并不能完全的认同以此作出的 PoS 更安全的结论,其中还有一些因素需要考虑,比如开放性、共识规模、更长期的公平参与的机会等。
PoW 比 PoS的更开放性这一点 Vitalik 自己其实也有说到,但是他没有说 PoW 转化为 PoS 丢失了什么。我理解这其中丢失的重要的一部分是参与的人,或者说丢失了系统博弈的复杂性。
PoW 中的矿工生态是自成体系的,他们关心电费、机器、主板、电源等等现实因素更多,因此无论链上活动如何,他们参与挖矿的核心商业逻辑都是成立的,并且可以穿越牛熊的维持链上安全,而PoS 会大概率抛弃这些人,这带来的是维护网络安全人员的更关注链上活动,因为他们本身抵押链上资产。我称之为共识内卷的一种现象,即链上活动长期会直接影响链本身的安全性,这显然并没有优于当前 PoW 的共识机制。
再说下长期公平参与的机会,PoW 实现的公平性来自于能源本身足够分散和多元化,无论算法如何更新,其核心是能源本身,这让任何后来者的参与的门槛可以脱离链上资产本身,通过引入外部力量(算力)来维持链上的安全;但 PoS 的封闭性会让参与有了初始的门槛,无论如何分散,它一定没有使用电力等能源可以更直接的完成长期的成本核算和公平。
Nervos 吕国宁:当然无法认同,但是我觉得更遗憾的是从这篇文章中看到的是抛弃客观,中立的角度。
对 PoW 和 PoS 的优劣分析比较,在这篇文章中显得避重就轻,甚至扭曲事实。我更愿意理解这篇文章在 2020 年末这个时间点,Ethereum 2.0 要马上启动 Phase 0,来自社区的不同声音是到底追求远期不确定性的以太坊 2.0,还是务实的在以太坊 1.x 之上发展 Layer 2 方案,社区开始出现越来越多不同的声音。在以太坊 2.0 第 0 阶段启动,开启 PoS 并且接受用户 Staking 的前夕,一篇这样的文章带来的效果更多的是安抚不同的意见和鼓励社区积极参与 Staking。
如果这样一篇文章拿到以太坊社区之外去证明 PoS 优于 PoW,毫不意外地可以看到在社交网络上各种严肃的开发者和研究者,尤其是一些对 PoS 机制研究非常深刻的人对这篇文章提出了大量的质疑和不认同。
PoS 和 PoW 的优劣之争,从 2015 年就看到很多,并且争论从区块链技术社区到学界,这些年已经有大量的研究和学术文章从各个角度来分析和对比 PoW 和 PoS,并且针对已经研究得比较清楚的问题给出专业的分析和建议,但是不管是区块链技术社区还是学界,也从未得出过 PoS 更优于 PoW,而是分成两个阵营,大家在各自的阵营继续深挖和找到更合适的场景去发挥优势,扬长避短而已,而我看这篇文章,并没有看到新的研究成果或者新的证据,看到的是避重就轻的断言和不严谨的结论。
1.PoS 以相同的成本提供更高的安全性?
文章中对 PoW 攻击成本计算方式几乎完完全全不符合实际,实际情况是在现实世界中,只有通过 NiceHash 平台租用到的 GPU 算力能发起攻击,但 GPU 算力在过去五年很好的保护了以太坊,帮助以太坊平台的总资产规模不断成长,目前已经超过了 1000 亿美金,是不是很矛盾?
通过 NiceHash (算力租赁平台)租用算力发起攻击是目前已知的对网络发起 51% 攻击的方式,而 NiceHash 上可租用的总算力有限,并且可被攻击的 PoW 网络数量也非常有限,以及使用专业矿机去发起 51% 攻击是一个毫无现实意义的问题。
所以要区分可以通过租用 GPU 算力发起 51% 攻击和 PoW 是否安全,是两个不同层面的问题,能通过 Nice Hash 租用算力对小网络发起攻击,不代表 PoW 的安全性不够。51% 攻击是一种确定性的,可以通过机制设计和预案去预防和解决的问题,而 PoS 机制中包含的不确定性,无法解决的问题反而更多。
2.关于从攻击中恢复的效率?
文章中指出了一种针对 PoW 的攻击,但是不谈前提。这种攻击的前提是网络 PoW 算法是基于 GPU,并且基础算力较弱,可以通过 NiceHash 租用到足够的 GPU 来发起攻击,这几个条件全部达成才有攻击的机会,这种攻击方式对 ASIC 系统没有现实意义。
相反,PoS 在被攻击的时候,只要攻击者持续攻击,那么不管 PoW 还是 PoS 表现都是一样,甚至 PoS 系统可能更糟糕,slashing 机制(质押金罚没)对解决问题没任何帮助,攻击者完全可以通过外部获利,比如去交易平台做空,所以谈 PoS 从攻击中恢复的效率更高的意义在哪里?PoS 的 UASF(user-activated soft fork 用户激活的软分叉) 机制通过人为协调来解决问题的机制,能用来证明比 PoW 更好?
3.PoS 比 ASIC 更去中心化?
对去中心化的理解,至少得分三个层次,公平性,无需许可的准入机制,反审查,这三个层次上,PoS 都无法拿出任何证据证明其哪怕跟 PoW 一样的程度,所以在去中心化这个特性的比拼当中,PoS 不跟 PoW 比,而是选择跟 ASIC 比?而 ASIC 并没有损害公平性,无需许可准入和反审查,反观 PoS,初始分配问题,无法做到真正的无需许可准入和反审查,这些是 PoS 机制自身的问题。
PoS 的封闭性导致的问题远比想象中的要大得多,而 PoW 是借用物理世界的资源(能量)来维持网络的共识,并且在物理世界中的资源分布天然就是分散的,物理资源是天然去中心化的,并且激励机制促使参与者去不断寻找和挖掘更低成本更高效率的资源,这种竞争机制进一步导致资源的分散而非集中,反观 PoS,如果垄断者想要维持其垄断优势,那么他付出的成本一定小于竞争者,这个机制直接导致的结果就是系统内卷(达到瓶颈,无法进行质变的量变)。
关于弱主观性,在 PoW 体系中不存在,只有在 PoS 中,判断主分支的时候无可避免的要依赖外部信息。这个问题在 PoS 系统中是无解的,并且也是一个能导致的问题远比想象中的更大。在以太坊早期 PoS 研究中,创造出了“弱主观性”这个概念,但是这个概念直到今天,也没有真正得到学界的认同。其他关于 PoS 的一些更深层问题,这里谈得更清:https://www.hellobtc.com/kp/mt/11/3005.html 。
02最终会沦为BTC一条PoW链吗?
自2009年比特币上线以来,整个加密货币世界诞生了上万个区块链项目,新的共识机制也层出不穷,有观点认为由于51%攻击的原因,除了比特币,其他的代币安全性方面其实特别差,最终会出现只有比特币一条链走PoW的道路,其他的公链只适合PoS或者其他共识机制,前面也屡屡爆出项目遭到双花攻击的情况,您怎么看这个问题?
Nervos吕国宁:一条成功的 PoW 链要想做起来非常难,但是做成了的 PoW 就非常安全,这是 PoW 机制的特点,任何项目选择了 PoW 作为底层共识机制,就要非常明确这一点,PoW 的安全性通过 Bitcoin 12 年的平稳运行,以及以太坊 5 年的足以证明,并且今天整个区块链领域超过 80% 的资产仍由 PoW 提供保护。
有一些算力较弱,发展不好的 PoW 链,频繁被曝出通过 NiceHash 平台租用算力去发起 51% 攻击,但是这个并不能说明 PoW 有问题,PoW 项目发展要看设计,看执行,执行的好不好决定了这条 PoW 链能否走出来。反观 PoS 链,不说远的,就说近期发生的事情,NEO 的停机问题,Tron 的停机问题,在我们看来,各种 PoS 爆出的问题比 PoW 要多得多,所以不能因为 51% 攻击问题就认为 PoS 是解决方案,PoS 有也同样有其自身的问题。
不是所有的 PoW 链都一样,也不是所有的 PoS 链都一样,研究讨论的时候要客观中立的去看待机制设计和如何平衡和达成目标,如果更关注效率,比如联盟链或者产业区块链,如果要安全和去中心化保护资产,那么 PoW 更适合。
2020 年,我们看到的趋势是新的 PoW 项目非常少,更多的新项目不约而同的选择了 PoS,这并不能说明 PoS 更好,只能说明 PoS 早期发展更容易,早期容易不代表后期能做到在去中心化和安全程度上不输于 PoW 的程度。打个不恰当的比方,创业很难,九死一生,绝大多数的创业者,小概率成功,大概率失败,一旦成功带来的成长,以及各种收益非常可观,可是打工更轻松容易,所以创业者是少数,大部分人选择打工,但是你不能说打工比创业更好,道理是一样的。
所以我们理解 PoW 的优势,看到 PoW 难,也不该放弃去发展 PoW,至少在 Nervos 我们坚定的选择了 PoW 这条路,并且我们的 PoW 生态发展的远超预期,目前我们已经平稳度过了 51% 的风险期,安全方面的担心已经不存在了。
Cobo&F2Pool 神鱼:除了比特币,近两年还是涌现了不少PoW的新项目,目前来看运行得也不错,我不赞同最终会出现只有比特币一条链走PoW道路的说法。 由于算力过于集中或者某些币种采用了其他公链使用的共识算法,使攻击成本极低,在一些小的公链项目上的确发生过51%攻击。
但是在BTC链上严格意义成功的双花很罕见,几乎没有。比特币在2013年的3月12号发生了一次意外的版本分叉,导致了一次成功的双花,是被确认的,因为两条链都确认了,幸运的是这仅有的一次攻击也是鱼池发起的测试,测试完之后立刻把币退了。
之所以会出现双花攻击大多是大家没有对安全有足够的重视,或者他们采信了零确认的方式,零确认在网络层面是不安全的,不要轻信零确认。
星火矿池喵叔:PoW 链被双花攻击的场景,从比特币开始就被提出,其解决的方法就是其机制本身。
只要共识足够强,单一链可以容纳对应挖矿算法尽可能多的流通算力,就可以抵御外部带来的 51% 攻击。所以结论是显而易见的,最终并不是只有比特币一条 PoW 公链,而是每种 Hash 算法领域都可以有至少一条承载足够算力的 PoW 公链。以太坊作为 GPU 挖矿为主,那么它当前可以承载足够的 GPU 算力并维持其安全性,也足够说明问题了。
因此新的公链在选择共识时,可以选择 PoS 这没有问题,如果选择 PoW,应该尽可能考虑在共识算法层面来做变更,形成初期的安全壁垒,防止恶意的算力轻易对其造成攻击,并完成共识的扩建过程,发挥 PoW 该有的优势。
03未来共识机制会怎样演变?
区块链因其自我验证功能补足了互联网世界最重要的一块拼图,正是因为PoW、PoS等共识机制使得区块链这一功能得以实现。从加密货币发展角度而言,您认为未来共识机制会有怎样的演变历程?
星火矿池喵叔:我觉得人类从有了文明之后,所追求的东西就没有变过。我们树立奥林匹克精神,追求更高更快更强。所以作为确保区块链账本安全的共识机制来说,我们显然也在向着这个方向做出改变。
Nervos 吕国宁:我认为未来共识机制不管如何演变,PoW 机制都会是一种无法超越的存在。
区块链,尤其是无需准入许可的去中心化区块链系统,共识机制的首要任务是保证共识的安全性,换句话说,区块链的共识节点提供的最重要的产品是安全,而产生安全的成本不管是电力,还是 ASIC 设备,抑或是背后投入的资本,其本质是通过能量投票,最后都可以归结到能量的消耗,并且能量的消耗是一个持续的物理过程,所以 PoW 的核心是能量的消耗证明,并将能量通过 token 的形式“存储”起来。
系统的安全水平跟安全投入成正比,所以如何衡量是一个特别重要的问题,也是大家能建立信任的依据,尤其是验证安全投入的方式越简单直观越好,在安全成本投入简单可验证的前提下,我们可以把对安全程度的判断转变成安全投入水平的判断。从这一点上看,能量的投入是最简单,直接,纯粹,最容易衡量的方式,验证 PoW 能量的投入可以简单到几乎无成本的一次哈希函数验证就做到了。
反观 PoS,其成本主要来自服务器运营,社区运营成本,前期投入的资金的机会成本,这些虽然都是所谓的成本,但是缺乏一个简单清晰的衡量和判断依据,服务器安全不安全,取决于服务器提供商,取决于节点运营人员的技术水平,而社区运营成本,以及投入的资金的机会成本,是否能确保长期可持续不断投入,这些都是不可衡量的,有这些因素的存在,对一个 PoS 系统的安全水平的衡量要打各种折扣,所以 PoS 的安全水平实际如何,永远做不到直观可衡量。
Cobo&F2Pool 神鱼:我们期望可以做的更高的性能,更快的 TPS,更大的资产规模和更强的社群共识,在这点上 PoW 和 PoS 所追求的方向是一致的,只是在不同的立场上,大家做的技术改革方向会有差异。
未来,PoW与PoS可能借助多层网络等技术,在一些项目上实现融合:PoW实现更安全的底层网络,PoS实现上层的社区治理等应用功能,从而实现两种共识机制的优势互补。
当然,未来的共识机制不止PoW与PoS。底层共识架构也不会仅仅局限于链式结构,会有更多的发展。