理解以太坊的Layer 2扩容解决方案:状态通道、Plasma 和 Truebit | 作者:Josh Stark | L4 博客 | Medium

  • jjmstark
  • 发布于 2019-04-14 19:24
  • 阅读 36

本文详细解释了以太坊的Layer 2扩展解决方案,包括状态通道、Plasma和Truebit,探讨了它们如何通过链下操作提高以太坊的可扩展性及其背后的经济学原理。

宾夕法尼亚州 Tunkhannock 高架铁路桥的建设(cc)。罗马工程原理正在被扩展应用于新领域。

理解以太坊的 Layer 2 扩展解决方案:状态通道、Plasma 和 Truebit

对于以太坊来说,2018年是基础设施之年。这一年,早期的采用将测试网络的极限,重新聚焦于构建扩展以太坊的技术。

以太坊仍处于幼年期。 今天,它并不安全或可扩展。任何与该技术紧密相关的人都很清楚这一点。但是,在过去的一年中,基于 ICO 的炒作开始严重夸大网络的当前能力。以太坊和 web3 的承诺——一个安全、易于使用的去中心化互联网,受一套共同经济协议的约束,供数十亿人使用——仍然在视野之内,且只有在关键基础设施建设完成之前,这一承诺才会实现

致力于构建这一基础设施并扩展以太坊能力的项目通常被称为 扩展解决方案。这些方案呈现出多种不同形式,通常相互兼容或互补。

在这篇长文中,我想深入探讨 一种 扩展解决方案类别:“链下”或“Layer 2”解决方案。

  • 首先,我们将讨论以太坊(以及所有公共区块链)面临的扩展挑战。
  • 其次,我们将介绍解决扩展挑战的不同方法,区分“Layer 1”和“Layer 2”解决方案。
  • 第三,我们将深入探讨 Layer 2 解决方案,并解释它们的工作原理——具体来说,我们将讨论状态通道Plasma ,和 Truebit

本文旨在为读者提供对 Layer 2 解决方案工作原理的透彻和详细的 概念 理解。但我们不会深入代码或具体实现。相反,我们专注于理解用于构建这些系统的经济机制,以及所有 Layer 2 技术所共享的共同见解。

1. 公共区块链的扩展挑战

首先,重要的是要理解“扩展”并不是单一的、具体的问题。它指的是一系列必须克服的挑战,以使以太坊与全球数亿用户群体有用。

最常讨论的扩展挑战是交易处理能力。目前,以太坊每秒大约可以处理15笔交易,而相比之下,Visa每秒处理约45,000笔。在过去一年中,一些应用——如 Cryptokitties 或偶尔的 ICO —— 的受欢迎程度足以“减慢”网络并提高Gas费用。

核心限制在于像以太坊这样的公共区块链要求每笔交易必须由网络中的 每一个节点 处理。 在以太坊区块链上进行的每一个操作——一笔支付、一只 Cryptokitty 的诞生、新的 ERC20 合约部署——都必须由网络中的每个节点并行执行。这是有意为之——这正是公共区块链权威性的部分原因。节点不必依赖于其他人 告诉他们区块链的当前状态——他们自己搞明白。

这给以太坊的交易处理能力设定了基本限制: 它不能高于我们愿意要求单个节点所需的工作量。

我们 可以 要求每个单独的节点完成更多的工作。如果我们将区块大小(即区块 gas 限制)加倍,那么每个节点在处理每个区块时所需的工作量将大致翻倍。但这会以中心化为代价:要求节点完成更多的工作意味着性能较弱的计算机(如消费设备)可能会退出网络,挖矿变得更加集中。

相反,我们需要一种方法,使区块链能够 做更多有用的事情,而不增加单个节点的工作量。

从概念上讲,我们可以通过两种方式来解决这个问题

I. 假如每个节点 不必 并行处理每个操作呢?

第一种方法拒绝了我们的前提——假设我们能构建一个区块链,让每个节点不必处理每个操作怎么说呢?例如,网络可以分为两个部分,它们能够半独立地运作?

A 部分可以处理一批交易,而 B 部分处理另一批。这将有效地将区块链的交易处理能力翻倍,因为我们的限制现在是同一时间可以被 两个 节点处理。如果我们能够将区块链分成许多不同的部分,我们就可以多倍提高区块链的处理能力。

这就是以太坊的 分片 解决方案背后的见解,维塔利克正在推动这一项目。区块链分成不同的部分,称为 分片,每个部分可以独立处理交易。分片通常被称为 Layer 1 扩展解决方案,因为它在以太坊自身的基础协议中实现。如果你想学习更多关于分片的内容,我推荐这个详尽的常见问题解答这篇博客文章

II. 假如我们能在以太坊现有的能力中挤出更多的 有用操作 呢?

第二种选择则朝相反的方向发展:与其提升以太坊区块链自身的容量,假设我们能利用已有的容量去做更多的事情 基础层以太坊区块链的处理能力将保持不变,但实际上我们将能够执行许多对人们和应用有用的操作——如交易、游戏中的状态更新或简单计算。

这是 链下 技术的见解状态通道 Plasma Truebit 虽然这些技术解决不同的问题,但它们都通过在链下执行操作而不是在以太坊区块链上执行,同时仍然保证足够的安全性和确定性。

这些也被称为 Layer 2 解决方案,因为它们是在以太坊主链“之上”构建的。它们不需要对基础级别协议进行更改——相反,它们仅仅作为智能合约在以太坊上存在,与链下软件进行交互。

2. Layer 2 解决方案是 加密经济 解决方案

在深入具体的 Layer 2 解决方案之前,理解使它们成为可能的基本见解非常重要。

公共区块链的基本力量在于加密经济共识。通过仔细调整激励,使其通过软件和加密保护,我们可以创建计算机网络,从而可靠地达成系统内部状态的共识。这是中本聪白皮书的关键见解,现在已经应用于许多不同公共区块链的设计,包括比特币和以太坊。

加密经济共识为我们提供了一个 核心的确定性内核——除非发生51%攻击等极端情况,我们知道链上操作(如支付或智能合约)将按要求执行。

Layer 2 解决方案背后的见解在于,我们可以利用这一核心内核作为 —— 一个我们附加额外经济机制的固定点。 这一 第二 的经济机制可以向外扩展公共区块链的实用性,使我们能够在 链下 进行交互,但如果有必要时仍能够可靠地回溯到这一核心内核。

这些在以太坊“上面”构建的层并不总是具有与链上操作相同的保证。但它们仍然可以 足够确定和安全,以至于非常有用——尤其是当这种确定性的轻微下降让我们能够更快速或更低成本地执行操作时。

加密经济并不是开始和结束于中本聪的白皮书——它是一整套我们正在学习应用的技术。 不仅是在核心协议的设计中,也是在培训第二层系统的设计中,这些系统扩展了底层区块链的功能。

I. 状态通道

状态通道是一种在“链下”进行交易和其他状态更新的技术。然而,发生在状态通道“内部”的事情仍保留了很高的安全性和确定性:如果出现问题,我们依然可以选择参考链上交易中的“硬内核”来解决。

大多数读者熟悉 支付通道 的概念,支付通道出现了好几年,并最近通过 Lightning Network 在比特币中实现。状态通道是支付通道的更 通用 的形式——它们不仅可用于支付,还可用于区块链上任何任意的“状态更新”——如智能合约内部的变化。状态通道在2015年由杰夫·科尔曼首次详细描述

解释状态通道如何工作最好的方式是通过具体例子。请记住,这是一个概念上的解释,意味着我们不会深入到具体实现的技术细节。

想象一下,Alice和Bob想要玩一局井字棋,胜者将获得1个以太币。做法很简单,就是在以太坊上创建一个智能合约,实施井字棋的规则,并记录每位玩家的走法。每当一名玩家想要走一步时,他们就会向合约发送一笔交易。当一名玩家胜出,并按照规则确定胜者后,合约将向胜者支付1个以太币。

这可以实现,但效率低且速度慢。Alice和Bob正为了他们的游戏让 整个以太坊网络 进行处理,这可能严重超出了他们的需求。每次玩家想要行动时都必须支付Gas费用,并且他们必须 等待 区块被挖掘才能进行下一次操作。

相反,我们可以设计一种系统,以最少的链上操作让Alice和Bob进行井字棋游戏。 Alice和Bob将能够在 链下 更新游戏的状态,而仍然对需要回到以太坊主链充满信心。我们称这个系统为“状态通道”。

首先,我们在以太坊主链上创建一个智能合约“法官”,该合约理解井字棋的规则,并能够识别Alice和Bob是我们游戏的两个玩家。这个合约持有1个以太币的奖品。

然后,Alice和Bob开始玩游戏。Alice创建并签署一笔描述她第一个动作的交易,并将其发送给Bob;Bob也会签署交易,将签署后的版本还给Alice,并保留一份副本。然后Bob创建并签署一笔描述他的第一个动作的交易,并发送给Alice;Alice也会签署回去,并保留一份副本。每一次,他们都在之间更新游戏的当前状态。每个交易都包含一个“nonce”,这意味着我们事后总能得知动作发生的顺序。

到目前为止,这些操作都没有发生在链上。 Alice和Bob只是通过互联网相互发送交易,但没有任何交易实际落到区块链上。然而,所有这些交易都 可以 被发送到法官合约——换句话说,它们是有效的以太坊交易。你可以把这想象成两个人在彼此之间反复写一系列区块链认证的支票。没有真正的资金被存入或提取,但每人都有一叠支票,他们 可以 随时存入。

当Alice和Bob玩完游戏——可能是Alice获胜——他们可以通过提交最终状态(例如一系列交易)向法官合约 关闭 频道,只需支付一笔交易费用。法官确保该“最终状态”由双方签名,并等待一段时间,以确保没有人能够合法挑战结果,然后将1个以太币的奖励支付给Alice。

为什么我们需要“挑战期”,让法官合约等待?

想象一下,如果Bob没有向法官发送 真实 最终状态,而是发送了一份 版本的状态——一份他领先Alice的版本。法官只是一个傻合约——就其自身而言,它根本无法判断这是否是最新状态。

挑战期使得Alice有机会 证明 给法官合约,表明Bob撒谎关于游戏的最终状态。如果有更近的状态,那么她会拥有签名的交易副本,并可以将这些副本提交给法官。法官可以通过查看 nonce 确定Alice的版本更近,而Bob试图窃取胜利的行为会被拒绝。

特性与局限性

状态通道在许多应用中是有用的,其中它们在链上操作上呈现出显著优势。然而,在决定某个应用是否适合进行通道化时,牢记所做的特定权衡非常重要:

  • 状态通道依赖可用性。如果Alice在挑战期间失去互联网连接(或许是因为Bob,急于获得奖品,破坏了她家的网络连接),她可能无法在挑战期结束前做出回应。不过,Alice可以支付其他人保留她的状态副本并代表她保持可用性。
  • 对于参与者必须在较长一段时间内进行 多次 状态更新的场合尤其有用。 这是因为在 创建 通道(即部署法官合约)时会产生初始费用。但一旦部署,通道内每次状态更新的成本非常低。
  • 状态通道最佳用于定义参与者集的应用。 这是因为法官合约必须始终知道特定通道内参与的实体(即地址)。我们可以添加和移除参与者,但每次都需要对合约进行更改。
  • 状态通道具有强隐私属性, 因为一切都发生在参与者之间的“内部”,而不是公开广播并记录在链上。只有开通和关闭交易必须是公开的。
  • 状态通道具有即时确定性, 这意味着一旦双方签署状态更新,它可以被视为最终。双方都有非常高的保证,如果有必要,他们可以“强制执行”该状态到链上。

在 L4,我们正在构建Counterfactual**:一个用于以太坊上通用状态通道的框架。我们的通用模块化实现将使开发者能在其应用中使用状态通道,而无需自己成为状态通道专家。你可以在此读到更多关于该项目的信息。我们将在2018年第一季度发布描述我们技术的论文。

以太坊的另一个值得注意的状态通道项目是 Raiden,它目前专注于构建的 支付 通道,采用类似于 Lightning Network 的范例。这意味着,与其要与特定的个人进行交易时单独开通一个渠道,不如与一个连接到更大网络的实体开通单通道,从而允许你向属于同一网络的任意其他人付款而无需额外费用。

除了 Counterfactual 和 Raiden,其他以太坊上还有几个针对特定应用的通道实现。例如,Funfair 为其去中心化赌博平台构建了状态通道(他们称之为“Fate channels”),而 Spankchain 为成人表演者构建了单向支付通道(他们还为其 ICO 使用了状态通道),Horizon Games 在其第一个基于以太坊的游戏中也使用了状态通道。

II. Plasma

在2017年8月11日,维塔利克·布特林和约瑟夫·普恩发布了一篇名为Plasma:自主智能合约的论文。这篇论文介绍了一种新颖的技术,可以使以太坊达到比目前更高的每秒交易量。

像状态通道一样,Plasma也是一种进行链下交易的技术,同时依赖基础以太坊区块链来确保其安全性。但是,Plasma将这一想法推向了新方向,允许创建连接到“主”以太坊区块链的“子”区块链。 这些子链可以再孵化它们自己的子链,这样循环往复。

结果是,我们能够在子链层执行许多复杂的操作,运行具有数千用户的整个应用,仅与以太坊主链进行最小的交互。一个 Plasma 子链可以更加迅速,并收取更低的交易费用,因为对其的操作无需在整个以太坊区块链上重复。

plasma.io/plasma.pdf

为了理解 Plasma 的工作原理,让我们通过一个例子来说明如何使用它。

假设你正在以太坊上创建一个交易卡片游戏。这些卡片将是 ERC 721 非同质化代币(如 Cryptokitties),但具有某些功能和属性,允许用户相互对战——如同炉石传说或万智牌。这种复杂的操作在链上进行成本较高,因此你决定在应用中使用 Plasma。

首先,我们在以太坊主链上创建一组智能合约,作为我们 Plasma 子链的“根”。 Plasma 根包含我们子链的基本“状态转换规则”(例如“交易不能花费已经被花费的资产”),记录子链状态的哈希,并充当一种“桥梁”,使用户能够在以太坊主链和子链之间移动资产。

然后,我们创建我们的子链。子链可以有自己的共识算法——在这个例子中,假设它使用权威证明(PoA),一种简单的共识机制,依赖于受信任的块生产者(即验证者)。块生产者类似于“工作量证明”系统中的 矿工——它们是接收交易、形成块和收集交易费用的节点。让我们保持这个例子简单,假设你(开发游戏的公司)是 唯一 创建块的实体——即你的公司运行了一些节点,作为我们子链的块生产者。

一旦子链创建并激活后,块生产者定期承诺给根合约。这意味着他们实际上是在说“我承诺子链中的最近区块是 X”。这些承诺被记录在 Plasma 根上,作为对在子链上发生事情的证明。

现在,子链准备就绪,我们可以创建我们交易卡片游戏的基本组成部分。这些卡片本身是ERC721代币,最初在以太坊主链上创建,然后通过 Plasma 根转移到子链。这一点极为关键:Plasma 让我们扩展与基于区块链的数字资产的交互,但这些资产应首先在以太坊主链上创建。 然后,我们在子链上部署实际的游戏应用智能合约,其中包含游戏的所有逻辑和规则。

当用户想要玩我们的游戏时,他们 仅与子链交互 他们可以持有资产(ERC721 卡片),换取以太币、与其他用户进行比赛——无论我们的游戏允许他们做什么——而无需直接与主链交互。因为只有少量节点(即块生产者)需要处理交易,所以费用可以大大降低,操作速度更快。

但是,这怎么确保安全性呢?

通过将更多操作移出主链并移至子链,很明显我们可以执行更多操作。但它的安全性如何?发生在子链上的交易是否被视为最终?毕竟,我们刚描述的是一个 单一实体 控制我们子链的块生成过程。难道这不是中心化吗?该公司难道不能随意盗取你的资金或收走你的收藏卡吗?

短答是,即使是在 单一实体控制子链上100%块生成的情况下,Plasma 仍然给你一个基本保障,即 你始终可以将你的资产和资金提回主链。 如果块生产者开始恶意行为,最坏的情况也是迫使你离开子链。

让我们通过几种不同方式来看看块生产者可能的不当行为,以及 Plasma 如何处理这些情形。

首先,想象一个块生产者试图通过撒谎欺骗你——通过创建一个 虚假的 新区块,让你的资金突然受到他们控制。 他们是 唯一 的块生产者,因此他们可以随意引入一个实际上不符合我们区块链规则的新块。和其他区块一样,他们需要向 Plasma 根合约公布包含此区块证据的承诺。

如前所述,用户始终有一个最终保证,他们可以将资产提回到主链。在这种情境下,用户(或代他们行动的应用)将检测到尝试盗取,并在块生产者尝试利用他们“窃取”的资产之前撤回。

Plasma 还创建了一种机制,以防止在提回主链之前发生欺诈。Plasma 包含一种机制,任何人——包括你——都可以将 欺诈证明 发布到根合约,以试图证明块生产者作弊。这个欺诈证明将包含关于之前区块的信息,并能够显示根据子链的状态转换规则,虚假区块并未正确遵循之前的状态。如果证明了欺诈,子链将“回滚”到之前的区块。更好的是,我们构建了一个系统,任何签署虚假区块的块生产者都会因为失去链上存款而受到惩罚。

plasma.io/plasma.pdf

但提交欺诈证明需要访问底层数据——即用以证明欺诈的区块实际历史。如果块生产者 没有共享之前区块的信息,让Alice无法提交欺诈证明到根合约,现在该怎么做?

在这种情况下,Alice的解决方案是提出资金并退出子链。Alice实际上是向根合约提提交“资金证明”。在一段延遏期后,如任何人可以对她的证明提出质疑(例如验证她在后来的合法区块中确实花费了这些资金),Alice的资金将被转移回以太坊主链。

plasma.io/plasma.pdf

最后,块生产者可以 审查 子链用户。 如果他们愿意,块生产者可以简单地从不在其块中包含某些交易,实际上阻碍某个用户在子链上进行任何操作。在这种情况下,再次出路就是将所有资产撤回到以太坊主链,如上所述。

然而,撤回本身带来了风险。其中一个担忧是,如果使用子链的每个人都试图同时撤回,发生大规模撤回时,以太坊主链可能处理不了所有交易,这样用户 可能 会失去资金](https://www.reddit.com/r/ethereum/comments/6sqca5/plasma_scalable_autonomous_smart_contracts/dlex5pa/?utm_content=permalink&utm_medium=front&utm_source=reddit&utm_name=ethereum)。尽管有许多方法可以防止这种情况,比如通过以应对撤回需求的方式延长挑战期

值得注意的是,并不 需要 由单个实体控制所有块生产者——这仅仅是在我们示例中的极端情况。 我们可以创建子链,其中块生产是由许多不同实体分配控制——也就是在实际中实现更接近公共区块链的去中心化。在这些情况下,块生产者比较少干涉以上描述的不当行为的风险,故此用户越少需要再将资产移动回以太坊主链。

现在我们已经讨论了状态通道和 Plasma,值得注意几个对比点。

其中一个差异是,当频道中的所有方同意提款时,状态通道可以执行 即时撤回。如果Alice和Bob同意关闭通道并提取其资金,只要他们都有同意最终状态,他们就可以立即提取资产。这在 Plasma 中是不可能的,因为用户必须始终经过过程提取资产,其中涉及挑战期,如上所述。

状态通道每笔交易也应该比 Plasma 便宜且更快。这意味着我们可能会在 Plasma 子链上[创建状态通道](https://www.reddit.com/r/ethereum/comments/7jzx51/scaling_ethereum_hundreds_to_thousands_of/drb930m/?context=1)。** 例如,在两个用户之间交换一系列小额交易的应用中。在子链层级建立状态通道应该比在子链上直接执行每笔交易更便宜和更快。

最后,值得注意的是,这是一个不完整的描述,遗漏了许多细节。Plasma 本身仍处于非常早期的阶段。如果你有兴趣了解更多当前关于 Plasma 的工作,可以查看维塔利克最近提出的“最小可行 Plasma”(即,简化的 plasma 实现)。台湾的一组团队正在进行相关工作,可以在this repo中找到。OmiseGo 正在为其去中心化交易所开发一种实现——他们最近发布了项目进展的更新在这里

III. Truebit

Truebit 是一种帮助以太坊进行 复杂 计算的技术。这使得它不同于状态通道和 Plasma,这两者更有用于提高以太坊区块链的总交易处理量。正如我们在开头部分讨论的,扩展是一个多方面的挑战,需要的不仅仅是高交易吞吐量。Truebit 不会让我们做 更多的交易,但它将使基于以太坊的应用能 做更多复杂的事情,同时仍然能够由主链进行验证。

这将使我们能够处理一些实用的以太坊应用,而这些计算在链上显得太昂贵。例如,验证来自其他区块链的简单付款验证(SPV)证明,这可能使以太坊智能合约“检查”是否在另一条链上发生了交易(如比特币或狗狗币)。

让我们以一个例子来说明。假设你有一些昂贵的计算——如 SPV 证明——需要在以太坊应用中执行。你不能简单地将其作为以太坊主链上智能合约的一部分来完成,因为 SPV 证明的计算成本相当高。记住,在以太坊上进行任何计算都是非常昂贵的,因为每个节点必须并行执行该操作。以太坊的区块具有一个 最大的 gas 限制,限制着可以在所有交易的组合中执行的计算量。而 SPV 证明的计算成本如此高,以至于即使它是该区块内的 唯一 交易,它也需要许多倍于 整个 gas 限制

相反,你支付 其他人 一个小费用,让他们在 链下 完成计算。 你支付给做这项工作的这个人称为 解决者

首先,解决者在智能合约中支付一笔押金。然后,你给解决者提供一份描述其需要执行的计算的说明。他们运行计算,并返回结果。如果结果正确(稍后更多的内容),他们的押金将被退还。如果结果出来显示解决者没有正确执行计算——即他们作弊或出现失误——则他们将失去押金。

但是我们如何判断结果是正确的,还是错误的呢? Truebit 使用一种称为“验证游戏”的经济机制。基本上,我们制造了一种激励,促使称为 挑战者 的其他一方检查解决者的工作。如果挑战者能够通过验证游戏证明解决者提交的结果是错误的,则他们将获得奖励,而解决者将失去押金。

由于验证游戏是在链上进行,因此不能简单地计算结果(这会与系统的整个目的相悖——如果我们 能够 在链上进行计算,那我们就不需要 Truebit)。相反,我们强迫解决者与挑战者识别出他们争议的 具体操作实际上,我们将双方共同逼入角落——找到他们就结果存在不一致的确切代码行。

Truebit 的简化概念图

一旦识别出该具体操作,其足够小以实际由以太坊主链执行。然后我们通过以太坊上的智能合约运行该操作,最终显示哪一方在说真话,哪一方在说谎或犯错。

如果你想了解更多关于 Truebit 的内容,可以在这里阅读论文,或阅读 Simon de la Rouviere 这篇博客文章

结论

Layer 2 解决方案共享一个共同的见解: 一旦我们拥有公共区块链提供的硬性确定性内核,我们可以将其用作加密经济系统的锚,这些系统扩展了区块链应用的实用性。

现在我们已经概述了一些例子,我们可以更具体地谈谈 Layer 2 解决方案如何 应用 这一洞见。Layer 2 解决方案所使用的经济机制往往是 交互性游戏:它们通过为不同方创建相互竞争的激励来工作 一个区块链应用可以假设某项声明很可能为真,因为我们为其他一方创造了强烈激励以提供信息来证明其为假。

在状态通道中,这就是我们确认通道最终状态的方式——通过给予各方相互“反驳”机会。在 Plasma 中,这也是我们管理欺诈证明和撤回的方式。在 Truebit 中,这就是我们确保解决者的诚实行为——通过给予验证者激励去证明解决者错误。

这些系统将帮助解决扩展以太坊到巨大用户基础所面临的某些挑战。一些,如状态通道和 Plasma,将提高平台的交易处理量。其他的,如 Truebit,将使得更 复杂 的计算可以作为智能合约的一部分进行,开启新的用例。

这三个例子仅代表加密经济扩展解决方案可能设计空间的一小部分。我们甚至还没有讨论正在进行的“跨区块链协议”的工作,如 CosmosPolkadot(尽管它们是否属于“Layer 2”解决方案或完全是别的东西,另有讨论的空间)。我们还应预期创造出 新的、意想不到的 Layer 2 系统,以改善现有模型或在速度、确定性以及开销之间提供新的权衡。

相比任何 特定 Layer 2 解决方案,更重要的是进一步发展使其成为可能的基本技术和机制:加密经济设计。

这些 Layer 2 扩展解决方案是对以太坊等可编程区块链长期价值的重要论据。 建立 Layer 2 解决方案的经济机制只有在区块链是可编程的情况下才可能实现:你需要一种脚本语言来编写强制执行交互游戏的程序。在比特币等仅提供有限脚本可能性的区块链上,这要困难得多(在某些情况下,可能不可能)。

以太坊使我们能够构建 Layer 2 解决方案,借此可以在速度、确定性与开销成本之间访问新的权衡矩阵。 这使得底层区块链可以为更各种的应用提供便利,因为具有不同威胁模型的不同类型应用将倾向于与不同的权衡契合。对于我们想要抵御国家等高价值交易,我们使用主链。对于数字收藏品交易,其中速度更为重要,我们可以使用 Plasma。Layer 2 使我们能够做出这些权衡 而不 损害底层区块链,保持去中心化和确定性。

此外,无法事先准确预测特定扩展解决方案所需的脚本能力是非常困难的。在以太坊设计时,Plasma 和 Truebit 尚未发明。 但由于以太坊是完全可编程的,它足以实施我们能构思出的几乎任何经济机制。

充分利用区块链技术的全部价值——通过加密经济共识创建的核心 确定性内核——的方法就是使用像以太坊这样的可编程区块链。

感谢维塔利克·布特林、乔恩·崔、马特·康登、克里斯·迪克森、哈德逊·詹姆森、德尼斯·纳扎罗夫和杰西·瓦尔登对早期草稿的评论。

  • 原文链接: medium.com/l4-media/maki...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
jjmstark
jjmstark
江湖只有他的大名,没有他的介绍。