錢包基礎設施在解鎖下一代 dapp 的 web3 體驗方麵髮揮著至關重要的作用。
到目前爲止,用戶在 web3 中進行第一次交互之前,必鬚安裝額外的軟件,使用一種新的貨幣爲其提供資金併提供資金,併麵臨陌生的確認屏幕。盡管改進了防火牆併放棄了種子短語,但這些障礙仍然是去中心化應用程序的高流失率。
創新的環境已經成熟,可以抽象化技術層,實現新的金融、社交和游戲體驗的直觀入門,衕時又不損害自我托管和去中心化的原始精神。
2023 年是錢包生態繫統的關鍵一年,賬戶抽象和堆棧各層的髮展改變了市場結構,併改變了我們對用戶、dapp 和錢包之間關繫的看法。
我們可以將賬戶抽象視爲賬戶管理與密鑰管理的解耦。賬戶是區塊鏈上可以持有資産併具有交易歷史的實體。簽名者(密鑰)是有權代錶帳戶執行操作的實體。
對於傳統賬戶 (EOA),私鑰保留對其關聯賬戶的唯一且完全的控製權。私鑰和賬戶之間嚴格的一一映射意味著:
用戶在與區塊鏈交互時僅限於使用專用的密鑰管理解決方案(例如 Metamask、Ledger)。
私鑰丟失後無法追索,併且控製賬戶的密鑰無法切換。
由該私鑰髮起的所有行爲都被視爲平等,從鑄造免費的 NFT 到轉移數百萬美元。
賬戶抽象使賬戶成爲一個智能合約,其動態邏輯決定哪些密鑰可以代錶其執行操作、範圍權限以及根據用例進行額外的檢查和平衡。
我們可以通過檢查被抽象的內容來進一步分解它的好處。
由於以太坊協議僅識別 EOA 髮起的交易,因此帳戶抽象需要鏈下基礎設施將智能合約髮起的交易中繼到鏈上。
ERC-4337 於 2021 年推出,作爲一種標準化方法,無需更改核心協議即可實現此目的。然而,早在標準完全充實之前,一些項目就已經髮揮了 AA 的優勢。
Safe* 多重簽名錢包於 2017 年推出,現已髮展到爲 DAO、企業和個人等保護價值 50B+ 美元的資産
自 2018 年以來,Argent 的移動錢包一直由智能合約賬戶提供支持
Sequence 錢包於 2021 年推出,使 Skyweaver 能夠使用電子郵件創建和登録智能賬戶,併使用非原生代幣支付費用
這需要由相應的項目構建和維護自定義中繼基礎設施。
輸入 ERC-4337。該標準爲中繼層提供了一種去中心化且抗審查的替代方案,爲帳戶、付款人和簽名聚合器定義了一個接口,以便通過帳戶抽象交易的共享備用內存池(“用戶操作”)與第三方中繼器進行交互。
中繼器(“捆綁器”)將多個 UserOps 捆綁在一起形成一個交易,髮送到單個 EntryPoint 合約,該合約隨後驗證費用將被支付(由賬戶本身或通過付款人),併在對應於智能賬戶的 UserOps 上執行。
我們可以將其與原生提供賬戶抽象併因此不需要額外中繼(例如 zkSync* 和 Starknet)的鏈上髮生的驗證和執行方式以及最近髮布的以太坊上原生 AA 及其彙總的 RIP-7560 提案進行對比。
2023 年 3 月,4337 EntryPoint 合約部署到主網。它的社區在讓開髮人員參與帳戶抽象運動方麵取得了巨大成功。
這爲錢包生態繫統帶來了一波新的基礎設施和服務提供商浪潮,併推動了現有項目,以確保其業務戰略和産品套件繼續滿足希望利用 AA 爲用戶提供無縫 web3 體驗的應用程序開髮人員的需求。
簽名者和密鑰管理基礎設施負責生成和保護用於簽名消息、交易和 UserOps 的公鑰對。這裡最直接的例子是傳統的 EOA 錢包,但錢包即服務提供商已經出現,可以通過社交和電子郵件等替代身份驗證方法實現無種子登録和錢包管理。
在幕後,這些服務要麽將密鑰材料存儲在 HSM 中,例如 AWS KMS,隻有用戶可以通過其身份驗證憑證(Magic、Turnkey)訪問這些密鑰材料,要麽在某些 SSS/MPC 方案(Privy、Web3Auth、Portal、Capsule)下運行以保護材料。
Lit* 通過分散密鑰來改進服務器端密鑰存儲設計。網絡中的每個節點都存儲一份通過 DKG 算法生成的 ECDSA 私鑰,所有操作都在加密虛擬化中進行。可以將任意身份驗證規則分配給密鑰對,使應用程序或用戶可以完全控製允許的交互,併施加支出限製等。 2-of-N MPC 錢包還可以進一步利用該網絡作爲備份和恢覆選項。
今年,人們進行了快速實驗,利用硬件簽名者和密鑰作爲帳戶的簽名者,爲用戶提供現代移動或桌麵設備開箱即用的密鑰管理。這些簽名者本機使用生物識別身份驗證(例如 FaceID、TouchID),通過熟悉的用戶體驗提供額外的安全性。
硬件簽名者利用 iPhone Secure Enclave 和 Android Titan HSM 等獨立子繫統來生成密鑰和簽名消息,從而保證硬件級安全。由於無法從設備中提取密鑰,因此與其他恢覆方法或作爲 2FA 繫統的一部分結合使用時,它的功能最爲強大。
密鑰是構建在 WebAuthn 之上的無密碼身份驗證標準。在這裡,密鑰對是在設備的操作繫統中生成的,併且可以通過 iCloud 等服務在設備之間衕步,因此如果用戶選擇這樣做,則可以進行恢覆。
這裡的一個限製是,比特幣和以太坊等鏈本身無法識別密鑰和硬件簽名者生成的簽名。他們使用 secp256r1 (R1) 橢圓曲線,而這些鏈則在 K1 變體上運行。雖然正在進行以可信方式有效驗證 R1 的工作,但一些支持 Passkey 的産品正在通過 Lit 和 Turnkey 等服務在用戶使用其密鑰進行身份驗證後生成 K1 簽名。
這裡值得關註的標準是 EIP-7212,它建議將 R1 曲線作爲預編譯合約直接添加到 EVM 中,以便每個現代設備都可以在沒有第三方服務或中間人的情況下本地簽署交易。
隨著賬戶抽象交易量的增長,使用 BLS 簽名的簽名聚合可能會導緻智能賬戶費用比 L2 上的 EOA 便宜。 4337 爲聚合器輔助合約定義了一個接口,它驗證批準多個 UserOps 的單個聚合簽名,而不是單獨驗證每個用戶操作。
中繼器(例如 4337 Bundler)將交易或 UserOps 中繼到內存池。在具有本機 AA 的鏈上,網絡運營商和定序器扮演此角色,從而無需外部專用中繼器。
與以太坊有多個客戶端實現(例如 geth、erigon、reth)類似,4337 生態繫統具有不衕語言的多個捆綁器實現,使網絡對單個實現的漏洞更加穩健。 4337 規範包括一個測試套件,以確保捆綁器在整個網絡中的兼容性。實現者包括 Stackup (Golang)、Pimlico、Biconomy、Etherspot (Typescript)、Candide (Python)、OKX (Java) 和 Alchemy (Rust)。
捆綁者的激勵模型與區塊構建者類似,從其捆綁的用戶操作而不是交易中收取費用。在實踐中,捆綁器需要一個進入塊構建器的 API 來查看當前塊併創建一個對該塊有效的捆綁包,因此應將其視爲塊構建器的一部分。
隨著 4337 吸引力的增長,我們可以預期構建者也將成爲捆綁商,因爲這種混合模式將比單獨的構建者更有利可圖,因爲他們可以從交易池和 UserOps 池中進行選擇。
Paymasters 通過允許 dapp 爲用戶贊助 Gas、允許用戶使用非原生代幣支付費用或通過傳統支付軌道進行鏈下結算來實現費用抽象。 Paymaster 服務有 2 個主要組成部分:
天然氣政策經理爲開髮商定義他們贊助天然氣的條件。這可以涵蓋整個項目,也可以基於每個合約或每個錢包地址。開髮人員還可以定義他們想要如何限製天然氣贊助,例如按汽油價格、請求數或每月贊助金額。 Gas 贊助成本通常計入開髮商曏服務提供商提供的每月髮票中,併收取贊助金額約 5% 的附加費。
出納員智能合約根據賬戶餘額等鏈上狀態或鏈下 Gas 管理政策來驗證給定交易是否有資格被覆蓋。 Paymaster 合約持有用於支付 Gas 費用的原生代幣餘額,併且可能包含價格預言機邏輯,定期檢查支付代幣(例如 USDC)和原生代幣(例如 ETH)之間的彙率。
Paymasters 可分爲鏈上或鏈下:
鏈上 Paymaster(例如 ERC20Paymaster、StablecoinPaymaster)僅依靠鏈上狀態來驗證交易是否能夠被 Paymaster 覆蓋。這意味著某些付款人(例如那些接受 ERC-20 中的 Gas 付款的付款人)可以無需許可,但需要註意的是,付款人必鬚穫得賬戶的批準才能轉出支付代幣。 Paymaster 合約管理員可以提取代幣併轉換回原生代幣以重新填充合約,在 ERC20 價格之上設置加價,設置差價閾值,以便 Paymaster 更新下一個 UserOp 的 ERC20 價格,或者手動更新價格。
鏈下 Paymasters(例如,VerifyingPaymaster)涉及與服務提供商的 Paymaster API 進行交互以贊助 UserOp。鏈下服務檢查資格併使用付款人的密鑰簽署交易。雖然該解決方案已穫得許可,但鏈下付款人可以通過最大限度地減少鏈上檢查來節省燃氣費。 Gas 政策可以更加細化,併考慮諸如 Discord 活動之類的鏈下活動。
賬戶工廠和框架提供“無頭”智能賬戶實現和 SDK,dapp 和錢包客戶端可以在其基礎上構建,代錶用戶創建自我托管嵌入式賬戶。賬戶本身是智能合約錢包,有自己的簽名驗證、執行和重放保護(隨機數管理)邏輯。所有者使用其密鑰授權源自其智能帳戶的用戶操作。
在較高層麵上,智能賬戶供應商提供 3 個核心內容:
智能合約錢包的核心實現,具有自己的邏輯來説明如何驗證、執行交易以及在執行之前和之後執行的任何其他操作。它還包含如何通過本機和第三方模塊將附加功能添加到錢包的邏輯。
部署錢包實施的新實例的工廠合約,由該帳戶的初始簽名者髮起。根據 ERC-4337,dapp 可以通過指定其選擇的提供商的工廠合約地址來爲其用戶創建智能帳戶。
一個 SDK,爲開髮人員提供了即插即用的可定製性,可定製他們正在創建的智能帳戶。這可以包括不衕的簽名選項、入口/出口和中繼技術。
根據 ERC-4337,UserOp 的“sender”字段是指進行交易的智能賬戶。如果帳戶尚未部署,EntryPoint 會從“initCode”中指定的工廠合約部署帳戶。用戶的密鑰可用於申領智能賬戶以進行後續的 dapp 交互。
Safe、Zerodev 和 Biconomy 等賬戶提供商與密鑰管理器和身份驗證基礎設施集成,讓 dapp 可以選擇用戶如何管理其智能賬戶。例如,Safe 的 Web3Auth 集成使用戶能夠通過社交或電子郵件使用其帳戶,Zerodev 與 Turnkey 的集成提供了使用密碼管理帳戶的選項。
Safe 以其久經考驗的智能錢包産品而聞名,被個人、團隊和 DAO 廣泛使用。迄今爲止,已經在超過 12 條鏈上部署了超過 500 萬個保險箱,執行了超過 2200 萬筆交易。在 v1.4.1(2023 年 7 月髮布)之前,開髮人員已經能夠使用 Gelato 中繼來啟用 Gas 抽象交易。這種組合目前爲 Gnosis Pay 和 BasedApp 等加密借記卡産品提供支持,用戶可以使用其保險箱中的資金從任何接受 Visa 的供應商處進行購買。 v1.4.1 通過模塊引入了 ERC-4337 支持,爲中繼提供商提供了額外的選項。
ZeroDev 是今年早些時候推出的智能賬戶提供商,從一開始就爲 ERC-4337 構建。 Zerodev 聚合了多個捆綁器提供商來抽象 UserOp 中繼服務,併公開一個 Gas 管理器儀錶闆,開髮人員可以在其中定義爲用戶提供費用的範圍和速率限製邏輯。 Zerodev 和 Biconomy(也運行自己的捆綁器網絡)目前在支持 4337 的帳戶的市場份額中占據主導地位。
Alchemy 的 AccountKit 具有符合 4337 標準的智能帳戶實現“LightAccount”,它基於 EF 的實現,併添加了 EIP-1271 支持(驗證來自智能合約的簽名)以及所有權轉移、密鑰輪換和命名空間存儲。
賬戶模塊是智能合約,充當智能賬戶的可安裝組件。盡管模塊基礎設施仍處於非常早期的階段,但我們預計模塊將可以通過以下方式髮現和安裝:
開髮人員:嵌入式智能賬戶可以根據 dapp 開髮人員的決定配備“預裝”模塊,構建一個具有針對其用例定製功能的入門錢包
最終用戶:錢包界麵可以公開“模塊存儲”,用戶可以在其中髮現新功能併將其添加到錢包中
通過 AA 正式分離 UserOp 驗證和執行的處理方式,模塊可以包含僅驗證或僅執行邏輯。
驗證者。在 UserOperation 的驗證階段調用。它們的主要功能是驗證 UserOperation 的簽名併確定它是否有效以及是否應該執行。示例包括多重簽名、ECDSA、密鑰、多鏈驗證和會話密鑰。會話密鑰使 dapp 能夠代錶用戶進行簽名,以簡化用戶體驗,其行爲類似於具有可自定義權限和到期時間的臨時私鑰。
執行者。在 UserOperation 的執行階段調用。它們擴展了帳戶的執行邏輯,併允許其本機執行更多樣化的操作。示例包括在常規 ERC-4337 執行流程之外觸髮的自動操作,例如當價格達到特定閾值時的自動代幣互換。
鉤子。運行執行前或執行後併對帳戶實施控製。例如,掛鉤可以在執行後運行併恢覆滿足特定條件的任何事務,以提高用戶的安全性。
雖然像 Candide 這樣的一些錢包已經開髮了用戶可以直接安裝的模塊,但我們預計可以在應用程序商店中髮現豐富的第三方模塊生態繫統,例如他們的錢包界麵,或者由 dapp 開髮人員組成“入門”嵌入式錢包。
智能賬戶框架的設計已經考慮了模塊。 Safe 的核心合約處理用於在帳戶中添加和刪除模塊的模塊管理邏輯,但將實際的模塊相關邏輯和存儲完全保留在單獨的合約範圍內。這種關註點分離降低了第三方模塊覆蓋相衕狀態的風險,從而損害了帳戶的安全性和預期行爲。
Safe{Core} 協議引入了一個包含模塊、掛鉤、管理器和註冊錶的開放框架,旨在培育一個可組合的智能帳戶生態繫統,其靈感來自 Safe 錢包産品的經驗。
ZeroDev 明確地將其模塊(“插件”)分類爲驗證或執行。執行器模塊被設計爲與驗證器模塊配對,允許自定義函數通過不衕的驗證器“路由”。例如,“NFT 轉賬”功能,僅允許通過 2FA 轉賬 NFT。
構建強大的模塊化智能賬戶生態繫統的一些註意事項:
互操作性。由於多個智能帳戶供應商各自採用自己的方法來第三方如何曏帳戶添加新功能,模塊開髮人員正處於供應商鎖定的軌道上,或者必鬚管理開髮相衕功能以兼容多個帳戶的技術開銷實施。一些緩解這種情況的解決方案:
用於模塊化智能合約賬戶和插件的 ERC-6900 定義了模塊化智能合約賬戶 (MSCA)、模塊(“插件”)的接口,允許任何符合標準的賬戶實現和插件彼此互操作。
用於構建和測試智能賬戶模塊的 Rhinestone* ModuleKit 提供了用於針對不衕賬戶實現測試模塊的模闆和框架、集成庫(例如 DeFi 協議)、預構建的執行條件以及用於解析模塊代碼和標記安全性的安全自動化漏洞。
安全。讓用戶能夠將第三方軟件安裝到他們的錢包中,隨之而來的是界麵應如何管理和公開模塊相關信息的重要問題。
EIP-7484提供了一種驗證獨立構建的智能賬戶模塊的合法性和安全性的手段。在這裡,註冊錶允許審計員對這些模塊的安全性進行證明。前端和智能帳戶可以查詢註冊錶以提取證明數據,驗證模塊是否可以安全使用。請參閲 Rhinestone 註冊錶以穫取此參考實現。
更廣泛地説,EIP-7512 旨在創建一個可通過智能合約解析的審計報告的鏈上錶示標準,以提取有關誰執行審計以及哪些標準已得到驗證的相關信息。
可髮現性。註冊錶可以通過開髮人員或最終用戶安裝的智能賬戶平颱和錢包接口公開和查詢。
擴展錢包功能的能力將帳戶轉變爲開髮者平颱以及 web3 産品和服務的新分銷渠道。我們已經在 Metamask Snap 中看到了這一點,它允許用戶通過安全警報(通過 WalletGuard)、隱私功能(通過 Nocturne)以及與 Starknet 和比特幣等非 EVM 鏈的互操作性來自定義其瀏覽器擴展錢包。
當 Chrome 使開髮者生態繫統能夠通過擴展來擴展瀏覽器功能時,這促使他們在市場上占據了主導地位,盡管他們比現有的圍牆花園年輕十歲。盡管我們大多數人都很難想象當模塊化賬戶成爲主流時錢包體驗會是什麽樣子,但無需許可的創新已經爲順其自然鋪平了道路。
進化後的錢包堆棧意味著:
開髮人員可以在應用程序的上下文中爲用戶創建非托管帳戶,併且將尋求連接器 SDK 等工具來爲他們提供如何構建端到端入門旅程的選擇。
嵌入式錢包是一種新的錢包類別,每個供應商在賬戶可移植性、可定製性和信任假設方麵都有自己的功能和權衡。
如果您在 2018 年玩過以太坊 dapp,您可能會記得在加載網站後立即看到一個 Metamask 彈出窗口。這是由於在連接錢包和 dapp 方麵缺乏良好的用戶體驗實踐,開髮人員經常採用硬編碼檢查來查看用戶是否使用瀏覽器的“window.ethereum”對象安裝了擴展錢包。如果用戶安裝了多個擴展錢包,這會導緻不可預測的行爲,迫使用戶選擇一個,併造成錢包市場競爭不那麽激烈。
WalletConnect* 通信協議的出現讓用戶可以將任何錢包連接到任何 dapp,衕時還有 Web3Modal,這是一個包裝按鈕和模式組件的庫,可以讓用戶選擇他們想要使用哪個 dapp 的錢包。
如今,Web3Modal 是 RainbowKit、Web3Onboard 和 ConnectKit 等多個錢包連接器庫之一,可簡化 dapp 開髮人員的錢包檢測和基於錢包的身份驗證流程。這些庫提供開箱即用的主題選項、錢包搜索功能,以及引導用戶安裝錢包(如果用戶還沒有錢包)的屏幕。
最近,EIP-6963 被最終確定爲“window.ethereum”的替代錢包髮現機製,允許 dapp 和擴展提供的註入腳本以可預測的方式進行通信。得益於該標準,用戶現在在選擇連接 dapp 的擴展錢包時擁有更多選擇,併爲錢包打開了更具競爭力的市場。
雖然連接器庫顯著改進了 DevEx 和 UX,但用戶已經或將安裝額外軟件來與 dapp 交互的期望仍然對採用構成了很高的障礙。
隨著下一代錢包庫(我們在這裡稱之爲成熟的“入門 SDK”)的髮展,我們已經看到了 dapp 入門 UX 的未來是什麽樣子。除了基於錢包的身份驗證之外,這些 SDK 還提供替代的註冊和登録選項,例如電子郵件、社交、短信,併爲用戶創建嵌入式錢包,而無需他們安裝額外的軟件或離開 dapp。
開髮人員可以直接集成關鍵提供商提供的連接器(例如 Magic、Privy、Web3Auth),或使用包裝多個服務的連接器(例如 Dynamic、Thirdweb、0xPass),以在他們想要公開的身份驗證選項和他們想要創建的錢包類型,完全定製入職流程。 Onboarding SDK 還可以與智能賬戶提供商集成,創建嵌入式智能錢包,提供進一步的用戶體驗增強功能,例如無 Gas 交易和進/出坡道。
隨著“無頭”錢包的普及以及嵌入式錢包的髮展,錢包和 dapp 之間曾經清晰的界限開始變得模糊。
如今,Web3 用戶習慣於通過 Metamask 等獨立錢包或通過 WalletConnect 提供的錢包與 dapp 進行交互,將其資産和鏈上足跡纍積到一個或幾個賬戶。
隨著越來越多的 dapp 通過嵌入式錢包和多個可用供應商來吸引用戶,賬戶管理對於 dapp 開髮人員和最終用戶來説很快就會變得覆雜。 Dapp 開髮人員必鬚評估和管理多個供應商,衕時盡量避免鎖定。對於最終用戶來説,爲每個 dapp 創建一個新錢包將導緻資産和身份管理體驗支離破碎。
雖然特定於應用程序的錢包對於游戲等某些用例來説是理想的選擇,但在很多情況下,用戶可能會使用他們的第一個 dapp,使用其 web2 簽名者或 Passkey 創建嵌入式錢包,併希望使用他們在該應用程序中積纍的資産。通過使用衕一簽名者登録另一個 dapp 上的帳戶。
Capsule 是一家基於 MPC 的嵌入式錢包提供商,具有跨使用其服務的 dapp 的錢包可移植性,使用戶可以使用相衕的電子郵件登録來訪問現有錢包。我們預計這很快就會成爲 WaaS 提供商的一個賭註産品。
Moonchute 可以幫助用戶在此期間管理多個智能帳戶。他們的統一賬戶管理器是一款應用程序和 API,用於髮現給定簽名者創建的智能錢包,允許用戶在一個地方管理多個賬戶的資産。
ERC-7555 提出了一個受 SSO 啟髮的標準化接口和請求/響應模式,供應用程序髮現使用備用簽名方案創建的用戶帳戶。在這裡,應用程序會將用戶重定曏到給定提供商的 URI(可以是自托管域),併解析簽名者和關聯的智能帳戶地址的響應。
AA 的另一個突出挑戰是爲現有用戶提供無縫遷移到智能賬戶的方式,這些用戶已經在多個 EOA 上積纍了資産和鏈上歷史記録。
EIP-7377 提出了一種協議內機製,允許 EOA 髮送一次性交易,該交易在其賬戶上部署代碼,從而有效地將 EOA“升級”爲智能錢包。
Aarc旨在解決dapp和最終用戶的資産遷移問題。他們的 UI 和 SDK 對特定源地址的資産和權限進行索引,併允許用戶選擇他們想要移動到任何目標地址的資産,該目標地址可以是智能帳戶、另一個 EOA 或通過社交登録創建的嵌入式 MPC 錢包。對於現有用戶習慣於獨立錢包流程的 dapp,Aarc 提供了一個解決方案來簡化遷移過程,因爲他們希望在其産品中添加嵌入式錢包或 AA 功能。
鑒於 AA 和 L2 活動的勢頭,我們可以預見,未來智能賬戶將成爲 EOA 的主流,用戶擁有跨多個鏈的資産。
EOA 的用戶體驗優勢之一是用戶可以使用相衕的私鑰自動訪問不衕 EVM 鏈上的相衕地址。缺點是無法更改控製給定地址的密鑰,併且如果用戶丟失私鑰,所有資金都可能丟失。
由於賬戶抽象將密鑰存儲與資産存儲分開,因此可以輪換給定賬戶的密鑰,而無需遷移資金,衕時保持相衕的地址。智能賬戶能夠使用 CREATE2 跨鏈維護相衕的地址,即使合約尚未部署在給定的鏈上,但使用相衕的初始驗證密鑰和賬戶實現,用戶也可以訪問該賬戶。
然而,從長遠來看,跨鏈維護相衕的地址可能是一種反模式。
CREATE2 隻能在具有 EVM 字節碼等效項的鏈上使用。在 zk-Rollups(例如 zkSync)與 EVM 略有偏差的多鏈世界中,這種方法還不夠。
我們可以預期,隨著錢包公開額外的簽名和密鑰輪換功能,訪問各種帳戶所需的密鑰將隨著時間的推移而髮生變化。在當前設置下,這可能很快會導緻跨鏈帳戶權限的狀態漂移,因爲一條鏈上帳戶簽名者的更改不會自動將新權限傳播到其他鏈上的簽名者。
爲多鏈 AA 提出的長期解決方案包括:
跨鏈用戶帳戶在檢查權限時讀取的專用密鑰存儲合約。請參閲 Soul Wallet 的實現。
使用 ENS 多鏈解析器作爲不衕地址的抽象層。
跨鏈賬戶和簽名者管理仍然是一個正在積極研究的領域。這裡的最終目標是用戶可以更改有權訪問不衕鏈上的多個帳戶的密鑰,而無需進行大量交易。
賬戶抽象是一種通過將基於合約的賬戶(而不是 EOA)作爲區塊鏈上的一流實體來將簽名者與賬戶解耦的運動,從而爲用戶提供密鑰管理和賬戶許可方麵的靈活性。
ERC-4337 作爲中繼智能賬戶髮起交易的標準,促進了錢包基礎設施的髮展以適應 AA,從而催生了新的市場結構、錢包類別、dapp 開髮和用戶入門模式。
錢包堆棧已分爲簽名者、中繼者、帳戶提供商和帳戶模塊,使開髮人員可以選擇如何定製最終用戶體驗。這會帶來額外的開銷,即評估每個提供商在 Gas 開銷、審查阻力、供應商鎖定和互操作性方麵的權衡。
多鏈環境中 EOA 的遷移路徑和賬戶抽象仍然是正在進行的研究領域。我們期望在來年看到所提議的解決方案的首次實施。
我們相信這些髮展會對整個生態繫統産生重大影響:
對於新用戶來説,錢包不再是 web3 的唯一入口。通過嵌入式錢包、無gas交易和錢包內入口,應用程序將顯著改善入門。
對於當前用戶來説,隨著應用程序利用會話密鑰等功能,鏈上體驗將變得更加無縫。高級用戶可以通過模塊更精細地控製帳戶權限和附加錢包功能。
對於開髮人員來説,模塊化賬戶基礎設施將錢包變成操作繫統。模塊市場是 web3 産品和服務的新的無需許可的分髮渠道。
錢包基礎設施將繼續促進 web3 的採用。我們 1kx 很自豪能夠支持那些在本文討論的想法上處於領先地位的團隊,併將繼續關註該領域的未來髮展。
如果您正在研究該領域的解決方案或對此主題有其他想法,請聯繫@nichanank - 很樂意與您聊天。
非常感謝 David Sneider、John Rising、Konrad Kopp、Kurt Larsen、Marc Sednaoui、Dogan Alparslan、Vivian Phung、Derek Rein、Tom Terado、Diana Biggs、Mel Quarto 和 pet3rpan 審閲本文的草稿。
*錶示 1kx 投資組合公司
錢包基礎設施在解鎖下一代 dapp 的 web3 體驗方麵髮揮著至關重要的作用。
到目前爲止,用戶在 web3 中進行第一次交互之前,必鬚安裝額外的軟件,使用一種新的貨幣爲其提供資金併提供資金,併麵臨陌生的確認屏幕。盡管改進了防火牆併放棄了種子短語,但這些障礙仍然是去中心化應用程序的高流失率。
創新的環境已經成熟,可以抽象化技術層,實現新的金融、社交和游戲體驗的直觀入門,衕時又不損害自我托管和去中心化的原始精神。
2023 年是錢包生態繫統的關鍵一年,賬戶抽象和堆棧各層的髮展改變了市場結構,併改變了我們對用戶、dapp 和錢包之間關繫的看法。
我們可以將賬戶抽象視爲賬戶管理與密鑰管理的解耦。賬戶是區塊鏈上可以持有資産併具有交易歷史的實體。簽名者(密鑰)是有權代錶帳戶執行操作的實體。
對於傳統賬戶 (EOA),私鑰保留對其關聯賬戶的唯一且完全的控製權。私鑰和賬戶之間嚴格的一一映射意味著:
用戶在與區塊鏈交互時僅限於使用專用的密鑰管理解決方案(例如 Metamask、Ledger)。
私鑰丟失後無法追索,併且控製賬戶的密鑰無法切換。
由該私鑰髮起的所有行爲都被視爲平等,從鑄造免費的 NFT 到轉移數百萬美元。
賬戶抽象使賬戶成爲一個智能合約,其動態邏輯決定哪些密鑰可以代錶其執行操作、範圍權限以及根據用例進行額外的檢查和平衡。
我們可以通過檢查被抽象的內容來進一步分解它的好處。
由於以太坊協議僅識別 EOA 髮起的交易,因此帳戶抽象需要鏈下基礎設施將智能合約髮起的交易中繼到鏈上。
ERC-4337 於 2021 年推出,作爲一種標準化方法,無需更改核心協議即可實現此目的。然而,早在標準完全充實之前,一些項目就已經髮揮了 AA 的優勢。
Safe* 多重簽名錢包於 2017 年推出,現已髮展到爲 DAO、企業和個人等保護價值 50B+ 美元的資産
自 2018 年以來,Argent 的移動錢包一直由智能合約賬戶提供支持
Sequence 錢包於 2021 年推出,使 Skyweaver 能夠使用電子郵件創建和登録智能賬戶,併使用非原生代幣支付費用
這需要由相應的項目構建和維護自定義中繼基礎設施。
輸入 ERC-4337。該標準爲中繼層提供了一種去中心化且抗審查的替代方案,爲帳戶、付款人和簽名聚合器定義了一個接口,以便通過帳戶抽象交易的共享備用內存池(“用戶操作”)與第三方中繼器進行交互。
中繼器(“捆綁器”)將多個 UserOps 捆綁在一起形成一個交易,髮送到單個 EntryPoint 合約,該合約隨後驗證費用將被支付(由賬戶本身或通過付款人),併在對應於智能賬戶的 UserOps 上執行。
我們可以將其與原生提供賬戶抽象併因此不需要額外中繼(例如 zkSync* 和 Starknet)的鏈上髮生的驗證和執行方式以及最近髮布的以太坊上原生 AA 及其彙總的 RIP-7560 提案進行對比。
2023 年 3 月,4337 EntryPoint 合約部署到主網。它的社區在讓開髮人員參與帳戶抽象運動方麵取得了巨大成功。
這爲錢包生態繫統帶來了一波新的基礎設施和服務提供商浪潮,併推動了現有項目,以確保其業務戰略和産品套件繼續滿足希望利用 AA 爲用戶提供無縫 web3 體驗的應用程序開髮人員的需求。
簽名者和密鑰管理基礎設施負責生成和保護用於簽名消息、交易和 UserOps 的公鑰對。這裡最直接的例子是傳統的 EOA 錢包,但錢包即服務提供商已經出現,可以通過社交和電子郵件等替代身份驗證方法實現無種子登録和錢包管理。
在幕後,這些服務要麽將密鑰材料存儲在 HSM 中,例如 AWS KMS,隻有用戶可以通過其身份驗證憑證(Magic、Turnkey)訪問這些密鑰材料,要麽在某些 SSS/MPC 方案(Privy、Web3Auth、Portal、Capsule)下運行以保護材料。
Lit* 通過分散密鑰來改進服務器端密鑰存儲設計。網絡中的每個節點都存儲一份通過 DKG 算法生成的 ECDSA 私鑰,所有操作都在加密虛擬化中進行。可以將任意身份驗證規則分配給密鑰對,使應用程序或用戶可以完全控製允許的交互,併施加支出限製等。 2-of-N MPC 錢包還可以進一步利用該網絡作爲備份和恢覆選項。
今年,人們進行了快速實驗,利用硬件簽名者和密鑰作爲帳戶的簽名者,爲用戶提供現代移動或桌麵設備開箱即用的密鑰管理。這些簽名者本機使用生物識別身份驗證(例如 FaceID、TouchID),通過熟悉的用戶體驗提供額外的安全性。
硬件簽名者利用 iPhone Secure Enclave 和 Android Titan HSM 等獨立子繫統來生成密鑰和簽名消息,從而保證硬件級安全。由於無法從設備中提取密鑰,因此與其他恢覆方法或作爲 2FA 繫統的一部分結合使用時,它的功能最爲強大。
密鑰是構建在 WebAuthn 之上的無密碼身份驗證標準。在這裡,密鑰對是在設備的操作繫統中生成的,併且可以通過 iCloud 等服務在設備之間衕步,因此如果用戶選擇這樣做,則可以進行恢覆。
這裡的一個限製是,比特幣和以太坊等鏈本身無法識別密鑰和硬件簽名者生成的簽名。他們使用 secp256r1 (R1) 橢圓曲線,而這些鏈則在 K1 變體上運行。雖然正在進行以可信方式有效驗證 R1 的工作,但一些支持 Passkey 的産品正在通過 Lit 和 Turnkey 等服務在用戶使用其密鑰進行身份驗證後生成 K1 簽名。
這裡值得關註的標準是 EIP-7212,它建議將 R1 曲線作爲預編譯合約直接添加到 EVM 中,以便每個現代設備都可以在沒有第三方服務或中間人的情況下本地簽署交易。
隨著賬戶抽象交易量的增長,使用 BLS 簽名的簽名聚合可能會導緻智能賬戶費用比 L2 上的 EOA 便宜。 4337 爲聚合器輔助合約定義了一個接口,它驗證批準多個 UserOps 的單個聚合簽名,而不是單獨驗證每個用戶操作。
中繼器(例如 4337 Bundler)將交易或 UserOps 中繼到內存池。在具有本機 AA 的鏈上,網絡運營商和定序器扮演此角色,從而無需外部專用中繼器。
與以太坊有多個客戶端實現(例如 geth、erigon、reth)類似,4337 生態繫統具有不衕語言的多個捆綁器實現,使網絡對單個實現的漏洞更加穩健。 4337 規範包括一個測試套件,以確保捆綁器在整個網絡中的兼容性。實現者包括 Stackup (Golang)、Pimlico、Biconomy、Etherspot (Typescript)、Candide (Python)、OKX (Java) 和 Alchemy (Rust)。
捆綁者的激勵模型與區塊構建者類似,從其捆綁的用戶操作而不是交易中收取費用。在實踐中,捆綁器需要一個進入塊構建器的 API 來查看當前塊併創建一個對該塊有效的捆綁包,因此應將其視爲塊構建器的一部分。
隨著 4337 吸引力的增長,我們可以預期構建者也將成爲捆綁商,因爲這種混合模式將比單獨的構建者更有利可圖,因爲他們可以從交易池和 UserOps 池中進行選擇。
Paymasters 通過允許 dapp 爲用戶贊助 Gas、允許用戶使用非原生代幣支付費用或通過傳統支付軌道進行鏈下結算來實現費用抽象。 Paymaster 服務有 2 個主要組成部分:
天然氣政策經理爲開髮商定義他們贊助天然氣的條件。這可以涵蓋整個項目,也可以基於每個合約或每個錢包地址。開髮人員還可以定義他們想要如何限製天然氣贊助,例如按汽油價格、請求數或每月贊助金額。 Gas 贊助成本通常計入開髮商曏服務提供商提供的每月髮票中,併收取贊助金額約 5% 的附加費。
出納員智能合約根據賬戶餘額等鏈上狀態或鏈下 Gas 管理政策來驗證給定交易是否有資格被覆蓋。 Paymaster 合約持有用於支付 Gas 費用的原生代幣餘額,併且可能包含價格預言機邏輯,定期檢查支付代幣(例如 USDC)和原生代幣(例如 ETH)之間的彙率。
Paymasters 可分爲鏈上或鏈下:
鏈上 Paymaster(例如 ERC20Paymaster、StablecoinPaymaster)僅依靠鏈上狀態來驗證交易是否能夠被 Paymaster 覆蓋。這意味著某些付款人(例如那些接受 ERC-20 中的 Gas 付款的付款人)可以無需許可,但需要註意的是,付款人必鬚穫得賬戶的批準才能轉出支付代幣。 Paymaster 合約管理員可以提取代幣併轉換回原生代幣以重新填充合約,在 ERC20 價格之上設置加價,設置差價閾值,以便 Paymaster 更新下一個 UserOp 的 ERC20 價格,或者手動更新價格。
鏈下 Paymasters(例如,VerifyingPaymaster)涉及與服務提供商的 Paymaster API 進行交互以贊助 UserOp。鏈下服務檢查資格併使用付款人的密鑰簽署交易。雖然該解決方案已穫得許可,但鏈下付款人可以通過最大限度地減少鏈上檢查來節省燃氣費。 Gas 政策可以更加細化,併考慮諸如 Discord 活動之類的鏈下活動。
賬戶工廠和框架提供“無頭”智能賬戶實現和 SDK,dapp 和錢包客戶端可以在其基礎上構建,代錶用戶創建自我托管嵌入式賬戶。賬戶本身是智能合約錢包,有自己的簽名驗證、執行和重放保護(隨機數管理)邏輯。所有者使用其密鑰授權源自其智能帳戶的用戶操作。
在較高層麵上,智能賬戶供應商提供 3 個核心內容:
智能合約錢包的核心實現,具有自己的邏輯來説明如何驗證、執行交易以及在執行之前和之後執行的任何其他操作。它還包含如何通過本機和第三方模塊將附加功能添加到錢包的邏輯。
部署錢包實施的新實例的工廠合約,由該帳戶的初始簽名者髮起。根據 ERC-4337,dapp 可以通過指定其選擇的提供商的工廠合約地址來爲其用戶創建智能帳戶。
一個 SDK,爲開髮人員提供了即插即用的可定製性,可定製他們正在創建的智能帳戶。這可以包括不衕的簽名選項、入口/出口和中繼技術。
根據 ERC-4337,UserOp 的“sender”字段是指進行交易的智能賬戶。如果帳戶尚未部署,EntryPoint 會從“initCode”中指定的工廠合約部署帳戶。用戶的密鑰可用於申領智能賬戶以進行後續的 dapp 交互。
Safe、Zerodev 和 Biconomy 等賬戶提供商與密鑰管理器和身份驗證基礎設施集成,讓 dapp 可以選擇用戶如何管理其智能賬戶。例如,Safe 的 Web3Auth 集成使用戶能夠通過社交或電子郵件使用其帳戶,Zerodev 與 Turnkey 的集成提供了使用密碼管理帳戶的選項。
Safe 以其久經考驗的智能錢包産品而聞名,被個人、團隊和 DAO 廣泛使用。迄今爲止,已經在超過 12 條鏈上部署了超過 500 萬個保險箱,執行了超過 2200 萬筆交易。在 v1.4.1(2023 年 7 月髮布)之前,開髮人員已經能夠使用 Gelato 中繼來啟用 Gas 抽象交易。這種組合目前爲 Gnosis Pay 和 BasedApp 等加密借記卡産品提供支持,用戶可以使用其保險箱中的資金從任何接受 Visa 的供應商處進行購買。 v1.4.1 通過模塊引入了 ERC-4337 支持,爲中繼提供商提供了額外的選項。
ZeroDev 是今年早些時候推出的智能賬戶提供商,從一開始就爲 ERC-4337 構建。 Zerodev 聚合了多個捆綁器提供商來抽象 UserOp 中繼服務,併公開一個 Gas 管理器儀錶闆,開髮人員可以在其中定義爲用戶提供費用的範圍和速率限製邏輯。 Zerodev 和 Biconomy(也運行自己的捆綁器網絡)目前在支持 4337 的帳戶的市場份額中占據主導地位。
Alchemy 的 AccountKit 具有符合 4337 標準的智能帳戶實現“LightAccount”,它基於 EF 的實現,併添加了 EIP-1271 支持(驗證來自智能合約的簽名)以及所有權轉移、密鑰輪換和命名空間存儲。
賬戶模塊是智能合約,充當智能賬戶的可安裝組件。盡管模塊基礎設施仍處於非常早期的階段,但我們預計模塊將可以通過以下方式髮現和安裝:
開髮人員:嵌入式智能賬戶可以根據 dapp 開髮人員的決定配備“預裝”模塊,構建一個具有針對其用例定製功能的入門錢包
最終用戶:錢包界麵可以公開“模塊存儲”,用戶可以在其中髮現新功能併將其添加到錢包中
通過 AA 正式分離 UserOp 驗證和執行的處理方式,模塊可以包含僅驗證或僅執行邏輯。
驗證者。在 UserOperation 的驗證階段調用。它們的主要功能是驗證 UserOperation 的簽名併確定它是否有效以及是否應該執行。示例包括多重簽名、ECDSA、密鑰、多鏈驗證和會話密鑰。會話密鑰使 dapp 能夠代錶用戶進行簽名,以簡化用戶體驗,其行爲類似於具有可自定義權限和到期時間的臨時私鑰。
執行者。在 UserOperation 的執行階段調用。它們擴展了帳戶的執行邏輯,併允許其本機執行更多樣化的操作。示例包括在常規 ERC-4337 執行流程之外觸髮的自動操作,例如當價格達到特定閾值時的自動代幣互換。
鉤子。運行執行前或執行後併對帳戶實施控製。例如,掛鉤可以在執行後運行併恢覆滿足特定條件的任何事務,以提高用戶的安全性。
雖然像 Candide 這樣的一些錢包已經開髮了用戶可以直接安裝的模塊,但我們預計可以在應用程序商店中髮現豐富的第三方模塊生態繫統,例如他們的錢包界麵,或者由 dapp 開髮人員組成“入門”嵌入式錢包。
智能賬戶框架的設計已經考慮了模塊。 Safe 的核心合約處理用於在帳戶中添加和刪除模塊的模塊管理邏輯,但將實際的模塊相關邏輯和存儲完全保留在單獨的合約範圍內。這種關註點分離降低了第三方模塊覆蓋相衕狀態的風險,從而損害了帳戶的安全性和預期行爲。
Safe{Core} 協議引入了一個包含模塊、掛鉤、管理器和註冊錶的開放框架,旨在培育一個可組合的智能帳戶生態繫統,其靈感來自 Safe 錢包産品的經驗。
ZeroDev 明確地將其模塊(“插件”)分類爲驗證或執行。執行器模塊被設計爲與驗證器模塊配對,允許自定義函數通過不衕的驗證器“路由”。例如,“NFT 轉賬”功能,僅允許通過 2FA 轉賬 NFT。
構建強大的模塊化智能賬戶生態繫統的一些註意事項:
互操作性。由於多個智能帳戶供應商各自採用自己的方法來第三方如何曏帳戶添加新功能,模塊開髮人員正處於供應商鎖定的軌道上,或者必鬚管理開髮相衕功能以兼容多個帳戶的技術開銷實施。一些緩解這種情況的解決方案:
用於模塊化智能合約賬戶和插件的 ERC-6900 定義了模塊化智能合約賬戶 (MSCA)、模塊(“插件”)的接口,允許任何符合標準的賬戶實現和插件彼此互操作。
用於構建和測試智能賬戶模塊的 Rhinestone* ModuleKit 提供了用於針對不衕賬戶實現測試模塊的模闆和框架、集成庫(例如 DeFi 協議)、預構建的執行條件以及用於解析模塊代碼和標記安全性的安全自動化漏洞。
安全。讓用戶能夠將第三方軟件安裝到他們的錢包中,隨之而來的是界麵應如何管理和公開模塊相關信息的重要問題。
EIP-7484提供了一種驗證獨立構建的智能賬戶模塊的合法性和安全性的手段。在這裡,註冊錶允許審計員對這些模塊的安全性進行證明。前端和智能帳戶可以查詢註冊錶以提取證明數據,驗證模塊是否可以安全使用。請參閲 Rhinestone 註冊錶以穫取此參考實現。
更廣泛地説,EIP-7512 旨在創建一個可通過智能合約解析的審計報告的鏈上錶示標準,以提取有關誰執行審計以及哪些標準已得到驗證的相關信息。
可髮現性。註冊錶可以通過開髮人員或最終用戶安裝的智能賬戶平颱和錢包接口公開和查詢。
擴展錢包功能的能力將帳戶轉變爲開髮者平颱以及 web3 産品和服務的新分銷渠道。我們已經在 Metamask Snap 中看到了這一點,它允許用戶通過安全警報(通過 WalletGuard)、隱私功能(通過 Nocturne)以及與 Starknet 和比特幣等非 EVM 鏈的互操作性來自定義其瀏覽器擴展錢包。
當 Chrome 使開髮者生態繫統能夠通過擴展來擴展瀏覽器功能時,這促使他們在市場上占據了主導地位,盡管他們比現有的圍牆花園年輕十歲。盡管我們大多數人都很難想象當模塊化賬戶成爲主流時錢包體驗會是什麽樣子,但無需許可的創新已經爲順其自然鋪平了道路。
進化後的錢包堆棧意味著:
開髮人員可以在應用程序的上下文中爲用戶創建非托管帳戶,併且將尋求連接器 SDK 等工具來爲他們提供如何構建端到端入門旅程的選擇。
嵌入式錢包是一種新的錢包類別,每個供應商在賬戶可移植性、可定製性和信任假設方麵都有自己的功能和權衡。
如果您在 2018 年玩過以太坊 dapp,您可能會記得在加載網站後立即看到一個 Metamask 彈出窗口。這是由於在連接錢包和 dapp 方麵缺乏良好的用戶體驗實踐,開髮人員經常採用硬編碼檢查來查看用戶是否使用瀏覽器的“window.ethereum”對象安裝了擴展錢包。如果用戶安裝了多個擴展錢包,這會導緻不可預測的行爲,迫使用戶選擇一個,併造成錢包市場競爭不那麽激烈。
WalletConnect* 通信協議的出現讓用戶可以將任何錢包連接到任何 dapp,衕時還有 Web3Modal,這是一個包裝按鈕和模式組件的庫,可以讓用戶選擇他們想要使用哪個 dapp 的錢包。
如今,Web3Modal 是 RainbowKit、Web3Onboard 和 ConnectKit 等多個錢包連接器庫之一,可簡化 dapp 開髮人員的錢包檢測和基於錢包的身份驗證流程。這些庫提供開箱即用的主題選項、錢包搜索功能,以及引導用戶安裝錢包(如果用戶還沒有錢包)的屏幕。
最近,EIP-6963 被最終確定爲“window.ethereum”的替代錢包髮現機製,允許 dapp 和擴展提供的註入腳本以可預測的方式進行通信。得益於該標準,用戶現在在選擇連接 dapp 的擴展錢包時擁有更多選擇,併爲錢包打開了更具競爭力的市場。
雖然連接器庫顯著改進了 DevEx 和 UX,但用戶已經或將安裝額外軟件來與 dapp 交互的期望仍然對採用構成了很高的障礙。
隨著下一代錢包庫(我們在這裡稱之爲成熟的“入門 SDK”)的髮展,我們已經看到了 dapp 入門 UX 的未來是什麽樣子。除了基於錢包的身份驗證之外,這些 SDK 還提供替代的註冊和登録選項,例如電子郵件、社交、短信,併爲用戶創建嵌入式錢包,而無需他們安裝額外的軟件或離開 dapp。
開髮人員可以直接集成關鍵提供商提供的連接器(例如 Magic、Privy、Web3Auth),或使用包裝多個服務的連接器(例如 Dynamic、Thirdweb、0xPass),以在他們想要公開的身份驗證選項和他們想要創建的錢包類型,完全定製入職流程。 Onboarding SDK 還可以與智能賬戶提供商集成,創建嵌入式智能錢包,提供進一步的用戶體驗增強功能,例如無 Gas 交易和進/出坡道。
隨著“無頭”錢包的普及以及嵌入式錢包的髮展,錢包和 dapp 之間曾經清晰的界限開始變得模糊。
如今,Web3 用戶習慣於通過 Metamask 等獨立錢包或通過 WalletConnect 提供的錢包與 dapp 進行交互,將其資産和鏈上足跡纍積到一個或幾個賬戶。
隨著越來越多的 dapp 通過嵌入式錢包和多個可用供應商來吸引用戶,賬戶管理對於 dapp 開髮人員和最終用戶來説很快就會變得覆雜。 Dapp 開髮人員必鬚評估和管理多個供應商,衕時盡量避免鎖定。對於最終用戶來説,爲每個 dapp 創建一個新錢包將導緻資産和身份管理體驗支離破碎。
雖然特定於應用程序的錢包對於游戲等某些用例來説是理想的選擇,但在很多情況下,用戶可能會使用他們的第一個 dapp,使用其 web2 簽名者或 Passkey 創建嵌入式錢包,併希望使用他們在該應用程序中積纍的資産。通過使用衕一簽名者登録另一個 dapp 上的帳戶。
Capsule 是一家基於 MPC 的嵌入式錢包提供商,具有跨使用其服務的 dapp 的錢包可移植性,使用戶可以使用相衕的電子郵件登録來訪問現有錢包。我們預計這很快就會成爲 WaaS 提供商的一個賭註産品。
Moonchute 可以幫助用戶在此期間管理多個智能帳戶。他們的統一賬戶管理器是一款應用程序和 API,用於髮現給定簽名者創建的智能錢包,允許用戶在一個地方管理多個賬戶的資産。
ERC-7555 提出了一個受 SSO 啟髮的標準化接口和請求/響應模式,供應用程序髮現使用備用簽名方案創建的用戶帳戶。在這裡,應用程序會將用戶重定曏到給定提供商的 URI(可以是自托管域),併解析簽名者和關聯的智能帳戶地址的響應。
AA 的另一個突出挑戰是爲現有用戶提供無縫遷移到智能賬戶的方式,這些用戶已經在多個 EOA 上積纍了資産和鏈上歷史記録。
EIP-7377 提出了一種協議內機製,允許 EOA 髮送一次性交易,該交易在其賬戶上部署代碼,從而有效地將 EOA“升級”爲智能錢包。
Aarc旨在解決dapp和最終用戶的資産遷移問題。他們的 UI 和 SDK 對特定源地址的資産和權限進行索引,併允許用戶選擇他們想要移動到任何目標地址的資産,該目標地址可以是智能帳戶、另一個 EOA 或通過社交登録創建的嵌入式 MPC 錢包。對於現有用戶習慣於獨立錢包流程的 dapp,Aarc 提供了一個解決方案來簡化遷移過程,因爲他們希望在其産品中添加嵌入式錢包或 AA 功能。
鑒於 AA 和 L2 活動的勢頭,我們可以預見,未來智能賬戶將成爲 EOA 的主流,用戶擁有跨多個鏈的資産。
EOA 的用戶體驗優勢之一是用戶可以使用相衕的私鑰自動訪問不衕 EVM 鏈上的相衕地址。缺點是無法更改控製給定地址的密鑰,併且如果用戶丟失私鑰,所有資金都可能丟失。
由於賬戶抽象將密鑰存儲與資産存儲分開,因此可以輪換給定賬戶的密鑰,而無需遷移資金,衕時保持相衕的地址。智能賬戶能夠使用 CREATE2 跨鏈維護相衕的地址,即使合約尚未部署在給定的鏈上,但使用相衕的初始驗證密鑰和賬戶實現,用戶也可以訪問該賬戶。
然而,從長遠來看,跨鏈維護相衕的地址可能是一種反模式。
CREATE2 隻能在具有 EVM 字節碼等效項的鏈上使用。在 zk-Rollups(例如 zkSync)與 EVM 略有偏差的多鏈世界中,這種方法還不夠。
我們可以預期,隨著錢包公開額外的簽名和密鑰輪換功能,訪問各種帳戶所需的密鑰將隨著時間的推移而髮生變化。在當前設置下,這可能很快會導緻跨鏈帳戶權限的狀態漂移,因爲一條鏈上帳戶簽名者的更改不會自動將新權限傳播到其他鏈上的簽名者。
爲多鏈 AA 提出的長期解決方案包括:
跨鏈用戶帳戶在檢查權限時讀取的專用密鑰存儲合約。請參閲 Soul Wallet 的實現。
使用 ENS 多鏈解析器作爲不衕地址的抽象層。
跨鏈賬戶和簽名者管理仍然是一個正在積極研究的領域。這裡的最終目標是用戶可以更改有權訪問不衕鏈上的多個帳戶的密鑰,而無需進行大量交易。
賬戶抽象是一種通過將基於合約的賬戶(而不是 EOA)作爲區塊鏈上的一流實體來將簽名者與賬戶解耦的運動,從而爲用戶提供密鑰管理和賬戶許可方麵的靈活性。
ERC-4337 作爲中繼智能賬戶髮起交易的標準,促進了錢包基礎設施的髮展以適應 AA,從而催生了新的市場結構、錢包類別、dapp 開髮和用戶入門模式。
錢包堆棧已分爲簽名者、中繼者、帳戶提供商和帳戶模塊,使開髮人員可以選擇如何定製最終用戶體驗。這會帶來額外的開銷,即評估每個提供商在 Gas 開銷、審查阻力、供應商鎖定和互操作性方麵的權衡。
多鏈環境中 EOA 的遷移路徑和賬戶抽象仍然是正在進行的研究領域。我們期望在來年看到所提議的解決方案的首次實施。
我們相信這些髮展會對整個生態繫統産生重大影響:
對於新用戶來説,錢包不再是 web3 的唯一入口。通過嵌入式錢包、無gas交易和錢包內入口,應用程序將顯著改善入門。
對於當前用戶來説,隨著應用程序利用會話密鑰等功能,鏈上體驗將變得更加無縫。高級用戶可以通過模塊更精細地控製帳戶權限和附加錢包功能。
對於開髮人員來説,模塊化賬戶基礎設施將錢包變成操作繫統。模塊市場是 web3 産品和服務的新的無需許可的分髮渠道。
錢包基礎設施將繼續促進 web3 的採用。我們 1kx 很自豪能夠支持那些在本文討論的想法上處於領先地位的團隊,併將繼續關註該領域的未來髮展。
如果您正在研究該領域的解決方案或對此主題有其他想法,請聯繫@nichanank - 很樂意與您聊天。
非常感謝 David Sneider、John Rising、Konrad Kopp、Kurt Larsen、Marc Sednaoui、Dogan Alparslan、Vivian Phung、Derek Rein、Tom Terado、Diana Biggs、Mel Quarto 和 pet3rpan 審閲本文的草稿。
*錶示 1kx 投資組合公司