账户抽象安全吗? 了解其降低风险指南

新手12/12/2023, 5:03:43 PM
本文分析帐户抽象(AA)的概念特性及使用案例,以ERC-4337为例阐述其实践方式,并说明潜在的风险与应对措施。

在账户抽象之前,以太坊中有两种类型的账户:外部账户(EOA)和智能合约。EOA 是具有私钥的典型用户帐户。这也是唯一可以发起交易的账户类型。例如,用户必须拥有 ETH 才能发送交易。创建批量交易很困难,并且如果用户丢失私钥,则没有恢复选项。帐户抽象(AA)就是为了解决这些问题而创建的。但这是一个无风险的解决方案吗?本指南介绍了 AA 的基础知识,然后详细介绍了 AA 的风险以及如何减轻风险。

在本指南中:

  • 用户可以用代币 支付gas费
  • 应用程序可以为用户的交易赞助天然气
  • 有灵活的机制来保护帐户
  • 桥梁和跨链 dex 可以在没有本地货币的情况下运行。
  • 帐户抽象的用例
  • 免费交易:项目方可以支付用户交易费用。

账户抽象的主要特征是什么?

账户抽象是一种使智能合约能够自行初始化交易的技术。它允许用户创建由智能合约代表的帐户。该技术还支持多种功能,改善用户与链的交互。

  • 用户可以用代币 支付gas费
  • 应用程序可以为用户的交易赞助天然气
  • 有灵活的机制来保护帐户
  • 桥梁和跨链 dex 可以在没有本地货币的情况下运行。

帐户抽象的用例

非原生跨链交易:可以将 ERC20 代币桥接到另一条链并用其支付交易费用,这意味着无需使用原生货币额外为账户注资。

额外的钱包安全功能:如果出现安全风险,可以暂停帐户上的所有操作,然后可以使用备份密钥恢复访问。

账户恢复:例如可以使用一组密钥来恢复密钥。

交易限制:可以创建每月能够花费特定金额 ETH 的账户。

订阅:以与传统信用卡相同的方式启用订阅。

账户抽象的实现

关于如何在以太坊网络中实施 AA 有不同的提案。 其中一些涉及对以太坊协议的重大更改,这使得实施变得复杂。 最突出的实现是 ERC-4337,它不涉及任何共识层更改。 该标准在更高级别上复制了交易内存池。 ERC-4337的智能合约于2023年3月部署到以太坊网络。

ERC-4337 使用名为钱包的智能合约而不是 EOA。 该智能合约钱包不仅可以由私钥控制,还可以由合约中编码的任意复杂机制控制。

用户发送 UserOperations,而不是交易。 UserOperation 包含执行指令、签名验证和其他数据。 与交易一样,用户指定 Bundler 的溢价来确定其操作的优先级。

矿工或捆绑商将操作打包成捆绑交易,然后包含在以太坊网络中。


AA 实现:HashEx

在其他数据中,UserOperation 包含创建智能合约钱包的代码。 如果用户没有钱包,则会为他们创建钱包。

如果用户想要使用 ERC20 代币支付交易费用,甚至根本不想支付交易费用,他们可以在 UserOperation 中指定一个付款主合同地址。 Paymaster 是一种第三方服务,它将支付交易费用以换取 ERC20 代币。

有哪些风险以及如何减轻风险?

尽管创建账户抽象是为了提高用户安全性,但也存在一些风险,特别是在采用的早期阶段。 以太坊生态系统因智能合约中的错误而臭名昭著,这些错误导致恶意用户窃取了数十亿美元。 以下是 AA 的一些风险以及如何避免/减轻这些风险。

标准实施过程中存在错误的风险

与任何新技术一样,帐户抽象也面临着其首次实现包含错误的风险。 ERC-4337的智能合约由领先的区块链安全公司OpenZeppelin审核。

缓解措施:解决方案是使用形式验证——该过程涉及使用数学方法来证明智能合约的正确性。 ERC4337 合约的形式验证过程正在进行中,但尚未完成。

由于与某些智能合约不兼容而导致的错误

并非每个智能合约都与账户抽象钱包兼容。例如,使用 tx.origin 字段检查发送交易的钱包的智能合约将获得意外值。使用 EOA 签名的智能合约还存在另一个不兼容性:AA 钱包不支持它们。

在此类合约中,某些关键功能可能无法正确执行。在最坏的情况下,用户的资金可能会被冻结。

缓解措施:为了降低风险,使用账户抽象钱包的用户必须检查他交互的协议是否支持该技术。

钱包的第三方代码

该标准的设计使得可以通过智能合约工厂在第一个 UserOperation 中创建智能合约钱包。然而,钱包实现的智能合约存在包含错误的风险。仅使用经过领先区块链安全公司彻底审核和测试的钱包工厂至关重要。

缓解措施:仅使用受信任的服务来创建钱包,并确保钱包的代码至少经过一家值得信赖的区块链安全公司的审核。

付款人的第三方代码

如果用户或项目使用付款大师,则它依赖第三方来支付交易费用。Paymaster 执行过程中可能会出现错误,恶意 Paymaster 可能会窃取用户的资金。

必须注意的是,所选择的出纳员服务也可能受到恶意用户的影响,他们可以找到欺骗出纳员为其交易付款的方法。

缓解措施:钱包仅使用来自值得信赖的提供商的付款人,并确保付款人的代码在使用之前经过审核。

最佳实践

以太坊区块链上的账户抽象是一个相对较新的概念。因此,最佳实践和开发人员的利用框架仍在建立过程中。使用账户抽象供开发者学习的例子非常少。

缓解措施:最佳实践最终将随着标准的传播而发展。对于开发人员来说,分享使用新技术的经验至关重要,尤其是在采用的早期阶段。

标准草案模式

尽管合约已经在主网上部署,但 ERC-4337 仍处于草案模式。标准有可能发生变化。应该指出的是,上述更改应该影响较小的细节,而不影响已经部署的智能合约。

缓解措施:开发人员应密切关注标准的发展情况,并在标准发生变化时相应地更新其项目的代码。

集权
尽管 ERC-4337 的设计是为了让每个人都可以启动捆绑器,至少在初始阶段,但帐户抽象生态系统相当中心化,因为捆绑器的生产就绪实现很少。

缓解措施:为了避免 Bundler 实现中的错误影响帐户抽象网络的风险,至少应使用几个 Bundler 实现。许多 Bundler 实现目前正在开发中,很快其中许多将投入生产。

账户抽象风险与回报?
账户抽象是一项潜在的伟大技术,可以为以太坊带来更多采用。同时,它也是可以使区块链更加安全的发展之一。尽管如此,就像区块链技术处于早期阶段的任何新功能一样,用户应该格外警惕。回顾和研究AA是每个愿意采用这项技术的人的最佳选择。

声明:

  1. 本文转载自 [Beincrypto],著作权归属原作者[Gleb Zykov],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。

账户抽象安全吗? 了解其降低风险指南

新手12/12/2023, 5:03:43 PM
本文分析帐户抽象(AA)的概念特性及使用案例,以ERC-4337为例阐述其实践方式,并说明潜在的风险与应对措施。

在账户抽象之前,以太坊中有两种类型的账户:外部账户(EOA)和智能合约。EOA 是具有私钥的典型用户帐户。这也是唯一可以发起交易的账户类型。例如,用户必须拥有 ETH 才能发送交易。创建批量交易很困难,并且如果用户丢失私钥,则没有恢复选项。帐户抽象(AA)就是为了解决这些问题而创建的。但这是一个无风险的解决方案吗?本指南介绍了 AA 的基础知识,然后详细介绍了 AA 的风险以及如何减轻风险。

在本指南中:

  • 用户可以用代币 支付gas费
  • 应用程序可以为用户的交易赞助天然气
  • 有灵活的机制来保护帐户
  • 桥梁和跨链 dex 可以在没有本地货币的情况下运行。
  • 帐户抽象的用例
  • 免费交易:项目方可以支付用户交易费用。

账户抽象的主要特征是什么?

账户抽象是一种使智能合约能够自行初始化交易的技术。它允许用户创建由智能合约代表的帐户。该技术还支持多种功能,改善用户与链的交互。

  • 用户可以用代币 支付gas费
  • 应用程序可以为用户的交易赞助天然气
  • 有灵活的机制来保护帐户
  • 桥梁和跨链 dex 可以在没有本地货币的情况下运行。

帐户抽象的用例

非原生跨链交易:可以将 ERC20 代币桥接到另一条链并用其支付交易费用,这意味着无需使用原生货币额外为账户注资。

额外的钱包安全功能:如果出现安全风险,可以暂停帐户上的所有操作,然后可以使用备份密钥恢复访问。

账户恢复:例如可以使用一组密钥来恢复密钥。

交易限制:可以创建每月能够花费特定金额 ETH 的账户。

订阅:以与传统信用卡相同的方式启用订阅。

账户抽象的实现

关于如何在以太坊网络中实施 AA 有不同的提案。 其中一些涉及对以太坊协议的重大更改,这使得实施变得复杂。 最突出的实现是 ERC-4337,它不涉及任何共识层更改。 该标准在更高级别上复制了交易内存池。 ERC-4337的智能合约于2023年3月部署到以太坊网络。

ERC-4337 使用名为钱包的智能合约而不是 EOA。 该智能合约钱包不仅可以由私钥控制,还可以由合约中编码的任意复杂机制控制。

用户发送 UserOperations,而不是交易。 UserOperation 包含执行指令、签名验证和其他数据。 与交易一样,用户指定 Bundler 的溢价来确定其操作的优先级。

矿工或捆绑商将操作打包成捆绑交易,然后包含在以太坊网络中。


AA 实现:HashEx

在其他数据中,UserOperation 包含创建智能合约钱包的代码。 如果用户没有钱包,则会为他们创建钱包。

如果用户想要使用 ERC20 代币支付交易费用,甚至根本不想支付交易费用,他们可以在 UserOperation 中指定一个付款主合同地址。 Paymaster 是一种第三方服务,它将支付交易费用以换取 ERC20 代币。

有哪些风险以及如何减轻风险?

尽管创建账户抽象是为了提高用户安全性,但也存在一些风险,特别是在采用的早期阶段。 以太坊生态系统因智能合约中的错误而臭名昭著,这些错误导致恶意用户窃取了数十亿美元。 以下是 AA 的一些风险以及如何避免/减轻这些风险。

标准实施过程中存在错误的风险

与任何新技术一样,帐户抽象也面临着其首次实现包含错误的风险。 ERC-4337的智能合约由领先的区块链安全公司OpenZeppelin审核。

缓解措施:解决方案是使用形式验证——该过程涉及使用数学方法来证明智能合约的正确性。 ERC4337 合约的形式验证过程正在进行中,但尚未完成。

由于与某些智能合约不兼容而导致的错误

并非每个智能合约都与账户抽象钱包兼容。例如,使用 tx.origin 字段检查发送交易的钱包的智能合约将获得意外值。使用 EOA 签名的智能合约还存在另一个不兼容性:AA 钱包不支持它们。

在此类合约中,某些关键功能可能无法正确执行。在最坏的情况下,用户的资金可能会被冻结。

缓解措施:为了降低风险,使用账户抽象钱包的用户必须检查他交互的协议是否支持该技术。

钱包的第三方代码

该标准的设计使得可以通过智能合约工厂在第一个 UserOperation 中创建智能合约钱包。然而,钱包实现的智能合约存在包含错误的风险。仅使用经过领先区块链安全公司彻底审核和测试的钱包工厂至关重要。

缓解措施:仅使用受信任的服务来创建钱包,并确保钱包的代码至少经过一家值得信赖的区块链安全公司的审核。

付款人的第三方代码

如果用户或项目使用付款大师,则它依赖第三方来支付交易费用。Paymaster 执行过程中可能会出现错误,恶意 Paymaster 可能会窃取用户的资金。

必须注意的是,所选择的出纳员服务也可能受到恶意用户的影响,他们可以找到欺骗出纳员为其交易付款的方法。

缓解措施:钱包仅使用来自值得信赖的提供商的付款人,并确保付款人的代码在使用之前经过审核。

最佳实践

以太坊区块链上的账户抽象是一个相对较新的概念。因此,最佳实践和开发人员的利用框架仍在建立过程中。使用账户抽象供开发者学习的例子非常少。

缓解措施:最佳实践最终将随着标准的传播而发展。对于开发人员来说,分享使用新技术的经验至关重要,尤其是在采用的早期阶段。

标准草案模式

尽管合约已经在主网上部署,但 ERC-4337 仍处于草案模式。标准有可能发生变化。应该指出的是,上述更改应该影响较小的细节,而不影响已经部署的智能合约。

缓解措施:开发人员应密切关注标准的发展情况,并在标准发生变化时相应地更新其项目的代码。

集权
尽管 ERC-4337 的设计是为了让每个人都可以启动捆绑器,至少在初始阶段,但帐户抽象生态系统相当中心化,因为捆绑器的生产就绪实现很少。

缓解措施:为了避免 Bundler 实现中的错误影响帐户抽象网络的风险,至少应使用几个 Bundler 实现。许多 Bundler 实现目前正在开发中,很快其中许多将投入生产。

账户抽象风险与回报?
账户抽象是一项潜在的伟大技术,可以为以太坊带来更多采用。同时,它也是可以使区块链更加安全的发展之一。尽管如此,就像区块链技术处于早期阶段的任何新功能一样,用户应该格外警惕。回顾和研究AA是每个愿意采用这项技术的人的最佳选择。

声明:

  1. 本文转载自 [Beincrypto],著作权归属原作者[Gleb Zykov],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。
ابدأ التداول الآن
اشترك وتداول لتحصل على جوائز ذهبية بقيمة
100 دولار أمريكي
و
5500 دولارًا أمريكيًا
لتجربة الإدارة المالية الذهبية!