本文深入探讨了权益证明(Proof of Stake, PoS)的设计哲学,比较了其与工作量证明(Proof of Work, PoW)的不同,强调了PoS通过经济惩罚而非能源消耗来确保网络安全的基本原则。
一种权益证明设计理念
像以太坊(Ethereum)、比特币(Bitcoin)、NXT 和 Bitshares 等系统是一种全新的加密经济生物体——去中心化的、无辖区的实体,完全存在于网络空间,由密码学、经济学和社会共识的组合维护。它们有点类似于 BitTorrent,但又不同于 BitTorrent,因为 BitTorrent 没有状态的概念——这一区别实际上极为重要。它们有时被描述为 去中心化的自治公司,但它们也并不完全是公司——你无法对微软进行硬分叉。它们有点像开源软件项目,但又不完全是——你可以对区块链进行分叉,但并不是像你能轻易分叉 OpenOffice 那样简单。
这些加密经济网络有多种形式——ASIC 基础的 PoW、GPU 基础的 PoW、幼稚的 PoS、委托 PoS、希望不久的将来实现的 Casper PoS——这些形式不可避免地带来了各自的基本哲学。一个著名的例子是对工作量证明的极端主义视角,其中“正确的”区块链被定义为由矿工燃烧最大数量经济资本而创建的链。这最初只是协议内的一个分叉选择规则,但在许多情况下,这一机制被提升为一种神圣的信条——请参见 我和 Chris DeRose 之间的这场 Twitter 讨论,其中有人试图在面对更改哈希算法的协议硬分叉时认真捍卫这一理念。Bitshares 的 委托权益证明 提供了另一种连贯的哲学,其中一切又一次源自一个单一的信条,但这个信条可以用更简单的方式描述:股东投票。
每种哲学,如中本共识、社会共识、股东投票共识,都导致一系列结论,并且在其自身的标准下形成了一套颇具合理性的价值体系——尽管在相互比较时,它们确实会受到批评。Casper 共识也有其哲学基础,虽然迄今为止并没有被清晰地表述。
我本人、Vlad、Dominic、Jae 及其他人对为何存在权益证明协议及如何设计它们有各自的观点,但在这里我意在解释我个人的出发点。
我将直接列举观察和结论。
- 密码学在21世纪确实是特别的,因为 密码学是为数不多仍然深度偏向防御者的对抗冲突领域之一。城堡比建造容易被摧毁,岛屿可防御但仍能被攻击,但普通人的 ECC 密钥的安全性足以抵御甚至国家级行为者。Cypherpunk哲学根本上是关于利用这种珍贵的不对称性来创造一个更好地保护个体自主性的世界,而加密经济在某种程度上是这一点的延伸,只不过这一次保护的是复杂的协调和合作系统的安全和活性,而不仅仅是私人信息的完整性和机密性。 自认为是 cypherpunk 精神的意识形态继承者的系统应保持这一基本特性,其被破坏或扰乱的成本应远高于使用和维护的成本。
- “cypherpunk 精神”不仅仅是理想主义;构建比攻击更容易防御的系统也是一种合理的工程实践。
- 在中长期时间尺度上,人类非常擅长达成共识。即使敌手拥有无限的哈希算力,并且以 51% 的攻击推翻任何重大区块链,即使回退了过去一个月的历史,证明该链是合法的社区仍然比简单地跑赢主链的哈希能力要困难得多。他们必须颠覆区块浏览器、社区内每一个受信任的成员、《纽约时报》、archive.org 及互联网上许多其他来源;总的来说,在信息技术浓厚的 21 世纪,向世界证明新的攻击链是首先出现的链的难度几乎堪比证明美国登月从未发生过。 这些社会因素最终保护任何区块链的长期安全性,无论区块链的社区是否承认这一点(请注意 比特币核心 承认 社会层的这一优越性)。
- 然而,仅靠社会共识保护的区块链在效率和速度上会显得过于低效,并且会使分歧问题无休止地继续(尽管尽管有所有困难,这已经发生过);因此,经济共识在短期内在保护活性和安全属性方面发挥着极其重要的作用。
- 因为工作量证明安全性只能来自块奖励(在 Dominic Williams 的术语中,它 缺乏三个 E 中的两个),而矿工的激励只能来源于他们未来块奖励的风险,因此 工作量证明必然是在巨大奖励的驱动下通过巨大的力量逻辑运作。在 PoW 中恢复安全受到攻击非常困难:第一次发生时,你可以硬分叉以更改 PoW,从而使攻击者的 ASIC 变得无用,但第二次你就没有这种选择,因此攻击者可以一再进行攻击。因此,采矿网络的规模必须大到攻击是不可能的。小于 X 的攻击者因拥有网络每天花费 X 的成本而受到挫制。 我反对这种逻辑,因为 (i) 它 会伤害树木 ,并且 (ii) 它未能认识到 cypherpunk 精神——攻击成本与防御成本是 1:1 的比例,因此没有防御者的优势。
- 权益证明通过依赖罚款而非奖励来打破这种对称性。验证者将资金(“押金”)置于风险中,稍微获得奖励以补偿他们锁定资本、维护节点以及在确保私钥安全方面采取额外预防措施的相关支出,但撤销交易的大部分成本来自于比他们获得的奖励多出数百倍或数千倍的处罚。 因此,权益证明的“一句话哲学”并不是“安全来自燃烧能量”,而是“安全来自将经济损失置于风险之上”。如果你能证明达到任何冲突块或状态的同等终结级别不可能完成,除非恶意节点在试图切换时支付 $X 的协议内处罚,那么给定区块或状态就具有 $X 的安全性。
- 理论上,验证者的多数串谋可能接管一个权益证明链,并开始恶意行动。然而,(i) 通过巧妙的协议设计,可以尽可能限制他们通过这种操纵获得额外利润的能力,更重要的是 (ii) 如果他们试图阻止新验证者加入,或者执行 51% 攻击,那么社区可以简单地协调一次硬分叉,删除有问题的验证者的押金。 一次成功的攻击可能花费 5000 万美元,但清理后果的过程不会比 2016年11月25日的 geth/parity 共识失败 累赘得多。 两天后,区块链和社区恢复正常,攻击者减少了 5000 万美元的财富,其他的社区成员可能因为这一攻击导致代币的价值上升而变得更加富有,形成供应危机。 这 就是攻击/防御的不对称性。
- 上述并不意味着无计划的硬分叉将成为常规现象;如果需要的话,单次 51% 攻击造成的成本可以被设置得与工作量证明的永久 51% 攻击的成本一样高,而攻击的巨大成本和非效力应该确保在实践中几乎不会尝试。
- 经济并不是一切。个体行为者可能受到协议外动机的驱动,他们可能会被黑客攻击,可能会被绑架,或可能会只是喝醉酒并决定毁掉区块链,而不顾成本。此外,从积极的一面来看, 个体的道德克制和沟通效率不足会经常使攻击的成本提高到远高于名义协议定义的损失价值。这是一个我们无法依赖于的优势,但与此同时,这也是一个我们不应无谓放弃的优势。
- 因此,最佳协议是能在各种模型和假设下良好运作的协议——经济理性与协调选择、经济理性与个别选择、简单故障容忍、拜占庭故障容忍(理想情况下包括自适应和非自适应对手变体)、Ariely/Kahneman 启发的行为经济学模型(“我们大家都只是稍微作弊”)以及理想情况下,任何可以进行合理推理的现实和可行模型。 拥有经济激励以阻止集中卡特尔反社会行为的防御层和反集中激励以防止卡特尔首先形成的防御层是非常重要的。
- 运行得尽可能快的共识协议具有风险,若要尝试,需非常谨慎,因为如果 快速的可能性 和 激励 有所绑定,这种结合将会奖励非常高且具有系统性风险的网络级别中心化(例如,所有验证者均来自同一托管提供商)。对验证者发送消息的速度不太关心的共识协议,只要他们在某个可接受的时间区间内(例如 4–8 秒,因为我们已实证知道以太坊的延迟通常在 ~500ms-1s 之间)无需对此太担忧。一个可能的中间方案是创建能够非常快速工作的协议,但采用类似于以太坊的叔机制确保节点在增加网络连通性超出某个容易实现点后,其边际奖励是相对较低的。
从这里开始,当然还有许多细节以及许多偏离细节的方式,但以上是至少我对 Casper版本所基于的核心原则。从这里开始,我们当然可以讨论竞争价值之间的权衡。我们是给 ETH 提供 1% 的年度发行率,并让强制进行补救性的硬分叉成本达到 5000 万美元,还是设定零年度发行率,强制进行补救性硬分叉的成本降低到 500 万美元?我们何时增加协议下的经济模式的安全性,以交换降低在故障容忍模型下的安全性?我们更关心可预测的安全级别还是可预测的发行级别?这些都是另一个主题的问题,以及在这些价值之间实现不同权衡的各种方式是更多主题的问题。但我们会逐步探讨这些 :)