跳至內容
0%

EIP-7702:Pectra 升級後 Ethereum 開發者快速整合指南

Lisa Ma headshot

作者 Lisa Ma

發布於 2025年5月19日閱讀時間 2 分鐘

Ethereum Pectra 升級中的 EIP-7702,讓 EOA 具備智慧帳戶功能
EIP-7702 讓 EOA 具備智慧帳戶功能

太長不看?我們懂。可以到我們在 X 上的系列文章看快速解說與示範。

Ethereum 的路線圖正朝主流加密貨幣採用邁進,其中 EIP-7702 掀起了不小的討論,該提案已納入Pectra 硬分叉。這次升級標誌著 Ethereum 邁向帳戶抽象化的關鍵一步,旨在讓鏈上體驗更順暢、更智慧、更容易使用。具體而言,EIP-7702 讓外部擁有帳戶(Externally Owned Accounts,EOAs)能夠使用智能合約帳戶的功能。

身為開發者,你們是下一代鏈上創新的架構師,我們的任務就是確保你們能充分運用 EIP-7702 的潛力。作為驅動數百萬個鏈上應用程式的基礎設施的建構者,我們在此提供指引。

這是我們深入探討 EIP-7702 系列文章的第一篇,專為像你這樣的應用程式開發者撰寫。接下來,我們將一起探討這項提案為何如此重要、其底層運作方式,以及決定是否(和為何)將這些新功能整合進你的應用程式時,需要考量的關鍵技術要點。讓我們一步一步打造未來。

太長不看版:

  • EIP-7702 讓 EOA 可以將控制權委派給智能合約帳戶,使其能夠直接從自己的地址執行程式碼
  • 它與現行的 AA 標準 ERC-4337 相容,因此現有錢包可以直接變成智能合約錢包,無需建立新地址或轉移資產
  • 對使用者而言,這將帶來類似 Web2 的功能,包括帳戶救援與 passkey 登入以簡化身分驗證,以及 Web3 的優勢,例如由他人贊助 gas 費用,以及不限於用 ETH 支付 gas,可用任何代幣支付

Ethereum 帳戶的現況

2024 年 5 月,Vitalik Buterin 提出了EIP-7702,這項提案有望從根本上改變 Ethereum 帳戶的運作方式。最初只是在一次全體核心開發者會議前 22 分鐘寫成的草案,如今已納入 Pectra 升級。EIP-7702 代表著邁向完整帳戶抽象化的重要一步,同時解決了眼前的可用性問題。

但要理解 Ethereum 未來的走向,我們得先了解它目前的架構

目前,Ethereum 使用者依賴兩種帳戶:由私鑰控制的外部擁有帳戶(EOAs),以及能直接執行程式碼的智能合約帳戶(SCA)

外部擁有帳戶

  • 可以發起交易
  • 無法直接從自己的地址執行程式碼
  • 僅限於基本操作

智能合約帳戶

  • 可以執行程式碼
  • 無法發起交易
  • 更具彈性和可程式化能力

EIP-7702 的目標是將這兩者合而為一,讓任何帳戶都能像智能合約一樣運作。透過讓 EOA 能直接從自己的地址執行程式碼,Ethereum 開發者可以打造媲美 Web2 體驗的鏈上功能,包括:

  • Session key
  • 帳戶社交救援
  • 不需要助記詞的身分驗證機制
  • 以及將多個操作合併為單次點擊完成

以下是你應該了解的 EIP-7702 運作方式。

關於 EIP-7702 與 ERC-4337 你該知道的事

EIP-7702 並不會取代 Ethereum 現有的 AA 標準 ERC-4337。EIP-7702 的設計是要與 ERC-4337 互補,讓帳戶抽象化功能更容易觸及使用者。但 ERC-4337 確實有一個限制:

  • 由於它與 EOA 不向下相容,因此需要建立新錢包

EIP-7702 移除了這項限制,且無需對 EVM 的共識邏輯做更深層的變動:

  • 使用現有錢包
  • 不需要新帳戶或遷移
  • 與 ERC-4337 的基礎設施完美搭配
  • 現有 EOA 只需透過委派指定符(delegation designator)委派智能合約邏輯

EIP-7702 的執行流程

EIP-7702 依賴一種巧妙的委派機制,需要使用者提供執行智能合約程式碼的授權。這項授權在使用者明確撤銷之前會一直有效,也就是說使用者必須信任他們所授權的程式碼並非惡意。

執行流程如下:

  1. 設定:EOA 決定將控制權委派給智能合約錢包
  2. 驗證:系統檢查委派是否已正確簽署
  3. 執行:EOA 取得智能合約的功能
  4. 清理:如果 EOA 決定撤銷智能合約的控制權,必須再送出一筆 7702 交易,將委派設回 0

透過儲存委派指定符,EOA 得以像智能合約帳戶一樣運作。這個指定符是一種特殊程式碼,0xef0100 \|\| address,其中 address 指向包含所需功能或操作的智能合約。

委派指定符使用被禁用的 opcode 0xef,以便與一般資料區分,確保程式碼執行操作會從指定的地址載入程式碼。

當交易發送給該 EOA 時,EOA 會執行指定地址上的程式碼,取得智能合約帳戶的功能。

應用程式開發者需考量的採用與安全性議題

EIP-7702 能否普及主要取決於一項因素:錢包提供商。由於錢包位於應用程式的上游,若沒有錢包支援,應用程式開發者及其使用者就無法運用 EIP-7702 帶來的功能。

與智能合約帳戶相比,EIP-7702 也呈現出不同的安全模型。主要是因為 EIP-7702 帳戶仍保留原本的 EOA 私鑰,這把私鑰可以覆寫智能帳戶的安全規則。

至於該如何整合 EIP-7702 啟用的錢包功能,應取決於幾項因素:你的應用程式所處的開發階段、你鎖定的使用者類型,以及你在跨多條鏈部署應用程式時需要多大的彈性。

給已有使用者與內嵌錢包的開發者

如果你已經有內嵌錢包,那很幸運。我們會協助你透過smart accounts管理不同類型的使用者:

  • 現有 EOA 使用者可以升級為 ERC-4337 帳戶
  • 新使用者可以直接以純 ERC-4337 帳戶開始
  • 系統將同時支援智能 EOA(EOA+7702)與純 ERC-4337 帳戶

給尚未部署應用程式的開發者

對於全新開發的應用程式:雖然 ERC-4337 與 EIP-7702 都能實現帳戶抽象化,但在現代區塊鏈應用程式中,兩者服務的需求不同。

ERC-4337 提供純粹的智能合約帳戶,具有最大的可程式化能力、廣泛的交易客製化,以及成熟的工具生態,非常適合單鏈應用程式,以及大多數以帳戶功能為核心考量的多鏈應用程式。

相對地,EIP-7702 提供一種混合方式,讓帳戶能同時以 EOA 和智能合約的身分運作,實現無縫的跨鏈相容性與跨網路一致的地址,且由於不需要立即部署合約,初始 gas 成本也較低。

在以下情況選擇 ERC-4337:

  • 深度的帳戶可程式化能力是核心需求
  • 你正在打造多鏈應用程式,但不需要在部分鏈上使用 EOA、在其他鏈上使用 SCA 的彈性
  • Gas 成本不是主要考量
  • 你需要廣泛的交易客製化
  • 你想運用現有的 4337 基礎設施

在以下情況選擇 EIP-7702:

  • 你正在打造多鏈應用程式,且跨網路一致的地址是關鍵需求
  • 初始 gas 成本是你的考量
  • 與 EOA 基礎設施的向下相容性很重要
  • 你想要從簡單開始、日後再逐步升級的彈性

EIP-7702 的主要優勢在於它的彈性:你不必在 EOA 與智能帳戶功能之間二選一,這對於需要同時與傳統和現代區塊鏈基礎設施互動、並規劃跨鏈擴展的應用程式來說格外有價值。

給與外部第三方錢包合作的應用程式

許多最廣泛使用的錢包,例如 MetaMask,計畫在今年納入智能錢包功能。以下是一些值得你深入研究的主題:

其他考量事項

若應用程式開發者決定使用 EIP-7702 升級現有 EOA,並希望使用 7702 啟用的所有功能,就需要一個 relayer。 relayer 架構有很多種,但我們建議使用 4337 bundler,原因如下:

  • 提供標準化的中繼介面;
  • 內建 paymaster 系統;
  • 確保未來相容性;以及
  • 可透過公開的 mempool 支援抗審查性

如果你需要 4337 bundler,Alchemy Bundler 能滿足你的需求。

展望未來:邁向主流採用之路

雖然 EIP-7702 有望讓 Ethereum 更貼近 Web 的使用體驗,但開發者應注意,主網啟用後的實際採用情況仍取決於錢包是否率先整合這些功能——因此 EIP-7702 的可用性初期可能會受到限制。若想掌握 Ethereum 開發者社群最新的討論動態,可以到這裡查看最新文章。

我們協助你整合 EIP-7702

智慧錢包帶動使用者與交易量成長
智慧錢包帶動使用者與交易量成長

Smart wallets能協助你以零摩擦的方式將全世界帶上鏈。你現在就能運用 EIP-7702 升級現有 EOA,或部署新的 ERC-4337 帳戶。

  • 零摩擦上手體驗:透過內嵌錢包,實作使用者熟悉的電子郵件與社交登入
  • 免 Gas 交易:為使用者贊助 gas 費用,並實現一鍵完成交易
  • 智能帳戶整合:輕鬆整合 SDK,並支援 ERC-4337、ERC-6900 與 EIP-7702

我們在此協助你學習、開發並上線!

  1. 探索:閱讀文件開始建構
  2. 需要協助?與我們聯繫!我們的團隊全年無休,隨時協助你實作這些功能

常見問題

什麼是 EIP-7702?

EIP-7702 是納入 Pectra 硬分叉的 Ethereum 升級,讓外部擁有帳戶(EOA)能夠將控制權委派給智能合約帳戶,使其獲得智能帳戶的功能,例如批次交易、gas 贊助與社交救援。

EIP-7702 如何與現有 EOA 搭配運作?

EIP-7702 讓現有 EOA 無需建立新帳戶或轉移資產,即可獲得智能合約功能。EOA 會儲存一個指向智能合約的委派指定符,使其能夠直接從自己的地址執行程式碼。

EIP-7702 與 ERC-4337 相容嗎?

是的,EIP-7702 的設計目的是與 ERC-4337 互補,而非取代它。ERC-4337 提供純粹的智能合約帳戶,而 EIP-7702 則讓現有 EOA 也能使用那些帳戶抽象化功能,無需建立新錢包或進行遷移。

EIP-7702 為使用者帶來哪些功能?

EIP-7702 帶來類似 Web2 的功能,包括帳戶救援、以 passkey 登入簡化身分驗證、由他人贊助的 gas 交易、可用任何代幣(不限於 ETH)支付 gas,以及將多個操作合併為單筆交易。

使用 EIP-7702 功能需要 relayer 嗎?

如果你想使用 EIP-7702 啟用的所有功能,就需要一個 relayer。我們建議使用 4337 bundler,因為它們提供標準化介面、內建 paymaster 系統,並確保未來相容性。

什麼時候該選擇 EIP-7702 而非 ERC-4337?

當你在打造需要跨網路維持一致地址的多鏈應用程式時、初始 gas 成本是考量因素時、與 EOA 基礎設施的向下相容性很重要時,或是你想要從簡單開始、日後再逐步升級的彈性時,就適合選擇 EIP-7702。

EIP-7702 的委派可以撤銷嗎?

可以,委派在使用者明確撤銷之前會一直有效。若要撤銷智能合約控制權,必須再送出一筆 7702 交易,將委派設回零。

EIP-7702 採用的主要依賴因素是什麼?

主要依賴因素是錢包提供商的支援。由於錢包位於應用程式的上游,若沒有錢包整合,應用程式開發者及其使用者就無法使用 EIP-7702 的功能。

Background gradient

打造區塊鏈魔法

Alchemy 結合最強大的 Web3 開發者產品與工具,並提供資源、社群與卓越的支援。