什麼是以太坊帳戶抽象

作者: Day

出品:白話區塊鏈(ID:hellobtc)

原用標題: V 神高度重視的這個乙太坊重要升級,或將開啟 Web3 大爆發時代

封面: Photo by Shubham Dhage on Unsplash

乙太坊聯合創始人 Vitalik Buterin3 月曾發文稱,自託管非常重要,社交恢復和多重簽名是實現這一目標的好方法。 並表示在加密支付方面使用 ERC-4337 帳戶抽象錢包會更加便利。

圖片

在 ETH2.0 的路線圖中,官方將帳戶抽象與合併、分片放在一目錄層級,不難看出帳戶抽象在 ETH2.0 的重要地位。

來源:TripleA

全球互聯網用戶數在 50 億左右,根據 TripleA 的官方數據顯示,截止目前,全球 Crypto 用戶數量達 4.2 億。

而作為目前使用最廣泛的加密錢包 Metamask,在 22 年牛尾行情中,月活才剛突破 3000 萬,對於 Crypto 行業了解相對較多的人來說,Crypto 的真實用戶數還要再打個大的折扣。

究其原因,便是加密錢包的繁雜使用,例如各種專業詞彙,以及資產保存等問題,阻礙了普通人進入 Crypto 行業開頭提到的乙太坊帳戶抽象,可以有效解決這些問題,降低人們進入 Crypto 世界的門檻。

加密錢包,作為 web3 世界的入口,帳戶模型的實施為 web3 大規模使用者奠定基礎,具有重大的意義。  本文,我們就來簡單瞭解下帳戶模型的相關概念。

乙太坊帳戶模型

想要了解帳戶抽象的概念,我們需要先瞭解錢包帳戶的知識。 關於錢包帳戶模型(主要是乙太坊等 evm 兼容鏈),目前主要分為 2 大類:外部帳戶(Externally Owned Account – EOA)和合約帳戶(Contract Account – CA)。

外部帳戶(Externally Owned Account),簡稱 EOA,目前,乙太坊上的大多數錢包都是 EOA 錢包,包括我們熟悉的 Metamask,Tokenpocket 或者 Ledger 等硬體錢包,都屬於此類。  因為乙太坊位址由公鑰直接計算得到的,不依賴區塊鏈本身,跟乙太坊沒有關係,所以被稱為外部帳戶。

合約帳戶(Contract account),簡稱 CA,顧名思義,合約帳戶用由合約代碼的邏輯進行控制的帳戶,常見的合約帳戶比如我們在 dex 交易時需要查找的各個 Token 的智慧合約位址,它雖然沒有私鑰,也不能發起交易, 但利用智慧合約的可程式設計性,可以實現比 EOA 錢包更複雜的業務操作邏輯,通過 EOA 錢包控制合約帳戶,實現交易和簽名等功能。

兩種帳戶模型的共同點:

-都可以進行接收,持有,發送 token,與已部署的智能合約交互。

兩種帳戶模型的區別:

-EOA 由私鑰控制,CA 沒有私鑰,由合約代碼的邏輯控制;

-EOA 創建帳戶免費,CA 創建帳戶需支付 gas;

-EOA 可以发起交易,CA 只能对接收的交易进行响应并发送交易;

-EOA 之间的交易只能是 Token 转移,从 EOA 向 CA 发起交易可以触发多种操作 Token 如 Token 转移或者创建新合约等。

钱包种类

1. 传统 (HD) 钱包

用户在传统钱包上生成地址,地址生成后,用户会获得一个公钥以及一个私钥。现状市面上的各种软硬件钱包,例如 Metamask,Ledger 等都属于 EOA 钱包。目前为止,传统钱包是普通用户进入 Crypto 行业的主要入口。

传统钱包目前存在的问题:

-门槛过高,用户需要对公钥私地址等相关知识有一定基础了解,才可能会使用钱包;

-资产容易丢失,用户需要自己保存私钥,私钥一旦泄漏,资产将永远无法找回;

-效率低下,用户在链上的每次交易,都需要进行签名授权等步骤才能完成交易确认,例如玩 web3 游戏,如果游戏全部上链,那么当游戏中每次行为都需要进行签名确认,会影响玩游戏的乐趣。

2.MPC(多方计算) 钱包

MPC 钱包本质上也是 EOA 钱包,MPC 钱包是将一个私钥打成 2 片或者 3 片,将部分碎片交给钱包方进行保存,每一方持有部分私钥碎片,当需要进行私钥签名时,通过算法(各方不泄露自己的隐私的前提下)将私钥碎片拼接成完整私钥完成签名。目前存在的产品如 Fireblocks,ZenGo 等。

优点:

-私钥分成多份,黑客破解难度提高,钱包安全性提高。

缺点:

-需要相信 MPC 钱包方,相信第三方提供的计算能力,当第三方出现问题时,服务无法继续。

以上两种都属于 EOA 模型,而智能合约钱包属于 CA 模型。

3. 智能合约钱包

智能合约钱包,是一种类似钱包的智能合约,即一个允许用户管理资金、登录并与各种 dapp 交互的界面。与 EOA 钱包不同,由于智能合约部署需要上链,使得智能钱包的创建需要支付一定成本。Argent,Gnosis Safe 这些老牌钱包就是智能合约钱包。

多签钱包的 “多方参与” 概念与 MPC 钱包类似,但他是建立在智能合约上的钱包,通过多个私钥来控制一个钱包,通过智能合约定义验证逻辑,当需要验证一笔交易时,需要一个以上私钥,或者多个私钥中至少三分之二的私钥参与验证,才能完成签名,因此也属于智能合约钱包。知名的就是上面提到的 Gnosis Safe。

优点:

-安全性提高(多签);

-可以实现批量交易,节约成本;

-可扩展性,由于智能合约的可组合性,可以添加各种功能;

-链上责任明确,多签可以在链上明确哪些私钥进行签名;

-社交恢复,当私钥/密码发生泄漏丢失可以重新拿回账户的控制权

缺点:

-成本变高,交易费用变高,交易验证需多个签名,恢复成本变高,需要支付链上费用才能完成;

-便捷性降低(多签);

-非 EVM 链上需要定制才能运行;

-兼容性差,与不可升级的合约不兼容,各家运营商之间控制账户标准不同,各种钱包之间无法随意切换。

账户抽象

由上文我们可以知道,EOA 和 CA 这两种账户模型支持的钱包都存在着各种各样的问题,因此,以太坊官方想通过账户抽象对这两种账户模型进行加强。

账户抽象(Account Abstraction – AA),核心是将账户的签名权和所有权解耦拆分,让 CA 和 EOA 的组合更具灵活性,通过智能合约代码实现 gas 代付、权限可编程等功能。

账户抽象是基于智能合约钱包的改进方案,因此两者之间界限不是特别清晰。以太坊账户抽象 2016 年就已经提出了,但真正看到实现的可能是 EIP-4337 方案的提出。

EIP-4337 的实现过程

方便理解账户抽象,举个现实例子,当我们想看电视的时候,只需要通过遥控按钮来控制开关,音量,切换频道,并不需要了解电视内部是如何将这些行为一步步实现。而其中的遥控,就相当于把电视内部运行 “抽象” 至表面。

账户抽象也是类似的,将 CA 和 EOA “抽象”,简化为以太坊账户形式,用户不需要在意到底是哪种账户模型,背后的运行逻辑,用就完了。如果没有技术背景,可以将其理解之前大热的为模块化概念。

由于 EIP-4337 方案并不成熟,基于 EIP-4337 开发的账户抽象钱包目前也不可能广泛应用,我们可以通过账户抽象的用例来了解下其为何重要。

账户抽象用例:

1. 智能合约钱包

上文有提到相关概念,相较于 EOA 钱包,智能合约钱包可以提供类似 Web2 的丝滑体验,用户不需要了解钱包各种概念,降低互联网用户进入 web3 门槛。

2. 无 ETH 交易

传统钱包进行交易时,需要用到主网 Token(ETH)作为 gas 费,当钱包没 Token 网 Token(ETH)时,将无法进行交易。而在 EIP4337 提案中,用户即使没有以太坊也可以进行交易(代付或者用有 Token 作为 gas 费)。

3. 批量打包合并交易

批量打包合并交易,支持多笔打包一笔发送,类似 Dex 上的交易,新 Token 需要先 approve 授权再 swap(交换),而账户抽象可以一步进行。

4. 自动运行

自动运行,当用户设置交易条件后,达到相关条件,交易自动运行。类似支付宝的免密支付。在游戏中,达到要求后,自动授权签名,提高游戏体验,链上高频交易者,可以提高使用体验。

5. 权限拆分

权限拆分,管理多个密钥,不同密钥给予不同权限。

账户抽象的缺点:

-钱包的兼容性,对智能合约的依赖性,当将智能合约部署到链上时,将与该链绑定,其他链无法适用;

-隨著功能的不斷增加,漏洞出現的可能性也在加大;

-所有邏輯都跑在鏈上,增加 gas 成本。

以上便是帳戶抽象的相關知識,作為 Web3 行業的流量入口,低門檻,便捷是當下錢包的最大問題,帳戶模型的出現,可以有效的解決這些問題。  目前 EOA 錢包作為主流,圈內使用者大多已經習慣使用 EOA 錢包。

免責聲明:作為區塊鏈資訊平臺,本站所發佈文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。 本文內容僅用於資訊分享,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。