吞吐量過(guò)低是比特幣系統(tǒng)的嚴(yán)重問(wèn)題,限制了其應(yīng)用場(chǎng)景的發(fā)展。而吞吐量過(guò)低的根本原因,在于共識(shí)過(guò)程。常用的解決方法有幾下幾種:
異步共識(shí)
即在出塊以后無(wú)須立即達(dá)成共識(shí),每個(gè)節(jié)點(diǎn)在遵循某種規(guī)則的前提下,盡最大的能力出塊,通過(guò)規(guī)則的巧妙制定,各自為戰(zhàn)的節(jié)點(diǎn)在經(jīng)過(guò)一段之間后仍可達(dá)成一致。典型的即異步Graph算法。
2、隨機(jī)共識(shí)
隨機(jī)共識(shí)
全網(wǎng)所有節(jié)點(diǎn)參與共識(shí)效率較低,如果用部分節(jié)點(diǎn)間的共識(shí)代替全網(wǎng)共識(shí),則可提高性能。當(dāng)“部分”是完全隨機(jī)地從節(jié)點(diǎn)中抽取,在達(dá)到一定樣本量時(shí),統(tǒng)計(jì)學(xué)上是可以表達(dá)“全部”意義的。Algorand算法就在“隨機(jī)抽取”上研究了一套算法。
分區(qū)方案
區(qū)塊鏈系統(tǒng),單純從數(shù)據(jù)存儲(chǔ)的角度來(lái)看屬于分布式日志數(shù)據(jù)庫(kù)。因此,分布式日志數(shù)據(jù)庫(kù)中用來(lái)提高性能的方案理應(yīng)也可用于區(qū)塊鏈系統(tǒng)。分區(qū)的方式有按交易發(fā)送者地址分、按交易ID分、按交易類(lèi)型分、按地域分、按市場(chǎng)分等。不過(guò)分區(qū)技術(shù)的實(shí)現(xiàn)難度大,對(duì)智能合約的使用限制明顯。
子鏈/側(cè)鏈技術(shù)
一條鏈的區(qū)塊鏈系統(tǒng)性能較差,那么多鏈并行可以提高區(qū)塊鏈系統(tǒng)的性能表現(xiàn)。閃電網(wǎng)絡(luò)是子鏈技術(shù)的代表。閃電網(wǎng)絡(luò)是基于比特幣的擴(kuò)展,類(lèi)似于銀行結(jié)算系統(tǒng),交易在某個(gè)子鏈內(nèi)發(fā)生,只有最后的結(jié)算信息回寫(xiě)到主鏈。
可信執(zhí)行環(huán)境
可信執(zhí)行環(huán)境即要么不運(yùn)行,一旦運(yùn)行必然可靠,無(wú)法被外界做任何修改?;诳尚艌?zhí)行環(huán)境假設(shè)而設(shè)計(jì)的共識(shí)可以進(jìn)行一定程度上的簡(jiǎn)化,從而提高區(qū)塊鏈的性能表現(xiàn)。
6、隱形中心化
隱形中心化
從區(qū)塊鏈的應(yīng)用實(shí)際來(lái)看,完全去中心化可能并無(wú)必要,受限制的中心化更能貼合實(shí)際情況。而受限制的中心化既可以是多個(gè)中心,也可以是中心節(jié)點(diǎn)輪換。EOS便采用了DPOS共識(shí)算法,其中的超級(jí)節(jié)點(diǎn)權(quán)力就很大。