bot.gif
close
正在加载
5 分钟了解什么是账户抽象
互联网 · 2025-01-06 12:31
42388
摘要
了解账户抽象如何使加密货币更安全、更易于使用。它增加了安全功能,并消除了区块链采用的技术障碍 。
币界网报道:

来源:登链社区

了解账户抽象如何使加密货币更安全、更易于使用。它增加了安全功能,并消除了区块链采用的技术障碍。

介绍

区块链技术承诺金融创新,但它过于复杂。用户必须管理私钥,了解 gas 费用,并保留 ETH 以支付费用。交易签名复杂,一次错误可能导致资金的永久损失。

这些技术障碍阻碍了加密货币的广泛采用。目前,以太坊大约有 2.9 亿个唯一地址。然而, 不到十分之一 的地址是活跃的。为什么会这样?有没有解决方案?

Vitalik称账户抽象(AA)为“ 十年旅程的顶点 。”它使加密货币的使用变得像 PayPal 一样简单,但又具备区块链的去中心化特性。账户抽象允许用户通过可定制的 智能合约 管理他们的区块链账户,同时增强安全性和灵活性。尽管账户抽象的概念适用于大多数区块链生态系统,但本文将主要关注以太坊。

要理解其重要性,我们先来探讨当前的局限性和变革的必要性。

理解以太坊账户

以太坊有两种类型的账户:

外部拥有账户(EOA)

大多数用户通过外部拥有账户(EOA)与主要区块链进行交互。MetaMaskTrust WalletCoinbase Wallet 是很好的例子。

EOA 是由一对加密密钥组成的账户:公钥和私钥。公钥用于验证 EOA 交易是否由发送者签名,私钥用于签署交易。访问私钥意味着可以访问和控制该账户,因此也可以控制与该账户相关的资金和资产。

要进行区块链交易,用户必须:

  1. 拥有足够的本地代币以支付 gas 费用

  2. 用私钥签署交易

  3. 等待区块链确认

然而,EOA 的功能有限,且容易丢失私钥。此外,它们无法批量处理交易、定制安全规则或将 gas 费用支付委托给他人。这就是为什么会有替代方案。

智能合约账户(CA)

智能合约账户,也称为智能合约钱包,是区块链上的可编程账户。它们作为智能合约部署。流行的例子包括 SafeArgent

智能合约账户在接收交易时执行功能。它们的执行方式和恢复机制由智能合约代码的逻辑控制。

这些钱包可以:

然而,智能合约钱包仍然依赖于 EOA 来发起 交易。这意味着用户面临相同的挑战,但技术复杂性更高。因此,尽管有进展,仍然存在几个问题。

EOA 和 CA 的局限性

上述账户的最大问题分为三个类别:

Cyfrin Updraft 的 课程 列出了账户抽象旨在解决的问题,并明确了更优雅解决方案的必要性。

什么是账户抽象?

以太坊账户抽象在 以太坊改进提案 EIP-4337 中进行了描述,使 智能合约 成为主要账户类型。这增强了安全性和灵活性,具有多重签名批准和社交恢复机制等功能。结果是能够创建具有高级功能的用户友好账户。

ERC-4337 账户抽象

ERC-4337 是一个账户抽象提案,它在不改变以太坊核心协议的情况下工作。相反,ERC-4337 创建了一个额外的基础设施层,围绕替代内存池进行中心化。该层允许智能合约验证、执行和与 UserOperations 交互。这些特殊的类似交易的对象使智能合约能够成为主要账户。同时,Bundlers 处理它们的收集、聚合和提交到区块链。

让我们详细探讨这个解决方案的 五个组成部分

UserOperation 字段(来源:ERC-4337)‍

账户抽象是如何工作的?

以下工作流程展示了这五个组件如何交互:

  1. 用户创建 UserOperations 对象。

  2. Bundlers 将多个 UserOperations 组合成一个交易并发送到 EntryPoint 合约。 

  3. EntryPoint 启动验证,该验证在 CA 上实现。然后,它通过调用在 CA 上实现的 `execute()` 函数来处理交易。

  4. UserOperations 被执行,触发状态变化。

  5. 可选地,Aggregator 聚合签名验证,并由 Paymaster 处理交易费用。

账户抽象工作流程

在解释了账户抽象之后,接下来看看它为什么至关重要。

账户抽象的主要好处

区块链账户抽象在三个主要领域带来了重大改进。

更强的安全性

账户抽象通过以下方式提高了安全性: 

多重签名支持: 用户可以创建规则,要求多个人在交易执行之前进行批准。每个签名者拥有不同的权限,账户所有者控制支出限额和条件。这防止了未经授权的支出,并保护免受黑客攻击。

社交恢复: 账户持有人选择可信赖的个人(称为“守护者”),如果访问丢失,他们可以共同批准账户恢复。例如,5 位指定守护者中的 3 位可能需要批准恢复。时间锁实现额外保护,通过延迟大额转账消除了因遗忘密码或丢失密钥而造成永久性损失的风险。

更好的密钥管理: 用户可以通过硬件密钥或生物识别技术访问他们的账户。由于使用了多因素认证,即使一种方法被破坏,账户也依然安全。这增强了安全性而不会增加复杂性。

改善用户体验

Web3 账户抽象在三个方面改变了用户与加密货币的交互方式:

简单的入门: 新用户可以使用基本的电子邮件或社交登录开始,系统在后台处理复杂的钱包创建。这使得加密货币的使用与任何移动应用一样简单。没有人需要理解私钥或助记词。 

灵活的支付: 用户不再需要持有 ETH 来支付 gas 费用,并且可以用任何 ERC-20 代币 来覆盖 gas 成本。应用程序可以通过赞助交易为其用户支付费用。企业可以为其团队管理费用。 

智能交易: 用户可以将多个操作组合成一个批量交易。一个批准覆盖整个操作集,系统找到最佳 gas 价格。这节省了每次交互的时间和金钱。

先进功能

账户抽象通过两个主要升级实现了尖端功能:

可编程规则: 用户可以设置每日支出限额,安排未来的支付,并为不同类型的交易配置规则。例如,小额支付可能只需要一个签名,而大额转账则需要多个批准。 

自动化操作: 智能合约功能无需用户输入处理定期支付,复杂交易按照精确顺序执行。用户还可以为特殊情况创建自己的规则。 

那么,让我们看看这些理论优势是如何在现实世界中显现的。

现实世界中的账户抽象用例

账户抽象增加价值的显著领域包括: 

那么,你如何获取更多信息?

开始使用账户抽象

开发者资源

一个好的起点是 EIP-4337 在以太坊官网的条目。它涵盖了使用替代内存池进行账户抽象的动机、规范和基本原理。在那里,你还可以找到参考实现和安全考虑。

接下来,探索 Cyfrin 的全面 账户抽象库 在 GitHub 上。它包含快速入门指南、示例部署和常见问题解答。除此之外,通过我们在 Cyfrin Updraft 上的 全面课程部分 深入了解账户抽象。

但你可能仍然想知道如何构建和部署可编程账户功能。

实施考虑

账户抽象实施的两种主要方法:

  1. 以太坊使用外部捆绑器和入口合约

  2. ZKsync 将账户抽象直接构建到链中

如前所述,在以太坊上,用户将操作发送给捆绑器,捆绑器再将其转发给入口合约。入口合约验证并执行交易。而在 ZKsync 上,用户直接将交易发送到链上,由系统合约处理验证和执行。

这两种方法都允许钱包定义交易批准的自定义规则,例如要求多个签名或使用社交登录。

结论

账户抽象改变了用户与区块链的互动方式。它为加密钱包增加了现代金融管理功能,允许用户恢复丢失的账户、设置消费限额,并使用任何代币支付费用。

像 Visa 这样的主要公司今天正在使用账户抽象。游戏使用它来简化复杂性。DeFi 应用使交易变得更加简单。

工具已经存在。标准有效。现在,开发者可以为每个人构建更好的加密应用。实现 web3 的愿景,了解如何将 账户抽象 构建到你的项目中。

相关资讯