通往 L2 互操作性的道路

来源 | StarkWare

摘要

L2 互操作性意味着用户可以以尽可能小的 L1 摩擦在 L2 系统之间转移资金。

本文所提议的 L2 互操作性解决方案基于我们此前建议使用的条件式交易密码学基元。

StarkEx 2.0 (于 2020 年 11 月推出)将使用链上条件式交易,提供 L2-L1 之间的互操作性(即快速提款)。

StarkEx 3.0 (于 2021 年 2 月推出),将使用链下条件式交易,提供在 StarkEx 系统之间的 L2-L2 互操作性。

背景

Layer-2 扩容解决方案发展迅速。以太坊主网上已经有多种有效性证明系统,还有一些欺诈证明系统也推出了测试网。L2 解决方案虽然提供扩容性,但会带来一定的代价:我们完全在 L1 上操作所具有的一些优势可能会遭受损害。

我们并不希望某个 L2 解决方案一家独大:不同的 App 对扩容性的需求各不同,因此可以根据自身需求选择适合的 L2 解决方案。

接下来,让我们给大家解释两个重要的术语:

互操作性 (Interoperability): 允许用户在 app1 (初始环境) 和 app2 (目标环境) 之间高效地转移资金。

可组合性 (Composability): 能够将 app1、app2…appn 包含的操作组合成一次交易以发送。注意:可组合性将在之后的一篇文章中详细讨论。

除了上面所提到的定义之外,我们还需要着重解释什么是“条件式交易 (Conditional-Tx)”,这一重要基元让互操作性成为可能。

条件式交易

条件式交易是一个由密码构建成的区块 (我们在某篇文章中首次讨论过这一概念),旨在为无需许可的区块链实现互操作性。 条件式交易指某笔交易生效与否,取决于某些事件是否发生 (如支付有无发生,状态有无改变)。从概念上来讲,我们首先在初始环境设定一个条件式交易,一旦特定的条件在另一个环境 (即目标环境) 中得到满足,该交易便生效。

循序渐进

尽管目前没有一个更好的方案,用户总是能够将资金从初始 L2 上转移至 L1 上,再从 L1 上转移至目标 L2 上。这个简单粗暴的方法既慢又贵,并且随着用户对互操作性的需求增加会越来越慢,越来越贵。

我们需要做得更好,为此,我们特地做了以下计划,循序渐进地实现 L2 互操作性。

阶段 I

StarkEx (L2) → Ethereum (L1) — 快速提款

“快速提款” (Fast Withdrawals) 可以解决用户需要快速地从 L2 系统 StarkEx 中提款至 L1 的问题。通过快速提款,用户不仅可以将资金转到自己的 L1 地址上,还可以转到 L1 的任意目标地址中,比如 Compound、Aave 等。重要的是,这允许用户在进行提款时以“区块时间”来衡量,而与 StarkEx 对批量交易进行证明的频率无关。

用例: Alice 想要从她在 L2 上的 dYdX 账户转移 1 个 ETH 至她的 L1 地址上。

参与者:

Alice (在 L2 上持有 ETH 的用户)

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

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

通往 L2 互操作性的道路

图 1:快速提款流程

流程:

(1) Alice 给 LP 发送一笔价值为 1 ETH 的条件式交易 (还要加上给 LP 的手续费),条件为 LP 需向 Alice 的 L1 地址上转 1 ETH;

(2) LP 在 L1 上转了给 Alice 之后,条件式交易生效,然后

(3) LP 将该条件式交易提交给运营者,随后被打包进下一批等待被证明的交易中;

(4) 等到这些证明被提交至 L1 并得到验证后,LP 在 L2 的账户便收到了 Alice 的转款。

定期再平衡:LP 需要定期地拿出他们在 L2 账户中逐渐积累的资金,补充他们在 L1 账户中逐渐消耗的资金。

阶段 II

StarkEx (L2) → StarkEx (L2)

最初的 StarkEx 部署将各自托管一个应用程序。在本阶段,我们希望用户能够在这些不同的应用程序之间快速地转移资金。这很像快速提款,我们希望最小化用户的链上成本,以及省去他们等待下一批交易打包证明的时间。

用例: Alice 想要从她的 dYdX 账户 (L2_1) 向她的 DeversiFi 账户 (L2_2) 转 1 个 ETH。

参与者:

Alice (在 L2_1 上持有 ETH 的用户)

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

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

通往 L2 互操作性的道路

图 2:链下条件式交易流程

流程:

(1) Alice 在 L2_1 上给 LP 发送一笔已签名的价值为 1 ETH 的条件式交易 (还要加上给 LP 的手续费),条件为 LP 需向 Alice 的 L2_2 账号转 1 ETH;

(2) LP 向 Alice 的 L2_2 账号上转钱之后;

(3) 该笔支付被打包进一批交易中,随后被 L2_2 的运营者证明,并在 L1 上被验证。这批交易发布在 L1 上并被接受后,Alice 发送的条件式交易便生效;

(4) LP 将该笔条件式交易提交至 L2_1 的运营者中,打包进下一批等待被证明的交易中;

(5) 一旦这批在 L2_1 上交易被证明且提交至 L1 得到验证之后,该 LP 在 L2_1 上的账户便收到了 Alice 的转款。

定期再平衡:LP 需要根据 L2_1 和 L2_2 这两个系统之间的资金流向,定期地再平衡两者之间的资金。

在这一阶段,支持互操作性的主要成本将是给 LP 们支付的资本成本;需要注意的是,他们的资本成本经过非常有限的一段时间便回笼,也就是从向用户提供流动性到运营者打包处理下一批交易这个时间。我们预测这个时间开始时需要几个小时 (大部分时候),然后随着 (所有 StarkEx 应用中的) 吞吐量不断增加,这个时间会减少至证明生成时间 (几分钟)。

阶段 III

L2 → L2

在阶段 2 的基础上进行扩展,允许资金在任意的 L2 解决方案之间转移,无论是有效证明系统还是欺诈证明系统 (如 Optimistic Rollup、Plasma)。这里需要提醒的是,Optimistic Rollup 在使用 LP 来支持互操作性时,会面临其本身固有的资本效率低下的劣势。

信任模式

现在归纳一下我们所依赖的信任模式。

对用户来说

完全去信任的。

对 LP 来说

LP 需要信任运营者 (初始环境中的),即相信其会打包他们的有效条件式交易,也就是说在处理过程中不会审查他们。这种信任可以通过几种方式进行消除。

如果运营者没有及时处理 LP 的条件式交易,LP 可以:

抗审查:提交被审查的条件式交易到链上的运营者的智能合约中,这会冻结运营者,使其之后提交的证明都无法得到处理。

安全抵押:提交被审查的条件式交易到链上的一个安全抵押智能合约中,从该合约中直接接收资金。

发展路线图

阶段 1 将在 2020 年 11 月发布于以太坊主网 (即 StarkEx 2.0),阶段 2 将于 2021 年第一季度发布 (即 StarkEx 3.0)。已经有一批 LP 排着队等待提供服务了。

阶段 3 将紧随其后。我们预测不同的 L2 解决方案上的应用之间也会有进行互操作的需求,并且渴望与其他 L2 解决方案讨论互操作性的实现。

点击“阅读原文”获取文章内部链接!

原文链接:https://medium.com/starkware/the-road-to-l2-interoperability-718ff69ec822

ECN 的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源,文章版权归原作者所有,转载须注明原文出处以及 ETH 中文网。若需长期转载,请联系 ethereumcn@gmail.com 进行授权。

通往 L2 互操作性的道路

来源链接:mp.weixin.qq.com

分享到新浪微博 微信分享 扫码分享
分享到 Facebook
分享到 Twitter

该内容来自于互联网公开内容,非区块链原创内容,如若转载,请注明出处:https://htzkw.com/archives/27941

联系我们

aliyinhang@gmail.com