去信任的“侧链-StarkEx”桥接_STARK:bitstamp有外平台吗

摘要

在侧链和L2之间转移资金的需求日渐旺盛

目前的方法:经由L1(以太坊)——速度慢、成本高,但是去信任;经由App(或LP)——需要信任,但是速度快且成本低

我们提议一个去信任的、安全的和低成本的“侧链-StarkEx”桥接,其依赖于以太坊的安全性

通过扩展StarkEx和多个侧链之间的桥梁,我们创建了一个连接这些侧链的有效桥梁

介绍

虽然以太坊仍然是DeFi的“资本”区块链,具有高牵引力和安全性并连接至多个链,但以太坊越来越拥挤,交易成本高昂且不稳定。这促使用户使用其他平台如侧链(Polygon、BSC、Solana)和L2s(OptimisticRollups或者ZK-Rollups)。这些平台在成本、安全性、性能和Apps方面各不相同——加剧了流动性的碎片化。

因此,越来越多的用户需要在多个平台之间转移资金。

侧链之间的去信任桥接解决方案上线了(例如Hop或者MovR)。然而,L2s和侧链之间的去信任互操作性仍不能得到解决方案。

从设计上讲,与OptimisticRollups的互操作性是有问题的,因为最终确定时间长意味着运营桥接需要很高的资本要求,这导致了资金转移的成本很高。

ZK-Rollups呢?跨L1和ZK-Rollup的去信任存款和提款已经可用(如?dYdX、DeversiFi、Loopring)。并且,zk-rollup通过条件式转移(ConditionalTransfers)使最终确定时间较短。

但是,zk-Rollups目前与侧链互操作性不兼容。原因出自技术方面:目前部署在L1上的zk-Rollups证明了特定计算语句的有效性(即使其背后的工具如Cairo语言是图灵完备的)。这使得它们与Rollup中需要“互操作性智能合约”的方案不兼容。

而我们去中心化的、无需许可的zk-Rollup解决方案StarkNet将解决这一问题。但是现在可以借助我们去信任的可扩展引擎StarkEx做些什么呢?下面我们将演示StarkEx如何支持侧链的互操作性。

StarkEx于2020年6月上线主网,促成了数百万笔总计价值为数十亿美元的交易。我们将展示StarkEx系统和方案,以阐述其如何支持低成本且快速地将资产转入且转出侧链——这将为在zk-Rollups和侧链上运行的dApps之间更好的互操作性铺平道路。但我们先考虑一下,一个良好的互操作性系统由什么定义。

良好互操作性解决方案的品质

侧链和L2之间的一个好的互操作性解决方案应需要最小化的信任,并提供简化的用户体验。更精确地说:

信任最小化:应该要求用户信任尽可能少的实体。

FastFinality:fundsshouldbeavailablefast.

敲定时间短:资金应快速可用。

成本低:低成本的解决方案必须在各自的平台上提供低交易价格和在桥接上提供高资本效率(因为流动性提供者承担的成本将抵消给用户)

L2-侧链之间的互操作性

到目前为止,用户如果想要在侧链和L2之间转移资金,就必须要在两个幼稚的选项中做出选择:去信任但成本高且速度慢的方案(图一);成本低、速度快,但需要信任的方案(图二)。

图一:经由L2实现侧链和L2之间的资产转移

图二:经由App实现侧链和L2之间的资产转移

由StarkEx支持的解决方案

图三展示了我们提议的解决方案,即StarkEx为L2和侧链之间提供互操作性,同时满足上述提到的三个品质。请注意,这个方案(使用StarkEx作为管道)同样适用于侧链之间的互操作性。

图三:由StarkEx支持、以太坊提供安全保障的侧链桥接

StarkEx的优点

以免一些用户不熟悉StarkEx,下文简单介绍了其基本概念。读者可以在此处找到StarkEx的完整文档:https://app.gitbook.com/@starkware/s/starkex-v3/~/settings/share。但是要想读懂本文提议的桥接方案,了解下文的背景已经足够了:

StarkEx去信任

由于StarkEx依赖于STARK证明,因此如果没有证明能够证实某状态确实有效,那么L1上就不会发生状态更新。这意味着只能根据以Cairo语言实现的逻辑在StarEx内部进行资产转移,该逻辑强制执行以下操作:

没有用户在相关转账请求上的有效签名,不能从用户那里转移资金

L1上已提交的StarkEx状态反映了L2环境中发生的所有资产转移记录

StarkEx不能再次执行同样的资产转移请求

这样做的结果是,运营者(比如交易所)无法盗取用户的资产。强制交易、应急舱口和专用升级机制完善了去信任这一版图,使StarkEx变得完全非托管。

StarkEx速度快

一旦某笔交易进入StarkEx的交易队列,运营者可以认为该笔交易已成功结算。这意味着用户可以立即提交后续交易;无需等待交易在链上完成结算。

StarkEx成本低

在StarkEx的zk-Rollup模式下,即使是复杂的永续交易的交易成本也低至1100gas,这比L1上便宜200倍。Validium模式下的交易成本更加低。此外,StarkEx资本效率高,一旦包含其执行的证明在链上发布,就会立即敲定交易——这通常发生在交易后的几个小时。

将资金从StarkEx提到侧链中

图四:StarkEx-侧链的互操作性——提款

第一步:用户向App发送链下请求,指定他们想要提出的资产数量和类型。该App验证用户在其StarkExVault中是否有足够的资金。

第二步:App在侧链中的互操作性合约中锁定指定的资产数量和类型。然后App将这些资金与StarkEx(未签名的)资金转移请求相匹配。该请求命令StarkEx将相关资产从用户的Vault中转移到App的Vault中。

第三步:用户对步骤二中的转移请求进行签名,以激活侧链上的互操作性合约。然后该交易就会立即解锁用户的资金,以在侧链上使用。

回退流程:如果用户未能在有限的时间范围内签名,则App将从互操作性合约中收回资金。

第四步:该App现在可以在StarkEx上执行转账请求并在那里接收用户的资金。

满足要求

1、这个方案是去信任的:用户先在StarkEx上获得侧链上的资金,然后才向StarkEx上的运营者转移资产(如果没有前者,后者就不可能发生)。

StarkEx强制要求,想要从用户那里获取资金,App必须获得用户的签名。

提供签名可以解锁用户在侧链中的资产。

2、速度快:侧链敲定时间的两倍之后,用户即可访问资金。

3、交易成本低:不涉及L1交易,App可以在StarkEx上立即访问资金,然后几个小时候在L1上也可以访问资金了。

从侧链充值资金到StarkEx

图五:StarkEx-侧链的互操作性——存款

第一步:用户将其资金锁定在互操作性合约的侧链账户中。这些资金与StarkEx上的特定转账请求参数相耦合,这些参数会将资金转移到用户的Vault中。

第二步:运营者在StarkEx中执行步骤一的转账请求,将资金发送至用户的StarkExVault中。用户便可以立即开始交易这些资金。

第三步:1)步骤二中的转账与其他交易一起被批量处理;2)StarkEx向L1证明这些交易已发生;3)并相应地更新链上状态。

第四步:以太坊上的专用合约将新的L1状态发送到侧链的互操作性合约中。该状态(即StarkEx上所有交易的默克尔根)确认用户已按要求收到StarkEx上的资金。

第五步:该App打开默克尔树承诺,以向侧链证明用户确实在步骤二中的StarkEx上收到了资金,解锁了App的互操作性合约中的资金。

回退流程:如果App未能在有限的时间内完成步骤五,用户可以从互操作性合约中取回侧链上的资金。

满足要求

1、这个方案是去信任的:用户先在StarkEx上收到资金,然后App才能在侧链上认领资金。StarkEx的逻辑和证明强制要求,如果没有前者,后者就不可能发生。

要想在侧链上接收资金,运营者必须通过StarkEx向用户展示相关转账记录。

StarkEx强制要求,只有在用户收到资金之后才能获得该转账记录。

2、速度快:一旦在侧链上确认了一笔交易,App就可以立即将StarkEx上的资金交给用户。

3、成本低:侧链或者StarkEx上的交易成本较低,虽然步骤四中L1交易的成本较高,但这个费用由多个存款请求共同分担。

此外,该App在几个小时之后就可以在侧链上获取资金。

下一步是什么?

StarkEx的用户很快就能使用上面介绍的去信任的互操作方案。

至于无需许可的去中心化zk-Rollup方案StarkNet的进展:StarkNetPlanetsAlpha1已经上线Ropsten测试网——我们计划支持与其他生态系统(如侧链)的互操作性。由于StarkNet证明了任何任意逻辑,它可以支持与此处描述类似的机制,或者部署现有的互操作性解决方案。

无论如何,StarkNet促进了高程度的互操作性,并将成为众多寻求扩展到以太坊之外的DeFiApps的互操作性的中心。

来源|StarkWare?

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:15ms0-5:811ms