鏈內參:ArcBlock 直面區塊鏈五大痛點,給區塊鏈一個切實可行的未來

作者: 內參君
媒體: 鏈內參
日期: 2018 年 2 月 18 日
內參君與 ArcBlock 的緣分可謂不淺,短短一個月內便有三次結緣。
ArcBlock 第一次走進內參君的視野,是因為今年年初丁磊投資了 ArcBlock,並成為 ArcBlock 的顧問。
第二次知道 ArcBlock,是在一場探討區塊鏈技術的小型沙龍上。當時幾位極客發燒友極力推崇 ArcBlock 的技術,尤其對 ArcBlock 創辦人冒志鴻的背景更是讚許有加。當時得知他曾與丁磊暢談,和馬化騰吃過串燒,是全球資訊網聯盟 W3C 的特邀專家,多次創業且次次都能趕上風口,是位技術大牛。
這不禁引起了內參君的關注,原因有二:一是現在是白皮書滿天飛的時代,大家都在談區塊鏈的應用,而此時能有人踏踏實實地將創業專案放在技術革新上,不由得讓人高看一眼。二是相當好奇,這樣一位極具極客精神的人做出來的產品會是什麼樣子?

帶著好奇心,內參君打開了 ArcBlock 的白皮書。對一個技術小白來說,看得真叫人頭昏眼花!但在這份白皮書中,內參君看到了滿滿的誠意。冒志鴻在建構「區塊基石」(ArcBlock)時,直面目前區塊鏈技術的五大「軟肋」,並以解決這些痛點為目標,設計出適合區塊鏈發展的「區塊基石」(ArcBlock)。
ArcBlock 第三次受到內參君關注,是因為最近的一則新聞。ArcBlock 僅用了 19 分鐘便圓滿完成公開銷售,總共募集來自 170 個國家的 12,500 ETH 加 6,000,000 CMT,公開銷售的火爆程度領先全球!這在業界絕對算是一個不小的奇蹟。

ArcBlock 創辦人兼執行長冒志鴻(Robert Mao)向全球支持者發表感謝詞時說:「我們的 Token Sale 過程充分體現了 ArcBlock 的去中心化理想和極客精神,我們會在日後慢慢分享這些理念和故事。我們要用行動來區別於那些空氣專案和割『韭菜』行為,用成果來體現區塊鏈思維帶來的先進生產力和生產關係,用效益來回報我們的支持者和社群。」
短短幾句話,抓住了當下區塊鏈的幾個痛點,直擊人心。這也正體現了冒志鴻的性格和做事風格。

ArcBlock 創辦人兼執行長冒志鴻(Robert Mao)
於是便有了這次跨洋採訪。內參君想透過這次採訪,將 ArcBlock 專案的精髓以簡單通俗的方式解讀出來,而非那些躺在白皮書上的一個個專業術語。讓關注區塊鏈的人能夠更容易理解,一個質地優良的區塊鏈專案是如何煉成的?從而對判斷區塊鏈專案的優劣大有幫助。
在應用型區塊鏈專案滿天飛的背景下,冒志鴻卻選擇了一個技術型區塊鏈專案作為自己的創業目標。在外人看來,這需要足夠的魄力與勇氣。
但其實冒志鴻之所以這麼做,也實屬無奈。早在 2016 年,冒志鴻就和現在許多拿著應用型專案區塊鏈白皮書的創業者一樣,想做一個完美的應用型區塊鏈專案。但事實是,在專案推進過程中,他發現許多問題是目前的區塊鏈技術無法解決的。他不得不重新回到技術層面去滿足自己的訴求。類似的事情多了,也讓他重新認識區塊鏈技術。也正因如此,他找到了自己的創業方向——「區塊基石」(ArcBlock)。
經過兩年的分析與定位,冒志鴻愈來愈清楚 ArcBlock 的未來。現在 ArcBlock 不僅提供基礎元件服務,讓區塊鏈更易於使用,而且能比現今的區塊鏈系統支援更複雜的商業邏輯。它能協助您將既有系統和服務與區塊鏈建立連線,讓您可以把現有業務的資料、使用者、商業邏輯等,應用於區塊鏈驅動的新應用程式中。
也就是說,以前冒志鴻想做一個平台的使用者,現在他變成了一個平台的提供者。
因為冒志鴻心中清楚地知道:今天的區塊鏈應用仍處於「嬰幼兒期」,有許多問題阻礙開發者和企業在區塊鏈上建立能夠廣泛傳播的去中心化區塊鏈應用。正因冒志鴻自己先前走過許多彎路,並且在不斷「試錯」的過程中,了解許多區塊鏈創業者遇到的瓶頸、麻煩與痛點。

而 ArcBlock「區塊基石」的首要目標,就是解決目前區塊鏈應用領域普遍存在、阻礙區塊鏈技術在公眾範圍內普及應用的五個問題。
這也是制約區塊鏈發展的五大痛點。
效能低下是當今區塊鏈面臨的最大難題
效能低下,是今天的區塊鏈技術面臨的核心挑戰之一。比特幣的區塊鏈被設計為每秒處理 7 筆交易,以太坊只能處理每秒數十筆。2017 年 12 月初,一個簡單的「以太貓」(CryptoKitties1)遊戲,就造成以太坊(Ethereum)網路大規模壅塞,並導致交易費(gas)激增。
而今天一個合格的消費者應用,必須能夠處理數以千萬計的每日活躍使用者。更重要的是,有些應用必須達到足夠大的使用者臨界點才會有實用價值。支撐這些應用的平台,必須具備處理大量並行使用者的能力。
良好的使用者體驗需要在秒級甚至毫秒級內提供可靠的回饋。延遲會讓使用者困惑,導致今天的區塊鏈應用無法與傳統的非區塊鏈應用競爭。
這也正是當今許多應用型區塊鏈專案無法普遍推廣的最主要原因。

ArcBlock 設計了開放鏈存取協定,能支援各式各樣的公鏈。目前已支援以太坊和超級帳本這兩條鏈,今後還將拓展更多公鏈合作。這也意味著 ArcBlock 在應用方和公鏈平台方之間搭起一座橋樑,最大限度地讓應用能有效落地。
冒志鴻說,ArcBlock 做的不是一條全新的公鏈,而是搭建一個平台,讓開發者選擇現有且他們認為最合適的公鏈進行合作。從本質上說,ArcBlock 並不協助開發者解決公鏈本身的效能問題。然而,ArcBlock 卻能大幅提升使用者的整體體驗。這一方面要求平台本身的效能足夠好,另一方面,平台能協助開發者採用 ArcBlock 建議的最佳實務和設計模式,把原本不需要放在鏈上的邏輯放到鏈下實現,從而提升整體效能。
例如,淘寶雙十一本質上仍是一個資料庫應用,這對記憶體、CPU 和網路速度都提出很高的要求,為什麼沒有因為資料庫本身的瓶頸而造成整個系統癱瘓呢?因為淘寶的技術人員將資料庫的瓶頸部分有效分開處理,並不是一切操作都交給資料庫本身處理,這就大幅提升了使用者體驗。
同樣地,ArcBlock 也在應用的運算框架中,將鏈上和鏈下運算有效分開,這會使應用的整體效能大幅提升。
打破對消費者不友善的應用壁壘
客觀來說,今天的區塊鏈應用還只是為知道如何使用的極少數極客使用者而打造,並非面向主流消費者。
幾乎所有區塊鏈應用都需要使用者在自己的電腦端執行一個「節點」,或至少安裝一個「輕節點」才能使用。高昂的學習與使用成本,導致區塊鏈應用難以在一般大眾中普及。
舉例來說,「以太貓」可能是迄今出現、對使用者最友善的去中心化區塊鏈應用,但它仍需要使用者在瀏覽器安裝 Metamask2 這個輕錢包外掛程式才能使用。同時,使用者必須知道如何買到以太幣,以及如何適應並使用 Metamask 外掛程式介面。

要吸引大量使用者,區塊鏈應用必須像今天常見的網頁和行動應用一樣簡單好用。對消費者而言,區塊鏈技術本身應該是完全透明的。
在解決對消費者不友善的問題方面,冒志鴻說,ArcBlock 做了許多應用服務層,有了這些應用服務層,開發者便可以向最終使用者提供非常友善或他們熟悉的介面,然後在應用服務層轉譯成使用者對區塊鏈的實際操作,再反過來將區塊鏈的回饋轉譯成使用者喜歡或能接受的介面。這樣使用者就很容易使用區塊鏈應用,而且使用體驗也會非常好。

降低使用費更有利於區塊鏈推廣
當今使用區塊鏈的費用非常高昂,也是阻礙主流大眾接受和採用區塊鏈技術的一大主因。這還限制了開發者建立免費應用的彈性;正如今天的網頁和行動應用一樣,使用者不需要為每一個動作和請求單獨付費。如同今天的網際網路,區塊鏈技術應該能夠支援免費應用。
讓區塊鏈可以免費使用,是區塊鏈技術廣泛傳播與普及的關鍵。能夠提供免費服務的平台,讓開發者和企業有動力提供更好、更創新的應用來吸引使用者付費,而不是讓使用者為基本的區塊鏈操作付費。

所以,如何降低區塊鏈使用費,是擺在所有區塊鏈開發者面前的一大難題。冒志鴻在 ArcBlock 設計之初,就把協助開發者將主要精力用於優化自己的商業模式放在首位。
「ArcBlock 協助開發者開發出適合使用者的複合型應用,例如哪些功能可以收費?哪些功能可以免費?這樣就可以達到降低開發成本的目的,並能讓更多使用者免費嘗試或使用這個應用,形成良性循環。」
突破平台「鎖定」,建立更合理的應用
和許多早期電腦技術的發展過程類似,現在的區塊鏈存在嚴重的「平台鎖定」問題。開發者不得不在支援哪一種區塊鏈實作技術之間做出選擇,應用的設計和程式碼會被開發初期選擇的區塊鏈平台「鎖定」,導致未來難以靈活更換,並且大幅提高應用開發者的開發成本,非常不利於區塊鏈發展。
應用開發者不希望自己的應用被鎖定在特定區塊鏈技術上。他們需要自由選擇的權利,能自由評估、使用和切換最適合自身業務的技術基礎。有些應用有時也需要支援多種不同的底層技術,為自己的使用者提供最佳體驗。

在這方面,ArcBlock 下了很大功夫。冒志鴻進一步解釋說:「ArcBlock 引入了『開放鏈存取協定』(Open Chain Access Protocol),這使應用可以透過它連接多種不同的區塊鏈協定。開發者將重新擁有方便評估不同區塊鏈協定的自由,甚至可以在不同區塊鏈協定之間方便地切換。」
當區塊鏈技術本身發生演進時,確保應用能輕鬆跟隨新的區塊鏈技術一同演進。「開放鏈存取協定」消除了現有區塊鏈技術的「平台鎖定」風險,並能讓一些區塊鏈應用跨鏈而建,大幅提升開發者和使用者的體驗,從而大幅降低應用開發者的開發成本。
要有效解決平台鎖定問題,離不開冒志鴻團隊開發的「基石程式」(Blocklet)。可以說 Blocklet 是一項革命性設計,它吸收了最新的微服務(Microservice)架構和無伺服器運算方式(Serverless Computing)的優勢。
冒志鴻說:「Blocklet 是一種高階應用協定,可以在任何平台上用任何語言實作,這使它可以充分利用平台和語言的原生特性,獲得遠優於虛擬機器執行的最佳效能和開發體驗。透過前面說明的『開放鏈存取協定』,Blocklet 可以和區塊鏈通訊。」

可貴的是,Blocklet 不只連接區塊鏈協定,也可以存取任何外部資料來源,因此它能完成鏈上和鏈下兩種運算方式,並將兩者連結起來。
可以說,ArcBlock 技術在使用者和各平台之間搭起一座四通八達的立體交流道,把許多不同的應用技術彙整在一起,同時也連接多種不同的技術。 這樣,應用開發者便能完全從不同協定中解放出來,把精力專注於應用本身,自由地依照自己的構想達成自身需求。
但關於平台鎖定的問題,ArcBlock 也收到社群的一些批評。主要觀點是,ArcBlock 要解決平台鎖定問題,但使用者選擇 ArcBlock 的開放鏈後,其實就鎖定在 ArcBlock 的開放鏈上了。
對此,冒志鴻解釋說,開放鏈存取協定本質上是一個抽象的區塊鏈協定存取層。一旦定義了一個抽象層,其實也意味著使用者要綁定到這個抽象層。為了解決這個問題,我們的做法是將開放鏈存取協定的程式碼貢獻給開放原始碼社群。也就是說,我們雖然建立了它,但不會控制它,大家都可以貢獻程式碼。使用者綁定的是一個可以參與改進的公共開放原始碼協定,而不是被一家公司完全控制的平台。
另外,從電腦技術發展的角度來看,有相當多的事物都需要一個統一的抽象層來解決。我們的開放鏈存取協定非常接近資料庫系統的開放資料庫連接這類協定。

「所以我們相信,未來即使我們的開放鏈存取協定不能成為一項標準,也一定會有類似的東西成為主流和標準。 我不太相信某一個特定區塊鏈(例如以太坊、Hyperledger 等)會成為廣泛的標準,一定是一個相對居中的東西會成為標準。現在做這件事的人還很少,我們相當於是第一個吃螃蟹的人。我希望我們能成為這個標準,最終能不能成為標準,還要看最後的演進。」冒志鴻補充說。
搭建一個功能多元化的平台
今天,媒體和傳道先驅為去中心化區塊鏈應用描繪了光明的未來,尤其是在最近數位加密貨幣價格屢創新高的背景下,公眾對區塊鏈技術抱有極高期望。
但冒志鴻指出:「現實是今天的區塊鏈技術仍處於『嬰幼兒』期,絕大多數區塊鏈應用缺乏足夠的功能,而且沒有一套有效機制推動社群來貢獻這些欠缺的功能。」
區塊鏈協定的一個特點是分叉比較容易,最近出於各種動機對區塊鏈進行硬分叉的現象此起彼落。然而,這些硬分叉對區塊鏈功能的貢獻很小,反而分散了運算資源、割裂了使用者社群。今天各種區塊鏈系統的內在激勵機制設計,並沒有鼓勵人們對鏈的技術和特性做出貢獻。
在解決區塊鏈功能匱乏的難題時,ArcBlock 平台採用「由上而下」的設計策略,始終將最終使用者體驗放在中心位置。相比之下,現有大部分與特定區塊鏈技術綁定的開發系統,往往從底層區塊鏈「能提供什麼」出發,犧牲了良好的使用者體驗。
冒志鴻說:「利用 ArcBlock 平台開發的應用,能夠提供即時、回應式(Reactive)的使用者體驗,使用者可以透過習以為常的網頁瀏覽器或行動 App 來使用區塊鏈。」
「ArcBlock 平台還將大幅提升開發者體驗。開發者不需要去摸索、評估各種不同的區塊鏈底層協定。透過我們提供的模擬區塊鏈轉接器,開發者甚至不需要安裝、執行任何區塊鏈測試節點,就可以開發、測試自己的區塊鏈應用。」
「區塊基石」(ArcBlock)平台透過創新且革命性的設計來解決上述問題。不同於其他類似產品,ArcBlock 是一個完整的平台服務,而不是一些軟體套件或包裝型 API 的集合。它是一套結合區塊鏈和雲端運算技術的完整解決方案。
透過與冒志鴻的對話,內參君真切感受到一種極客精神正在閃耀。這正來自冒志鴻和他所帶領團隊富有創意的設計。

寫在結尾
「ArcBlock 宣稱是區塊鏈 3.0」也不是沒有道理。本質上,它是一個區塊鏈 PaaS,使用者是開發人員。ArcBlock 協助他們屏蔽底層實作細節,提供公共可重複使用的元件,支援跨鏈呼叫和部署,打通鏈上鏈下的資料和邏輯,提升效率並確保安全性,方便偵錯和版本控制,建立激勵機制以推動社群成長等等。
用冒志鴻的話說:「『區塊基石』(ArcBlock)是全球第一個專注於開發和部署去中心化應用的區塊鏈服務平台和生態系統。」
ArcBlock 的設計旨在致力於打造一個高效能、使用者友善、成本經濟、不被現有特定區塊鏈協定鎖定的應用服務平台。
也許,Blocklet 的設計思想代表了下一代區塊鏈 3.0 應用的主流模式。相信隨著 ArcBlock 的應用與普及,區塊鏈 3.0 的時代才剛剛開始。
而且這一天不會太久。
