---
title: "智能合约钱包相较于 EOA 钱包的 8 个显著优势"
description: "了解使用账户抽象（ERC-4337）的钱包在用户体验和安全性方面的优势"
---

# 智能合约钱包相较于 EOA 钱包的 8 个显著优势

使用 [ERC-4337](https://www.alchemy.com/overviews/what-is-account-abstraction) 的智能合约钱包是一种管理智能合约账户的 web3 钱包,它们提供了与传统 EOA(外部拥有账户)钱包相同的简单用户体验,同时具备额外的功能、灵活性和安全优势。

[Alchemy 的 Account Kit 让你可以立即为应用配备智能合约钱包。](https://www.alchemy.com/account-kit)

## 智能合约钱包有哪些优势?

智能合约钱包利用智能合约的可编程性,相比 EOA 钱包提升了实用性。虽然[智能合约钱包的交易需要由 EOA 钱包发起](https://www.alchemy.com/overviews/how-do-smart-contract-wallets-work),但 Bundler、Paymaster、EntryPoint 合约以及 Wallet SDK 等账户抽象基础设施服务,让这一过程对钱包开发者和终端用户来说都更简单。

**智能合约钱包可能带来的一些功能包括:**

1. 双因素认证
1. 社交恢复
1. 灵活的 Gas 策略
1. 自定义签名方案
1. Multicall
1. 消费限额
1. 地址白名单
1. 多签钱包支持

### 1. 双因素认证

[智能合约钱包](https://www.alchemy.com/dapps/best/smart-contract-wallets)可以提供双因素认证,需要两种不同的要素来确认用户身份,例如:

- 用户知道的东西,例如密码;
- 用户拥有的东西,例如手机;
- 用户本身具有的特征,例如指纹。

这是一个众所周知的 web2 功能,能提供额外的安全保障,防止未经授权的访问。

### 2. 社交恢复

智能合约钱包是可编程的,在社交恢复过程中,如果钱包所有者丢失了原有私钥,智能合约钱包的公钥可以被更改。这通过与预先设定的可信朋友或亲属(称为守护人)进行多签交易来实现。这样一来,所有者就不再需要保存助记词。

### 3. 灵活的 Gas 策略

智能合约钱包可以使用支持 ERC-4337 Paymaster 规范的 API 来创建灵活的 Gas 策略。能够[管理 Gas 策略](https://www.alchemy.com/account-abstraction)让开发者可以代表用户赞助交易(即无 Gas 交易),并允许用户使用任意 ERC-20 代币(例如 USDC)支付 Gas。

#### 赞助交易

交易的 **calldata** 中会包含指定的手续费赞助方。Paymaster 会向该赞助方确认其是否愿意[赞助交易手续费](https://www.alchemy.com/docs/reference/how-to-sponsor-gas-on-evm),如果同意,则继续执行该交易。

#### 使用任意 ERC-20 代币支付 Gas

Paymaster 还允许使用区块链原生代币以外的货币支付手续费。

例如,如果一个钱包只持有 USDC 这样的 ERC-20 代币,而没有 Ethereum 上的原生代币(ETH),Paymaster 会检查 USDC 余额是否足够支付手续费。如果钱包中有足够的 USDC,Paymaster 会用 ETH 支付交易执行费用,并接受该钱包的 USDC 作为补偿。

### **4. 自定义签名方案**

智能合约钱包可以很容易地被编程为使用与 Ethereum 默认 ECDSA 不同的[签名方案](https://www.alchemy.com/overviews/account-abstraction-aggregate-signatures)。这种默认签名方案可以替换为多签、社交恢复,甚至是像 Crystals-Kyber 这样的抗量子方案。

### **5. Multicall**

Multicall 是智能合约钱包在单个原子交易中执行多个操作的能力。Multicall 功能改善了当前钱包模式中每笔交易需要单独传播和确认所带来的问题,这种模式会导致处理时间变长,用户体验变差。

例如,如果用户想在 [Uniswap](https://www.alchemy.com/dapps/uniswap) 上交易某个代币,必须先点击"approve"并等待交易确认。之后,还需要等待"swap"交易被确认,只有到那时代币交换才算完成。

智能合约钱包可以将这些交易打包成一个原子交易。

### **6. 为不同签名者设置消费限额**

智能合约钱包可以设置为识别多个有效签名者,并可以为不同的签名者设置不同的消费限额。例如,用户可以将自己的笔记本电脑和 [Ledger](https://www.alchemy.com/dapps/ledger) 硬件钱包都添加为签名者,允许通过笔记本电脑进行最多 0.05 ETH 的交易,但要求更大额的交易必须使用硬件钱包。

### 7. 地址白名单与黑名单

智能合约钱包允许用户授予或拒绝一个或多个钱包地址访问其账户的权限。白名单让用户可以授予访问权限,而黑名单则会阻止或拒绝相应账户的访问。这两个功能都提升了安全性,让用户对自己的账户拥有更多控制权。

### 8. 多签钱包支持

智能合约钱包的多签支持功能对组织机构尤为重要,因为它们通常需要多个批准才能执行一笔交易。多签钱包支持通过要求多人授权交易来提升交易安全性,这使得单个人很难窃取资金或执行未经授权的交易。

## 智能合约钱包有哪些缺点?

智能合约钱包的主要缺点包括:更高的 Gas 成本、潜在的代码问题,以及目前大多数 web3 平台尚不支持。

### 1. 更高的 Gas 成本

智能合约钱包由智能合约代码控制,执行这些代码所需的计算资源是需要付费的。执行智能合约钱包交易比操作 EOA 钱包更昂贵,尤其是当钱包具备需要运行复杂智能合约代码的额外功能时。

### 2. 潜在的代码问题

智能合约钱包基于代码构建,这意味着它们面临着与普通软件产品相同的审计、安全和错误问题。由于智能合约钱包还很新,采用智能合约钱包的用户应当评估新推出的、符合 ERC-4337 标准的钱包的团队、钱包设计和代码安全性。

### 3. 缺乏支持

智能合约钱包仍处于早期阶段,目前只有少数平台支持。要让智能合约钱包走向主流,需要获得顶级 DeFi 协议和其他 web3 平台的支持。

## 我应该使用智能合约钱包吗?

考虑使用智能合约钱包的主要原因包括:更好的安全特性、自动化、去中心化以及友好的用户体验。

1. **安全性** - 双因素认证、多签支持和社交恢复使其比 EOA 更安全
1. **自动化** - 可以通过编程方式与 web3 协议和智能合约交互
1. **友好的用户体验** - 智能合约钱包消除了 EOA 钱包相关的复杂性
