EIP-7702引領帳戶抽象新時代 一文讀懂以太坊AA發展歷程與未來

深入解讀以太坊帳戶抽象賽道的過去與未來

前言

本文分爲兩大部分:

首先,從2015年第一個AA提案開始,系統梳理目前爲止的EIP提案主要內容,探討AA歷史提案的演進,並全面評估各方案的優缺點。

其次,重點對比EIP4337推出後面臨的市場反饋不佳的情況,深入分析即將納入以太坊下一版本升級的EIP7702。該提案一旦合並,將全方位改變鏈上應用形態。

EIP-7702具有劃時代意義,下面讓我們詳細了解一下。

1. 帳戶抽象的背景

1.1 帳戶抽象的意義定位

以太坊創始人Vitalik在2023年底再次更新ETH發展路線圖,但關於帳戶抽象的設定並未改變。目前主流模式正從EIP-4337邁向下一階段的自願轉換EOA帳戶。

在EIP4337推出一年多後(2023年3月1日在丹佛的WalletCon上,以太坊基金會開發人員設計實現的ERC-4337核心合約通過OpenZeppelin審計,被視爲正式推出的歷史節點),雖然得到用戶廣泛認可,但使用率並不高。在這種矛盾的市場環境下,EIP-7702的進度大幅提前,已確定將在下次升級中合並。

1.2 帳戶抽象的市場現狀

經過一年半發展,EIP4337在主流鏈上的帳戶總數僅1200萬,其中以太坊主網上活躍地址只有6,764個,與EOA和CA地址數相差甚遠。目前以太坊主網獨立地址數已達2.7億。可以說EIP4337在主網上幾乎沒有實質性發展。

不過,這並不影響AA的本質價值。EIP4337的設計注定了它難以解決主網的向前兼容性問題。隨着各類L2鏈普遍嵌入原生AA,EIP4337地址數在L2上獲得爆發,其中Base和Polygon鏈7月月活用戶分別達到100萬和300萬,表現不錯。

因此,EIP4337的設計並非有問題,它有很多優點,目前的現狀源於主網與L2之間的差異,它們需要採用各自適合的方案。

深入解讀以太坊帳號抽象賽道的過去與未來

2. 什麼是帳戶抽象?

帳戶抽象本質上解決的是產權分離問題。

EVM架構中有兩種帳戶:外部帳戶(EOA)和合約帳戶(Contract Account)。外部帳戶的所有權和籤名權實際上由同一主體持有。持有私鑰的人不僅擁有帳戶的"所有權",還有權"籤名轉移所有資產"。

這是由以太坊帳戶交易結構決定的。從交易結構可以看出,以太坊的標準交易實際上沒有From字段。進行資金轉帳時,具體消費哪個地址上的資金,是通過VRS參數(即用戶籤名)反解析出From地址的。

這涉及ECDSA等非對稱加密、單向門限函數等概念,我們不做展開。總之,這裏由密碼學來保障安全性,但也造成了目前產權合並的EOA地址困境。

EIP4337的核心效果,就是在交易字段中增加了Sender Address字段,從而能讓私鑰與被操作的地址分離。

產權分離如此重要的原因在於,外部帳戶(EOA)設計會衍生出更多問題:

  1. 私鑰難保護:用戶失去私鑰(遺失、黑客攻擊、密碼學上的被破解)意味着失去所有資產。

  2. 籤名算法單一:原生協議在驗證交易上只能使用ECDSA籤名和驗籤算法。

  3. 籤名權限過高:無原生多籤(多籤只能通過智能合約實現協作),單籤即可執行任意操作。

  4. 交易手續費只能用ETH支付,不支持批量交易。

  5. 交易隱私泄露:一對一交易容易分析帳戶持有者的隱私信息。

這些限制讓普通用戶難以使用以太坊:

首先,使用以太坊上的任何應用,用戶都必須持有以太(並承擔以太價格波動風險)。

其次,用戶需要處理復雜的費用邏輯,Gas price、Gas limit、交易阻塞(Nonce順序)等概念對用戶來說過於復雜。

最後,雖然許多區塊鏈錢包或應用試圖通過產品優化提高用戶體驗,但效果有限。

因此,解決方案在於實現帳戶抽象,將所有權(Owner)和籤名權(Signer)解耦,從而逐步解決上述問題。

歷史上有很多方案,最終都歸結爲兩種路線。

深入解讀以太坊帳號抽象賽道的過去與未來

3. AA歷史提案脈絡梳理

問題的解決方案看似有很多EIP提案,但歸根結底就是兩種核心思路。過去每個未通過的EIP考慮的問題也匯聚成了現在方案的突破點。

3.1 第一種路線是將EOA地址變爲CA地址

早在2015年11月15日,圍繞EIP-101,Vitalik就提出以合約作爲帳戶的新結構。將地址改爲只有代碼和存儲空間,改變手續費支持由ERC20支付,通過預編譯合約將原生代幣改爲類ERC20來存餘額(可具備代扣授權等功能),將交易字段精簡到只有to、startgas、data和code。

現在看來,這是一種大躍進式變革,會大幅改動底層設計,讓每個帳戶地址都擁有自己的"代碼"邏輯(這正是目前EIP-7702要實現的效果)。

還能衍生出其他功能,比如:

  1. 讓交易使用更多加密算法,可由各地址內部Code指定驗籤鑑權方法。

  2. 具備抗量子攻擊特性,因爲代碼具備升級特性。

  3. 讓以太幣具備與ERC20合約一致的功能特性,核心效果是實現代扣授權,從而無需消耗原生幣。

  4. 提升帳戶的自定義空間,兼容社交恢復、SBT支持、密鑰找回等。

未能繼續推進的原因很簡單,顯然步伐太大,對當前交易哈希衝突問題、安全性隱患考慮不周,所以一直擱置。但每個優點的理念都成爲後續EIP4337以及EIP7702的核心功能之一。

之後還有一系列EIP試圖完善這種邏輯:

EIP-859:主鏈帳戶抽象(2018-01-30)

試圖解決Code的部署問題,核心作用是,如果出現交易方合約未部署的情況,則使用交易附帶code參數執行合約錢包部署。其次還提出新的PAYGAS操作碼,除了支付gas外,也成爲一筆交易的參數中驗證部分與執行部分的分隔符。

雖然當時未能實現,但這也成了現在EIP7702的核心邏輯之一。EIP7702的每筆交易結合特殊的交易結構,可以附帶一定的代碼,從而在本次交易中讓EOA地址擁有合約能力。

EIP-7702:設置EOA帳戶代碼(2024-05-07)

這也是本文後續討論機制的核心EIP,由Vitalik發表,作爲EIP-3074的替代方案。因此EIP-3074被棄用,EIP-7702被確定在即將到來的ETH Prague/Electra(Pectra)硬分叉中納入,具體內容我們在下文展開。

3.2 第二種路線是讓EOA地址驅動CA地址

EIP-3074:增加AUTH和AUTHCALL操作碼(2020-10-15)

在EVM中加入兩個新的OpCodes:AUTH和AUTHCALL,讓EOA能通過這兩個opcode授權合約代替EOA的身分去調用其他合約。

概括來說,一個EOA能將一則已籤名的消息(交易)發送至自己信任的合約(稱作Invoker)上,此Invoker合約可以利用AUTH和AUTHCALL操作碼來代替這個EOA發出這筆交易。

EIP-4337:用交易內存池實現帳戶抽象(2021-09-29)

受到MEV的啓發進行設計,其核心價值是可以完全避免共識層協議更改。

EIP4337提出新的交易對象UserOperation,用戶將此對象發送到內存池中,由bundlers從礦工維度批量打包交付合約執行交易事務,本質上是把底層的交易與帳戶運作拉到合約層面執行。

EIP-5189:通過背書人來操作抽象帳戶(2022-06-29)

這算是優化了EIP4337的邏輯,是面對惡意的Bundler通過建立資金罰款背書endorser的機制來防止DoS阻塞攻擊。

3.3 其他用於支持AA的提案

EIP-2718:新交易類型的包裝信封(2020-06-13)

這是一個已經Final的提案,它定義了一個新的交易類型,作爲未來新增交易類型的信封。

最終效果是,當引入新的交易類型時,通過特定編碼來區分這是哪一種交易,讓其只需有向後兼容性,而無需往前兼容。最常見的例子就是EIP1559,它區分了交易的手續費,使用了新的交易類型編碼,又不影響最初的legacy交易類型。

EIP-3607:讓EOA地址不可部署合約(2021-06-10)

這是AA路徑上的補充方案,用於防止合約部署地址與EOA地址衝突的問題。它會控制合約生成方法,讓系統不允許將代碼部署到已經是EOA地址的地址上。這個風險其實很小,畢竟以太坊地址有160位長,雖然存在用私鑰碰撞出指定合約地址私鑰的方法,但以比特幣全算力投入估計,也還需要一年的時間。

深入解讀以太坊帳號抽象賽道的過去與未來

3.4 如何理解帳戶抽象發展歷程?

首先需要理解轉爲CA後的價值。

基本上也就是EIP-4337的實際效果,它可以實現:

  1. 支持多籤名和社交恢復
  2. 無Gas交易(燃料代付)
  3. 批量交易
  4. 自定義籤名算法
  5. 支付代幣作爲手續費
  6. 交易限額
  7. 帳戶鎖定
  8. 時間鎖
  9. 單次授權籤名

但是,EIP-4337的核心缺點是違背人性動機原則。

它看起來是更好了,但陷入了一種市場發展的死循環:Dapp很多還不兼容,那用戶就不願意使用CA地址,甚至使用CA有更高的交易成本(普通轉帳場景,也會交易費用翻倍),也太依賴於Dapp本身的兼容性。

所以在以太坊主網上迄今爲止始終沒有得到普及。

成本就是用戶最重要衡量的標準,必須降低成本。

但要真正降低GAS,就必須以太坊本身做軟分叉升級,修改GAS計算或者修改操作碼的GAS消耗等模塊。然而既然要軟分叉,那何不直接考慮EIP-7702呢?

深入解讀以太坊帳號抽象賽道的過去與未來

4. 全面解析EIP-7702

4.1 EIP-7702是什麼

它通過新的交易類型來區分,允許EOA在單筆交易中臨時具備智能合約的功能,進而支持業務上進行批量交易、無Gas交易和自定義權限管理等,且無需引入新的EVM opCode(影響往前兼容性)。

它可以讓用戶在不部署智能合約的情況下,就可以獲得大部分AA的能力,甚至可以提供第三方代用戶發起交易的能力,且不需要用戶提供私鑰,只需籤名授權的信息。

4.2 數據結構

它定義了新的交易類型0x04,該交易類型的

ETH2.99%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 6
  • 轉發
  • 分享
留言
0/400
DA_Odreamervip
· 07-28 06:20
又是新eip 谁懂啊
回復0
FlashLoanLarryvip
· 07-26 15:30
嗯,4337只是一个下探测试……7702才是真正的mev收益流动的地方,老实说。
查看原文回復0
数据酸菜鱼vip
· 07-25 08:01
AA又来割新韭菜了?
回復0
链上小透明vip
· 07-25 08:01
4337也不行啊,看来全靠7702救场了
回復0
空投猎手007vip
· 07-25 07:51
4337啥都好 就是烧 gas
回復0
逃顶大师vip
· 07-25 07:45
又是割肉主力的老朋友7702了 熟悉的套路不知道这次多少人上车
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)