簡述 Polkadot 和區塊鏈網際網路
在過去的數年中,區塊鏈技術在流行度方面取得了驚人的進步,帶動了大規模特殊區塊鏈的出現:以太坊提供了智慧合約,萊特幣交易速度是比特幣的5倍,Zcash 在實現零知識證明,等等。在過去的一篇文章中,我提到過阻礙加密貨幣獲得更多受眾的原因。在這篇文章中,我會以簡單的方式解釋為何將這些區塊鏈全部連線在一起可以解決它們的主要問題。這種互連叫做區塊鏈網際網路,其代表一種允許資料和交易以無需信任的方式從一個區塊鏈流向另一個區塊鏈的網路。
連線加密倉
如今,每個區塊鏈擁有自己的特性、社群、共識演算法、以及維護網路安全的參與者(礦工、權益持有者……)。因為各個區塊鏈在自己的生態系統中發展,它們不會互相獲利。事實上,它們是競爭對手。以比特幣(BTC)為例,從礦工決定換而挖比特幣現金(BCH)開始,比特幣就變得沒那麼安全了。就礦工數量而言,這個轉變對比特幣來說影響並不大,但是這樣的變動卻會損害社群較小的區塊鏈的安全。
如果不依賴於通常中心化的第三方平臺,跨生態系統的交易無法順利實現。例如,針對基於以太坊代幣的投資無法直接通過 Zcash(ZEC)和其資料的高度保密性實現。生態系統間的資料轉移又是一大亟待應對的挑戰。好幾家公司現在已經研發屬於自己的私有聯盟鏈,以利用該技術改進內部流程。試想一下商戶 M 利用私有鏈技術來管理商品的物流。再試想一下快遞公司 P 利用私有鏈來追蹤其貨車和包裹。讓 P 方的資料為 M 所獲得是有用的,這樣的話,M 方可以追蹤其商品,直至交付於其客戶。現在從客戶的角度來看,在一個公有鏈上追蹤從 M 方購買且由 P 方運輸的商品同樣是非常有價值的。如今,該工作流並不完美也不透明,也並非是無需信任的。只有在區塊鏈(公有鏈和私有鏈)互相連線的世界裡,它才會發揮作用。
一種允許獨立區塊鏈互相交換資訊的協議——Polkadot
Polkadot 希望將區塊鏈聯合在一起
Polkadot 是由Web3基金會發起的一項計劃,由 Parity technologies 負責開發,旨在卻不限於使區塊鏈互聯。我將闡釋該協議的目標以及其帶來的解決方案。出於通俗易懂的目的,接下來還是採用簡單的方式進行講述,大家也可以通過閱讀白皮書或其簡版詳細瞭解這個協議。
Polkadot 使開發者和企業能夠利用其協議建立區塊鏈,即平行鏈(parachain)。只要這些平行鏈建立在Polkadot的基礎之上,它們將共享同樣的權威證明(PoA)共識。由於該型別共識嵌於 Polkadot 中,平行鏈開發者可以專注於各自區塊鏈的特異性。所有平行鏈都和一種被稱為中繼鏈(relay chain)的通用區塊鏈無縫連線,後者扮演連線所有平行鏈的角色。
安全性由網路上的若干位參與者保證:每個平行鏈擁有等量的完全節點,這些節點具體負責一個平行鏈,被稱為核對人(collator)。這些核對人收集來自使用者的交易,並對其進行驗證,然後將驗證後的交易傳輸至負責中繼鏈(Relay chain)的參與者。這些參與者被稱作驗證人(validator),他們在中繼鏈上執行相當於輕節點的節點。驗證人負責驗證和廣播發送自核對人的區塊。為此,每接受一個區塊,驗證人必須抵押他們的 DOT(中繼鏈代幣)。為了確保驗證人做出正確的行為並且不廣播無效的交易,我們引入另一類參與者,稱為釣魚人(fisherman)。他們只要證明驗證人的錯誤行為,就會獲得高額報酬。除此之外,驗證人需要獲得提名人(nominator)的批准,提名人也需要抵押他們的 DOT 來提名驗證人。驗證人不僅有權抵押,還能夠投票通過或否決某條平行鏈,因此,掌控好這些驗證人十分重要。
簡而言之,交易由一個平行鏈到另一個平行鏈的工作流如下:
使用者在平行鏈 A上建立一個交易以向平行鏈 B傳送資訊。
該交易被髮送至平行鏈 A的一個核對人。
該核對人確保該交易有效,並將其包含在一個區塊中。
該核對人向平行鏈 A的一個驗證人 展示這個區塊以及一狀態轉變證明。
該驗證人驗證得出該接收到的區塊只包含有效的交易並抵押出他們的 DOT 代幣。
當有足夠的提名人抵押他們的 DOT 並提名驗證人時,向中繼鏈廣播其區塊將得到授權。
該交易被執行,同時,來自A的資料被髮送到B。
由於上述流程皆需保持無需信任,一旦核對人傳輸錯誤資訊,該行為的證明會生成,隨後該核對人可能遭受懲罰或清除。同時,驗證人處於釣魚人的監視下;為了保住代幣,提名人會傾向於提名行為好的驗證人。
如今,人們可能會對利用 Polkadot 的協議重建任何現有區塊鏈的想法持懷疑態度。很明顯,在不久的將來,當前參與者及區塊鏈很可能仍不會利用 Polkadot 重建自己的生態系統。這是一個雞與雞蛋的問題;然而,新的區塊鏈參與者肯定會對這項技術感興趣,因為使用 Polkadot 協議既省時又節約成本。Zcash、Melonport 及一些其他參與者已經對利用 Polkadot 新建或重建他們的區塊連結串列現出了興趣。如今,即使諸如比特幣之類的區塊鏈無法短時間內說服它們的礦工網路成為核對人或驗證人,在現有區塊鏈和 Polkadot 的平行鏈之間搭建橋接器還是一個有可能實現的選擇。
由於以太坊是圖靈完備的,它應該是最容易被搭橋的區塊鏈之一。Polkadot 白皮書解釋瞭如何能夠通過所謂的內向合約(break-in contract)和外向合約(break-out contract)來將以太坊主網連線到 Polkadot 網路上。為了將資料從以太坊傳輸到 Polkadot 平行鏈上,部分驗證人要麼需要執行以太坊主網上的完全節點並監聽具體合約的日誌,要麼需要具備一種從繫結的第三方完全節點接收交易證明的機制。在後一種情況下,驗證人無需執行整個區塊鏈,但是將依賴默克爾證明(Merkle proof)實現對交易的驗證。為了保證交易的規範性(canonicality),驗證人在廣播中繼鏈上的交易前需要等待最少數量的區塊確認。
為了將資訊從Polkadot傳送到以太坊,人們可以賦予某些驗證人將他們的DOT抵押到轉出交易中的權利。一份知曉授權驗證者名單的內向合約,在收集到規定數量驗證者簽名後即可以建立交易。
就比特幣而言,讓部分Polkadot驗證人來執行多重簽名錢包及在比特幣區塊鏈間轉移交易,似乎不是沒有可能。然而,一些限制可能降低這類轉移的安全性,例如比特幣錢包認可的簽名數量(一般不超過16個)。不像有專用橋接的以太坊合約,比特幣錢包不允許以程式設計方式編輯被授權驗證人名單。這樣的限制可以通過開發專用於達到此目的橋接錢包來規避。
總之,多虧了特定橋接器的存在,大多數現有區塊鏈可以連線至Polkadot網路。為普通區塊鏈搭建橋接器可能不如以太坊簡單直接,但也是有可能實現的。與Polkadot的平行鏈交換資訊的同時,這些區塊鏈可以保留它們現有的共識型別以及網路安全參與者。是否開發橋接器將取決於用例及需要。Parity technologies已經開源了一種可通過權威證明共識將區塊鏈連線至其它任意Parity鏈的橋接器。現如今,Oracle網路已經開始採用該庫的修改版本,閱讀此文章可瞭解更多關於該用例的情況。
優勢
Polkadot的最終目標是將區塊鏈連線到一起。該協議具備幾大關鍵優勢,對於願意基於其建立區塊鏈的開發者來說尤其有趣。
該協議最為明顯的優勢就是合併安全性。開發者無需通過建立一個礦工/驗證人社群來保證區塊鏈的安全:現有的驗證人和提名人集合會負責這個方面。
第二大爭論點在於Polkadot允許的可擴充套件性。我撰寫這篇帖文時,比特幣和以太坊是最受歡迎的區塊鏈,都是基於工作量證明共識。兩者的吞吐量都不高且同時遭受網路擁塞的問題。結果,其使用者面臨更高的交易手續費及更長的交易廣播時間。每個Polkadot平行鏈應該服務於單個用例,這一點與分片概念相似。這些鏈的平行性(因此命名為平行鏈)和對權威證明共識的利用不僅有助於提升網路的吞吐量,相比基於工作量證明的普通區塊鏈來說,在能源浪費問題上也表現出巨大優勢。
儘管初看上去相當困難,Polkadot協議被設計得儘可能簡單和中立。只要能夠給出用於交易的有效性證明,任何區塊鏈技術都可以在此協議的基礎上得以建立。由於獨立於底層的平行鏈,該協議與私有聯盟鏈完美相容。實際上,某些資訊可以加密,對核對人或驗證人來說不可讀取的同時卻依然可以從他們的工作中獲益。然而,企業可以在需要時對外共享專用資訊。回想一下前文的例子,其中包裹的行蹤資訊應該只對2個特定方透露。得益於非對稱加密,發貨的電商商戶和收貨的消費者都可以讀取該行蹤資訊。對於他們來說,只有這個資訊是可讀的,以另一個金鑰加密的交易依然是不可讀的。
Polkadot不是唯一希望將區塊鏈聯合起來的協議。諸如 Cosmos、Blocknet、Aion 等協議同樣積極致力於建立區塊鏈網際網路。下一篇文章將專門對這些協議進行對比說明。
原文連結: https://medium.com/@thibauts/polkadot-the-internet-of-blockchains-explained-in-simple-words-9981ded05bc9
作者: Thibaut S
翻譯&校對: 張凌 & Elisa
稿源:以太坊愛好者(https://ethfans.org/ajian1984/articles/845)