智能钱包会导致隐私保护成本的提高,但不会显著降低账户的匿名性。

原文标题:《智能钱包,不止元交易》
撰文:沙漏时间

Kiran Fernando 近来在 一篇文章 中发表了对元交易(Meta Transaction)及智能合约钱包(Contract Wallet or Smart Wallet)的看法。在 Kiran 看来,元交易可以改变以太坊上的付费模式,是大规模应用的重要组件,然而智能钱包的解决方式却会带来巨大的隐私问题。

元交易应当逐渐形成标准,这需要解决三个问题:

  • 如何负担中继者支付的费用;
  • 元交易应在 DApp 或 token 合约,而非钱包合约实现;
  • 应支持交易的批量中继。

智能钱包是否如 Kiran 所说的「言过其实」呢?

智能钱包,不止元交易

智能钱包,不止元交易。智能钱包并不是仅仅为了解决交易手续费的问题而设计的,而是一套包含多种特性的开放体系。以太坊的门槛不只有手续费,对普通人来说,私钥管理可能是更大的问题。

智能钱包可以实现账户恢复 (Argent, MYKEY)、交易金额限制 (Argent, Monolith)、批量交易合并 (MYKEY 多 target) 等多种特性,切实帮助用户解决问题。

隐私,智能钱包做得不差

隐私很重要,没有人会否认一点。但文章对智能钱包的担忧似乎是多余的。

智能钱包账户的匿名性仍然并不会因为从 EOA 变成合约而消失。此外,文章混淆了智能钱包和 ENS,把 ENS 对隐私的潜在影响归因到智能钱包上,这并不客观。

智能钱包也仍然可以使用 Aztec 协议等保护交易隐私的工具,用户也仍然可以使用分层确定性方式来管理多个合约账户。除了创建合约需要成本外,智能钱包并没有带来什么坏处。而这点损失与它带来的便利性相比,是可以忽略的。

谁的用户?谁来付费?

我们都同意元交易的重要性,但一个通用协议是否能解决问题?为什么元交易的实现模块要在 DApp 或 token 合约,而非钱包合约?让我们重新梳理下付费逻辑。

一笔链上交易的费用总要有人最终埋单,在没有 meta-transaction 时,这笔费用由用户支付。meta-transaction 允许他人为用户支付 gas,但支付者和最终埋单者很可能不同。

如果用户是最终埋单者,那么该如何向支付者付费?现实生活给了很多经验,即如果这项服务是长期的,那么预付费制度或账单制度都显然比按次付费摩擦更小,尽管它并没有那么「去中心化」。此时,智能钱包更加合适,因为它是以用户为 中心的。否则用户需要管理数个 DApp 的预付费账户,或依赖一个理想化的 DApp 费用联盟。

如果用户无需最终埋单,那么 DApp 必然可以有稳定的盈利模式,可以补贴 gas 支出。例如去中心化交易所、博彩等应用较为适合。但这和智能钱包支持元交易也并不矛盾。

我不认为元交易在现阶段需要标准化的实现。从智能钱包角度,由于钱包运营方一般也是手续费的支付方,因此无需标准化。而对于 DApp 方来说,这提升了合约的复杂性,加大了风险。

智能,安全不安全?

智能钱包当然不是完美的,但文章却忽略了最重要的一点,即安全性。就在几天前,Kiran 所提到的智能钱包之一 authereum 被爆出重大安全漏洞,攻击者可以构造方法,取得中继合约的权限,这将造成系统的重大风险。好在尚未造成影响。

EOA 账户只依赖密码学的安全性,而智能钱包则对智能合约的安全性有额外的要求。但为了更好地使用区块链,我仍然认为智能钱包是解决用户门槛的重要方法, 对此再多的安全投入也不过分。

总结

元交易帮助没有以太币的用户更好地使用以太坊上的应用。智能钱包不仅实现了元交易,还可以按需实现账户恢复、转账限额等操作。智能钱包会导致隐私保护成本的提高,但不会显著降低账户的匿名性。

来源链接:mp.weixin.qq.com