原文:《Accountabstraction,thenewshinyobjectincrypto》
作者:DanaJ.Wright
AccountAbstraction,简称AA,现在是加密领域最热门的话题之一。
人们对AA的希望已经从简单地提高区块链的可用性,转变到解锁一个全新的功能世界,并希望它最终能够带来大规模采用。
人们对此感到兴奋,但是当我们查看AA的一些实例之后其实就可以发现这种炒作看起来有些夸张。
因为,现在为了解决助记词的问题,项目团队在隐私方面做出了妥协,他们要求用户信任不透明或不可知的第三方,并且构建了与现有钱包标准不兼容的密钥管理模式。
这样做看起来是为时过早的。
已经构建的AA类型都有什么?
首先,我们需要先了解一下外部拥有账户的概念。
在设置典型的非托管钱包时,我们会得到一对密钥:公钥和私钥。
我们通过共享自己的公钥来接收资金,并只能通过验证个人拥有的私钥来发起发送。
以太坊基金会公布入选ERC-4337账户抽象资助轮的18个项目:9月7日消息,以太坊基金会 ERC-4337 账户抽象资助轮已成功结束,将支持 18 个团队围绕 ERC-4337 构建多样化项目,包括:
1. ZeroDev Kernel:从零开始设计的智能合约账号,用于账户抽象钱包,高效且模块化;
2. Etherspot's Skandha Bundler:P2P 接口的账户抽象 Bundler 实现,由 Etherspot 团队开发;
3. MynaWallet:与日本政府发行的身份卡集成的合约账户,使用户能够进行代币支付、转账或接收 NFT,以及执行其账户支持的任何交易;
4. Blocto:在 web3.js 中支持账户抽象的 RPC 方法;
5. Silius:模块化高效的 Rust 账户抽象 Bundler 实现;
6. QR-Seal:完全兼容 ERC-4337 的 Schnorr 多签名钱包;
7. Ambire:使用电子邮件 / 密码认证的自托管钱包;
8. IoTeX:基于零知识证明的账户抽象钱包;
9. SixdegreeLab:账户抽象的数据分析看板;
10. Jam:Picnic 开发的 DeFi 交易批处理器;
11. TokenSight:使用 WebAuthn 的账户抽象多重身份认证;
12. ZK-Team:允许组织在管理团队成员的同时维护他们的个人隐私;
13. Rhinestone:模块化账户抽象;
14. AAA:提升账户抽象认知的社区活动;
15. Unpacking 4337:一系列账户抽象技术文章;
16. Hexlink:利用 EIP-4972 将 ENS 与 ERC-4337 账户链接,为所有 ENS 用户提供即时可用的账户抽象兼容智能账户;
17. UniPass:结合 ERC-4337,通过 OpenID Connect 协议为新用户提供一键式 OAuth 登录和账户创建;
18. Clave:提升 secp256r1 曲线对账户抽象的支持。[2023/9/7 13:24:06]
上面这种最高级别的钱包所有权也被称为外部拥有账户。
Argent推出利用账户抽象的自托管智能钱包Web Wallet:8月4日消息,智能合约钱包Argent宣布推出利用账户抽象的自托管智能钱包Web Wallet,允许用户使用电子邮件地址创建网络钱包,无需下载,也无需助记词。[2023/8/4 16:18:40]
第一种类型:iCloud
一种常见的AA形式是让用户将自己的私钥保存在云中,并使用用户名和密码进行身份验证。
有些人质疑这是否符合AA的条件,可以说在某种意义上确实符合,因为这种方法取消了写下和保护助记词的需要,并为用户提供了一种熟悉的模式来验证和恢复自己的私钥。
第二种类型:SSS
现在变得越来越常见的一种更复杂的方法是利用被称为ShamirSecretSharing(SSS)的技术。
使用这种方法,会使私钥被分解成多个“密钥共享”,用户必须对其中的某个阈值进行身份验证以重构整个私钥。
具体项目例子
举例的这些钱包代表了一些不同的常见钱包类型。
Arbitrum已激活One和Nova上的账户抽象端点支持:8月2日消息,Offchain Labs已正式在Arbitrum One与Arbitrum Nova上激活对账户抽象端点的支持。
此前报道,7月17日,Arbitrum提案AIP-2已获得投票通过,将在 One 和 Nova 主网上激活对账户抽象端点的支持。该提案旨在解决ERC-4337打包交易的问题,新RPC端点eth_sendRawTransactionConditional 将允许用户在提交交易时指定有效的区块高度和时间戳范围,从而解决了在验证和执行阶段之间可能发生的智能合约账户存储变化的问题。[2023/8/2 16:13:47]
Argent是主要用于加密资产保存和长期存储的移动应用程序钱包。
BSC钱包是一个浏览器扩展,可用于访问币安智能链和该生态系统中的dApp。
Sequence是一款支持多链的专为游戏而设计的网络钱包。
下面看看这些钱包现在是如何管理密钥的。
Argent
Vitalik Buterin:账户抽象升级可以吸引数十亿人使用以太坊:7月20日消息,以太坊创始人Vitalik Buterin最近在以太坊社区会议(EthCC)演讲中详细介绍账户抽象升级“paymasters”如何让用户用用于交易的代币支付Gas费,从而吸引数十亿人使用以太坊。账户抽象使用户能够从外部拥有的钱包(EOA)切换到基于智能合约的钱包。如果此次升级成功,钱包管理将比现在更加高效和轻松。Vitalik Buterin和社区相信,这可以使加密货币得到广泛采用。
此外,加密货币领域充斥着丢失助记词或助记词被盗的用户。通过账户抽象,用户可以创建充当可编程智能合约的非托管钱包。钱包恢复只是此次新升级带来的众多功能之一。[2023/7/20 11:06:21]
Argent提供两种私钥管理选择:
选择一:我们可以将私钥保存到自己的iCloud密钥链,并使用生物识别或PIN进行身份验证。
Safe发起的账户抽象黑客松在DoraHacks.io正式开启:3月1日,据官方消息,账户抽象黑客松(March for Account Abstraction Hackathon)申请入口已在开发者激励平台DoraHacks.io开启。本次活动由以太坊多签智能合约钱包Safe(原Gnosis Safe)主办,利用DoraHacks平台支持的自由组织黑客马拉松工具发起,总资助池达50,000美元。3月1日-31日,BUIDL团队可通过Dorahacks.io提交参与申请。[2023/3/1 12:35:56]
这个方式确实非常方便,但鉴于iCloud已变成黑客的一大目标,所以将私钥存储于其中会容易受到安全漏洞的攻击。同时隐私也将受到损害,因为iCloud账户与私钥相关联,也就相当于自己所有个人身份信息和DNA样本已经附加到了自己的私钥上。
选择二:使用SSS将自己的私钥分成3个或更多个来进行密钥共享,并将它们保存在几个监护人之中。
监护人可以是以下的实体:
硬件钱包或其他设备,如手机;
朋友或家人的设备;
在Argent服务器上存储密钥共享的Argent监护人。
?用户可以按照需求设置任意数量的监护人,并定义自己的阈值,这确实增加了用户设置的灵活空间。
这种方式也减少了进行设置时投入的精力,我们也可以用私密且无需信任的方式进行配置。
但它也有缺点,就是我们创建的钱包与使用普通钱包标准的任何其他非托管钱包不兼容。我们要时刻祈祷该项目不要倒闭,并且自己的监护人都安然无恙。
Argent还允许用户从设置中导出助记词,这样助记词就将与其他BIP-39标准钱包兼容,那...使用SSS设置的监护人就会如同虚设。
BSC
BSC也为用户提供将私钥保存到谷歌云或通过SSS保护私钥的选择,与Argent相似。
在BSC中监护人被称为“身份验证因素”,工作方式与Argent相同,只是用户无法选择密钥共享的存储位置:
Share1保存到TorusNetwork,使用GoogleoAuth认证;
Share2保存到BSCchrome扩展客户端;
Share3存储在Binance,并使用用户名和密码进行身份验证。
?BSC也使用用户名和密码模式将私钥保存到Google,或者将密钥共享保存到币安。
BSC的主要局限性在于,当与谷歌进行连接以后,提供商将可以访问与该谷歌账户相关联的个人身份信息。再者,BSC对SSS的实现是BSC钱包独有的,所以以这种方式创建的钱包与其他钱包不兼容。最后,密钥共享是必须保存在币安服务器上的,所以对币安的依赖性会很大。
Sequence
Sequence的方法是完全隐藏私钥的存在。
阅读其条款,我们才能知道该项目使用的是SSS:
"将会有3个与您有关的私钥,想要在给定的时间内访问钱包是需要其中2个私钥的。一个私钥存储在您的本地设备上。另一个私钥是需要使用您提供的登录凭据来生成的。第三个私钥由Horizon维护。当您使用登录凭证来登录帐户/钱包时,您可以使用存储在设备上的私钥和与登录凭证相关的私钥访问帐户。"
但我们不知道用户的第2个私钥共享存储在哪里,我们也就无从得知这个第三方是谁。
虽然使用自己的facebook或者谷歌来登录是很简单方便的,但一旦我们的设备不幸丢失,弄丢的还有我们的一个密钥共享。对于那些一般不读条款的用户,他们将对这种情况一无所知。
账户抽象的第三种类型
加密人士讨论的AA,显然不是前面两种,他们讨论的是第三种理论的未来承诺。
在解释第三种之前,我们应该先了解一下EOA的层次结构的下一层,那就是合约账户,也可以被称为智能合约层。
我们可以把CA看作是存在于以太坊网络上的应用程序。CA是可编程的,可以在它上面做很多事情,但它不能发起交易。反正现在是不能。
Vitalik曾经描述过账户抽象的未来愿景是合并EOA和CA,可以使CA发起交易。
这种能力的实现,将开启一个全新的功能世界,包括但不限于:
更好的社会恢复系统——不依赖第三方,并向后兼容其他钱包;
多重签名合约账户——需要多方签署交易以获得额外的CA安全层;
Gas费用抽象——智能合约执行必要的操作以实物支付tx费用,甚至让用户决定费用是由发送方还是接收方支付;
可委托账户——它将允许使用智能合约进行自动/经常性支付。?
第三种类型的发展现状
Layer2领域目前在这方面处于领先地位,zkSync最近部署了一组工具来促进实现有限的AA功能集。
以太坊方面,集成AA的以太坊改进提案也得到了开发人员和以太坊社区的关注。
但单从用户体验来看,第2层还是比较麻烦的,因为在默认情况下,大多数加密资产都不在第2层上。用户基本上是要从以太坊主网上获得这些资产,进行桥接之后才能享受第2层的服务。
而EIP-4337或广受赞誉的EIP-4844都没有采取任何措施来解决这个问题。
结论
第一种类型和第二种类型基本上相当于是准中心化托管,没有备份,它们虽然是解决助记词的勇敢尝试,但涉及到长期储存时,就感觉是在运气。
至于第三种类型,现在取得的进步确实令人印象深刻,AA技术的下一步发展绝对值得我们密切关注,但现在貌似还为时过早。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。