Gavin Wood:以太坊至今最大的成就是创造了最多的百万富翁,Polkadot 至今最大的成就也是其最大的问题!

文摘   2024-11-28 00:01   中国香港  

加入 PolkaWorld 社区,共建 Web 3.0!

Gavin Wood,以太坊联合创始人、Polkadot 的缔造者以及 Web3 的愿景推动者。在上周一个长达 3 小时的专访中,他揭示了区块链技术未来的奥秘。PolkaWorld 将分几部分陆续发布出来,本文是第三部分!



在正式开始之前,先分享 Gavin 在这一部分的一些名言警句!


以太坊至今最大的成就是什么?—— 也许是 CryptoKitties 吧,我不知道,其实不太确定。我听说以太坊创造了历史上最多的百万富翁。


以太坊是一个成功的项目?—— 如果按照我的成功标准来看呢?显然不是所有标准都符合,甚至可能只有很少一部分符合。当然,它在财务上是成功的。


随着 JAM 的引入,Polkadot 的方向发生了变化。它可以被视为一种原生设计的 Rollup 托管链,而我们开发的技术远优于以太坊上的乐观 Rollup 和零知识 Rollup。


Polkadot 到目前为止最大的成就是什么?—— 实现了一个安全的分片区块链。

Polkadot 今天面临的最大问题是什么?—— 正是分片。

如何解决这些问题?—— JAM


继续阅读,查看全部内容!




以太坊至今最大的成就是什么?


Kevin:所以你说你在 2014 年联合创立了以太坊?为什么你以联合创始人和首席技术官的身份加入他们?


Gavin:我觉得这是一个难得的机会,立刻意识到我应该抓住它,全力以赴投入其中。或许不一定是投入一辈子,但至少在未来一段时间里倾注全部精力。这是一个在恰当时机涌现的创新项目,团队中有一些能力出众且专注的人,同时也有一个虽小但对新事物充满兴趣并愿意尝试的市场。坦白说,我对这个项目充满了好奇,我觉得它非常有潜力,可以发展得很远,并且至少能够为我所理解的启蒙自由主义原则做出贡献。


Kevin:那是什么?


Gavin:基本上是关于社会和发展的乐观主义观点,这种思想大概是在四五百年前的西方发展起来的。


Kevin:以太坊至今最大的成就是什么?



Gavin:也许是 CryptoKitties 吧,我不知道,其实不太确定。我听说以太坊创造了历史上最多的百万富翁。可能是因为众筹时参与的人很多,而价格后来涨得足够高。所以可能这就是它最大的贡献。但老实说,很难说它是否真的实现了多少有用的东西。肯定没有达到我 10 年前我对它的期望。


Kevin:所以如果我问你,你是否认为以太坊是一个成功的项目?你的答案是否定的?


Gavin:我的回答是,我个人认为它算成功吗?如果按照我的成功标准来看呢?显然不是所有标准都符合,甚至可能只有很少一部分符合。当然,它在财务上是成功的。我想也许有一两个以太坊创始人可能原本预期它的表现会更好。


Kevin:有哪些标准能让你认为它是成功的?


Gavin:效用(Utility)


Kevin:如何衡量效用?


Gavin:衡量效用的方式是看,有多少事情是人们现在能够做到,而过去无法做到的。


Kevin:这是不是整个加密行业的问题,而不仅仅是以太坊的问题?


Gavin:确实如此。这的确是整个加密行业面临的问题。2014 年和 2015 年的时候,我们提出了很多设想,试图通过“无需信任”的方式解锁一些原本无法触及的经济领域。其中一个我特别喜欢的例子是供应链。比如,当你去超市时,所有商品上都有一个二维码,你可以扫描二维码,了解这个商品的所有组成部分:何时、何地、以及数量等等。我希望在买一件 T 恤时,能够知道它的棉花是从哪里来的。


现在,这种事情在中心化的模式下非常难实现,成本也很高。但如果采用去中心化的方式,我觉得是有可能的。然而,这种应用并没有真正部署起来。目前虽然有一些与供应链相关的加密项目,但它们非常小众,仅限于特定市场的细分领域。它并没有兑现这个方向上的承诺。


而且这不仅仅是供应链的问题,我觉得加密行业的想象力很丰富,但很难把这些想象转化为现实的行动和真正的市场应用,这确实让人遗憾。我认为主要原因不是技术问题,尽管技术确实落后于我们的构想,尤其是底层技术需要很大的改进。这也是为什么我现在在做 JAM,试图改善底层技术,使其能支撑那些我认为有价值的想法,并帮助加密行业发挥更大的作用


但仅仅改进技术是不够的。你还需要让人们理解它的价值所在。而这很难,部分原因是你在与注意力经济作斗争




为什么离开以太坊?


Kevin:为什么你在 2016 年离开了以太坊?



Gavin:其实是在 2015 年底。当时我们决定以太坊需要做很多事情才能被更广泛地普及。我们在寻找外部投资,而最明显的方式之一就是创立一个与以太坊相关的初创公司,并为其寻求外部资金支持。这最初是 Vitalik 和 Jeff(核心开发者和工程师)共同决定去做的。


后来,Jeff 并不太适应初创公司的生活。实际上,他很快就离开了以太坊,转而去追求他的电子游戏事业。这样一来,最终就只剩下 Vitalik。Vitalik 认为他有必要继续留在以太坊基金会,并担任更偏学术的角色,同时作为我们当时创立的分支公司 Ethcore 的顾问。


我们当时筹集了一些资金,把以太坊基金会大约一半的技术团队带到了 Ethcore,并开发了一个以太坊客户端。我在 2015 年底离开以太坊基金会,实际上是为了创立这个分支公司,目的是在以太坊生态内增加一个有私人资金支持的实体。


不过,我真正完全离开以太坊生态是 2017 年末,当时我创立了 Polkadot。




Polkadot 正在开发一种 Rollup 技术


Kevin:如果要向你妈妈解释 Polkadot 是什么?你会怎么说?


Gavin:嗯... Polkadot 这些年来发生了一些变化。最初的愿景是将不同的区块链架构整合在一起,让它们能够互相兼容,并共享同一个安全框架。通过这样的共享安全框架,可以显著提高经济效益。例如,如果设计得当,可以用相同的成本同时保护 100 条链,而不是像其他设计(比如 Cosmos)那样每条链都需要独立保护。


多年来,Polkadot 一直试图在这个方面与 Cosmos 区分开。因为在 Cosmos 的模式中,每条链都需要自己承担安全性。而 Polkadot 则通过共享安全来解决这个问题。但遗憾的是,这两者实际上在解决非常不同的问题。回想起来,我可能会更倾向于将 Polkadot 描述为一个“分片系统”,而不是“多链系统”。回过头来看,这种表述在解释和传达 Polkadot 的核心理念时非常关键。特别是在与他人沟通或推广 Polkadot 时,这种区别有助于更清晰地描述它的技术特性和与其他项目(如 Cosmos)的不同之处。


现在,随着 JAM 的引入,这个方向发生了一些变化我们为 Polkadot 开发的技术可以被视为一种 Rollup 技术,而 Polkadot 本身可以被认为是一个专门设计的 Rollup 托管链。这种技术的开发和设计并不简单,所以也不意外我们会看到其他两种竞争技术在效果上远远不及我们为 Polkadot 开发的技术。具体来说,是乐观 Rollup(Optimistic Rollups)和零知识 Rollup(ZK Rollups),这两种技术都已在以太坊上使用。因此,我们可以将 Polkadot 描述为一种原生的 Rollup 托管链 —— 当然,这种说法可能不适合向妈妈解释,但对于对加密领域有所了解的人来说是可以的。


通过 JAM,也就是 Polkadot 的下一步发展目标,我们试图将 Polkadot 从一种多链模型转变为一种更通用的计算资源模型。在多链模型中,Polkadot 的不同链(在 Polkadot 体系中被称为平行链)共享同一个安全框架,能够相互交互。而在新的模型中,我们的目标是进一步扩大 Polkadot 的适用范围,就像以太坊将比特币的基础功能扩展成了一个通用计算资源一样。我们希望移除过多的主观设计限制,让 Polkadot 支持更广泛的用例。


那么 Polkadot 的未来是什么?从根本上来说,它将成为一个大型的共享计算机,始终以你期望的方式运行。在这个共享计算机上,你可以上传程序运行,这些程序可以是解决特定问题的服务。由于这是一个共享计算机,这些服务能够相互协作和协调。


关键在于,这是一台单一的大型共享计算机。我们不想做的是将其分割成不同的部分,而这些部分却无法真正互相交互。




Polkadot 至今最大的成就是其最大的问题


Kevin:我想你可能指的是我们都知道的一个事实,而这在今天的以太坊生态系统中实际上引发了很多困惑。那么,Polkadot 到目前为止最大的成就是什么?


Gavin:实现了一个安全的分片区块链。


Kevin:Polkadot 今天面临的最大问题是什么?


Gavin:它是分片的。


Kevin:这具体是什么意思?


Gavin:分片一直被认为是区块链扩展的“圣杯”,它的概念来源于数据库设计。在数据库中,你可以将一个数据库(本质上是一组记录)拆分成多个分片。每个分片独立运行,只有在一些非常明确的接口情况下,分片之间才能进行交互,例如某个记录可能会从一个分片移动到另一个分片。


一个简单的物理例子可以帮助理解。想象一下上世纪 60 年代的办公室,比如医生的诊所,里面有病人的医疗记录。这些记录通常存放在旧式的抽屉中。如果记录只有 20 个人的,可能一个抽屉就可以装下,并且很容易按字母顺序整理。但如果记录超过一个抽屉的容量,比如有更多的人,你就需要将记录分散到多个抽屉中。如果抽屉数量继续增加,比如需要四个或五个抽屉,那么你甚至需要多个文件柜。


每个文件柜的抽屉可以被视为一个分片。它们彼此独立运行:你可以打开一个抽屉而不用打开其他抽屉,也可以在一个抽屉中搜索,而不必查看所有抽屉。这与只有一个特别长的抽屉(比如 10 米长的抽屉)形成对比。如果只有一个长抽屉,那么使用起来显然不太实际,因为你需要一个 10 米长的房间来容纳它。而当你要找某个名字开头是 “W” 的人时,你可能得把整个抽屉拉出来,然后沿着抽屉一路走到 “W” 的位置,这显然效率低下。


因此,从这个角度来看,分片的设计是合理的。然而,这也带来了问题。比如,如果某个抽屉装满了怎么办?你可能需要重新调整记录的分配,比如将原本属于 A 到 E 的记录改为 A 到 D,然后把以 E 开头的记录移到下面的抽屉。但这可能导致下一个抽屉也装不下,于是你还需要调整,而每次调整还要更改抽屉外面的标签。这整个过程会变得复杂而麻烦。



所以,分片也带来了它自身的一系列问题。


核心在于,这些“抽屉”(分片)是独立运行的,无论是在分片区块链设计还是数据库设计中都是如此。本质上,数据被拆分后会一直保持分片状态,除非你执行一个非常特殊的操作,这通常非常耗时、昂贵且资源密集,才能将记录或数据从一个抽屉(分片)移动到另一个抽屉(分片)。这意味着在单个抽屉中重新组织记录可能很容易,但在不同抽屉之间重新组织记录则非常困难。这正是分片的问题所在。对于数据来说,这个问题可能不算严重,这也是为什么分片在数据库设计中被广泛采用。但对于服务来说,比如需要频繁交互和变化的智能合约,这种方式并不理想。如果智能合约被视为放在抽屉里的对象,而你希望让一个抽屉里的智能合约与另一个抽屉里的智能合约交互,就需要同时打开两个抽屉。这意味着,你需要将两个抽屉拉出来,让它们彼此连接在一起,执行所有智能合约需要的交互操作,然后再将它们分开,重新放回各自的抽屉。这种过程复杂且低效,非常不适合需要频繁交互的应用场景。


如果你只是在两个抽屉之间操作,已经够难了,但如果你想让多个抽屉同时交互,那就会变得非常复杂、非常困难。这样做的一个问题是,你阻止了抽屉之间的自由互动,这意味着抽屉里的其他智能合约只能遵循这个单一的交互模式。整个系统很快就会变得复杂、困难且低效。


另一种做法是让抽屉之间通过发送消息来通信。一个抽屉(分片)可以发布一条消息,稍后这条消息会传递到另一个抽屉。这正是 Polkadot 使用 XCM(跨共识消息传递)所做的事情。虽然这种方式可以用,但问题在于,它无法实现那种紧密、高效、灵活的交互,远不如所有东西都在同一个空间或“游乐场”中运行时那么流畅。


举个例子,假设一个学校有四个不同的游乐场,这对应于四个不同的区块链。如果你在其中一个游乐场玩“捉迷藏”游戏,那完全没问题,游戏可以顺利进行。但如果你要跨两个游乐场玩“捉迷藏”,就会变得非常困难。你需要向另一个游乐场发送一条消息,比如“现在我是捉的人,如果你进入这个区域,我会抓住你。”而另一个游乐场的玩家需要知道,但又不能完全理解,整个游戏很快就会变得混乱。


所以,捉迷藏是一个只能在同一个游乐场玩的游戏。这正是分片之间的问题所在,跨分片的交互就像试图跨游乐场玩游戏,难以高效进行。



如果某些解决方案必须以非常异步的方式运行,那让它们正常工作就会变得非常困难。就像只能通过消息来进行游戏一样。如果是像国际象棋这样的游戏,也许不会太难;但如果是像捉迷藏这样的游戏,那基本上是不可能的。


在智能合约中也是类似的情况。有些智能合约在这种模式下运行并不算太难,也许只是比正常速度稍慢一些,但问题不大。而有些应用场景,比如身份验证(KYC)就相对简单。比如你可能有一条链专门负责身份验证,另一条链处理转账。转账链可能需要确认目标地址是否通过了 KYC 和 AML 验证,然后才会执行转账。它可以发送一条消息过去,询问“这个地址是否通过了 KYC 和 AML 验证?”身份验证链回复“是的”,然后转账链执行转账。整个过程可能多花几秒钟,但问题不大。


然而,还有一些其他的用例,比如去中心化交易所(DEX),就复杂得多。比如你需要询问当前的价格,然后决定是否交易。这时你可能需要发送一条消息到另一条链,另一条链回复说“当前价格是这个,交易可以这样完成。”然后消息再返回原链,原链确认“我接受这个价格,请执行交易。”但在交易即将执行时,另一条链可能又说“价格变了,现在是这个价格。”消息就会来回传递,很快整个过程会变得非常低效,甚至无法有效完成。


像这种情况,交易必须几乎同时完成,否则就无法进行。这种现象和在游乐场玩的游戏是一样的。某些游戏,比如捉迷藏,只能在同一个空间内完成,异步交互会让游戏完全无法进行。


这实际上是区块链行业中的一个主要需求,被称为异步组合(asynchronous composition)和同步组合(synchronous composition)。同步组合是我们真正想要的,但它非常昂贵且资源密集,因为它要求所有东西都必须在同一时间、同一地点运行。就像举办一场会议一样,成本高昂,而且没有人会把一生都花在会议中。同样地,区块链也不能让所有内容都运行在同一个分片中、同一个空间里。


因此,我们需要理解这种方法是无法扩展的。那么问题是:如何在保持可扩展性的同时,依然能够提供同步组合,从而解决这些问题?这就是一个难题。单纯的扩展性,Polkadot 已经解决了,但要在保留同步组合能力的同时实现扩展性,难度就很大。



解决方案是 JAM


Kevin:有什么可行的解决方案?


Gavin:嗯,JAM 是我的提案,即 Join Accumulate Machine(聚合连接机器)。



Kevin:JAM 是什么?


GavinJAM 是一种灵活的方式,它可以将不同的“游乐场”的玩家聚集起来,创建一种临时的游乐场,让他们可以玩捉迷藏的游戏。以下是一个即兴举的例子(可能有点疯狂,抱歉)。继续用捉迷藏的例子来说:假设原本有四个固定的游乐场,在 JAM 的设计中,不再有这样的固定游乐场了。


游乐场不再是固定的,玩家也不再被束缚在某一个游乐场中,且在不同游乐场之间移动的成本也不会那么高。取而代之的是,我们拥有一个宽广的游玩区域,其中的游乐场可以快速地形成和消失。在这种情况下,我们会关注游戏中的玩家,将靠近彼此、可能互相“抓到”的玩家暂时聚集在一起,为他们创建一个临时的游乐场,在这里他们可以继续玩捉迷藏。


当这些玩家中的一部分跑出了这个临时的游乐场,我们就会重新调整游乐场的位置,根据那些依然接近彼此的玩家重新划定新的游乐场范围。如果有些玩家彼此距离很远,我们知道他们短时间内不会相互“抓到”,那么他们就不需要参与到这个游乐场中。他们暂时处于“游戏之外”的状态,直到他们重新接近其他玩家并需要参与游戏时,才会被包含进新的游乐场中。


如果我们以这种更加灵活的方式来实现系统,就可以想象一个既能扩展又能支持同步组合的系统。它的核心在于,不会永久性地将所谓的“状态”(state)分割开。换句话说,玩家不会被固定绑定在某个特定的游乐场中,而是根据需要实时动态分组。系统会根据实际需要将玩家划分到不同的组中,并根据这些分组推进游戏。


在智能合约的场景中,这个概念的实现类似于将所有智能合约放在一个共享的大“熔炉”中,但这个熔炉不是让所有合约无时无刻地互相交互,而是能够动态分区。例如,系统可以从这个熔炉中抽取 10 个、50 个或者 2 个智能合约,把它们组合在一起,让它们同步交互并运行,之后再将它们分离开。然后重新评估,挑选另一个不同的智能合约集合,再次组合运行,然后再分离。


这种方式允许我们在同一时间处理多个并行的智能合约分组,而不是只能让一个智能合约组进行同步组合和运行。通过这种并行处理的方法,我们可以显著增加系统的交互处理能力,支持比传统方式多出数百倍的交互量,从而实现真正的可扩展性。


关注 PolkaWorld,这周我们将陆续发布该专访的剩下内容!


  • PolkaWorld Telegram 群:

    https://t.me/+z7BUktDraU1mNWE1

  • PolkaWorld Youtube 频道:

    https://www.youtube.com/c/PolkaWorld

  • PolkaWorld Twitter:

    @polkaworld_org


更多内容


Acala 发起首届 Meme & dApp 大赛!近 500 万奖金池等你来赢取!

Polkadot 通胀下降至 8% 带来的网络变革与 DeFi 新机会

去中心化不是 Polkadot 的一种理想,是融入到技术、机制和社区中的一种承诺!

关注 PolkaWorld

发现 Web 3.0 时代新机遇


点个 “在看” 再走吧!

PolkaWorld
波卡(Polkadot)第一中文社区,带你寻找 Web 3.0 时代新机遇!
 最新文章