多數人只知道去中心化,卻並不真正理解DApps
作者:冒志鴻
來源:鏈捕手
「去中心化應用」(也被稱為DApps)成為當前區塊鏈行業的熱點,但當你去研究卻發現目前DApps都是各類的菠菜、資金盤。更讓人擔憂的是DApps也許是繼「區塊鏈」之後又一個定義不明,令人費解的詞彙,對它的認識市面上存在了各種誤解。
此次,應鏈捕手(ID:iqklbs)約稿,ArcBlock創始人兼CEO冒志鴻撰寫了本文,他從去中心化與中心化發展的歷史來理解DApps的現狀、破局的關鍵及方法。相信冒志鴻精彩的分享,應該能給你帶來啟發。
01
「中心化」與「去中心化」的此消彼長
計算機軟體應用的過程是一個「中心化 - 去中心化 - 再中心化 - 再去中心化」的演變過程。Internet的誕生,源自美國國防部的研究專案ARPANET,其設計之初考慮如果僅有一個集中的軍事指揮中心,萬一這個中心被蘇聯的核武器摧毀,全國的軍事指揮將處於癱瘓狀態,因此有必要設計一個分散的、共享資料的網路系統。所以Internet將去中心化的思想根植於設計理念之中,很多早期的網際網路協議,包括TCP/IP都是以去中心化思想為基礎來設計的。
隨後逐漸發展出有字元終端,顧名思義就是隻有輸入輸出字元的功能,沒有處理器或硬碟,通過序列介面聯接主機,一切工作都要交給主機來做;後面還伴隨有分時作業系統的出現,也就是多個使用者共享主機中的資源。因為字元終端、分時作業系統等一旦離開主機什麼也不能幹,軟體完全執行在中心化計算機上,這使得我們進入到了中心化時期。
直到個人計算機(PC)時代的降臨,我們才迎來了第一批真正意義的 去中心化 應用。是的,不必驚訝, 我們曾經熟悉的各種PC 「單機版」 軟體某種意義上全是去中心化的應用 。因為網際網路時代最重要的協議是 「 檔案」,有了 「 檔案」這樣的協議,分散在無數個人計算機上的應用也就有了共同的溝通 「 語言」,通過 「 檔案」可以安裝新的應用, 而應用產生的結果也必須通過 「 檔案」來傳播給其它的應用。因此我們又進入到不必依靠一箇中心化主機才能運轉的去中心化時期。
當用 「 檔案」交換這種方式出現侷限、越來越不能滿足需求時, 一種稱為 「 客戶機-伺服器架構(C/S架構)」的網路應用模式開始流行,這出現在前網際網路時代,以企業應用為主,而且這種架構至今仍沒有過時。C/S是從去中心變得更中心化一些的演進,但每個C/S架構的系統,客戶機和伺服器之間基本都講著不同的 「 語言」(協議)。
當瀏覽器流行之後,人們開始意識到,瀏覽器就是一種能理解、更普遍標準 「 語言」(HTML)的通用客戶機,這使得應用可以更加中心化,從而更容易開發、部署、維護 ,於是 「 瀏覽器/伺服器架構(B/S架構)」這樣一個更為中心化傾向的模式又開始流行起來。
往近的來看, 2005年湧現的 「 Web 2.0」運動是桌面網際網路時代離去中心化最接近的一次 。Blog是去中心化的出版和媒體,採用的是RSS這樣一個簡單、開放的協議。當時以個人為節點的社交網路蓬勃興起,FOAF協議、Microformat、OpenID、OAuth等這些都是在那個時代興起的開發標準。
所以 「 協議」是去中心化應用的關鍵 ,網際網路時代最重要的協議是TCP/IP協議族以及構建在其上的更多應用協議,這些開放的協議使得全世界的開發者一起構建了今天的網際網路。
然而不幸的是,當時和後來的行業巨頭Google與Facebook策略性地撲滅了「Web 2.0」這場去中心化運動,反而把網際網路的中心化推向了極致。而中國的巨頭們也建立起壟斷封閉的勢力,助推中心化達到極致。如果說當年的瀏覽器大戰中,微軟利用壟斷地位擊垮了網景是天下皆知的陽謀, 那麼後來以Google和Facebook帶頭絞殺「Web 2.0」則是被完美陽光掩蓋的陰謀,資料可攜帶、去中心化內容與社交死於他們之手,而如今我們卻一直覺得他們創新、開放、貢獻 。
當然,我們必須要承認Google、Facebook貢獻了不少開源的產品,有很多到了區塊鏈時代成了可以被使用的利器。比如Bitcoin用的Level DB是Google的作品,以太坊和ArcBlock採用的RockDB是Facebook的作品。科技的命運有時就是這樣反覆輪迴迭代的過程。
如果說中心化與去中心化是此消彼長的,那它們也是相對的。以比特幣為例,從它的網路拓撲結構來看,比特幣的節點非常多且分散,PoW的 挖礦 機制導致攻擊比特幣需要有超過全網51%的算力,少數節點的崩潰、被關閉、被攻擊,都不會影響整個比特幣網路的安全和正確執行——這說明比特幣網路是去中心化的。
然而從比特幣的軟體開發和發行角度而言,只有Bitcoin Core團隊可以釋出比特幣的新版本程式碼,雖然他們最近公佈瞭如何採用一系列的手段確保程式碼釋出的流程安全可靠,並採用開源的方式實現人人可以參與貢獻,人人可以分叉後修改,但從軟體發行升級角度來看,這仍屬於比較中心化的表現。
從比特幣作為一個應用來看,它被設計為一個 點對點電子現金 ,比特幣的錢包地址是使用者自主產生的,不需要任何人發放和批准,沒有私鑰任何人和組織都無法奪取使用者的比特幣;同時比特幣的轉賬不需要任何第三方的介入,其他任何人和組織無法禁止或篡改交易;比特幣的交易記錄在比特幣的區塊鏈上永久儲存,沒有人能夠篡改、刪除、隱藏。這些足夠說明比特幣就是一個真正去中心化的應用。
而另一個耐人尋味的事實是,正因為大眾認可比特幣網路的高度去中心化,作為一個應用也高度去中心化,最終大家都認可比特幣這個網路服務——全世界只有一個比特幣。 從這個角度來看,比特幣又是高度中心化的 。 這就非常有趣,當一個系統從某個角度高度去中心化後,從另一個角度看可能正是單一表現的去中心化使其更中心化了。 因此任何 中心化 與 去中心化 的劃分與定義都不是絕對的,而是相對的,甚至是不斷演變的、錯綜交織的。
02
當前 「中心化」 與 「去中心化」 的博弈
如今網際網路中心化已似乎發展到極致,那推動中心化到達極致的原因有哪些?
我認為有以下幾個原因:
1) 封閉的中心化賬戶體系 。前兩年 網際網路思維很火,很多 公司都受啟發想辦法先大量獲得使用者,收集使用者的各種資料,再通過廣告或推廣來獲益。這也讓很多公司都排他性地搶佔使用者,想法設法把使用者儘可能地鎖定在自己的平臺當中;
2) 大量地重複造 「輪子」 ,並用這些互不相容的 「輪子」 來形成所謂的 「競爭壁壘」 。這其實嚴重違背了Internet(網際網路)和Web(全球資訊網)最初的精神,但如今這已成了最常見的競爭手段,結果就是我們手機上有10個不同的訊息App、10個不同的銀行App、10個不同的電影App … 而它們的作用其實幾乎是一樣的,只是服務商不同;
3) 無償或極其廉價地佔有本該屬於使用者自己的資料 ,不允許使用者遷移資料或製造各種障礙讓使用者遷移不便,儘可能佔用使用者最多的時間、注意力、頻寬等,以獲得源源不斷的資料;
4) 不遵守協議、不開放協議、或只部分提供協議來製造 「開放」 的假象 。利用「開放」的假象來獲取使用者,用「不開放」的實現來增加使用者遷移難度和成本,把使用者鎖定在自家。
然而,天下大勢分久必合,合久必分,如今去中心化的代表力量——區塊鏈,它帶來的是應用再一次朝去中心化的趨勢發展。當然,就如同我們前面所說去中心化與中心化是相對,區塊鏈也是在網際網路和計算機技術不斷髮展成熟之後才進化而成的,如果沒有近些年網際網路頻寬的飛速成長,計算機效能的飛速提升,區塊鏈不會得以發展壯大起來。
除了技術的發展,還有其他的因素和事件:一次次的使用者隱私資料大洩密帶來的巨大損失, Facebook等大公司對隱私問題的漠視,歐洲GPDR法案的執行等等,這也讓越來越多的人再次意識到去中心化的價值。
DApps和區塊鏈的發展壯大,恰恰可以根治網際網路中心化壟斷的四大痛點:
1)統一的、自主的、去中心化的ID;
2) 大量地重用 「輪子」 ,而不是不斷再造 ;
3)資料完全屬於使用者, 使用者擁有自主權;
4)完整和全面的開放協議、儘可能保持向前相容(不產生無謂的分叉)。
所以,DApps發展的前提,首先是自主個人身份,你的身份、關係、資料、資產...這些是你自己控制而不被其他人控制;其次是點對點的數字資產流動(數字貨幣以及其他)不需要中間人,不需要別人批准;然後還需要資料可遷移,你的資料你做主,允許讓誰用對方才能用。這些重要基礎在區塊鏈出現前實際上是無解的,但突破它們已是計算機技術接下來發展的關鍵。
03
理解DApps的發展
不幸的是, 今天大多數宣稱自己是DApps的應用根本沒任何去中心化的屬性,大部分應用只是利用了區塊鏈智慧合約的一些屬性 。
比如CryptoKitty這樣的遊戲應用, 它只是使用了以太坊ERC721的特性,而整個遊戲的前端、設計都和一個傳統Web遊戲並無太大區別。其最大特色是用以太坊的智慧合約來保證這些貓的唯一性和獨特性。
那些菠菜類遊戲,也是利用的智慧合約讓使用者誤以為遊戲 公開透明,無人能幕後操縱 而參與其中,殊不知相當多的這類遊戲由於程式碼設計或區塊鏈技術不成熟等問題,更易遭受攻擊或被騙取資產,這些遊戲其實比傳統遊戲更不合理公平,甚至更不安全。但我相信未來一定會出現非常成功、可玩性非常強、且充分利用區塊鏈的去中心化遊戲,但絕不是今天這些安全和使用體驗都差得可憐的傢伙們。
那DApps為何目前沒有爆發?其實任何新生事物的 引爆 都少不了經歷漫長而黑暗的前夜,很多人只看到了爆炸增長的階段,往往忽視了爆炸所需勢能的緩慢積蓄過程。
iPhone問世之前,智慧電話的概念已出現超過10年。著名投資人彼得·蒂爾在《從0到1》這本書裡指出一個新產品要能獲得高速增長,必須要比現有的方案好10倍以上。因此應用絕不能為了 去中心化 而 去中心化 , 去中心化應用 的關鍵是找到一個需要解決的問題, 這個問題用 去中心化 的方法來解決比其它方案好N倍,或者因打破規則而獲得 「不公平」 的競爭優勢 。如果能夠回答上面的問題, 那麼恭喜你, 這個 去中心化應用 想不火都很難。
例如,比特幣作為一個點對點的加密貨幣,打破了無數條規則,也解決了一些人切實的痛點,因此比特幣和Paypal等傳統的數字貨幣或支付相比,具有幾乎不公平的競爭優勢。雖然比特幣很慢,用起來很麻煩,但在過去的10年裡還是得到了飛速發展。
因此 去中心化應用 的開發者和產品經理, 應該把注意力首先聚焦在發現問題與解決問題上,然後才是使用者體驗等其它問題,尤其是當前如何才能讓大眾使用者方便地進入這個世界,使用新的產品解決他們原有的痛點。
現在區塊鏈發展僅有10年,DApps所依賴的區塊鏈環境,還非常原始。EOS的確是比以太坊更快了,但這是更好的還是更壞的方案,還沒有公論,而複製模仿以太坊的其它公鏈更需要時間和結果來證明它們究竟能否奏效。
儘管今天的區塊鏈技術還處於嬰幼兒期,尚未產生非常成熟的技術,但ArcBlock以及其他有實力、有信仰、願做實事的團隊正在日以繼夜地努力,儘快讓如今的技術困境變成歷史。
責任編輯:侯利華