账户抽象是今年被反复关注的话题,但很少有市场参与者了解它是什么以及它如何改变游戏规则。根据Vitalik的说法,帐户抽象是“我们一直想要的东西”,并且它一直是“以太坊社区的长期梦想”。
本篇文章,我们将讨论,帐户抽象在扩展以太坊区块链和确保大规模采用中的作用。
首先,要全面了解账户抽象,我们首先需要了解计算机科学中的抽象是什么:
抽象的艺术:
抽象是指去除系统的物理、空间或时间细节,并专注于更重要的属性。
软件工程中一种流行的抽象形式是数据抽象,它只是指隐藏信息并允许用户在高层次上使用计算机,而无需彻底了解其背后发生的逻辑或过程。
Argent推出利用账户抽象的自托管智能钱包Web Wallet:8月4日消息,智能合约钱包Argent宣布推出利用账户抽象的自托管智能钱包Web Wallet,允许用户使用电子邮件地址创建网络钱包,无需下载,也无需助记词。[2023/8/4 16:18:40]
资料来源:TIBC
例如,当开发人员要编写软件时,他们会编写Python、Java等高级编程语言。程序员不需要了解如何编写构成机器码的0和1。
以太坊帐户抽象
账户抽象是数据抽象的一种形式。要了解从以太坊账户中抽象出什么,我们必须首先了解账户在以太坊上是如何工作的。以太坊上有两种类型的账户,即:
外部拥有的账户(EOA)、合约账户(CA)
外部拥有的账户(EOA)
这些本质上是用户控制的帐户,由一对加密密钥、一个公钥和一个私钥组成。它们由持有私钥的任何人生成和控制。创建这种账户不需要任何费用,账户用户可以发起交易。
Vitalik Buterin:账户抽象升级可以吸引数十亿人使用以太坊:7月20日消息,以太坊创始人Vitalik Buterin最近在以太坊社区会议(EthCC)演讲中详细介绍账户抽象升级“paymasters”如何让用户用用于交易的代币支付Gas费,从而吸引数十亿人使用以太坊。账户抽象使用户能够从外部拥有的钱包(EOA)切换到基于智能合约的钱包。如果此次升级成功,钱包管理将比现在更加高效和轻松。Vitalik Buterin和社区相信,这可以使加密货币得到广泛采用。
此外,加密货币领域充斥着丢失助记词或助记词被盗的用户。通过账户抽象,用户可以创建充当可编程智能合约的非托管钱包。钱包恢复只是此次新升级带来的众多功能之一。[2023/7/20 11:06:21]
合约账户(CA)
合约账户是由以太坊网络上的代码控制的智能合约。合约没有私钥,而是由以太坊网络上的智能合约代码的逻辑控制。由于您正在使用网络存储,因此开立合约账户需要支付一定的费用。这种账户只能发送交易作为对接收交易的响应。
Worldcoin:World App使用Safe账户抽象堆栈提高钱包安全性:5月29日消息,Worldcoin 在社交媒体上表示,该生态首个加密钱包 World App 已成为 Polygon 网络最大 Safe 钱包部署者。
据悉,每个 World App 用户都会收到一个部署在链上的智能合约以太坊钱包。World App 使用账户抽象来提高钱包的整体安全性。在底层,这个智能合约钱包使用了一个由 Safe 开发的账户抽象堆栈 Safe{Core}。[2023/5/29 9:49:18]
以太坊账户有四个字段,即:
Nonce-这充当一个计数器,指示从帐户发送的交易数量。nonce是一个重要的特性,因为它确保事务只在EOA上发生一次。在CA上,nonce代表一个账户创建的合约数量。
余额-这表示以wei衡量的地址拥有的eth数量。
Harmony将在第二季度实现账户抽象功能:2月19日消息,Harmony宣布将在2023年第二季度实现账户抽象,为用户和开发者提供更大的灵活性和功能。帐户抽象是一种允许创建多种类型帐户的功能,每种帐户都具有独特的功能和特性。[2023/2/19 12:15:35]
Codehash-这是指以太坊虚拟机上的帐户代码。不同的代码片段具有不同的独特功能,一旦调用代码的哈希值就会发挥作用。对于EOA,这由空字符串的散列表示。
Storageroot-这也称为storagehas并简单地映射帐户的存储内容。
资料来源:以太坊文档
现在我们知道了以太坊上的两种账户,我们可以定义账户抽象。账户抽象是将以太坊的两种账户简化为单一类型——合约账户的过程。由此产生的合约账户将能够发起交易、支付交易费用,并且可以根据用户的独特需求进行定制。合约账户将具有传统CA和EOA的功能。
VitalikButerin等人发布Ethereum“账户抽象”提案ERC4337:9月29日,Ethereum创始人Vitalik Buterin联合KristofGazso、yoav.eth、DrorTirosh、NamraPatel、TomaszK.Stanczak等人发布账户抽象提案ERC4337,可在不改变以太坊共识层协议的情况下实现验证逻辑,该提案的开发者内测版本将于近期上线。
注:“账户抽象”是以太坊社区中讨论的改进提案之一,以实现交易不需要从私钥控制的EOA账户发起,而是可以直接从智能合约发起,具体的用例包括智能合约钱包、Tornado.Cash这类隐私保护工具等。[2021/9/29 17:15:22]
实施技术
以太坊的创始人VitalikButerin描述了几种在网络上实现账户抽象的方法。这些方法包括:
LazyFullAbstraction:这是经常讨论的抽象形式。它是将以太坊账户从EOA和CA减少到只有CA。用户将资金存储在合约账户中,合约代码解释并执行编码在nonce、余额、代码哈希、签名、gas价格和存储哈希中的数据。
优点:这使得协议非常简单
缺点:
需要将非常复杂的代码硬连接到每个帐户中,以验证nonce签名并支付gas。
在矿工为发件人创建新帐户之前,需要额外的逻辑。
由于帐户是以非标准方式创建的,因此可以多次包含具有相同哈希的交易。
去除随机数抽象:在这种实现技术中,通过使交易随机数等于帐户随机数来抽象随机数。
优点:nonce抽象消除了事务在多个地方发生的可能性
缺点:它使基础协议更加复杂。
标准化签名方案:这种抽象方法为交易添加了字节数组字段签名。
优点:这使签名验证更简单
缺点:它增加了基础层的复杂性。
Vitalik概述的其他一些账户抽象技术包括添加断点操作代码、添加付费Gas操作代码、插入Gas价格+恐慌操作代码、结合恐慌和付费Gas操作代码、在交易中组合盐+代码、新创建的账户支付.
帐户抽象的好处
至此,您可能想知道这对您有何影响,以及这将如何使以太坊区块链变得更好。让我们来看看帐户抽象的一些好处:
1、多呼叫功能的实现:目前,在与以太坊区块链交互时,您必须为每个操作进行新的交易。有了抽象,所有交易都可以一键完成,节省了用户的Gas、时间。
2、会话密钥:会话密钥允许用户在与去中心化应用程序交互时指定规则。这些规则将保证更高的安全性,因为用户仅限于预先批准的规则,确保恶意行为者无法修改帐户并窃取您的资金。可以使用会话密钥指定的一些参数包括帐户可以与Dapp保持连接的最长时间、可以使用的最大Gas以及可以交易的代币数量的安全阈值。一些实现此功能的团队包括战利品领域、briq、matchboxDAO和分类帐。
3、社会恢复。帐户抽象化允许结束metamask流行使用的种子短语。社会恢复允许用户通过一个值得信赖的联系人或可靠的第三方服务指定恢复方法。如果用户在试图恢复账户时改变主意,他们也可以在恢复前设置延迟计时器。Argent正在实施这一措施,并允许用户在googledrive上备份其加密的种子短语。
4、多因素认证:一些传统金融机构正在推动规范双因素认证。这种安全模型可以通过账户抽象来实现,允许用户指定和创建多重签名钱包。
5、插件:帐户抽象允许第三方开发人员在创建帐户时插入新功能。
6、多代币费用支付:账户抽象将使用户能够以以太坊以外的任何代币支付Gas费。
7、费用委托:账户抽象将允许用户代表他人支付费用。项目和协议可以代表用户支付gas费用,使入职过程更加无缝。
8、多样化的签名方案:帐户抽象将允许与当前ECDSA方案不同的签名方案。只有抽象才会允许这种变化。这将:
引入量子阻力,确保以太坊不能被伪造或被量子计算机攻击。
创造更有效的签名算法,这将可能导致更低的Gas费用。
允许合约账户可升级。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。