當前位置:首頁 > 物聯網 > 區(qū)塊鏈
[導讀] Cosmos 和 Polkadot 都是關注區(qū)塊鏈互操作性的項目,關于二者之間的差別已經有過很多討論。如果你還不熟悉這兩個項目,Linda Xie 發(fā)過一串推特介紹過這兩個項目,可以作為很好的入

Cosmos 和 Polkadot 都是關注區(qū)塊鏈互操作性的項目,關于二者之間的差別已經有過很多討論。如果你還不熟悉這兩個項目,Linda Xie 發(fā)過一串推特介紹過這兩個項目,可以作為很好的入門材料。

雖然已經有很多帖子分析過這兩個項目的區(qū)別了,但是我認為其中大部分都存在一定的偏向性或者不夠詳細。通過這篇帖子,我會從架構權衡到哲學等方面更深入地探討這兩個項目。

為什么要構建一條新的區(qū)塊鏈?

為什么一些項目要選擇從頭開始構建一條專門承載應用程序的區(qū)塊鏈,而不是以智能合約的形式在現有的區(qū)塊鏈上編寫應用程序呢?主要有以下兩點原因。

首先,現有的智能合約平臺不一定能滿足應用程序所需的靈活性和可定制性。舉例來說,如果你想搭建的應用程序需要自定義的哈希函數,那么把它編寫到以太坊上會消耗很多 gas ,因為這個函數每調用一次都需要在以太坊虛擬機內執(zhí)行一次。一種解決方案是提議將這個函數作為預編譯合約添加至以太坊協(xié)議內。但是,除非這個函數也廣泛應用于其它應用程序,否則這項提議大概率是不會通過的。從頭開始編寫一條新的區(qū)塊鏈,你就可以自由靈活地設計區(qū)塊鏈的核心邏輯,以此滿足你的應用程序的需求。

其次是自治問題。在智能合約平臺上構建的應用程序必須接受平臺的治理并遵守其規(guī)則,從區(qū)塊時間和 gas 定價之類影響用戶體驗的規(guī)則,到回滾之類改變狀態(tài)的決策等等。

但相應的,具有自治能力的鏈失去了與其它應用程序進行無縫通信的能力,因為應用程序都是搭建在使用不同狀態(tài)機的區(qū)塊鏈上。Cosmos 和 Polkadot 都致力于解決這個問題——Cosmos 采用的是 Hub-and-Zone(中心-分區(qū)) 模型,Polkadot 則采用的是Relay Chain/Parachain(中繼鏈/平行鏈)模型。

讀者需要對這兩個項目有一定的了解,本文側重于梳理二者的不同點。

1.局部安全 vs 全局安全

Cosmos 和 Polkadot 采用的安全模型差別極大。簡單來說,Polkadot 的工作流程如下:

平行鏈是 Polkadot 網絡中的區(qū)塊鏈。這些鏈有自己的狀態(tài)機、自己的規(guī)則和自己的區(qū)塊生產者,即核驗人(collators)。每條平行鏈本質上都是一個獨立的狀態(tài)機,而且可以使用任何類型的特殊功能、共識算法、交易手續(xù)費結構等等。在 Polkadot 網絡中,所有平行鏈都有同一條母鏈,叫做中繼鏈,里面包含了由所有平行鏈組成的 “全局狀態(tài)”。中繼鏈擁有自己的共識算法,叫做 GRANDPA 共識(祖父共識),可以迅速將平行鏈上的區(qū)塊確定下來。通過這個模型,Polkadot 的平行鏈實現了 “安全性共享”——如果中繼鏈上有 1000 名驗證者,具有極高的安全性,凡是連接到這條中繼鏈的平行鏈都會受益。這樣一來,平行鏈即能擁有自己的狀態(tài)機并自定義規(guī)則,又能與成百上千條平行鏈一起共享母鏈的安全性。

這種模型的罩門在于由中繼鏈上的驗證者來驗證平行鏈上的狀態(tài)改變。例如,驗證者可能會出于某種原因一直拒絕某條鏈上的核驗人提議的區(qū)塊,而且這條中繼鏈上的區(qū)塊永遠無法被添加進全局狀態(tài)。為了盡量避免這種情況,Polkadot 對驗證者進行混洗,讓他們隨機驗證平行鏈,降低同一位驗證者始終驗證同一條平行鏈的概率。Polkadot 還另設有一類被稱為 Fishermen (漁夫)的驗證者,他們會不斷查驗驗證者是否存在惡意行為。

Cosmos 采用了完全不同的網絡架構。

在 Cosmos 網絡中,每條鏈都是獨立運行的,并設有自己的安全機制,而非像 Polkadot 那樣采用 局部/全局 的安全性模型。每條鏈都有自己的共識機制,而且由單獨的驗證者來負責保護這條鏈的安全性。Cosmos 網絡使用中心-分區(qū)模型來實現互操作性,每個分區(qū)(獨立的鏈)都可以通過中心(同樣是一條獨立的鏈)向其它分區(qū) “發(fā)送代幣”。這個協(xié)議被稱為 IBC (跨鏈通信),是鏈與鏈之間通過發(fā)送消息實現代幣轉賬的協(xié)議。IBC 協(xié)議尚在開發(fā)之中,最開始先支持代幣轉賬,最終會支持各類消息的跨鏈傳遞。

相比于 Polkadot 的架構而言,Cosmos 的架構最大的不同之處在于,每個分區(qū)的狀態(tài)僅由各自的驗證者保護。一個分區(qū)想要獲得很強的安全性,就需要建立自己的驗證者集,這對于小型應用程序來說會比較困難。不過,對于那些想要獲得更多控制權的應用程序來說,這是個很大的亮點。例如,幣安最開始就是用自己的節(jié)點來充當幣安鏈的驗證者,來促進去中心化交易所的持續(xù)運行。這樣一來,幣安在測試幣安鏈并增加新功能的時候就有了充分的控制權。我覺得幣安不太可能放棄決定哪些交易可以上鏈的權力,但若要在以太坊或 Polkadot 平臺上開發(fā),就不能不放棄這樣的權力。正因如此,我認為 Telegram、Facebook 和 Kakao 這類公司會選擇構建自己的區(qū)塊鏈并掌握其控制權,未來也不太可能與別的鏈通信。

2. 治理和參與

Polkadot 和 Cosmos 之間的第二個主要差別在于治理和參與。在 Polkadot 網絡中,只有一條中繼鏈和一些與這條中繼鏈共享驗證者的平行鏈。根據目前的估算,平行鏈的數量上限為 100 條,不過未來有可能減少或增加。Polkadot 網絡通過拍賣機制來競拍平行鏈的使用權——出價最高的人需要在 PoS 系統(tǒng)中定一定數量的 DOT (Polkadot 上的原生貨幣),才可以在一定時間段內擁有所拍得平行鏈的使用權。這意味著要想使用 Polkadot 上的平行鏈,需要購買并鎖定大量 DOT ,直到不想再使用這條平行鏈為止。

Cosmos 網絡沒有設置固定的參與規(guī)則——任何人都可以創(chuàng)建中心或分區(qū)。中心就是具有自治能力的區(qū)塊鏈,專門用來連接其它區(qū)塊鏈。這里有兩個例子,一個是 Cosmos Hub,最近已由 Tendermint 團隊上線;另一個是 Iris Hub,旨在連接主要運行于中國或其它亞洲國家的區(qū)塊鏈 。這種中心-分區(qū)模型提高了跨鏈通信的效率,因為分區(qū)鏈只需要連接到中心,無需連接到其他每條鏈上。

由于參與規(guī)則不同,這兩個網絡在治理流程上也存在差異。在 Polkadot 網絡中,治理決策取決于投票者所質押的 DOT 數量。關于鏈上投票會有一套正式機制,不過尚未最終確定下來,點擊此處可了解最新進展。除了采取以質押量決定投票權重的機制之外,Polkadot 還組建了一個委員會來代表不活躍的權益持有者。委員會最開始由 6 人組成,每兩周增加 1 人,直到滿 24 人為止。每位委員會成員均通過贊成投票的方式選出。治理流程的具體細節(jié)尚未敲定,也就是說有很多方法可以改變中繼鏈的參數,如出塊時間、區(qū)塊獎勵等,以及平行鏈的參與規(guī)則。例如,Polkadot 的治理流程可以改變平行鏈使用權的競拍機制或所需的 DOT 數量。有一種常見的誤解是 DOT 持有者可以通過投票隨意棄用某條平行鏈。實際上,DOT 持有者只能改變參與流程。也就是說一旦競拍下了某條平行鏈,在整個租期之內都享有這條鏈的使用權。

另一方面,Cosmos 網絡不存在單一的 “治理”流程。每個中心和分區(qū)都有自己的治理流程,因此沒有一套應用于整個系統(tǒng)內所有鏈的核心規(guī)則。我們所說的“Cosmos 治理”指的都是 Cosmos Hub 的治理,即由 Tendermint 團隊上線的那條鏈。Cosmos Hub 的規(guī)則是,任何人都可以發(fā)送一個文本提議,由 ATOM 持有者進行投票表決,ATOM 的質押量決定了投票權重。想知道提議長什么樣子,這里有個例子。如果你想深入了解治理流程的話,可以閱讀一下 Chorus One 發(fā)布的這篇帖子,是了解 Cosmos Hub 治理機制的入門材料。

3.跨鏈通信

Polkadot 和 Cosmos 之間的另一個差別是跨鏈通信協(xié)議及其設計目標。Polkadot 旨在實現平行鏈之間任意的消息傳遞。也就是說,平行鏈 A 可以調用平行鏈 B 中的智能合約,實現與平行鏈 B 之間的代幣轉賬或是其他類型的通信。Cosmos 則聚焦于跨鏈資產轉移,其協(xié)議較為簡單。目前,這兩種通信協(xié)議仍待完善細則,而且尚未構建完成??梢圆榭?IBC(跨鏈通信)和 ICMP (平行鏈之間的跨鏈通信)這兩種協(xié)議的細則。

跨鏈通信所面臨的最大挑戰(zhàn)不是如何將一條鏈上的數據在另一條鏈上表示出來,而是如何處理鏈分叉和鏈重組這樣的情況。這是 Cosmos 和 Polkadot 在構架設計上最大的差異。

為了確??珂溚ㄐ诺陌踩裕琍olkadot 采用了兩種不同的機制。首先是安全性共享機制,降低了信息交換的難度。 共享安全性的另一個好處是所有平行鏈都位于同一個安全層級,因此每條鏈可以彼此信任。為便于理解,我們以以太坊(安全性較高)和 Verge(安全性較低)的交互操作為例。若想在 Verge 鏈上表示以太坊,我們可以鎖定一些以太坊,然后在 Verge 鏈上生成 ETH-XVG 代幣。然而,由于 Verge 鏈的安全性較低,攻擊者可能會向 Verge 鏈發(fā)動 51% 攻擊,并向以太坊區(qū)塊鏈發(fā)送雙花交易,就可以取回比實際擁有數量更多的以太幣。因此,在互相發(fā)送消息的時候,安全性較高的鏈很難信任安全性較低的鏈。如果是在安全層級各不相同的鏈之間互傳消息,情況就會變得更加復雜。

從理論上來說,共享安全性是一種保障跨鏈通信的良好方式。前提是,這種協(xié)議要確保能夠經常對驗證者進行混洗,再隨機分配到各條平行鏈上。這就會造成經典的 “數據可用性問題”,即每次驗證者被分配到新的平行鏈上,就需要下載新鏈的狀態(tài)。這是目前區(qū)塊鏈領域最大的難題之一,Polkadot 能否解決尚未可知。

其次,Polkadot 引入了 Fisherman(漁夫)的概念,也就是 Polkadot 網絡上的 “賞金獵人”,專門監(jiān)視平行鏈上的惡意行為。從某種意義上來說,這是抵御惡意行為的“第二道防線”。如果某條平行鏈的驗證者將一個無效塊上鏈,Fisherman 發(fā)現后可以向中繼鏈提交證明,將包括所有平行鏈在內的整個 Polkadot 網絡的狀態(tài)進行回滾。在跨鏈通信期間,最令我們擔心的莫過于一條鏈在重組,另一條鏈卻運行如常。Polkadot 就避免了這個問題,一旦發(fā)現無效塊上鏈,整個網絡都會回滾。

Cosmos 采用了完全不同的跨鏈通信方式。因為每條鏈上都有自己的驗證者,所以很有可能會出現分區(qū)中的驗證者串謀的情況。也就是說,如果有兩個分區(qū)需要通信,A 分區(qū)需要必須信任 Cosmos Hub(通信樞紐)以及 B 分區(qū)中的驗證者。從理論上來說,A 分區(qū)的人在決定向 B 分區(qū)發(fā)送信息之前,需要調查一下 B 分區(qū)的驗證者。不過我覺得實際情況沒那么糟糕。 Polychain Labs 或 Zaki Manian 的 iqlusion 等知名驗證者節(jié)點可能會驗證多條鏈,逐漸建立起良好的聲譽。也就是說,當 A 分區(qū)的人看到 B 分區(qū)是由 Polychain Labs 和 iqlusion 驗證的,可能會因此決定信任 B 分區(qū)。

然而,即使一條鏈得到了人們的信任,也有可能被懷有惡意的攻擊者控制,出現各種問題。有一段對話中提到了一個很好的例子:

假設上圖中的小紅點代表一種名為 ETM 的代幣,即 Ethermint 分區(qū)的原生代幣。A、B、C 三個分區(qū)的用戶想要使用 ETM 來運行各自分區(qū)內的一些應用程序,而且他們都信任 Ethermint 分區(qū),因此通過跨鏈通信在各自的分區(qū)內接受了一些 ETM 。現在假設 Ethermint 分區(qū)的驗證者串謀發(fā)動雙花攻擊,任意轉移 ETM 代幣。這也會對剩余網絡造成影響,因為 ETM 代幣也存在于其他分區(qū)中。不過受波及的只有 Ethermint 或其他分區(qū)中的 ETM 代幣持有者。Ethermint 分區(qū)中的惡意驗證者只能毀掉自己的分區(qū),破壞不了其他分區(qū)。這就是 Cosmos 架構的目標——確保惡意行為無法影響整個網絡。

Polkadot 則不同。如果中繼鏈(全局狀態(tài))上發(fā)生了無效狀態(tài)更新,又沒被 Fisherman 發(fā)現的話,Polkadot 網絡中的每條平行鏈都會受到影響。平行鏈不能被看作是完全不同的東西,畢竟它們都共享同一個全局狀態(tài)。

4.共識算法

Polkadot 中繼鏈采用的是 GRANDPA 共識算法。這個算法能讓中繼鏈迅速確定來自所有平行鏈的區(qū)塊,并且容納大量驗證者(1000 名以上)。簡單來說,這是因為并非所有驗證者都需要對每一個區(qū)塊進行投票——他們可以只需為自己認為有效的某個區(qū)塊投票,相當于這個區(qū)塊之前的所有區(qū)塊也都得到了認可。通過這種方式,GRANDPA 算法可以找出一組得票數最多的區(qū)塊,并將這組區(qū)塊確定了下來。該算法仍處于開發(fā)之中,尚不知實際會如何執(zhí)行。

平行鏈可以采用不同的共識算法達成局部共識。Polkadot 提供一個軟件開發(fā)工具包(Substrate),其中包括 GRANDPA、Rhododendron 和 Aurand 三種開箱即用的共識算法。今后可能會有更多算法被加入 Substrate ,皆可應用于 Polkadot 網絡。

在 Cosmos 網絡中,每條鏈可以選用的共識算法有很多,只要是符合 ABCI 規(guī)范的共識算法即可。 ABCI 規(guī)范旨在實現跨鏈通信的標準化。目前只有 Tendermint 算法符合這個規(guī)范,還有另一些團隊也在努力開發(fā)符合該規(guī)范的其他共識算法。從更抽象的層面上來看,Tendermint 算法的原理是讓每位驗證者都能互相通信,共同決定一個區(qū)塊能否上鏈,這樣就能實現單一區(qū)塊層面上的確定性。該算法的速度很快,而且通過了 200 名驗證者的壓力測試,在 Game of Stakes(權益爭奪賽)中的出塊時間為 6 秒。Cosmos 團隊也提供了一個軟件開發(fā)工具包,里面包含了開箱即用的 Tendermint 算法。這篇文章很好地介紹了共識算法,以及 Tendermint 算法的功能。

Tendermint 算法最大的缺點是驗證者之間的通信成本高很高。也就是說,雖然驗證者人數在 200 左右的時候,算法的運行速度很快,一旦人數漲到了 2000 ,速度就會慢得多。另一方面需要權衡的是異步環(huán)境中的安全性。也就是說,在出現網絡分區(qū)之時,不會出現兩個不同的交易歷史最終合并成一個(而另一個交易歷史被拋棄)的情況,而是整個網絡都將停止運行。這點非常重要,一旦一筆交易得到了“最終確認”,即使是在最差的網絡環(huán)境下也不會被撤銷。

我的個人觀點是,基于共識算法來比較這兩個項目沒什么長遠意義。這兩個項目的構架未來都將接受不同的共識算法。如今的絕大多數應用不管使用的是 Tendermint 算法還是 Polkadot 的某個共識算法都可以良好運行。

5.Substrate vs Cosmos SDK

Polkadot 和 Cosmos 都提供軟件開發(fā)工具包,分別叫作 Substrate 和 Cosmos SDK 。二者的目的都是為了便于開發(fā)者搭建自己的區(qū)塊鏈,其中包括各種開箱即用的模塊,例如治理模塊(投票系統(tǒng))、質押模塊和認證模塊等。這兩個工具包最主要的區(qū)別在于,Cosmos SDK 僅支持 Go 語言,而 Substrate 支持任何可編譯為 WASM (Web Assembly) 的語言,給予了開發(fā)者更多靈活性。

這兩個工具包都是構建區(qū)塊鏈的全新框架,未來幾年還將新增更多功能。關于這兩個工具包的深度剖析以及使用這兩個工具包開發(fā)應用程序的詳細體驗需要另外寫一篇文章了。如果你感興趣的話,請在推特上給我 @juliankoh 留言。

結論

雖然這篇文章篇幅很長,寫的也很詳細,但是依然有所疏漏。Cosmos 和 Polkadot 之間的不同點很難把握,可能還有很多細節(jié)我沒有捕捉到。要全方位了解這兩個項目絕非易事,畢竟項目文件隨時都可能改動。這兩個項目尚在起步階段,未來一年將得到極大的發(fā)展——我在上文中提到的幾個點可能很快就不成立了??偠灾?,我認為 Polkadot 相比 Cosmos 主要有以下幾個優(yōu)勢:

1. 應用程序開發(fā)者不需要自己維護安全性

2. 共享安全性模型下的跨鏈通信更容易解決數據可用性問題

3. Substrate(在 WASM、更多共識算法和開箱即用模塊方面)表現出很大的野心

4. 相比跨平行鏈的合約調用更側重于不限類型的信息傳遞(這一用例目前尚不明確)

5. 1.0 版本的開發(fā)者似乎多一些

反過來,Cosmos 相比 Polkadot 主要有以下幾個優(yōu)勢:

1. Cosmos 已經上線了,Polkadot 還沒上線

2. Polkadot 的平行鏈參與流程限制性更強,而且成本更高

3. 更能滿足特定項目(如幣安)對自定義的需求

4. 平行鏈上驗證者的惡意行為會波及整個網絡。在 Cosmos 網絡中,惡意行為只能破壞個別分區(qū)和資產

5. 已經有很多項目在使用 Cosmos SDK 了

6. 重點關注如何降低資產轉移的難度。目前已經有經過驗證的用例。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉