注:本文最初於2014 年4 月17 日發佈在gavofyork(Gavin Wood)的博客「Insights into a Modern World」上,那時Gavin 還在擔任以太坊的聯合創始人和CTO,也還沒有創立Polkadot。在這篇博客中,Gavin 全面地解釋了他心中的Web3.0 時代應該是什麼樣的,以及構成Web3.0 的四個組件。

這篇年代久遠的文章傳達了Gavin 在當時的思想,而現在他正領導著Polkadot 一步步地將這些思想變為現實。

隨著我們邁向未來,我們發現對零信任交互系統的需求日益增長。早在斯諾登事件之前,我們就意識到將信息委託給互聯網上的任意實體充滿了危險。然而,在斯諾登事件之後,這種觀點顯然又落入了另一些人的手中,這些人認為大型組織和政府經常試圖擴大和超越自己的權力。因此,我們意識到,將信息委託給組織,通常是一個從根本上就已經殘破不堪的模式。這些組織不亂用我們的數據,僅僅是因為那樣做的努力超過了預期收益而已。鑑於他們喜歡採用的模型要求他們盡可能多地掌握人們的數據,因此現實主義者會意識到,改變信息濫用情況的困難程度是難以估量的。

Web 上的協議和技術,甚至因特網上的協議和技術,都充當了一個偉大的技術預覽,SMTP、FTP、HTTP(S)、PHP、HTML、Javascript 這些主要工具都為我們今天看到的基於雲的應用程序做出了貢獻,例如Google Drive、Facebook 和Twitter,更不用說其他無數的應用程序,如游戲、購物、銀行業務和約會軟件等。然而在未來,許多這些協議和技術,將不得不根據我們對社會和技術之間相互作用的新理解而重新設計。

Web 3.0 或可以稱為“後斯諾登” 時代的Web,它是對我們已經使用過Web 的各種事物的重新構想,但是在各方之間的交互模型上有根本的不同。對於我們認為可以公開的信息,我們發佈出來。對於我們認為已達成共識的信息,會放在共識賬本中。對於我們認為是私人的信息,我們會保密並且永遠不會洩露。通信始終通過加密的渠道進行,並且僅以匿名身份作為端點。永遠不要帶有任何可追溯的內容(例如IP 地址)。簡而言之,由於我們無法合理地信任任何ZF 或組織,因此我們設計該系統以數學方式執行我們先前的假設。

後斯諾登時代的Web 包含四個組件:靜態內容髮布、動態消息、去信任交易和集成的用戶界面。

首先,我們已經擁有很多東西:去中心化的、加密的信息發布系統。

所有這些操作都是使用一些信息的簡短固有地址(技術一點的說法就是哈希),並在一段時間後返回信息本身。你可以向其提交新信息。一旦下載,由於地址是固有的,我們可以保證它是正確的信息。這個靜態發布系統負責HTTP(S) 的大部分工作以及FTP 的所有工作。這項技術已經有很多實現,但是最信手拈來的例子是Bit Torrent。每次單擊Bit Torrent 的磁力鏈接時,你真正要做的就是告訴你的客戶端下載固有地址(哈希)等於該值的數據。

在Web 3.0 中,該技術的這一部分用於發布和下載我們樂意共享的任何(可能很大的)靜態信息。就像使用Bit Torrent 一樣,我們能夠激勵其他人維護和共享此信息,但是與Web 3.0 的其他部分結合使用,我們可以使此過程更加高效和精確。由於激勵框架是協議固有的,因此我們在設計上無論如何都(在此級別上)實現了DDoS 防護。這個福利是不是還不錯?

Web 3.0 的第二部分是基於身份的匿名底層消息傳遞系統。

用來實現網絡上人與人之間的通信。它使用強加密技術,以確保對消息提供足夠的保證。可以使用某個身份的公鑰對它們進行加密,以確保只有該身份可以對其進行解碼。可以用發送者的私鑰對其進行簽名,以確保它確實來自發送者,並為接收者提供安全的通信接收證明。共享機密可以提供安全通信的機會,包括在群組之間進行通信,而無需提供接收證明。

由於它們中的每一個都提供了最終的消息物流,因此無需使用傳輸協議級別的地址。曾經的用戶或端口與IP 地址,現在都一起變成了哈希值。

消息將具有存活時間,從而可以盡可能地消除“活躍” 狀態的發布消息,和希望在網絡中盡快傳輸的即時信令消息之間的歧義。因此需要在延遲和壽命這兩者之間權衡。

實際的物理路由將通過採用博弈論的自適應網絡系統進行。每個對等方試圖斷言其他對等方傳入信息很有價值,從而使它們對其他對等方的價值最大化。信息無價值的對等方將斷開連接,並通過與其他某些可能不知名(或可能是二級)的對等方的連接來佔用其位置。為了使對等方更有用,將請求具有某些特定屬性的消息,例如以特定位字符串開頭的發件人地址或主題(均為未加密)。

在Web 3.0 中,此部分允許對等方實時通信、更新和自組織,發布優先級不需要本質上受信任或以後引用的信息。在傳統的Web 中,這部分就是AJAX 樣式實現中通過HTTP 傳輸的大量信息。

Web 3.0 的第三部分是共識引擎。

比特幣向我們許多人介紹了基於共識的應用程序的思想。但是,這僅僅是第一步。共識引擎是一種協議,用於約定某些交互規則,因為知道將來的交互(或缺少交互)將自動且不可撤銷地導致嚴格按照規定執行。它實際上是一個包羅萬象的社會合同,並從共識的網絡效應中汲取了力量。

在所有其他協議中都可能感覺到背叛一項協議的後果,這一事實對於建立牢固的社會契約,並從而減少背叛或故意的無知的改變至關重要。例如,聲譽系統與個人社交交互系統越隔離,該聲譽系統的效果就越差。由於用戶將自己的內在價值置於朋友、合作夥伴或同事對他們的看法上,因此與Facebook 或Twitter 之類的功能相結合的信譽系統將比沒有該功能的系統更好。一個特別戳心的例子是這個難題:是否以及何時在Facebook 上和雇主或約會夥伴互加好友。

共識引擎將用於所有可信任的發布和信息更改。這將通過一個完全通用的全球交易處理系統來實現,第一個可行的例子是以太坊項目。

傳統的Web 不能從根本上解決共識,而只能依靠ICANN、Verisign 和Facebook 等權威機構的中心化信任,而將私有網站和政府網站以及構建它們的軟件簡化。

Web 3.0 體驗的第四個也是最後一個組件,是將所有這些結合在一起的技術—— “瀏覽器” 和用戶界面。

有趣的是,這看起來與我們已經知道並喜歡的瀏覽器界面非常相似。它會有URI 欄、後退按鈕,當然,最主要的部分將分配給DApp(網頁/網站)的顯示。

使用這種基於共識的名稱解析系統(與應用程序中的NameCoin 不同),可以將URI 縮減為該應用程序前端的唯一地址(即哈希)。通過信息發布系統,可以將其擴展為前端所需的文件集合(例如,包含.html、.js、.css 和.jpg 文件的檔案)。這是DApp(-let)的靜態部分。

它不包含動態內容;而是通過其他通訊渠道提供服務。為了收集和提交動態的但公開可用的內容,這些內容必須絕對確定其出處,並且必須永久保留(如“固定不變”),例如信譽、餘額等,因此有一個基於Javascript 的API 可以與它的共識引擎進行交互。為了收集和提交動態的、可能是私有的內容,這些內容必定是易變的,並且容易遭受毀滅或缺乏可用性,因此使用了p2p 消息引擎。

這會帶來一些表面上的區別;我們將看到與傳統的客戶端服務器URL 模式類似的地址,例如“https://address/path”,會開始變為新形式的地址,例如“goldcoin”和“uk.gov”。名稱解析將通過基於共識引擎的合約進行,並且可以由用戶輕鬆地重定向或擴充。句點將允許多個級別的名稱解析,例如“ uk.gov” 可能會將“gov” 子名稱傳遞到“uk” 給定的名稱解析器中。

由於信息的不斷流動的性質,通過共識後端的更新和對等網絡的維護,瀏覽器可以自動地不經意間獲得信息,因此我們將看到後台DApp 或小型應用程序在我們的Web3.0 體驗中扮演著重要的角色。通過始終可見的Mac OS Dock 之類的動態圖標信息圖或儀表板風格的動態小程序,我們將不時地更新我們關心的內容。

在初始同步過程之後,頁面加載時間將減少為零,因為預先下載了靜態數據並,而且動態數據(通過共識引擎或p2p 消息引擎提供)也保持最新狀態。在進行同步時,儘管顯示的實際信息可能已過時(儘管這種情況不容易發生,並且可進行註釋),但用戶體驗將非常可靠。

作為Web 3.0 的用戶,所有交互都將以匿名的方式安全、可靠地執行,並且許多服務是去信任的。而對於那些需要第三方的情況,該工具會讓用戶和應用開發者能將信任分散到多個不同的、可能相互競爭的實體上,從而極大地減少了單個實體掌握的信任量。

通過將API 與前端和後端分離,我們將看到利用不同前端解決方案的附加功能,從而能夠提供出色的用戶體驗。例如,Qt 的QtQuick 和QML 技術可以替代傳統Web 技術的HTML / CSS 組合,並以最小的語法成本和高效的響應編程範例,提供本機界面和豐富的加速圖形。

這種轉變將逐步發生,在Web 2.0 上,我們將越來越多地看到網站的後端使用類似Web 3.0 的組件,例如比特幣、BitTorrent、NameCoin。這種趨勢將持續下去,真正的Web-3.0 平台以太坊很可能會被希望為其內容提供交易證據的網站所使用,例如投票網站和交易所。當然,系統的安全性僅取決於最弱的一環,因此最終此類站點將自己過渡到Web 3.0 瀏覽器,該Web 3.0 瀏覽器可以提供端到端的安全性和去信任的交互。

對安全的社交操作系統Web 3.0 說“你好” 吧。

原文:https://gavwood.com/dappsweb3.html

翻譯:PolkaWorld 社區