主页 > imtoken国际版 > 以太坊二层扩容计划:状态通道、Plasma 和 Truebit

以太坊二层扩容计划:状态通道、Plasma 和 Truebit

imtoken国际版 2023-11-16 05:10:27

对于以太坊来说,它希望构建一个安全、易用、受一套通用经济协议治理、可供数十亿人使用的分布式互联网,而这一愿望只有在关键基础设施建成后才能实现。

扩张计划是什么?

致力于构建基础设施和扩展以太坊容量的项目通常被称为扩展计划。

扩展以太坊的挑战是什么?

一是重要的是要了解“缩放”不是一个单一的具体问题。 它指的是使以太坊对全球数十亿用户有用必须克服的一系列挑战;

其次,像以太坊这样的公链的核心限制是每笔交易都必须经过网络中的每个节点处理;

这对以太坊交易吞吐量设置了一个基本限制:它不能高于我们对单个节点的要求。

我们需要一种方法让区块链在不增加单个节点工作量的情况下做更多有用的事情。

根据这个概念,我们有两种方法来解决这个问题:

第 1 层扩展解决方案 - 分片

Layer 2 解决方案 - 状态通道、Plasma、Truebit

第 1 层扩展解决方案 - 分片

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

8855b044346a41ec8b7b4137c6802f6a.png

如果每个节点不需要并行处理每个操作怎么办?

A 部分可以处理一批交易,而 B 部分可以处理另一批交易。

这有效地使区块链的交易吞吐量翻倍,因为交易限制成为两个节点同时处理的交易总数。

如果我们可以将区块链分成很多部分,那么我们就可以成倍地增加区块链的交易吞吐量。

这就是分片背后的智慧,分片是 Vitalik 的以太坊研究小组和其他人正在研究的一种扩展解决方案。 区块链分为不同的部分,称为碎片,每个部分都可以独立处理交易。

以太坊合约地址创建规则_以太坊智能合约编写_以太坊智能合约取款

分片是如何工作的

解决可扩展性问题必须面对这样的想法,即区块链最多只能具有以下 3 个属性中的 2 个:

权力下放;

可扩展性;

安全;

为了增加可扩展性,我们不能仅仅通过增加区块大小和增加GAS来提高吞吐量,从而防止区块生产集中在运行在超级计算机上的节点上,造成系统障碍。

我从分片 1 中的地址向分片 10 中的地址汇款,我该怎么做?

此场景实现的工作方式如下:

1. 发送到分片 1 的交易从 Raul 的余额中扣除 100 ETH,系统等待交易完成;

2. 随后创建一个易于验证的交易收据,该收据不存储在状态中,而是存储在 Merkle 树中;

3. 包含Merkle收据作为数据的交易被发送到分片10。分片10检查这张收据是否还没有被花费;

4. 分片 10 处理交易并将 100 ETH 添加到 Jim 的余额中。 从分片 1 发送的收据已被花费的事实也会被保存;

5. 分片 10 生成新的收据,可用于后续交易。

单体控制攻击问题

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

d9dcc08f48974f9d8c6fbf05d7291b7c.png

一旦我们考虑到如上所示对网络的可能攻击,攻击者就可以创建一个恶意分片,该分片可以通过控制单个分片上的大多数整理器来提交无效的整理块。

解决方法如下:

以太坊合约地址创建规则_以太坊智能合约编写_以太坊智能合约取款

收集器在每个分片上随机采样。 一方面,验证者无法提前知道他们得到的是哪个分片;

另一方面,每个分片会被分配大量的收集人,真正验证交易的收集人将从他们中随机选择。

Layer 2 解决方案 - 状态通道、Plasma、Truebit

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

cdca112548234fb0b5770a3a82c1c8a3.png

如果我们可以从以太坊的现有容量中挤出更多有用的业务呢?

基础以太坊区块链的吞吐量是相同的,但我们实际上可以做更多对人和应用程序有用的操作,比如交易、游戏中的状态更新或简单的计算。

加密经济学为我们提供了一个确定性的核心——除非像 51% 攻击这样的极端情况,否则链上的操作(如支付或智能合约)将按规定执行。

Layer 2 解决方案背后的智慧在于,我们可以将这个核心的确定性用作锚点——一个我们附加其他经济机制的固定点。

第二层经济机制可以向外扩展公链的效用,允许我们在链下进行交互,并在必要时仍然可靠地引用该核心内核。

1、状态通道;

1.什么是状态通道?

状态通道是一种技术,一种进行链下交易和其他状态更新的技术。

状态通道内发生的事情仍然非常安全且不可变:如果出现任何问题,我们仍然可以选择回到链上交易中确定的“硬核”。

状态通道是更通用的支付通道,它们不仅可以用于支付,还可以用于区块链上的任意状态更新,比如更改智能合约的内部状态。

2. 状态通道的功能和限制是什么?

状态通道取决于有效性;

当参与者将在很长一段时间内交换许多状态更新时,它们特别有用;

以太坊智能合约编写_以太坊合约地址创建规则_以太坊智能合约取款

状态通道最适合具有一组已定义参与者的应用程序;

状态通道具有很强的隐私性;

状态通道具有即时终结性。

2. 等离子;

1.什么是等离子?

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

998276d6e0c54b0bbb0abf139ea65185.png

Plasma 是一种链下交易技术,它依赖于以太坊底层来实现其安全性。

它以新的方向实施状态通道以太坊合约地址创建规则,允许创建附加到以太坊主链的子链。

这些子链又可以生成自己的子链,它们的子链也可以生成自己的子链,等等。

这样,Plasma 子链可以运行得更快,交易费用更低,因为它的运行不需要在整个以太坊区块链中维护一个副本

2.等离子是如何工作的?

假设您正在以太坊上创建集换式纸牌游戏。 这些卡将是 ERC 721 不可替代代币,但这些卡具有某些特征和属性,允许用户相互对战。

首先,我们在以太坊主链上创建了一套智能合约作为 Plasma 子链的“根”;

Plasma根包含子链的基本“状态交易规则”,记录子链状态的哈希值,作为“桥梁”让用户在以太坊主链和子链之间转移资产。链。

然后,我们创建子链;

子链可以有自己的共识算法。 一旦子链被创建并激活,区块生产者将定期对根合约进行声明。

充其量是创建集换式纸牌游戏的基本组件。

以太坊智能合约编写_以太坊合约地址创建规则_以太坊智能合约取款

这就引出了一个关键点:Plasma 允许我们扩展基于区块链的数字资产的交互,但这些资产需要首先在以太坊主链上创建。

3. 如何应对安全问题和区块生产者作恶者?

首先想象一个区块生产者欺骗你——通过创建一个假的新区块,你的资金直接在他们的控制之下;

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

92b118769c7444ea8a9ee942076ad2a5.png

有一个保证:他们可以把资产还给主链。

Plasma 还创建了一种防止欺诈回落到主链的机制。

Plasma 包含一种机制,任何人(包括你)都可以通过该机制向根合约发出欺诈证明,以试图表明区块的生产者是欺诈性的。

但是提交欺诈证明需要您访问基础数据——即:用于证明欺诈的区块的实际历史。

如果区块生产者为了向根合约提交欺诈证明而没有共享前一个区块的信息怎么办?

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

11da2450248e47c5bfae27fc3c6e7d86.png

最后,区块生产者可以审查子链的用户。

然而,返还资金有其自身的风险。 值得注意的是,并不是所有的区块生产者都需要由一个实体控制——这只是一个极端的例子。

4. 状态通道和Plasma需要注意什么?

当状态通道中各方同意退出时,状态通道可以立即执行资金返还; 这在 Plasma 是不可能的,如上所述,用户必须经历一段充满挑战的资金返还过程;

状态通道每笔交易的平均交易费用比 Plasma 便宜,状态通道速度更快;

Plasma 本身还处于非常早期的阶段。

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

三,Truebit。

1.什么是Truebit?

Truebit 是一种链下技术,可帮助以太坊执行繁重而复杂的计算。

Truebit 不会增加交易吞吐量,但它将允许基于以太坊的应用程序以一种仍在主链上验证的方式做更复杂的事情。

以太坊智能合约取款_以太坊合约地址创建规则_以太坊智能合约编写

98aa2303dda6455c8492eace4e496d63.png

首先,解决者在智能合约中支付保证金;

然后,你向求解器描述他们需要执行的计算,他们执行计算,并返回结果;

如果结果正确(大部分在一秒钟内),他们的押金将被退还。

如果结果证明求解器没有正确执行计算——也就是说,他们作弊或犯了错误——那么他们就会失去联系。

判断返回结果正确与否的标准如下:如果挑战者可以通过验证游戏证明解决者提交了错误的结果,那么挑战者将获得奖励,解决者将失去押金。

实际上,我们把双方都逼入了死胡同——找到他们对结果不一致的实际代码行。

一旦验证了特定操作,它就足够小以在以太坊主链上执行。

综上所述

Layer 1 Scaling Scenarios - 复杂度难以想象,但扩展潜力巨大。

分片区块链将为用户带来巨大的利益,将交易费用降低到可以忽略不计的数量,并为各种新应用提供更通用的基础设施。

第 2 层解决方案都有一个共同的见解:一旦我们拥有公共链提供的确定性核心以太坊合约地址创建规则,我们就可以将其用作加密经济系统的锚点,从而扩展区块链应用程序的可用性。

我也开通了微信公众号(丁鲲鹏YKPD),喜欢写作、英语、编程、区块链的朋友可以关注一下,一起成长。

参考: