前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用一个小时讲清楚账号抽象这件事

用一个小时讲清楚账号抽象这件事

作者头像
十四君
发布2023-09-01 09:03:16
2000
发布2023-09-01 09:03:16
举报
文章被收录于专栏:UrlteamUrlteam

2个月前,我收到hacker dojo平台的邀约,才发现在这个浮躁的时代,有这样一个只关注底层技术并免费分享的平台。我也想尝试能否用直播的形式,为大家讲清楚4337账号抽象的底层逻辑。


全文概览

1、账号抽象之路

1.1、钱包赛道分类

所谓账号抽象. 他的账号是什么?

现在有两大类的账号, 一个叫EOA账号一个叫CA账号,可以说除了4337以外的所有合约钱包,都可以称作一个非标准合约钱包,MPC钱包. 它也是现在非常火热的一个领域啊. 前一阵子可以说是硅谷一条街. 然后起码有找出五家在做MPC钱包的,多数采用的是TSS的方式. 它相当于每一个分片各自签名. 签完名大家汇总

那MPC钱包跟账号的钱包. 它是有显著区别的. EOA和CA更多讲述的是链上主体. mpc指的是你链下的. 私钥管理的一个技术方案

1.2、为什么要抽象?

以太坊上从交易类型可以区分出3种:Legacy类型、EIP2718类型、Eip1559类型,目前主流是1559类型,目的是在传统交易上切割了价格构成。

那有了这样子的分类. 我们可以得知他们都跟账号抽象. 没有关系. ,所以要从账号结构与交易结构本身来看抽象的作用点,其核心结构是:

  • nonce:防重放
  • balance:余额记账模型
  • storageRoot:合约的Storage变量KV的MPT树根
  • codeHash:合约代码的hash,也是找到code字节码的Key

从交易结构也可以看到他的字段

  • Nonce
  • Gas Limit (STARTGAS)
  • Gas Price
  • To (MSG.SENDER)
  • VALUE (MSG.VALUE)
  • V, R,S (Signed TXwith SENDER)
  • Data Bytecode

可以说什么都有,但是唯独没有From地址,因为实际的From信息是基于ECDSA签名解签结果得出的,因此无论是4337还是Native AA都是可以自定义From方,这就是意味着能够将.控制权跟所有权和账号主体剥离.

这就是我们现在说抽象. 并且它不仅是要抽象一些显性的数据. 也要抽出这种交易的隐藏数据

2、概览EIP为什么是4337?

拓展阅读:以太坊账户抽象万字研报:拆解 10 个相关 EIP 提案与冲击千万级日活用户瓶颈的七年之路

总结上诉的历程,可以发现4337的核心优势在于应用层的分类,抽象这件事,修改底层架构并不难,而是做到兼容历史包袱难

3、4337的系统结构概览

3.1、综合对比方案优缺

3.2、运作机制与表现

3.3、EntryPoint合约的实现细节

拓展阅读:以太坊账号抽象ERC4337的过审方案解读(上)

4、问答环节:

代码语言:javascript
复制
    1、智能合约钱包gas费高的问题可以被解决吗?

可以解决一部分,gas费是高还是低,需要对比来得出

首先,gas的构成是这样的:单笔eoa转账交易,至少是21000的gas大概 $0.22 ,而智能合约钱包会需要更高的gas是因为,需要增加上部署合约,调度合约,合约扣款计算,所以必然高于eoa转账。

其次,解决的方式是基于4337的捆绑交易,由于一笔交易至少21000gas,而捆绑交易则是多笔交易共享21000的gas,如果10笔一起上报,则是21000+10操作消耗,,只要操作消耗10是大于 21000*9的,就会划算。

最后,gas高的核心原因是eth币本身性能局限,币价太贵了,所以要等待l2发展后,带来更低成本的并发,从而在根本解决gas高的问题。

总之,L1还是更适合做存储一些,L2才是性能的破局之道

代码语言:javascript
复制
2、传统EOA钱包是否可以迭代出智能合约钱包的社交恢复、多签、批量付款等功能?**

部分功能可以迭代出,但大部分不可以

传统钱包基于ECDSA算法,固定由私钥计算公钥,无法有合约钱包的特性,曾经有提案是更改签名算法的,如果实施则可能实现多签(或者基于mpc+tss实现目前的分片密钥多签),至于社交恢复和批量付款是不可能通过密码学解决的。

代码语言:javascript
复制
3、怎么理解MPC钱包和智能合约钱包,这两个提升用户体验的方向呢?

个人认为这是两个维度的管理,mpc钱包管理链下的分片密钥,而合约钱包则是管理链上主体,提供可编程的链上管理能力。

两者可以同时使用。合约钱包完善后可以替代mpc的多签和恢复更改等功能,而mpc无法提供合约的优势能力

  • eoa钱包:注册简单,历史悠久,亦可基于链上合约钱包等可实现多签,偏个人用户
  • mpc钱包:天然带多签,易于防止资产流失,且属于近些年新推出,所以偏机构金库管理用
  • 智能合约钱包:目前使用成本较高,适合高资产人士,资产流转,交易操作公开透明,易于dao投票和公开执行逻辑
代码语言:javascript
复制
4、从技术上看,未来会全部是智能合约钱包吗?这是公认的趋势吗?当前EOA钱包巨头们会被淘汰or进化成其他形态吗?

是的,4337也只是过渡态,最终的形式是Native AA

代码语言:javascript
复制
5、如果有足够好的 MPC+TSS 方案,用户不需要助记词而且安全性也有保障,那我们还需要合约钱包吗?

这个问题背后是不可能三角之间的妥协,安全与便捷均达成必然会在去中心化程度上受到影响。合约钱包还额外具有可信操作、时间锁、社交恢复等功能可以继续作为 DAO 团队金库等场景应用。

代码语言:javascript
复制
6、4337仍然依赖于EOA账户签名,真的能给用户体验带来质的飞跃吗?

目前短期来看是会依赖于 EOA 账户签名,长期来讲也必然需要管理某种签名算法对应密钥,复杂度是不变的,甚至操作的逻辑变得更复杂了。

因此虽然有基于合约钱包即捆绑交易等功能点上的提升,但用户体验本身并不会有质的飞越。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-06-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 十四君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 全文概览
    • 1、账号抽象之路
      • 1.1、钱包赛道分类
      • 1.2、为什么要抽象?
      • 3、4337的系统结构概览
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档