1. 程式人生 > >公有鏈,私有鏈,聯盟鏈

公有鏈,私有鏈,聯盟鏈

私有鏈 以及 成了 機構 外網 分開 tin 約定 使用

(1)公有鏈

所謂公有就是完全對外開放,任何人都可以任意使用,沒有權限的設定,也沒有身份認證之類,不但可以任意參與使用,而且發生的所有數據都可以任意查看,完全公開透明。比特幣就是一個公有鏈網絡系統,大家在使用比特幣系統的時候,只需要下載相應的軟件客戶端,創建錢包地址、轉賬交易、挖礦等操作,這些功能都可以自由使用。公有鏈系統由於完全沒有第三方管理,因此依靠的就是一組事先約定的規則,這個規則要確保每個參與者在不信任的網絡環境中能夠發起可靠的交易事務。通常來說,凡是需要公眾參與,需要最大限度保證數據公開透明的系統,都適用於公有鏈,比如數字貨幣系統、眾籌系統、金融交易系統等。

這裏要註意,在公有鏈的環境中,節點數量是不固定的,節點的在線與否也是無法控制的,甚至節點是不是一個惡意節點也不能保證。我們在講解區塊鏈的一般工作流程的時候,提到過一個問題,在這種情況下,如何知道數據是被大多數的節點寫入確認的呢?實際在公有鏈環境下,這個問題沒有很好的解決方案,目前最合適的做法就是通過不斷地去互相同步,最終網絡中大多數節點都同步一致的區塊數據所形成的鏈就是被承認的主鏈,這也被稱為最終一致性。

(2)私有鏈

私有鏈是與公有鏈相對的一個概念,所謂私有就是指不對外開放,僅僅在組織內部使用的系統,比如企業的票據管理、賬務審計、供應鏈管理等,或者一些政務管理系統。私有鏈在使用過程中,通常是有註冊要求的,即需要提交身份認證,而且具備一套權限管理體系。有朋友可能會有疑問,比特幣、以太坊等系統雖然都是公鏈系統,但如果將這些系統搭建在一個不與外網連接的局域網中,這個不就成了私有鏈了嗎?從網絡傳播範圍來看,可以算,因為只要這個網絡一直與外網隔離著,就只能是一直自己在使用,只不過由於使用的系統本身並沒有任何的身份認證以及權限設置,因此從技術角度來說,這種情況只能算是使用公鏈系統的客戶端搭建的私有測試網絡,比如以太坊就可以用來搭建私有鏈環境,通常這種情況可以用來測試公有鏈系統,當然也可以適用於企業應用。

在私有鏈環境中,節點數量和節點的狀態通常是可控的,因此在私有鏈環境中一般不需要通過競爭的方式來篩選區塊數據的打包者,可以采用更加節能環保的方式,比如在上述共識機制的介紹中提到的PoS(Proof of Stake,權益證明)、DPoS(Delegate Proof of Stake,委托權益證明)、PBFT(Practical Byzantine Fault Tolerance,實用拜占庭容錯算法)等。

(3)聯盟鏈

聯盟鏈的網絡範圍介於公有鏈和私有鏈之間,通常是使用在多個成員角色的環境中,比如銀行之間的支付結算、企業之間的物流等,這些場景下往往都是由不同權限的成員參與的,與私有鏈一樣,聯盟鏈系統一般也是具有身份認證和權限設置的,而且節點的數量往往也是確定的,對於企業或者機構之間的事務處理很合適。聯盟鏈並不一定要完全管控,比如政務系統,有些數據可以對外公開的,就可以部分開放出來。

由於聯盟鏈一般用在明確的機構之間,因此與私有鏈一樣,節點的數量和狀態也是可控的,並且通常也是采用更加節能環保的共識機制。

公有鏈,私有鏈,聯盟鏈