Vitalik:以太坊的账户抽象之路

Unitimes發佈於 2022-06-30更新於 2022-06-30

文章摘要

账户抽象允许我们使用智能合约逻辑来指定交易的效果,以及费用支付和验证逻辑。

账户抽象允许我们使用智能合约逻辑来指定交易的效果,以及费用支付和验证逻辑。这带来了许多重要的安全好处,例如多重签名和智能恢复钱包,能够在不更换钱包的情况下更换密钥以及量子安全性。

许多帐户抽象的方法已在不同程度上被提出并得到了实施,参见:EIP-86、EIP-2938,以及两年前的这篇文章。今天,由于开发者们希望专注于合并与分片,这些 EIP 的开发陷入了僵局,而 ERC-4337 这种不需要任何共识更改的替代方案已经取得了很大进展。

ERC-4337 尝试通过额外的协议手段实现和 EIP-2938 相同的事情。用户需要发送称为用户操作 (user operations) 的链外消息,这些消息由区块提议者 (proposer) 或为区块提议者生成 bundles 的构建者 (builder) 批量收集并打包成单笔交易。提议者或构建者负责过滤操作以确保他们只接受支付费用的操作。用户操作有一个单独的 mempool 存储池,连接到这个存储池的节点会进行 ERC-4337 特定的验证,以确保用户操作在转发之前能够支付费用。

ERC-4337 作为一个纯自愿的 ERC 可以做很多事情。然而,在一些关键领域,它比真正的协议内解决方案更弱:

现有用户如果不将其所有资产和活动移动到新帐户,则无法升级;

额外的 gas 开销(基本 UserOperation 用户操作约 42 k,而基本交易约为 21 k);

较少受益于协议内抗审查技术(例如 crLists),它以交易为目标并会错过用户操作 (user operation)

而实现最佳效果的一条现实途径,是在短期内开始大力支持 ERC-4337,然后随着时间的推移添加 EIP 来弥补其弱点。这并不一定需要大家专门承诺遵守 ERC-4337。相反,可以将协议内支持设计为更通用,并支持 ERC-4337 及其替代方案和改进。

在这里,我将列出其中的一些 EIP,并说明它们可以按什么顺序实施。

将 EOA 钱包转换为智能合约钱包

为了让现有的 EOA 钱包升级到 ERC-4337 钱包,我们可以制作一个 EIP,允许 EOA 执行设置其合约代码的操作。一旦 EOA 做到了这一点,这种转变就不可逆转。从那时起,该帐户将仅用作智能合约钱包。幸运的是,由于 ERC-4337 帐户是 DELEGATECALL 代理,因此如果需要,以后可以将钱包转换为与其他 ERC 兼容的智能合约。

关于如何实施此升级过程有一些提案:

"replace code" 交易类型

这还没有作为正式的 EIP 引入,但方法很简单:添加一个新的 EIP-2718 交易类型,只需将帐户码替换为 calldata。

AUTH_USURP (EIP-5003)

EIP-5003 是 EIP-3074(AUTH 和 AUTHCALL)的扩展提案,它引入了新的 AUTHUSURP 操作码。如果使用 EIP-3074 机制,EOA 地址 A 已授权另一个地址 B 代表它行事,则 AUTHUSURP 允许 B 设置 A 的代码。

这种方法比“replace code”路线更复杂,只有当我们打算采用 EIP-3074 时,这才有意义。

强制转换

在更长远的未来,我们可能希望进行强制转换,以简化协议,并使合约成为唯一的帐户类型,从协议中取消 ECDSA。一种可能的方法是添加一个覆盖规则,从某个区块开始,没有 code 的账户被视为具有特定标准化“ERC-4337 EOA 钱包” code 的账户。

这可以通过“poking”过程来完成,其中任何源自 EOA 的交易都将其转换,并且任何触及具有非零 nonce 的 EOA 交易都会将其转换。也可以一次性通过整个状态来完成。

问题

合约内 ECRECOVER 验证:一些智能合约依赖于这样的假设,即如果你向特定账户提供 ECRECOVER 的签名,你就拥有该账户。如果 EOA 转换为合约,然后更改其验证密钥,则原始密钥仍然能够在这些特定上下文中“代表”帐户。这可通过开始鼓励所有此类项目更改为使用 EIP-1271 验证,而不是在帐户有 code 的情况下使用 ECRECOVER。

尚未检测到的账户:强制转换面临的一个挑战是拥有资产(如 ERC20 s、ERC721 s,但不是 ETH )但尚未发送或接收任何交易的账户,因此协议无法可靠检测到这些账户。协议必须保留将此类账户永久转换为默认钱包的功能,或者需要有一个截止期(例如部署后 4 年),在此之后尚未转换的帐户将被烧毁。

EOA 只检查不可转让性:一些应用程序实施合约内检查以仅允许 EOA 与其交互。这通常是为了强制执行不可转让性。从根本上来说,这是一个坏主意,并且与转向智能合约以提高安全性的目标不相容。因此,不应鼓励这种做法,而应鼓励应用依赖原所有者恢复程序来使转移无法执行。

降低 Gas 成本

ERC-4337 钱包面临更高的 gas 成本(基本 ERC-4337 操作约 42000 gas,而基本常规交易需要 21000 gas),原因如下:

需要支付大量的单个存储读/写成本,在 EOA 的情况下,这些成本会捆绑到一笔 21000 gas 的付款中:

编辑包含 pubkey+nonce (~5000) 的存储 slot;

用户操作调用数据成本(约 4500,通过压缩可减少到约 2500);

ECRECOVER (~3000);

首次访问钱包本身 (~2600)

首次访问收款人账户 (~2600)

将 ETH 转入收款人账户 (~9000)

编辑存储以支付费用(~5000)

访问包含代理 (~2100) 的存储 slot,然后访问代理本身 (~2600);

除了上述存储读/写成本之外,合约还需要执行 “业务逻辑”(解包 UserOperation、对其进行哈希、洗牌变量等)

需要消耗 gas 来支付日志费用(EOA 不发布日志);

一次性合约创建成本(约 32000 gas,加上代理中每个 code byte 200 gas,再加上设置代理地址的 20000 gas)

其中很多问题将在 Verkle 树 witness gas cost EIP 以及 write gas cost reform EIP 中自动解决,以更精简的系统取代大量存储成本。例如,pubkey 和 nonce 可以存储在 slot 0…63 中,这将访问它们的成本降低到 1000 以下。用户在转移 ETH 和支付费用时支付的费用会更少,因为目标账户和接收账户只需要被首次访问一次。

还有更多的 EIP 可以帮助我们实现简化。例如:

禁止智能合约逻辑使用 slot 0 的自愿 ERC,将允许它用于存储代理,从而使其受益于更便宜的 gas 成本。

“code address”字段可以使代理更轻松,消耗的 gas 更少。

“snappy compression”预编译可以更轻松地使用 ABI 对象,而无需为所有零字节支付 calldata gas 成本。

这是一个需要更多研究的领域。

crLists

这是一个长期的问题,因为只有启用了完全的协议提议者/构建者(proposer/builder)分离方案后,crLists 才真正适用。挑战在于,我们希望提议者能够识别“值得”包含的用户操作(即他们支付足够的费用),以便协议可以迫使它们被包含在下一个有空间的区块中。

这要求在协议中明确“验证”和“执行”的概念。对于用户操作,必须有一种已定义的方法来验证该操作,以及有一种已定义的方法来执行该操作,这样如果某个操作被验证,则执行该操作的尝试将是保证支付费用的,除非被读取的状态在验证期间被修改。这些操作可以通过嵌入 ABI 方法来实现,如果实现了 EOF EIP,也可以通过添加专用的 EOF 部分来实现。

幸运的是,这不需要我们把 ERC-4337 当作一个最终标准,而是纳入 ERC-4337 所支持的一个较弱概念,其他在很大程度上不同的 ERC 也可以轻松支持它。

原因是,ERC-4337 和 EIP-2938 的复杂性很大程度上与解决更强的 DoS 抗性问题有关:不可能使一个操作取消数百个其他操作,因为这将允许廉价地对 mempool 进行垃圾交易攻击。这需要对帐户验证可访问的内容施加限制。在这里,我们可以做一些更简单的事情:只记录在验证过程中触摸了哪些状态对象,如果这些状态对象中的任何一个被编辑,则不需要包含。

这使得个人账户可以在审查抵制和灵活性之间选择自己的权衡。在极端情况下,如果账户愿意,可以通过 Uniswap 在验证期间支付费用,但由于任何人都可以发送影响 Uniswap 状态的交易,因此此类账户实际上没有抗审查保证。

crList 设计的大致轮廓如下:

提议可以包含一个 crList,它指定要包含的操作列表,以及每个操作读取的状态对象 (key, value)对的列表。接受 crList 的构建者(或其他任何人)必须检查所有操作是否通过 validate 检查。

执行 crList 中的每个操作都需要该区块,除非该区块没有足够的剩余 gas,或者执行时的当前状态已经编辑了该操作读取的状态对象之一。

ERC-4337 的剩余复杂性将仅用于 mempool 安全。原则上,可以有多个相互竞争的 ERC 以不同的方式实现该目标,只要它们都遵循相同的验证和执行标准。

这种方法的一个缺点是它与签名聚合不完全兼容(正如 ERC-4337 试图做的那样):因为协议不“理解”聚合方案,它不能强制聚合,恶意构建者可能纳入未聚合的操作,并迫使发送者为其支付全部 gas。但这种不便可以说是适度的。

可能的路线图

短期

将 ERC-4337 全面投入生产。理想情况下,可以使用签名聚合功能对其进行扩展,以实现 rollup 友好性。

应该有接入 ERC-4337 的易于使用的浏览器钱包。

考虑实现签名聚合和压缩,以使 ERC-4337 对 L2 更加友好;

在 L2 协议中引导 ERC-4337 生态,其中 gas 成本问题会较少;

中期

实施 Verkle 树,添加 EIP 以降低 gas 成本;

添加可选的 EOA-to-ERC-4337 转换;

在 PBS 推出的同时或不久之后添加 crList 逻辑;

长期

考虑强制转换;

可能的替代方案

考虑编写一个在协议层包含 ERC-4337 等效帐户和交易的 EIP,并推动其在 L2 中的采用;

使用一种通过 axuliary 区块工作的抗审查解决方案,消除用户操作对以太坊协议的可读的需要。

你可能也喜歡

全球最臭名昭著的论坛,发现了 AI 最重要的「思考」能力

Claude Opus 4.7版本发布后引发争议,主要问题包括token数量膨胀(同样文字分词量增加1-1.35倍)和过度拟人化的表达风格。文章指出,这种"油腻"说话方式与RLHF训练中人类偏好高分讨好式回应有关。 核心议题围绕AI是否真正具备思考能力。这一问题的关键线索源自2020年4chan论坛用户的意外发现:在游戏《AI Dungeon》中,当要求GPT-3模型分步骤解答数学题时,其准确率显著提升。这一技巧后来被学术界命名为"思维链",但Google在相关论文中未承认4chan用户的先驱贡献。 Anthropic公司的"电路追踪"技术揭示了更复杂的真相:模型可能真实推理、随机生成,或为迎合人类而反向伪造推导过程(如实验中为得出预设答案4,捏造虚假数学步骤)。这种"不忠诚的推理"表明,模型可能只是学会了表演思考而非真正思考。 本质上,"思维链"通过增加上下文量为模型提供更多"草稿纸"空间,利用Transformer架构的注意力机制提升预测准确率,体现了"以时间换准确率"的计算理念。随着测试时计算扩展(长思考)成为趋势,AI在复杂任务上表现提升,但计算成本急剧增加。 文章最后强调,在高风险领域若盲目信任AI的推理过程可能带来严重后果,承认技术局限性才是正确使用AI的前提。

marsbit1 小時前

全球最臭名昭著的论坛,发现了 AI 最重要的「思考」能力

marsbit1 小時前

交易

現貨
合約

熱門文章

什麼是 ETH 2.0

ETH 2.0:以太坊的新時代 介紹 ETH 2.0,廣為人知的以太坊 2.0,標誌著對以太坊區塊鏈的一次重大升級。這次過渡不僅僅是表面上的改造;其目標是從根本上增強網絡的可擴展性、安全性和可持續性。ETH 2.0 透過從能量密集型的工作量證明(PoW)共識機制轉向更高效的權益證明(PoS),承諾為區塊鏈生態系統帶來變革性的改變。 什麼是 ETH 2.0? ETH 2.0 是一系列獨特且相互連接的更新,專注於優化以太坊的能力和性能。這次全面改革旨在解決現有以太坊機制所面臨的主要挑戰,特別是交易速度和網絡擁堵問題。 ETH 2.0 的目標 ETH 2.0 的主要目標圍繞著改善三個核心方面: 可擴展性:旨在顯著提升網絡每秒可以處理的交易數量,ETH 2.0 希望突破目前約每秒 15 笔交易的限制,潛在地達到數千筆。 安全性:增強的安全措施是 ETH 2.0 的核心,特別是提高抵抗網絡攻擊的能力以及保護以太坊的去中心化精神。 可持續性:新的 PoS 機制旨在不僅提高效率,還大幅降低能耗,讓以太坊的運營框架與環保考量相符。 誰是 ETH 2.0 的創造者? ETH 2.0 的創建可追溯至以太坊基金會。這個非營利組織在支持以太坊發展方面發揮著關鍵作用,由著名的聯合創始人 Vitalik Buterin 主導。他對於更可擴展和更可持續以太坊的願景,是這次升級的推動力,並吸引了來自全球的開發者和愛好者的貢獻,共同致力於改善協議。 誰是 ETH 2.0 的投資者? 雖然有關 ETH 2.0 的投資者的具體信息尚未公開,但以太坊基金會已知方向來自區塊鏈及技術領域的各種組織和個人支持。這些合作夥伴包括創投公司、技術公司和慈善機構,它們共同致力於支持去中心化技術和區塊鏈基礎設施的發展。 ETH 2.0 如何運作? ETH 2.0 以引入一系列關鍵特性而著稱,使其與前身有所區別。 權益證明(PoS) 轉向 PoS 共識機制是 ETH 2.0 的標誌性變化之一。與依賴於能量密集型挖礦進行交易驗證的 PoW 不同,PoS 允許用戶根據他們在網絡中抵押的 ETH 數量來驗證交易和創建新區塊。這導致能量效率的提升,能耗降低約 99.95%,使以太坊 2.0 成為一個相當綠色的替代方案。 分片鏈 分片鏈是 ETH 2.0 的另一個關鍵創新。這些較小的鏈與主要的以太坊鏈平行運行,使得多筆交易可以同時處理。這種方法增強了網絡的整體容量,解決了困擾以太坊的可擴展性問題。 信標鏈 在 ETH 2.0 的核心是信標鏈,它協調網絡並管理 PoS 協議。它在某種程度上充當了組織者:它監督驗證者,確保各分片與網絡的連接,並監控整體區塊鏈生態系統的健康狀況。 ETH 2.0 的時間軸 ETH 2.0 的旅程標誌著幾個關鍵里程碑,描繪了這次重大升級的演變: 2020年12月:信標鏈的啟動標誌著 PoS 的引入,為 ETH 2.0 的遷移鋪平了道路。 2022年9月:“合併”的完成代表著以太坊網絡成功從 PoW 轉型為 PoS 框架,預示著以太坊的新時代。 2023年:預期分片鏈的推出旨在進一步增強以太坊網絡的可擴展性,鞏固 ETH 2.0 作為去中心化應用和服務的強大平台。 主要特性和優勢 改進的可擴展性 ETH 2.0 最重要的優勢之一是其改進的可擴展性。PoS 和分片鏈的結合使網絡能夠擴大容量,允許其處理的交易量遠超舊有系統。 能源效率 PoS 的實施對於區塊鏈技術中的能源效率來說是一個巨大的進步。通過大幅降低能源消耗,ETH 2.0 不僅減少了運營成本,還與全球可持續發展目標更加一致。 增強的安全性 ETH 2.0 的更新機制提高了網絡的安全性。PoS 的部署,加上通過分片鏈和信標鏈建立的創新控制措施,確保了對潛在威脅更高程度的保護。 降低用戶成本 隨著可擴展性的改善,交易成本也會明顯降低。預期增強的容量和減少的擁堵將轉化為用戶更低的手續費,使以太坊在日常交易中變得更可及。 結論 ETH 2.0 標誌著以太坊區塊鏈生態系統的一次重要演變。隨著其解決可擴展性、能源消耗、交易效率和整體安全性等關鍵問題,這次升級的重要性不言而喻。轉向權益證明、引入分片鏈以及信標鏈的基礎性工作,顯示出以太坊未來能夠滿足去中心化市場日益增長的需求。在一個由創新和進步推動的行業中,ETH 2.0 是區塊鏈技術在為更可持續和高效的數字經濟鋪路方面能力的見證。

166 人學過發佈於 2024.04.04更新於 2024.12.03

什麼是 ETH 2.0

什麼是 ETH 3.0

ETH3.0 與 $eth 3.0:以深入分析以太坊的未來 介紹 在快速發展的加密貨幣和區塊鏈技術領域,ETH3.0,通常標記為 $eth 3.0,已成為一個備受關注和猜測的話題。該術語包含兩個主要概念,值得說明: 以太坊 3.0:這代表潛在的未來升級,旨在增強現有的以太坊區塊鏈的能力,特別集中於提高可擴展性和性能。ETH3.0 表情符號代幣:這個獨特的加密貨幣項目旨在利用以太坊區塊鏈創建一個以表情符號為中心的生態系統,促進加密貨幣社區的參與。 理解這些 ETH3.0 的方面不僅對加密愛好者至關重要,也對觀察數字空間中的更廣泛技術趨勢的人有所幫助。 什麼是 ETH3.0? 以太坊 3.0 以太坊 3.0 被認為是對已建立的以太坊網絡的擬議升級,自其誕生以來,它一直是許多去中心化應用程式(dApps)和智能合約的支柱。預想的增強主要集中於可擴展性——整合先進技術,如分片和零知識證明(zk-proofs)。這些技術創新旨在促進每秒交易數量的前所未有(TPS),潛在地達到數百萬筆,從而解決當前區塊鏈技術面臨的最重大限制之一。 這次改進不僅是技術性的,更是戰略性的;它旨在為以太坊網絡的普遍採用和未來的實用性做準備,因為該未來將面臨對去中心化解決方案日益增長的需求。 ETH3.0 表情符號代幣 與以太坊 3.0 不同,ETH3.0 表情符號代幣進入了一個更輕鬆和更具玩樂性的領域,通過將互聯網表情符號文化與加密貨幣動態相結合。該項目使用戶能夠在以太坊區塊鏈上購買、出售和交易表情符號,提供一個促進社區通過創造力和共同利益參與的平台。 ETH3.0 表情符號代幣旨在展示區塊鏈技術如何與數字文化交匯,創造出既有趣又具有經濟價值的使用案例。 誰是 ETH3.0 的創造者? 以太坊 3.0 對以太坊 3.0 的倡議主要由以太坊社區內的一個開發者和研究人員的聯盟推動,特別是包括 Justin Drake。他因對以太坊演變的見解和貢獻而聞名,Drake 在關於將以太坊轉變為新共識層的討論中是一個重要人物,這被稱為「Beam Chain」。 這種協作開發的方式標誌著以太坊 3.0 不是單一創造者的產品,而是集中精力促進區塊鏈技術進步的集體智慧的體現。 ETH3.0 表情符號代幣 關於 ETH3.0 表情符號代幣的創造者的詳細資料目前無法追溯。表情符號代幣的特性通常導致更分散和社區驅動的結構,這可以解釋為什麼缺乏具體的歸屬感。這與更廣泛的加密社區的精神相符,該社區的創新往往源於協作而非個人努力。 誰是 ETH3.0 的投資者? 以太坊 3.0 對以太坊 3.0 的支持主要來自以太坊基金會以及一個充滿熱情的開發者和投資者社區。這種基礎聯繫提供了相當程度的合法性,並增強了成功落實的前景,因為它利用了多年網絡運營建立的信任和可信度。 在快速變化的加密貨幣氣候中,社區支持在推動開發和採用中發揮了關鍵作用,將以太坊 3.0 置於未來區塊鏈進步的重要競爭者地位。 ETH3.0 表情符號代幣 雖然目前可用的來源並沒有明確提供支持 ETH3.0 表情符號代幣的投資機構或組織的具體信息,但這反映出表情符號代幣典型的資金模型,通常依賴於基層支持和社區參與。此類項目的投資者通常由因社區驅動的創新潛力以及在加密社區中發現的合作精神而受到激勵的個人組成。 ETH3.0 如何運作? 以太坊 3.0 以太坊 3.0 的區別特點在於其擬議的分片和零知識證明技術的實施。分片是一種將區塊鏈劃分為更小、更易管理的單元或「分片」的方法,這些分片能夠同時處理交易,而不是按序處理。這種處理的去中心化有助於避免擁堵,並確保即使在高負載下,網絡也能保持響應。 零知識證明(zk-proof)技術通過允許交易驗證而不揭示涉及的基本數據,增加了一層複雜性。這一方面不僅增強了隱私性,還提高了整個網絡的效率。還有討論將零知識以太坊虛擬機(zkEVM)納入此次升級,進一步擴大網絡的能力和實用性。 ETH3.0 表情符號代幣 ETH3.0 表情符號代幣通過利用表情符號文化的受歡迎程度而脫穎而出。它建立了一個市場,讓用戶參與表情符號交易,不僅僅是為了娛樂,也是為了潛在的經濟利益。通過整合質押、流動性供應和治理機制等特性,該項目營造了一種促進社區互動和參與的環境。 通過提供娛樂和經濟機會的獨特結合,ETH3.0 表情符號代幣旨在吸引多樣的觀眾,範圍從加密愛好者到隨便的表情符號愛好者。 ETH3.0 的時間表 以太坊 3.0 2024年11月11日:Justin Drake 暗示即將到來的 ETH 3.0 升級,重點是可擴展性改進。這一公告標誌著關於以太坊未來架構正式討論的開始。2024年11月12日:預期中的以太坊 3.0 提案將在曼谷的 Devcon 上公佈,為更廣泛的社區反饋和潛在的開發後續步驟奠定基礎。 ETH3.0 表情符號代幣 2024年3月21日:ETH3.0 表情符號代幣正式在 CoinMarketCap 上列出,標誌著其進入公眾加密領域,並增強了其基於表情符號的生態系統的可見性。 關鍵要點 總之,以太坊 3.0 代表了以太坊網絡內的重要演變,集中於通過先進技術克服可擴展性和性能的限制。其擬議的升級反映出對未來需求和可用性的主動應對。 另一方面,ETH3.0 表情符號代幣 encapsulates 加密貨幣領域中以社區為驅動文化的本質,利用表情符號文化來創建鼓勵用戶創造力和參與的平台。 理解 ETH3.0 和 $eth 3.0 的不同目的和功能對於任何對加密領域中正在進行的發展感興趣的人來說都是至關重要的。隨著這兩個倡議鋪展獨特的道路,它們共同凸顯了區塊鏈創新動態和多樣化的本質。

169 人學過發佈於 2024.04.04更新於 2024.12.03

什麼是 ETH 3.0

如何購買ETH

歡迎來到HTX.com!在這裡,購買Ethereum (ETH)變得簡單而便捷。跟隨我們的逐步指南,放心開始您的加密貨幣之旅。第一步:創建您的HTX帳戶使用您的 Email、手機號碼在HTX註冊一個免費帳戶。體驗無憂的註冊過程並解鎖所有平台功能。立即註冊第二步:前往買幣頁面,選擇您的支付方式信用卡/金融卡購買:使用您的Visa或Mastercard即時購買Ethereum (ETH)。餘額購買:使用您HTX帳戶餘額中的資金進行無縫交易。第三方購買:探索諸如Google Pay或Apple Pay等流行支付方式以增加便利性。C2C購買:在HTX平台上直接與其他用戶交易。HTX 場外交易 (OTC) 購買:為大量交易者提供個性化服務和競爭性匯率。第三步:存儲您的Ethereum (ETH)購買Ethereum (ETH)後,將其存儲在您的HTX帳戶中。您也可以透過區塊鏈轉帳將其發送到其他地址或者用於交易其他加密貨幣。第四步:交易Ethereum (ETH)在HTX的現貨市場輕鬆交易Ethereum (ETH)。前往您的帳戶,選擇交易對,執行交易,並即時監控。HTX為初學者和經驗豐富的交易者提供了友好的用戶體驗。

3.6k 人學過發佈於 2024.12.10更新於 2025.03.21

如何購買ETH

相關討論

歡迎來到 HTX 社群。在這裡,您可以了解最新的平台發展動態並獲得專業的市場意見。 以下是用戶對 ETH (ETH)幣價的意見。

活动图片