作者:Chloe,IOSG Ventures

原文: 《IOSG Weekly Brief|Decentralized Web:構建從底層到前端都無需許可的DWeb #143》

本文為IOSG原創內容,僅做行業學習交流之用,不構成任何投資參考。如需引用,請註明來源,轉載請聯繫IOSG團隊獲取授權及轉載須知。

前言

8 月8 日,美國財政部宣布製裁混幣協議Tornado Cash。此次製裁波及了眾多以太坊地址,甚至連Tornado Cash的官網也在劫難逃,被一併封禁。美國政府此次行動引發了加密社區諸多爭議,其中包括了對Web3.0的”去中心化“這一願景的質疑。如果所有加密項目與用戶直接交互的前段網站都能被如此輕易地封禁掉,那麼底層基礎架構的去中心化帶來的“無需許可”、“抗審查”等優點還有多大意義呢?無獨有偶,在Tornado Cash事件發生的兩天之後,去中心化交易平台Curve Finance遭遇域名攻擊,被盜57萬美金。 Curve表示問題主要來自於名稱服務器,黑客將用戶或其交易重定向到了另一個惡意網站,造成了資金的損失。 Web端的脆弱性再次挑動了加密社區的神經。事實上,關於Decentralized Web的討論由來已久。人們暢想一個由相互連接的私人電腦構成的去中心化系統來提供私人的、安全的、抗審查的信息和服務訪問。

那麼現有的Centralized Web的有哪些局限性,Decentralized Web又是如何構建的呢,我們離Dweb還有多遠的距離?本文將為讀者一一介紹。

Cweb

HTTP與Client-server model

在討論Centralized Web之前,我們先簡單了解一下互聯網的交互模型。相信大家對TCP/IP和HTTP協議都有所耳聞,它們都是如今互聯網的應用廣泛基礎協議,和我們的生活息息相關。 TCP/IP是傳輸層協議,它負責打包數據並尋址,將數據從一台計算機傳輸到另一台。而HTTP是搭載在TCP/IP上的應用層協議,它規定了每段數據以什麼樣的格式表達才能被另一台計算機所理解。 HTTP下的計算機有不同的角色,主要分為兩種:服務器和客戶端。在Internet中提供服務的主機叫做服務器,比如各大門戶網站,社交平台等;通過訪問服務器從而獲得有用信息的主機叫做客戶端,比如各種家庭計算機和智能手機。

Web的範式演進:從底層到前端都去中心化的Decentralized Web

如今絕大部分的中心化網頁都採用了這種服務器-客戶端的主從架構。比如當我們想要在coinmarketcap上查詢幣價時,我們的電腦和網頁瀏覽器就是客戶端,coinmarketcap的電腦、數據庫和應用程序就是服務器。

當我們的瀏覽器向coinmarketcap請求訪問時,coinmarketcap的服務器將從數據庫裡找出網頁信息,結合成一個網頁,最後返回到我們的瀏覽器上。可以看出,這套主從架構是高度依賴於服務器的,服務器需要負責主要的數據處理,並存儲用戶的訪問數據和用戶信息。這種結構的優勢很直接,能夠做到簡單快速的部署且維護成本低,因此被廣泛引用,對與互聯網今天的繁榮居功至偉。但是它的缺陷也十分明顯,出現單點故障或單點攻擊的概率高,安全性相對較低。

Web的範式演進:從底層到前端都去中心化的Decentralized Web

域名與DNS

前文提到,互聯網建立在TCP/IP協議之上,因此我們需要通過IP地址來進行服務器的尋址。而IPv4地址是一個32位的二進制數,通常被分割為4個8位二進制數。比如coinmarketcap網頁的IP地址是108.160.165.139,我們需要通過此IP地址對服務器發送請求。然而這一串數字太過難記,如果要記下所有我們經常訪問的網頁的IP地址,難度不亞於背下一整本通訊錄。因此,域名(Domain Name)的概念應運而生。域名為互聯網上任何可用的網頁服務器提供了方便人類理解的地址。正如我們記不住朋友的電話號碼,但不會忘記朋友的名字。有了域名之後,我們訪問coinmarketcap就不需要輸入IP地址,而是直接在瀏覽器輸入coinmarketcap.com即可。

因此,DNS(Domain Name Service)就如同一本通訊錄查詢器,主要作用就是將主機域名轉換為ip地址。當人們想要建立自己的網站時,往往做的第一件事就是購買一個域名,才能讓別的計算機更容易聯繫上你。看到這很多讀者可能會好奇,域名聽起來像是一個public good而不是商品,那當我們購買域名時付的錢是給了誰呢?在回答這個問題之前,我們可以先了解一下域名背後的管理機構。負責管理域名系統運作的機構叫做ICANN,它是全世界域名的最高管理機構。 ICANN會把不同後綴交給不同地區、國家、運營商去運營維護。

比如cn後綴交給了CNNIC,com後綴給了Verisign,mo的運營所屬權歸澳門註冊局所有。後綴一般根據運營商的成本加合理利潤定價,各地的後綴比如cn、jp和hk等都是各地區自行定價。而用戶購買域名所交的費用,一部分給了ICANN,另一部分則是交給了服務商。 ICANN總部在美國加州,原來是隸屬於美國商務部的一個非盈利機構。所以美國政府控制了全世界的域名這一說法並不是毫無根據。 2016年,美國政府宣布ICANN不再隸屬於商務部,而是成為一個自我管理的獨立機構。但顯而易見的是,美國政府依然對它有著絕對的影響力。這就回到了文章開始的話題,美國政府為什麼可以封禁Tornadao Cash的官網,最簡單的方式就是對域名進行封鎖,讓普通人無法通過域名訪問網站。而攻擊Curve的黑客也是對域名進行了篡改,將訪問者引導到惡意的網站上。

Dweb

可以總結出,Centralized Web的中心化一定程度體現在HTTP下Client-Server主從結構上,也同樣體現在域名的中心化管理上。當然Centralized Web的中心化還有很多層面的因素造成,本文將著重討論傳輸協議和域名兩個方面。在Web3.0,我們已經看到了這兩個問題的一些解決方案——IPFS和去中心化域名。

IPFS versus HTTP

IPFS誕生於斯坦福大學計算機碩士Juan Benet創立的協議實驗室Protocol Labs——一個專注於網絡協議研究、開發和部署的實驗室。與HTTP類似,IPFS也是基於TCP/IP的應用協議。與HTTP不同的是,IPFS是一個基於內容而非地址的p2p協議。

那麼上述差異在我們使用時有什麼影響呢?前文提到,HTTP的工作原理是將內容與IP地址進行映射,IP地址指向特定地點的服務器,服務器裡面有訪問者需要的資源。比如我們要在YouTube上播放一個視頻,我們的瀏覽器會在谷歌的眾多服務器中找到該視頻所存儲的位置,並將視頻一路返還給我們。為了加快這個返還的進程,我們還建立了CDN(內容交付網絡),可以將服務器“帶到”離你物理距離更近的地方。但CDN也有地域的局限性,在基建相對落後的發展中國家作用有限。

試想一下,有100個學生坐在教室裡同時觀看此YouTube視頻,每個學生的客戶端都向YouTube服務器發送請求,上述過程需要被重複一百次。會造成大量的擁堵和資源的浪費。那麼IPFS是如何解決這個問題的呢? IPFS的“地址”實際上是根據內容生成的hash,當學生要看視頻時,學生的電腦不是查詢某個中心化服務器的IP地址,而是在整個P2P網絡中根據內容檢索。如果教室裡有學生的電腦上存儲了這個視頻,他們將從彼此那裡獲取,確保了這些數據來自於最近的來源。

Web的範式演進:從底層到前端都去中心化的Decentralized Web

圖片來源:https://blog.csdn.net/shuoyue0723/article/details/119042236

可以看出,IPFS是建立在P2P網絡上的內容傳輸協議,在這個網絡中不存在服務器和客戶端的層級劃分,每一個節點即是客戶端,又是服務器。顯而易見,IPFS有著很多“去中心化”帶來的優勢。首先,IPFS避免了單點失敗的問題,增強了網絡的可擴展性和靈活性。同時擁有更高的性能,用戶的請求能夠更快被處理。那為何擁有眾多優勢的IPFS還沒有被大規模應用呢?這是P2P網絡面臨的共同問題,即運營和維護的成本極高。比如筆者的節點出現了問題,但筆者並沒有能力去解決。其次是協調的問題,P2P網絡中的節點都是獨立行動的,並不互相溝通,難以實現集體協作的任務。因此綜合考慮成本/效益,IPFS不一定能讓所有組織結構都受益。

Decentralized Domain Name Service

Web的範式演進:從底層到前端都去中心化的Decentralized Web

相比於IP地址,用來內容檢索的哈希更為複雜,因此我們也需要一個去中心化的DNS來將哈希翻譯成為人類容易理解記憶的名字。這裡的去中心化如何理解呢?我們同樣先來了解一下現有DNS是如何中心化運作的。目前DNS按照樹狀結構運作,擁有最高權限的Root DNS servers全球只有13個。當這個階級結構的頂層DNS服務器癱瘓時,隸屬於此個服務器的子服務器也會隨之停擺,造成網絡的大規模癱瘓。

在此背景之下,去中心化域名的概念被提出,而基於區塊鏈的DNS是目前最有希望的解決方案。結合前文提到的DNS背後的組織形式和服務器的架構。我可針對去中心化域名提出兩點要求:1. 去中心化域名的所有權/註冊權/使用權等不應該被某個中心化勢力所控制。 2. 去中心化域名的運作不應該依賴於幾個中心化的服務器,而是在區塊鏈上去中心化運作。

Web的範式演進:從底層到前端都去中心化的Decentralized Web

儘管去中心化域名服務還處於早期階段,我們已經看到了數個項目在朝著這個目標建設。比如Namecoin是第一批項目之一,早在2011年就被發布,但沒有看到廣泛的採用。 Handshake是另一個有趣的項目,它的定位是“去中心化的域名命名和頒布機構”。現階段最有聲量的兩個項目應該是Unstoppable Domains和ENS。他們的去中心化域名已經有了很高的銷量,但還未大量投入使用(這裡主要指與IPFS的CID進行映射),主要是作為像徵DID的NFT存在錢包裡。

Web的範式演進:從底層到前端都去中心化的Decentralized Web

結語

技術本身是中性的,但一項技術的發明隱含了人類對於美好未來的構想和願景。 Dweb擁有著抗審查等特點,中心化勢力很難通過封禁IP地址或域名的方式來剝奪他人在互聯網上存在和表達的權利。對於此筆者還有兩個思考:基礎設施本身不存在價值取向,因此抗審查是一個特點而不是一個優點,如何運用Dweb抗審查的特性決定了這項技術帶來的究竟是進步還是災難。血腥、暴力等極端內容不能被很好地控制勢必會引起倫理道德的衝突。

其次,我們離Dweb的成熟還有很長的距離,文中提到的維護和協作成本並未得到解決,IPFS不一定能夠成為Dweb的基礎協議。去中心化域名雖然已經有了市場,但底層的域名服務系統還沒有被建立。同時,WordPress這樣的網頁開發工具的缺失讓建立Dweb十分困難。儘管如此,IOSG還是對Dweb的未來充滿了希冀。