木星链 木星链
Ctrl+D收藏木星链
首页 > TUSD > 正文

ETH:什么是模块化账户抽象?

作者:

时间:1900/1/1 0:00:00

在为以太坊增加智能合约钱包的原生支持的多个提案被拒绝或停滞后,ERC-4337已被接受为标准,以实现账户抽象而无需对EVM进行协议级别的修改。在过去的几个月里,AA的一个子集的活动激增,它围绕着这些智能账户的模块化,使它们对用户和开发者来说更容易扩展。这种一般的方法被称为模块化账户抽象,下面的文章旨在概述这一生态系统在过去3个月中的发展以及事情的走向。

生态系统的组成部分

下面的部分将概述和讨论模块化AA生态系统的不同组件。这些组件是账户、模块、注册表、UI和开发者工具。这些组件可能不是使这个生态系统长期运作所需的唯一部分,但至少目前充分包含了各团队集中研究和开发努力的不同领域。

模块化账户

模块化账户是指用户可以轻松、安全地扩展的智能账户,而不是只能由开发人员修改并需要重新部署的“静态”账户。这使得用户可以在他们的智能账户中即时切换出、添加或删除功能。

马斯克回应Kraken CEO:基于什么数据评论比特币能源需求:此前消息,加密货币交易所Kraken联合创始人兼CEO Jesse Powell表示比特币比批评者(马斯克)所说的更加环保,马斯克应该做更多的研究(再作出评论),马斯克对此刚刚在推特回应称:“基于什么数据呢?”[2021/6/17 23:45:17]

实施方法

目前有两种不同的模块化智能账户的方法,一种是由安全架构创建或启发的,另一种是由多面代理标准启发的。这两种方法有不同的发展,可以沿着多个轴线进行对比。Safe账户是从Gnosis建立的最初的multisig演变而来的,并且早于ERC-4337.该团队非常强调安全性和可扩展性,而ERC-4337的支持在目前只能通过一个模块来实现。然而,也有关于在未来的版本中实现本地支持的讨论。

另一种方法是受ERC-2535的启发,在过去的几个月里,不同的团队已经进行了广泛的讨论和追求。这个标准的目的是使智能合约具有可扩展性,通过标准化的方式来存储对模块的引用,并使用delegatecall操作码来执行这些。虽然围绕这个机会的讨论已经持续了一段时间,但第一个工作实现是由我们在ETHDenver建立的。从那时起,其他几个团队已经发布了不同阶段的实施方案,例如ZeroDevKernel,这是一个最小和可扩展的智能账户,从ERC-2535中获得了一些灵感。此外,Alchemy团队已经写出了一个阶段性的EIP草案,旨在从ERC-2535中获取灵感,实现模块化智能账户的标准化。SoulWallet过去也曾试验过ERC-2535账户,尽管他们后来搁置了这些尝试。

听证会 | 扎克伯格:应让Libra发行,看看市场有什么反应:金色财经直播报道,在今日听证会上,议员Frank Lucas,你们如何说服那些没有银行账户的人,让他们不信任银行,却使用Facebook的服务吗?扎克伯格回答说,他现在也不知道如何找到答案,唯一的办法是让Libra发行出来,然后看看市场会有什么反应。[2019/10/23]

如上所述,这两种不同的方法可以沿着不同的轴线进行对比。其中之一是使用delegatecall来执行模块,而不是使用外部调用。使用delegatecall允许从调用合约的上下文中执行外部代码,这就意味着外部代码可以修改调用合约的存储,并进行来自调用账户而不是模块的外部调用。这不允许关注点的分离,这意味着一个模块可以覆盖账户上的任何存储槽,这引起了一个主要的攻击媒介。虽然安全账户目前确实允许使用delegatecall来调用模块,但这在未来可能会改变,要么完全被删除,要么为模块创建不同的权限级别。使用delegatecall来执行模块的一个好处是,模块可以是单子,大大降低了添加模块的gas成本。

声音 | Circle CEO:不知道什么时候会重新安排午餐时间 但很期待与巴菲特讨论加密货币:据彭博社消息,近日,Circle首席执行官Jeremy Allaire在采访时再次谈及孙宇晨与巴菲特的午餐一事。他表示,“我不知道什么时候会重新安排时间,但我想说的是,我当然非常期待与巴菲特讨论加密货币。如果你目睹了互联网在过去20年的崛起,你已经看到了互联网基础设施如何改变了媒体、通讯、零售、商业和信息产业……我认为这与我们现在看到的加密货币和区块链的诞生是非常相似的。在未来20年里,区块链和加密货币对全球经济体系的重要性将不亚于互联网对通信的变革。因此,我想和巴菲特谈谈这种转变是什么样子的,以及从投资的角度来看,这种转变带来了哪些机遇。”[2019/9/14]

这些方法的另一个区别是模块的存储方式和交易的路由。ERC-2535使用从函数选择器到模块地址的映射,这意味着没有两个活动模块可以共享相同的函数名称。使用这个路由器的事务流程是在这个映射中查找一个函数签名,然后用这个签名和参数用delegatecall调用相应的合同地址。另一方面,安全账户只存储对模块地址的引用,从而使多个模块使用同一个函数选择器成为可能。此外,交易流程可以由安全账户或模块触发,然后模块可以调用安全账户,从那里执行交易。

动态 | 央行研究论文:区块链能做什么不能做什么?:中国人民银行发布工作论文称:目前真正落地并产生社会效益的区块链项目很少,除了区块链物理性能不高以外,区块链经济功能的短板也是重要原因。应在持续研究和试验的基础上,理性客观评估区块链能做什么、不能做什么。不要夸大或迷信区块链的功能。区块链应用要立足实际情况。目前区块链投融资领域泡沫明显。[2018/11/6]

第三个主要区别是这些实现处理存储的方式。由于ERC-2535调用模块的方式,存储不能像在普通智能合约中那样处理。相反,开发人员通常选择使用结构化或“钻石”存储,将数据存储到存储槽,这些存储槽是唯一的、特定模块的标识符的哈希值。这意味着不同的模块不会覆盖对方的存储数据,并导致合同以意想不到的方式行事。虽然安全模块可以使用delegatecall来调用,但它们并不要求以这种方式来调用,因此可以处理自己的存储。这意味着存储不需要以上述方式进行结构化,而是可以以Solidity存储定位通常实现的常规方式或其他任何想要的方式来处理存储。

投票上币被质疑 何一回复“不是什么都需要区块链+”:微拍创始人胡震生与何一就“数字货币交易所投票上币”话题展开讨论。胡震生认为“投票上币”交易所没有公开投票地址,同时也未公布投票算法,他表示“作为参与方认为平台有修改数据的驱动力和可能性”,认为这“就不是一个优秀的区块链项目”。何一回复称币安的投票项目都会经过审核,且投票数据每次都会清洗;交易所本来就是中心化平台,每个组织有自己的规则,而她一直的观点是“不是什么都需要‘区块链+’”。[2018/2/28]

这些是这些方法之间最大的一些差异。

模块

模块,有时称为插件或面,是旨在扩展智能账户功能的智能合约。例如,一个模块可能允许所有者使用不同的签名方案来控制他们的钱包,或者在每次代币被转移到另一个账户时触发某个动作。与到目前为止存在的、上面已经讨论过的模块化账户的不同实现方式有关,有不同的构建和执行模块的方式。因此,今天存在的模块要么是为安全架构建立的,如这些或这些,要么是为钻石启发的架构建立的,如ZeroDev的内核或我们在ETHDenver建立的一些演示模块。

正如上文详细解释的那样,一个模块的结构取决于它所要使用的账户实现。一个主要的区别是,为安全基础设施构建的模块需要回调到安全账户,以便从账户的上下文中初始化一个函数调用。相比之下,为钻石启发账户建立的模块不需要这样做,因为它的代码是从智能账户本身中执行的。在此基础上,还存在一个标准,建立在安全架构之上的模块可以使用,称为Zodiac标准。该标准旨在将模块化账户的不同组成部分分开,称为头像、护卫和模块,因此旨在为构建智能账户模块创建一个通用框架。一些使用该标准的模块的例子可以在这里找到。

Permissive是一个正在为智能账户构建公共模块的团队的一个例子。到目前为止,他们的重点是为智能账户建立一个授权框架,主要集中在允许更细化的访问控制,即用户可以给不同的实体以具体的权限来执行账户的特定动作。他们已经发布了一个Safe账户的模块,并正在努力将其移植到不同的模块实现上。

注册表

到目前为止,许多智能合约和智能账户的模块实现都是在用户和模块开发者之间建立了强大的信任假设。这就是ERC-2535今天几乎完全被使用的方式,允许开发者团队管理大型和复杂的代码库。然而,智能账户生态系统的更大愿景是消除这种信任假设,允许第三方开发者建立非技术用户可以安全地添加到他们的钱包的模块。虽然信任假设不能完全取消,但我们可以将单个用户和模块开发者之间的所有信任假设捆绑到一个单一的实体,即模块注册表。这意味着,用户现在只需要信任这个单一的实体,而不是需要信任他们想要使用的模块的每一个开发者。

虽然这种思路导致了中心化登记处的结论,但这远远不是我们所追求的愿景。相反,我们目前正在设计一个类似于超结构的注册中心的原型,这意味着它是开放的、不可阻挡的,而且最重要的是,没有许可。这意味着具有不同安全假设的各方可以坐在这个注册表之上,由用户来选择在什么情况下信任哪一方。目前,我们正在对不同的实现方式进行原型设计,并得到了不同团队的有益投入和合作,例如Safe和EF的4337团队成员。一旦我们有了关于不同实现方式和激励设计的更多具体细节,我们将开始更公开地分享这些细节,并开放基础代码。

用户接口

正如Yoav之前所指出的,模块化AA的一个较少被探索的方面是类似的模块化前端设计。这是必要的,因为UI组件需要通过了解函数选择器、参数编码和执行何种前端或后端逻辑来专门构建以触发某些链上功能。到目前为止,我们还不知道有哪个团队在这个问题上取得了重大进展,尽管我们正慢慢开始探索建立在上面讨论的注册表之上的参考实现。从我们的初步研究来看,一个允许外部模块开发者的模块化前端的安全设计是不难的。

开发者工具

虽然存在开发者工具,供dapp或钱包开发者将模块化的AA集成到他们的应用程序中,但很少有指南或工具来帮助开发者构建模块。Safe有一个指南在这里,ZeroDev有一个在这里,但除了这些,我们不知道有什么更实质性的东西可以让开发者轻松了解如何建立一个模块。随着这个领域的成熟,我们相信会有更多的指南和实际的工具出现,大大降低模块开发者的门槛。

结论

模块化AA是更广泛的AA运动的一个子集,其目的是将智能账户模块化,以使其可以为用户定制,并允许开发人员轻松建立独立的智能账户功能,而不是需要建立一个完整的账户。上述文章的目的是对这一领域的现状做一个广泛的概述,以及强调正在取得进展的地方。

标签:ETHETHD以太坊ETH钱包地址ETH挖矿app下载Etherael指什么寓意ETHD币是什么币以太坊币是什么币

TUSD热门资讯
DID:区块链上的DID:去中心化标识如何掌管线上身份的未来

你的身份早已数字化 你其实有一个数字身份,从网络权限到信息存储,再到存在浏览器中的信用卡记录,以及你的线上加密钱包中的内容还有存储在网络上数百个数据库中的数据。你的身份是分散的,而且是数字化的.

1900/1/1 0:00:00
EDX:一夜上头条 幕后金主、合规与否等十个问题看懂EDX Markets

2022年6月两家做市商巨头CitadelSecurities和VirtuFinancial表示,正在富达投资和嘉信理财的帮助下开发一种加密产品,增加数字资产的获取渠道.

1900/1/1 0:00:00
ETH:需求理论:Web3集成分析

对于每一个经济部分,都有从微观到中观的模式过渡。这意味着每一项经济活动都要从对执行微观部分的分析开始.

1900/1/1 0:00:00
比特币:初闻BRC-20 仿佛又看到了那场盛夏

一、初闻Ordinals、BTC-NFT、BRC-20 这部分是概念的堆砌,虽然可以几句话讲明白,但是还是想从原理的角度,将每一个知识点穿起来.

1900/1/1 0:00:00
NFT:Blur 是 NFT 的流动性陷阱吗?

时光飞逝,2023年的第1季度即将结束。如果你没有时间跟上NFT领域,别担心,我会帮你的。我将提炼出2月发生的主要事件、我最兴奋的趋势,以及我对BLUR代币发布的看法.

1900/1/1 0:00:00
ETH:“Bald”跑路 低级局如何过所有人

近日,Coinbase的亲儿子layer2项目Base链上不太平。首先是其上最大的Meme币项目bald项目从早期的大规模资金注入做市,一再从流动性池中撤资,涉嫌恶意操纵市场,导致Bald的币价.

1900/1/1 0:00:00