PoW和PoS的大讨论 - by Jan

这两天在橙皮书的微信群里面产生了PoW和PoS的大讨论,甚是精彩,本文是Jan 的回复(节选),非常精彩。

A: POS大户坐着获得的资本利得,是小散无法逾越的鸿沟,且无法约束他的权利。

B: 这个问题是社会正常现象吧,有钱的人挣钱本身就是比平民容易,他投入这么多钱收入却比别人少,那才是不公平啊,现在是大家获得的比例是一样的,大户投入的钱多,就是会获得更多的回报

这是一个PoW和PoS讨论中常见的对话。A提出了两个问题

  1. (公平性问题) PoS大户坐着获利,普通人没有;
  2. (无法制约)PoS大户的权利无法约束。B回答了1。

对于问题1, 我同意B的看法。投入多回报多是合理的,无论是pow还是pos都是这样, 区块链是帮助实现过程公平而不是结果公平的工具。 在区块链里面我们依然会看到马太效应。试图用区块链去解决结果公平的后果是区块链治理的内涵无限扩大,将本该由协议解决的各种问题(后面会看到)统统推给投票去解决。然而无论是历史还是理论早就告诉我们,世界上并没有完美的群体选择制度。区块链是一个能够记录数据,保证数据不被篡改,为所有人提供数据的工具,通过这样一个工具帮助我们更好的实现过程公平,已经是非常非常大的进步了。

问题2是一个 在讨论中被忽略的关键问题。 投入资源换取回报天经地义,但前提是你想投入就能投入吗?举个例子,一个明星创业团队融资,是不是任何vc想投就能投进去呢?PoW具有非常好的开放性,使得后来的共识参与者总是可以加入共识群体,而PoS不具有这样的开放性。引用这里的讨论:

在PoS中,未来的共识群体是由今天的共识群体决定的。任何新的节点想要参与共识都需要通过至少一个交易来实现(e.g. 抵押,投票,etc.),而这个交易是否被处理是由今天的共识群体决定,他们可以处理这个交易,也可以不处理这个交易, 如果不处理这个交易,新的节点永远都无法参与共识 。同时,“不处理交易”是容易伪装而难于惩罚的行为,我还没有看到能在共识协议中解决这个问题的方案。PoS往往是根据stake的权重来分配出块比例(和节点数量没关系),考虑到大部分系统中stake的集中程度,这是一个非常实际的问题。

PoW是彻底的Permissionless。无论什么时候,只要你愿意,都可以买矿机和电力加入出块者的行列,不需要今天的矿工给你任何形式的许可。你也许会说,我还是需要购买矿机和电力呀,这是不是一种形式的许可呢?是的,从更低一层来说,这也是一种许可。但遗憾的是,在所有的Proof of XXX中,这已经是最去中心化的许可形式了,毕竟矿机生产和电力资源的去中心化程度远高于各种 tokens (的分散程度)。我们总是应该追求尽可能的去中心化,否则用回中心化系统就好了。

”是否能够投入”本身可以看作一种option,有非常高的价值。PoW能有这样的性质,是因为工作量证明的计算是一种不依赖历史的计算, 无论你在任何时间点购买算力加入计算,你都和其他矿工在同一个起跑线上, 这是一个非常独特的、反直觉的性质,正是这个性质使得后来者总是能打破了早期参与者的优势。PoS不同,因为stake是系统中内生的资产,资产的所有权是由系统历史决定的,交易顺序是由系统历史决定的,因此无论是需要抵押token加入的pos,还是只需要持有token就可以参与的pos,其validator集合都是这个系统自身的历史决定,PoS和PoW在”参与共识是否需要依赖历史“上是截然不同的。我们很容易能看出,这是一个本质不同,无论什么样的上层设计都解决不了这一点。

因此PoW和PoS的设计,从根本上是两种不同的思路,体现两种不同的理念:

  • (PoS) 系统应该让先发者获得天然的优势
  • (PoW) 系统不应该让先发者获得天然的优势

注意主语是“系统”,共识参与者在系统外的优势不是任何协议设计可以解决的。

A: pos买币staking不就是投入了吗

确实是投入,但是这里的“投入获得回报”中的”回报”已经变了。对于投入获得的回报我们需要分开来看,一种回报是token收益,最近的pos基本都支持delegate, 所以基本上所有人都有这个option. 另一种是参与共识的权利,根据上面的回答,它可以被现有的validator垄断,大部分人没有option。权利有很多种,分红只是其中一种,而且不是关键的那一种。

那么共识的权利为什么重要,它有什么用呢?它意味着你可以对交易排序,而交易排序决定了链上众筹时你的交易能不能及时上链,在DEX里面交易时你的订单能不能及时成交,等等等等。在PoS的系统上做DeFi?你需要认真考虑一下validator本身是做什么的,是否和你的发送的交易有利益相关?我们知道,DeFi的交易很可能是价值含量非常高的交易,e.g. DEX里面一个巨大的买单,这时候validator如果安排一个插队的交易怎么办?仅仅是交易顺序的不同就可以造成巨大的获利,何况共识节点能做的远大于此?操控交易排序是无法被发现的

聪明的你一定会想到:“那PoW的矿工/矿池不是一样有这样的问题吗?” 没错,PoW的矿工一样有这样的权利,但PoW有两个优点可以削弱这个问题:

  • 出块节点和生态中的关键用户是解耦的。生态中的关键用户,指的是交易所、钱包等围绕区块链提供服务的服务商,它们为大量的用户提供优质的服务,聚集了大量的用户和交易。在PoS中,由于拥有大量用户和交易,stake会自然的往生态中的关键用户集中,形成天然的stake pool,因此关键用户在业务上的优势可以转化成在共识和治理上的优势(在某些链里面已经体现的非常明显了),使得先行者的优势更加强化。在PoW中,矿工群体和交易所/钱包是独立的,他们有不同的专业分工,通过不同的专业知识,不同的方式获取回报,关键用户不能将自己的业务优势转化为协议中的优势,矿工也没办法将自己在协议中的优势转化为上层业务的优势。在PoW中,开发者、用户和共识节点之间可以形成制衡。
  • PoW的共识是开放的(见上文),充满了激烈的竞争。也许一个矿池/矿工可以在短时间内做到这一点,但由于新的矿工总是可以自由加入,想要长久的做到这一点是非常困难的,激烈竞争将会造就一个越来越公平的充分竞争的市场,这需要时间(30年?maybe)。反过来,在PoS中,由于天然的先行者的优势,以及业务优势和共识优势的绑定,先行者的优势只会越来越大,竞争将逐渐消失,最后形成垄断或寡头。在基础设施级的协议里面,我们应该尽可能的去避免垄断。

区块链本身是一个大的排队机,决定排序的权利是这个系统中最关键的权利。

在PoS中,validator集合中的validator数目是无关紧要的,并不能代表stake分散。如果你有99%的stake,你应该把它们分散到100个甚至1000个validator上去。

PoW中同样会有算力集中在大矿工手中的问题,但是由于PoW的开放性以及系统没有给后来者制造劣势(见上文),这样的集中只会是暂时的,算力将在激烈的竞争中不停的从一个人手中转移到另一个人手中。PoW赞美竞争,PoW是一个开放的系统,只有开放的系统才可能远离热力学的终局 1,保持长久的生机。

PoS有其价值,也有其问题,因此无法适用所有场景。Layer 1的区块链协议必须使用PoW,只有使用PoW的Layer 1才能解决我们希望解决的问题,实现我们希望的未来。

来源:https://talk.nervos.org/t/pow-vs-pos/1732?u=janx

Tiny熊 wechat
关注星球,收获满满