公有鏈有未來還是聯盟鏈有未來

在我們討論區塊鏈時,分類是不可避免的一件事情。想必大家都聽說過「公有鏈、聯盟鏈、私有鏈、許可鏈、無需許可鏈」這些詞彙,雖然我們已經耳熟能詳,然而這些名詞並沒有公認的定義。我們在討論中只能各憑自己的理解,用這些名詞指代大致上相同實際上有些區別的概念,由此造成了上面那樣的溝通困難。本文將對這些名詞,從最基本的緯度進行分析。

祕猿科技區塊鏈小課堂第 5 期


維度 1:許可鏈/無需許可鏈

無需許可鏈(permissionless blockchain)

網絡參與者可以自由的加入和退出,也即加入或退出網絡的成本接近於零。在討論中聽到的“公鏈”、“公有鏈”或者“基礎鏈”的時候,我一般會認爲是在說無需許可鏈。

這一類型的區塊鏈包括 Bitcoin/Litecoin/Peercoin/Monero/ZCash/Ethereum 等等。Bitcoin 是無需許可鏈的開山鼻祖,通過 PoW 巧妙的實現了世界上第一個無需許可的分佈式系統,2015 年之前的區塊鏈項目基本上屬於這一類。Nervos CKB 是無需許可鏈,第一階段使用 PoW 共識。

無需許可鏈的去中心化程度最高,其發展也高度依賴社區自治,是最有潛力成爲全球基礎設施的區塊鏈類型。

許可鏈(permissioned blockchain)

網絡參與者需要獲得某種形式的許可纔可以加入或退出,加入或退出網絡的成本大於零。“許可鏈”在討論中常常與“聯盟鏈”混用,後面我們會看到這兩者的區別。

許可鏈的思潮在 2014 年興起,彼時金融機構已經發現了數字貨幣、智能合約和區塊鏈這片新大陸,並開始思考如何將區塊鏈技術引入自己的業務。對記名資產的登記和交易需求,以及金融業務中 KYC/AML 的需要,讓人們開始認識到身份的必要性,以及由此帶來的重構區塊鏈的可能1。身份的存在可以很自然的解決讓無需許可鏈頭疼的女巫攻擊問題,因此也就可以避免 PoW 而使用傳統BFT 共識,可以獲得更低的能耗和更好的性能。比較早期的公司如 Eris Industries(現改名 Monax)在 2014 年成立,是許可鏈的先驅。R3 也是在 2014 年成立,雖然 Corda 自稱爲分佈式賬本而不是許可鏈(也確實不僅僅是鏈,而是一個沒有區塊、由交易編織成的網絡),但它很明顯是許可鏈思潮下的產物。Hyperledger Fabric 和我們自己設計開發的 CITA 都是許可鏈。

許可鏈一般由行業聯盟或是科技公司設計、實現和推動,具有接近中心化方案的性能,注重金融和企業場景。

細化

如果將網絡參與者分爲出塊節點、全節點和用戶(通過錢包訪問全節點使用區塊鏈提供的服務)[3],我們可以進一步細化無需許可鏈和許可鏈的分類。

圖片描述

我將看起來沒有實用價值的組合標記爲 Nonsense,不做討論。

用戶許可鏈

在用戶許可鏈中,節點加入、退出、參與共識都不需要許可,但是用戶需要獲得許可才能使用區塊鏈提供的服務。雖然目前還沒有看到用戶許可鏈的實例,但我認爲用戶許可鏈是一個非常有意思,值得探索的方向。如果把節點屬於網絡層,構成了區塊鏈的基礎;用戶空間存在於節點共同維護的賬本/共同知識庫之中,是區塊鏈架構中的上層。無需許可的基礎層和需要許可的上層是一個很和諧的組合:基礎層無需許可,無論什麼樣的節點都可以參與,網絡性質中立,保持了無需許可鏈的全球基礎設施屬性;上層需要許可,用戶具有某種形式的身份,更加適合需要身份的各類商業和金融場景

圖片描述

用戶許可鏈需要解決的難題也不少:如何實現一個去中心化的身份認證服務?如何在基礎層對這個身份協議提供支持?能夠識別身份之後,基礎層需要根據一定的規則,選擇是否爲用戶提供服務。誰來制訂這些規則?如何制訂這樣的規則?如何保持規則的中立性?

出塊許可鏈

出塊許可鏈只要求出塊節點獲得許可。由於全節點可以自由加入,區塊鏈歷史和當前狀態都不會被出塊節點壟斷,全節點可以驗證並決定是否接受新區塊,整個系統依然是透明可驗證的,其可靠性(原諒我使用一個模糊的“可靠性”來指代包含可用性、安全性等等在內各種性質,下同)比中心化系統高,比用戶許可鏈/無需許可鏈低。如果獲得許可的出塊節點數量不大,系統性能也會非常不錯。

值得指出的是,如果我們將“許可”的定義放寬,出塊許可鏈將包含我們常稱爲“公有鏈”的一些項目 —— 基於代幣抵押或是代幣投票的 PoS,本質上是以代幣作爲一種許可,限制出塊節點數量,達到降低共識過程的消息複雜度以提升系統性能的目標。這樣一類 PoS 區塊鏈所展現出來的性質,與出塊許可鏈更接近,與無需許可鏈更遙遠。出塊許可鏈與完全許可鏈之間的主要區別在於全節點和用戶是否需要許可,與無需許可鏈之間的主要區別在於出塊節點集合大小是固定還是動態。

節點許可鏈

節點許可鏈的出塊節點和全節點都需要許可,此時只有擁有許可的節點才能複製和驗證區塊鏈數據,用戶無法獲得賬本/共同知識庫的獨立複本,也無法獨立進行驗證。這樣的系統其可靠性弱於出塊許可鏈,比中心化系統略高,性能與出塊許可鏈接近。由於數據只會在小範圍內複製,數據隱私性更好。

根據不同的部署,祕猿科技高性能區塊鏈內核 CITA,既可以是出塊許可鏈,也可以是節點許可鏈。

維度 2:公有鏈/聯盟鏈/私有鏈

讓我們換一個維度,按照區塊鏈的服務對象來分:

公有鏈(public blockchain):爲公衆提供服務的區塊鏈。
聯盟鏈(consortium blockchain):存在一個區塊鏈之外的實體聯盟,只對聯盟內成員提供服務的區塊鏈。
私有鏈(private blockchain):存在一個區塊鏈之外的實體,只對實體內成員提供服務的區塊鏈。

「公有鏈」從 public blockchain 翻譯而來,而 public 直譯應爲「公衆、公共」。之所以會翻譯成「公有鏈」,我想大概是由於早期的 public blockchain都有內在的代幣機制,使用者即代幣持有者,因此也無不妥。但按照今天的眼光看,public blockchain 理解爲「公共鏈」更爲合適,「公共鏈」無差別的對所有公衆提供服務,但公衆不一定是「公共鏈」的所有者。我在討論中還是沿用「公有鏈」這個詞,但我用它指代的其實是「公衆鏈」。

聯盟鏈/私有鏈在具體實施上有不同的許可鏈選項:可以是節點許可鏈、出塊許可鏈或者完全許可鏈,由此也會有相應的優缺點,在此不再重複。這些不同選項的共同之處是,出塊節點都是需要許可的,共識範圍有限,犧牲了可靠性換來了更好的性能和隱私。未來聯盟鏈/私有鏈如果能夠以無需許可鏈作爲信任基礎,其可靠性和信用也可以提高到與無需許可鏈接近的程度,實際上會成爲無需許可鏈擴容的助力,這是 Nervos CKB 團隊、 Cryptape Research 在探索的方向。如果在跨鏈協議的幫助,聯盟鏈/私有鏈之間可以低成本的進行互操作,聯盟鏈/私有鏈上資產的流動性也將提高到與無需許可鏈上的資產流動性接近的程度,這是 Cryptape CITA 團隊在探索的方向。

圖片描述

公有許可鏈(public permissioned blockchain)

考慮維度 1 和維度 2 之間的關係,很容易發現聯盟鏈和私有鏈都隱含了對用戶以及節點的身份限制,因此必然是許可鏈。有意思的問題是:公有鏈一定是無需許可鏈嗎?

按照上文對公有鏈的定義,對公衆提供服務並不隱含對用戶身份的限制。公有鏈可以對匿名的公衆提供服務,也可以不加選擇的對有身份的公衆提供服務。公有鏈中的節點是否需要許可,並不影響一條區塊鏈是否對公衆提供服務。因此在我的觀念中,一條區塊鏈可以同時是公有鏈和許可鏈,這兩者之間沒有矛盾。我把既是公有鏈又是許可鏈的區塊鏈稱爲公有許可鏈[4]。

我們日常談到公有鏈時往往想的是無需許可鏈,但是實際上不少公有鏈更接近公有許可鏈的範疇,最典型的例子是 Ripple。公有許可鏈可能的實現形式很多,前面討論過的許可鏈、出塊許可鏈、節點許可鏈、用戶許可鏈都可以是公有許可鏈。由於身份的存在,公有許可鏈既有許可鏈的優點,其適用的場景又與無需許可鏈互爲補充,相信將在未來的加密經濟生態中佔有重要的位置。

Summary

聯盟鏈、私有鏈、許可鏈常被批評的一點是缺乏內生的經濟激勵設計,因此“根本不是區塊鏈”。這個觀點我們並不贊同。一來經濟激勵設計和服務對象範圍、是否需要許可之間並不存在什麼矛盾,我們只是現在還沒有看到有內在經濟激勵的樣本;二來具有內生的經濟激勵是否是成爲區塊鏈的必要條件依然是一個值得探討的問題。

最後回答文章開頭的問題:未來將有許多種形態的區塊鏈以及非區塊鏈共存。它們將相互協作,相互促進,相互保障,共同編織一個高效可靠的數字經濟網絡。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章