解密以太坊ERC4337變局 我們可以窺見哪些機會?

2023-11-01 10:44 金色精選


作者:Jerry Luo,Kernel Ventures

TL.DR

當下以太坊上主流的錢包類型有 EOA 和 SCW 兩種,但兩者分別面臨着執行效率低下和無法自主發起交易的問題。以太坊开發者幾經探索,現階段找到的最優方案是通過 ERC4337 實現的账戶抽象。

  • ERC4337 錢包通過 Bundler 實現了私鑰與账戶主體的分離,交易的批量處理並可以主動發起交易。同時,通過智能合約錢包的內置代碼,可以根據外界信息自動化處理交易。

  • 但這一提議仍然面臨着協議層账戶抽象和原生账戶抽象錢包等其他方案的挑战,同時 ERC4337 入口合約今年 3 月才上线以太坊主網,許多問題有待挖掘,最終方案存在較大不確定性。最後,由於 Entry Point 合約的單點性,ERC4337 在升級上受到了很大限制。

  • 爲了解決這些問題,ERC4337 的开發者也通過補充 EIP 提案,在不改動入口合約的情況下進行優化。對於 EOA 時代 Dapp 與 ERC4337 不兼容的情況,ERC4337 支持者自建了大量 ERC4337 的錢包項目和專注於 ERC4337 錢包交互的 Dapp 項目,這些項目提供了原來 Defi,Socialfi 中 EOA 账戶可以享受的各類交互並在可操作性上做出了優化。

總的來說,ERC4337 仍爲現階段實現账戶抽象的最優解。通過 Paymaster 的代償合約,降低了用戶參與 Defi 的門檻,項目方可以提供 0 gas 或者低 gas 交易來吸引更多用戶的參與。通過對交易的打包與批量化處理,大大優化了用戶在 Socialfi 和 gamefi 中的參與體驗,爲 Socialfi 和 gamefi 的參與者提供了更爲多樣的交互選項。

1.背景

去中心化和便利性的取舍一直是困擾 crypto 參與者的一大難題。如果要擁抱去中心化,就必須舍棄便利的 web2 操作模式,接收操作從簡單的點擊按鈕變爲保管助記詞,私鑰籤名,設置 nonce 值等一系列流程。而如果要追求便利性, FTX,JPEX 等一系列中心化機構的暴雷又使我們無法忽視账戶所有權的重要性。爲解決這一問題,以太坊开發者們做出了一系列的嘗試,使 web3 账戶具有 web2 的便利性——账戶抽象。今年的 ETHCC 大會上,以太坊創始人 Vitalik Buterin 總結了這些嘗試,其中得到开發者最大共識的便是 ERC4337 標准。

2.ERC4337 账戶抽象原理

ERC4337 在實現控制權和所有權與账戶主體剝離的過程中主要涉及到了三個對象 UserOperation, Bundler 和鏈上合約。UserOperation 主要包含了用戶的輸入,Bundler 完成了打包和觸發交易的過程,鏈上合約由 Entry Point, Paymaster Contract 和 Wallet Contract 三部分構成,主要實現了復雜的驗證和執行邏輯。

  • UserOperation:UserOperation 中包含了用戶提交的所有和交易有關信息,下圖展示了 UserOperation 中需要輸入的參數與普通 EOA 账戶發起一筆交易需要的輸入參數。

兩者最大的不同在於 ERC4337 錢包中可以指定 sender ,而不像 EOA 中默認 ECDSA 解籤地址爲交易發起者,因而 ERC4337 錢包實現了账戶主體與所有權的分離。其次,ERC4337 中還新增了 paymasterAndData 參數用於設置代付合約的具體信息。代付合約的具體作用我們也會在後面進行講解。

  • Bundler:Bundler 本質上是一個 EOA 账戶,對於傳入的 UserOperation,它首先對 calldata 中涉及與 Wallet Contract 的 validateOp 函數交互的代碼邏輯進行驗證,如果其中包含了 TIMESTAMP,BLOCKHASH 等代碼,或者是對錢包存儲之外的訪問,Bundler 會拒絕這筆 UserOperation,以防止一種叫做惡意模擬的攻擊形式。驗證通過後,Bundler 會打包傳入的多個 UserOperation 並在驗證通過後將其廣播至公有或者私有的 mempool 中。同時,由於以太坊中的智能合約必須由 EOA 账戶觸發,所以 Bundler 後續還要與 Entry Point Contract 交互以執行 UserOperation。這一過程中,Bundler 可以通過 maximum priority fee 與實際 gas 的差價,以及排序捆綁交易中的 MEV 收益。因此,ERC4337 的崛起或許也會給以太坊帶來 Bundler 礦工的新型挖礦方式。

  • Entry Point:Entry Point 是用來驗證和執行 UserOperation 中的內容的智能合約,由 Bundler 觸發,實現了 Bundler 和智能合約錢包的分離。同時 Entry Point 在 ERC4337 中爲單例合約,ERC4337 中每個 Wallet Contract 在創建時都會賦予 Entry Point 合約地址一個特殊認證一賦予交互過程中的特殊權限。Bundler 在調用 Entry Point 合約時會觸發合約裏的 handleOps 函數,這個函數首先會檢查錢包是否有足夠的 gas 補償 Bundler,如果沒有則直接回滾交易。此外,智能合約錢包還可以選擇由 Paymaster 合約代爲支付這筆 gas,這點我們會在後續的內容中提及。如果驗證全部都得以通過,接下來合約中的 _executeUserOp 內部函數將逐步執行 UserOperation 的 calldata 中的內容,調用智能合約錢包中的相應函數。一切結束後將剩余的 gas 補償給 Bundler。

  • Wallet Contract:Wallet Contract 本質上就是一個智能合約錢包,合約裏面有一個 multiCall 函數可以批量處理來自 UserOperation 的 calldata 裏面的數據從而大大降低 gas 消耗。但和普通智能合約執行過程中極爲不同的一點是,在 multiCall 函數中,UserOperation 內的內容並非直接執行,而是分爲了 validateOp 和 executeOp 的過程。如果 UserOperation 中的內容無法通過 validateOp,則將自動終止執行,同時整個過程中產生的 gas 消耗全部由 Bundler 自行承擔,而一但執行到了 executeOp 函數,無論因爲何種原因導致合約執行終止,所產生的 gas 消耗均由 Wallet Contract 承擔。這一機制既有效的保證 Bundler 可以通過自己的打包行爲獲取正當收益,又可以防止惡意 Bundler 發起的 Dos 攻擊,空耗 Wallet Contract 中存儲的 eth。

  • Paymaster:Paymaster 在 ERC4337 中不是必須的存在。當 UserOperation 中的 paymasterAndData 參數不爲空的時候,將由指定的 Paymaster 合約爲 Bundler 代付 gas。這個過程中,Bundler 會觸發 Paymaster 中的 validatePaymasterOp 函數,這個函數的作用是在檢查了 Paymaster 中是否有足夠余額支持支付 gas 後,按照用戶自定義的需求爲指定的 UserOperation 支付 gas。值得注意的是,ERC4337 自身並未規定一個標准對 Paymaster 使用的優先級進行排序,需要 Bundler 根據鏈下對 Paymaster 過往代付情況的記錄選定最優的 Paymaster 而淘汰質量較低的 Paymaster,這一過程形成了 Paymaster 間的競爭,有助於提升網絡運行效率。

  • Signature Aggregator:由於 ERC4337 中支持非 ECDSA 的籤名算法。所以我們首先要將使用不同籤名算法的 UserOperations 分類,然後由 Bundler 將同類交易通過 Signature Aggtegator 生成一個聚合籤名,一次驗籤便可以將裏面包含的交易全部進行驗證,這一過程大大降低了 gas 費的消耗。

整體來看,這個過程中用戶首先向 Bundler 發送包含了用戶自定義參數的 UserOperation,如果有 paymasterAndData 參數,則會調用代付合約對 gas 費進行支付。如果有 initCode 參數,用戶則會按照裏面的代碼邏輯創建一個新的智能合約錢包。最後,爲了降低驗籤過程的 gas 消耗,ERC4337 中採取了批量打包交易的方式,使用 Signature Aggregator 將同類的 UserOperation 打包生成一個聚合籤名,僅進行一次驗證。當鏈下 Bundler 的模擬驗證和鏈上的實際驗證都通過後,智能合約錢包便成功執行了 UserOperation 中用戶的自定義功能同時將多余 gas 退還給 Bundler 作爲獎勵。

相較而言,使用 EOA 账戶發起一筆交易就顯得極爲簡單,只需要某個 EOA 账戶對交易數據進行籤名後全網廣播即可。廣播的交易經過節點驗證後會被等待打包,最後由 POS 機制選出的具有記账權的節點記錄上鏈。這一過程非常簡潔,不存在中間商 Bundler 和 Entry Point 入口點合約,因爲會有相對較小的 gas 消耗。同時,安全性僅與 ECDSA 加密算法相關,不存在復雜合約邏輯帶來的內生安全風險。但是這一過程中私鑰和账戶控制權唯一綁定,無法變更,且必須對所有交易一個個進行籤名驗證,無法進行自動化的處理。

總而言之,ERC4337 實現了私鑰與账戶所有權的分離,通過批處理交易降低了復雜交易過程的 gas 消耗,通過代付合約消除了錢包的以太坊余額准入門檻,通過智能合約錢包實現了籤名方式的多樣化與账戶功能的自定義化,這些改進爲 web3 账戶的使用便利化,功能多樣化做出了巨大推進。

3.當下以太坊錢包的種類和優缺點

  • EOA(外部账戶):以太坊 EOA 账戶通過私鑰籤名進行控制,而私鑰由 12 個單詞組成的助記詞生成。雖然 EOA 账戶具有操作上的主動性,可以主動交易。但要保證 EOA 账戶的所有權,就必須妥善保存 64 位的一串 16 進制數字或者 12 個助記單詞,這給用戶的使用帶來許多不便。同時 EOA 账戶涉及身份認證的交易需要一個個進行籤名,極不方便,相當於將一次確認背後每次的狀態改寫和權限變更都要進行單獨的確認。最後,使用 EOA 账戶發起交易需要向账戶內預先轉入以太坊,這也提高了錢包的使用門檻。

  • SCW(智能合約錢包):智能合約錢包相對於 EOA 錢包在操作的便利性和自動化程度上有了很大的提升。通過智能合約內置代碼可以實現對交易的打包並按用戶意圖自動化執行復雜操作。但是 SCW 在權限上遠低於 EOA,無法自動執行交易,交易的發起需要一個 EOA 账戶觸發。

  • MPC(多方計算錢包):MPC 錢包將私鑰打散後交由多個主體保管,在需要籤名時再進行拼接。這聽起來和多籤錢包很像,但本質上兩者有很多不同。首先是 MPC 中只有一個私鑰,我們只是將私鑰進行了分片保管。再次是多籤的驗證完全是通過鏈上的智能合約,而 MPC 的閾值設置和籤名生成均在鏈下進行。MPC 錢包有效避免了單點故障,不用擔心 EOA 中丟失私鑰從而丟失账戶所有權的情況。但鏈下對籤名的生成過程屬於中心化過程,需要有嚴格的審查制度以防可能的作惡。同時 MPC 現在大多是定制產品且不开源,因而很難在开發過程中進行模塊化的嵌入,增大了开發成本。但需要強調的一點是, MPC 錢包和我們後面提及的 AA 錢包並不存在競爭。MPC 的解決痛點在私鑰保存,而 AA 解決的痛點是在改善交易過程的靈活性,兩者在未來的發展中可以結合使用。

  • AA(账戶抽象):账戶抽象的概率最早可以追溯到 2017 年的 EIP86,該提案中提出要將所有的账戶都變成合約,讓用戶自由定義自己的安全模。但這一提案涉及了以太坊共識層的改動,有比較高的難度,且存在一系列可能得安全問題。所以 EIP86 以及後續以 EIP86 爲代表的涉及以太坊共識層或協議層改動的提案均被無限期擱置。直到 EIP2938 的提出,大大減少了對以太坊底層的改動,並且通過設置節點的內存池規則解決了安全問題。账戶抽象的整體解決思路轉變爲了如何在僅更改智能合約層的基礎上實現账戶抽象。2021 年,ERC4337 提出,徹底實現了僅在智能合約層進行更改的前提下完成账戶抽象。今年 3 月,ERC4337 的 Entry Point 入口合約在以太坊上部署,账戶抽象進入 ERC4337 時代。

4.挑战與應對

4.1 账戶抽象標准未定

  • 共識層账戶抽象:首先是對於以太坊上 Layer1 上的账戶抽象,ERC4337 並非唯一方案。以 EIP2938 爲主導的共識層账戶抽象只是暫時被擱置而非完全否決。或許從現階段來看,账戶抽象帶來的利益無法驅使开發者在以太坊底層做出改動。但隨着 ERC4337 式账戶抽象开發到瓶頸,人們便會要追求更佳的用戶體驗。這時,可以提高合約账戶權限使其能主動發起交易,去除掉 Bundler 並降低交易成本與交易復雜度的共識層账戶抽象方案或許又會重新進入大家的考慮範圍。

  • 有待確定的 EIP 提案:其次,ERC4337 正式實施的時間不足一年,現在還在不斷發現問題並進行完善。因爲無法對 Entry Point 進行改動,所以暫時提出的優化 ERC4337 的 EIP 提案大都是涉及 Bundler 和 操作碼的優化,比如 EIP-1589 中可以防止 MEV 攻擊的 endorser 合約,以及涉及共識層變更的 EIP-3974 中所添加的將 EOA 账戶控制權托管給智能合約账戶的操作碼,這些提案能否通過還有待以太坊开發社區的討論。

  • Layer2 原生账戶抽象:最後還有 Layer2 上的各類原生账戶抽象錢包,比如 Starknet 與 Zksync Era。在 Starknet 中採用了不同於以太坊的 ECDSA 籤名,大大降低了籤名和驗籤過程的成本,從而大大降低了 gas 消耗。同時 Starknet 中僅有合約账戶,默認其爲頂級账戶,不需要再通過復雜的合約層操作便直接可以讓合約账戶主動發起交易,爲开發者提供了更靈活、豐富的應用設計環境。

總而言之,要在以太坊上進行账戶抽象,ERC4337 雖然是現今得到最廣泛認可的選項,但並非唯一選項。

4.2 ERC4337 自身缺陷

  • 更高的固定 gas 成本:ERC4337 錢包中基本操作的 gas 消耗爲 42000 gas,是普通 EOA 账戶的兩倍。具體原因如下:

可以看出,由於智能合約的引入,在執行合約業務(解包 UserOperation,執行條件驗證,鏈上哈希等)以及觸發事件並在以太坊上發布日志的過程中產生了巨大的 gas 消耗。同時,ERC4337 中所提出的交易批處理以降低交易成本的方式被證明在實際交易中並不實用,大多數的用戶往往不需要在一次調用中打包大量交易,僅在項目方發放空投等極少數情景下可以發揮 ERC4337 批處理交易的優勢。此外,原先爲了分攤交易成本的 UserOperation 一旦在鏈上執行失敗,也會給錢包账戶或 Bundler 帶來更高額的損失。

  • 升級成本高:在 Entry Point 智能合約中可以通過 entryPoint() 函數返回一個符合 IEntryPoint 接口的參數,在 Wallet Contract 中通過這個參數可以判斷外部的交易是否來自 entryPoint 合約中的函數調用。但這要求必須將 EntryPoint 的地址寫死在了每一個生成的智能合約账戶主體中,如果要對 EntryPoint 合約進行升級需要所有的智能合約账戶主體都同意。當 ERC4337 被廣泛接受後,這一改變的難度將會不亞於共識層的改動。所以 ERC4337 的部署必須非常慎重,做好各個方面的安全審計。而後續如果要進行性能的優化,也將會是一件非常困難的事情。

  • 合約安全問題:在原先的 EOA 账戶中交易過程簡單,交易安全性通過密碼學以及共識層的共識機制來進行確保。加密算法和分布式系統的共識機制都是經過了長期考驗以及學界認證的技術,出現漏洞的可能極低。而 ERC4337 錢包將許多原來通過區塊鏈共識機制驗證的操作改爲合約函數判斷,這對合約自身安全性的要求極高,而隨着交易邏輯的復雜化,安全風險也急劇上升。

4.3 ERC4337 的更新成本

傳統錢包巨頭的觀望

ChainCatcher 消息,MetaMask 產品負責人 Alex Jupiter 在接受 Decrypt 採訪時表示,盡管 EthCC 期間账戶抽象、EOA 等多種優化用戶體驗的技術被多次提及,但 MetaMask 會非常謹慎地採用這些技術.

MetaMask 作爲傳統錢包供應商,可以幫助用戶便捷的創造 EOA 账戶,並通過提供去中心化的 Swap 服務收取手續費。對於這類已經形成穩定盈利方式的傳統錢包巨頭,大都不愿意冒險做出改變,當下對账戶抽象也是多採取觀望態度,雖然積極探索但在嘗試方面始終保持謹慎態度。

Dapp 的更新成本

以太坊上現有的 Dapp 包括 Opensea,Uniswap,MetaMask Swap…..,均以 EOA 账戶作爲默認服務對象。而如果要使這些 Dapp 完全兼容 ERC4337 錢包,需要改變 Dapp 與錢包交互的審查機制以及代幣質押機制。要完成這一改變,現今主流 Dapp 的智能合約代碼都需要進行改動,這一過程可能產生的安全風險以及更新成本都無法估量。此外,考慮到之前 Tornado 合約而引發的 Dapp 對合約账戶的大量交易抵制,這一更新的工作量將更加巨大。

4.4 ERC4337 與跨鏈

在以太坊與 Layer2 進行交互的跨鏈橋中,往往默認接收網絡的收款地址爲發送網絡上付款的地址。這在傳統的 EOA 账戶中完全是沒有問題的,因爲同一把私鑰通過籤名便可以實現對兩個網絡上地址同樣的控制效力。但是在 ERC4337 錢包中,轉账發起地址爲合約地址,而並不受私鑰控制,也就不能把收款地址設置爲與發送網絡相同的地址了。所以 ERC4337 錢包與現今以太坊 Layer1 和 Layer2 之間幾乎所有跨鏈橋都存在不兼容問題。

4.4 ERC4337 的改進措施

  • EIP 提案改進:雖然 ERC4337 標准自身難以改動,但是我們可以通過提出新的 EIP 補充提案對 ERC4337 進行補充,比如 22 年 6 月提出的 EIP5189,通過引入 endoser 合約降低了 Bundler 篩選過程的風險以及進一步防止了 MEV 機器人的惡意攻擊。此外還有 EIP3074,EIP5003 等大量 4337 相關的待審查提案。

  • 跨鏈協議的補充:對於以太坊 Layer1 和 Layer2 跨鏈問題最根本的解決方法是從跨鏈橋的底層出發,用戶可以自行設置在接收網絡上的接收地址,但這一改進成本較高,設計到跨鏈橋的重新部署以及新合約的安全問題。目前比較理想的解決方案是通過設置一個可信的第三方 EOA 账戶,在 ERC4337 錢包和跨鏈橋間起到一個中間人的作用,而這要求這個中間人存有大量的 ETH 或者 Layer2 token 質押,每次在幫助執行一筆跨鏈前先質押超額資產,等收款的智能合約錢包接收到轉账後返回質押的 token,並給予一定獎勵。

  • ERC4337 的自建 Dapp:自從今年 3 月份入口點合約部署以來,大量基於 ERC4337 开發的錢包項目落地以太坊,這些項目自身便與 ERC4337 錢包兼容,比如高度可拓展的智能合約錢包項目 ZeroDev Kernel,與日本政府官方合作的錢包抽象項目 MynaWallet……。這些項目自成一個龐大的账戶抽象錢包生態,可以看到,即便在傳統錢包商多持觀望態度的情況下,以太坊上 UserOperation 的使用量從今年 3 月份以來仍持續攀升,處於快速擴張狀態。

5.ERC4337 帶來的機會

5.1 ERC4337 下的礦工 Bundler

ERC4377 中爲了使账戶主體與账戶控制權剝離而引入了 Bundler。只需要一個存儲了一定以太坊的 EOA 账戶便可充當 Bundler。相比傳統 POW 機制下的礦機挖礦,這種新型挖礦方式幾乎是零投入成本,同時也不存在可能的法律風險。

而相較 POS 機制下的質押挖礦,Bundler 具有極低的參與門檻,不需要質押 32 枚以太坊,僅需要留存可以與 Entry Point 合約進行一次交互的 gas 即可。

這一差異的本質原因是 Bundler 作惡的難度遠大於驗證節點而作惡產生的收益遠小於驗證節點,因而並不需要質押大量的以太坊以保證 ERC4377 協議整體運作過程中的獎懲平衡。

最後,相較於流動性池中的質押收益而言,Bundler 具有更短的鎖倉時間,從而使得資產有了更高的流動性,在以太坊面臨較大拋壓時,用戶可以及時取出以減少損失。

鑑於上述種種優勢,Bundler 未來很有可能成爲以太坊上的一種新型投資方式,並進一步衍生出類似於比特幣礦池,以太坊質押池的 Bundler 池。具有低成本,回報穩定,高流動性的特點。

5.2 ERC4337 下的 intent centric

Intent centric 即以「意圖」爲中心,指用戶在進行操作時無需了解具體執行步驟,而是程序根據用戶需求在底層自動執行模塊化的操作。對於新入 web3 的投資者,交易中的各種籤名,gas 設置非常不友好,所以他們即便對 crypto 感興趣,往往也只能借助 CEX 進行投資,無法進入真正的 web3 世界。這一現象產生的本質原因在於 DEX 和 CEX 中操作意圖的差異。

比如說現在有人想通過 DEX 以對自己獲利最大的方式將手上的 USDT 置換爲 ETH,那么他首先要從衆多交易池中進行挑選,選出最優的一個,然後籤名授權該 Dapp 一定權限,再籤名確認將 USDT 質押入流動性池,最後籤名確認從流動性池中提取出等值的 ETH。以上每一步操作都是基於行爲的操作,一個操作對應底層的一個行爲。但在 CEX 中,操作均爲基於意圖的操作。

爲了實現以最利方案將用戶持有的 USDT 置換爲 ETH 的意圖,僅需要一個市價掛單便可,用戶無需對具體掛單價位進行設置,了解。盡管有人提出,通過自己完成這一系列過程可以對交易過程有更具體的了解,防止模塊化流程中可能存在的固有問題。但總的來說,擁有這一能力的人還是極爲少數,多數人需要的只是一個可以實現他們意圖的模塊化流程,而沒有意愿了解背後對應的具體操作。同時,人爲操作過程相較經過長期檢驗的模塊化流程也存在更高的風險性。

在 ERC4337 账戶抽象誕生之前,EOA 账戶執行效率低下,需要對交易一個個進行籤名確認,因而需要按照用戶意圖模塊化處理交易的 intent centric 應用在以太坊上一直發展緩慢。而在 ERC4337 中通過引入 UserOperation 和 Bundler ,用戶不是每籤署一筆交易,經過驗證便放入主要內存池等待上鏈。而是首先將交易 ( ERC4337 中的 UserOperation) 發送到備用內存池和自己另外的或其他用戶的 UserOperation 混到一起,等待 Bundler 對這些 UserOperation 進行捆綁後一起提交給入口合約進行驗證和執行。

在這個過程中,用戶僅需聲明或籤署其偏好,具體過程由 Bundlers 按照已有的共識層或者合約層邏輯進行選擇與執行,無需用戶參與任何具體過程。在 Dapp 中,我們可以設計好 intent centric 邏輯,當用戶想要完成某一目標時,僅需對自己的意圖籤名即可,而不需要向原來一樣自己選擇交易行爲,並逐個籤名。可以預想,隨着 ERC4337 的全面推廣,intent centric 的 Dapp 將會在以太坊上得到普及,從而大大降低 web3 的進入門檻。

5.3 ERC4337 下的 Defi

Defi 在上一輪牛市與 EOA 账戶緊密結合,提升了 crypto 投資者鏈上交互功能的多樣性,提供了質押,做市商,借貸等多樣的金融方式,最終促成了 Defi Summer。但是 Defi 的復雜交易過程以及鏈上損耗爲普通用戶的參與設置了一個巨大的門檻,阻礙了 Defi 的進一步推廣。ERC4337 錢包與 Defi 結合後可以提供 intent centric 的交互方式,使用戶獲得接近 CEX 的體驗。同時通過 ERC4337 中的 Paymaster 還可以實現免 gas 交易,一些運營商也可以通過這個方式降低 Defi 的門檻,吸引更多的人參與。但是不同於 Socialfi 和 gamefi 等賽道, Defi 涉及大量 token 的轉账質押,對安全性有極高的要求。而账戶抽象的合約層具有比較高的復雜性,容易出現安全漏洞造成用戶加密資產的損失。同時,自從美國政府下達了對 Tornado 等許多洗幣合約的禁令後,許多 Defi 對合約地址都會嚴格審查甚至暫停與其交互,因而智能合約錢包與現行 Defi 系統存在大量不兼容的地方,在與 Defi 合約交互過程中甚至還有被誤判進入黑名單的可能,這也爲 ERC4337 錢包在 Defi 中的推廣帶來不少阻礙。

5.4 ERC4337 下的全鏈遊戲

不同於早期 gamefi 中的「半鏈」遊戲,僅將遊戲資產與道具進行了上鏈處理,通過去中心化的形式確保其資產安全。全鏈遊戲將遊戲的核心邏輯以及經濟模型都寫成了鏈上的智能合約,在鏈上進行遊戲交互,實現了全過程的去中心化以及高安全性。但是現階段的 web3 遊戲爲了實現全鏈也付出了巨大代價。首先便是 gas 費的激增,鏈上遊戲,道具,場景的交互,每一步都需要在鏈上記錄,這造成了遊戲成本的激增。

爲了解決此問題,現階段全鏈遊戲的交互邏輯往往極爲簡單,但這也限制了用戶的交易體驗。同時,如果使用傳統的 EOA 账戶,在全鏈遊戲的交互過程必須忍受極爲繁瑣的驗籤流程,對每一次交互進行確認,這使得遊戲體驗大打折扣。而引入账戶抽象後首先便是大大降低了交易成本,交易確認環節僅進行 BLS 聚合籤名和一次驗籤即可,大大節省了密碼學驗證過程的 gas 消耗。

此外,通過批量打包交易,可以將原來一次次確認的過程。同時,個性化智能合約账戶的引入可以爲全鏈遊戲的模塊化搭建提供便利,從而提高开發效率。但是截止目前爲止,账戶抽象與全鏈遊戲的結合更多的還是出現在 StarkNet 這類實現了原生账戶抽象的 Layer2 上面,比如 loot realms,cartridge 等項目。

不過原因並非以太坊上不適合進行全鏈遊戲與 ERC4337 錢包的結合,而是由於 Entry Point 合約今年 3 月才完成上鏈,所以多數以太坊上基於 ERC4337 的全鏈遊戲仍在开發中。

可以預見,近期便會有許多基於 ERC4337 的全鏈遊戲在以太坊上落地,從而大大提高其上全鏈遊戲的交互體驗以及降低交互費用。而以太坊現有的一些大型全鏈遊戲比如 Dark Forest, Wolf Games 等也可能會考慮對合約層做出更改,以兼容與 ERC4337 账戶的交互。

5.5 ERC4337 下的 Socialfi

困於私鑰账戶的捆綁機制以及 EOA 账戶自身有限的交互功能,長期以來 Socialfi 面臨着參與門檻高,账戶難管理的問題。不佳的用戶體驗大大限制了 SocialFi 項目的發展上限,账戶抽象的引入將徹底改變這一局面,但便利性、可追回性與安全性之間如何取舍,還要根據 Socialfi 具體 web3 账戶的重要性進行權衡。

首先是私鑰與账戶控制權的分離,用戶不再需要保管復雜又無序的私鑰或者助記詞,而且可以實現對账戶密碼的動態調整。比如 2021 年底推出的 ERC4337 項目 Ambire,便實現了通過電子郵件對 web3 账戶的創建與私鑰恢復。

其次,ERC4337 提供的批處理交易解決了本文开頭提出的 web3 門檻問題,web2 中一個按鈕可以解決的問題,web3 中也可以通過一個按鈕來解決。

最後,ERC4337 账戶中自定義代碼邏輯的引入也更貼近 web2 中账戶的個性化設計,可以使得每個 Socialfi 账戶按照自身喜好引入不同的账戶功能,類似於 QQ 中根據用戶喜好可以選擇开通頻道功能與否。

6. 未來展望

截止發稿,web3 用戶的數量級大概在 3 億左右,僅佔全球人口的約 4%,相較於全球 60 億的網民,還有很大發展空間。web3 要對 web2 的體量發起追趕,跨過 10 億人數這個大關,更低的參與門檻與更多的账戶自定義功能是前提條件。當前實現這一目標的所有選項中,ERC4337 相對風險降低,具有比較成熟的框架,還得到了以太坊基金會和主要开發者的認可。因此,自從 Entry Point 入口合約部署以太坊上以來,账戶抽象用戶的數量也是迎來了爆炸式的增長。

雖然 ERC4337 現在得到了廣泛的認可以及以太坊社區的推進,但在實際推行過程中還是面臨不少問題。

首先就是自身待定的標准,由於 ERC4377 的許多補充提案還在審核,所以最後的整體實現形式現在還無法確定,這爲 ERC4377 生態項目的开發帶來了很大的阻礙。

其次是 ERC4377 的更新成本,一旦部署入口點合約,需要全網多數錢包統一覆蓋原有地址才可以完成更新,成本極高。

最後是與現有 Dapp 和跨鏈橋的不兼容問題,如果要完成 ERC4337 的全面落地,以太坊現有 Dapp 需要大範圍升級,面臨極高的安全風險和成本。

但是 ERC4377 也有對以上問題做出了積極的應對,比如通過添加外部智能合約提高 Bundler 的打包效率,增添操作碼提高智能合約账戶權限,補充 EIP 提案解決 Entry Point 難以升級的問題。

同時,面對傳統 Dapp 的不兼容問題,ERC4337 積極的自建生態,促進账戶抽象錢包在以太坊上更爲廣泛的應用。ERC4337 錢包的全面落地,可以實現以太坊虛擬機層面的 evm intent-centric,而 evm intent-centric 在 Dapp 中進一步抽象便可使 web3 中的操作達到 web2 中以用戶意圖爲中心的簡易程度。

如果 intent centric 在以太坊 Dapp 可以全面實現,Defi,gamefi 以及幾乎所有對操作簡便性以及自動化有需求的賽道都將對用戶體驗做出大大優化,從而吸引更多圈外人士參與。但是 Defi 這種直接涉及 token 轉移的賽道增量相對會比較保守,因爲其對安全性有更苛刻的要求。而 Socialfi 和 gamefi 這類賽道更在意用戶體驗,相對弱化安全性。但之前苦於 EOA 账戶局限性,一直無法進行復雜交互設計。

通過 ERC4337,這些賽道可以解決原來用戶門檻過高和用戶體驗差兩大問題,從而迎來用戶量的大規模增長,甚至可能作爲下一輪牛市中的主要爆發點。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

標題:解密以太坊ERC4337變局 我們可以窺見哪些機會?

地址:https://www.sgitmedia.com/article/14453.html

相關閱讀: