一文看懂ERC-4337账戶抽象

2023-03-11 12:03:16

在OpenZeppelin最近的審計之後,ERC-4337的“Entry Point”合約在主網上线,你可以在身邊的EVM上使用帳戶抽象了。

但是什么是帳戶抽象呢?為什么账戶抽象很重要?

首先,介紹一點背景知識。如今,以太坊上有兩種類型的账戶:

外部账戶(EOA)。外部账戶是以太坊用戶最熟悉的账戶,它們被用於發送交易、與DeFi應用程序交互、或买賣NFT。MetaMask、CoinBase和其他錢包應用程序等產品向用戶提供了可使用的EOA。這些帳戶發起交易,並擁有授權交易的私鑰(通過產生ECDSA籤名)。

合約账戶。這些是不受私鑰控制的智能合約账戶。它們具有關聯代碼,當用戶發送有效的交易時,代碼將執行交易。合約账戶不能自己發起交易。為了向區塊鏈寫入數據,必須籤署交易,而合約帳戶不能這樣做,因為它們沒有私鑰。

帳戶抽象的目的是不需要使用EOA發起交易,而是允許用戶使用合約帳戶執行交易,开啓帳戶的設計空間和可定制性。

用戶可以為他們的抽象帳戶實施任何授權邏輯。

多重籤名

非ECDSA驗證

優化的隱私解決方案

想要提款限制?可以!

想要帳戶恢復以防丟失私鑰?可以!

想要使用你選擇的ERC20代幣支付交易?可以!

帳戶抽象概念至少在2017年就已經出現了,並且已經有了一些實現嘗試。

EIP-86

EIP-2938

EIP-3074

然而,上述每一個協議都需要共識改變,一些現有的關於可擴展性的共識層更新是優先事項(Danksharding)。因此,我們只有繼續沿着這個方向繼續走下去才能看到協議級別的帳戶抽象。

然而,EIP-4337(現在是ERC-4337)沒有共識層變化。相反,4337引入了一個智能合約系統和一個名為“UserOperations”的僞交易。

UserOperations

UserOperations由用戶提交到UserOperation內存池,並由“Bundlers”(捆綁者)收集到“捆綁交易”中。這些Bundlers可以是選擇處理這些交易的區塊提議者或區塊建設者。像Stackup、Alchemy、Biconomy、Blocknative、Etherspot和Candide Wallet這樣的實體已經進行了Bundlers的建設和部署。

捆綁交易被發送到名為“EntryPoint”的智能合約,該智能合約通過指定的智能合約錢包驗證每個UserOperation。這些錢包必須實現兩個功能:

validateUserOps(驗證UserOps)

execute(執行)

EntryPoint合約將調用每個智能合約錢包的validateUserOps來確定交易是否有效。智能合約可以隨心所欲地實現這個功能,支持上述的一些可定制性。

或者,EntryPoint合約可以使用籤名聚合器。抽象帳戶信任此合約以創建UserOperation籤名,該合約還被Bundlers用於創建一個“aggregateSignsignature”(聚合籤名),它是多個UserOperation的籤名。這將衆多籤名轉換為一個值,壓縮驗證所需的數據。這對於佔用大部分數據成本的rollup來說尤其有用。

EntryPoint合約將在“handleOps()”進程中使用該聚合器合約來驗證聚合籤名。

如果UserOperation有效,EntryPoint將調用抽象帳戶上的execute來執行所需操作。請注意,這些“抽象账戶”就是智能合約。

Entry Point合約

Entry Point合約只有一個,這就是為什么Openzepplin的審計是重磅新聞。該合約將作為所有這些抽象帳戶的中央信任錨點。

Entry Point合約分離了交易(UserOp)驗證和執行的過程。該合約使用兩條路徑來驗證用戶操作。

handleOPs

handleAggregatedOps

以上兩個函數都將使用UserOp提供的參數創建一個帳戶(如無账戶),並使用指定的抽象帳戶驗證UserOp。

最後,Entry Point合約將通過在帳戶上調用“execute”來執行UserOp,並將UserOp的calldata作為參數傳入。然後,該帳戶使用給定的參數執行所編程的任何操作。

基於Entry Point的方法清晰地分離了驗證和執行過程,允許帳戶處理執行。所有這些使用戶能夠以一種可預測且精妙的方式與帳戶交互,而不需要帳戶所有者發起交易。

Paymasters

ERC還推出了“paymaster”概念。這是一個合約,將通過支付ETH來支持用戶的交易。作為交換,用戶通過向Paymaster發送預先指定的ERC-20代幣來支付他們的交易。

以上是對ERC-4337細節的綜述。還有很多很酷的細節,我們沒有時間進行討論,比如:模擬、捆綁規範和首次帳戶創建等。

結論

對以太坊用戶來說,這是一個巨大的用戶體驗改進。dApp可以支付用戶的gas費,這對非加密原生用戶來說是一個很好的進入加密世界的工具,交易可以批量處理(不再有“10次點擊交易”),還有“payment sessions”,這樣你就不再需要批准每一筆交易了。

帳戶抽象可以提高隱私工具的效用,允許用戶使用他們想要的任何代幣支付交易,並允許用戶與區塊鏈交互而無需處理私鑰。今天你若丟失了私鑰則意味着你的錢也丟失了。

在一個账戶抽象的世界裏,丟失私鑰並不意味着失去一切。

請特別注意圍繞Visa的興奮之情。他們的團隊通過使用pull-based交易和自我托管錢包,發布了一種自動支付的設計。對於那些希望使用區塊鏈進行經常性支付以補充服務的公司來說,這一直是一個巨大的問題。

以前,付款必須由付款人發起,但通過帳戶抽象,服務提供商可以為他們的服務收費,而無需你自己進行交易。就像自動支付信用卡账單一樣。帳戶甚至可以被編程為在任何時間內接收發票,因此你可以設置訂閱服務的時間限制。

錢包可以進行配置,這樣你就可以有備份账戶了,還可允許某些服務的更改。用戶甚至可以在不知情的情況下與區塊鏈進行交互。帳戶創建可以由帳戶發起人處理,所有用戶所要做的就是使用web2類型的用戶體驗來管理自己的錢包。

簡而言之,帳戶抽象為以太坊的安全性和去中心化增加了效用。這是個大工程,而我們才剛起步。

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

推薦文章

降息熱潮消退?亞股开盤走低 中日貨幣政策衝擊市場

亞洲股市周一早盤走低。澳大利亞、韓國、香港股市开盤走低,日本股市因假期休市。中國滬深指數走低。上周...

幣海獨步者
6 2小時前

趙長鵬即將獲得自由 CryptoQuant CEO表示支持

區塊鏈分析公司 CryptoQuant 的首席執行官 Ki Young Ju 在幣安創始人趙長鵬即...

流動的沙
6 2小時前

幣海NEWS加密貨幣行業周周大事記丨第240923期

加密貨幣行業周周大事記第240923期 :2024.09.16-2024.09.221、唐納德-特...

杜牧白
6 2小時前

哈裏斯首次公开表態支持加密行業

美國副總統、民主黨候選人卡馬拉-哈裏斯(Kamala Harris)在一次華爾街籌款活動中,發表了...

杜牧白
6 2小時前

承諾改寫歷史 斯裏蘭卡新總統能否拯救經濟?

在經歷了一場深刻的經濟危機和社會動蕩之後,斯裏蘭卡迎來了新總統阿努拉·迪薩納亞克的上任。這位左翼政...

流動的沙
6 2小時前

美國銀行業危機已在路上?銀行未實現損失再創新高

2024 年第二季度,美國銀行投資證券的未實現損失達到 5129 億美元,這比 2008 年金融危...

杜牧白
6 2小時前