SwapSpace – 跨链加密货币兑换

新的 Ethereum 代币标准及其含义

Ruth Kise

,

更新时间:,3分钟

不同的加密货币种类繁多,但其中大多数都建立在相同的方案之上。这些方案被称为代币标准,它们定义了区块链代币的关键功能和属性。

代币标准是一套规范加密货币代币运作的规则和约定。常见的标准包括 ERC-20、BEP-20、ERC-721 和 ERC-1155。

为什么需要标准

一致性:如果每个新代币在智能合约上都规定一种独特机制,那么现有的平台、应用和钱包将根本无法与之兼容。代币标准确保由该标准创建的产品彼此兼容。例如,ERC-20 资产可与使用该代币标准开发的其他产品和服务兼容。正因如此,ERC-20 代币也可以与同一标准的其他代币进行兑换。

此外,如果没有代币标准,存储和交易多种加密货币会困难得多。与其使用一个 钱包 来管理多种不同的加密货币,你将不得不为每个代币分别创建独立的钱包。

互联性:一个互联的系统使开发者能够复用现有组件来创建新产品。代币创建也是如此:标准的使用加快了基础功能的开发,并为进一步创新留出了更多时间。

效率:代币标准还使 智能合约 之间的交互更加容易。实现代币标准的智能合约以及代币本身,都可用于跟踪已创建的代币。

ERC-20 和 BEP-20 等代币标准包含重要功能,包括地址查询和代币余额映射,使智能合约能够更高效地跟踪代币。例如,若要验证转账历史及其他 ERC-20 代币数据,开发者可以使用该合约的应用二进制接口(ABI)。

多样性:客户端软件存在不同标准,使任何人都可以在符合以太坊节点和客户端标准与规范的前提下,用任意编程语言编写自己的以太坊客户端版本。因此,以太坊网络上可以有任意数量的节点和客户端,其中一些运行的是用 Golang、Rust、Java、C#、C++ 或 Python 编写的以太坊软件。这增加了“客户端多样性”,通过减少对单一代码实现的依赖,使网络更强大。但所有这些实现,无论其软件语言、设计或实现细节如何,都有一个共同点——它们都遵循同一套客户端规范。

因此,标准有助于增加实现方案的多样性。这意味着在安全性、速度、可扩展性等方面可能存在不同路径,而这种多样性能丰富整体体验。

新的以太坊代币标准

EIP-4337 更新在与 ETHDenver 相关的 WalletCon 大会上发布,并于 2023 年 3 月 1 日部署到以太坊上。该 EIP 的主要创新是实现了所谓的账户抽象,以及一种新的钱包标准的出现,开发者认为这将提升用户体验,并让与区块链的交互更加便捷。接下来,我们将分析这种钱包是什么、它们与普通钱包有何不同,以及为什么 EIP-4337 是必要的。

什么是合约账户,以及它与普通账户有何不同

为了更好地理解 EIP-4337 的目标及其带来的创新,我们先退一步看。在以太坊网络引入该更新之前,账户有两种类型:

  • 外部拥有账户(EOA):使用基础设施提供商创建的钱包。这是 MetaMask 和其他 99% 开发者提供的主流钱包类型。
  • 合约账户(CA):由 EVM 中的代码管理的钱包,换句话说,就是智能合约。它们不需要基础设施提供商来运行和管理。

EOA 之所以占主导地位,是因为网络本身的架构要求使用 ECDSA 标准来签署交易。智能合约无法使用 ECDSA 对交易进行签名,因此 CA 无法代表自身发起交易。也就是说,对于普通用户而言,它们并不能作为钱包使用。

与此同时,EOA 使用基于私钥和公钥的单体式交易处理逻辑。由于这种单体逻辑,开发者无法自定义其组件,例如身份验证要求。这就是为什么任何区块链应用都需要一个带有私钥和公钥地址的 EOA 钱包来进行交互。

EIP-4337 旨在消除 EOA 的优势,并通过以智能合约形式引入一种新的钱包标准,以及以太坊网络中的新层,使得无需使用私钥和公钥即可进行和验证交易,从而让 CA 更加易用。为此,开发者实现了所谓的账户抽象。我们来更详细地分析这个术语。

什么是账户抽象

“账户抽象”这个概念对初学者来说并不直观,反而会增加理解难度。在信息学中,抽象是将一个过程拆分为几个可以独立执行的部分。简单来说,这一过程变得模块化,并为每个模块的配置提供了可能。

在以太坊钱包的语境中,这意味着将交易验证与执行分离,而这两者现在是作为一个连续过程发生的。因此,合约账户允许你灵活配置每一个流程,从而为优化用户体验打开更多空间。 

此外,账户抽象还意味着账户与其所有者的分离。目前,钱包和用户本质上是一体的,因为只有 助记词 或私钥的拥有者才能发送资产,只有公钥地址的拥有者才能接收资产。抽象化将允许你将一个智能合约作为钱包运行,由 EVM 中的代码来控制,而不是由一组 公钥和私钥 来控制。这扩展了支持的身份验证方式和钱包安全功能。

EIP-4337 合约账户如何运作 

EIP-4337 并不是首次尝试实现账户抽象并在以太坊网络上推出合约账户。Vitalik Buterin 早在 2016 年就首次提出了账户抽象的第一个版本,自那以后,围绕这一问题已经提出了 5 个不同的 EIP(86、1014、2938、3074 和 4337)。不过,真正引入了无需修改以太坊基础协议这一概念的是 EIP-4337,这一点至关重要,因为这意味着采用它不需要网络硬分叉。

EIP-4337 中账户抽象的架构由以下基本要素组成:

UserOperation:也称为伪交易。它类似于使用标准钱包发起的交易,但包含的数据比普通交易更多。

Bundler:从 mempool 中选择 UserOperation 的节点,将其打包并发送到 EntryPoint 进行验证。假设 Bundler 的功能将由当前的以太坊验证者执行,而他们可以获得一部分交易手续费作为额外奖励。

由于 EIP-4337 在以太坊区块链之上创建了一个新的基础设施层,UserOperations 拥有自己的 mempool,与主网络的 mempool 不同。传统验证者无法访问它。

EntryPoint:是以太坊网络上负责验证交易的智能合约。这是整个 EIP-4337 基础设施的关键元素,因此开发者非常重视该智能合约的安全性和审计。EntryPoint 会同时执行多项功能,这些功能可以统称为“交易验证”。

Contract Account:这是由用户拥有的智能钱包。通过 EntryPoint 验证的交易会同时被发送到区块链执行,并发送到 EIP-4337 基础设施中的用户智能钱包。

可选地,还可以部署以下组件:

Paymasters:这些是赞助合约,允许你替发送方支付 交易费用,或者使用任意 ERC-20 代币 支付 gas 费。例如,P2E 可以在其基础设施中部署 Paymasters,这样玩家就无需购买 ETH 来支付 gas。

Aggregators:用户签名聚合器。所谓原子交易由此成为可能,它可以将多个操作合并为一笔交易。在实践中,这让你可以用最少的签名与 dApp 交互。

使用 EIP-4337 智能钱包进行交易的生命周期如下: 

  1. 1. 用户通过钱包应用程序(提供界面的服务)发起 UserOperation,并将其发送到一个特殊的 mempool。
  2. 2. 作为网络验证者运行的 Bundler 从该 mempool 中选择交易并将其打包。
  3. 3. UserOperations 包被发送到 EntryPoint 智能合约。该合约检查交易是否可以执行,以及用户或 Paymaster 是否有足够的 ETH 支付 gas。
  4. 4. 如果所有条件都满足,则交易会被发送到接收方的 Contract Account 和以太坊验证者,以纳入区块链。

EIP-4337 钱包的优势与挑战 

账户抽象总体上的主要目标,以及 EIP-4337 的更新目标,是用智能钱包(CA)取代 EOA 钱包。根据 Vitalik Buterin 和其他专家的说法,这将为开发者提供更多机会来打造高质量的用户体验。尤其是,智能钱包支持:

  • 多种身份验证选项:交易验证逻辑的抽象允许灵活配置用户身份验证方式。可使用可信邮箱、生物识别验证器,或者例如白名单设备。也就是说,任何设备都可以变成某种私钥的替代物。
  • 灵活的费用支付机制:Paymaster 赞助合约允许将支付 gas 的义务从发送方转移到第三方,并创建更复杂的 gas 支付模式(例如使用 ERC-20 代币,或享受折扣)。也就是说,用户现在无需购买 ETH 就能与 dApp 交互,这降低了新手的入门门槛。
  • 高级账户安全设置:除认证方式外,额外的安全设置还可以包括多重签名、每日支出限额,或者例如交易延迟。这有助于即使攻击者获得了账户访问权限,也能保护用户资金。
  • 原子化多操作:上一节提到的 Aggregators 合约负责这项功能。借助它们,你可以忘掉第一次 DEX 兑换、在市场上购买 NFT,或者其他与 dApp 交互时所需的众多签名。

一个重要突破是钱包的社交恢复功能。借助此功能,用户可以通过受信任的钱包列表或电子邮件地址,例如朋友或亲属,来恢复对钱包的访问。

这意味着,为了进入普通的 P2E 游戏而不得不创建钱包、购买 ETH、签署多笔交易,并尽量不要把资产访问权交给 骗局 智能合约的时代已经成为过去。新型功能的钱包将更像 Google 或 Apple ID 账户,而不是 MetaMask 和 Ledger。

总结

代币标准是开发和运行基于区块链代币的特殊方案。目前行业中已经存在多种代币标准,也有许多创新解决方案。其中之一就是 EIP-4337。

EIP-4337 是迈向大规模增长的重要一步,因为新账户带来了更熟悉、更易理解的用户体验。那些连 Twitter 密码都会忘记的人,恐怕不会愿意使用需要记住 12 个单词,并且还要理解公钥和私钥的技术。

分享:

相关文章

想了解更多?

订阅我们的新闻通讯 — 随时了解最新资讯,掌控先机。