智能錢包會導致隱私保護成本的提高,但不會顯著降低賬戶的匿名性。

原文標題:《智能錢包,不止元交易》
撰文:沙漏時間

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 賬戶只依賴密碼學的安全性,而智能錢包則對智能合約的安全性有額外的要求。但爲了更好地使用區塊鏈,我仍然認爲智能錢包是解決用戶門檻的重要方法, 對此再多的安全投入也不過分。

總結

元交易幫助沒有以太幣的用戶更好地使用以太坊上的應用。智能錢包不僅實現了元交易,還可以按需實現賬戶恢復、轉賬限額等操作。智能錢包會導致隱私保護成本的提高,但不會顯著降低賬戶的匿名性。