帳戶抽象 (Account Abstraction) 這個概念最早是在 2017 年被提出,不過過去關於帳戶抽象的提案因為必須對以太坊的共識層進行變動,所以被實現的困難度非常高。直到不需要更改共識層的提案 EIP-4337 被提出,才讓完整的帳戶抽象概念擁有被實行的可能性。而 EIP-4337 也於 3 月公布已通過審計並部署在以太坊上,成為 ERC-4337 標準協議。
不過嚴格來說 ERC-4337 並不等於帳戶抽象,實際上它是一種中繼器技術,並且透過智能合約方式讓燃料費和交易費的管理等功能從傳統的帳戶機制中抽離出來,讓帳戶擁有 ”智能“ 的概念。
以太坊創辦人 Vitalik Buterin 在去年 10 月就曾發表關於 EIP-4337 的相關內容,並且認為帳戶抽象對以太坊來說是非常重要的事情。
在了解帳戶抽象的概念之前,我們必須先了解「帳戶」在以太坊上有哪些類型。
目前大部分人所擁有的錢包類型多為 EOA,也就是私鑰帳戶,像是 Metamask 或是一般的冷錢包,這種類型的錢包在創建帳戶時會產生助記詞並生成對應的公鑰及私鑰,使用者必須用私鑰來對交易做簽名,證明自己是這個帳戶的擁有者,也就是擁有私鑰就擁有帳戶的控制權。
合約帳戶其實就是智能合約,它並不是利用私鑰的機制來控制,而是透過程式代碼來執行帳戶的運作,這樣的好處是可以自定義交易過程的邏輯。
因為 EOA 帳戶在初始設計上的關係,使其擁有許多限制,例如只有 EOA 帳戶才能發起交易,每個鏈上動作都要簽名,或是在交易時必須使用鏈上原生代幣來作為 Gas Fee 等等,這些都讓用戶在操作體驗上十分不好,而光是要保管好自己助記詞及私鑰這件事上就讓很多使用者望之卻步。
帳戶抽象簡單來說就是透過編程的方式讓帳戶運作的方式更多元,並且讓原本死板的交易流程變得簡單且更有彈性。
透過帳戶抽象可以做到將好幾筆交易綑綁後再一次簽署,或是當忘記密碼時能夠透過社交恢復或是生物辨識的方式來重新取得帳戶的控制權,抑或是可以自定義 Gas Fee 的代幣等等。
因為帳戶抽象是把運作邏輯編寫進智能合約內在鏈上運作,所以執行起來所花費的鏈上計算成本就會比原本的 EOA 帳戶來的高。
目前的 Layer 2 的發展已漸趨成熟,透過將帳戶抽象與 Layer 2 技術的結合,就能大幅降低運行複雜代碼所產生的額外花費,而目前市場上也已經有項目將這兩種技術結合起來,像是 Argent 以及 RaisePay 錢包。
帳戶抽象最大的優點莫過於能讓鏈上操作的體驗就像是在 Web 2 一樣流暢且簡單,而這也會是 Web 2 用戶能夠無痛轉移至 Web 3 最重要的橋樑。過去,這兩者之間就像隔著一條巨大的鴻溝,相信有了這樣的技術,用戶跨越這條鴻溝的跨海大橋在不久的將來就能夠被建造完成。