之前我們說過,中本聰在創造
比特幣并沒有預料到比特幣今天的火熱,將區塊大小限制在 1MB。這一點導致了比特幣網絡理論上每秒最多可以處理 7 筆交易。而現在,每秒7筆交易的處理速度已經明顯無法滿足用戶需求,擴容問題引爆了整個比特幣社區,甚至還導致了社區的分裂。
為了解決擴容問題,全世界
區塊鏈技術人員提出了眾多解決方案。擴容問題的核心是,理想狀態下,區塊鏈設計者希望區塊鏈(尤其是公有鏈)有著與比特幣和
以太坊相近或更好的安全性,但同時又不希望網絡里每個節點都要處理超過一定比例的交易。換句話說,我們需要一種機制,來限制驗證交易的節點數量以提高吞吐量,同時又保證網絡里的每筆交易都是合法可信的。這聽起來很容易,但在技術上非常困難。
目前較為流行的方案包括此前我們講過的鏈下交易(Off Chain)、分片(Sharding)、鏈下計算(off-chain computation)、有向無環圖(DAG)等。今天為大家介紹分片技術。
分片(Sharing)其實是一種傳統數據庫的技術,它將大型數據庫分成更小、更快、更容易管理的部分。在區塊鏈網絡中,分片是將網絡中的每個區塊變為一個子區塊鏈(100個),子區塊鏈中可以容納交易數據,并最終組成一個在主鏈上區塊。用V神的話說,“每個分片都像是個獨立的銀河:它具有自己的賬戶空間,交易需要指定它們自己應該被發布到哪個分片中,并且分片間的通信是受限的。”
這樣,每個區塊的交易容量就大概擴大了100倍;而且這種設計還有利于未來的繼續擴展,整個擴展計劃目前也被大致分為4個階段:在進行第一階段的分片之后,
第二階段為two-way pegging,即雙向限定;
第三階段,選項a :將collation header作為uncle加入,而不是交易;
第三階段,選項b :將collation header加入一個數組,數組中的元素必須為分片的collation header或者空字符串,并且額外的數據必須為這個數組的哈希(軟分叉);
第四階段(tight coupling,即緊耦合):如果區塊指向無效或不可用的collation,那么區塊也將變為無效;增加數據可用性證明。
總體來說,分片的思想是把區塊鏈的整體狀態分割成不同的“片”,每部分狀態都由不同的節點存儲和處理。每個分片都只處理整體狀態的一小部分,因此可以做到并行處理。區塊鏈分片就像傳統數據庫的分片一樣,但還需額外考慮如何在去中心化的節點集合里維持安全性和合法性。
版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。