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

?

基于信任優(yōu)化的共識算法的區(qū)塊鏈知識共享研究實驗測試及分析

2024-01-17 09:54:20陳海宇
貴陽學院學報(自然科學版) 2023年4期
關鍵詞:分片吞吐量共識

陳海宇

(肇慶醫(yī)學高等??茖W校 公共衛(wèi)生學院,廣東 肇慶 526020)

知識經(jīng)濟的發(fā)展推動著基于區(qū)塊鏈的知識共享技術得到快速發(fā)展,而實際的知識共享網(wǎng)絡是一種難以利用固定的時間假設來描述的異步網(wǎng)絡。[1-2]同時當前的知識共享算法很難滿足區(qū)塊鏈知識共享的吞吐量、安全性等要求,[3-4]因此對現(xiàn)有的知識共享算法進行改進勢在必行。李啟南等為解決主節(jié)點在發(fā)生錯誤時導致吞吐量降低的問題,通過引入新的區(qū)塊拓展對傳統(tǒng)的快速熱材料(Fast-Hot Stuff)算法進行改進。[5]Philsoophian M等對供應鏈管理中知識共享存在的安全性問題,通過運用結構方程模型來改進了供應鏈知識共享的相關實踐。[6]鐘增勝為提升區(qū)塊鏈系統(tǒng)的整體性能,通過引入智能合約的相關方法對傳統(tǒng)的權益證明(Proof of Stake,PoS)共識算法進行了改進。[7]在此背景下,研究針對區(qū)塊鏈知識共享中的相關問題,通過引入有向無環(huán)圖(Directed Acyclic Graph,DAG)算法對傳統(tǒng)的原子廣播協(xié)議(Dumbo)算法進行了改進,提出了DAG-Dumbo算法,并針對分片區(qū)塊鏈的安全性問題提出了在信任優(yōu)化基礎上購進的自適應分片算法,旨在提升知識共享經(jīng)濟時代下區(qū)塊鏈的異步環(huán)境適應能力以及提升區(qū)塊鏈知識共享時的安全性。

1 基于信任優(yōu)化的共識算法的區(qū)塊鏈知識共享研究

1.1 基于DAG-Dumbo算法的區(qū)塊鏈異步共識方法設計

區(qū)塊鏈的鏈狀結構能確保信息的不可更改性,但也會損害其運行速度。在區(qū)塊鏈系統(tǒng)中,由某種原因引起的操作錯誤、系統(tǒng)崩潰、惡意攻擊等都會引起系統(tǒng)錯誤,這樣的錯誤被稱為拜占庭錯誤。[8]在異步網(wǎng)絡環(huán)境下,節(jié)點超時的原因難以被區(qū)分,該網(wǎng)絡更加符合網(wǎng)絡真實環(huán)境。當前,Dumbo算法是表現(xiàn)效果最好的異步拜占庭共識算法,能最大化利用網(wǎng)絡環(huán)境,從而更快達成共識,該算法的流程如圖1所示。[9]

圖1 Dumbo算法的流程結構

如圖1所示,Dumbo算法在廣播階段,各節(jié)點會由客戶端發(fā)來的交易txi向其余節(jié)點廣播,并將收到的txi放置在緩沖區(qū)。在共識階段,各節(jié)點在緩沖區(qū)選擇一個交易集合,將會運行ABA協(xié)議讓節(jié)點達成共識。多值驗證拜占庭協(xié)議(Multi-value Validated Byzantine Agreement,MVBA)使用了一個外部驗證,其通過判斷消息與外部驗證的符合情況,從而判斷出消息的合法性,并移除了信息矩陣。[10]MVBA算法一開始就會先進入消息同步階段,然后將各節(jié)點所提交的建議信息進行傳遞。MVBA算法的通信復雜度計算表達如式(1)所示。

O=(n|m|+λn2)

(1)

在式(1)中,λ代表領導者,m為在預備階段,λ收到的來自客戶端的信息,n為λ為消息m分配序號。Dumbo算法選擇自傳入消息的標記,即消息的id。為避免傳入虛假的id,研究引入可證明的可靠消息傳播算法PRBC。通過收集各節(jié)點對消息確認信息的簽名,來確保每條消息正確有效,并保證每條消息至少被一個誠實節(jié)v點接收過。PRBC能夠滿足的性質(zhì)包括簡短性、完整性、有效性,以及一致性。其中,一致性的解釋是若一個城市節(jié)點輸出為v,則其他的城市節(jié)點v′輸出結果如式(2)所示。

v′=vi

(2)

式(2)為在第i輪次中城市節(jié)點的輸出。在PRBC中使用無線承載控制(Radio Bearer Control,RBC)算法時,節(jié)點Pi將收到的交易消息分為n-f塊,并將此類小塊與2f個糾刪碼塊組合為廣播集合,其表達如式(3)所示。

(3)

在式(3)中,M為廣播的集合,m與c均為糾刪碼。在消息傳遞時,M中的各消息塊被節(jié)點Pi傳送給網(wǎng)絡中的各節(jié)點。當其他節(jié)點收到Pi傳來的消息塊時,又會將該消息塊發(fā)送給另外的節(jié)點。在收到n-f個消息塊時,該節(jié)點會根據(jù)糾刪碼對原始消息進行修正并校驗。若Echo消息被正確地廣播,當收到足夠的Echo消息時,即表示該消息被確認。盡管Dumbo算法具有較好的安全性與共識速度,但該算法串行完成兩個階段流程仍然會降低其整體運行效率。有向無環(huán)圖(Directed Acyclic Graph,DAG)沒有區(qū)塊的概念,其構成單位是一個個的交易,各單位均記錄著單個使用者的交易,以此來節(jié)省打包出塊的時間。因此研究引入有向無環(huán)圖DAG共識算法。[11-12]圖2為使用DAG-Dumbo算法的算法工作流程。

圖2 基于DAG的改進Dumbo算法流程

如圖2所示,DAG-Dumbo算法被分為消息廣播與共識階段兩部分。在共識階段,會對從廣播階段收到的交易形成共識。同時,在各交易塊中產(chǎn)生一致的實例,以MVBA為基礎,實現(xiàn)了多個實例之間的并行運算,用以優(yōu)化交易的處理效率。當交易到達各節(jié)點后,會對其進行排序、標記,并將交易存入緩沖區(qū)。將緩沖區(qū)根據(jù)交易狀態(tài)分為等待區(qū)和多個共識區(qū),以此來區(qū)分不同輪次共識的交易。在消息傳播階段,僅接收新交易并對其排序。在共識階段,僅對被打包的交易進行共識協(xié)商。此時,各輪次的共識階段均獨立,可以同時執(zhí)行多個協(xié)議。并且在協(xié)商過程中,與信息傳播相比,通信的復雜性更大,所以多個協(xié)商階段的并行操作可以提高區(qū)塊鏈的吞吐量。

1.2 基于信譽優(yōu)化和DAG-Dumbo算法區(qū)塊鏈知識共享方法研究

盡管DAG-Dumbo算法對提高區(qū)塊鏈的吞吐量有一定幫助,DAG的異步通信機制在提高可擴展性、縮短確認時間、減少成本等方面優(yōu)勢明顯,但其安全性、一致性等問題也亟待解決。因此,提高區(qū)塊鏈的擴展性尤為重要。分片技術作為一種區(qū)塊鏈橫向擴展方法,已被廣泛應用于區(qū)塊鏈擴容中。[13]為解決分片方法無法適應知識共享環(huán)境的問題,研究提出一種新的區(qū)塊鏈分片算法,即RapidChain分片算法,該算法的流程如圖3所示。[14]

圖3 RapidChain分片算法流程

如圖3所示,該算法由多個時代組成。在起始時代中擁有額外的啟動階段,且每個時代都可分為共識階段與重新配置階段。在RapidChain啟動階段,首先會進行根組的選舉,由其決定參考委員會成員。經(jīng)過多輪組合與選舉,選出最終的根組。每一個時代的開始即共識階段,該階段會對交易進行處理,將其分為分片內(nèi)部與跨分區(qū)交易。其中,分區(qū)交易只會運行組委會內(nèi)部公式協(xié)議,并將交易記錄到成員維護的區(qū)塊鏈中。在重新配置階段,會為該時代加入的新節(jié)點分配委員會,并重組各委會。雖然RapidChain分片算法能夠提高區(qū)塊鏈的吞吐量,但由于該算法中各委員會所含的節(jié)點較少,這也將導致區(qū)塊鏈的安全性減弱。為此,研究為共識節(jié)點設置一系列活動狀態(tài),使其在系統(tǒng)中擁有完整的生命周期,且實現(xiàn)節(jié)點可動態(tài)地加入和退出,該算法即是基于節(jié)點歷史行為的信譽值評估方法。[15]由節(jié)點參與共識的歷史行為來對區(qū)塊鏈中節(jié)點的信譽進行決定。研究給定節(jié)點歷史行為的輪次衰減因子為wforget,在時代e的后驗分布的參數(shù)中,待遺忘參數(shù)的計算如式(4)所示。

(4)

(5)

在式(5)中,E(θ1)與E(θ3)分別為節(jié)點做出正確與錯誤行為的期望。將式(4)代入式(5),可得到遺忘參數(shù)的節(jié)點歷史行為分數(shù)計算表達式,如式(6)。

(6)

由式(6)的信譽計算方法可使歷史投票的日志信息為各節(jié)點計算其信譽分數(shù)。研究給定一個閾值α和β,將比β小與比β大的閾值分別定義為惡意、正確節(jié)點。并將節(jié)點大小位于α、β之間的定義為待考察節(jié)點。在委員會內(nèi)部,共識算法通常為投票類的BFT共識算法,維持委員會規(guī)模穩(wěn)定的同時,也能提高各委員會正確的節(jié)點占比。在研究中,將wforget定義為信譽算法的輪次衰減因子。在經(jīng)過無窮時代后的信譽值,即當輪次e→∞時,其計算表達如式(7)所示。

(7)

在式(7)中,i為輪次,e代表時代。當各個時代加入的樣本N相同時,將式(7)代入式(4)可得到式(8)。

(8)

2 DAG-Dumbo算法和ProRapidChain算法性能分析

為驗證DAG-Dumbo算法和ProRapidChain算法在區(qū)塊鏈知識共享中的有效性,研究對二者的性能分別進行了分析。研究首先對DAG-Dumbo算法的吞吐量、帶寬與吞吐量的關系,以及節(jié)點數(shù)量與交易處理時間延遲的關系進行了分析。其中,針對DAG-Dumbo算法來講,研究默認測試時的帶寬為2000k比特/秒(bit/s),實際事務的大小為10bit,測試的全部結果都為執(zhí)行10次以后的平均數(shù)值。結果如圖4所示。

圖4 兩種算法在多個指標關系下的對比結果

由圖4(a)可知,兩種算法隨著批量大小的增加,吞吐量都呈平滑上漲趨勢,但比較明顯的是DAG-Dumbo算法的吞吐量明顯高于Dumbo算法,測試結果前者比后者高約25%。由圖4(b)可知,兩種算法均因帶寬不同而產(chǎn)生不同程度的性能差異。其中,Dumbo算法在帶寬達到3000 k bit/s后,其吞吐量基本不會受到帶寬的影響,但是DAG-Dumbo算法的吞吐量仍有提高。在帶寬達到3500 k bit/s后,這兩種算法的吞吐量都比較穩(wěn)定,DAG-Dumbo算法的吞吐量大約提高了35%。從圖4(c)可以看出,在相同條件下,DAG-Dumbo算法的時間延遲明顯低于Dumbo算法,其最高不超過2 s。綜合來看,DAG-Dumbo算法在多個循環(huán)的情況下有效地改進共識階段的并行,從而大大提高了原有算法的吞吐量,同時其對網(wǎng)絡帶寬的準備更為充足,時間延遲更低。這表明了DAG-Dumbo算法具備較高的性能,改進是有效的。同時,針對ProRapidChain算法性能驗證實驗,首先,研究對比測試了不同算法的吞吐量,結果如圖5所示。

圖5 四種算法在吞吐量上的對比結果

由圖5可知,RapidChain算法和ProRapidChain算法隨著節(jié)點數(shù)目的不斷增多,時代平均吞吐量也隨著增長,而DAG-Dumbo和Dumbo則呈現(xiàn)相反的趨勢。RapidChain和ProRapidChain對比中后者明顯高于前者的時代平均吞吐量,ProRapidChain在時代數(shù)量為5時的時代平均吞吐量達到了9×104(tx/s),遠高于RapidChain的8.8×104(tx/s)。在此基礎上,研究繼續(xù)驗證了改進算法鑒別網(wǎng)絡中全部惡意節(jié)點的實際性能,結果如圖6所示。

圖6 ProRapidChain算法鑒別網(wǎng)絡中全部惡意節(jié)點的實際結果

由圖6可知,隨著信譽分的增長,惡意節(jié)點、故障節(jié)點以及正確節(jié)點三個指標頻次都呈現(xiàn)先增后降的趨勢,并且惡意節(jié)點以-0.20為節(jié)點、故障節(jié)點以0.20為節(jié)點、正確節(jié)點以0.90為節(jié)點。綜合來看,經(jīng)過一千次的投票,網(wǎng)絡中的信任分配有明顯的差別。其中,節(jié)點信任度呈現(xiàn)出正確的頻次最高。另外,通過分析得出的閾值和信譽值可以識別出幾乎全部惡意節(jié)點、50%的錯誤節(jié)點以及大部分的正確節(jié)點,證明ProRapidChain可以有效地抵御帶有偽裝的敵人的實際攻擊。最后,研究分析在新節(jié)點增加與多個循環(huán)的情況下,ProRapidChain根據(jù)節(jié)點的動態(tài)變化劃分出各個委員會的正確結點所占比例。結果如圖7所示。

圖7 ProRapidChain劃分各個委員會的正確結點所占比例

由圖7可知,每一個委員會的正確結點比例都接近于整個網(wǎng)絡的正確結點,且在新產(chǎn)生的委員會中,正確的結點比例也非常高。同時,雖然在所有的節(jié)點中正確的節(jié)點比例接近三分之二,但各個委員會最終的正確節(jié)點數(shù)維持在88%左右。綜合來看,改進后的ProRapidChain算法在性能和安全性上相較于原始算法具備更高的優(yōu)越性,同時也有效地提升了區(qū)塊鏈對實際資源的實際利用率,表明其具備更高的有效性。

3 結論

為解決目前異步網(wǎng)絡環(huán)境下區(qū)塊鏈支持不足、運行效率低下等問題,研究將有向無環(huán)圖DAG引入到Dumbo算法中,提出了DAG-Dumbo算法。并為提高區(qū)塊鏈效率、安全和動態(tài)網(wǎng)絡適應能力,提出了ProRapidChain算法,同時對二者性能進行了實驗分析。實驗結果表明,在DAG-Dumbo算法性能驗證實驗中,DAG-Dumbo算法的吞吐量比Dumbo算法高25%,DAG-Dumbo算法在帶寬達到3000 k bit/s后仍有提升,而Dumbo算法已經(jīng)變化穩(wěn)定,同時DAG-Dumbo算法時間遠低于Dumbo算法。在ProRapidChain算法性能驗證實驗中,ProRapidChain在時代數(shù)量為5時的時代平均吞吐量達到了9×104(tx/s),遠高于RapidChain的8.8×104(tx/s)。同時ProRapidChain算法可以識別出幾乎全部的惡意節(jié)點,且各個委員會最終的正確節(jié)點數(shù)維持在88%左右,比例明顯比較高。綜合來看,研究提出的改進后的DAG-Dumbo算法和ProRapidChain算法在性能上優(yōu)于原始算法,有效提升了區(qū)塊鏈異步共識中的效率以及動態(tài)的網(wǎng)絡適應能力。但研究對當前異步共識算法的研究還存在不足,其內(nèi)部并未存在領導節(jié)點,限制了異步共識的使用,因此需要在后續(xù)對其進行改善。

猜你喜歡
分片吞吐量共識
上下分片與詞的時空佈局
詞學(2022年1期)2022-10-27 08:06:12
共識 共進 共情 共學:讓“溝通之花”綻放
論思想共識凝聚的文化向度
分片光滑邊值問題的再生核方法
CDN存量MP4視頻播放優(yōu)化方法
商量出共識
人大建設(2019年12期)2019-11-18 12:11:06
基于模糊二分查找的幀分片算法設計與實現(xiàn)
2016年10月長三角地區(qū)主要港口吞吐量
集裝箱化(2016年11期)2017-03-29 16:15:48
2016年11月長三角地區(qū)主要港口吞吐量
集裝箱化(2016年12期)2017-03-20 08:32:27
別讓“PX共識”在爆炸中瓦解
通海县| 增城市| 海晏县| 武川县| 屯留县| 泸水县| 陆丰市| 武强县| 莱芜市| 祥云县| 长海县| 新乡县| 伊吾县| 将乐县| 莱芜市| 云阳县| 湟源县| 鄂温| 彰化县| 霍城县| 普兰店市| 新密市| 广丰县| 建瓯市| 周口市| 龙江县| 宜川县| 灵宝市| 崇文区| 安陆市| 浮山县| 永靖县| 濉溪县| 永寿县| 绥棱县| 会理县| 冀州市| 宁波市| 宝山区| 石台县| 龙游县|