在諸多還未上線主網的區塊鏈中,跨鏈項目 Polkadot 也成爲了至今爲止熱度最高的區塊鏈之一。但常常與 Cosmos、以太坊並肩出現的 Polkadot,在無數的對比中作爲配角,不斷地被割裂與被重構。本篇文章將試圖描摹 Polkadot 的真實全貌,如有遺漏及誤解,還請各位指正。

原文標題:《取代以太坊、爭鋒 Cosmos, Polkadot 的真實面貌到底是什麼?》
作者:蘆薈

一、起源

正如比特幣有中本聰,以太坊有 V 神,Polkadot 也有它的靈魂人物 —— 創始人 Gavin Wood。

在創建 Polkadot 之前,Gavin Wood 曾有過兩個知名身份:前以太坊的 CTO 及聯合創始人,其後是以太坊客戶端 Parity 的創始人。

在投身於以太坊的發展進程中,Gavin 的成就並不比 V 神小,他撰寫了以太坊技術聖經——黃皮書,首次提出了 EVM 概念(Ethereum Virtual Machine,即以太坊虛擬機),以及開發了智能合約高級語言 Solidity,這些技術發明幾乎奠定了此後區塊鏈 2.0 的基礎。

在概念暢想中,Gavin 也在 2014 年首次提出 0 信任的安全交互操作系統——web 3.0 時代,並稱其爲「後斯諾登時代」(第二次重提 web 3.0 則是在 2017 年成立 Polkadot 之際);在工具上,出來單幹並獨立創建了 Parity Technologies 的 Gavin 推出了由 Rust 語言編寫的以太坊客戶端 Parity,目前該客戶端的以太坊用戶仍然排名第二。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計青澀時期

2016 年,在以太坊向 1.5/2.0 升級的過程中,以太坊經歷分叉危機。Parity 創始團隊開始考慮獨立創建一條有分片版本的以太坊區塊鏈。Gavin 將思維過程更進一步,在其構思的新區塊鏈系統中,連接到中繼鏈的分片並不完全相同,允許不同的節點運行不同的應用邏輯,使每個鏈都成爲自己的平臺,所有的分片都應該享有同樣的安全保障。

創始團隊的光環與這一設想的先進性很快得到資本青睞。2017 年 10 月,Polkadot 進行了第一次衆籌,一週內吸金 1.3 億美元(48 萬以太坊),投資機構不乏 Bosst VC、Pantera Capital 還有 Polychain Capital 等知名風投機構。

其 ICO 方式也十分具有去中心化的色彩。爲了防止有人在 5 秒鐘之內囤夠所有代幣,Polkadot 採取了荷蘭式拍賣的方法,即隨着時間的推移逐漸減少購買上限、同時提升價格。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計衆籌頁面

不過,衆籌完不久,由於 Parity 一位程序員的操作失誤,Polkadot 的 Parity 錢包中 93 萬個以太坊被凍結,曾引起譁然。今年 4 月,Polkadot 發起了第二次 ICO。在此前華爾街日報於 2019 年 1 月的報道中,知情人士表示第二次 ICO 計劃融資 6000 萬美元,整體估值達到 12 億美元;而在 4 月,巴比特對 Gavin Wood 最新的採訪中,Gavin 表示將在主網發佈前發售最後 20% 的代幣。據 Odaily 星球日報瞭解,此次 ICO 個人購買一枚 DOT 的單價,相比第一次的衆籌價格已經上漲了 177%,預計此次融資獲將超過 6000 萬美元。

二、共享驗證節點的異構多鏈協議

作爲 Gavin 實現 web 3.0 願景的產物,Polkadot 是一種異構多鏈協議,旨在實現以往區塊鏈努力實現的 3 個目標:互通性、可擴展性、共享安全。

如何實現的呢?Polkadot 由一箇中繼鏈(Relaychain)以及一系列平行鏈(Parachain)組成。其中,中繼鏈負責共享安全、共識以及平行鏈之間數據、消息和交易的跨鏈傳遞;平行鏈則需要綁定 Polkadot 的代幣 Dots 以租賃一個 parachain 槽 ,來鏈接中繼鏈(Dot 持幣者可通過質押代幣,投票決定是否添加、移除或者修改已經存在的平行鏈);對於已經無法改變共識機制、代幣(如比特幣、以太坊這樣的老牌公鏈)或者不願意改變共識機制以及共享安全的區塊鏈,則可以通過 BrigeChain 鏈接 Polkadot 生態。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計

這一異構多鏈的架構,希望實現各個鏈條之間資產與數據的互相流通,以提高吞吐量;在 Polkadot 中,出塊任務可以分配給不同的子鏈,從而能夠實現並行運行事務且不必擔心發生衝突。

目前 Polkadot 的第一版,數十條平行鏈能夠通過一箇中繼鏈並行連接,據官方估計,一條中繼鏈最高可容納 100 條平行鏈,目前已有超過 25 個項目已經公開聲明他們打算將他們的區塊鏈連接到 Polkadot;在其第二版的構想中,可以出現基於一級中繼鏈上的二級中繼鏈,預計可以出現千倍至萬倍的可擴展性。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計第一版 VS 第二版

在安全性上,Polkadot 認爲在一百條相互關聯的區塊鏈中,安全性最弱的鏈條將決定整個跨鏈系統的安全性,而不乏有一些缺少激勵的鏈條因爲難以吸引到驗證者,往往系統安全性並不高。由此在 Polkadot 的設置中,中繼鏈上的驗證節點將被平均地分配給各平行鏈以守護其安全性,這樣一來,平行鏈不必花心思吸引驗證者來保護區塊鏈,而將精力專注於鏈的任務(即運行)。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計傳統的獨立的安全 VS 共享安全

2018 年 10 月,Polkadot 上線新的工具 —— Substrate 框架。該框架集成鏈區塊鏈所需的通用功能,以期使開發者儘可能簡單靈活地創建區塊鏈;同時也能實現一部分的技術自由。

Substrate 分爲多層架構:即 Substrate Core (具有 Polkadot-Core-integration),Substrate SRML 和 Substrate Node,如下圖所示,從上到下,技術自由遞減、抽象度遞減、依附性遞增。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計

具體來說,如果選擇最上方的 Polkadot Core,開發者需要從頭開始構建自己的區塊鏈,並在 WebAssembly 中爲其配備塊驗證功能。從頭開始意味着必須實現自己的節點、RPC 同步、網絡、加密、數據庫、存儲、共識以及輕量級客戶端和遙測等擴展功能。

而最下方的 Substrate Node 則可謂是一站式服務,開發者只需提供 JSON 配置文件即可獲得完整的智能合約區塊鏈。你大概可以想象其簡便性:在 2018 年的柏林 Web 3 峯會上,Gavin Wood 在半個小時之內,利用 Substrate 在一臺剛從工廠出爐的新電腦中,創建了一條完整的區塊鏈。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計柏林 Web3 峯會上的 Gavin Wood

Polkadot 中的平行鏈並不限定於用此框架創建;該框架也不僅僅限定於 Polkadot 生態。

Polkadot 的起源與進化:超越以太與 Cosmos 的治理與設計

三、混合共識:改進版 DPOS + PBFT

在 Cosmos 中,通過 Cosmos SDK 建造的鏈只能選擇 Tedenmint 共識機制,目前暫不清楚通過 Substrate 搭建的區塊鏈是否在共識機制上有所限制,但還是有必要清楚 Polkadot 的共識機制。

據 Polkadot 的最新博客,Polkadot 計劃使用 Web3 基金會研究科學家 Alistair Stewart 發明的混合共識機制 —— GRANDPA。

該共識機制是 Aurand 和 Tendermint for PBFT 的混合共識機制。其中,Aurand 是升級版的 DPOS,保留了其輪流出塊,且一開始就確定了出塊人(驗證者)的特質,所以效率高,TPS 高;同時改進了節點的數量,允許隨機選擇驗證人而非固定的 21 位節點出塊。此外,GRANDPA 對 Tendermint for PBFT 也做了改進,Tendermint for PBFT 是 Cosmos 的共識,需要 至少 2/3 的驗證人達成共識。異步 BFT Tendermint 會對每個塊進行 BFT, Grandpa 可以選擇每輪驗證人最後一個塊進行 BFT,減少 99% 的通信量如隔離見證、鏈下收集簽名、驗證 finalize,從而共識形成速度更快。

儘管看起來十分複雜,但 GRANDPA 的本質還是 POS 共識機制,相比於大多數 POS 公鏈中只有委託人與驗證者兩個角色,Polkadot 在其白皮書中設置了四個角色:「驗證者 (validator)」、「提名人 (nominators)」、「校對者 (collators)」和「漁民 (fishermen)。

驗證人與提名人與大多數 POS 公鏈中的節點與委託人作用相似,前者質押代幣生成區塊且提供委託服務,後者可將代幣委託給驗證者。

新增的校對人與驗證人互相輔助,主要任務是生成有效的 Parachain 區塊。校對人還需對未封裝的塊進行零知識證明,並將其提供給一個或多個負責向 Relay Chain 提交 Parachain 區塊的驗證人。漁夫則是賞金獵人,監督驗證人與校對人的作惡行爲,並通過舉報尋求大筆的獎勵。

四、鏈上治理:浮動的投票通過門檻

Polkadot 的治理機制也顯得更復雜一些。除了全民公投以外,Polkadot 引入了一個鏈上「委員會」的概念,這個委員會很可能從大約 6 人開始,並且在 9 個月內增加到 24 人(每兩週大約增加一個人)。所有成員都有固定任期(12 個月),每個成員都通過批准投票選出。

該委員會主要負責兩項治理任務:提出合理的公民投票,取消無可爭議的危險或惡意公投。

比較特殊的是,複雜的 Polkadot 採取了「加權投票」與「自適應法定人數偏差」。在加權投票中,投票權重等於投票人 token 的數量乘以鎖定時間(代幣鎖倉時間,倍數在 1 到 6 之間。)

「自適應法定人數偏差」通俗地說,即:如果投票率低,那麼提案通過需要的贊成票會更多;理事會的提案需要更多的反對票才能被否決;公民提案需要更多的贊成票才能通過。

說了這麼多,Polkadot 在其治理頁面的結尾也表示,在主網上線之前,最終的治理模型並未確定。

五、與 Cosmos 與以太坊的「對比」

同爲跨鏈項目,Polkadot 常被與 Cosmos 對比。

兩者在跨鏈的技術設計上如此相似,兩者都提出了建立連接區塊鏈(Cosmos 的 Hub 和 Polkadot 的中繼鏈),在其他鏈之間傳遞消息;兩者都有一個模塊倉庫(Cosmos SDK 和 Substrate),供開發人員構建可以直接插入相應生態系統的區塊鏈;兩者都有橋接機制來連接傳統的區塊鏈(Cosmos 的 peg zones 和 Polkadot 的 bridge chains)。

不同的是,Cosmos 有多個 hub,且並不共享節點與安全性,hub 仍將讓區塊鏈完全控制自己的治理。相比之下,Polkadot 目前只有一條中繼鏈的設置,也被認爲「更爲中心化」,且平行鏈共享節點以及安全。

但支持者卻並不這樣認爲,共享網絡安全並非壞事,甚至在大多數情況下這是必要的;Wetez 錢包也認爲當前很多新公鏈最大問題就是節點不夠,不夠就代表不去中心化不夠安全。

在這一點上,無法判斷哪一方更有優勢,需要看項目方的取捨。

另外,開發語言也有差異:Polkadot 使用 WebAssembly 和 Rust 語言,而 Cosmos 使用 Golang 語言。WebAssembly 相對先進,對於在具有不同運行時間的區塊鏈之間進行協調更有優勢,目前得到了 Google、Apple、Microsoft 和 Mozilla 的支持,但對於普通開發者來說,這是一門更爲小衆的語言。與 Rust 相比,Golang 是一種更易學習的編程語言,在全球也有更多的開發者。

不過,顯然 Polkadot 團隊也意識到了這一點, Parity Technologies 目前正分別基於 Rust 和 Javascript 編程語言開發兩個 Polkadot 的客戶端。2019 年 1 月,加拿大科技公司 Chainsafe 獲得 web3.0 基金會資助,利用編程語言 Golang 爲 Polkadot 開發新的客戶端。

Polkadot 的設計,在部分人看來,正打算替代以太坊。

比如,橙皮書曾經用比喻寫出兩種願景的相同:以太坊的願景想要用以太坊這個賬本,幫全世界的村莊 / 各種經濟體來記賬和結帳;Polkadot 雖然描述的是一種跨鏈技術,但它更多描述的是一種多鏈的賬本結構,Polkadot 要做的是使用中繼鏈這個賬本給別的村莊記賬。本質上兩者皆爲賬本。

Polkadot 成員 Jack Platts 在文章中也將兩者作比較,認爲 Polkadot 相對以太坊成本也更爲低廉:雖然租賃插槽需要鎖定部分 Dots,成本比寫一份智能合約更高,但相比於以太坊高昂的 Gas 費用,Polkadot 生態中發送交易的成本將大大降低。

然而,Polkadot 卻在各場合否認挑戰以太坊,不過以太坊社區並不買賬。

以太坊核心開發者、主要客戶端 Parity 的發佈經理 Afri Schoeden,曾發推表示 Polkadot 已經達到了以太坊第四階段的「Serenity」想要達到的效果,一度被社區稱爲「以太坊的叛徒」。

所謂「Serenity」階段就是以太坊向 POS 機制升級計劃中的第四個階段。當前,以太坊 Serenity 階段的分叉升級因種種原因一拖再拖。

以太坊上的去中心化自治組織管理 Aragon 曾宣佈將考慮基於 Polkadot 協議發佈自己的區塊鏈 AragonChain。這一舉動也引起了以太坊社區的強烈反應。

以太坊核心開發者 Lane Rettig 在推特上評論稱:這是一個較早的警示,以太坊如果不能很快擴容,存在喪失競爭力的風險;以太坊社區活躍人士、SpankChain CEO AmeenSoleimani 更是提議,要求限制 Aragon 花費資金等資源進行 Polkadot 相關開發。

雖然 Aragon 社區成員此前提出「建議購買價值 150 萬美元的 DOT 代幣,用於促進 Polkadot 的發展」的提案,遭到 92.29%的投票反對。但在最新的《AGP-42:讓 Aragon 專注於以太坊,而不是 Polkadot》方案中,已經有 68% 的反對票。