隨著以太坊等開放平台的出現,保留和轉移狀態的難度日益降低。由於人們意識到了這兩個新能力背後的巨大潛力,他們已經開始共同呼喚一個更加開放和公平的互聯網,也就是 Web 3.0 了。本文源自於 Coinbase Blog《Understanding Web 3 — A User Controlled Internet》,由專欄作者 以太坊愛好者 編譯、撰寫及整理。
本文包括三個部分,分別介紹了網路步入 3.0 時代(Web 3.0)的緣由、含義和方式。
第一部分解釋了如今產業存在的缺陷和 Web 3.0 的進步之處;第二部分主要介紹了什麼是 Web 3.0 堆棧;第三部分重點講述了開發者的搭建過程。
第一部分:背景
如今的互聯網主要存在兩大缺陷:
- 它不會保留獨立於可信任運營者的「狀態」
- 它沒有一個原生機制來實現狀態轉移
之所以會缺少狀態,是因為 HTTP 和 SMTP 等產業協議過於簡單。
你任何時候都無法查詢到一個節點(即一台聯網設備)的歷史或當前狀態。
從用戶的角度來看,每次使用聯網設備的時候,都像是通過新的瀏覽器第一次使用網路一樣(沒有歷史記錄、收藏夾、保存設置或自動填充用戶名)。想像一下,每當你打開設備使用某個服務或是下載心儀的應用程式之時,你都要重新提交用戶資訊;這就降低了網路的可用性,至少大幅降低了它的效率。
然而,狀態對服務和應用的發展來說都是至關重要的,因為它可以代表價值。
兩大關鍵技術的發展已經彌補了這一缺陷。
- 首先是 cookies 技術。正如 Brendan Eich 強調的那樣,該技術旨在幫助由 JavaScript 語言編寫的產業應用在本地設備上存儲狀態。不過問題在於,cookies 是由服務供應商創建並控制的,而非用戶。用戶無法選擇由哪個供應商來存儲他們的狀態,也無權訪問他們的狀態。
- 其次是將用戶狀態保留在自己機器上的中心化服務供應商。如今的互聯網產業巨頭 Google 和 Facebook 均保留數十億用戶的狀態,也因此創造出了價值;這點從本質上來說無可厚非,畢竟這些公司的用戶也享受到了服務和價值。問題在於互聯網為這些中心化公司帶來的利益多於賦予公眾的。
互聯網的第二大主要缺陷是缺少一個原生機制來實現狀態轉移。
這在一定程度上也是第一個缺陷導致的。如果狀態(及其創造出的價值)無法保留,也就無法轉移。
經濟發展和現代金融的的核心就是實現簡單高效的價值轉移。只要提高了價值轉移的效率,就會帶來很多積極影響。
如今的互聯網已經將資訊轉移效率提高了好幾個數量級,因而為新的業務和服務創造了極大的發展空間。然而,如果企業找不到一種簡單的方法交易價值,就需要另闢蹊徑,從自己提供的服務中獲利。
這就是為什麼多年以來廣告始終是互聯網的商業模式,因為廣告是唯一可以有效存儲並轉移數十億用戶狀態的業務。再強調一遍,廣告從本質上來說無可厚非。不過這裡的問題存在於三個方面:
- 第三方中介會促成每一筆廣告交易並從中獲利;
- 廣告更有利於老牌企業,而不利於新創企業,限制了經濟的發展潛力;
- 廣告業經濟的發展靠的是(餵給廣告模型的)用戶數據的增多,這會造成用戶激勵的扭曲和糟糕的用戶體驗。
延伸閱讀:Web 3.0 專題|去中心化互聯網之路(上)從 Web 2.0 到 Web 3.0
延伸閱讀:Web 3.0 專題|去中心化互聯網之路(下)Web 2.0的風險、以太坊在3.0時代的角色
互聯網發展趨勢
網路本身就是技術發展的產物。它就像是一堆管道,任由人們支配。最後需要由人來決定將這些管道的指向。
多年以來,網路的發展趨勢顯然不會惠及之前未曾受惠的人。在接下來的十年或是二十年,幫助實現以下兩點,會是更好的發展方向:
- 任何參與者都能夠創造原生經濟價值;
- 這種原生價值可以轉移給任何參與者。
感謝中本聰以及前人的學術研究,我們有了區塊鏈技術。現在,產業中的每一位參與者都可以通過數位化的原生格式保留並轉移狀態。在全球範圍內,很多開發人員和企業家都已經開始在這個新的狀態層上進行搭建(也可以說是 #BUIDL )了。
隨著以太坊等開放平台的出現,保留和轉移狀態的難度日益降低。
由於人們意識到了這兩個新能力背後的巨大潛力,他們已經開始共同呼喚一個更加開放和公平的互聯網,也就是 Web 3.0 了。
第二部分:含義
正如第一部分所解釋的那樣,如今的網路是無狀態網路——參與者不能保留自己的狀態,也不能在彼此之間以原生的方式轉移狀態。
由比特幣開創的區塊鏈技術為我們提供了一種方式,能夠以數位化的原生方式保留狀態。
在密碼學貨幣和區塊鏈的生態系統中,這種新的基本能力已經被賦予了 Web 3.0 的稱號。
雖然 Web 3.0 仍處於萌芽階段,我們已經能夠隱約察覺到它的潛能。例如,L4 已經對 Web 3.0 的潛能有了一些真知灼見。
這部分介紹了 Web 3.0 堆棧目前的情況以及未來的發展趨勢:
(Web 3.0 堆棧的模塊框架)
上圖的框架是沿著 y 軸從上到下搭建而成的。顏色代表不同層的模塊之間的兼容程度。例如,從上圖可見,如今的區塊鏈數位商品(Crypto Goods)是黃色模塊,與藍黃模塊的以太坊虛擬機(EVM)是兼容的,但是與綠紅模塊的比特幣腳本(Bitcoin Script )並不兼容。
EVM 與藍色模塊的以太坊區塊鏈是兼容的,但是與綠色模塊的比特幣區塊鏈並不兼容。
未來,這個框架內還可以加入與比特幣腳本兼容的數位商品(不過這在技術上幾乎不可能實現)。
這種模塊式框架對於促進 Web 3.0 的穩健發展來說至關重要,因為這意味著升級其中一層並不需要徹底推翻下面幾層的所有模塊。
還要注意的一點是,雖然每一層的模塊或許在 5 年之內就會發生翻天覆地的改變,這些層本身都在往更加全面的方向發展,旨在囊括構成 Web 3.0 的所有部分。
狀態層
狀態層保存著下面幾層的狀態。
狀態層幾乎都是由相關的區塊鏈基礎設施獨占提供的,任何遵守產業規則的人都可以參與進來。任何成功產業的目標都是成為默認可靠的基礎設施,就像如今的域名服務器供應商一樣。
當產業如預期那樣順利運行之時( 99% 的情況下都是如此),沒人會關心它,一旦出現問題,就會給所有人沉痛的一擊。
狀態層可以是公有層,也可以是私有層/許可層。
可以認為狀態是一個默認的普遍的實情,而創建私有層就像是創建平行宇宙一樣。
公有層和許可層之間也存在技術上的差別,不過這點不在本文的討論範圍內,對於開發者來說將是產品設計上的選擇。
接下來,每一層都建立在上一層的基礎上,並與上一層相兼容。
計算層
軟體是人們向電腦下達指令的媒介。
Web 3.0 的計算層是人們向狀態層下達指令的媒介。不過,並非所有計算層都可以執行一切指令。
例如,比特幣腳本的局限性就很高,基本上只能執行交易指令。而以太坊虛擬機(EVM)是圖靈完備的,因此支持 EVM 的狀態層可以執行任意複雜的計算。
對於應用開發人員(以及區塊鏈開發人員)來說,計算層的選擇至關重要,因為它決定了特定應用可以在哪些區塊鏈上運行。
例如,凡是可以編譯成 EVM 代碼的應用都可以在以太坊區塊鏈上運行,但不能在比特幣區塊鏈上運行。
以太坊基金會正致力於改變以太坊現行的默認計算層,改用另一種基於 WebAssembly(WASM)的 eWASM 技術。其他狀態層項目,如 Dfinity 等,也在計劃兼容 WASM 。
這就意味著,可以編譯成 eWASM 代碼的應用程式從理論上來說是能夠在以太坊區塊鏈、Dfinity 區塊鏈以及其他所有兼容 WASM 的區塊鏈上運行的。
延伸閱讀:乾貨|深入理解 OVM (Optimistic Rollup):兼容 EVM、以太坊Layer 2擴容方案大躍進
組件層
將狀態層和計算層結合起來之後,新型數位貨幣(即可編程貨幣)的價值設計空間會提高 1000 倍。
很多開發者已經對此進行了大量實驗。其中一些實施例擁有巨大的潛力(具體例證見下文),畢竟它們都是構建在特定組件上的完整子經濟體,你應該可以想像得出來。
我在 Coinbase 的同事 Jacob Horne 將這種情況(連同協議層)稱為加密經濟原語(Cryptoeconomic Primitives),並且一頭扎進了屬於加密經濟原語之一的數位商品(Crypto Goods)裡。
組件是搭建在計算層之上的,會重複使用標準化的智能合約模版。
這類模版資源可以在 OpenZeppelin 上獲取。
組件的創建者需要在狀態層上發布新的智能合約。
這些組件包括:
- 原生貨幣:它是所有公鏈必不可少的核心部分。它賦予了參與者向區塊鏈付費換取預期服務的權利,這通常是以交易的方式實現的。例如,比特幣和以太幣。
- 密碼學資產:它是包含一組基本功能及其相關元數據的同質化資產。它降低了貨幣發行的門檻,曾經一度掀起了 ICO 熱潮。除了貨幣之外,股票、債券、所有權等其他類型的資產也都可以實現數位化。最常用的標準是 ERC-20 。
- 數位商品:它是包含一組基本功能和相關元數據的非同質化資產,又稱非同質化代幣(NFT)或數位收藏品。最開始是由一群密碼學龐克發起的,之後被加密貓帶火。收藏品、遊戲資產、訪問權限和藝術等特殊商品也可以實現數位化。最常用的標準是 ERC-721 。
延伸閱讀:專欄觀點|什麼支撐了 NFT 資產價值?鏈上藝術的機會與流動性溢價
- 身份:它是身份資訊的自治容器。該容器本身幾乎不提供有價值的身份資訊。不過,相關方可以聲明自己對容器的關聯。相關方的範圍很廣,包括政府和其他可信方等(例如 Google 和 Coinbase)。主要採用的標準是 ERC-725/ERC-735 和 uPort 提供的一些協議提案。以太坊域名服務(ENS)又是另一種不同類型的身份標識。
- 穩定幣:它是一種具有穩定價值的加密資產,其價值錨定美元之類的價值物。穩定幣是個非常複雜的問題,涉及到不同的理論和實踐方案,例如 TrueUSD, Dai 和 Reserve 。
協議層
你在狀態層上創建了組件之後,總歸要讓這些組件發揮作用。
它們的生命週期需要依靠某些常見的基本函數來維持,因此這些函數正在實現標準化。一方面是因為這些函數需要使用同一種程式語言(故稱為協議層),另一方面是因為產業效應提高了它們的效率。
從根本上來說,這些協議為相關組件創造了健康的市場環境,與現實世界區別不大,只不過成本更低、效率更高。
目前已經出現了各種不同的協議。它們採用智能合約的形式,由協議開發團隊進行部署;每一個想將相關函數運用到組件上的應用都可以調用:
- 交易:一個組件要想獲得價值,就需要具備可交易性。交易協議允許錢包到錢包的資產交易,無需信任任何中間方。要注意分清「中繼者模式」和大多數「去中心化交易所」之間的差別,後者將資產託管在智能合約內。如果交易是通過交易協議達成的,交易資產是不會被託管的。採用交易協議的項目主要有 0x 和 Kyber Network 等等。如果你想查看 0x 協議支持的日交易量,以便獲得更多資訊,可以訪問這個網站。
- 借貸:借貸行為帶來了投資回報,因此提高了資產的流轉率。如果沒有借貸行為,資產的投資回報率可能為零。在標準借貸協議下,一個美國人可以通過手機借錢給一個津巴布韋人。 Dharma 和 ETHLend 是目前最主要的兩大借貸項目。
- 衍生品:衍生品的全球市場是最大的,預計達 1200 萬億美元。構建衍生品協議可以可以為狀態層上的原生組件形成免信任型市場。 dy/dx 和 Market Protocol 是兩大典型的衍生品項目。
延伸閱讀:DeFi 數據|風口上的 AMM DEX:流動性暴漲 300% ,「SUSHI 主廚」吃相難看;
延伸閱讀:取代中心化交易所!一文看懂 Defi 交換協議「Kyber 的淡出與起勢」
可擴展性/傳輸層
區塊鏈在可擴展性上廣受詬病。比特幣區塊鏈每秒交易量是 7 筆,以太坊區塊鏈的每秒交易量是 15 筆。
雖然區塊鏈是否應該做出一些妥協,將每秒交易量增加至上千筆的問題引起了諸多爭議,但是一個不爭的事實是,通過不同的分層實現狀態轉移(也稱為 Layer 2 擴展方案)需要狀態層支持強健的拓撲結構。這些可擴展性方案需要與底層區塊鏈的計算層兼容。
關於如何解決可擴展性問題有很多提議。下面有幾個例子:
- 支付通道:只允許轉移特定的原生貨幣。它是通過附加在狀態層交易上的可驗證簽名來實現的。因為交易中可能產生糾紛,所以需要繳納一筆押金。相關項目包括比特幣的 Lighting Network 、以太坊的 Raiden 和 SpankChain 在以太坊上開發的 Vynos。
- 狀態通道:允許所有狀態的轉移。它是通過在狀態層上的交易添加可驗證簽名實現的。因為交易中可能產生糾紛,所以需要繳納一筆押金。相關項目包括針對 EVM 的 Counterfactual、Celer Network 、Arcadeum 、FunFair 開發的 Fate Channel 和 Connext 。
- 側鏈:允許所有狀態的轉移。它是通過開發兼容主鏈的其他鏈來實現的。側鏈必需能夠與主鏈上的計算層通信。因為交易中可能產生糾紛,所以需要鎖定一筆資金。側鏈可以是中心化或私人管理的基礎設施,例如針對 EVM 的 PoA Network 、Loom Network 和 Plasma Framewok 。要注意的是 Plasma(衍生出了很多不同的項目)的內部系統上附加了一些要求,能夠確保用戶可以將他們的資產安全撤回計算層。
延伸閱讀:以太坊可擴展性挑戰:區塊網路狀態數據 v.s 手續費 Gas
目前我們已經講到第 5 層了,可以看出這個模塊化堆棧是如何在一些底層設計選擇上賦予開發人員自主空間的,例如搭建在哪條鏈上。
假設不久的將來出現了一種可由 eWASM 編譯的穩定幣智能合約,在以太坊區塊鏈上運行,並且兼容狀態通道(也就是說,這種智能合約可以在狀態通道上轉移)。
從理論上來說,上述穩定幣的代碼兼容 EOS 和 Dfinity ,因為二者都使用 WASM 技術。該代碼甚至可以在運行於這些區塊鏈之上的相似狀態通道上進行轉移。
(未完)
📍相關報導📍
深度探討|為什麼 Layer 2 看似成果顯著,卻還是離我們好遙遠?
邁向Web 3.0進化之路!Parity: 程式碼將從以太坊搬到 DAO 上,新概念「OpenEthereum」
讓動區 Telegram 新聞頻道再次強大!!立即加入獲得第一手區塊鏈、加密貨幣新聞報導。
LINE 與 Messenger 不定期為大家服務