主页 > imtoken官网下载1.0版本 > 智能合约的链外扩展——二层二级网络

智能合约的链外扩展——二层二级网络

imtoken官网下载1.0版本 2023-05-10 07:26:39

在上一篇文章中,我们解释了比特币的链下扩展解决方案闪电网络。 通过游戏的设计,两个人之间的多次转账只需要在链上记录第一次和最后两次转账,然后通过多人之间的链下转账,就可以实现任意两个人之间通过链下转账。链式传输。 channel(支付通道)完成转账。

如果把比特币网络想象成一层,闪电网络就像是在这一层之上加了一个新的层(见下面我的灵魂画风示意图)。 这一层也是由相互连接的节点组成,只不过比特币网络节点的功能是收集转账和打包区块,而闪电网络节点的功能是维护支付通道和匹配转账请求. 可以在闪电网络层完成的传输不需要使用比特币层。 除了两种情况,一种是当闪电网络层无法匹配到合适的支付通道时,只能使用比特币层来完成转账,另一种是当闪电网络层作弊时,比特币层调用完成最后的反作弊确认。

以太坊二层网络_sitebihu.com 以太以太坊价格_site5bite.com 雷电网络以太坊

对于比特币来说以太坊二层网络,比特币网络是Layer 1,Lightning Network是Layer 2,通过在Layer 2解析更多的请求来降低Layer 1的负载。这就是Layer 2扩容的基本思路。

比特币的情况比较简单,因为处理的交易只有一种,就是转账,所有的设计只需要能够完成转账的功能,没有任何可扩展性。 对于支持智能合约的公链,比如以太坊,情况要复杂得多。

site5bite.com 雷电网络以太坊_sitebihu.com 以太以太坊价格_以太坊二层网络

Layer 2 的概念最初是在以太坊之后提出的,之前只有闪电网络。 大家都想把同样的想法应用到智能合约上,实现公链的扩容。 比特币存储支付信息,因此 Layer 2 实现了一个“支付通道”。 相应的,状态信息存储在智能合约公链上,是智能合约中变量的最新状态,所以Layer 2的功能被称为“状态通道”。

支付一般发生在A和B之间,所以可以看作是两个人之间的一个通道,两个人可以在这个通道中多次向对方转账。 但是如果是智能合约,它可以实现很多不同的功能。 完全不局限于两个人之间的转账,不需要在多个通道之间进行路由匹配,所以其实没有通道的概念。

无论如何,智能合约的 Layer 2 要做的事情还是一样的。 在单层公链中,每一次智能合约调用和状态更新都必须在链上发起一次Tx,经过所有节点的共识、验证和记录后生效,就像比特币的每一次转账都必须上链一样。

能不能设计一个Layer 2层,让智能合约的执行在Layer 2完成而不进入Layer 1区块链,只有在链上需要清算,或者Layer 2作弊的时候才返回Layer 1? 进行验证。

sitebihu.com 以太以太坊价格_site5bite.com 雷电网络以太坊_以太坊二层网络

无论是比特币还是通用智能合约公链,其核心功能都是数据记录和数据共识。 添加链外Layer 2后,数据记录功能不受影响。 最大的问题是Layer 2的数据没有经过约定,可以被篡改。 因此,如何防止Layer 2数据被篡改(欺骗)是Layer 2的核心问题。

Layer 2反作弊的思路也很简单:利益相关者在Layer 2发现有人作弊后,需要将作弊的相关证据提交到区块链上,待区块链上的节点验证作弊后行为属实以太坊二层网络,他们将执行惩罚措施,根据您的需要选择是否回滚作弊操作。

Layer 2 的难点还在于作弊证据的记录和作弊证据的验证。 困难在于两个方面。 一是在不同的应用场景下,作弊行为是完全不同的,所以反作弊的方案也会完全不同。 针对不同场景设计一个完美的反作弊方案是非常困难的。

另一个困难是,即使设计了一个完美的反作弊方案,这个方案也不一定能在区块链上实现。 因为作弊行为的最终验证需要通过区块链上的智能合约来执行。 如果验证所需的计算量太大,验证本身将无法进行。

以太坊二层网络_site5bite.com 雷电网络以太坊_sitebihu.com 以太以太坊价格

这是我们在自己的项目开发中遇到的真实问题。 在以太坊上,如果我们使用智能合约来实现我们需要的验证,更何况这种合约方式消耗的gas是我们无法承受的。 当数据量稍大一些时,该方法的执行甚至超过了以太坊的区块gas限制,根本无法执行。

如果设计再往下,就需要二层共识方案。 如果区块链合约不能完成需要的计算,那么计算本身就放在 Layer 2 节点上,在 Layer 2 节点之间加入一个共识(比如 PoS)。 这种设计更接近于侧链方案,也是对共识强度的进一步妥协。

与闪电网络相比,智能合约的 Layer 2 解决方案经过了一层抽象。 闪电网络的功能非常固定,不需要考虑普适性。 智能合约可以实现各种功能。 例如,我们可以使用智能合约实现一个功能完全相同的闪电网络,也可以实现与闪电网络完全不同的其他应用。 因此,智能合约的 Layer 2 解决方案需要考虑通用性和可扩展性的问题。 比如Layer 2作弊问题有没有通用的解决方案?

我们来做个对比,原来的闪电网络,使用Layer 2框架实现闪电网络,使用Layer 2框架实现其他功能。 详情见下表:

site5bite.com 雷电网络以太坊_以太坊二层网络_sitebihu.com 以太以太坊价格

以太坊二层网络_site5bite.com 雷电网络以太坊_sitebihu.com 以太以太坊价格

在实现支付功能的例子中,支付通道和支付通道的路由都是实现支付需求的非常具体的功能,只在支付中有用,并不通用。

至于核心的Layer 2数据反作弊问题,Layer 2方案并没有通用的解决方案。 例如,在比特币中,为支付功能设计的博弈方式不是通用的方式,不适用于智能合约的其他应用场景。

综上所述,我认为智能合约的Layer 2扩展方案与具体的功能需求是强绑定的,Layer 2只能作为一个框架,提供一种设计思路。 具体的反作弊机制的设计和功能需求的设计,还是需要针对每个不同的应用场景单独对待。

以太坊二层网络_sitebihu.com 以太以太坊价格_site5bite.com 雷电网络以太坊

当然,随着区块链应用场景越来越多,我们可以总结出更多的反作弊模式,将这些模式固化为Layer 2的积木,到时候Layer 2的开发应该会容易很多。

Plasma 是 Vitalik 和 Joseph 很早就提出的一个框架,用于扩展以太坊的链下 Layer 2 容量。 思路和上面说的基本一样。 事实上,这个框架的应用不需要以太坊的任何额外支持,它只需要设计自己的反作弊机制即可。 有几个项目利用Plasma的思想在以太坊上实现了闪电网络,其他的案例就不太多了。

我们的项目主要使用Layer 2解决方案来实现内容的发布和流通,以及内容筛选的经济激励体系。 第 1 层使用以太坊。 在防作弊方面,如前所述,由于验证需要的计算量巨大,我们在Layer 2引入了节点间的PoS验证。目前网络运行的很好,但是由于经济激励体系不够完善,无法释放启动 Layer 2 节点的权限。

总的来说,区块链性能的提升是一个系统工程,需要不断完善各个环节,比如DApp的链上扩容、链下扩容、逻辑优化等。 只有完善了这些环节,才能看到区块链性能的质的飞跃。

本文已通过“原创”认证,作者为洋葱,访问yuanben.io查询[45PX0CX8]获取授权