一文解读帐户抽象:允许以更灵活、无缝的方式与以太坊交互

@ipor_intern热度: 16305

EIP-2938引入了一个名为“AA_TX_TYPE”的新交易类型。

原文作者:@ipor_intern

原文来源:Twitter

编译:火火,白话区块链

本篇文章是关于账户抽象的介绍,包括所需步骤,未来计划,以及执行顺序的重要性。最终目标:帮助实现更加灵活和无缝地与以太坊进行交互的方式。

 

智能合约

 

 

有三种方法可以实现这一点:

1)升级外部拥有的账户(EOAS),使其可以由智能合约控制。

2)升级智能合约,使其能够发起交易。

但是这两种方法都需要对以太坊进行修改...

智能合约

...因此引入了第三种解决方案。

3)添加一个独立的交易系统,与现有协议并行运行。

 

智能合约

无论选择哪条路径,结果都是智能合约钱包将负责与以太坊进行交互。

  • 智能合约前两个选项需要本地支持。
  • 第三个选项需要一个附加的交易网络。

好处显而易见:

  • 定义自己的安全规则(账户恢复、在设备或个人之间建立可信的安全模型等)
  • gas补贴
  • 交易批量处理(例如一次性批准和交换)

智能合约

 

那么为什么你还没有看到这些好处呢?

因为1)和2)目前还没有实现,它们的功能还没有本地支持 —— 只有外部拥有的账户(公钥/私钥对)可以发起交易。

  • 你有一个私钥吗?你可以做任何事情
  • 你没有私钥吗?你什么也做不了 

EIP-4337是路线图上我们所处的位置 —— 在不改变以太坊协议的情况下实现账户抽象。

  • 无需改变共识层
  • 新的层与标准的传播协议并行运行
  • 这个更高级的系统围绕着一个称为“UserOperation”的新对象构建,该对象负责打包属于用户的操作以及相关的签名。

智能合约

然后,这些“UserOperation”对象被广播到专用的内存池,验证者可以将它们收集到一个捆绑交易中(一系列可以包含在区块中的“UserOperation”序列)。

实际上,这种工作方式是这样的:每个钱包不再需要重新实现常见但复杂的安全逻辑,而是将这些功能外包给一个全局钱包合约,称为入口点。

然后,入口点支付燃气费用并执行EVM代码。

智能合约

现在这已经实际运行了,下一步是EIP-2938 —— 改变以太坊协议以支持账户抽象。

由于这需要对以太坊进行修改,目标是允许合约成为顶级账户,可以:

  • 支付费用
  • 开始交易执行

这一功能尚未实际投入使用。

EIP-2938引入了一个名为“AA_TX_TYPE”的新交易类型,包括3个字段:

  • Nonce -> 交易计数器
  • Target -> 入口点合约的地址
  • Data -> EVM字节码

为了执行这种新类型的交易,必须向EVM添加两个新的指令(操作码):

  • NONCE -> 用于跟踪交易序列
  • PAYGAS -> 用于从合约余额中计算并提取执行交易平台需的燃气费用

 

智能合约

 

这将使智能合约钱包能够接受用户的免费元交易,并在不依赖中继网络的情况下为其支付燃气费用。

你可能会认为这不是什么大不了的事情,因为现在智能合约钱包的功能已经非常先进了,但是...

智能合约

...先进的钱包功能需要使用复杂的智能合约。

a)要么您需要具备燃气的EOA来与其交互

b)要么您依赖于提供者通过提供者的中继来支持元交易

智能合约

 

而基于中继的架构有三个主要缺点:

1)它们可能被视为可以审查交易的中心化方

2)它们需要额外的21000基本燃气费用,以便在燃气费用之上获利

3)它们迫使应用依赖于非基础层以太坊基础设施

现在到了第三步 -> 使用EIP-3074升级外部拥有的账户(EOAs)以支持AA。

这将允许燃气赞助和批处理交易,因为智能合约现在将能够批准和执行源自EOAs的交易逻辑。

智能合约

这项改进的要求包括向EVM添加两个新的操作码:

  • AUTH -> 基于ECDSA签名设置一个授权的上下文变量
  • AUTHCALL -> 以授权账户的身份发送调用,即将对外部拥有的账户(EOA)的控制权委托给智能合约。

智能合约

 

声明:本文为入驻“MarsBit 专栏”作者作品,不代表MarsBit官方立场。
转载请联系网页底部:内容合作栏目,邮件进行授权。授权后转载时请注明出处、作者和本文链接。未经许可擅自转载本站文章,将追究相关法律责任,侵权必究。
提示:投资有风险,入市须谨慎,本资讯不作为投资理财建议。
免责声明:本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况,及遵守所在国家和地区的相关法律法规。