查看原文
其他

干货 | 免信任型计算的扩容模型,Part-2

Kyle Samani 以太坊爱好者 2019-06-24

编者按


校对按:译事不易。语言文化本有差异,于是差之毫厘便谬以千里。“Trustless”一词,译者本译为“去信任”,但我以为在语法上,该词无从表现“Trustless”是个形容词,于是改为常见翻译“无需信任的”,标题便成为“无需信任的计算的扩容模型”。译者见状,复穷追猛打,以为标题中出现两个“的”使中心词不够明确。推敲之下,译者提议将“的”改为“型”,表意强调两不误。后再推敲,以为 Trustless 表此义(在无法相互信任的通信环境中构筑出的、无需特定节点承担特定任务便可用的安全系统的属性)时,“免信任型”殊为不赖,于是再度改译。


本文于 2018 年 6 月 22 日、23 日两度改译,缘由即是如此。记此缘由,一为感谢译者的坚持不懈,二为敬候识者有以教正。



 干货 | 无需信任的计算的扩容模型,Part-1 


边 2 :区块生产中心化(EOS、Cardano、NEO 等)


委任权益证明(DPoS)方案是接受中心化的,因为它认为挖矿的规模经济效益会自然造成 PoW 方案中的中心化。鉴于这个事实,Dan Larimer 发明了 DPoS 。DPoS 接受区块链会自然中心化的事实,并利用这一点来实现可扩展性。


例如,Larimer 最近又构建了 EOS,公开宣称该系统一次仅限 21 位区块生产者。预计 最后只有数据中心才有能力运转 EOS 节点。


通过限制区块生产者的人数,可以推测出每位区块生产者拥有更多资源。此外,拜占庭容错(BFT)算法通常需要 n² 次通信达成共识,而减少区块生产者的人数会降低网络延迟。降低区块生产的去中心化程度显然会提高可扩展性。


基于 DPoS 的区块链不仅能够带来可扩展性,还会缩短 TTF , 进而降低延迟性。EOS 明确提出了要将出块时间控制在 0.5 秒,这是其它共识方案根本实现不了的目标。这就是 DPoS 的一大优点。许多应用都需要降低延迟性并提高吞吐量。


以去中心化交易所为例。随着 0x 生态系统在以太坊上日趋成熟,上述需求越发明显。如今,0x 最大的一个问题是订单冲突现象越来越多,直接原因在于以太坊的出块时间长,而且延迟性高。0x 团队已经提出了解决方案。考虑到底层以太坊区块链的内在限制,这些解决方案的效果如何尚未可知。不过这根本不成问题,毕竟 DPoS 系统具有出块时间短、生产量高和延迟性低这几大优点。


总的来说,把宝押在 DPoS 上就是在赌两件事:


  1. 中性 数据库上的某些应用要求高吞吐量和低延迟性。

  2. 并非所有分布式系统都要具备抵抗中央机构的能力。


在三难困境中,DPoS 系统会侧重于三角形的底边。请注意:前两幅三角形图解反映的是 TTF 较长的系统的情况,而 DPoS 系统的 TTF 较短,因此用暗色表示。




边 3:多条链合集(Cosmos、AION、ICON、Ark)


Cosmos、AION、ICON 和 Ark 团队相信未来会产生数以百计、数以千计甚至数以百万计的区块链。这些团队不会构建像以太坊和 EOS 这样庞大的区块链,而是基于三角边 3 的权衡关系构建系统。他们相信不同的应用不一定要共享一组验证者。相反,它们应该有自己的验证者集。


在可扩展性的三难困境下,基于边 3 构建的系统中的每条链包含的价值较少。无论是 PoW 还是 PoS 方案,安全性都会随着价值的增加而上升。不过,以提高风险为代价换来的是每条链都能获得主权(或许没有这个必要或价值)、可扩展性和较短的 TTF 。


主权有什么价值?通过一些例子来理解再简单不过。如果一些国家为行政目的使用区块链,它们会想创建自己的验证者集,贯彻自己的社会价值观,而非其他国家或全球社区的价值观。例如,以太坊和 Ethereum Classic 就不能共享验证者。


显然,以太坊本身与主权概念背道而驰。2013 年,Vitalik 着手创建了以太坊,因为他发现所有加密领域的应用开发者都需要应对相同的挖矿和共识算法挑战。他慧眼识良机,用底层平台解决这些复杂难题,以便开发者专注于应用层。


对比云计算的发展史,我们会发现一些有趣的相似之处。在 21 世纪早期,许多网站主机都将多个网站搭建在一台服务器上。只要一个站点的流量过大,服务器就会奔溃,累及其它站点。


以太坊在很多方面都类似早期的网络主机。它将太多东西捆绑在了一起,创造出了一个总体不稳定的系统。只要有一个应用破坏了系统,整个系统都会奔溃。


网络主机问题的解决方案是虚拟机(VM)。用独立的虚拟机将每个应用都隔离开来之后,一台服务器就可以运行多个应用,既能实现硬件利用率的最大化,又能在保持完整性的情况下降低成本。如果流量涌入的话,只会造成一台虚拟机的奔溃,而非服务器上的所有虚拟机。虚拟机可以在物理服务器之间移植,进一步提高冗余度和安全性。与能够实现巨大的水平可扩展性的系统相结合,虚拟机成为了云计算的一大关键部分。虽然最近 Docker Container 代替了虚拟机,但这不过是新瓶装旧酒。


同理,如果分布式应用必须搭建在独立的区块链上,基于边 3 构建的系统将迎来巨大的机遇。


要想实现这种愿景,基于边 3 的系统需要极大降低创建新链以及链际互操作的难度。Cosmos 正通过 Ethermint 将这一愿景变为现实。Ethermint 是百分之百开源免费的。 它是一种基于 Tendermint 运行以太坊虚拟机(EVM)的空模板链。Tendermint 是 Cosmos 团队开发的一种吞吐量高、TTF 短的半中心化共识算法。通过极大降低开发者创建新链的难度,Cosmos 希望开发者能专注于开发应用。AION、ICON 和 Ark 都拥有相同的愿景,正致力于为开发者提供模板化的方式,帮助他们轻松高效地创建新链。(请注意,虽然 Wanchain 通常被认为是一种可以实现链际互操作性的解决方案,与这一节中提到的其它方案差别很大,提供的功能也不一样。)


请注意,这些系统能实现较短的 TTF 。这是因为每条链都是相对中心化的,使低延迟性能得以产生。尽管如此,整个系统的去中心化程度还是很高的,因为很多链都有独立的验证者集,每个验证者集都可以使用新的共识机制。


在三难困境中,许多具有互操作性的小型链的可视化效果图如下:



分片(Ethereum 2.0、Polkadot)


Vitalik 和 Gavin Wood 多年前就已开始公开讨论以太坊分片了(详情参见 这里 和 这里)。


每个分片从根本上来说都是一条独立的链。虽然 Cosmos 生态系统中的链也是独立的,但是区别在于 Cosmos 上的每条链必须管理自己的共识(以此确保安全性),以太坊分片则不然。就以太坊分片而言,所有分片的共识及其带来的安全性汇聚到了一起,并由主分片中的验证者管理合约(Validator Manager Contract)进行管理。在大部分情况下,将安全性集中起来比将安全性分散在多条链上更好。


目前还没有人将分片区块链投入生产(Zilliqa 虽然号称实现了分片,但不是完整状态的分片)。


分片能够解决可扩展性的三难困境,尽管是以牺牲链的主权为代价的。此外,跨片通信是有延迟的。从根本上来说,延迟是每个分片上共识算法的一个功能。


以太坊打算使用 Casper 最终确定每个分片。尽管还没有设置具体的参数,但 Casper 很有可能产生以分钟计量的 TTF ,让分片后的以太坊变成一个高延迟系统。


Dfinity 和 Algorand 使用一种名为门限中继(threshold relay)的新型共识算法,旨在实现区块生产去中心化、安全性、比以太坊单个分片更好的可扩展性(尽管远远比不上 DPoS 提供的可扩展性),以及较短的 TTF 。如果门限中继在实际运作过程中能像在测试环境中一样顺利,我们就有望看到 Dfinity 和 Alogrand 对它们的链进行分片,利用较短的 TTF 和低延迟性提供高效的跨片通信。


Polkadot 将使用 TBA BFT 共识算法创建一个分片网络,以牺牲 DBP 为代价减少 TTF (与 Tendermint 遵循的权衡关系相似 )。然而,Polkadot 很可能比以太坊或 Dfinity 更早启动分片网络。不同于以太坊和 Dfinity ,Polkadot 不要求分片使用特定的状态机,例如以太坊虚拟机(EVM)或 WebAssembly(WASM)。相反,Polkadot 允许每条链定义各自的状态机。也就是说,可以通过一些协议将自己的共识系统转移到 Polkadot 上,例如通过 Stellar 可以在不具备智能合约功能的情况下发行任意的数字资产,或是通过 Zcash 可以利用高度优化的状态机来处理 SNARK 证明。


综上:


协议共识算法(每个分片的)虚拟机公开分片计划
EthereumCasperEVM → eWASM已定义,推进中
Dfinity门限中继WASM未定义
PolkadotTBA未定义已定义


完整状态分片是一个未解决的计算机科学难题。还没有人能够将其投入大规模的生产环境之中。然而,如果有可能的话,这或许是解决可扩展性三难困境的最佳解决方案,同时又能提供较短的 TTF 和低延迟性。


在三难困境中,分片式 PoS 的可视化效果图如下:




可验证的链下计算


如果不通过降低效率的手段来实现免信任性,用户可以只要求一台计算机执行一个计算来实现这点吗?除了让数十或数百台计算机执行相同的计算之外,还有其他方法能够证明这台计算机进行的计算是正确的吗?我们可以不通过在根本上效率低下的区块链技术来保证准确性吗?


Truebit 正在试图通过一个验证游戏(Prover-verifier Game)来解决这一问题。这个游戏将通过证明者-反馈(Prover-response)的交互式协议来实现。在计算结果没有遭受质疑的预期情况下,每个计算都在本地完成, 只需一个解题者(solver)和几个验证者(verifier),没有网络成本。在罕见的遭受质疑的情况下,解题者和验证者需要重新运行一个基于 WASM 的计算密集型虚拟机来确定谁是作恶者。


交互式验证协议将透明性、安全性和底层链的不可篡改性与链下计算的高效率结合在一起。Truebit 是在交互过程中运行的,而且具有概率性,因此在需要低 TTF 的环境中效果不佳。Truebit 运行在第一个“全体一致”的共识体制上,每个任务最少需要一位合理的验证者才能确保安全性。


将来,Truebit 或是它的竞争者可能会使用 SNARKs 和 STARKs 通过非交互证明而非交互证明来验证任意计算的准确性。果真如此的话,Truebit 将缩短 TTF ,增加免信任型链下计算的设计空间。然而,将 SNARKs 和 STARKs 用于通用计算时,任意计算的零知识证明在很大程度上依然是不确定的,尚待证实,而且技术效率低下,最终可能无法发挥潜力。



开源、复制和政治


从长远来看,主流链可能从小众链那里吸收最好的技术。例如,以太坊正在部署 zkSNARKs ,这是能够让 Zcash 实现私密交易的主要技术。而且,Vitalik 已经宣布他想要将以太坊移植到 WASM 上,在此之前 EOS 和 Dfinity 已经采用了这种技术。以太坊神教者提出用 Plasma 来解决以太坊的所有缺陷,因为它允许在以太坊生态下选择替代型共识算法和状态机。


考虑到上述问题和智能合约的网络效应谬论,链与链之间如何区分?


Politics, ideology, beliefs。


假设没人能在毫无妥协的情况下解决可扩展性的三难问题,不同的人和企业需要的是适合手头任务的特殊的链。


最后,媒体会将这渲染成一场宗教辩论。区块链将变成宗教,因为它们的信徒具有传教士的特征,乐于传播福音,吸引更多教众。


用户会选择那些去中心化程度最高、防审查性最强的链吗?哪怕是要以牺牲性能和高昂的网络费用为代价?或者,他们会接受降低防审查性的门槛吗?如果接受的话,这个门槛在哪里?



数字黄金


基于本文提出的框架,我们可以客观评估数字黄金和可编程货币在可预见的未来可能实现独立的方式和原因。


比特币核心团队不惜一切代价将 DBP 最大化和交易验证作为首要任务,哪怕要牺牲可扩展性和其它形式的实用性。降低比特币的效率能够增加它的弹性。比特币核心团队似乎没有受到限制说一定要牺牲技术效率来换取社会可扩展性。


你可以反驳说,即使是有信仰的比特币核心团队也受到了误导。例如,PoS 倡导者认为 PoS 的安全性比 PoW 更高,因为一旦确定了一个恶意攻击者,就可以立即将她踢走。相反,在 PoW 方案中,作恶者永远都可以继续攻击网络。


从长远来看,我们不知道 PoS 方案是否比 PoW 方案更能抵抗政府干扰。这两个方案各有千秋。然而,我们知道 PoW 确实是久经考验的。鉴于比特币核心团队的首要任务是实现最高的防审查性,根据我们的经验,比特币核心开发者做出了正确的决定。


有一些观点认为比特币核心团队的观点太极端了,为实现多余的防审查性让比特币牺牲实用性,进而会导致比特币丧失意义。


目前的问题是,DBP 要到达什么程度才够?如果你认为设计门槛要低于“能够抵挡来自××、××和×××的正面联合攻击”的话,免信任型计算的设计空间会更加宽广。


在 90 年代,许多人认为互联网最终会成为民主化力量,通过前所未有的方式将人们联系在一起,瓦解传统的媒体公司和专制政府。事实证明,主要是大型公司和政府利用互联网汇聚权力和控制力。


因为所有免信任型计算系统都是无需许可的,这意味着政府可以从中牟利。除了正面攻击之外,政府也许会通过无法预见的新方式来利用加密行业增强而非放松对社会的控制。



免信任型计算模型大杂烩?


在可预见的未来,加密生态经历了类似寒武纪时期的实验大爆发之后,上述免信任型计算扩容模型都将迎来繁荣期。


要实现稳定的未来状态势必要经历一段波折的道路。事物在实现同质化之前难免要经历复杂交织的大杂烩阶段。


例如,开发人员或许会在 Polkadot 上创建新链,结果却发现 Polkadot 上的一条中继链达到了极限。这条链或许与其它中继链相连,而后者又通过 Cosmos Hub 与 EOS、以太坊和 Kadena 上的链相连。每条链都可能被切分。各种以太坊分片可能包含使用 DPoS 和权威证明(PoA)共识保障安全性的 Plasma 链。

未来,这些主要系统中的合约都能调用 Truebit 进行链下计算,这就使得上述的不确定性增强了。有多少工作可以交由 Truebit 处理?Truebit 又将如何集成主链和侧脸?


目前还不清楚这些系统的价值在哪里以及如何积累。有观点认为,如果 Cosmos 的 ATOM 代币不遵循门格尔的边际效用论,像 Cosmos 这样具备互操作性的链不会累积这么多价值(可能是数十亿和数万亿的差别)。Polkadot 的 DOT 代币也面临相同的风险。


我希望未来能看到实质性的融合,哪怕不是彻底的融合。考虑到主权对某些链的基本价值(例如,那些由政府控制的链),我认为 Cosmos 这样的系统即使成不了最大赢家,也总会有一席之地。


鹿死谁手尚未可知,天下英雄皆可逐之。


感谢 Trent McConaghy (Ocean)、Peter Czaban (Web3/Polkadot)、Jesse Walden (a16z)、Will Martino (Kadena)、Matt Luongo (Keep)、James Prestwich (Integral)、Robbie Bent (Truebit)、and Zaki Manian (Cosmos) 对本文的贡献。


注:完成本文的初稿之后,我发现 Trent McConaghy 早在 20 个月之前提出了类似的框架。特此感谢 Trent 对本文的贡献。



原文链接: https://medium.com/multicoin-capital/models-for-scaling-trustless-computation-dfef4b54809f
作者: Kyle Samani
翻译&校对: 闵敏 & 阿剑


本文由作者授权 EthFans 翻译及再出版。



你可能还会喜欢:

观点 | 个人见解:早期互联网vs当今区块链
科普 | 简述Polkadot和区块链互联网
TrueBit:一个可扩展的去中心化计算的代码执行法庭


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存