要點:在側鍊和L2之間轉移資金的需求不斷增長當前方法:通過L1(以太坊)——緩慢、昂貴但不可信;或通過App(或LP)——需要信任,但又快又便宜我們提出了一種無需信任、安全且廉價的側鏈到StarkEx 橋,它依賴於以太坊的安全性通過在StarkEx 和多個側鏈之間擴展這樣的橋樑,我們創建了一條連接這些側鏈的高效橋樑

介紹

雖然以太坊仍然是DeFi 的“資本”區塊鏈,具有高吸引力和安全性,並與多個鏈連接,但它越來越擁擠,並飽受交易成本高昂且不穩定問題的折磨。這促使用戶使用其他平台,例如側鏈(例如Polygon、BSC、Solana)和L2(Optimistic Rollups 或ZK-Rollups)。這些平台在成本、安全性、性能和可用應用方面各不相同——加劇了碎片化。

因此,越來越多的用戶需要在多個平台之間轉移資金。

在側鏈之間提供無信任跨鏈橋的解決方案即將上線(例如,Hop 或MovR)。然而,L2(特別是:rollups)和側鏈之間的去信任互操作性還沒有得到解決。

與Optimistic Rollups 的互操作性在設計上是有問題的,因為較長的最終確定時間轉化為運營跨鏈橋的高資本要求,這轉化為昂貴的轉賬成本。

ZK-Rollups 怎麼樣?跨L1 和ZK-Rollup 的去信任存款和取款已經在實時系統中可用(例如,dYdX、DeversiFi、Loopring)。並且,它們通過有條件的轉賬來提供較短的最終確定時間。

但是,ZK-Rollups 目前與側鏈互操作性不兼容。原因是技術上的:目前部署在L1 上的ZK-Rollups 證明了特定計算語句的有效性(即使它們背後的工具,例如Cairo語言,支持圖靈完整性)。這使得它們與Rollup 中需要“互操作性智能合約”的方案不兼容。

StarkNet,一種去中心化、無需許可的ZK-Rollup,將改變這一點。現在無信任可擴展引擎StarkEx 可以做什麼?我們在下面演示StarkEx 如何支持與側鏈的互操作性。

StarkEx 自2020 年6 月在主網上線以來,促成了數百萬筆總計價值十數億美元的交易。我們將展示StarkEx 系統和方案,以展示如何支持廉價且快速的資金進出側鏈——為在ZK-Rollups 和側鏈上運行的dApp 之間更好的互操作性鋪平道路。但首先,是什麼定義了良好的互操作性系統。

良好互操作性解決方案的品質

側鍊和L2 之間良好的互操作性解決方案應該應用最少的信任並提供簡化的用戶體驗。

準確地說:

最小信任:應該要求用戶信任盡可能少的實體。快速最終性:資金應快速可用。低成本:廉價的解決方案必須在各自的平台上提供低交易價格和高資本效率(因為流動性提供者承擔的成本將抵消給用戶)。

L2——側鏈互操作性

到目前為止,想要在側鍊和L2 之間轉移資金的用戶必須在兩個幼稚的選項之間進行選擇:無需信任但成本昂貴且速度緩慢的選擇(圖1)或廉價且快速但需要信任的選擇(圖2)。

圖1:由L1推動的側鏈與L2之間的轉賬

圖2:側鍊和L2 之間應用程序促進的轉賬

一種StarkEx 驅動的解決方案

我們展示了(圖3)我們提出的解決方案,其中StarkEx 促進了L2 和側鏈之間的互操作性,同時滿足了有效互操作性解決方案的三個品質。請注意,這也適用於側鏈之間的互操作性,使用StarkEx 作為通道。

圖3:由StarkEx 驅動的以太坊安全側鏈橋

StarkEx 的好處

對於那些不熟悉StarkEx 的人,我們將介紹其基本概念。您可以在此處找到StarkEx 的完整文檔。但是,要遵循這些計劃,以下背景就足夠了:

StarkEx 無需信任

由於StarkEx 依賴於STARK 證明,如果沒有證明該狀態確實有效,則L1 上不會發生狀態更新。這意味著資金只能根據在Cairo實施的邏輯在StarkEx 內部易手,該邏輯強制執行以下操作:

沒有用戶在相關轉賬請求上的有效簽名,不能從用戶那裡轉賬資金L1 上已提交的StarkEx 狀態反映了L2 環境中發生的所有轉賬StarkEx 不能兩次執行同一個轉賬

結果是運營商(例如交易所)無法竊取用戶的資金。強制交易、逃生艙口和專門的升級機製完善了這一流程,使StarkEx 完全自我監管。

StarkEx速度快

一旦進入StarkEx 交易隊列,運營商可能會認為交易已結算。這意味著用戶可以即時提交隨後的交易; 無需等待鏈上交易的實際結算!

StarkEx價格低

在StarkEx上,即使是複雜的永續交易,其成本也低至ZK Rollups模式的1100 gas,這是比L1執行相同邏輯便宜200倍。成本甚至比在Validium模式還少。此外,StarkEx具有資本效率,一旦包含它們的執行的證明被發佈在鏈上,交易就可以獲得最終性——通常是在交易後僅幾個小時內。

從StarkEx提款到側鏈

圖4:StarkEx-側鏈互操作性——提款

步驟1:用戶向應用發送鏈下請求,指定他們想要提取的資產數量和類型。該應用驗證用戶在他們的StarkEx Vault 中是否有足夠的資金。

步驟2:該應用在側鏈上找到的互操作性合約中鎖定指定的資產價值和類型。該應用將這些資金與(未簽名的)StarkEx 的轉移請求相結合,該請求命令StarkEx 將相關資產從用戶的Vault 轉移到應用程序的Vault 中。

步驟3:用戶簽署圖4 步驟2 中指定的轉移請求,激活側鏈上的互操作性合約。該交易立即解鎖用戶的資金以在側鏈上使用。

回退流程:如果用戶未能在有限的時間範圍內簽名,則從互操作性合同中獲得資金。

步驟4:該應用現在可以在StarkEx 上執行轉賬請求並在那裡接收用戶的資金。

滿足要求

1. 無需信任:用戶在給運營商資金之前在StarkEx 上獲得側鏈上的資金(如果沒有前者,後者就不可能發生):

StarkEx 強制要求,為了從用戶那裡獲取資金,應用程序必須知道他們的簽名。提供簽名可以解鎖用戶在側鏈中的資金。

2.速度快;在側鏈最終性時間的兩倍之後,用戶可以獲得資金。

3.價廉; 不涉及L1交易,App可以立即在StarkEx上取款,幾個小時後在L1上取款。

從側鏈充值到StarkEx

圖5:StarkEx-側鏈互操作性— 存款

步驟1:用戶在互操作合約中將其資金鎖定在側鏈賬戶中。這些資金與StarkEx 上的特定轉賬請求參數相關聯,後者會將資金轉賬到用戶的金庫。

步驟2:運營商在StarkEx 中執行圖5 步驟1 中的轉賬請求,將資金釋放到用戶的StarkEx金庫。用戶可以立即開始交易這些資金。

步驟3:第2 步的轉賬與其他交易一起批處理(圖5 步驟3.1)。 StarkEx 向L1 證明這些交易發生了(步驟3.2),並相應地更新鏈上狀態(步驟3.3)。

步驟4:以太坊上的專用合約將新的L1 狀態傳輸到側鏈中的互操作性合約。該狀態,即StarkEx 上所有交易的Merkle 根,確認用戶已按要求收到StarkEx 上的資金。

步驟5:該App 打開Merkle Tree 承諾,向側鏈證明用戶確實在圖5 第2 步中的StarkEx 上收到了資金,為該App 解鎖了互操作性合約中的資金。

回退流程:如果App 未能在有限的時間內完成圖5 的步驟5,用戶可以從互操作性合約中收回側鏈上的資金。

滿足要求

1.這個方案是無需信任的:用戶在應用可以在側鏈上認領資金之前在StarkEx 上收到資金。 StarkEx 的邏輯和證明表明,如果沒有前者,後者就不會發生:

要在側鏈上接收資金,運營商必須通過StarkEx 向用戶展示相關轉賬記錄。 StarkEx 強制要求只有在用戶收到資金時才能找到這樣的記錄。

2.速度快:一旦在側鏈上確認了一筆交易,App 就可以立即將StarEx 上的資金交給用戶。

3.成本低廉:側鍊或StarkEx 上的交易成本低廉,並且步驟4的L1 交易的大筆成本由許多存款請求分攤。

此外,該應用可以在幾個小時後在側鏈上獲得資金。

下一步是什麼?

StarkEx 的客戶很快就會享受到上面介紹的去信任互操作性方案。

至於StarkNet,我們無需許可的去中心化ZK-Rollup:StarkNet Planets Alpha 1 已經在Ropsten測試網絡上運行——我們計劃支持與其他生態系統(如側鏈)的互操作性。由於StarkNet 證明了任何任意邏輯,它可以支持與此處描述的機制類似的機製或部署現有的互操作性解決方案。

無論如何,StarkNet 促進了高度的互操作性,並將成為許多尋求擴展到以太坊之外的DeFi 應用程序的互操作性的中心。