最近,账户抽象以及EIP-4337在开发者圈子里很火。账户抽象指的是未来钱包签名机制概念化。目前,主流钱包采用的签名机制是CDSA,而未来钱包的签名机制可以多样化:采用多签、其他的加密算法以及ZK验证等。EIP-4337的提出则推动账户抽象概念的落地,未来将可能开启智能合约钱包新纪元。
那么,账户抽象所带来的钱包改革会带来什么实质性的好处吗?在Metamask、MathWallet等钱包已经成了主流应用的情况下,智能合约钱包还机会兴起吗?本文在科普的基础上也对上述话题进行探讨。
(本文由FenbushiCapital原创,有匪撰文,感谢MathWalletCTOEric的分享。)
EOA钱包&智能合约钱包
钱包的账户都有两部分构成:分别为外部账户。EOA钱包是用户通过私钥直接控制账户的钱包。其中,钱包账户的创建是通过随机生成私钥、根据私钥计算出公钥、根据公钥计算出地址的方式。用户发送交易的过程实际上是用私钥为交易数据签名的过程,由外部账户触发。
LendHub被黑简析:系LendHub中存在新旧两市场:金色财经报道,据慢雾安全区情报,2023 年 1 月 13 日,HECO 生态跨链借贷平台 LendHub 被攻击损失近 600 万美金。慢雾安全团队以简讯的形式分享如下:
此次攻击原因系 LendHub 中存在两个 lBSV cToken,其一已在 2021 年 4 月被废弃但并未从市场中移除,这导致了新旧两个 lBSV 都存在市场中。且新旧两个 lBSV 所对应的 Comptroller 并不相同但却都在市场中有价格,这造成新旧市场负债计算割裂。攻击者利用此问题在旧的市场进行抵押赎回,在新的市场进行借贷操作,恶意套取了新市场中的协议资金。
目前主要黑客获利地址为 0x9d01..ab03,黑客攻击手续费来源为 1 月 12 日从 Tornado.Cash 接收的 100 ETH。截至此时,黑客已分 11 笔共转 1,100 ETH 到 Tornado.Cash。通过威胁情报网络,已经得到黑客的部分痕迹,慢雾安全团队将持续跟进分析。[2023/1/13 11:11:00]
Beosin:SheepFarm项目遭受攻击事件简析:金色财经报道,根据区块链安全审计公司Beosin旗下Beosin EagleEye 安全风险监控、预警与阻断平台监测显示,BNB链上的SheepFarm项目遭受漏洞攻击,Beosin分析发现由于SheepFarm合约的register函数可以多次调用,导致攻击者0x2131c67ed7b6aa01b7aa308c71991ef5baedd049多次利用register函数增大自身的gems,再利用upgradeVillage函数在消耗gems的同时累加yield属性,最后调用sellVillage方法把yield转换为money后再提款。本次攻击导致项目损失了约262个BNB,约7.2万美元。Beosin Trace追踪发现被盗金额仍在攻击者账户,将持续关注资金走向。[2022/11/16 13:10:39]
“
EOA钱包的优劣势包括,优势:
1.可以免费创建钱包。
慢雾:GenomesDAO被黑简析:据慢雾区hacktivist消息,MATIC上@GenomesDAO项目遭受黑客攻击,导致其LPSTAKING合约中资金被非预期的取出。慢雾安全团队进行分析有以下原因:
1.由于GenomesDAO的LPSTAKING合约的initialized函数公开可调用且无权限与不可能重复初始化限制,攻击者利用initialized函数将合约的stakingToken设置为攻击者创建的虚假LP代币。
2.随后攻击者通过stake函数进行虚假LP代币的抵押操作,以获得大量的LPSTAKING抵押凭证。
3.获得凭证后再次通过initialized函数将合约的stakingToken设置为原先真是的LP代币,随后通过withdraw函数销毁LPSTAKING凭证获取合约中真实的LP抵押物。
4.最后将LP发送至DEX中移除流动性获利。
本次事件是因为GenomesDAO的LPSTAKING合约可被任意重复初始化设置关键参数而导致合约中的抵押物被恶意耗尽。[2022/8/7 12:07:06]
2.转账是gas费用较为低廉。
慢雾:跨链互操作协议Nomad桥攻击事件简析:金色财经消息,据慢雾区消息,跨链互操作协议Nomad桥遭受黑客攻击,导致资金被非预期的取出。慢雾安全团队分析如下:
1. 在Nomad的Replica合约中,用户可以通过send函数发起跨链交易,并在目标链上通过process函数进行执行。在进行process操作时会通过acceptableRoot检查用户提交的消息必须属于是可接受的根,其会在prove中被设置。因此用户必须提交有效的消息才可进行操作。
2. 项目方在进行Replica合约部署初始化时,先将可信根设置为0,随后又通过update函数对可信根设置为正常非0数据。Replica合约中会通过confirmAt映射保存可信根开始生效的时间以便在acceptableRoot中检查消息根是否有效。但在update新根时却并未将旧的根的confirmAt设置为0,这将导致虽然合约中可信根改变了但旧的根仍然在生效状态。
3. 因此攻击者可以直接构造任意消息,由于未经过prove因此此消息映射返回的根是0,而项目方由于在初始化时将0设置为可信根且其并未随着可信根的修改而失效,导致了攻击者任意构造的消息可以正常执行,从而窃取Nomad桥的资产。
综上,本次攻击是由于Nomad桥Replica合约在初始化时可信根被设置为0x0,且在进行可信根修改时并未将旧根失效,导致了攻击可以构造任意消息对桥进行资金窃取。[2022/8/2 2:52:59]
3.可以同时操作多个账户。
安全公司:Starstream Finance被黑简析:4月8日消息,据Agora DeFi消息,受 Starstream 的 distributor treasury 合约漏洞影响,Agora DeFi 中的价值约 820 万美金的资产被借出。慢雾安全团队进行分析后以简讯的形式分享给大家。
1. 在 Starstream 的 StarstreamTreasury 合约中存在 withdrawTokens 函数,此函数只能由 owner 调用以取出合约中储备的资金。而在 April-07-2022 11:58:24 PM +8UTC 时,StarstreamTreasury 合约的 owner 被转移至新的 DistributorTreasury 合约(0x6f...25)。
2. 新的 DistributorTreasury 合约中存在 execute 函数,而任意用户都可以通过此函数进行外部调用,因此攻击者直接通过此函数调用 StarstreamTreasury 合约中的 withdrawTokens 函数取出合约中储备的 532,571,155.859 个 STARS。
3. 攻击者将 STARS 抵押至 Agora DeFi 中,并借出大量资金。一部分借出的资金被用于拉高市场上 STARS 的价格以便借出更多资金。[2022/4/8 14:12:38]
劣势:
1.用户在生成一个钱包后,需要保留相应的私钥。一旦私钥流出,钱包因资产将面临被盗风险而被弃用。
2.用户在转账操作时经常需要授权应用,这给到恶意账户可乘之机,智能合约可以瞬间把资产转走。
3.用户必须用ETH进行支付gas费用。
而合约钱包在保留公私钥的同时,不同点在于钱包本身由智能合约操作,发起交易则直接通过合约账户来完成。
“
合约钱包具备以下优劣势,优势:
1. 无需助记词,可恢复钱包并更换私钥。
2. 无需购买ETH作为gas费用支付。
3. 可管理,在基础的转账上增添更多功能:隐私交易、多签、代付gas费用等。
4. 可编程、可升级,定制化。
劣势:
1.创建钱包需要一定的成本,无法批量创建免费钱包。
2.在Layer1的gas费成本高昂,之后搭建在Layer2上会好一点。
3.一笔交易一次操作,多笔交易无法打包成一次。
4.合约漏洞会影响钱包安全。
对比下来,EOA钱包像是ATM机,只支持存取、转账、余额查询等基本服务。而合约钱包则更像是智能化的银行系统,用户可以设置白名单账户、最大提取额度;在转账操作上更加宽宥,允许项目方、好朋友代付等等。由于各种操作都需要调用智能合约,提高了用户管理钱包的便捷度。安全方面,EOA钱包和智能合约钱包各自存在隐患:前者容易在私钥泄露和授权应用上出问题,后者则可能出现合约漏洞。有一点坏处是,用户在使用合约钱包时每次调用智能合约费用较高。不过,此次以太坊基金会强推账户抽象,必有深意,下文继续分说。
以太坊路线图&EIP-4337
账户抽象概念自2015年就被提出,经历过多次的EIP提案也未成型。而最新的EIP-4337之所以受到以太坊基金会的重视,在于以太坊路线图的确定。在合并之后,以太坊未来升级(proto-danksharding)都会围绕着为Roll-up服务的基调。Rollup会显著降低gas费用,而Proto-danksharding在降低gas费上又添助益。这为智能合约钱包的普及奠定了良好的基础,解决了gas费用贵的主要问题。
EIP-4337无需在以太坊共识层面进行改动,而是推出了由Useroperation、Bundler以及Paymaster等角色构成的解决方案。解决方案如下:
1、Alice(用户)发起一个“用户操作”,并包含它想要执行的交易。
2、她将操作发送到高级别的“用户操作内存池”。
3、操作被部分验证并广播到P2P内存池节点网络。
4、操作由“Bundler”负责,Bundler可以是任何人——MEV搜索者、验证者、你或我,等等。所有的操作被打包者打包成一笔大额交易。
5、打包者将该区块与其他交易一起包含在以太坊区块中。
接着是打包者的功能,来了解交易将如何被执行和验证。
1、打包者将交易路由到一个全局的“入口点”智能合约。
2、全局合约通过每个用户操作并调用智能合约钱包中的“验证函数”。
3、钱包运行这个函数来验证用户操作的签名,并对打包者打包这些交易进行补偿。
4、钱包运行一个执行操作来操作指定的交易。
5、执行操作后,剩余的gas会退还至钱包。
关于EIP-4337,其中新的mempool相当于在更高级别的系统中复制原先的交易内存池,bundler相当于sequencer对于交易进行排序并可能获取一定的MEV收入,entrypointcontract作为可信入口点用以检索和检查打包内容是否有垃圾交易。Paymaster的模块未来可以接入token/法币通道,代付的应用场景也很丰富:第一,允许应用开发者代用户付费;第二,允许用户以ERC20代币支付费用,合约作为中介收取ERC20并以ETH支付。总得来说,EIP-4337中的useroperationmempool以及paymaster有机会创造出全新的业态,值得开发者深入探索!
短期&长期智能合约钱包落地情况
短期来看,Argent已经实现了部分智能合约钱包的功能,包括无需助记词和私钥,仅凭手机号和邮箱账户即可创建账户;添加可信第三方“guardian”实现无私钥恢复;支持更复杂的功能,通过DAI/WETH进行gas费用支付等等。不过,智能合约钱包并非无后顾之忧,依旧存有风险敞口。
长期来看,智能合约钱包的普及会面对如下阻力:
1.合约钱包的门槛较高,创建钱包需要花钱。从用户的角度来看,如果项目方不进行补贴,就难以有动力去使用产品。
2.合约钱包的广泛应用有赖于以太坊Layer2的蓬勃生态。就短期来说,Layer2生态还远未达到成熟的水平。
3.主流的钱包已经获取太多用户了,基于安全等因素的考虑,目前缺乏动力进行改革。
综上所述,智能合约钱包因其可编程型、智能性、复合功能而备受关注,可能成为主流钱包的发展方向。不过辩证得看,它并不是十全十美、万无一失,它的普及仍依赖于Layer2生态的成熟。最后是市场因素,这取决于用户选择对账户的”控制权“还是”便捷性“。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。