原文標題:ERC-6900 & Modular Account Abstraction: What It Means for Smart Contract Wallets
原文作者:Paul Huh
編譯:Lynn,MarsBit
作為開發人員,我們不斷尋求突破創新界限並創建更通用的解決方案的方法。您是否想知道如何增強智能合約錢包的可定製性並釋放其真正潛力?準備好了解新部署的以太坊標準,該標準支持模塊化帳戶抽象,這將徹底改變開發人員與智能合約交互的方式:ERC-6900 。
在本文中,我們將踏上一段激動人心的旅程,探索 ERC-6900 的影響以及智能合約帳戶中模塊化帳戶抽象的集成(僅供參考:在本文中,智能合約帳戶和智能合約錢包可以互換使用。)發現它們為開發人員和用戶提供的潛在機會,以解鎖 EVM 生態係統中的創新新領域。
在我們開始之前,先向 Rhinestone 的 Konrad 致敬,他編寫了關於 ERC-6900 所基於的架構的 OG 內容!現在,您準備好深入研究並了解有關 ERC-6900 和模塊化 AA 的更多信息了嗎?讓我們深入探討——首先簡單介紹一下 ERC-6900!
什麼是 ERC-6900?
以太坊標準 ERC-6900 於 2023 年 4 月部署,提出了模塊化智能合約賬戶和賬戶插件的概念,這本質上實現了可組合邏輯(想想樂高積木!)。根據該提案,ERC-6900 符合賬戶抽象標準 ERC-4337,並且受到 ERC-2535 “鑽石模式” 的啟發,定義用於查詢和更新模塊化功能實現的 UI 。
您可以將 ERC-6900 視為 ERC-4337 旨在實現的目標的延伸,特彆是為每個智能合約錢包的執行和驗證抽象邏輯的目標。 ERC-6900 使開發人員能夠抽象執行和驗證的邏輯,以便為智能合約錢包創建新功能。
ERC-6900 的模塊化方法將智能合約錢包的功能重新分類為具有三個不同類別(下面列出和定義)的模塊化 SCW:
- 驗證功能:可以驗證調用者的真實性和帳戶的權限
- 執行功能:允許執行帳戶允許的自定義邏輯
- hook:啟用自定義邏輯的執行以及執行前/執行後函數的身份驗證
然後,這些模塊化功能被實現到外部合約中,並具有來自智能合約錢包的預期執行流程。
智能合約錢包背景下的模塊化帳戶抽象是什麼?
模塊化帳戶抽象是 AA 的一個子組,AA 本身就是一個生態系統,它將模塊化智能合約錢包(帳戶)引入到更廣泛的 EVM 生態係統中。模塊化智能帳戶不僅為用戶提供了更好的可定製性,而且還簡化了開發人員智能合約錢包功能的開發。為了更好地理解模塊化帳戶抽象,讓我們更多地了解模塊化 AA 背景下的 “模塊” 是什麼。
什麼是模塊以及它們為何重要?
模塊通常被稱為插件(如 EIP-6900 中所述)或方面(如 ERC-2535 中所述),是 “樂高積木”,使功能能夠擴展智能合約錢包的功能,使它們成為極其有價值的組件 AA 生態系統。您還可以將它們視為由用戶授權的外部智能合約,為智能合約錢包實現擴展功能,同時將模塊邏輯與核心智能合約隔離。
模塊可以啟用的各種功能包括:
- 不同簽名方案的使用
- 代幣傳輸時觸發特定操作
- 每日支出限額
- 允許支出而無需其他所有者同意的預算
- 通過會話密鑰重複交易
- 在特定日期安排和/或自動交易
- 社會恢復
這些只是模塊功能的幾個示例 – 創意無限!

最後,根據智能合約錢包的實現,構建和執行模塊有不同的方法。此外,模塊的結構取決於功能的目標帳戶實現。例如,我們在 Permissive 的朋友是一個團隊,正在積極構建智能合約錢包授權框架的模塊,主要關注精細的訪問控制,允許用戶向各方授予智能帳戶執行的特定操作的權限。
模塊化實現需要需要某些功能的用戶和構建這些功能的模塊開發人員之間存在一定程度的信任,這將我們引向模塊化 AA 生態系統的另一個方面——模塊注冊表。
模塊注冊表:模塊開發的信任機制
現有的智能合約和智能帳戶的模塊化實現依賴於用戶和模塊開發人員之間的信任假設。然而,最終目標是消除這種假設,並使非技術用戶能夠安全地將模塊添加到他們的錢包中。為了實現這一點,模塊注冊表可以將用戶和開發人員之間的信任假設合並到單個實體中。
儘管這表明采用集中式方法,但開發人員和社區的願景遠非如此——解決方案是無需許可的開放注冊表。最終,這允許具有不同安全假設的不同各方參與,並且用戶可以根據自己的偏好選擇信任誰。
模塊化 UI:模塊化 AA 家族中被忽視但有價值的成員
根據以太坊基金會的 Yoav Weiss 的說法,模塊化 AA 的一個重要但經常被忽視的方面是模塊化 UI 或客戶端設計。模塊化 UI 至關重要,因為必須定製 UI 組件才能激活特定的鏈上功能,例如函數選擇器、參數編碼以及潛在的客戶端或服務器端邏輯。創建一個安全的模塊化 UI 來容納外部模塊開發人員對於模塊化 AA 和智能合約錢包的成功增長和開發至關重要。
接下來,讓我們進入一個非常重要的部分,了解更多關於 ERC-6900 對開發人員的價值。
ERC-6900 和模塊化 AA 為開發者提供什麼價值?
通過模塊化 AA 實現模塊不僅使開發人員能夠為智能合約構建更多可定製和可擴展的功能,而且還能夠重用模塊,而不必重寫整個合約來添加功能。換句話說,通過模塊的實現,ERC-6900 進一步增強了開發者為智能合約錢包創建新功能的智能合約開發的靈活性。
此外,ERC-6900 通過概述模塊化智能合約錢包(帳戶)的實現,支持模塊開發人員和錢包開發人員之間的功能實現協作,無縫容納符合既定標準的各種模塊。
最後,通過采用 ERC-6900,開發者不僅可以構建實現模塊化、可升級的執行和驗證邏輯的智能合約錢包,還可以增強模塊開發的安全性和互操作性。要進一步閱讀有關模塊開發的內容,請查看 Safe 的這份有用指南和 ZeroDev 的另一份指南。
ERC-6900 的未來前景
由於 ERC-6900 仍然相對較新,並且未來可能會發生變化,因此很難看出最終標準會是什麼樣子。然而,已經提出了一些建議:
- 更新所有函數調用,包括執行函數、驗證函數和掛鉤,以使用 “call” 而不是 “delegatecall”,以確保存儲和執行代碼在每個模塊的基礎上隔離,從而消除了意外或惡意存儲覆蓋的風險模塊,從根本上改變模塊的信任模型
- 將全局鉤子和常規鉤子合並為一個稱為 “鉤子組” 的統一概念,該概念可以靈活地將每個鉤子類型作為可選字段包含在內,並為帳戶提供適當的可執行性,以在執行函數和適用的鉤子組之間建立連接
- 引入預驗證鉤子,這是一種新型鉤子,不僅在用戶操作驗證器或運行時驗證器之前執行,而且還用於執行權限檢查和其他與簽名驗證無關的預交易驗證
結尾
總之,ERC-6900 的部署以及智能合約錢包中模塊化帳戶抽象的集成為開發人員提供了令人興奮的可能性。通過引入模塊化智能合約錢包和帳戶插件,開發人員可以增強其 dApp 的可定製性和多功能性。通過實現模塊化功能並遵守 ERC-6900 標準,開發人員可以創建可組合邏輯,引入簽名方案和重複交易等功能,並改善模塊和錢包開發人員之間的協作。
隨著 ERC-6900 的不斷發展,更新函數調用、鉤子組和預驗證鉤子等提案有望增強智能合約錢包中模塊化賬戶抽象的安全性和功能性。最終,通過採用 ERC-6900,開發人員可以開啟新的創新領域,並創建更強大、更靈活的智能合約錢包。
要進一步閱讀更廣泛的 AA 生態系統,您可以查看這篇關於 ERC-4337 的誤解和挑戰的文章。另外,不要忘記隨時了解 2023 年值得關注的頂級 ERC-4337 項目,並繼續探索以太坊生態係統——從 AA SDK 的起點 OpenBlocto 開始!
參考
- https://eips.ethereum.org/EIPS/eip-6900
- https://mirror.xyz/konradkopp.eth/7Q3TrMFgx2VbZRKa7UEaisIMjimpMABiqGYo00T9egA
- https://ethereum-magicians.org/t/erc-6900-modular-smart-contract-accounts-and-plugins/13885/20
(以上內容獲合作夥伴 MarsBit 授權節錄及轉載,原文連結 | 出處:Medium)
聲明:文章僅代表作者個人觀點意見,不代表區塊客觀點和立場,所有內容及觀點僅供參考,不構成投資建議。投資者應自行決策與交易,對投資者交易形成的直接間接損失作者及區塊客將不承擔任何責任。