国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于節(jié)點(diǎn)可信度的區(qū)塊鏈動(dòng)態(tài)分片模型

2024-12-30 00:00:00吳加英袁凌云陳美宏謝天玉
計(jì)算機(jī)應(yīng)用研究 2024年12期
關(guān)鍵詞:可擴(kuò)展性區(qū)塊鏈

摘 要:

針對(duì)當(dāng)前區(qū)塊鏈分片模型存在惡意節(jié)點(diǎn)聚集、分片失效率高及負(fù)載不均衡問(wèn)題,提出基于節(jié)點(diǎn)可信度的區(qū)塊鏈動(dòng)態(tài)分片模型(blockchain dynamic sharding model based on node credibility,CBDSM)。首先,構(gòu)建了一種區(qū)塊鏈分片架構(gòu),以解決區(qū)塊鏈面臨的可擴(kuò)展性瓶頸問(wèn)題;其次,設(shè)計(jì)了節(jié)點(diǎn)可信度評(píng)估機(jī)制以量化節(jié)點(diǎn)的能力和可靠度,實(shí)現(xiàn)了節(jié)點(diǎn)的高效篩選和劃分;在此基礎(chǔ)上設(shè)計(jì)了動(dòng)態(tài)網(wǎng)絡(luò)分片算法及網(wǎng)絡(luò)分片流程,通過(guò)對(duì)不同等級(jí)的節(jié)點(diǎn)進(jìn)行動(dòng)態(tài)分配,實(shí)現(xiàn)了鏈上負(fù)載均衡。理論分析和實(shí)驗(yàn)結(jié)果表明,相較于同類模型,該模型吞吐量提升了54%,共識(shí)失敗率降低了46%,分片失效率降低了15.6%。該模型能夠保障節(jié)點(diǎn)動(dòng)態(tài)均衡,抵抗節(jié)點(diǎn)單點(diǎn)聚集和合謀攻擊,確保了區(qū)塊鏈分片系統(tǒng)的動(dòng)態(tài)安全性,同時(shí)兼顧了系統(tǒng)的高性能及高可擴(kuò)展性。

關(guān)鍵詞:區(qū)塊鏈;可擴(kuò)展性;分片技術(shù);節(jié)點(diǎn)可信度;網(wǎng)絡(luò)分片

中圖分類號(hào):TP393"" 文獻(xiàn)標(biāo)志碼:A""" 文章編號(hào):1001-3695(2024)12-005-3563-09

doi: 10.19734/j.issn.1001-3695.2024.04.0243

Blockchain dynamic sharding model based on node credibility

Wu Jiayinga, Yuan Lingyuna, b, Chen Meihonga, Xie Tianyua

(a.School of Information Science amp; Technology, b.Key Laboratory of Educational Information for Nationalities of Ministry of Education, Yunnan Normal University, Kunming 650500, China)

Abstract:

To address the problems of malicious node aggregation, high shard failure rate, and load imbalance in the current models of blockchain shard, this paper proposed a blockchain dynamic sharding model (CBDSM) based on node credibility. Firstly, this paper constructed a blockchain sharding architecture to solve the scalability bottlenecks faced by the blockchain. Secondly, it designed the reliability evaluation mechanism of nodes to quantify the ability and reliability of nodes, which rea-lized the efficient screening and classification of nodes. On this basis, it designed the dynamic network fragmentation algorithm and the network fragmentation flow. Through the dynamic allocation of nodes at different levels, it realized load balancing on the chain. Theoretical analysis and experimental results show that, compared with similar models, CBDSM boasts a 54% increase in throughput, a 46% reduction in consensus failure rate, and a 15.6% decrease in shard failure rate. This model can guarantee the dynamic equilibrium of nodes, and resist the single-point aggregation and collusion attacks of nodes. It ensures the dynamic security of the blockchain shard system, with the high performance and high scalability of the system.

Key words:blockchain; scalability; sharding technology; node credibility; network sharding

0 引言

隨著數(shù)字化建設(shè)和元宇宙發(fā)展的深入推進(jìn),區(qū)塊鏈技術(shù)成為了推動(dòng)未來(lái)數(shù)字社會(huì)發(fā)展的重要引擎。2021年3月,《中華人民共和國(guó)國(guó)民經(jīng)濟(jì)和社會(huì)發(fā)展“十四五”規(guī)劃和 2035 年遠(yuǎn)景目標(biāo)綱要》[1]明確指出了區(qū)塊鏈技術(shù)作為新興數(shù)字產(chǎn)業(yè)的戰(zhàn)略地位,旨在通過(guò)區(qū)塊鏈技術(shù)保障數(shù)據(jù)要素安全流通與可信共享,以促進(jìn)各行各業(yè)的數(shù)字化建設(shè),全力推動(dòng)數(shù)字中國(guó)的建設(shè)。據(jù)賽迪區(qū)塊鏈研究院統(tǒng)計(jì),截止2022年底,我國(guó)中央及地方已出臺(tái)近千余項(xiàng)區(qū)塊鏈相關(guān)的政策[2],區(qū)塊鏈產(chǎn)業(yè)規(guī)模達(dá)到了67億元,涵蓋智慧醫(yī)療、數(shù)字政務(wù)服務(wù)、能源、農(nóng)產(chǎn)品溯源、工業(yè)制造、物流等18個(gè)領(lǐng)域,可見(jiàn)我國(guó)對(duì)區(qū)塊鏈技術(shù)在各行業(yè)中的重要性給予了高度重視,也在實(shí)際政策層面積極落地。然而,隨著區(qū)塊鏈技術(shù)在各個(gè)領(lǐng)域的廣泛應(yīng)用,一些性能問(wèn)題逐漸浮現(xiàn)[3],如交易吞吐量低、存儲(chǔ)開(kāi)銷大以及時(shí)延高等,使得區(qū)塊鏈面臨著嚴(yán)重的可擴(kuò)展性問(wèn)題,難以支撐高并發(fā)應(yīng)用,嚴(yán)重制約著區(qū)塊鏈技術(shù)的實(shí)施和落地。

針對(duì)區(qū)塊鏈可擴(kuò)展性瓶頸問(wèn)題,即區(qū)塊鏈在吞吐量、交易延遲以及存儲(chǔ)開(kāi)銷等優(yōu)化方面,眾多研究者提出了許多不同的解決方案[3~5],主要包括鏈上的增大區(qū)塊大小、DAG結(jié)構(gòu)、分片以及鏈下的側(cè)鏈、支付通道等。其中,分片技術(shù)[6]能夠在不犧牲區(qū)塊鏈去中心化的前提下有效解決問(wèn)題,因而成為目前解決區(qū)塊鏈可擴(kuò)展性瓶頸的主流技術(shù)[7,8]。針對(duì)區(qū)塊鏈的分片技術(shù),文獻(xiàn)[9]提出了適用于無(wú)許可區(qū)塊鏈的分片協(xié)議Elastico,通過(guò)將節(jié)點(diǎn)隨機(jī)劃分成多個(gè)分片,每個(gè)分片可獨(dú)立并行處理交易以解決區(qū)塊鏈面臨的性能低下問(wèn)題;在Elastico基礎(chǔ)上,文獻(xiàn)[10]提出了OmniLedger,利用抗偏差的公共隨機(jī)性協(xié)議進(jìn)行節(jié)點(diǎn)分配,保證了節(jié)點(diǎn)分片的隨機(jī)性。文獻(xiàn)[11]提出了一種區(qū)塊鏈分片協(xié)議RapidChain以平衡各分片中的節(jié)點(diǎn)數(shù),其在吞吐量、時(shí)延等性能上表現(xiàn)更好。上述分片方案雖然在一定程度上解決了區(qū)塊鏈的可擴(kuò)展性瓶頸問(wèn)題,但也帶來(lái)了新的挑戰(zhàn),一方面由于分片后區(qū)塊鏈的網(wǎng)絡(luò)規(guī)模更小導(dǎo)致其抗攻擊能力和安全性均下降,且節(jié)點(diǎn)隨機(jī)分片極易導(dǎo)致惡意節(jié)點(diǎn)聚集,惡意節(jié)點(diǎn)更容易發(fā)起攻擊;另一方面,現(xiàn)存的分片機(jī)制未充分考慮節(jié)點(diǎn)的異構(gòu)性,未能較好實(shí)現(xiàn)對(duì)節(jié)點(diǎn)的合理分片,容易造成分片失效和系統(tǒng)負(fù)載不均衡,從而極大地影響系統(tǒng)的整體性能和效率。

針對(duì)上述區(qū)塊鏈分片技術(shù)中現(xiàn)存的惡意節(jié)點(diǎn)聚集、分片失效率高以及負(fù)載不均衡等問(wèn)題,本文提出了一種基于節(jié)點(diǎn)可信度的區(qū)塊鏈動(dòng)態(tài)分片模型(CBDSM)。主要貢獻(xiàn)如下:

a)針對(duì)區(qū)塊鏈分片系統(tǒng)中惡意節(jié)點(diǎn)聚集導(dǎo)致的安全性降低問(wèn)題,構(gòu)建節(jié)點(diǎn)可信度評(píng)估機(jī)制,利用可信度評(píng)估機(jī)制衡量節(jié)點(diǎn)的可靠性,并設(shè)計(jì)了節(jié)點(diǎn)等級(jí)劃分策略以減少系統(tǒng)中的惡意節(jié)點(diǎn),實(shí)現(xiàn)對(duì)節(jié)點(diǎn)的均衡化分片,提高了區(qū)塊鏈分片系統(tǒng)的安全性和抗攻擊能力;

b)為實(shí)現(xiàn)區(qū)塊鏈分片的持續(xù)安全和動(dòng)態(tài)穩(wěn)定,并有效解決分片重組帶來(lái)的數(shù)據(jù)大量遷移的存儲(chǔ)和通信開(kāi)銷,提出了基于節(jié)點(diǎn)等級(jí)的動(dòng)態(tài)網(wǎng)絡(luò)分片算法并設(shè)計(jì)了具體的分片流程,保證了系統(tǒng)中對(duì)惡意節(jié)點(diǎn)的管控,降低了大量資源開(kāi)銷,實(shí)現(xiàn)了分片部分重組和動(dòng)態(tài)均衡。

1 相關(guān)工作

為了解決區(qū)塊鏈分片技術(shù)的性能和安全性問(wèn)題,文獻(xiàn)[12]提出了Monoxide分片協(xié)議,基于節(jié)點(diǎn)地址進(jìn)行網(wǎng)絡(luò)分片,并提出了Chu-ko-nu mining進(jìn)行交易共識(shí),保證了攻擊單分片與攻擊整個(gè)網(wǎng)絡(luò)同樣困難,但惡意節(jié)點(diǎn)容易預(yù)測(cè)其分片方式,且共識(shí)算法能耗高,易造成51%攻擊。文獻(xiàn)[13]為解決片內(nèi)節(jié)點(diǎn)數(shù)量較少可能引發(fā)的安全問(wèn)題,引入了可信硬件Intel SGX來(lái)實(shí)現(xiàn)對(duì)節(jié)點(diǎn)惡意行為的控制,但可信硬件的使用依賴特定的硬件設(shè)備,限制了區(qū)塊鏈系統(tǒng)的應(yīng)用范圍,也增加了系統(tǒng)的成本和復(fù)雜性。文獻(xiàn)[14]提出一種基于強(qiáng)化學(xué)習(xí)的區(qū)塊鏈動(dòng)態(tài)分片框架SkyChain,通過(guò)靈活調(diào)整分片配置參數(shù)在動(dòng)態(tài)環(huán)境中實(shí)現(xiàn)系統(tǒng)性能和安全性的均衡。文獻(xiàn)[15]結(jié)合深度強(qiáng)化學(xué)習(xí)提出了區(qū)塊鏈分片策略的優(yōu)化方案以衡量區(qū)塊鏈的性能和安全級(jí)別,并通過(guò)動(dòng)態(tài)調(diào)整參數(shù)實(shí)現(xiàn)區(qū)塊鏈系統(tǒng)的最佳性能。雖然深度強(qiáng)化學(xué)習(xí)能夠動(dòng)態(tài)調(diào)整系統(tǒng)性能同時(shí)確保一定的安全性,但其引入了高昂的訓(xùn)練成本和時(shí)間開(kāi)銷,帶來(lái)額外的網(wǎng)絡(luò)延遲和開(kāi)銷,同時(shí)增加了系統(tǒng)的復(fù)雜性和運(yùn)行成本。文獻(xiàn)[16]通過(guò)K-means聚類算法和VRF實(shí)現(xiàn)用戶分組和共識(shí)節(jié)點(diǎn)分配來(lái)實(shí)現(xiàn)分片,但該方法犧牲了一定的安全性且計(jì)算成本高,增加了算法的復(fù)雜性。文獻(xiàn)[17]提出了交易記錄和共識(shí)執(zhí)行解耦的雙鏈架構(gòu)Benzene,并引入TEE來(lái)實(shí)現(xiàn)跨分片驗(yàn)證,但其采用兩段鎖協(xié)議處理交易,導(dǎo)致其產(chǎn)生較高的確認(rèn)延遲。文獻(xiàn)[18]設(shè)計(jì)了一種名為PYRAMID的區(qū)塊鏈分層分片結(jié)構(gòu),可實(shí)現(xiàn)線性可擴(kuò)展性和高效的跨分片交易處理,但靜態(tài)分片的分層配置方式會(huì)顯著降低系統(tǒng)安全性。

為了解決分片后惡意節(jié)點(diǎn)單點(diǎn)聚集引發(fā)的安全性問(wèn)題,信譽(yù)機(jī)制被引入到區(qū)塊鏈分片策略中,其能夠在不需要硬件成本且不會(huì)引發(fā)深度強(qiáng)化學(xué)習(xí)帶來(lái)的系統(tǒng)開(kāi)銷問(wèn)題的情況下確保區(qū)塊鏈分片系統(tǒng)的安全性和性能。鑒于此,眾多學(xué)者對(duì)基于信譽(yù)機(jī)制的分片策略進(jìn)行研究。文獻(xiàn)[19]提出了一種先對(duì)節(jié)點(diǎn)分類再進(jìn)行網(wǎng)絡(luò)分片的方案,劃分分片時(shí)節(jié)點(diǎn)必須來(lái)自不同類別的分片,但未給出節(jié)點(diǎn)的具體劃分原則,在實(shí)際應(yīng)用中存在局限性。文獻(xiàn)[20]針對(duì)網(wǎng)絡(luò)分片中的節(jié)點(diǎn)合謀攻擊提出了一種基于并行多鏈區(qū)塊鏈的分片方案,該方案提高了區(qū)塊鏈的安全性,但對(duì)于節(jié)點(diǎn)的行為特征沒(méi)有具體的評(píng)判標(biāo)準(zhǔn)。文獻(xiàn)[21]提出一種基于信任的分片TBSD方案,通過(guò)信任機(jī)制和遺傳算法將惡意節(jié)點(diǎn)分配到不同的分片以預(yù)防惡意節(jié)點(diǎn)對(duì)單分片帶來(lái)的安全問(wèn)題,雖然在一定程度上防止了惡意節(jié)點(diǎn)串通的合謀攻擊,但是當(dāng)惡意節(jié)點(diǎn)比例比較高時(shí)難以保證分片的安全性。文獻(xiàn)[22]提出了一種基于懲罰因子和信譽(yù)評(píng)分的分片模型,通過(guò)設(shè)置懲罰因子以減少惡意節(jié)點(diǎn)成為領(lǐng)導(dǎo)者的概率。文獻(xiàn)[23]通過(guò)設(shè)置信譽(yù)機(jī)制來(lái)衡量節(jié)點(diǎn)行為,基于節(jié)點(diǎn)信譽(yù)等級(jí)實(shí)現(xiàn)惡意節(jié)點(diǎn)在分片中的均衡化,保證了系統(tǒng)的安全性并提高了系統(tǒng)的吞吐量。文獻(xiàn)[24]設(shè)計(jì)了一種基于動(dòng)態(tài)獎(jiǎng)懲機(jī)制(MaOEA-DRP)的多目標(biāo)優(yōu)化算法,優(yōu)化了區(qū)塊鏈中節(jié)點(diǎn)分配的方式,在一定程度上降低了惡意節(jié)點(diǎn)聚集的概率,但是未考慮分片之間的可信度差異,低可信度的分片可能容易受到攻擊。文獻(xiàn)[25]提出了一個(gè)具有雙鏈架構(gòu)的區(qū)塊鏈分片方案(RepChain),設(shè)計(jì)了交易鏈和信譽(yù)鏈以實(shí)現(xiàn)高效同步共識(shí)和增強(qiáng)系統(tǒng)安全性,但每個(gè)分片對(duì)交易鏈和信譽(yù)鏈的維護(hù)增加了系統(tǒng)的開(kāi)銷。文獻(xiàn)[26]設(shè)計(jì)了基于獎(jiǎng)懲機(jī)制的信譽(yù)方案,及早發(fā)現(xiàn)和標(biāo)記惡意節(jié)點(diǎn),使節(jié)點(diǎn)均勻分布,解決了高重配置延遲的問(wèn)題。

雖然在上述方案中針對(duì)惡意節(jié)點(diǎn)隨機(jī)性帶來(lái)的安全攻擊問(wèn)題引入了信譽(yù)機(jī)制進(jìn)行節(jié)點(diǎn)劃分,從不同角度改進(jìn)了基于節(jié)點(diǎn)的信譽(yù),但現(xiàn)有的研究中信譽(yù)機(jī)制對(duì)于節(jié)點(diǎn)的異構(gòu)性考慮不夠全面,未能對(duì)節(jié)點(diǎn)的行為進(jìn)行具體的細(xì)粒度定義和衡量。本文重點(diǎn)關(guān)注網(wǎng)絡(luò)分片中節(jié)點(diǎn)的異構(gòu)性,提出節(jié)點(diǎn)可信度評(píng)估機(jī)制以構(gòu)建安全高效的區(qū)塊鏈動(dòng)態(tài)分片模型。所提模型充分考慮了節(jié)點(diǎn)的差異性,從自身性能和共識(shí)行為兩個(gè)維度出發(fā)對(duì)節(jié)點(diǎn)評(píng)估,不僅有效避免了惡意節(jié)點(diǎn)的單點(diǎn)聚集帶來(lái)的安全性問(wèn)題,同時(shí)提高了系統(tǒng)的共識(shí)效率和性能。

2 節(jié)點(diǎn)可信度評(píng)估機(jī)制

2.1 節(jié)點(diǎn)可信度計(jì)算方法

為了確保網(wǎng)絡(luò)分片后區(qū)塊鏈系統(tǒng)的安全性并充分利用系統(tǒng)資源,本文基于P2P網(wǎng)絡(luò)中的信任模型[27]并結(jié)合區(qū)塊鏈分片的特點(diǎn),建立節(jié)點(diǎn)可信度評(píng)估機(jī)制。區(qū)塊鏈網(wǎng)絡(luò)分片后,在設(shè)計(jì)可信度評(píng)估機(jī)制中僅考慮性能特征或行為特征作為衡量標(biāo)準(zhǔn)都是不全面且存在安全風(fēng)險(xiǎn)的,若僅側(cè)重于節(jié)點(diǎn)的性能特征,則容易出現(xiàn)惡意節(jié)點(diǎn),因?yàn)榫哂泄?jié)點(diǎn)高性能而傾向于聚集在特定分片中,導(dǎo)致單一分片的安全性受到嚴(yán)重挑戰(zhàn),甚至存在被惡意節(jié)點(diǎn)接管的風(fēng)險(xiǎn);反之,若僅根據(jù)節(jié)點(diǎn)的行為特征來(lái)評(píng)估其可信度而忽略了其性能特征,則不同分片之間的性能差異可能會(huì)變得顯著,導(dǎo)致網(wǎng)絡(luò)中的資源分配不均、負(fù)載不均衡,還可能引發(fā)系統(tǒng)瓶頸,最終影響整個(gè)區(qū)塊鏈網(wǎng)絡(luò)的性能和穩(wěn)定性。

為了更全面、準(zhǔn)確地評(píng)估區(qū)塊鏈網(wǎng)絡(luò)中節(jié)點(diǎn)的可信度,本文從節(jié)點(diǎn)行為和自身硬件性能兩大維度量化評(píng)估節(jié)點(diǎn)。節(jié)點(diǎn)的性能可信度評(píng)估主要考慮節(jié)點(diǎn)的帶寬、存儲(chǔ)能力、CPU性能和處理能力,帶寬越大、存儲(chǔ)能力越強(qiáng)、CPU性能越好以及處理能力越快,節(jié)點(diǎn)的可信度評(píng)分就越高。而節(jié)點(diǎn)行為可信度則關(guān)注節(jié)點(diǎn)在共識(shí)驗(yàn)證中的參與數(shù)量、處理速度以及提交驗(yàn)證結(jié)果的準(zhǔn)確性,若節(jié)點(diǎn)在共識(shí)驗(yàn)證中積極參與且提交的結(jié)果準(zhǔn)確,其行為可信度就會(huì)提高。

1) 性能可信度

設(shè)有節(jié)點(diǎn)集Node={node1,node2,…,nodei,…,nodem},分片集Shard={shard1,shard2,…,shardj,…,shardn},交易列表集

Tx=Txshard1n1Txshard1n2…Txshard1ni…Txshard1nm,

Txshard2n1Txshard2n1…Txshard2ni…Txshard2nm…

Txshardjn1Txshardjn1…Txshardjni…Txshardjnm…

Txshardnn1Txshardnn2…Txshardnni…Txshardnnm

設(shè)每個(gè)分片中的節(jié)點(diǎn)總數(shù)為Shard_Node={sn1,sn2,…snj,…,snn}。

節(jié)點(diǎn)的性能可信度用于評(píng)估節(jié)點(diǎn)的自身硬件性能,分片 shardj(shardj∈Shard)中節(jié)點(diǎn)的性能可信度集可表示為P={Pshard1n1,Pshard1n2,…,Pshardjni,…,Pshardnnm},性能可信度P各屬性定義為

PS=ps1:網(wǎng)絡(luò)帶寬ps2:存儲(chǔ)能力ps3:CPU性能ps4:處理能力

其屬性權(quán)重值表示為 λPS={λ1,λ2,λ3,λ4},其中0≤λk≤1,∑4k=1λk=1。分片j中節(jié)點(diǎn)i(nodeshardji)的性能可信度值Pshardjni的計(jì)算公式如下:

Pshardjni=∑4k=1λk×psk∑4k=1λk(1)

2) 行為可信度

節(jié)點(diǎn)的行為可信度用于衡量節(jié)點(diǎn)在區(qū)塊鏈網(wǎng)絡(luò)共識(shí)中所表現(xiàn)出的行為和操作的可信程度。行為可信度由共識(shí)可信度和響應(yīng)可信度綜合得到,節(jié)點(diǎn)是否積極參與共識(shí)、是否提交正確的信息以及是否能夠及時(shí)響應(yīng)區(qū)塊鏈中的交易共識(shí)都會(huì)影響其行為可信度。分片j中節(jié)點(diǎn)i(nodeshardji)的行為可信度集可表示為B={Bshard1n1,Bshard1n2,…,Bshardjni,…,Bshardnnm},計(jì)算公式如下:

Bshardjni=α1C+α2R (2)

其中:α1和α2是共識(shí)可信度C和響應(yīng)可信度R的可信度評(píng)分權(quán)重系數(shù),α1+α2=1。

a)共識(shí)可信度C,衡量節(jié)點(diǎn)參與交易共識(shí)的驗(yàn)證準(zhǔn)確性和可靠性。計(jì)算公式如下:

C=1-e-ηA(3)

其中:A為節(jié)點(diǎn)的共識(shí)準(zhǔn)確性;η為共識(shí)準(zhǔn)確性調(diào)整參數(shù)。

節(jié)點(diǎn)的共識(shí)準(zhǔn)確性A值越接近于1,則說(shuō)明節(jié)點(diǎn)的共識(shí)參與度和準(zhǔn)確度越高,具有高可信度。A可表示為

A=δ1pcr+δ2pce+δ3pcn∑3k=1δk(4)

其中:PC=pcr:節(jié)點(diǎn)提交正確共識(shí)交易數(shù)量pce:節(jié)點(diǎn)提交錯(cuò)誤共識(shí)交易數(shù)量pcn:節(jié)點(diǎn)拒絕提交共識(shí)交易數(shù)量,其屬性權(quán)重值表示為δPC={δ1,δ2,δ3},δi是節(jié)點(diǎn)共識(shí)準(zhǔn)確性判斷參數(shù),其中0≤δk≤1,δ1+δ2+δ3=1。

b)響應(yīng)可信度R,衡量節(jié)點(diǎn)處理交易的速度,計(jì)算公式如下:

R=e-εtimeavg(5)

其中:timeavg為該epoch時(shí)期下節(jié)點(diǎn)平均交易驗(yàn)證時(shí)間;ε為參數(shù),影響R函數(shù)的遞減速度。timeavg的計(jì)算公式如下:

timeavg=∑txntx1 timetxitxn(6)

其中:timetxi=timerecv-timesend為該節(jié)點(diǎn)驗(yàn)證第i筆交易時(shí)所花費(fèi)的時(shí)間,timesend為主節(jié)點(diǎn)向分片副本節(jié)點(diǎn)發(fā)送交易的時(shí)間,timerecv為主節(jié)點(diǎn)收到分片成員節(jié)點(diǎn)共識(shí)回復(fù)消息的時(shí)間。

3)綜合可信度

利用加權(quán)平均方法,綜合考慮節(jié)點(diǎn)的硬件性能和共識(shí)行為雙重因素,根據(jù)節(jié)點(diǎn)性能和行為可信度的評(píng)分結(jié)果,通過(guò)對(duì)節(jié)點(diǎn)性能可信度和節(jié)點(diǎn)行為可信度的線性組合得到節(jié)點(diǎn)的綜合可信度Credibilityshardjni,其評(píng)估公式如下:

Credibilityshardjni=β1Pshardjni+β2Bshardjni(7)

其中:β1和β2是節(jié)點(diǎn)性能和行為可信度的評(píng)分權(quán)重系數(shù),0≤β1≤1,0≤β2≤1且β1+β2=1。

4)可信度閾值

由于每個(gè)分片的節(jié)點(diǎn)共識(shí)行為不一樣,紀(jì)元(epoch)更新時(shí)分片中節(jié)點(diǎn)動(dòng)態(tài)更新的情況也不同,所以引入可信度閾值用于量化評(píng)估每個(gè)分片中節(jié)點(diǎn)的平均性能和安全可靠度。

在區(qū)塊鏈分片系統(tǒng)中,一個(gè)分片中有多個(gè)節(jié)點(diǎn),利用每個(gè)節(jié)點(diǎn)的綜合可信度,通過(guò)加權(quán)平均方法評(píng)估當(dāng)前epoch時(shí)期內(nèi)分片的可信度,計(jì)算分片內(nèi)所包含節(jié)點(diǎn)的綜合可信度平均值得到該分片的可信度閾值SCredibilitysj,計(jì)算公式如下:

SCredibilitysj=θ∑snji=1Credibilityshardjnisnj(8)

其中:θ為閾值調(diào)整參數(shù)。

2.2 節(jié)點(diǎn)可信度等級(jí)劃分策略設(shè)計(jì)

基于節(jié)點(diǎn)綜合可信度設(shè)計(jì)節(jié)點(diǎn)的等級(jí)劃分策略,主要是在每一個(gè)epoch時(shí)期對(duì)分片中每個(gè)節(jié)點(diǎn)的綜合可信度進(jìn)行等級(jí)劃分,根據(jù)節(jié)點(diǎn)等級(jí)對(duì)其進(jìn)行隨機(jī)分片,從而使得區(qū)塊鏈分片更加安全、資源利用率更高。節(jié)點(diǎn)可以動(dòng)態(tài)地加入和退出區(qū)塊鏈網(wǎng)絡(luò)以實(shí)現(xiàn)高可靠性的動(dòng)態(tài)網(wǎng)絡(luò)模型,根據(jù)定義的節(jié)點(diǎn)可信度閾值區(qū)間來(lái)評(píng)定節(jié)點(diǎn)等級(jí),節(jié)點(diǎn)等級(jí)不同對(duì)應(yīng)的權(quán)限也不同。

2.2.1 節(jié)點(diǎn)等級(jí)劃分

根據(jù)綜合可信度及可信度閾值區(qū)間可將節(jié)點(diǎn)分為高效可信節(jié)點(diǎn)、普通節(jié)點(diǎn)和惡意節(jié)點(diǎn)三個(gè)等級(jí)。節(jié)點(diǎn)可信度等級(jí)劃分如表1所示。

a)高效可信節(jié)點(diǎn)。擁有最高的硬件性能和行為可信度,安全等級(jí)高且共識(shí)效率高,在進(jìn)行內(nèi)部共識(shí)時(shí)不僅參與分片內(nèi)交易共識(shí)的處理和驗(yàn)證,同時(shí)用于競(jìng)選主節(jié)點(diǎn)。對(duì)于跨分片交易的處理,高效可信節(jié)點(diǎn)同步多個(gè)分片的信息,參與分片間的跨分片交易共識(shí)。

b)普通節(jié)點(diǎn)。用于參與交易共識(shí)驗(yàn)證,完成分片內(nèi)部交易的處理,構(gòu)建片內(nèi)交易區(qū)塊。

c)惡意節(jié)點(diǎn)。當(dāng)節(jié)點(diǎn)的可信度因?yàn)閻阂庑袨槎档偷揭欢ㄩ撝禃r(shí)被認(rèn)定為惡意節(jié)點(diǎn),惡意節(jié)點(diǎn)無(wú)法進(jìn)行轉(zhuǎn)賬、區(qū)塊生成和擔(dān)任主節(jié)點(diǎn)操作??紤]到分片中的節(jié)點(diǎn)數(shù)量較少,惡意節(jié)點(diǎn)的數(shù)量對(duì)于區(qū)塊鏈分片系統(tǒng)的安全性容易造成攻擊,因此直接將惡意節(jié)點(diǎn)剔除以降低拜占庭節(jié)點(diǎn)再次作惡的概率,從而提升系統(tǒng)的安全性。

2.2.2 節(jié)點(diǎn)可信度等級(jí)劃分算法

為了降低節(jié)點(diǎn)劃分算法的復(fù)雜度并提高節(jié)點(diǎn)劃分效率,本模型采用可信度閾值區(qū)間來(lái)劃分節(jié)點(diǎn),而不是對(duì)所有節(jié)點(diǎn)的可信度值進(jìn)行排序。通過(guò)直接將每個(gè)節(jié)點(diǎn)的可信度值與預(yù)先設(shè)定的閾值區(qū)間進(jìn)行匹配可以快速確定節(jié)點(diǎn)的等級(jí)?;谏鲜鏊枷朐O(shè)計(jì)了節(jié)點(diǎn)可信度等級(jí)劃分算法,核心偽代碼如算法1所示。

算法1 節(jié)點(diǎn)可信度等級(jí)劃分算法

輸入:NodeList,thresholds=[(t1,t2),(t2,t3),(t3,t4)]。

輸出:NodeRanks。

NodeRanks=[]; // 初始化節(jié)點(diǎn)等級(jí)列表

for _, node∶=range NodeList "http:// 遍歷節(jié)點(diǎn)列表

Cred ← node.credibility; // 獲取節(jié)點(diǎn)的可信度

end for

for _, threshold∶=range thresholds /* 根據(jù)閾值區(qū)間劃分節(jié)點(diǎn)等級(jí) */

lowerBound=threshold[0];

upperBound=threshold[1];

if Credgt;lowerBound amp;amp; Cred lt;=upperBound

node.level ←Level(lowerBound,upperBound); /* 確定節(jié)點(diǎn)等級(jí) */

end if

end for

NodeRanks←append(NodeRanks,node); //加入節(jié)點(diǎn)等級(jí)列表

return NodeRanks //返回節(jié)點(diǎn)等級(jí)列表

2.3 節(jié)點(diǎn)可信度更新流程設(shè)計(jì)

節(jié)點(diǎn)綜合可信度更新流程主要分為請(qǐng)求發(fā)送階段、消息廣播階段、消息驗(yàn)證階段及可信度更新階段,其涉及的符號(hào)如表2所示。

1)請(qǐng)求發(fā)送階段

在一輪共識(shí)結(jié)束后計(jì)算節(jié)點(diǎn)的可信度,為每個(gè)分片中的每個(gè)節(jié)點(diǎn)生成可信度更新請(qǐng)求消息RequestC,客戶端Client用私鑰SKC對(duì)請(qǐng)求消息進(jìn)行簽名,并把公鑰PKC、可信度更新請(qǐng)求RequestC及時(shí)間戳T1發(fā)送到每個(gè)分片中的主節(jié)點(diǎn)Primary。

Client→Primary:PK,〈〈RequestC,Viem,Digest〉,Sig(SK)(RequestC)〉,T1(9)

2)消息廣播階段

主節(jié)點(diǎn)Primary收到客戶端Client發(fā)送的請(qǐng)求后生成廣播消息BroadcastC,主節(jié)點(diǎn)用私鑰SKp對(duì)廣播消息進(jìn)行簽名,并把公鑰PKp、廣播消息BroadcastC及時(shí)間戳T2發(fā)送到分片中的所有共識(shí)節(jié)點(diǎn)。

Primary→Node:PKP,〈〈BroadcastC,Digest〉,Sig(SKP)(BroadcastC)〉,T2(10)

3)消息驗(yàn)證階段

分片內(nèi)的共識(shí)節(jié)點(diǎn)Node對(duì)收到的廣播消息進(jìn)行驗(yàn)證,驗(yàn)證過(guò)程包括對(duì)簽名、消息內(nèi)容和時(shí)間戳的檢查,以確??尚哦雀孪⒌臏?zhǔn)確性,驗(yàn)證通過(guò)后由主節(jié)點(diǎn)Primary生成回復(fù)消息ReplyC并返回給客戶端Client。

Primary→Client:PKP,〈〈ReplyC,CredLink,Digest〉,Sig(SKP)(ReplyC)〉,T3(11)

4)可信度更新階段

客戶端Client驗(yàn)證收到的回復(fù)消息的準(zhǔn)確性,確保無(wú)錯(cuò)誤后向節(jié)點(diǎn)廣播可信度列表更新消息UpdateC,每個(gè)分片中的所有節(jié)點(diǎn)收到消息后更新其綜合可信度。

Client→Node:PKC,〈〈UpdateC,CredLink,Digest〉,Sig(SKC)(UpdateC)〉,T4(12)

3 基于節(jié)點(diǎn)可信度的區(qū)塊鏈動(dòng)態(tài)分片模型

針對(duì)區(qū)塊鏈系統(tǒng)吞吐量低、交易延遲高、存儲(chǔ)開(kāi)銷大等可擴(kuò)展性瓶頸問(wèn)題,將分片技術(shù)引入?yún)^(qū)塊鏈系統(tǒng),并且為解決區(qū)塊鏈分片的安全性及負(fù)載問(wèn)題,設(shè)計(jì)節(jié)點(diǎn)可信度評(píng)估機(jī)制,提出基于節(jié)點(diǎn)可信度的區(qū)塊鏈動(dòng)態(tài)分片模型,如圖1所示。該模型的核心思想是通過(guò)分片技術(shù)和節(jié)點(diǎn)可信度評(píng)估機(jī)制將傳統(tǒng)區(qū)塊鏈網(wǎng)絡(luò)隨機(jī)劃分為多個(gè)分片,每個(gè)分片獨(dú)立運(yùn)行,使用交易的哈希地址進(jìn)行取模操作,將區(qū)塊鏈網(wǎng)絡(luò)中的交易列表映射到對(duì)應(yīng)分片的交易池中,每個(gè)分片獨(dú)立維護(hù)該分片的交易池。分片中的節(jié)點(diǎn)通過(guò)實(shí)用拜占庭容錯(cuò)共識(shí)算法(practical Byzantine fault tolerance,PBFT)對(duì)交易池中的交易進(jìn)行驗(yàn)證,分片內(nèi)的交易區(qū)塊由片內(nèi)共識(shí)上鏈、涉及多個(gè)分片的交易由特定的跨分片共識(shí)策略共識(shí)驗(yàn)證,共識(shí)驗(yàn)證后每個(gè)分片中通過(guò)共識(shí)形成的塊只存儲(chǔ)在分片內(nèi)的節(jié)點(diǎn)中,每個(gè)節(jié)點(diǎn)并不存儲(chǔ)所有的交易信息。每個(gè)節(jié)點(diǎn)不存儲(chǔ)鏈上所有分片的塊信息,避免了大量冗余存儲(chǔ)帶來(lái)的資源開(kāi)銷問(wèn)題,減少了網(wǎng)絡(luò)傳輸和數(shù)據(jù)存儲(chǔ)開(kāi)銷,提高了系統(tǒng)效率。

3.1 動(dòng)態(tài)網(wǎng)絡(luò)分片流程

動(dòng)態(tài)網(wǎng)絡(luò)分片流程主要分為分片初始構(gòu)建階段、共識(shí)階段、節(jié)點(diǎn)可信度評(píng)估階段、網(wǎng)絡(luò)分片重組與更新階段。分片流程如圖2所示。

3.1.1 分片初始構(gòu)建階段

a)初始化節(jié)點(diǎn)行為可信度Binit={Bshard1n1,…,Bshardjni,…,Bshardnnm}=0.5,根據(jù)性能可信度和綜合可信度計(jì)算公式得到節(jié)點(diǎn)的初始綜合可信度CredLinkinit。

CredLinkinit:Credibilitys1n1…Credibilitysmnn←CredInit(Pinit,Binit,CpTP,CpTC)(13)

b)利用基于節(jié)點(diǎn)可信度的分片策略O(shè)ptshard將節(jié)點(diǎn)均分到每個(gè)分片中,以構(gòu)建一個(gè)初始的區(qū)塊鏈分片模型Shardinit。

Shardinit:Shard1init,…,Shardminit←ShardInitNodeLinks1,…,NodeLinksm,

CredLinkinit,Optshard(14)

c)客戶端Client使用私鑰SKC對(duì)初始分片結(jié)果Shardinit進(jìn)行簽名,并將其公鑰PKC、Shardinit等信息發(fā)送至網(wǎng)絡(luò)中所有節(jié)點(diǎn)。

Client→Node:{PKc,Shardinit,Sig(SKc)(Shardinit),T1epoch}(15)

3.1.2 共識(shí)階段

d)各分片中的節(jié)點(diǎn)基于PBFT共識(shí)算法驗(yàn)證系統(tǒng)中的交易,在共識(shí)驗(yàn)證過(guò)程中,主節(jié)點(diǎn)Primary記錄每個(gè)節(jié)點(diǎn)對(duì)于交易的處理情況Resultepoch,主要記錄節(jié)點(diǎn)的共識(shí)行為、交易驗(yàn)證數(shù)量和驗(yàn)證每筆交易所花費(fèi)的時(shí)間。

Resultepoch←ConsensusShard1init…Shardminit,Txs1…Txsm,OptPbft,T2epoch(16)

e)各分片中的主節(jié)點(diǎn)Primary利用其私鑰SKP對(duì)交易處理結(jié)果Resultepoch進(jìn)行簽名,并將公鑰PKP及交易處理結(jié)果發(fā)送到客戶端Client。

Primary→Client:PKp,Resultepoch,Sig(SKp)(Resultepoch),T3epoch(17)

3.1.3 節(jié)點(diǎn)可信度評(píng)估階段

f)在一個(gè)epoch時(shí)期結(jié)束后,計(jì)算每個(gè)節(jié)點(diǎn)的性能和行為可信度,組合計(jì)算出節(jié)點(diǎn)的綜合可信度CredLinke。

CredLinke:Credibilitys1n1…Credibilitysmnn←EvaluateResultepoch,CpTPCpTB,CpTC,Tepoch(18)

g)各分片中的主節(jié)點(diǎn)Primary發(fā)送節(jié)點(diǎn)可信度列表CredLinke、公鑰PKp和時(shí)間戳T4epoch及簽名給客戶端Client。

Primary→Client:PKp,CredLinke,Sig(SKp)(CredLinke),T4epoch(19)

h)節(jié)點(diǎn)的綜合可信度CredLinke計(jì)算成功后,利用節(jié)點(diǎn)可信度等級(jí)劃分策略O(shè)ptclass劃分節(jié)點(diǎn)類別。如果是惡意節(jié)點(diǎn)NodeListfe,從區(qū)塊鏈分片系統(tǒng)中刪除該類節(jié)點(diǎn),不再參與后續(xù)共識(shí)。

NodeRank0e:NodeListse,NodeListne,NodeListfe←NodeClassCredLinke,Thresholds,Optclass(20)

NodeRank1e:NodeListse,NodeListne←NodeClassNodeListse,NodeListne,NodeListfe,Optdel(21)

3.1.4 分片重組與更新階段

i)根據(jù)節(jié)點(diǎn)的綜合可信度CredLinke以及分片中節(jié)點(diǎn)類別的情況NodeRank1e判斷分片失效情況,對(duì)失效的分片進(jìn)行重組。

Sharde+1:Shard1e+1…Shardme+1←ReBuildShard1e…Shardme,NodeRank1e,Optjudge,Optrebuild(22)

j)客戶端Client對(duì)分片重組結(jié)果進(jìn)行簽名并將其廣播到網(wǎng)絡(luò)中所有節(jié)點(diǎn)Node。

Client→Node:PKc,Sharde+1,Sig(SKc)(Sharde+1),T5epoch(23)

k)所有節(jié)點(diǎn)對(duì)重組結(jié)果達(dá)成共識(shí)后,網(wǎng)絡(luò)中的節(jié)點(diǎn)對(duì)可信度、交易狀態(tài)信息進(jìn)行同步和更新,以進(jìn)入下一個(gè)時(shí)期Epoche+1的交易共識(shí)階段。

Shard1e+1,…,Shard2e+1,…,Shardme+1←UpDate{Sharde+1,CredLinke+1,Optupdate}(24)

3.2 分片算法

本文提出了基于節(jié)點(diǎn)可信度等級(jí)的節(jié)點(diǎn)分片算法,其核心思想是通過(guò)可信度值來(lái)劃分節(jié)點(diǎn)等級(jí),將惡意節(jié)點(diǎn)移除以避免惡意節(jié)點(diǎn)集中在某個(gè)分區(qū)內(nèi)造成的單分片接管;再對(duì)各等級(jí)類別中的節(jié)點(diǎn)列表進(jìn)行隨機(jī)劃分,保證每個(gè)分片中普通節(jié)點(diǎn)和高效可信節(jié)點(diǎn)的分布近似均衡,提高了整個(gè)系統(tǒng)的魯棒性,降低了被攻擊的風(fēng)險(xiǎn)?;诳尚哦鹊燃?jí)的節(jié)點(diǎn)分片算法如算法2所示。

算法2 節(jié)點(diǎn)可信度等級(jí)劃分算法

輸入:NodeList, Shard_Num。

輸出:Shards。

for _, node∶=range NodeList // 評(píng)估節(jié)點(diǎn)可信度

node.credibility ← calculateCredibility();

end for

NodeRanks=CategorizeNodes(NodeList, thresholds); /*節(jié)點(diǎn)等級(jí)劃分*/

Shards=InitializeShards(Shard_Num); //初始化分片列表

for _, NodeRank:=range NodeRanks

Nodes ← NodeRank.nodes; // 獲取節(jié)點(diǎn)的可信度

RandomSharding(Nodes, Shards); /* 對(duì)節(jié)點(diǎn)進(jìn)行隨機(jī)均衡劃分*/

end for

for shard in Shards:

if IsShardFaulty(shard) // 判斷分片是否失效

HandleFaultyShard(shard); // 處理失效分片

end if

end for

return Shards //返回節(jié)點(diǎn)分片列表

4 安全性與復(fù)雜度分析

4.1 1%攻擊

在區(qū)塊鏈分片中,網(wǎng)絡(luò)被劃分為多個(gè)獨(dú)立的分片,每個(gè)分片具有自己的一組節(jié)點(diǎn)負(fù)責(zé)獨(dú)立驗(yàn)證交易和生成新的區(qū)塊。由于分片后節(jié)點(diǎn)總數(shù)減少,與攻擊整個(gè)未分片的區(qū)塊鏈系統(tǒng)相比,攻擊者更容易攻擊分片系統(tǒng)中的單個(gè)分片,也稱為1%攻擊[28]。不合理的分片方式也會(huì)導(dǎo)致惡意節(jié)點(diǎn)可以輕易控制計(jì)算能力較低的分片,從而使該分片失效,影響整個(gè)系統(tǒng)的安全性和一致性。針對(duì)上述安全問(wèn)題,本文模型通過(guò)以下兩種方式有效降低了1%攻擊的概率。

a)網(wǎng)絡(luò)分片初始構(gòu)建階段。根據(jù)節(jié)點(diǎn)可信度評(píng)估機(jī)制對(duì)節(jié)點(diǎn)進(jìn)行等級(jí)劃分,充分考慮每個(gè)節(jié)點(diǎn)的硬件性能差異性。每類節(jié)點(diǎn)根據(jù)VRF生成隨機(jī)數(shù)隨機(jī)均分給每個(gè)分片,節(jié)點(diǎn)等級(jí)劃分能夠?qū)崿F(xiàn)分片間計(jì)算能力的均衡化,隨機(jī)分配確保了分片的隨機(jī)性和不可預(yù)測(cè)性,保證了區(qū)塊鏈系統(tǒng)的安全性。因此,在網(wǎng)絡(luò)分片的初始構(gòu)建過(guò)程中既不會(huì)出現(xiàn)節(jié)點(diǎn)數(shù)量太少的分片,也不會(huì)出現(xiàn)計(jì)算能力低下的分片,從而顯著降低了1% 攻擊的可能性,減少了惡意節(jié)點(diǎn)合謀攻擊的可能性。

b)網(wǎng)絡(luò)分片重組階段??紤]節(jié)點(diǎn)的共識(shí)行為并計(jì)算節(jié)點(diǎn)的可信度,通過(guò)可信度評(píng)估機(jī)制可以高效準(zhǔn)確地識(shí)別出惡意節(jié)點(diǎn)并立即將其從區(qū)塊鏈分片系統(tǒng)中剔除,以確保區(qū)塊鏈的動(dòng)態(tài)負(fù)載平衡和持續(xù)安全性。在網(wǎng)絡(luò)分片的重組過(guò)程中惡意節(jié)點(diǎn)數(shù)量減少,各分片間的性能和可靠性基本相近,從而顯著降低了1% 攻擊的可能性,減少了惡意攻擊的風(fēng)險(xiǎn)。

4.2 拒絕服務(wù)攻擊

在拒絕服務(wù)(denial of service,DoS)攻擊中,攻擊者向目標(biāo)節(jié)點(diǎn)發(fā)送大量的無(wú)效交易請(qǐng)求以消耗目標(biāo)節(jié)點(diǎn)的計(jì)算資源和帶寬,從而使節(jié)點(diǎn)無(wú)法處理其他正常的交易與區(qū)塊同步請(qǐng)求。然而在本文的模型中,假設(shè)攻擊者試圖發(fā)起DoS攻擊,向分片系統(tǒng)中的目標(biāo)節(jié)點(diǎn)發(fā)送大量交易請(qǐng)求。在分片系統(tǒng)中,每個(gè)分片shardj(shardj∈Shard)都由一組可信節(jié)點(diǎn)集合Node維護(hù),對(duì)于交易請(qǐng)求Txsj={Txshardjn1,…,Txshardjni,…,Txshardjnm},其包含的公鑰為PubKey(Txi),其中Txi∈Txsj。當(dāng)交易請(qǐng)求Tx被分配到shardj時(shí),shardj的可信節(jié)點(diǎn)會(huì)檢查其維護(hù)的請(qǐng)求列表,若不存在PubKey(Txi)的請(qǐng)求記錄,即PubKey(Tx)PubKey(Txi),則系統(tǒng)會(huì)拒絕該交易請(qǐng)求,不進(jìn)行上鏈共識(shí),從而阻止其廣播到整個(gè)網(wǎng)絡(luò),以此抵御其后續(xù)的DoS攻擊。

4.3 拜占庭攻擊

在PBFT共識(shí)機(jī)制中,區(qū)塊鏈共識(shí)節(jié)點(diǎn)最多只能存在三分之一的惡意節(jié)點(diǎn)才能保證共識(shí)的絕對(duì)安全。假設(shè)基于PBFT共識(shí)算法的區(qū)塊鏈系統(tǒng)中共識(shí)節(jié)點(diǎn)總數(shù)為Nodesum,要保證共識(shí)的安全性,則惡意節(jié)點(diǎn)數(shù)f應(yīng)滿足的條件如式(9)所示。

f≤Nodesum-13」(25)

對(duì)于片內(nèi)采用PBFT類共識(shí)算法的區(qū)塊鏈分片系統(tǒng)而言,假設(shè)將共識(shí)節(jié)點(diǎn)總數(shù)為Nodesum的區(qū)塊鏈系統(tǒng)進(jìn)行網(wǎng)絡(luò)分片,分片數(shù)量為Shardsum,為了保證系統(tǒng)的安全性,每個(gè)分片中惡意節(jié)點(diǎn)數(shù)f′應(yīng)滿足的條件如下所示:

f′≤Nodesum/Shardsum-13」(26)

由式(25)(26)可見(jiàn),當(dāng)分片中拜占庭節(jié)點(diǎn)達(dá)到閾值時(shí),系統(tǒng)就會(huì)出現(xiàn)安全故障問(wèn)題,由此可知傳統(tǒng)的采用PBFT共識(shí)的區(qū)塊鏈分片系統(tǒng)雖然提高了區(qū)塊鏈的吞吐量、時(shí)延等性能,但由于每個(gè)分片獨(dú)立共識(shí),片內(nèi)的共識(shí)節(jié)點(diǎn)數(shù)量減少,拜占庭攻擊概率大增。而本文模型采用了節(jié)點(diǎn)可信度評(píng)估機(jī)制,當(dāng)共識(shí)的節(jié)點(diǎn)被評(píng)估為惡意節(jié)點(diǎn)后將直接將其移出共識(shí)節(jié)點(diǎn)組,大大降低了惡意節(jié)點(diǎn)繼續(xù)作惡的概率,提高了分片后系統(tǒng)的容錯(cuò)能力和抗攻擊能力,極大地增強(qiáng)了系統(tǒng)的安全性。

4.4 復(fù)雜度分析

假設(shè)區(qū)塊鏈分片網(wǎng)絡(luò)中的節(jié)點(diǎn)數(shù)量為n,分片數(shù)量為m,每個(gè)區(qū)塊的大小為b,節(jié)點(diǎn)可信度閾值區(qū)間個(gè)數(shù)為t。當(dāng)客戶端發(fā)起交易時(shí),這些交易將發(fā)送到每個(gè)分片中的主節(jié)點(diǎn),主節(jié)點(diǎn)負(fù)責(zé)在分片內(nèi)廣播交易,此過(guò)程的時(shí)間復(fù)雜度為Ο(m);隨后,主節(jié)點(diǎn)生成大小為b的交易列表區(qū)塊,并將區(qū)塊廣播到所有分片節(jié)點(diǎn),時(shí)間復(fù)雜度也為Ο(m);由于區(qū)塊大小為b,其時(shí)間復(fù)雜度是Ο(m2/b);除此之外,如果是跨分片交易,則會(huì)增加Ο(n)的跨分片開(kāi)銷,這與OmniLeger方案[10]一樣。因此,總的共識(shí)時(shí)間復(fù)雜度為Ο(m2/b+n)。在分片重配置階段,設(shè)計(jì)了基于節(jié)點(diǎn)可信度等級(jí)的網(wǎng)絡(luò)分片算法,其時(shí)間復(fù)雜度為Ο(nt)+Ο(m)。由于t通常為一個(gè)較小的數(shù)量,可以視其為Ο(1),所以算法的時(shí)間復(fù)雜度可以簡(jiǎn)化為Ο(n)+Ο(m)。

5 實(shí)驗(yàn)分析

5.1 實(shí)驗(yàn)環(huán)境配置

為驗(yàn)證本文模型的可用性和有效性,基于GoLand開(kāi)發(fā)軟件利用Go語(yǔ)言編寫程序并進(jìn)行性能測(cè)試。實(shí)驗(yàn)過(guò)程中,本文以以太坊的真實(shí)轉(zhuǎn)賬交易數(shù)據(jù)作為數(shù)據(jù)來(lái)源,區(qū)塊交易大小為500筆交易,出塊時(shí)間設(shè)置為3 s,采用PBFT共識(shí)算法。實(shí)驗(yàn)詳細(xì)環(huán)境配置如表3所示。

5.2 可信度分析

5.2.1 節(jié)點(diǎn)可信度變化情況

在驗(yàn)證節(jié)點(diǎn)交易行為對(duì)可信度的影響過(guò)程中,設(shè)定誠(chéng)實(shí)節(jié)點(diǎn)和惡意節(jié)點(diǎn)初始的行為可信度均為0.5。本文模擬了誠(chéng)實(shí)節(jié)點(diǎn)在每一輪的共識(shí)中以正確的方式執(zhí)行交易行為,而惡意節(jié)點(diǎn)則以拒絕提交共識(shí)消息或提交錯(cuò)誤消息的方式表現(xiàn)惡意行為,圖3記錄了節(jié)點(diǎn)可信度的變化情況。

從圖3(a)中誠(chéng)實(shí)節(jié)點(diǎn)的可信度變化情況可以看出,隨著交易輪次的增加,誠(chéng)實(shí)節(jié)點(diǎn)由于執(zhí)行正確的共識(shí)行為,節(jié)點(diǎn)行為可信度逐漸增加,其綜合可信度值不會(huì)降低,從而不會(huì)因?yàn)榈陀谄尚砰撝刀惶蕹齾^(qū)塊鏈分片網(wǎng)絡(luò)。從圖3(b)中可知,由于惡意行為的影響,惡意節(jié)點(diǎn)的行為可信度逐漸降低,一旦低于片可信閾值,在下一輪的分片重組中此類節(jié)點(diǎn)將被系統(tǒng)剔除。實(shí)驗(yàn)結(jié)果表明,可信度評(píng)估機(jī)制能夠根據(jù)節(jié)點(diǎn)行為及時(shí)準(zhǔn)確地評(píng)估惡意節(jié)點(diǎn),減少惡意節(jié)點(diǎn)的數(shù)量,進(jìn)而確保整個(gè)系統(tǒng)的穩(wěn)定性和安全性。

5.2.2 惡意節(jié)點(diǎn)占比

為了驗(yàn)證本文模型評(píng)估惡意節(jié)點(diǎn)的準(zhǔn)確性,對(duì)模型進(jìn)行實(shí)驗(yàn)測(cè)試以研究隨著共識(shí)輪次的逐漸增加,區(qū)塊鏈分片網(wǎng)絡(luò)中惡意節(jié)點(diǎn)占比的變化情況,測(cè)試結(jié)果如圖4所示。從圖4可以看出,在缺乏可信評(píng)估機(jī)制的情況下,惡意節(jié)點(diǎn)數(shù)量占比一直保持不變;而在本文模型中引入可信度評(píng)估機(jī)制后,惡意節(jié)點(diǎn)數(shù)量呈現(xiàn)出逐漸減少的趨勢(shì),這是因?yàn)楸疚哪P驮诜制亟M時(shí)會(huì)根據(jù)可信度評(píng)估結(jié)果周期性剔除網(wǎng)絡(luò)中的惡意節(jié)點(diǎn),減少了網(wǎng)絡(luò)中惡意節(jié)點(diǎn)的數(shù)量,從而使得網(wǎng)絡(luò)中惡意節(jié)點(diǎn)的比例下降。實(shí)驗(yàn)結(jié)果表明,該模型在共識(shí)輪次達(dá)到10次左右時(shí),惡意節(jié)點(diǎn)占比降至2%左右,具有較高的評(píng)估準(zhǔn)確率,顯著提高了系統(tǒng)的容錯(cuò)能力,有助于減輕惡意節(jié)點(diǎn)對(duì)區(qū)塊鏈分片網(wǎng)絡(luò)的潛在威脅。

5.3 區(qū)塊鏈分片性能分析

1)吞吐量

吞吐量是衡量區(qū)塊鏈交易處理能力的重要指標(biāo),在不同節(jié)點(diǎn)數(shù)量下對(duì)傳統(tǒng)未分片的區(qū)塊鏈模型與本文模型(CBDSM)進(jìn)行了吞吐量測(cè)試,本文模型設(shè)置每10個(gè)節(jié)點(diǎn)增加一個(gè)分片,測(cè)試結(jié)果如圖5所示。從圖中可以看出,隨著節(jié)點(diǎn)數(shù)量的增加,傳統(tǒng)未分片的區(qū)塊鏈模型的吞吐量逐漸下降,而本文模型呈現(xiàn)出遞增的趨勢(shì)。原因是未分片的區(qū)塊鏈模型需要所有節(jié)點(diǎn)參與交易驗(yàn)證和共識(shí)過(guò)程,節(jié)點(diǎn)數(shù)量增加會(huì)造成系統(tǒng)負(fù)荷增大,導(dǎo)致吞吐量下降;而本文模型在節(jié)點(diǎn)數(shù)量增加時(shí)分片數(shù)量也動(dòng)態(tài)增加,使得系統(tǒng)處理能力得到提升。實(shí)驗(yàn)結(jié)果表明,本文模型在吞吐量方面明顯優(yōu)于傳統(tǒng)未分片的區(qū)塊鏈模型。由此可見(jiàn),本文模型能更好地適應(yīng)高負(fù)載情況下的交易需求,能夠?qū)崿F(xiàn)吞吐量隨節(jié)點(diǎn)數(shù)量線性關(guān)系的增長(zhǎng),具備較好的可擴(kuò)展性。

2)存儲(chǔ)開(kāi)銷

為了驗(yàn)證本模型在存儲(chǔ)開(kāi)銷方面的優(yōu)勢(shì),本節(jié)設(shè)置節(jié)點(diǎn)數(shù)量為50個(gè),分片數(shù)量為5個(gè),對(duì)本文模型和未分片模型測(cè)試不同交易數(shù)量下其存儲(chǔ)開(kāi)銷情況,測(cè)試結(jié)果如圖6所示。從圖中可以看出,當(dāng)交易數(shù)量為300 000筆時(shí),未分片模型存儲(chǔ)開(kāi)銷為32 700 KB;而本文模型最大的存儲(chǔ)開(kāi)銷為18 946 KB,平均存儲(chǔ)開(kāi)銷僅為14 325 KB左右。相比而言,本文模型在存儲(chǔ)開(kāi)銷上節(jié)省了44%左右,原因是本文模型分片后,每個(gè)節(jié)點(diǎn)只需存儲(chǔ)本分片內(nèi)的交易區(qū)塊信息,而傳統(tǒng)模型中每個(gè)節(jié)點(diǎn)需存儲(chǔ)所有區(qū)塊的信息。此外,隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大,傳統(tǒng)未分片區(qū)塊鏈系統(tǒng)的存儲(chǔ)開(kāi)銷也會(huì)隨之大增,但本文模型會(huì)動(dòng)態(tài)調(diào)整分片數(shù)量以進(jìn)一步分擔(dān)存儲(chǔ)和共識(shí)壓力。由此可見(jiàn),本文模型能夠有效降低系統(tǒng)的存儲(chǔ)壓力,節(jié)省大量的存儲(chǔ)和資源開(kāi)銷,提升系統(tǒng)資源利用率。

3)共識(shí)失敗率

區(qū)塊鏈分片后,每個(gè)分片中的節(jié)點(diǎn)獨(dú)立參與片內(nèi)共識(shí)協(xié)議,片內(nèi)惡意節(jié)點(diǎn)數(shù)量過(guò)多會(huì)嚴(yán)重影響區(qū)塊鏈系統(tǒng)的出塊速率和可用性。若片內(nèi)主節(jié)點(diǎn)為惡意節(jié)點(diǎn)會(huì)增大PBFT共識(shí)協(xié)議中視圖轉(zhuǎn)換的頻率,進(jìn)而降低系統(tǒng)的共識(shí)準(zhǔn)確率和效率。為了驗(yàn)證這一點(diǎn),本節(jié)測(cè)試了隨機(jī)分片模型(RSM)和本文模型在不同惡意節(jié)點(diǎn)下共識(shí)失敗的情況。設(shè)置區(qū)塊鏈分片網(wǎng)絡(luò)中節(jié)點(diǎn)總數(shù)為100個(gè),分片數(shù)量為10個(gè),交易總數(shù)為1 000,實(shí)驗(yàn)結(jié)果如圖7所示。由圖7可知,RSM模型隨著惡意節(jié)點(diǎn)數(shù)量的增加,共識(shí)失敗率逐漸遞增且當(dāng)惡意節(jié)點(diǎn)數(shù)量達(dá)到33個(gè)時(shí),共識(shí)失敗率達(dá)到了0.63;而本文模型基本在0.15~0.25,且當(dāng)惡意節(jié)點(diǎn)數(shù)為35時(shí)共識(shí)失效率只有0.248,相比于RSM下降了46.7%。主要原因是本文模型利用可信度機(jī)制對(duì)節(jié)點(diǎn)評(píng)估,并在共識(shí)過(guò)程中周期性地剔除了惡意節(jié)點(diǎn),從而減少了惡意節(jié)點(diǎn)對(duì)共識(shí)的影響,顯著降低了共識(shí)失敗率,保證了PBFT共識(shí)安全以及高效且穩(wěn)定運(yùn)行。

5.4 對(duì)比分析

5.4.1 各分片方案對(duì)比

在本節(jié)中,本文模型與其他多種分片方案進(jìn)行了詳細(xì)的分析比較,表4為各種方案的功能性對(duì)比。除了OmniLeger和RapidChain外,其他方案都基于可信度進(jìn)行節(jié)點(diǎn)劃分,以增強(qiáng)系統(tǒng)的安全性。相比于現(xiàn)存的基于可信度的分片方案RepChain和Cuckchain,CBDSM方案全面考慮了節(jié)點(diǎn)的行為和性能特征并設(shè)計(jì)了惡意節(jié)點(diǎn)的剔除機(jī)制,進(jìn)一步保證了系統(tǒng)的安全。

各分片方案的性能對(duì)比如表5所示。在吞吐量和時(shí)延方面,CBDSM方案表現(xiàn)出最好的性能;在容錯(cuò)性上,因?qū)阂夤?jié)點(diǎn)的準(zhǔn)確識(shí)別和去除而提高了系統(tǒng)的容錯(cuò)性;在復(fù)雜度上,雖然RapidChain和Cuckchain的時(shí)間復(fù)雜度表現(xiàn)較好,但是RapidChain為了解決跨分片交易而產(chǎn)生了大量的事務(wù),顯著降低了系統(tǒng)的吞吐量,而Cuckchain中安全風(fēng)險(xiǎn)較大。

以下從分片失效率、容錯(cuò)性、吞吐量、時(shí)延和分片負(fù)載五個(gè)關(guān)鍵維度進(jìn)行深入分析,對(duì)比了本文模型與隨機(jī)分片模型、地址取模分片模型(AMSM)和Monoxide分片模型[12]。在RSM中節(jié)點(diǎn)隨機(jī)地分配到不同的分片中,由于節(jié)點(diǎn)分布是隨機(jī)的,并未考慮節(jié)點(diǎn)的行為和功能特征,極易造成系統(tǒng)中節(jié)點(diǎn)分片不均衡,進(jìn)而產(chǎn)生惡意節(jié)點(diǎn)單點(diǎn)聚集和負(fù)載不均的問(wèn)題;AMSM根據(jù)地址信息將節(jié)點(diǎn)映射到不同的分片,然而這種預(yù)測(cè)性的分片方式極易受到攻擊威脅;Monoxide分片模型采用POW的方式進(jìn)行分片,這種基于算力的分配方式一方面在一定程度上犧牲了去中心化,另一方面也會(huì)帶來(lái)巨大的資源開(kāi)銷。本文模型在前述模型的基礎(chǔ)上進(jìn)行了優(yōu)化與改進(jìn),相對(duì)于現(xiàn)有模型,其在安全性、吞吐量以及時(shí)延等方面表現(xiàn)出了顯著的優(yōu)勢(shì)。

5.4.2 分片失效率對(duì)比

分片失效率是衡量網(wǎng)絡(luò)分片有效性的重要指標(biāo),分片失效率定義為失效的分片數(shù)量占分片總數(shù)的比例,計(jì)算方式如式(27)所示。分片失效率越大,說(shuō)明網(wǎng)絡(luò)分片惡意節(jié)點(diǎn)聚集在極少部分分片的概率越高,存在的安全性隱患就越大。

FailureRate=shardfailshardsum×100%(27)

其中:shardfail、shardsum分別代表失敗的分片數(shù)量和分片總數(shù)量。

為了全面評(píng)估本文模型與其他分片模型在分片失效率方面的表現(xiàn),本節(jié)測(cè)試了不同惡意節(jié)點(diǎn)比例下各模型的分片失效率,結(jié)果如圖8所示。總體而言,隨著惡意節(jié)點(diǎn)占比的增加,各模型的失效率均呈上升趨勢(shì),相比而言,CBDSM表現(xiàn)出最低的分片失效率以及較小的失效率增長(zhǎng)量。具體而言,當(dāng)惡意節(jié)點(diǎn)占比達(dá)到30%時(shí),RSM的平均分片失效率為43.1%,AMSM和Monoxide模型達(dá)到了40%,而CBDSM僅為6%。這歸因于本文模型設(shè)計(jì)了節(jié)點(diǎn)可信度評(píng)估機(jī)制,通過(guò)評(píng)估節(jié)點(diǎn)可信度識(shí)別并及時(shí)剔除惡意節(jié)點(diǎn),從而顯著降低了惡意節(jié)點(diǎn)聚集在少數(shù)分片的概率,進(jìn)而有效減少分片失效的情況??梢?jiàn),本文模型能夠顯著提高分片的有效性,具備更強(qiáng)的抗攻擊能力和系統(tǒng)穩(wěn)健性。

5.4.3 容錯(cuò)性對(duì)比

容錯(cuò)性是指系統(tǒng)能夠在一定程度的節(jié)點(diǎn)宕機(jī)、共識(shí)失敗或部分節(jié)點(diǎn)提交了惡意行為的情況下仍能夠正常運(yùn)行的能力。在區(qū)塊鏈系統(tǒng)中,容錯(cuò)性通常用式(28)來(lái)計(jì)算。

F=N-13(28)

其中:F是可以容忍的拜占庭錯(cuò)誤節(jié)點(diǎn)數(shù);N是總的節(jié)點(diǎn)數(shù)。

在CBDSM中由高效可信節(jié)點(diǎn)和普通節(jié)點(diǎn)參與共識(shí),假設(shè)在模型中系統(tǒng)的高效可信節(jié)點(diǎn)和普通節(jié)點(diǎn)總數(shù)為Nc,可以容納的拜占庭節(jié)點(diǎn)數(shù)為Fc,為了保證共識(shí)的安全可靠,F(xiàn)c需要滿足的條件如下所示:

Fc≤Nc2(29)

在RSM和AMSM中,由于系統(tǒng)采用PBFT進(jìn)行共識(shí),假設(shè)在模型中系統(tǒng)的高效節(jié)點(diǎn)總數(shù)為Np,可以容納的拜占庭節(jié)點(diǎn)數(shù)為Fp,要保證共識(shí)的絕對(duì)安全,可以容忍的最大拜占庭節(jié)點(diǎn)總數(shù)應(yīng)滿足的條件如下所示:

Fp≤Np-12(30)

假設(shè)在區(qū)塊鏈網(wǎng)絡(luò)中參與共識(shí)的節(jié)點(diǎn)規(guī)模相同,即Nc=Np,通過(guò)式(31)計(jì)算可得Fcgt;Fp。

Fc-Fp=Nc2-Np-13=Nc+13(31)

由于Nc和Np相同且都大于0,所以容易得到Fcgt;Fp恒成立。也就說(shuō)明在網(wǎng)絡(luò)節(jié)點(diǎn)規(guī)模相同的情況下,本文模型能夠容忍更多的惡意節(jié)點(diǎn),具有更高的容錯(cuò)性,能更好地抵抗故障和攻擊,保證數(shù)據(jù)的一致性和安全性。

5.4.4 吞吐量對(duì)比

將CBDSM與RSM、AMSM和Monoxide模型進(jìn)行對(duì)比,測(cè)試了在不同分片數(shù)量條件下各模型的吞吐量情況,實(shí)驗(yàn)結(jié)果如圖9所示。在分片數(shù)量一致的情況下,CBDSM表現(xiàn)出最高的吞吐量,在分片數(shù)量不斷增加的情況下,它的吞吐量增長(zhǎng)幅度更為顯著。具體來(lái)說(shuō),分片數(shù)量從10個(gè)增加至12個(gè)時(shí),RSM、AMSM和Monoxide模型的吞吐量增加量分別為172 TPS、171 TPS和271 TPS,而CBDSM的吞吐量卻增加了380 TPS。由此可見(jiàn),CBDSM能夠滿足網(wǎng)絡(luò)規(guī)模不斷增長(zhǎng)的需求,較其他模型而言,在大規(guī)模區(qū)塊鏈網(wǎng)絡(luò)中CBDSM具有更為明顯的優(yōu)勢(shì),更加適用于大規(guī)模的區(qū)塊鏈網(wǎng)絡(luò)。

5.4.5 時(shí)延對(duì)比

本節(jié)對(duì)比了CBDSM與其他分片模型在不同分片數(shù)量下的時(shí)延情況,以全面評(píng)估模型的時(shí)延表現(xiàn),測(cè)試結(jié)果如圖10所示??傮w而言,隨著分片數(shù)量的增加,RSM、AMSM、Monoxide和CBDSM模型的時(shí)延均呈現(xiàn)遞減的趨勢(shì),這歸因于分片后多個(gè)分片并行執(zhí)行交易,從而有效提高了整體的處理效率。相比而言,CBDSM在各個(gè)分片數(shù)量下一直表現(xiàn)出最低的時(shí)延,以分片數(shù)量為10為例,RSM和AMSM模型的時(shí)延均為3.76 s,Monoxide模型為3.41 s,而CBDSM僅為3.07 s。其原因是該模型有效剔除了惡意節(jié)點(diǎn)的不良影響,避免了因惡意節(jié)點(diǎn)當(dāng)選主節(jié)點(diǎn)引發(fā)頻繁視圖轉(zhuǎn)換而帶來(lái)的時(shí)間開(kāi)銷,從而顯著減少了交易確認(rèn)的時(shí)間;同時(shí)該模型通過(guò)將每類節(jié)點(diǎn)均衡分配到各分片實(shí)現(xiàn)了節(jié)點(diǎn)資源的有效利用,進(jìn)一步提高了系統(tǒng)的整體處理效率。因此,本文模型在共識(shí)時(shí)延方面具有顯著優(yōu)勢(shì),能夠滿足實(shí)際應(yīng)用場(chǎng)景的需求。

5.4.6 分片負(fù)載均衡對(duì)比

分片間算力的不均衡會(huì)給區(qū)塊鏈分片的性能造成巨大損失,是導(dǎo)致區(qū)塊鏈分片系統(tǒng)低吞吐量、高時(shí)延的重要因素[29]。為了驗(yàn)證本文模型在分片負(fù)載均衡方面的優(yōu)勢(shì),本節(jié)設(shè)置分片數(shù)量為16,對(duì)RSM、AMSM、Monoxide和CBDSM進(jìn)行測(cè)試,統(tǒng)計(jì)每個(gè)分片的交易負(fù)載情況,測(cè)試結(jié)果如圖11所示。從圖11可以看出,AMSM和Monoxide分片間的負(fù)載變化波動(dòng)明顯,在AMSM和Monoxide模型中交易最大差分別為2 030 tx和3 588 tx;相比之下,CBDSM最大的交易差僅為325 tx,降低了一個(gè)數(shù)量級(jí)。此外,雖然RSM模型沒(méi)有明顯的差距,但CBDSM表現(xiàn)得更加穩(wěn)定,負(fù)載更均衡。其主要原因在于該模型對(duì)節(jié)點(diǎn)進(jìn)行可信度評(píng)分時(shí)充分考慮了節(jié)點(diǎn)的性能差異,實(shí)現(xiàn)了節(jié)點(diǎn)的均衡劃分,使得節(jié)點(diǎn)資源能夠得以均衡利用,從而保證了分片之間對(duì)于交易的處理能力基本一致。由此可見(jiàn),本文模型在保障高可靠性的同時(shí)能較好地實(shí)現(xiàn)交易負(fù)載平衡,提升系統(tǒng)的整體性能,實(shí)現(xiàn)了資源利用的最大化。

6 結(jié)束語(yǔ)

為了解決區(qū)塊鏈分片單點(diǎn)聚集引發(fā)的安全性和性能瓶頸,本文提出基于節(jié)點(diǎn)可信度的區(qū)塊鏈動(dòng)態(tài)分片模型。通過(guò)設(shè)計(jì)節(jié)點(diǎn)可信度評(píng)估機(jī)制實(shí)現(xiàn)細(xì)粒度的節(jié)點(diǎn)能力和可靠性評(píng)估,有效避免了單點(diǎn)聚集和合謀攻擊問(wèn)題,同時(shí)基于節(jié)點(diǎn)等級(jí)的動(dòng)態(tài)分片方式有效地保證了分片間均衡的可信度水平,保證了負(fù)載均衡,減少了分片重組帶來(lái)的資源開(kāi)銷。通過(guò)實(shí)驗(yàn)證明,本文模型能夠在確保性能穩(wěn)定的前提下實(shí)現(xiàn)分片間的負(fù)載均衡,解決惡意節(jié)點(diǎn)引發(fā)的安全性及性能問(wèn)題,相比于現(xiàn)有模型,具有更好的容錯(cuò)性、更低的分片失效率和更高的安全性。下一步工作將側(cè)重于區(qū)塊鏈分片的跨分片交易處理和共識(shí)問(wèn)題,著力解決區(qū)塊鏈分片共識(shí)效率,以構(gòu)建更高效的區(qū)塊鏈分片模型。

參考文獻(xiàn):

[1]發(fā)改委. 中華人民共和國(guó)國(guó)家發(fā)展和改革委員會(huì). 中華人民共和國(guó)國(guó)民經(jīng)濟(jì)和社會(huì)發(fā)展第十四個(gè)五年規(guī)劃和2035年遠(yuǎn)景目標(biāo)綱要 [EB/OL]. [2024-04-06]. https://www.gov.cn/x-inwen/2021-03/13/content_5592681.htm. (National Development and Reform Commission. The 14th 5-Year Plan for national economic and social development of the People’s Republic of China and the outline of the long-range goals to 2035 [EB/OL]. [2024-04-06]. https://www.gov.cn/x-inwen/2021-03/13/content_5592681.html.)

[2]中國(guó)電子信息產(chǎn)業(yè)發(fā)展研究院. 2022-2023中國(guó)區(qū)塊鏈年度發(fā)展報(bào)告 [R/OL]. (2023-06-26)[2024-04-06]. https://www.ccidgroup.com/info/1155/37746.htm. (China Center for Information Industry Development. China blockchain annual development report 2022-2023 [R/OL]. (2023-06-26) [2024-04-06]. https://www.ccidgroup.com/info/1155/37746.htm.)

[3]Sanka A I, Cheung R C C. A systematic review of blockchain sca-lability: issues, solutions, analysis and future research [J]. Journal of Network and Computer Applications, 2021, 195(12): 103232.

[4]Hafid A, Hafid A S, Samih M. Scaling blockchains: a comprehensive survey [J]. IEEE Access, 2020, 8: 125244-125262.

[5]Nasir M H, Arshad J, Khan M M, et al. Scalable blockchains: a systematic review [J]. Future Generation Computer Systems, 2022, 126(1): 136-162.

[6]Liu Yizhong, Liu Jianwei, Salles M A V, et al. Building blocks of sharding blockchain systems: concepts, approaches, and open problems [J]. Computer Science Review, 2022, 46(11): 100513.

[7]Li Yi, Wang Jinsong, Zhang Hongwei. A survey of state-of-the-art sharding blockchains: models, components, and attack surfaces [J]. Journal of Network and Computer Applications, 2023, 217(8): 103686.

[8]陳晶,楊浩,何琨,等. 區(qū)塊鏈擴(kuò)展技術(shù)現(xiàn)狀與展望[J]. 軟件學(xué)報(bào), 2024, 35(2): 828-851. (Chen Jing, Yang Hao, He Kun et al. Current situation and prospect of blockchain scaling technology [J]. Journal of Software, 2024, 35(2): 828-851.)

[9]Luu L, Narayanan V, Zheng Chaodong, et al. A secure sharding protocol for open blockchains [C]// Proc of ACM SIGSAC Conference on Computer and Communications Security. New York: ACM Press, 2016: 17-30.

[10]Kokoris-Kogias E, Jovanovic P, Gasser L, et al. OmniLedger: a secure, scale-out, decentralized ledger via sharding [C]// Proc of IEEE Symposium on Security and Privacy. Piscataway, NJ: IEEE Press, 2018: 583-598.

[11]Zamani M, Movahedi M, Raykova M. RapidChain: scaling blockchain via full sharding [C]// Proc of ACM SIGSAC Conference on Computer and Communications Security. New York: ACM Press, 2018: 931-948.

[12]Wang Jiaping, Wang Hao. Monoxide: scale out blockchains with asynchronous consensus zones[C]// Proc of the 16th USENIX Symposium on Networked Systems Design and Implementation. Berkeley, CA: USENIX Association, 2019: 95-112.

[13]Dang H, Dinh T T A, Loghin D, et al. Towards scaling blockchain systems via sharding [C]// Proc of International Conference on Ma-nagement of Data. New York: ACM Press, 2019: 123-140.

[14]Zhang Jianting, Hong Zicong, Qiu Xiaoyu, et al. SkyChain: a deep reinforcement learning-empowered dynamic blockchain sharding system [C]// Proc of the 49th International Conference on Parallel Processing. New York: ACM Press, 2020: article No.3.

[15]Yun J, Goh Y, Chung J M. DQN-based optimization framework for secure sharded blockchain systems [J]. IEEE Internet of Things Journal, 2020, 8(2): 708-722.

[16]Yang Zhaoxin, Yang Ruizhe, Yu F R, et al. Sharded blockchain for collaborative computing in the Internet of things: combined of dynamic clustering and deep reinforcement learning approach [J]. IEEE Internet of Things Journal, 2022, 9(17): 16494-16509.

[17]Cai Zhongteng, Liang Junyuan, Chen Wuhui, et al. Benzene: sca-ling blockchain with cooperation-based sharding [J]. IEEE Trans on Parallel and Distributed Systems, 2022, 34(2): 639-654.

[18]Hong Zicong, Guo Song, Li Peng. Scaling blockchain via layered sharding [J]. IEEE Journal on Selected Areas in Communications, 2022, 40(12): 3575-3588.

[19]Xu Yibin, Huang Yangyu. An n/2 Byzantine node tolerate blockchain sharding approach [C]// Proc of the 35th Annual ACM Symposium on Applied Computing. New York: ACM Press, 2020: 349-352.

[20]李皎, 王煜田, 高耀芃. 一種抗合謀攻擊的區(qū)塊鏈網(wǎng)絡(luò)分片算法 [J]. 計(jì)算機(jī)應(yīng)用研究, 2023, 40(1): 28-32,41. (Li Jiao, Wang Yutian, Gao Yaopeng. Anti-collusion attack network sharding algorithm for blockchain [J]. Application Research of Computers, 2023, 40(1): 28-32,41.)

[21]Yun J, Goh Y, Chung J M. Trust-based shard distribution scheme for fault-tolerant shard blockchain networks [J]. IEEE Access, 2019, 7: 135164-135175.

[22]Halgamuge M N, Hettikankanamge S C, Mohammad A. Trust model to minimize the influence of malicious attacks in sharding based blockchain networks [C]// Proc of the 3rd IEEE International Conference on Artificial Intelligence and Knowledge Engineering. Piscataway, NJ: IEEE Press, 2020: 162-167.

[23]王夢(mèng)楠, 黃建華, 邵興輝, 等. 基于信譽(yù)的區(qū)塊鏈分片共識(shí)方案 [J]. 計(jì)算機(jī)科學(xué), 2022, 49(10): 297-309. (Wang Mengnan, Huang Jianhua, Shao Xinghui, et al. Reputation-based blockchain sharding consensus scheme [J]. Computer Science, 2022, 49(10): 297-309.)

[24]Cai Xingjuan, Geng Shaojin, Zhang Jingbo, et al. A sharding scheme-based many objective optimization algorithms for enhancing security in blockchain enabled industrial Internet of things [J]. IEEE Trans on Industrial Informatics, 2021, 17(11): 7650-7658.

[25]Huang Chenyu, Wang Zeyu, Chen Huangxun, et al. RepChain: a reputation-based secure, fast, and high incentive blockchain system via sharding [J]. IEEE Internet of Things Journal, 2021, 8(6): 4291-4304.

[26]Tian Junfeng, Jing Caishi, Tian Jin. CuckChain: a cuckoo rule based secure, high incentive and low latency blockchain system via sharding [C]// Proc of IEEE Symposium on Computers and Communications. Piscataway, NJ: IEEE Press, 2023: 1228-1234.

[27]Xiong Li, Liu Ling. PeerTrust: supporting reputation-based trust for peer-to-peer electronic communities [J]. IEEE Trans on Know-ledge and Data Engineering, 2004, 16(7): 843-857.

[28]Sharding FAQ [EB/OL]. (2022-05-24)[2024-04-06]. https://github.com/ethereum/wiki/wiki/Sharding-FAQs/c54cf1b520b0bd0-7468bee6950cda9a2c4ab4982.

[29]Li Mingzhe, Wang Wei, Zhang Jin. LB-Chain: load-balanced and low-latency blockchain sharding via account migration [J]. IEEE Trans on Parallel and Distributed Systems, 2023, 34(10): 2797-2810.

猜你喜歡
可擴(kuò)展性區(qū)塊鏈
恩智浦推出全新i.MX 8X 處理器,為工業(yè)應(yīng)用帶來(lái)更高的安全性、可靠性和可擴(kuò)展性
汽車零部件(2017年3期)2017-07-12 17:03:58
電力監(jiān)控軟件的可擴(kuò)展性設(shè)計(jì)
保險(xiǎn)企業(yè)的區(qū)塊鏈技術(shù)應(yīng)用方向選擇研究
區(qū)塊鏈技術(shù)在金融領(lǐng)域的應(yīng)用與前景研究
區(qū)塊鏈技術(shù)的應(yīng)用價(jià)值分析
商情(2016年40期)2016-11-28 11:24:12
“區(qū)塊鏈”的茍且、詩(shī)和遠(yuǎn)方
基于區(qū)塊鏈技術(shù)的數(shù)字貨幣與傳統(tǒng)貨幣辨析
基于微軟技術(shù)的高可擴(kuò)展性中小企業(yè)系統(tǒng)解決方案研究
構(gòu)建高可擴(kuò)展性的物流裝備管理系統(tǒng)
用“區(qū)塊鏈”助推中企走出去
汉沽区| 雅江县| 平顶山市| 漳浦县| 旺苍县| 社会| 韩城市| 信丰县| 姚安县| 吕梁市| 安乡县| 上林县| 台东县| 波密县| 汾阳市| 土默特左旗| 平安县| 永和县| 玉树县| 澄江县| 宜丰县| 永安市| 三河市| 阿克苏市| 合作市| 梁河县| 新安县| 大厂| 无为县| 罗甸县| 固镇县| 迁安市| 新乡市| 甘德县| 福州市| 义马市| 南溪县| 达州市| 伊吾县| 安顺市| 桂林市|