Vitalik談以太坊提升普及度所需的三個轉變:L2 擴容、錢包安全性及隱私性

Perry
分享
Vitalik談以太坊提升普及度所需的三個轉變:L2 擴容、錢包安全性及隱私性

以太坊創辦人 Vitalik Buterin 在近期發表的文章「The Three Transitions」中,談及了以太坊未來若想變得更加普及,所需要進行的三個轉變。分別與 L2 擴容、錢包安全性及隱私性有關。

(本篇為鏈新聞的翻譯及重點整理,如有疑義請以原文為主。)

以太坊要變得更加普及所需的三個技術轉變

在文章開頭,Vitalik 開宗明義地表示,當以太坊從一個年輕的實驗性技術轉變為一個成熟的技術堆疊,能夠為普通用戶帶來開放、全球和無需許可的體驗時,有三個主要的技術轉變需要同步進行:

廣告 - 內文未完請往下捲動
  1. L2 擴容轉變:所有人遷移至 rollups
  2. 錢包安全性轉變:所有人轉為使用智能合約錢包
  3. 隱私性轉變:確保隱私保護的資金是可轉移,且其他正在開發的工具 (社交恢復、身份、聲譽) 也都是隱私保護的。
生態系的轉型三角,三個必須同時達成。

若 L2 擴容無法達成,以太坊會因過高的交易成本走向失敗;若錢包安全性無法提升,則用戶便不會願意於鏈上儲存資金;若隱私性無法增加,對許多用戶來說,將所有交易都公開給任何人看在隱私上會是過高的犧牲。

Vitalik 認為,只要上述有一個轉變沒辦法達成,都會使用戶轉而尋找中心化的解決方案。

三項轉變將劇烈改變用戶與地址間的關係

在 L2 擴容的生態中,用戶的資產存在於許多不同的 L2 上。

Vitalik 以自己的 Brave 錢包為例,他的 ETH 便存在於四個不同地方,包含以太坊主網、Arbitrum、Arbitrum Nova 及 Optimism。而 Vitalik 認為,這種情況只會越趨複雜,尤其是在使用智能合約錢包後。

之所以使用智能合約錢包後會更加複雜,是因為要在 L1 和各種 L2 之間使用相同的地址會變得更加困難。

目前,大多數用戶是使用外部擁有的帳戶,其地址實際上是用於驗證簽名的公鑰的哈希值,因此在 L1 和 L2 之間沒有改變。然而,使用智能合約錢包時,要完美實現在不同區塊鏈網路間將地址設計成有等效哈希值的程式碼並不容易。

另外,提高隱私性也會進一步提升複雜度,倘若隱藏地址方案得到廣泛採用,用戶的每筆交易都可能會產生一個地址,而不是每個用戶僅有幾個地址或每個 L2 一個地址。

正如 Vitalik 所提出的問題,這些轉變正改變「一個用戶僅有一個地址」的心理假設,其中一些影響更增加了轉變的複雜度,而以下兩點是 Vitalik 認為較為複雜的問題:

  1. 如果你想向某人付款,該如何獲取支付訊息?
  2. 如果用戶在不同的鏈上的不同地方儲存了許多資產,他們如何進行密鑰更改及社交恢復?

三種轉變及鏈上支付與身份

Vitalik 提出了一個與支付有關的問題,當用戶在 Scroll 上有資產,並想要用其進行支付時,賣家僅接受另一條 L2 Taiko 的資產,這時該怎麼辦?

基本上有兩個解決方法:

  1. 接收方的錢包盡力支援更多的 L2,並具備一些跨鏈資金整合的功能。
  2. 接收方提供自己的地址,發送方透過跨鏈橋將資產轉移至目標的 L2。

以上僅是在三個轉變中會面臨的其中一個挑戰,然而光支付這個最簡單的問題便需要更多的工具整合,而不單單僅是一個地址就可以完成。

儘管如此,Vitalik 認為智能合約錢包的轉變對地址系統來說並不是一個巨大的負擔,但 APP 方面需要解需要解決一些技術問題,像是確保錢包接收方不僅追蹤來自外部錢包的轉帳、交易發送的 Gas 數量需要調整等。

另一方面,隱私方面的問題還沒有真正被解決,一旦能夠進行內部轉帳,用戶就需要使用隱私系統的內部地址方案。在實際運作中,用戶的「支付訊息」將包含以下兩部分:

  1. 某種「支出公鑰」(Spend key) 
  2. 發送方可以發送僅接收方能夠解密的加密訊息,以幫助接收方發現支付

隱身地址協議建立在元地址 (meta-addresses) 的概念上,運作方式為:元地址的一部分是發送方支出密鑰的一個蒙蔽版本,另一部分是發送方的加密密鑰。

Vitalik 表示,在一個注重隱私的生態統中,用戶將擁有支出公鑰和加密公鑰,用戶的「支付訊息」將必須包含這兩種密鑰。

三種轉變及密鑰恢復

在用戶有多個地址的情況下,進行密鑰更改及社交恢復的預設方法是讓使用者分別在每個地址上進行恢復流程。這可以透過一次點擊完成:只要錢包軟體能同時在使用者的所有地址上執行恢復流程。

然而,即使有了這樣的 UX 簡化,Vitalik 認為單純的多地址恢復仍存在三個問題:

  1. Gas 費用的成本不切實際:這點不言自明。
  2. 虛擬地址 (counterfactual address):即為尚未發布智能合約的地址 (意味著尚未從該帳戶發送過資金)。作為用戶,可能擁有無限多的虛擬地址:包括每個 L2 上的一個或多個地址,另外,隱身地址方案也會產生出更多數量的地址。
  3. 隱私:如果用戶有意擁有多個地址並避免使他們相互具有關聯性,那用戶絕對不會希望在一鍵恢復的同時公開將地址們串連起來。

為了解決上述問題,Vitalik 提出了一個解決方案:一種將驗證邏輯及資產持有分離的架構。

每位用戶都有一個密鑰儲存合約 (keystore contract),該合約可以存在於主網或特定的 L2。當使用者在不同的 L2 上擁有地址時,每個地址的驗證邏輯是指向密鑰儲存合約的指針。

然而,若想避免每筆交易都產生一個證明,可以選擇一個更簡易的方案,也就是只需要在恢復時做一個跨 L2 的證明。

從一個帳戶中進行支出將取決於一個支出密鑰,其對應的公鑰儲存在該帳戶中。但恢復則需要一筆交易來將當前的支出公鑰複製到密鑰儲存合約中。

即使舊密鑰存在風險,虛擬地址中的資金也是安全的:將虛擬地址「啟用」以將其轉化為可運行的合約需要進行一個跨 L2 的證明,以複製當前的支出公鑰。

錢包需要保護資產及數據

如今,錢包的業務是保護資產。一切都存在於區塊鏈上,錢包需要保護的唯一事物就是目前保護著這些資產的私鑰。如果用戶更改了私鑰,可以安全地在隔天將先前的私鑰公開在網路上。

然而,在 ZK 的世界中,這不再成立:錢包不僅僅保護身份驗證憑證,還保管著用戶的數據。

Vitalik 舉了一個基於 ZK-SNARK 的身份系統 Zupass 為例,用戶擁有一個私鑰用於驗證進入系統,並用來進行基本的證明。另外,Zupass 系統也包含其他的應用,其中最重要的便是 Stamps (Zupass 版本的 POAP)。

Vitalik 的其中一個 Stamps,用來證明他是貓派的一員。

相較於 POAP,Stamps 的一個重要特點是隱私性,用戶在本機保存數據,只有在希望某人獲得關於用戶自身的訊息時,才會對 Stamps 進行 ZK 證明。但這也帶來了風險:如果用戶丟失了這些訊息,便會失去 Stamps。

Vitalik 表示,Zupass 的解決方法是鼓勵人們在多個設備上儲存他們的密鑰 (例如筆記本電腦和手機),因為他們同時失去所有設備的機會非常小。

回到身份問題

最後,Vitalik 談了關於這些轉變的共同特點,未來,區塊鏈上用來代表用戶的「地址」的概念將發生根本性的變化。「如何與用戶互動」將不再只是一個 ETH 地址,而是以某種形式,結合了多個 L2 上的多個地址、隱身的元地址、加密私鑰和其他數據。

其中一種方法是將 ENS 作為你的身份,ENS 可以包含所有這些訊息,如果你向某人發送 bob.eth,他們可以搜尋並瞭解如何支付和及與 Bob 互動的所有資訊,甚至包含更複雜的跨領域和保護隱私的方式。

然而,使用 ENS 有兩點缺陷,一是他會將太多的東西綁定於 ENS 上,二是無法擁有無需信任的虛擬域名 (counterfactual names),因為這會造成無法向尚未互動過的用戶發送資產。

對此,Vitalik 提出了兩個可能的解決方法:

  1. 將更多的資訊儲存在前文提到的密鑰儲存合約 (keystore contract) 中,用戶可使用其作為主要的識別方式。不過,用戶實際接收的資產將儲存在各種不同的地方。
  2. 完全放棄面向用戶的地址,可以使用類似於比特幣的支付協議,更多地依賴發送方和接收方之間的直接通訊方式。例如,發送方可以發送一個取款連結(URL 或 QR Code),接收方可以使用該連接以他們希望的方式接受付款。

而在所有的設計中,Vitalik 認為保持去中心化並讓用戶理解是至關重要的,以避免隨著支付基礎設施的複雜程度上升變成一個不透明的「抽象之塔」

「儘管面臨挑戰,實現可擴展性、錢包安全性和一般用戶的隱私對於以太坊的未來至關重要。這不僅僅是技術可行性的問題,而是實際上對一般用戶的可使用性的問題。我們需要迎接這一挑戰。」Vitalik 說道。