帳戶抽象和 SUAVE:以 Intent 為中心的以太坊

交易=你指定如何做;Intent=明確你想要什麼,但並不關心如何實現。

原文標題:《Account Abstraction and SUAVE: How far are we from an Intent-Centric Ethereum?

撰文:StanleyH,MetaWebVentures 研究員

編譯:Yvonne

「Intent」最近成為以太坊愛好者們討論的核心話題,賬戶抽象、SUAVE、訂單流拍賣等等這些相關內容也被串聯起來。本文將討論我們如何完成從「基於交易的互換」到「基於 Intent 的互換」的轉變,以及過程中可能發生哪些意想不到的結果,徹底改變 MEV 的形式。

Intent

談論「Intent」而不提及 Anoma 是說不過去的。他們從起初就開始構建一個以 Intent 為中心的區塊鏈架構。那麼什麼是 Intent?值得慶幸的是,這篇文章基於 Paradigm 而來,所以我可以借用他們的定義:

「Intent 是一組已簽署的宣告性約束,允許使用者將交易建立外包給第三方,而放棄對交易方的完全控制。」

讓我們來看一個真實的例子。Alice 在以太坊上有 10,000 USDT,她想用這筆錢獲得儘可能多的 GLP(在 Arbitrum 上)。今天,Alice 需要首先將她的資金從以太坊橋接到 Arbitrum,這需要選擇一個最佳的跨鏈橋。幸運的是,這可以通過像 Bungee 這樣的橋接聚合器完成。在將 USDT 連線到 Arbitrum 之後,Alice 現在需要決定她使用哪種資產來購買 GLP - 因為 GMX 在購買 GLP 時對不同的資產徵收動態費用以平衡池,這意味著如果 USDT 的費用太高,Alice 可能會將 USDT 交換到另一種資產 ( 即 ETH) 並使用 ETH 購買 GLP。為了做出決定,Alice 需要比較 GMX 上的費用差異和多個資產之間的交易滑點。這需要做很多工作,而且她的計算結果可能在她簽署交易時就不可用了——利率、價格和滑差一直在變化。

有了 Intent,該過程看起來會完全不同。Alice 只需要表達她的 Intent「我想獲得儘可能多的 GLP,至少 10 萬個,在以太坊上有 1 萬個 USDT」,Intent 求解器將為她完成所有的計算和交易,只給她最終的結果:Arbitrum 上的 GLP。

簡而言之,交易=你指定如何做;Intent=明確你想要什麼,但並不關心如何實現。

事實上,我們已經在以太坊上表達了 Intent。使用像 1inch 這樣的 DEX 聚合器的每次互換都是一個 Intent:你只需指定輸入量和滑差,並讓路由合約為你找到最佳路線。我們稱之為「simple Intent」。還有一種我稱之為「searcher Intent」的東西,就像在 Flashbots 拍賣中搜尋者對交易順序的偏好一樣。在我們稍後深入研究 Intent 的實現時,這一點很重要。然後是「arbitrary Intent」,即使用者可以表達任意 Intent 並完成 Intent。

使用者體驗革命

長期以來,區塊鏈糟糕的使用者體驗一直為大眾所詬病,許多人認為使用者體驗是阻礙大規模採用 Web3 的障礙之一。現在我們有了 Intent,這是一種互動範例,可以使區塊鏈的使用者體驗不僅與 Web2 相當,且實際上比 Web2 更好。在目前的 Web2 設定下,有最終目標的使用者仍然需要知道路徑,也就是說,如果你想購買股票 / 物品 / 食物,你需要知道使用哪個應用程式……但是 Intent 可以在不知道路徑的情況下實現最終目標。區塊鏈 dapp 的原生可組合性進一步使該模型與孤立的 Web2 應用程式相比具有可擴充套件性。

Intent 層

這個願景聽起來不錯,但我們首先需要一個 Intent 層,使用者可以在其中表達他們的 Intent,求解者可以通過競爭來解決這些 Intent。Anoma 和 SUAVE 是 Flashbots 的終極 Intent,它們都試圖成為區塊鏈的 Intent 層,同時使用完全不同的方法。現在比較它們還為時過早 ( 沒有人知道 Intent 層應該是什麼樣子 ),但有一件事是肯定的:構建 Intent 層是很難的。它的許多設計原則實際上是相互矛盾的,這在 SUAVE 的藍圖中有所體現:

1. 可信的承諾和去中心化

一個簡單的 p2p 網路的 Intent( 即,一個「Intent 記憶體池」) 不太可能工作,因為它不能保證使用者和求解者對 Intent 的承諾——例如,我們需要確保一個使用者將支付她承諾的金額,一旦她的 Intent 被解決,求解者必須遵守使用者設定的約束。一箇中心化的解決方案可以工作,但我們當然想要一個去中心化的解決方案,這就給我們留下了一個選擇:區塊鏈。是的,這就是為什麼 SUAVE 本身就是一個區塊鏈。

2. 隱私

我們希望求解器為使用者 Intent 提供最佳執行,這需要儘可能多的資訊;但同時不希望惡意行為者利用它們,這至少需要隱藏一些 Intent 資訊。目前存在兩個問題:首先,在技術上很難使區塊鏈上的可計算資訊保密。選擇有限:TEE, ZKP, MPC。沒有一個是完美的,Flashbots 提議使用英特爾的 可信執行環境(TEE),它已經在安全性(以及與加密解決方案相比的優雅性)方面引起了一些批評。。其次,目前尚不清楚是否會存在隱私的「適當平衡」。Flashbots 的最新產品 MEV-Share,或「proto-SUAVE」,可以將使用者的部分交易資料披露給搜尋者。這是否真的會讓使用者和搜尋者都受益還有待觀察:只有當搜尋者確切地知道交換的大小和滑點時,backrun 才會優化,而零資訊洩漏使得無法提取任何值。介於兩者之間的任何情況都將減少可能的最大盈餘。

3.intent 語言 / 協議

使用者還需要一種語言來表達 Intent。我們希望這種語言能夠表達任意的 Intent,這就是為什麼 SUAVE 將使用 EVM/Solidity——它是圖靈完備的。但我們也需要一個標準化 Intent 的協議,可能會限制語言,原因有兩個:首先,無限表達的 Intent 可能在鏈上無法解決或無法驗證。其次,表達性使模糊的 Intent 成為可能,模糊的 Intent 會產生更多的 MEV,我們希望將其最小化。這是另一個很難取得的平衡。

4. 跨鏈結算 & 預言機

由於 SUAVE 是一個獨立的區塊鏈,為了處理來自外域 ( 即以太坊 ) 的 Intent,就涉及跨鏈結算。以太坊使用者必須將資金存入 SUAVE,並承諾在他們的 Intent 得到解決時解鎖這些資金。而對於 SUAVE 上的智慧合約來說,驗證這一點是需要預言機的。因此,SUAVE 將面對我們今天在跨鏈橋中遇到的所有問題:安全性、速度、使用者體驗、信任假設等。

總結一下:我們想用區塊鏈去中心化 Intent 層,這就引入了跨鏈結算問題;我們希望為使用者提供更多的價值回報,這也可能帶來更多的罰沒;我們希望使用者按照自己的意願表達,但也需要確保他們表達的內容是可解決的。

Intent 層需要賬戶抽象

賬戶抽象(AA)通常被簡化為「無 Gas 交易」、「無金鑰恢復」,也許還有「利率限制」。是的,這些都很酷,但還不夠酷。AA 最酷的地方在於其架構,使錢包成為 Intent 的入口。

簡短回顧一下 AA:

以太坊上有兩種型別的地址:智慧合約和外部賬戶 (EOA)。EOA 可以發起交易,但智慧合約不能。因此,我們今天使用的大多數以太坊錢包都是 EOA。有像 Gnosis Safe 這樣的智慧合約錢包 (SCW),但由於智慧合約不能啟動交易,因此你需要 EOA 來提示 SCW。SCW 優勢:作為一個智慧合約,錢包可以執行任意邏輯,為錢包開啟無數新的應用程式,而 EOA 只能簽署交易。

為了使使用者能夠使用 SCW 而不需要單獨的 EOA, EIP-4337 引入了一個名為 User Operation 的新交易型別和一個名為 Bundlers 的新角色。通過 EIP-4337 後,SCW 的使用者流程為:

使用者傳送 UserOps( 指示他們想要錢包做的動作 ) 到 UserOp 記憶體池→捆綁者驗證並「捆綁」UserOps 在一起,執行它們 ( 簽名,支付 gas 費 ),將交易傳送到 EntryPoint 合約→EntryPoint 合約將交易傳遞給 SCW,提示 SCW 做使用者要求的事情→捆綁者從 EntryPoint 合約中獲得 gas 費退款 ( 為了簡單起見,我們將跳過 PayMaster)。

那麼,為什麼 Intent 層需要 AA?我們仍然以 SUAVE 為例。有兩種情況:

1. SUAVE 直接處理使用者 Intent

在這種情況下,正如我們提到的,使用者需要在 SUAVE 上存入資金並檢查和編寫智慧合約。這極大降低使用者體驗。這是非常違反直覺的——為什麼我需要將資金轉移到另一條鏈上並與之互動,而這只是為了在以太坊上做點什麼?在這裡,AA 和 SCW 開始發揮作用:你可以將 SUAVE 的所有互動邏輯包裝到以太坊錢包中。資金存款,執行驗證,一切都可以。這並沒有解決 SUAVE 面臨的任何根本挑戰——我們仍然需要一個無信任橋接器、一個 Intent 協議等。但至少使用者體驗本身可以通過 SCW 在很大程度上節省下來。EOA 根本無法做到這一點。

2. SUAVE 只處理搜尋者的 Intent

很明顯,Flashbots 將在其現有產品 ( 即 MEV-Boost 和 MEV-Share) 的基礎上迭代構建 SUAVE。考慮到為任意 Intent 構建可行協議的難度,SUAVE 很可能在很長一段時間內不會觸及使用者 Intent。相反,它將看起來更像目前的 Flashbots,後者主要處理交易順序的偏好,或者我稱之為「searcher Intent」。在這種情況下,必須有人首先將使用者的 Intent 轉化為交易,然後將交易提交給 SUAVE,這意味著 Intent 解決將在 SUAVE 之前發生。

那麼在這種情況下誰是 Intent 層?目前是 dapp,就像 DEX 聚合器解決簡單的 Intent。隨著 AA 的成熟,SCW 可能會成為事實上的 Intent 層,並從 dapp 和 SUAVE 中搶走午餐。原因如下:

目前,MEV 是對現有交易進行重新排序。然而,有了 Intent,大部分的價值在交易建立之前就已經被提取出來了,而 MEV( 如果我們仍然這樣稱呼它的話 ) 將是關於從 Intent 中建立交易的。求解器在接收到 Intent 後,可以隨心所欲地調整執行 ( 只要滿足約束 ),並將自己的交易插入 Intent 生成的交易中,將它們捆綁在一起作為一個原子交易。

最直接的例子就是三明治攻擊:現在,三明治攻擊者需要 inventory 來根據使用者交易來調整價格,並且必須信任中繼者、建設者和提議者,不要解除他們的三明治捆綁 ( 否則他們就會被徹底摧毀 )。但 Intent 求解者可以將使用者 Intent 無風險和無資本夾在一起:他只需要接受閃電貸,在使用者交換之前改變價格,在使用者交換之後再交換,償還閃電貸並獲利,所有這些都在一次交易中完成,因為所有涉及的步驟在技術上都是 HIS。

等等,這聽起來是不是很熟悉?讓我們再來看看這幅精彩的畫:

的確, Bundlers 非常像 Intent 求解器。它們接收 UserOps,將其轉換為交易,並隨意利用它們,因為從技術上講,這些交易屬於它們。

所以 Bundlers 將成為下一個搜尋者。這和錢包有什麼關係?關鍵是,UserOps 不是 Intent。UserOps 是偽以太坊交易,其 nonce 和簽名欄位的使用不是由協議定義的,而是由每個帳戶實現定義的。因此,必須有一個「Intent 到使用者操作」的過程。這正是 Intent 層所做的。

如果我們相信 SCW 將佔據主導地位,那麼只有一個合乎邏輯的結果:錢包成為 Intent 層。之前進入 dapp 的 Intent 和訂單流將被錢包前端攔截。使用者流將變成這樣:

注意,SCW 前端的 Intent 求解器很可能同時充當 Bundlers,Bundlers 也可能是區塊構建者。這種垂直整合產生了所謂的「Exclusive Intent Flow (EIF)」,就像 MEV 社群廣泛討論的 EOF (Exclusive Order Flow) 一樣。在我的上一篇文章中,我認為 EOF 不是一個問題,因為如果使用者發現自己遇到擁堵,他們可以很容易地切換執行器。但這一次的 Intent 將會有所不同:使用者不再擁有自己的交易。當然,他們也可以切換 Intent 層,但成本會比現在切換 RPC 高得多。

因此(不出所料),Intent 將進一步使 MEV 中心化。好訊息是,對於 Flashbots 和任何錢包來說,構建一個功能齊全的 Intent 層都是很困難的,所以我們在很長一段時間內都不會看到完整的 EIF。壞訊息是,錢包也可以迭代。記住,今天的 dapp 是 Intent 求解器,SCW 可以有外掛,或者錢包內的 dapp。在你的錢包裡安裝一個錢包外掛就像在你的安卓手機上從 Google Play 安裝一個應用程式一樣平常。這些錢包外掛將作為最早的 Intent 求解器,它們吸引的所有 Intent 都將首先彙集到錢包中。一個自下而上構建的 Intent 層。

現在我們可以回答這個話題中的問題了:我們離以 Intent 為中心的以太坊還很遠,但 Intent 將開始在使用者流量中發揮更大的作用,這將不可避免地永久改變 MEV 格局,智慧合約錢包將成為一個強大的價值提取器。使用者為獲得更好的使用者體驗而犧牲交易的所有權,希望設計巧妙的 Intent 層能夠公平地回報他們的 Intent 所產生的價值。

來源
免責聲明:以上內容僅為作者觀點,不代表Followin的任何立場,不構成與Followin相關的任何投資建議。
喜歡
收藏
評論