1. 首页
  2. 区块链资讯

通往 Layer-2 互操作性的道路

四句话总结

  • Layer-2 互操作性的意思使用户可以在 Layer-2 系统间迁徙资金,而且在 Layer-1 上的摩擦力是尽可能小的。

  • 本文所提及的 Layer-2 互操作性解决方案都基于我们之前建议使用的 “条件性买卖密码学元件”。

  • StarkEx 2.0(预计在 2020 年 11 月推出)将使用 链上 的条件性买卖来提供 Layer-2 to Layer-1 的互操作性(快速取款)。

  • StarkEx 3.0(预计在 2020 年 12 月推出)将使用 链下 的条件性买卖来提供 Layer-2 to Layer-2 的互操作性(快速取款)。

靠山

Layer-2 (L2)可扩展方案提高迅猛。以太坊主网上已经有很多个有用性证实系统了,也有不少敲诈证实系统已经推出测试网。L2 方案提供了可扩展性,但也有所牺牲:使用了 L2 方案,完全运行在 L1 上所能获得的一些利益就会被打破,或至少有所减损。我们不认为有某个 L2 解决方案能完善解决所有需要:差别应用对吞吐量扩展的需要大不相同。应用们自己会在厚实的 L2 设计库内里挑选自己适用的。

在进一步先容以前,我们先对两个主要的术语下一个界说:

  • 互操作性(Interoperability):能让用户在应用1(初始环境)和应用 2(目的环境)之间高效转移资金

  • 可组合性(Composability):能在一笔买卖中操作 app_1、app_2、···、app_n。(可组合性不是本文的主题。我们下次再专门聊。)

除了这些松散的界说,我们还需要一个增强版的条件性买卖。这种主要的元件是发生互操作性的要害。

条件性买卖(Conditional-Tx)

这是一种密码学元件(此处是我们首次提出这种方案),可用来在免信托的区块链上实现互操作性。条件性买卖,就是依赖于一些事宜的发生或不发生(例如:某笔支付、某一次状态调换),来决议自身生不生效的买卖。给个基本的观点就是,我们可以在初始环境中界说一笔条件性买卖,然后等它指明的条件在另一个环境(也就是目的环境)中获得知足,它再生效。

循序渐进

在更好的解决方案缺位之时,至少,用户总能够把资金从初始 L2 迁回 L1 上,再转而投入目的 L2。这种粗暴的方式既慢又贵,而且随着需求量的增添会变得越来越慢、越来越贵。

以是我们要做得更好才行。实际上,我们设计根据下列步骤,循序渐进地实现更好的方案。

Phase I:StarkEx (L2) → Ethereum (L1) — 快速取款

“快速取款” 可以解决用户需要快速从 StarkEx 系统中取出资金到 L1 上的问题。它不仅仅能把资金发送到用户自己的 L1 地址上,也可以把资金发送到 L1 的随便目的地址上,好比 Compound、Aave,等等,都行。主要的是,用户取款的时延将以 “区块时间” 来权衡,与 StarkEx 为批买卖天生证实的频率无关。

使用场景:Alice 希望把自己在 L2 的 dYdX 账户里的 1eth 发送到自己在 L1 的地址上。

参与者

  • Alice(一名在 L2 上有存款的用户)

  • LP(在 L1 上有资金的一名流动性提供者)

  • 初始环境中的 StarkEx 运营者(在上述例子中就是 dYdX)

通往 Layer-2 互操作性的道路

– 图 1:快速取款流程 –

流程:(1)用户向 LP 通报一笔条件性买卖,答应支付 1eth(加上 LP 的手续费),条件是 LP 在 L1 上把 1eth 打给 Alice 的 L1 地址;(2)等 LP 在 L1 上给 Alice 打钱之后,该笔条件性买卖生效;(3)LP 把该笔条件性买卖发送给运营者,守候它被打包到下一批待证实的买卖中;(4)等下一笔证实被提交到 L1 并获得验证之后,该 LP 的 L2 余额增添,反映他从 Alice 处获得的资金。

定期再平衡:该 LP 需要定期拿自己在 L2 账户中(逐渐积累)的资金来弥补自己 L1 账户中(逐渐消耗)的资金。

浙江嘉兴法院用区块链技术实现物证数据化管理

江省嘉兴市中级人民法院自主研发的智能物证管理平台,首次在诉讼案件中使用。

Phase II:StarkEx (L2) → StarkEx (L2)

最最先的 StarkEx 是每个实例托管一个应用。到了这个阶段,我们希望用户能够在这些差别的应用之间快速地迁徙资金。很像快速取款,我们也希望能帮用户尽可能降低链上的开销,而且不用守候自己的取款买卖在 L2 上打包和证实。

使用场景:Aliece 想把自己在 L2_1 的 dYdX 账户上的 1eth 转移到她在 L2_2 上的 DeversiFi 账户上。

参与者

  • Alice(一名在 L2_1 上有存款的用户)

  • LP(一名在 L2_2 上有资金的流动性提供者)

  • 初始环境中的 StarkEx 运营者(在上述例子中就是 dYdX)

通往 Layer-2 互操作性的道路

– 图 2:链下条件性买卖流程 –

流程:(1)Alice 向 LP 通报一笔签过名的条件性买卖,答应在 L2_1 上支付支付 1eth(加上 LP 的手续费),条件是 LP 把 1eth 打到 Alice 的 L2_2 的账户上;(2)该 LP 在 L2_2 上给 Alice 支付;(3)该笔支付买卖由 L2_2 的运营者打包进某个批次并提交证实,该证实在 L1 上验证;待该批次买卖公布在 L1 上之后,该笔条件性买卖就可以生效了;(4)该 LP 把该笔条件性买卖提交给 L2_1 的运营者,由后者将它打包进自己要证实的下一个批次中;(5)等 L2_1 的下一批买卖公布到 L1 上、且其证实经由了合约的验证之后,该 LP 在 L2_1 上的账户余额更新,反映 TA 从 Alice 处获得的数额。

定期再平衡:LP 需要定期平衡 L2_1 和 L2_2 中的资金,就看两个系统中的资金流向若何。

在此阶段,支持互操作性的主要成本将是 LP 的资金成本;要注意的是,他们的资金成本要经由一段时间才气回笼,也就是从向用户提供流动性、到运营者打包处置条件性买卖这段时间。我们预计这个时间一最先会是几个小时(大部分时刻是),然后随着(所有 StarkEx 应用中)吞吐量的增添而下降到证实的天生时间(几分钟)。

Phase III:L2→ L2

Phase II 基础上的延伸,让资金能够在随便 L2 之间迁徙,无论是使用有用性证实的系统,照样使用敲诈证实的系统(Optimistic Rollup、Plasma)。这里要提醒的是,(相比于 zkRollup)Optimistic Rollup 在使用 LP 来实现互操作性时,资金效率会有一些劣势,这是不可避免的(见此处)(中文译本)

信托模子

现在我们来归纳一下所需的信托模子。

对用户来说

完全是免信托的。

对 LP 来说

LP 需要信托(初始环境中的)运营者,信赖后者会处置他们的有用条件买卖,也就是不会审查他们。这种信托需要可以用几种方式来消除。

若是 LP 的条件买卖没有获得运营者的及时处置,LP 可以:

  • 反审查:提交被审查的条件买卖到链上的 “运营者” 智能合约中,让后者冻结运营者,使该运营者所提交的证实都不能获得处置。

  • 平安押金:提交被审查的条件买卖到链上的一个平安押金智能合约中,从该合约处直接吸收资金。

设计

  • Phase I 将在 2020 年 11 月上岸以太坊主网(即 StarkEx 2.0),而 Phase II 将在 2021 年第一季度到来(即 StarkEx 3.0)。

  • Phase III 也将紧随其后。我们预计 L2 上的差别应用会有与其他 L2 上的应用互操作的需求,也盼望与其他 L2 方案提供者讨论解决方案。

原文链接:

https://medium.com/starkware/the-road-to-l2-interoperability-718ff69ec822

作者: Tom Brand & Uri Kolodny

翻译: 阿剑

原创文章,作者:链大大,如若转载,请注明出处:http://www.chaindada.com/chain/21934.html