基于新型 EIP-7702 的以太坊智能账户

EIP-7702 允许 EOA 像智能合约一样行动,旨在减少用户执行最终操作所需的交易数量,从而改善用户体验。通过引入一种新的交易类型(类型 4),EOA 可以借用代码来发起交易,从而实现批量处理等功能,并降低用户操作的复杂性和风险。

Pectra Ethereum 升级为我们带来了一些新的改进,有助于改善用户体验,从而寻求更大程度地采用 web3 生态系统,在这些改进中,我们发现了 EIP-7702,它试图增强钱包体验。

什么是 EIP-7702

在 EIP-7702 之前,我们在以太坊中只有两种类型的账户:

  • EOA:外部拥有账户,具有私钥、公钥,没有代码
  • SCA:智能合约账户,具有公钥、代码,没有私钥

现在,EIP-7702 允许任何 EOA 充当智能合约,借用代码来发起交易。我们称这种类型的账户为 SWA (智能钱包账户)

它解决了什么问题?

这背后的想法是减少执行最终操作所需的交易数量,以安全的方式为用户提供更好的体验,减少点击次数。让我们看两个简单的例子:

例子 1

情况: Alice 希望每周向 DeFi 协议提供流动性。

问题: 每个月,Alice 必须执行两个操作,“批准”从她的钱包到 DeFi 协议的转移,“提供”流动性。Alice 觉得这太烦人了,所以她决定批准最大金额,这样她就不必再次“批准”了。

风险: DeFi 协议遭到黑客攻击,Alice 不记得她已批准了所有代币,并且她的钱包被清空。

例子 2

情况: Bob 希望通过区块链交易向其在其他国家的家人汇款。

问题: Bob 不想使用中心化服务,希望保留对其所有资金的保管权,但他必须为每个家庭成员执行一次转账。他决定观看一个 YouTube 视频,了解如何创建一个批量处理这些交易的智能合约,但他仍然必须在每次想汇款时都进行批准。

风险: Bob 没有考虑安全性,Bob 被 Rekt 了。

EIP-7702 创建了一种新的交易类型,允许 Alice 和 Bob 的钱包充当智能合约,因此他们可以轻松找到一种安全的协议,让他们以最简单和最安全的方式执行他们想要的操作。

它是如何工作的?

这种新的交易类型是类型 4,它有一些参数,基本上说明了你的钱包应该获取哪个代码,并授权使用该代码,该代码将一直附加到你的钱包,直到你停用并删除它。

为此,我们有一个新的 EIP,EIP-5792 允许钱包使用新的 JSON-RPC,wallet_sendCalls,这让你将你的钱包设置为智能合约并发送你需要的所有批量调用。

为了稍微体验一下,你可以访问 Metamask 文档这里,连接你的钱包(对于你在 web3 领域进行的每次测试,最好使用一个 burner 钱包,你可以始终使用同一个或创建一个新的),确保你在正确的方法上,如果不是,请在左侧选择 wallet_sendCalls,然后在右侧选择“Run Request”。

这将使你的 Metamask 弹出以下消息

选择“Use Smart Account”,你将拥有你的新类型 4 交易需要批准,首先在顶部你可以看到它现在是一个智能账户

现在,如果你想看看这种类型 4 的交易在做什么,首先点击右上角的“Show advanced details”

现在一直向下滚动,你将看到你要批量处理的两个交易

这里需要注意的重要事项是,你没有看到你链接到你的钱包的智能合约!

现在,点击“Confirm”,等待你的交易被发送,然后转到区块浏览器,在顶部你会注意到你的 EOA 正在调用自身的函数

这可以在 from 和 to 字段中得到证实

这是因为现在你的 EOA 有代码,并且它正在调用自身的代码。

现在向下滚动并点击“More details”,在“Other Attributes”中,你将看到你的类型 4 交易

在顶部,我们有一个新的选项卡“Authorizations”,其中链接到你的钱包的地址

在 Metamask 的情况下,将始终委托给此地址 0x63c0c19a282a1B52b07dD5a65b58948A07DAE32B,这是 Metamask: EIP-7702 Delegator,此合约允许我们传递我们通常进行的所有调用,并以安全的方式将其传递到目的地;因此,使用 Metamask,其他钱包也是如此,你不能自由地分配合约来委托调用,这很好,因为在 Metamask 弹出窗口中,这种类型 4 的交易看起来与其他任何交易一样,因此恶意行为者可以委托给恶意合约并窃取你的所有资金。

这就是关于交易分析的全部内容,现在如果你在区块浏览器上检查你的钱包,你将看到你的钱包正在委托所有调用的地址,让你知道该地址已从 EOA 升级到 SWA

所有这些都有助于改善我们行业的 UX,使工程师可以将所有需要的交易替换为只需单击一下。

  • 原文链接: blog.blockmagnates.com/e...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
blockmagnates
blockmagnates
江湖只有他的大名,没有他的介绍。