如何進行區(qū)塊鏈的可擴展性問題及解決方案對比

如何進行區(qū)塊鏈的可擴展性問題及解決方案對比,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站設計、成都外貿(mào)網(wǎng)站建設服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)椒江免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉變。

區(qū)塊鏈的性能問題

VISA是目前世界上廣泛使用的信用卡品牌,區(qū)塊鏈要達到實用水平,性能上至少需要能跟VISA之類的支付系統(tǒng)作比較。根據(jù)VISA在2015年的記錄,全年共產(chǎn)生92,064百萬筆支付交易,平均2920tps,按平均每筆交易512字節(jié)左右計算,全年交易數(shù)據(jù)量約47TB。

而目前主流區(qū)塊鏈性能情況是,比特幣每秒只能進行大約7筆交易;以太坊每秒10-20筆。目前這些區(qū)塊鏈的交易性能都無法與VISA相比。更嚴重的是,目前比特幣和以太坊的礦機都需要存儲全量數(shù)據(jù),而單個機器的存儲容量是有限的,若無法解決這個問題,即使交易性能提升了,若按每年新增數(shù)據(jù)量47 TB算,那么這些數(shù)據(jù)很快就會超過單機的容量,到時候整個區(qū)塊鏈網(wǎng)絡都無法繼續(xù)運行。

那么,比特幣和以太坊這種擁有海量節(jié)點的區(qū)塊鏈系統(tǒng),為什么性能卻這么低呢?為什么區(qū)塊鏈的可擴展性這么差呢?

原因分析

區(qū)塊鏈是去中心化的賬本技術,需要保證開放性、自治性、不可篡改等特性。去中心化是指使用分布式核算和存儲,不存在中心化的硬件或管理機構,任意節(jié)點的權利和義務都是均等的,系統(tǒng)中的數(shù)據(jù)塊由整個系統(tǒng)中具有維護功能的節(jié)點來共同維護。也就是說,系統(tǒng)中任意節(jié)點都需要對交易數(shù)據(jù)進行全量計算和存儲。因此,區(qū)塊鏈是沒有可擴展性的,即系統(tǒng)的總體性能受限于單個節(jié)點的性能上限,即使加入了大量節(jié)點,系統(tǒng)的總體性能也無法提升。

可擴展性是傳統(tǒng)分布式系統(tǒng)的基本特性,但區(qū)塊鏈由于去中心化的要求,可擴展性卻難以滿足。業(yè)界總結了一個三元悖論描述去中心化與可擴展性之間的矛盾,它尚未被嚴格證明,只能被稱為猜想,但實際系統(tǒng)設計過程中卻能感覺到時時受其挑戰(zhàn):

去中心化(Decentralization),安全性(Security)和可擴展性(Scalability)這三個屬性,區(qū)塊鏈系統(tǒng)無法同時滿足,最多只能三選其二。

如何進行區(qū)塊鏈的可擴展性問題及解決方案對比

上圖演示了區(qū)塊鏈如何在這三個因素之間作選擇及對應的策略,例如若若要滿足安全性與去中心化,則需要所有節(jié)點參與共識、計算、全量存儲,但由此帶來的問題是失去可擴展性,也就是系統(tǒng)的總體性能無法隨著節(jié)點的增多而提升;若要滿足可擴展性與安全性,則需要中心化管理,需要保證參與共識的節(jié)點是可信的;若要滿足可擴展性與去中心化,則采用分散存儲、計算的策略,不做全量共識,則攻擊網(wǎng)絡的難度降低,安全性難以保證。

提升區(qū)塊鏈系統(tǒng)性能的方案

我們知道,影響區(qū)塊鏈交易性能的主要因素包括共識機制、交易驗證、廣播通信、信息加解密等幾個環(huán)節(jié)。從這些環(huán)節(jié)入手,我們可以得到一些提升性能的方法。

  • 共識機制

從PoW到PoS再到DPoS和各種BFT類算法,共識機制不斷創(chuàng)新,區(qū)塊鏈平臺性能也得到大幅提升。

  • 交易驗證

從交易驗證機制角度出發(fā),目前有幾種優(yōu)化處理方式:

1)閃電網(wǎng)絡(Lightning Network)和狀態(tài)通道(State Channels),這兩種策略是保持底層的區(qū)塊鏈協(xié)議不變,將交易放到鏈下執(zhí)行,通過改變協(xié)議用法的方式來解決擴展性問題。鏈下的部分可以用傳統(tǒng)的中心化的分布式系統(tǒng)實現(xiàn),性能具有可擴展性。在這種策略下,分布式賬本上只是記錄粗粒度的賬本,而真正細粒度的雙邊或有限多邊交易明細,則不作為交易記錄在分布式賬本上。缺點是存在中心化的系統(tǒng)。

2)分片處理(sharding),以太坊項目正在研發(fā)中的分片(shard)方案的總體思路是每個節(jié)點只處理一部分交易,比如一部分賬戶發(fā)起的交易,從而減輕節(jié)點的計算和存儲負擔。

3)多鏈架構(Multi-chain)的思路則是將原本的一條鏈分成多條鏈,每條鏈都負責部分計算和存儲業(yè)務,并且有可擴展性,即鏈的數(shù)量可以隨著業(yè)務量和數(shù)據(jù)的增加而增加,系統(tǒng)的總體性能隨著鏈的數(shù)量的增加而提升,系統(tǒng)的存儲空間也能隨著鏈的數(shù)量的增加而擴大。

  • 廣播通信

P2P網(wǎng)絡是區(qū)塊鏈的核心技術之一,因此P2P網(wǎng)絡通信的效率對性能的影響非常重要。為了能改善廣播通信性能,需要提高節(jié)點機器的物理配置,提供高速網(wǎng)絡連接,并采用減少廣播的共識算法,如DPoS等。

  • 信息的加解密

信息的加解密是區(qū)塊鏈的關鍵環(huán)節(jié),主要是哈希函數(shù)和非對稱加密兩類算法。區(qū)塊鏈系統(tǒng)中可以采用更高性能的加密算法以提升交易驗證的性能。

方案對比

上述優(yōu)化方法中,共識機制、廣播通信、信息加解密是算法層面的優(yōu)化,盡管這些方案也是重要的優(yōu)化,但其沒有解決根本性的問題,其性能提升仍然受限于單機性能,不是可擴展的,因此性能提升有限,本文不再詳述;交易驗證的幾個優(yōu)化方案則是可擴展的方案,其中閃電網(wǎng)絡和狀態(tài)通道是鏈下執(zhí)行的方案,采用中心化的系統(tǒng)提升區(qū)塊鏈性能,與區(qū)塊鏈去中心化的理念相悖,而且使用復雜、用戶體驗差(例如閃電網(wǎng)絡要求交易中的雙方以及中間人都必須同時在線、線下系統(tǒng)開發(fā)復雜因為要尋找可用的支付通道、不適用于大額交易等),無法得到廣泛使用。因此EOS、以太坊、Cosmos及迅雷鏈等高性能區(qū)塊鏈項目均采用分片或多鏈方案。

分片或多鏈方案的思路是一樣的,都是讓每個分片或分鏈進行部分交易數(shù)據(jù)的處理和存儲,每個分片和分鏈可以并行處理不同的交易數(shù)據(jù),這樣分片或分鏈的數(shù)量越多,系統(tǒng)的總體性能就越高,這兩者都是可擴展性很強的方案。

  • EOS的多鏈實現(xiàn)方案

EOS的技術白皮書中并沒有描述多鏈的實現(xiàn)方案,只描述了支持跨鏈通信的IBC(Inter Blockchain Communication)協(xié)議,跨鏈交互通過簡化生成消息存在的證明和消息序列的證明來實現(xiàn)。EOSIO聲稱主鏈可以支持3000以上的TPS,通過IBC可達到100萬TPS。

EOS的多鏈架構其實是側鏈方案。開發(fā)者可以單獨部署一條EOS側鏈(公鏈、私鏈都可以),運行自己的Dapp,這些側鏈有可以有自己的委員會,見證人以及計算資源,有自己的代幣,這些代幣有自己的增發(fā)方式,而且代幣可以和EOS通過接口進行錨定去實現(xiàn)包括鎖定在內(nèi)的某種操作。側鏈最大的特征雙向錨定(two-way-peg)技術,它使得在側鏈流通的Token價格總是與EOS價格保持一定比例或者直接采用EOS。

因此EOS的多鏈架構并不是對主鏈本身進行可擴展性改造,只是期望通過子鏈來分擔主鏈的壓力。

  • 以太坊的分片技術(Sharding)

分片(Sharding)是以太坊正在開發(fā)中的技術,其大致設計思路是:將區(qū)塊鏈網(wǎng)絡中的每個區(qū)塊變?yōu)橐粋€子區(qū)塊鏈,子區(qū)塊鏈中可以容納若干(目前為100個)打包了交易數(shù)據(jù)的Collation(大概可以稱為“校驗塊”,為了在分片的情景中將其與區(qū)塊的概念區(qū)分開),這些Collation最終組成一個在主鏈上區(qū)塊;因為這些Collation是整體作為區(qū)塊存在的,所以其數(shù)據(jù)必定是全部由某個特定的礦工所打包生成,本質(zhì)上和現(xiàn)有協(xié)議中的區(qū)塊沒有區(qū)別,所以不再需要增加額外的網(wǎng)絡確認。這樣,每個區(qū)塊的交易容量就大概擴大了100倍;而且這種設計還有利于未來的繼續(xù)擴展。

跨分片通信: 利用 UTXO 模型,并通過在主鏈上進行交易和創(chuàng)建一個 receipt(帶有 receipt ID),用戶可以將以太存入一個指定分片。分片鏈上的用戶可以給定 receipt ID 創(chuàng)建一個消費 receipt(receipt-consuming)的交易,來花費該 receipt。但UTXO適用于交易,對于合約狀態(tài)數(shù)據(jù)存儲不適用。

如何進行區(qū)塊鏈的可擴展性問題及解決方案對比3

  • Cosmos的多鏈技術

Cosmos項目的目的是解決區(qū)塊鏈交互操作和可擴展性問題,其區(qū)塊鏈間通訊協(xié)議可以實現(xiàn)區(qū)塊鏈的互聯(lián),支持不同區(qū)塊鏈之間的資產(chǎn)轉移。

網(wǎng)絡主要由兩部分組成,Cosmos Hub和若干個Zone。

如何進行區(qū)塊鏈的可擴展性問題及解決方案對比

Cosmos網(wǎng)絡里第一條鏈是Hub,從名字和功能上都可以把它理解為Cosmos的中心鏈或者管理員鏈,所有其它區(qū)塊鏈的交易都會在Hub記錄,一條區(qū)塊鏈上的token可以通過Hub轉移到另一條區(qū)塊鏈。Hub是Cosmos網(wǎng)絡的核心,和其余的Zone是不平等的,從嚴格意義上講Cosmos網(wǎng)絡不是真正的分布式系統(tǒng),如果Hub發(fā)生了單點故障(當然Hub本身是分布式的,發(fā)生問題的機率很?。珻osmos網(wǎng)絡的很多特性會不可用。關于這點,白皮書中強調(diào)Hub必須得到嚴格保護。

每個Zone可以看做是單獨的區(qū)塊鏈空間。每個Zone會和Hub保持狀態(tài)同步。Hub通過去中心化的驗證人組來保證安全性。Zone1向Zone2做跨鏈消息時,Zone1先生成消息包,并將其證明發(fā)布在Hub上,接下來Hub會生成Zone1的跨鏈消息包已在Hub上的存在證明的證明發(fā)布于Zone2,接下來Zone2收妥消息包,并給出證明發(fā)布于Hub上,最后,Hub再給出Zone2的收妥證明的證明發(fā)布于Zone2。完成整個跨鏈消息傳遞。

  • 迅雷鏈同構多鏈架構

迅雷鏈是同構多鏈的架構,即每條鏈的結構相同、地位平等。即系統(tǒng)由一條條相對獨立(獨立進行共識)的鏈組成,每條鏈有多個節(jié)點,每個節(jié)點被分配到其中一條鏈上,不同的賬戶數(shù)據(jù)被錨定在不同的同構鏈上,然后接入層將交易路由到發(fā)送方所在的鏈上進行區(qū)塊打包與共識。系統(tǒng)中鏈的數(shù)量能夠按業(yè)務需求動態(tài)增加。因此同構多鏈的架構首先保證了系統(tǒng)的可擴展性。

如何進行區(qū)塊鏈的可擴展性問題及解決方案對比

不同于EOS等區(qū)塊鏈系統(tǒng)需要昂貴的高性能服務器作為記賬節(jié)點,迅雷鏈使用廉價省電的玩客云設備作為記賬節(jié)點,構建了自己的大規(guī)模共享計算平臺。目前玩客云節(jié)點數(shù)量已超過150萬個節(jié)點數(shù),如此龐大的節(jié)點數(shù)量,對區(qū)塊鏈系統(tǒng)的可擴展性提出了嚴峻的挑戰(zhàn)。挑戰(zhàn)主要來自兩個方面:

1)玩客云設備廉價省電,性能也低,這就要求共識算法必須使用綠色環(huán)保、適應家庭用戶的網(wǎng)絡環(huán)境的算法。針對這個挑戰(zhàn),迅雷鏈在改進的PBFT的基礎上,還融合了DPoS的思想,在每條鏈上,都會周期性地(例如每隔5000個區(qū)塊)選舉出驗證人節(jié)點參與共識。與傳統(tǒng)的DPoS不同之處在于,迅雷鏈并不是根據(jù)礦工持有的代幣數(shù)量或幣齡作為選舉標準投票權重,而是按玩客云節(jié)點的存儲容量、網(wǎng)絡穩(wěn)定性、帶寬、時延等標準作為衡量標準,以獲得更好的公平性和網(wǎng)絡效率。

2)玩客云節(jié)點數(shù)量龐大,家庭網(wǎng)絡環(huán)境復雜,要求區(qū)塊鏈系統(tǒng)必須設計成可擴展性高、自治能力強的架構。得益于同構多鏈的架構非常強大的可擴展性,迅雷鏈能夠充分利用海量玩客云節(jié)點,可以將鏈數(shù)“無限”擴展,從而具備百萬級的并發(fā)處理能力。

綜上所述,迅雷鏈采用多鏈架構實現(xiàn)了可擴展性 + 使用PBFT實現(xiàn)了強一致性 + 使用更綠色環(huán)保和公平的DPoS進一步提升了共識效率、也得到了更高的可用性。從去中心化(Decentralization),安全性(Security)和可擴展性(Scalability)三要素的角度看,由海量的廣泛分布的玩客云設備支撐了去中心化和安全性,采用多鏈架構以實現(xiàn)可擴展性。

共識機制、廣播通信、信息加解密等算法層面的優(yōu)化,無法解決大規(guī)模去中心化系統(tǒng)的可擴展性問題;而閃電網(wǎng)絡和狀態(tài)通道是鏈下執(zhí)行的方案,則與區(qū)塊鏈去中心化的理念相悖,而且使用復雜、用戶體驗差,無法得到廣泛使用。因此前沿的區(qū)塊鏈項目均采用可擴展性強的分片或多鏈方案。

其中,EOS目前是多線程的架構,總體性能還是受到單臺機器的性能所限,需要昂貴的服務器來運行區(qū)塊鏈節(jié)點,可擴展性并不算強;以太坊正在開發(fā)中的分片技術則需要主鏈負責驗證子鏈的區(qū)塊,由于主鏈會存在性能瓶頸,因此子鏈數(shù)量受到限制(100個子鏈);Cosmos也是同樣的問題,Hub必須得到嚴格保護;迅雷鏈采用的同構多鏈架構則避免了上述缺點,適用于大規(guī)則廉價節(jié)點的部署, 可以將鏈數(shù)“無限”擴展,從而具備百萬級的并發(fā)處理能力。

看完上述內(nèi)容,你們掌握如何進行區(qū)塊鏈的可擴展性問題及解決方案對比的方法了嗎?如果還想學到更多技能或想了解更多相關內(nèi)容,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

文章標題:如何進行區(qū)塊鏈的可擴展性問題及解決方案對比
瀏覽地址:http://bm7419.com/article24/giggce.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計公司、做網(wǎng)站、虛擬主機、動態(tài)網(wǎng)站靜態(tài)網(wǎng)站、App設計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設