以太坊路线图:账户抽象
武安蛋蛋蛋v
发表于 2023-2-5 10:13:47
229
0
0
面对现实吧,以太坊的用户体验很糟糕。你可以使用 Apple Pay 刷脸购买,以太坊如何竞争?本文介绍的账户抽象是 0 到 1 的升级,将打开设计空间并革新以太坊!
(2/25)/ l- ]6 \* {7 n9 r q Z5 n
习惯于阅读长文形式的文本?没问题!
在我的网站主页上可以永久查看同一篇文章,Inevitable Ethereum。
(3/25)
以太坊是世界计算机,一个单一的、全球共享的计算平台,它存在于由 1,000 台计算机(节点)组成的网络空间中。
这些节点是现实世界中的真实计算机,直接进行点对点通信。9 O" D, S2 H' }
(4/25)9 N4 h; z0 i$ l4 ?/ u W
以太坊设施更大的愿景旨在提供一个单一的共享计算平台 —— 以太坊虚拟机 (EVM)。+ J4 C4 P/ F. W5 e3 Q- F
EVM 为交易(计算)提供上下文;你在链上 "do” 的一切都发生在 EVM 中。
(5/25)" z3 w: [7 _5 J2 { M& u- f
在 EVM 中,身份 (和所有权) 的原子单位是账户。
账户可以是由非 EVM 实体 (例如个人) 控制的外部拥有账户 (EOA, Externally Owned Accounts),或由其智能合约代码控制的合约账户 (CA, Contract Accounts)。
(6/25)
EOA 和 CA 有一些非常重要的区别。) A2 s2 z( o+ k5 |" a
从高层次来看:EOA 由使用密钥对的人 (或 EVM 外部的代码) 控制,CA 由代码 (EVM 内部) 控制。( O$ Y5 Q; R" S# i4 w+ X N
EOA 是唯一可以发起 EVM 操作的帐户。
1 ]! M+ ^$ n% |$ T* e
(7/25)
密钥对 (公钥和私钥) 使您能够执行数字签名,用于公开确认两件事:% D. J& w! ]3 m- F: |5 Q+ z
- 该消息确实是由声称发送它的人发送的
- 消息未被篡改
(8/25)
基本结构如下:
私钥+消息=签名- {9 q" s/ S+ R' {
公钥+签名+消息=验证
在 EVM 的上下文中,这些"messages"是交易。因此,数字签名表明拥有私钥的人授权了交易。" `' c- f) u& e1 G, j
(9/25)
有许多不同的签名/密钥对方案;以太坊使用称为 ECDSA (secp256k1) 的方案。
关于这些字母,您唯一需要知道的是:以太坊帐户地址是 ECDSA (secp256k1) 方案(哈希)的最后 20 个字节。/ C$ N* J1 q) m! A
(10/25)
实际是以太坊将 ECDSA (secp256k1) 的逻辑内置到 EVM 自身的核心代码中。$ T1 K0 v' F8 Q, R v L0 `
为了让 EVM 验证某个来自给定地址的签名,它必须通过方案处理所有数据。1 }4 ~$ H! `9 ^! z) s% M
ECDSA (secp256k1) 被硬编码到 EVM 中。
(11/25)
以下是理解账户抽象所需的核心能力:目前,以太坊帐户与密钥对紧密耦合,以至于它们本质上是同一件事。; A- ~' C1 }7 y6 h, p; d2 L6 v3 G
即如果您控制了私钥,那么您就控制了一个帐户。1 ~! C, C7 |* s! z4 f) q; [7 R* T: w
“只有真正控制了自己的私钥,才真正掌握着自己的币。”
(12/25)$ s) v" ^1 p( O, Q7 l
账户抽象会将 EVM 中的实体 (账户) 与移动资产的所有权的实体 (密钥对或签名者) 进行解耦。
诀窍:我们将把所有账户都变成 CA,CA 可以定义自己的有效交易。: }- A8 d8 q4 `! @
(13/25)% W6 b2 x2 H; o, g
只要 CA 支持特定功能 (例如验证签名),它就可以是一个帐户。2 b) A/ X, T( h
我们通过 API 来定义这些特定的功能。实现帐户抽象过程的核心部分将是设计此 API。- ^7 |4 @) B- z8 C1 _. ^' Q! ]8 k, x$ _
(14/25)2 Y3 S6 ^( B% M7 d1 k% x3 i& P
一旦实现,以太坊将立即变得更加可定制、灵活和面向未来。
了解这一点的最佳方式是回到我们今天使用的签名方案 ECDSA (secp256k1)。这个方案非常强大……目前来说。
(15/25)
ECDSA (secp256k1) 的问题在于它不是抗量子计算机破解的。量子计算机可以立即破解它,在这个过程中摧毁以太坊。
量子计算机的功能还不足以成为一个问题,但它们会成为问题。! S7 X3 r7 i# y: _- T2 C
(16/25)
帐户抽象为我们提供了根据需要迁移到不同签名方案所需的灵活性。/ o6 R5 W$ \) K+ ?7 b
即便我们现在使用的签名方案 (ECDSA) 更加强大了,也没有理由要求每个人都使用相同的方案。每个用户都可以自由地使用他们喜欢的任何密码学技术来保护他们的资产。
(17/25)8 T; u4 o1 J% C7 R
但替换签名方案只是一个开始。得到了广泛的讨论是因为受到了即将到来的量子威胁,但帐户抽象开辟了一个全新的设计空间:* `& T+ x# s1 v' S! s/ y; f# o
以太坊的用户体验!
以下是我迄今为止看到的一些更令人兴奋的想法!
(18/25)
欺诈监控6 D+ a2 P4 D! {" l
一个账户可能需要第三方欺诈监控器的第二个签名,这个第三方欺诈监控器检查每笔交易是否存在已知欺诈、满足预定义的安全规则等。' M, {4 w6 u4 b
这个第三方不会控制你的资产,只有交易批准特权。& \7 g9 i+ m& l N! k; ]
(19/25)! M, G) N' a0 n* ?4 ]
批量调用
一个账户可以批处理多笔交易,并通过单个签名/用户输入来执行它们。9 e a; e' O* G% \4 n
@hasufl 说得最好,所以我会在下面留下他的推文。% g! L$ Q0 s$ x6 f
(20/25)
会话密钥$ m9 H# K8 j, k# E5 m
一个帐户可以生成一个密钥并授予它特定的权限/持续时间。然后该帐户可以将该密钥授予半信任空间 (例如浏览器),从而在不暴露整个帐户的情况下改善用户体验。
想象一个不需要持续授权的区块链游戏,体验会是多么棒。
(21/25)( c+ o1 x* ~3 K2 p. l6 R
双因素身份验证
一个帐户可以将一组授权密钥(类似于欺诈监控)授予第三方服务,该第三方服务只会批准使用第二种方法(例如短信或电子邮件)确认的交易。
(22/25)* a% I- s( u5 ^4 Q
硬件集成
这也许最酷的事情?集成到像苹果这样的公司发布的硬件产品中。+ T, @& p% Q' ^! ~, @- @
想象一下,如果您的私钥保存在 iPhone 上的安全区域中……使用 FaceID 批准交易!
(23/25)
归根结底,帐户抽象不仅可以实现更好、更用户友好的以太坊,这也是应对量子计算机生存威胁的最简洁的方式。但是,不幸的是,实施它并不容易。
(24/25)8 z. @$ Q; g, i
好消息是 rollup 提供了一个新的、有趣的机会来从一开始就建立账户抽象。以太坊的开发者们在努力探索的同时,像 @zksync,@StarkWareLtd and @argentHQ 这样的项目已经出现并推动此项技术。3 a7 [/ L$ F: ^* ?; v
(25/25)' ~; L! b3 e" J0 e
所以,亲爱的读者,不要害怕,以太坊社区知道它在做什么!, {; A# l8 t+ L2 ^) c
我不能告诉你帐户抽象什么时候到来,甚至不能告诉你它会是什么样子或者它会在哪里......) k+ B4 i" x7 l2 p
但当它到来时,账户抽象将带领我们向前跃进。
成为第一个吐槽的人