區塊鏈的底層機制是非常復雜的,但是我們將通過以下幾點簡要概述區塊鏈的單項技術發展。
網絡層發展
網絡層是區塊鏈中的底層支持,控制著數據的開放權限與節點準入等問題。由于對數據公開需求不同,區塊鏈發展出了不同的網絡組織形式,主要包括以下幾種:
· 公有鏈
公有鏈即區塊鏈最初始的網絡形式,任何人都可以讀取數據、發送交易且交易能夠獲得有效確認的共識區塊鏈。它不受任何人控制,也不歸任何人所有,被認為是”完全去中心化”的區塊鏈,比特幣、以太坊就就是典型的公有鏈。
然而由于每個人都可以記賬,交易確認是時間會很長,整個區塊鏈網絡的效率較低,例如比特幣和以太坊的交易吞吐量分別僅為7TPS和30TPS。
· 私有鏈
私有鏈僅對單獨的個人或是實體開放,由一個實體來控制所有的交易,即寫入權掌握在某個人或是某個組織手中,其具有交易速度快、隱私性強、規則可修改、交易成本低等特點。私有鏈嚴格的準入機制,鏈中的節點具有很高的可信度,因此交易確認并不需要所有節點參與,這就使其具備了極高的交易速度,幾乎與常規數據庫速度在同一個量級。同時嚴格的準入機制還為私有鏈帶來了高隱私性的特點,鏈上的數據不會被鏈外的任何人獲取。因為私有是被個人或組織控制的,控制人可以修改鏈的規則,例如拋棄交易或還原交易等,而且所有節點受到控制人控制那么就不再需要為節點的記賬等工作發放獎勵,且各個節點間也不需要完全的協議,因此私有鏈幾乎沒有交易成本。
· 聯盟鏈
聯盟鏈是去中心化程度介于公有鏈與私有鏈中間的一種鏈,其只針對某個特定群體的成員和有限的第三方開放,其內部指定多個預選節點為記賬人,每個塊的生成由所有的預選節點共同決定,其他的節點可以參與交易但沒有記賬權限。或者是條件開放區塊鏈的根哈希與應用程序接口,限制訪問次數或是訪問者身份。聯盟鏈往往被用于機構間的協作,同時具備私有鏈和公有鏈的優點,但又因為其半私有的形式,導致其各方面的優點都不突出,是對去中心化、隱私性與區塊鏈性能的一種折中方案。聯盟鏈因為可以解決機構間合作問題,是目前金融領域運用最多的一種區塊鏈網絡形式。
除了數據公開性的差異化發展,區塊鏈擴展性的也有一定的發展,一定程度上解決了不同區塊鏈間信息孤島的問題,具體在以下幾種不同的解決方案中有所體現:
· 跨鏈
跨鏈是通過特定的數據同步機制,將價值在不同區塊鏈之間進行轉換的技術,實現區塊鏈間的價值流通。跨鏈主要包括資產兌換與資產轉移兩種,資產兌換的本質與貨幣兌換有些類似,兌換時不會改變每個區塊鏈上的價值總值,只是以跨鏈機制為中介,在不同持有人之間進行了價值兌換;而資產的轉移則是直接鎖定原鏈上的資產,并在目標鏈上鑄造相同價值的資產。目前主流的跨鏈機制有選舉一組節點在兩條鏈之間進行驗證和證明的公證人機制、通過資產鎖定并設置解鎖時間與條件的哈希鎖定機制、分布式控制資產私鑰并映射的分布式私鑰控制機制等。
· 側鏈
與側鏈相對應的概念是主鏈,早期的側鏈主要是為提高比特幣吞吐量,而當前主要應用在數字資產在不同的區塊鏈的轉移,也就是主鏈與側鏈之間的價值轉移。轉移原理為通過雙向錨定凍結主鏈上的資產,并通過特定的協議使資產在側鏈上產生并流通,當側鏈完成流通之后資產再回到主鏈中,即解除主鏈資產的凍結。因此從原理上看,側鏈其實是一種特殊的跨鏈。只要符合側鏈協議,任何區塊鏈都可以成為側鏈,且側鏈的設計不受主鏈的制約,所以當主鏈的拓展性較差時,可以使用側鏈來對主鏈的功能與性能進行拓展,在一定程度上分擔主鏈的壓力。
· 多鏈
多鏈是指同一個區塊鏈系統具有多條鏈,每條鏈相互獨立并且可以并行執行交易,可以解決單鏈架構隔離性、隱私性、并發能力差的問題。系統中所有的鏈都是架構的一部分,若架構內多條鏈的共識機制相同可稱為同構多鏈,是與異構跨鏈的相對應的一組概念,同時同構多鏈也是側鏈的變種。若多條鏈的共識機制不同則稱為異構多鏈架構,例如EKT通用積分生態就是并行多主鏈架構,其中可以有多條并行的主鏈,且不同的主鏈可以采用不同的共識機制,為區塊鏈的應用提供了更豐富的場景。