区块链 2024-02-19 16:07:19
【#区块链# #区块链的局限性:为什么我们需要无状态基础设施?#】
作者:polynya 来源:mirror 翻译:善欧巴,
我承认,我曾多次高谈阔论严格的全球共识机制,并将其吹捧为区块链的唯一特性。但我很少提及替代方案,因为我刻意避免讨论基础设施(infra)。对基础设施的执着吞噬了整个加密货币领域,以至于其他一切都黯然失色。然而,我意识到人们只关注区块链基础设施,却鲜少谈及无状态基础设施 (stateless infra) - 也许是因为没有无状态基础设施可以宣传吧。因此,我现在打算少一些负罪感,来谈谈无状态基础设施。
首先,让我们定义一下“无状态基础设施”。有些人可能会说 UTXO、DAG 或任何链都是无状态的。另一些人可能认为具有无状态客户端的链是无状态的。甚至我称为无状态的一些解决方案也存在状态 - 尽管形式不同于区块链。所以,也许我们需要一个更好的术语来描述这种类型的基础设施,欢迎在 Farcaster 上与 @polynya 交流建议。
然而,就本文而言,我们将坚持以下定义:区块链 = 任何实现实时严格全球共识的链(包括 rollups);无状态基础设施 = 不是链,没有共识(或松散共识),但与上述区块链进行交互的分布式补充.
随着我们进入一个使用区块链仅用于严格全球共识,且主要用于金融和身份识别的混合应用的新世界,我们将看到几乎所有计算、数据等都发生在非区块链基础设施上。
但首先,我们需要改变讨论无状态基础设施时的视角。在区块链世界中,我们习惯了诚实多数假设,因此尽可能运行更多的节点是非常重要的。然而,在区块链之外,大多数情况下都是基于诚实少数假设进行操作的 - 只要有一个诚实的参与者,那就万事大吉。
我认为我们可以将这些大致分为三类:
1. 服务器 - 这个很明显,也是大家熟悉的类型。
2. 具有冗余的服务器 - 添加冗余功能,允许任何人启动服务器,就可以实现一定程度的去中心化,同时保持传统服务器的最大效率。
3. 无状态基础设施 - 这本身是一个广泛的类别。它们是最大程度去中心化的结构,点对点运行,但没有共识(或松散共识)。因此,你采取“诚实少数假设”,即使只有 10-100 个节点的网络也完全去中心化。但它也存在某些类型的无状态基础设施,只有一个节点,但通过有效性证明,它们不需要更多节点。(这些被称为 ZK 共处理器) 无状态基础设施可以实现许多错误地归于区块链的功能——去中心化、隐私、可审计性、永久性——但没有共识的负担。通过称之为“无状态”,我们可以感觉到它们与区块链有些关系,但它们没有状态(PS:它们可以有一个状态,但不是像我们与区块链相关联的实时严格共识状态和严格状态转换),因此不会达成共识。再次,这是一个非常广泛的类别,我相信我们会看到许多不同的解决方案。IPFS、BitTorrent、Farcaster Hubs、ZK 共处理器都可以被认为是无状态基础设施的形式。
如今,区块链效率极低,对于相同的计算,其开销可能是服务器的数万倍。有了有效性证明和数据可用性采样等新技术,我们可以将效率提高数千倍,但即使是使用 DAS 进行结算的最终 ZK rollup,整体开销可能也会高出 100 倍。
如今,“web2”运行在 1 亿多台服务器上。我们对去中心化计算的看好程度因人而异。巨型链最大主义者最不看好,认为 1 条链可以处理大部分计算。更乐观的人会告诉你,所有计算的 1% 将迁移到去中心化计算,而最乐观的人会说 10%。
但让我们以 0.01% 为例,这比巨型链最大主义者要乐观一点,但仍然相当悲观。这将需要相当于 10,000 台服务器。再加上链带来的所有低效,你可能需要一百万条链。
有了 ZK 技术,实际上可以扩展到一百万条链,具有通用同步可组合性和共享安全性——这比巨型链 literally 提高了一百万倍。
但是这还不够。让我们以 Palworld 等多人游戏为例。据他们的开发者称,每月服务器成本为 50 万美元。将其全部运行在终极效率的区块链解决方案 ZK rollup 上,将花费数百万美元,使其在财务上不可行。(正如上面提到的,如果没有 ZK 技术,这样的用例是完全不可能的)
相反,我们必须采用一种混合方法,同时保持去中心化。多人游戏可以在很大程度上实现点对点运行,游戏客户端运行在每个人的电脑或控制台上,实际上运行着一个庞大的去中心化网络。某些内容需要在服务器上协调 - 这些内容可以转移到点对点无状态基础设施上。需要可验证但不需要共识的东西可以在 ZK 共处理器上运行。最后,需要严格全球共识的东西可以在 ZK rollup/validiums 上运行。
最后,值得注意的是,在无状态基础设施上跨越多个内核和多个机器进行并行化要容易得多,这可以导致指数级更高的扩展。
这仍然会比 50 万美元的成本高得多,但通过为每个任务使用最有效的解决方案,同时保持去中心化,我们可以实现今天根本不可行,即使未来使用最先进的 ZK 形式的区块链也无法实现的新用例。
今天,我们处于一个非常严格的范式中。无论是 L1 还是 L2 都无关紧要 - 对单个链(实际上是单个服务器)的硬件限制极其有限。我们已经看到一个接一个的 L1 和 L2 在非常短的时间内达到极限并变得拥塞,即使是最快的链也最多只能每秒处理几千个交易。
通过使用有效的证明等新技术,我们可以开始使用多个链,同时保持安全性可组合性,这已经是一个巨大且无限的进步。
利用无状态基础设施,我们可以走得更远。
通过将所有这些结合起来,我们可以开始实现如果没有这些技术就无法实现的应用程序。
无状态基础设施实际上可以比区块链更加去中心化。实现严格的全球共识是一个极其困难的过程,需要昂贵的抗女巫攻击机制和诚实多数假设。区块生产机制充其量是一种富人统治 (权益证明),充其量是一种公司统治 (工作量证明)。这些区块链通过节点运行来缓解这个问题,但它们仍然基于诚实多数假设,并且需要数千个节点才能使共识形成过程达到任何级别的弹性。
虽然无状态基础设施会出现各种不同的形式,但大多数都只需要诚实少数假设就可以运作良好 - 只要有一个节点,一切都好。因此,它们可以用更少的节点实现更高的去中心化,同时减少故障点和中心化。
简而言之,如果不需要严格的全球共识,那么点对点的无状态基础设施比区块链既高效又更加去中心化。
是时候停止争论区块链基础设施,开始构建新的、由无状态基础设施赋能的应用程序了。
欢迎在 Farcaster 上进一步讨论,@polynya。顺便说一句,Farcaster 是一个只能使用无状态基础设施构建的应用程序的一个很好的例子,它解释了为什么它能够成功,而像 Steem 或 DeSo 等仅基于区块链的同行却失败了。更多像 Farcaster 这样的应用,更少 L1 和 L2。