區塊鏈是計算機和經濟學結合的產物,通過經濟學原理,利用計算機技術實現生產關系的變革,從而減少信任的成本,提升合作的效率。從根本上來說,區塊鏈技術是由多個獨立的層級組成的,包括存儲層、網絡層、擴展層和應用層。
存儲層是區塊鏈最底層技術,首先應該考慮的是性能和易用性,系統的整體性能,主要取決于網絡或數據存儲的I/O性能,網絡I/O優化空間不大,但是本地數據存儲的I/O是可以優化的。比如,比特幣選擇的是谷歌的LevelDB,這個數據庫讀寫性能很好,但是很多功能需要開發者自己實現;網絡層就是各種共識算法、加密簽名算法等;存儲層和網絡層更像是計算機操作系統,而擴展層更像是計算機的各種驅動,智能合約,側鏈,狀態通道等屬于這一層;應用層類似于電腦中的各種軟件程序,是消費大眾可以使用的產品,這一層除了各類的錢包,市場上幾乎沒有什么應用。
業界總結了區塊鏈目前面臨的可擴展性三難困境
可擴展性三難困境:單個區塊鏈系統只能擁有可擴展性、安全性及去中心化三種屬性中的兩種。結論是,我們必須依靠更復雜的工具來兼得三者。
結合可擴展性三難問題,小編總結如下提高擴展性的方法:
1 分片
1)網絡分片:也可以叫多鏈技術或者是側鏈技術,就是將很多區塊鏈異構組成區塊鏈集合。其中每一條鏈都可以有自己的加密貨幣和共識算法。
2)交易分片;交易分片技術就是把網絡上的交易分成不同的碎片,網絡上的節點也分成不同的碎片,交易碎片由網絡上的不同節點碎片處理,因此每個節點碎片只需處理一小部分傳入的交易,并且通過與網絡上的節點碎片并行處理就能完成大量的驗證工作。
3)狀態分片:也叫狀態通道,本質上是通過在不同用戶之間建立一個雙向通道,把區塊鏈上的許多操作在鏈外進行管理,等完成鏈外操作后多方簽名確認后,才將最終結果上鏈。閃電網絡和雷電網絡就是基于這個原理。
2 隔離見證
比特幣提升擴展性的一種方式,交易信息和見證信息分離。
3 增加區塊大小
區塊越大,每秒處理量就越高。但這在具體實踐中是有問題的,創建塊時,必須將其傳送給網絡中的其他人,而網絡無法快速處理龐大的文件,所以這種解決方案的能力是有限的。
4 共識層面進行改進
pow改為pos,DPOS,PBFT等。
1)POS:持有的token越多,參與記賬的概率就越大,就有機會挖到礦。
2)DPOS:你持有token就有了選舉權,可以選取你信任的節點參與記賬。
3)PBFT:客戶端發送請求給主節點,主節點廣播請求給其他節點,節點收到請求后會選擇接受和不接受,若接受則會向其他結點發送prepare消息,若一段時間之后收到2f+1個不同節點的prepare消息就向其他節點發布commit消息,若一段時間之后收到2f+1個不同節點的commit消息后達成共識,執行請求寫入數據。無人作惡,容錯節點(N-1)/3。
若假設消息內容不會被篡改,無拜占庭將軍問題!則可以把共識機制變為RAFT,PAXOS。
4)RAFT:follower,candidate,leader,領導者選舉:獲得大多數節點的票;日志復制:leader發送日志副本給follower,follower把日志副本拷貝到自己數據庫給leader發送確認,leader告訴follower已確認。無人作惡,故障節點(N-1)/2。
5)PAXOS:少數服從多數。確定提議者,誰報的號大誰就是提議者;提議者提出意見,接受者反饋意見,多數接受者接受則提議通過。無人作惡,故障節點(N-1)/3。
|
新聞熱點
疑難解答