• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于SVM的DPoS共識機(jī)制改進(jìn)

      2024-11-04 00:00:00何婧豆天晨陳琳董云云
      計算機(jī)應(yīng)用研究 2024年9期

      摘 要:

      共識機(jī)制是區(qū)塊鏈技術(shù)的重要組成部分,針對委托權(quán)益證明(delegated proof of stake,DPoS)共識機(jī)制中對惡意節(jié)點(diǎn)不能及時有效處理的問題,提出了一種基于支持向量機(jī)的DPoS共識機(jī)制改進(jìn)方案(SVM-DPoS)。首先構(gòu)建基于SVM的節(jié)點(diǎn)判別模型,通過訓(xùn)練好的模型分析節(jié)點(diǎn)的行為動機(jī),根據(jù)判別結(jié)果及時剔除惡意節(jié)點(diǎn);其次基于固定協(xié)商出塊順序優(yōu)化傳統(tǒng)算法的出塊流程,提升出塊效率,進(jìn)一步提高了整個區(qū)塊鏈網(wǎng)絡(luò)的運(yùn)行效率。在公開數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,與已有的幾種方法相比,改進(jìn)后的共識機(jī)制能夠快速剔除惡意節(jié)點(diǎn),不僅維護(hù)了系統(tǒng)穩(wěn)定性,且增強(qiáng)了對惡意行為的防范能力,從而在保障區(qū)塊鏈網(wǎng)絡(luò)正常運(yùn)行的同時,提高了整體共識的安全性。

      關(guān)鍵詞:區(qū)塊鏈;委托權(quán)益證明;支持向量機(jī)

      中圖分類號:TP301.6 文獻(xiàn)標(biāo)志碼:A 文章編號:1001-3695(2024)09-005-2598-06

      doi:10.19734/j.issn.1001-3695.2024.01.0029

      Improvement of DPoS consensus mechanism based on SVM

      He Jing1, 2, Dou Tianchen1, Chen Lin1, Dong Yunyun1, 2

      (1.College of Software, Yunnan University, Kunming 650504, China; 2. Engineering Research Center of Cyberspace, Kunming 650504, China)

      Abstract:

      The consensus mechanism is a critical component of blockchain technology. To address the issue of delayed or ineffective handling of malicious nodes in the DPoS consensus mechanism, this paper proposed an improvement plan for the DPoS consensus mechanism based on SVM(SVM-DPoS). This approach firstly established a node discrimination model based on SVM, which analyzed the behavior motivations of nodes through a well-trained model, allowing for the timely elimination of malicious nodes based on discrimination results. Furthermore, it optimized the traditional block production process based on a fixed negotiated block order, enhancing the block production efficiency and consequently improving the overall operational efficiency of the blockchain network. Experimental results on public datasets indicate that compared to existing methods, the improved consensus mechanism can quickly eliminate malicious nodes. Not only does it maintain system stability, but it also strengthens the defense against malicious activities, thus ensuring the normal operation of the blockchain network while enhancing the overall security of the conseHDn6+r1d9FfOmTjB3xJ/aaM+/yDS1U+fjNysoYJvqNM=nsus.

      Key words:block chain; delegated proof of interest; support vector machine

      0 引言

      共識問題是社會科學(xué)和計算機(jī)科學(xué)等領(lǐng)域的經(jīng)典問題,已經(jīng)有很長的研究歷史。在分布式系統(tǒng)中,由于節(jié)點(diǎn)之間的異步通信和可能的故障,共識問題變得尤為重要。在傳統(tǒng)的分布式系統(tǒng)中,共識問題通常由拜占庭將軍問題(Byzantine generals problem)引起,即如何在存在故障節(jié)點(diǎn)的情況下,讓節(jié)點(diǎn)之間達(dá)成一致的決策。針對拜占庭將軍問題,研究者們提出了許多共識算法,例如Paxos算法[1]、Raft[2]算法等。這些算法的核心思想是通過多輪投票、選舉等機(jī)制,讓節(jié)點(diǎn)達(dá)成一致的共識,從而保證系統(tǒng)的正確性和一致性。然而傳統(tǒng)的共識算法通常存在性能低下、可擴(kuò)展性差等問題,無法滿足日益增長的分布式系統(tǒng)的需求。

      2008年,Nakamoto[3]提出并公開了區(qū)塊鏈早期的實(shí)現(xiàn)代碼。作為區(qū)塊鏈的核心技術(shù)之一,共識算法具有顯著的優(yōu)勢,其中之一就是在去中心化系統(tǒng)中能夠有效地實(shí)現(xiàn)各個節(jié)點(diǎn)對區(qū)塊數(shù)據(jù)有效性的共識,尤其是在決策權(quán)高度分散的情況下,仍然能夠?qū)崿F(xiàn)高效的共識達(dá)成。根據(jù)參與者的權(quán)限和控制范圍,可以將區(qū)塊鏈分為公有鏈、聯(lián)盟鏈和私有鏈[4]。目前公有鏈的主流共識算法為工作量證明(proof-of-work,PoW)[5]、權(quán)益證明(proof-of-stake,PoS)[6]和委托權(quán)益證明(delegated proof-of-stake,DPoS)[7]。其中PoW利用哈希算力來競爭記賬權(quán),但這容易造成電力資源的浪費(fèi)以及算力集中等問題;PoS解決了PoW消耗大量算力的問題,但權(quán)益的累積可能會導(dǎo)致節(jié)點(diǎn)之間的貧富差距過大;而DPoS則類似于股份公司,根據(jù)股民持有的股份進(jìn)行投票,最終得票數(shù)排名靠前的節(jié)點(diǎn)成為見證節(jié)點(diǎn)輪流完成記賬[8,9]。與PoW和PoS相比,DPoS參與驗(yàn)證和記賬的節(jié)點(diǎn)數(shù)量大幅減少,因此可以提高交易處理速度和吞吐量。但DPoS仍然存在一些不足之處:

      a)投票積極性不高,大多數(shù)節(jié)點(diǎn)只是持股,很少參與投票。

      b)壟斷性高,只有持幣的人才能參與區(qū)塊驗(yàn)證。

      c)沒有對惡意節(jié)點(diǎn)進(jìn)行快速剔除,不僅影響節(jié)點(diǎn)投票結(jié)果,還增加了投票周期,耗費(fèi)資源。

      對于以上問題,國內(nèi)外部分學(xué)者對DPoS算法進(jìn)行了改進(jìn)。針對投票積極性不高的問題,Yu等人[10]提出獎勵制度,討論了激勵機(jī)制和DPoS共識機(jī)制之間的適配和優(yōu)化,提出了“舉報獎勵”這一激勵制度對節(jié)點(diǎn)進(jìn)行監(jiān)督,但采用獎勵的方式提高節(jié)點(diǎn)的參與積極性依舊無法避免節(jié)點(diǎn)為換取獎勵進(jìn)行惡意投票和惡意舉報的問題;張雅萍等人[11]提出一種配對制度的DPoS共識機(jī)制(DPoS-M2),擯棄了節(jié)點(diǎn)投票的方式,通過比較節(jié)點(diǎn)的屬性值快速選出屬性值較高的作為記賬節(jié)點(diǎn)。對惡意節(jié)點(diǎn)問題,Xu等人[12]通過引入模糊集概念加入棄權(quán)票,降低了惡意節(jié)點(diǎn)被選為代理節(jié)點(diǎn)的概率;何帥等人[13]引入RBF神經(jīng)網(wǎng)絡(luò)模型使選舉出的節(jié)點(diǎn)更加權(quán)威可信,同時引入信譽(yù)機(jī)制增加惡意節(jié)點(diǎn)攻擊成本;Yang等人[14]提出一種基于降級機(jī)制(DDPoS),通過對惡意節(jié)點(diǎn)降級,對可靠節(jié)點(diǎn)升級,保障系統(tǒng)良好運(yùn)行。對于惡意節(jié)點(diǎn)處理問題,以上研究只是對其進(jìn)行了標(biāo)記,導(dǎo)致投票周期加長、耗費(fèi)資源。

      基于上述研究在惡意節(jié)點(diǎn)處理方向所存在的問題,本文提出一種基于SVM改進(jìn)的DPoS(SVM-DPoS)共識機(jī)制。在DPoS共識機(jī)制中,如果有節(jié)點(diǎn)長時間存在惡意行為,則會對整個網(wǎng)絡(luò)的安全性和穩(wěn)定性造成威脅。而傳統(tǒng)的DPoS共識機(jī)制可能無法及時發(fā)現(xiàn)和剔除這些惡意節(jié)點(diǎn)。這時可以引用SVM模型的分類特性對節(jié)點(diǎn)進(jìn)行分類識別,對可能的惡意節(jié)點(diǎn)進(jìn)行精準(zhǔn)標(biāo)識及時剔除,并且在見證節(jié)點(diǎn)降低到安全閾值以下時,從候選節(jié)點(diǎn)中選擇新的節(jié)點(diǎn)加入驗(yàn)證節(jié)點(diǎn)集合,以保證網(wǎng)絡(luò)的安全性。在此基礎(chǔ)上可以進(jìn)一步收集節(jié)點(diǎn)的行為數(shù)據(jù),包括節(jié)點(diǎn)的投票行為、活躍程度等,用于訓(xùn)練SVM模型。通過不斷的訓(xùn)練和優(yōu)化,SVM模型的識別精度將逐步提高,使得惡意節(jié)點(diǎn)的識別和剔除更為及時和準(zhǔn)確。同時通過對這些數(shù)據(jù)的分析,還可以發(fā)現(xiàn)惡意節(jié)點(diǎn)的行為模式,從而進(jìn)一步完善和優(yōu)化共識機(jī)制。

      1 基于SVM的DPoS共識機(jī)制

      SVM在分類和回歸分析中有著廣泛的應(yīng)用,它可以很好地處理小樣本、非線性以及高維模式識別中的問題,對于異常檢測具有較高的準(zhǔn)確率。因此對于惡意節(jié)點(diǎn)的識別,SVM模型可以提供精準(zhǔn)且高效的識別結(jié)果。同時SVM的支持向量具有很好的解釋性,可以幫助人們理解惡意節(jié)點(diǎn)的行為特征,進(jìn)一步增強(qiáng)DPoS共識機(jī)制的安全性和穩(wěn)定性,具有極大的應(yīng)用價值。

      1.1 節(jié)點(diǎn)分類

      區(qū)塊鏈作為一種分布式數(shù)據(jù)庫技術(shù),其核心特點(diǎn)是去中心化、不可竄改、可追溯和共識機(jī)制。它通過使用密碼學(xué)、點(diǎn)對點(diǎn)網(wǎng)絡(luò)和共識算法來維護(hù)網(wǎng)絡(luò)的安全性和可靠性,使得交易在不依賴中心化機(jī)構(gòu)的情況下得以進(jìn)行,從而具有廣泛的應(yīng)用價值。因此為了保證信息的安全,在DPoS系統(tǒng)中希望將產(chǎn)生區(qū)塊的權(quán)力交給那些可靠且值得信任的節(jié)點(diǎn),從而提高整個系統(tǒng)的效率和安全性。因?yàn)楸贿x出來的這些節(jié)點(diǎn)具備較高的技術(shù)能力和良好的聲譽(yù),所以它們生產(chǎn)和驗(yàn)證區(qū)塊的效率更高,同時也不太可能做出違背社區(qū)利益的行為,從而提高了系統(tǒng)的安全性。本文將參與共識的節(jié)點(diǎn)分成四類,即普通節(jié)點(diǎn)(ordinary nodes)、候選節(jié)點(diǎn)(candidate nodes)、見證節(jié)點(diǎn)(witness node)和作惡節(jié)點(diǎn)(malicious node)。

      1.1.1 普通節(jié)點(diǎn)

      普通節(jié)點(diǎn)是指沒有被選為見證節(jié)點(diǎn)的節(jié)點(diǎn),它們的主要作用是參與投票選舉見證節(jié)點(diǎn),并驗(yàn)證交易和傳輸區(qū)塊。普通節(jié)點(diǎn)的參與度和作用在DPoS網(wǎng)絡(luò)中相對較小,但是它們的投票和交易驗(yàn)證仍然是DPoS系統(tǒng)的重要組成部分,為整個網(wǎng)絡(luò)提供了基礎(chǔ)性的支持。

      1.1.2 候選節(jié)點(diǎn)

      候選節(jié)點(diǎn)與普通節(jié)點(diǎn)不同,它們的投票數(shù)和代幣數(shù)量決定了它們被選為見證節(jié)點(diǎn)的機(jī)率。候選節(jié)點(diǎn)通過得到足夠多的選票和代幣持有量,可以被選為下一輪的見證節(jié)點(diǎn)。候選節(jié)點(diǎn)的數(shù)量通常比見證節(jié)點(diǎn)多,因此它們之間的競爭比較激烈。

      1.1.3 見證節(jié)點(diǎn)

      見證節(jié)點(diǎn)負(fù)責(zé)驗(yàn)證和打包交易,并將區(qū)塊添加到區(qū)塊鏈中以維護(hù)區(qū)塊鏈的安全和穩(wěn)定性。根據(jù)DPoS算法的設(shè)計,一組見證節(jié)點(diǎn)輪流為每個區(qū)塊鏈生產(chǎn)區(qū)塊,其生產(chǎn)順序由其獲得選票的排名確定。由于見證節(jié)點(diǎn)需要獲得足夠的選票才能成為生產(chǎn)節(jié)點(diǎn),所以DPoS系統(tǒng)通常比其他共識機(jī)制具有更少的活躍見證節(jié)點(diǎn)。

      1.1.4 作惡節(jié)點(diǎn)

      作惡節(jié)點(diǎn)是指在網(wǎng)絡(luò)中惡意行為的節(jié)點(diǎn)。這些節(jié)點(diǎn)可能會試圖對區(qū)塊鏈進(jìn)行攻擊、竄改交易或者利用其權(quán)力進(jìn)行自私行為等,以達(dá)到其自身利益的目的。這些惡意節(jié)點(diǎn)會對整個系統(tǒng)造成威脅,可能導(dǎo)致區(qū)塊鏈的安全性和穩(wěn)定性受到損害。

      1.2 DPoS共識機(jī)制流程

      委托權(quán)益證明(DPoS)共識算法主要包含兩個步驟,即共識節(jié)點(diǎn)的選舉過程以及節(jié)點(diǎn)間達(dá)成共識的過程,改進(jìn)后的整體流程如圖1所示。

      委托權(quán)益證明(DPoS)共識算法的具體流程可以分為以下幾個步驟:a)初始設(shè)定,在DPoS共識算法中,需要先確定見證節(jié)點(diǎn)候選人的初始列表,通常持有一定數(shù)量代幣的用戶可以成為見證節(jié)點(diǎn)候選人;b)見證節(jié)點(diǎn)選舉,所有持幣用戶可以通過投票來選舉見證節(jié)點(diǎn),如圖所示,在共識開始時每個持幣用戶可以將自己的代幣投票給候選人,根據(jù)得票數(shù)排名,得票數(shù)最高的前21位候選人將成為見證節(jié)點(diǎn),這些見證節(jié)點(diǎn)將輪流負(fù)責(zé)出塊和驗(yàn)證交易,輪換的周期可以事先設(shè)定,通常是固定的時間間隔;c)區(qū)塊生產(chǎn),在輪到某個見證節(jié)點(diǎn)出塊時,它將負(fù)責(zé)驗(yàn)證交易和打包成一個新的區(qū)塊,然后該區(qū)塊被廣播到網(wǎng)絡(luò)中,其他節(jié)點(diǎn)進(jìn)行驗(yàn)證和確認(rèn)。

      本文提出基于SVM的節(jié)點(diǎn)剔除機(jī)制,在步驟c)出塊過程中,判斷見證節(jié)點(diǎn)是否作惡,如果存在作惡行為及時剔除。同時,在見證節(jié)點(diǎn)集合低于11時,從候選人集合中補(bǔ)充。盡最大可能保證每一輪共識過程中所有見證節(jié)點(diǎn)都能正常打包區(qū)塊,提高系統(tǒng)的穩(wěn)定性和安全性。

      1.3 基于核支持向量機(jī)的惡意節(jié)點(diǎn)剔除機(jī)制

      1.3.1 周期輪換

      在DPoS系統(tǒng)中,節(jié)點(diǎn)通過投票,選出一定數(shù)量的區(qū)塊生產(chǎn)者。這些區(qū)塊生產(chǎn)者負(fù)責(zé)驗(yàn)證和添加新區(qū)塊到區(qū)塊鏈中,它們在特定的時間周期后被重新選舉。也就是說,所有的區(qū)塊生產(chǎn)者都會有一個固定的任期,并在此期間按照一定的順序生產(chǎn)區(qū)塊。這種周期輪換機(jī)制增加了系統(tǒng)的公平性和透明度,因?yàn)樗沟盟械膮⑴c者有平等的機(jī)會去生產(chǎn)區(qū)塊并獲得獎勵。本文中對于周期輪換的具體實(shí)現(xiàn)如下所示。

      輸入:初始節(jié)點(diǎn)genesis,出塊節(jié)點(diǎn)node_{block}。

      輸出:是否重新選舉true,false。

      begin

      bnode_{block}=get_node(newBlock)

      parent_{block}=get_parent(newBlock)

      genesIsEpoch=get_Epoch(genesis)

      preEopch=get_Epoch(parent_{block})

      currentEpoch=get_EpocH(node_{block})

      prevEpochIsGenesis=(prevEpoch== genesisEpoch)

      if {(prevEpochIsGenesis) && (prevEpoch < currentEpoch)}

      prevEpoch=currentEpoch-1

      else if !prevEpochIsGenesis

      kickoutValidator(prevEpoch,genesis)

      votes=true

      Return votes

      else Return false

      end

      a)獲取當(dāng)前出塊節(jié)點(diǎn):首先系統(tǒng)需要確定當(dāng)前負(fù)責(zé)生成區(qū)塊的節(jié)點(diǎn)node_{block}。這個節(jié)點(diǎn)是通過DPoS共識算法中的投票機(jī)制選擇出來的,具有特定的權(quán)責(zé)和任期。

      b)獲取出塊節(jié)點(diǎn)的父親節(jié)點(diǎn):在整個區(qū)塊鏈網(wǎng)絡(luò)中,每個節(jié)點(diǎn)都與其他節(jié)點(diǎn)相連,形成了一個復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)。父節(jié)點(diǎn)parent_{block}是指在區(qū)塊鏈結(jié)構(gòu)中,與當(dāng)前節(jié)點(diǎn)node_{block}直接相連且位于其上一級的節(jié)點(diǎn)。

      c)獲得創(chuàng)世塊周期時間:genesis是區(qū)塊鏈中的第一個區(qū)塊,它沒有父節(jié)點(diǎn),所有其他區(qū)塊都直接或間接地連接到它。系統(tǒng)會根據(jù)初始塊的信息來確定創(chuàng)世塊的周期時間genesIsEpoch,也就是一個完整的區(qū)塊產(chǎn)生周期應(yīng)該有多長時間。

      d)獲取前個節(jié)點(diǎn)的周期及當(dāng)前周期時間:系統(tǒng)需要跟蹤每個周期的時間,以便于判斷何時應(yīng)當(dāng)進(jìn)行周期輪換。preEopch是指父節(jié)點(diǎn)生產(chǎn)塊時所在的周期,而currentEpoch則是指當(dāng)前出塊節(jié)點(diǎn)node_{block}所在的周期。

      e)判斷是否進(jìn)行周期輪換:判斷是否進(jìn)行周期輪換依賴于比較當(dāng)前周期時間與上一周期時間,以及確認(rèn)上一周期是否為創(chuàng)世周期。

      (a)如果上個周期preEopch與當(dāng)前出塊周期currentEpoch相同,則正常出塊不需要進(jìn)行周期輪換;

      (b)如果preEopch是genesIsEpoch且preEopch小于currentEpoch,那么系統(tǒng)將執(zhí)行周期輪換算法,其中涉及重新選擇出塊節(jié)點(diǎn),修改區(qū)塊生成規(guī)則,以及與周期輪換相關(guān)的操作。如果上周期不是創(chuàng)世周期,調(diào)用kickoutValidator檢測是否需要剔除惡意節(jié)點(diǎn)。

      1.3.2 模型的建立

      支持向量機(jī)(support vector machine,SVM)是一種監(jiān)督學(xué)習(xí)算法,被廣泛應(yīng)用于分類和回歸分析中。它的基本思想是將數(shù)據(jù)點(diǎn)映射到高維空間中,在該空間中構(gòu)建一個超平面來實(shí)現(xiàn)分類或回歸分析。在訓(xùn)練過程中,SVM算法會嘗試找到一個最優(yōu)的超平面,使得該平面能夠?qū)⒉煌悇e的數(shù)據(jù)點(diǎn)分離得最好,同時使得距離超平面最近的數(shù)據(jù)點(diǎn)到超平面的距離最大化。SVM算法具有許多優(yōu)點(diǎn),如泛化能力強(qiáng)、對噪聲數(shù)據(jù)具有魯棒性等,因此被廣泛應(yīng)用于機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘領(lǐng)域。隨著大數(shù)據(jù)技術(shù)的不斷發(fā)展,構(gòu)建適用于大規(guī)模數(shù)據(jù)的多分類模型已成為數(shù)據(jù)挖掘技術(shù)的研究熱點(diǎn)[15~18]。許多學(xué)者在對 SVM 技術(shù)進(jìn)行深入研究后,提出了多種基于SVM 的多分類模型,例如一對一、一對多、決策樹、有向無環(huán)圖等多種分類算法[19~23]。 SVM的主要特點(diǎn)是可以通過尋找最大間隔來進(jìn)行分類,同時具有較強(qiáng)的泛化能力和處理高維數(shù)據(jù)的能力,能夠有效地解決小樣本、非線性以及高維數(shù)據(jù)等問題。其優(yōu)點(diǎn)還包括能夠處理較小規(guī)模的數(shù)據(jù)集、在訓(xùn)練過程中可以有效避免陷入局部最優(yōu)解、泛化能力強(qiáng)、對噪聲和數(shù)據(jù)缺失具有較好的容錯能力。因此利用SVM算法對區(qū)塊鏈中見證節(jié)點(diǎn)的行為進(jìn)行預(yù)測評估,可以得到精度較高的結(jié)果,為DPoS共識機(jī)制中惡意節(jié)點(diǎn)的剔除提供了技術(shù)支撐,從而快速有效地剔除惡意節(jié)點(diǎn)。

      本文設(shè)計了一種基于線性核函數(shù)的支持向量機(jī)模型,采用該模型識別作惡節(jié)點(diǎn)。線性核函數(shù)如下所示。

      K(xi,xj)=xTi·xj(1)

      其中:xi、xj為輸入向量,函數(shù)最終得到輸入向量的點(diǎn)積。

      同時根據(jù)DPoS共識機(jī)制的運(yùn)行情況及源碼分析,采用表1中5個屬性指標(biāo)來綜合評判節(jié)點(diǎn)是否作惡,并結(jié)合支持向量機(jī)模型,將每個節(jié)點(diǎn)在區(qū)塊鏈上對應(yīng)5個指標(biāo)的歷史數(shù)據(jù)作為輸入,通過模型訓(xùn)練確定輸入與輸出的內(nèi)在聯(lián)系,最后將支持向量機(jī)的輸出值作為評判節(jié)點(diǎn)是否作惡的依據(jù)。節(jié)點(diǎn)相關(guān)評估指標(biāo)說明如表1所示。

      1.3.3 模型的求解

      在基于SVM模型的訓(xùn)練過程中需要求解函數(shù),相關(guān)求解步驟如下:

      a)樣本集為D={(yi,yi),i=1,2,…,m;yi=(-1,+1)},其中xi代表第i個輸入樣本,yi代表第i個輸入樣本對應(yīng)的類別值,m為樣本數(shù)量,劃分超平面為

      2 實(shí)驗(yàn)結(jié)果及分析

      2.1 實(shí)驗(yàn)環(huán)境

      為了驗(yàn)證改進(jìn)后的DPoS共識機(jī)制能否快速剔除惡意節(jié)點(diǎn)以及算法的有效性,本文在相同的環(huán)境下對DPoS共識機(jī)制改進(jìn)前后的安全性和時間消耗進(jìn)行了對比分析進(jìn)。本文仿真實(shí)驗(yàn)在處理器Intel CoreTM i5-10400F CPU @ 2.90 GHz 的 64位Windows 11專業(yè)版平臺上進(jìn)行,首先使用Python 3.6.13構(gòu)建基于SVM的惡意節(jié)點(diǎn)判別模型,使用Go語言go1.9.6模擬DPoS共識算法進(jìn)行實(shí)驗(yàn)。最后使用Origin 2021對最終的實(shí)驗(yàn)數(shù)據(jù)進(jìn)行可視化對比評價。

      2.2 模型驗(yàn)證

      為驗(yàn)證本文方法的有效性,設(shè)計了相關(guān)實(shí)驗(yàn)。本文采用公開的EOS項目歷史交易數(shù)據(jù)集XBlock-EOS[24]對SVM模型進(jìn)行訓(xùn)練并保存訓(xùn)練好的模型,將訓(xùn)練好的模型轉(zhuǎn)換為Go語言代碼保存。在實(shí)驗(yàn)仿真過程中,根據(jù)EOS歷史交易數(shù)據(jù)集模擬1 600個節(jié)點(diǎn),70%數(shù)據(jù)作為訓(xùn)練集,然后對剩余 30%數(shù)據(jù)測試。其計算量少且為二分類問題,SVM算法的計算復(fù)雜度和訓(xùn)練集中的樣本數(shù)目成正比,計算復(fù)雜度低,足以支持分類預(yù)測的運(yùn)行。訓(xùn)練集分類準(zhǔn)確率為97.1%,測試集分類準(zhǔn)確率達(dá) 98.5%,并無過擬合。見證節(jié)點(diǎn)作惡評估結(jié)果如表2所示,可以看出,訓(xùn)練好的模型能夠精確地判別出節(jié)點(diǎn)是否有作惡行為。

      相對于傳統(tǒng)的DPoS共識機(jī)制而言,基于SVM的惡意節(jié)點(diǎn)判別模型可以快速判斷出節(jié)點(diǎn)是否作惡,并對作惡節(jié)點(diǎn)及時剔除,極大地減小了共識節(jié)點(diǎn)中存在惡意節(jié)點(diǎn)的幾率。首先構(gòu)建了一組包含正常節(jié)點(diǎn)和惡意節(jié)點(diǎn)的測試集,通過模擬這些節(jié)點(diǎn)的行為,生成對應(yīng)五個屬性指標(biāo)的歷史數(shù)據(jù)。然后將這些數(shù)據(jù)輸入到訓(xùn)練好的模型中,得到模型對于這些節(jié)點(diǎn)是否為惡意節(jié)點(diǎn)的預(yù)測結(jié)果。在比較模型的預(yù)測結(jié)果和實(shí)際情況后發(fā)現(xiàn),SVM模型能準(zhǔn)確識別出絕大部分的惡意節(jié)點(diǎn),同時幾乎沒有將正常節(jié)點(diǎn)錯誤地識別為惡意節(jié)點(diǎn),這說明本文模型具有很高的準(zhǔn)確率和可靠性。另外也測試了模型的處理速度,結(jié)果顯示SVM模型能在很短的時間內(nèi)完成對所有節(jié)點(diǎn)的評估,這說明模型具有很高的運(yùn)行效率,能夠及時發(fā)現(xiàn)并處理惡意節(jié)點(diǎn),防止其對網(wǎng)絡(luò)造成破壞。此外,通過調(diào)整SVM模型的參數(shù),可以在一定程度上改變模型對于惡意節(jié)點(diǎn)的判定敏感度,從而在不同的網(wǎng)絡(luò)環(huán)境和要求下,優(yōu)化模型的判斷效果。

      綜上,實(shí)驗(yàn)結(jié)果充分證明了基于SVM的惡意節(jié)點(diǎn)判別模型在DPoS共識機(jī)制中的有效性和優(yōu)越性。模型不僅能快速準(zhǔn)確地判斷出惡意節(jié)點(diǎn),還能根據(jù)網(wǎng)絡(luò)環(huán)境的需要,靈活地調(diào)整判斷策略,從而更好地維護(hù)網(wǎng)絡(luò)的穩(wěn)定性和安全性。

      2.3 安全性

      在傳統(tǒng)共識過程中惡意節(jié)點(diǎn)作惡方式多樣,影響區(qū)塊形成的速度,但算法并沒有及時采取任何應(yīng)對措施,只是對惡意節(jié)點(diǎn)進(jìn)行了簡單的標(biāo)記,經(jīng)過下一輪選舉才能剔除節(jié)點(diǎn),這樣會給網(wǎng)絡(luò)造成安全隱患。由于沒有快速剔除惡意節(jié)點(diǎn),惡意節(jié)點(diǎn)可能會發(fā)動攻擊,例如雙花攻擊(double-spending attack)、拒絕服務(wù)攻擊(DoS attack)等,這樣可能會嚴(yán)重影響區(qū)塊鏈網(wǎng)絡(luò)的安全性。其次如果惡意節(jié)點(diǎn)在區(qū)塊鏈網(wǎng)絡(luò)中占據(jù)主導(dǎo)地位,它們可能會通過偽造交易或者修改歷史記錄等方式破壞數(shù)據(jù)的一致性。最后惡意節(jié)點(diǎn)可能會通過一些手段,誘導(dǎo)或迫使其他節(jié)點(diǎn)接受它們生成的非法區(qū)塊,從而導(dǎo)致網(wǎng)絡(luò)分裂,形成多個并行的鏈,導(dǎo)致參與者對系統(tǒng)的信任破裂,進(jìn)而使得系統(tǒng)的價值大打折扣。

      本實(shí)驗(yàn)主要對惡意節(jié)點(diǎn)剔除的速度進(jìn)行了測試對比分析,在相同網(wǎng)絡(luò)下設(shè)置100個節(jié)點(diǎn),其中隨機(jī)選取20個節(jié)點(diǎn)作為惡意節(jié)點(diǎn),其余80個節(jié)點(diǎn)為普通節(jié)點(diǎn)。普通節(jié)點(diǎn)參與正常的投票和記賬活動,而惡意節(jié)點(diǎn)無法按時生成區(qū)塊,有意破壞共識過程。如圖3所示,由于傳統(tǒng)DPoS共識機(jī)制對惡意節(jié)點(diǎn)容忍度較大,剔除節(jié)點(diǎn)方式較為保守,所以效果較差。DDPoS使用PoW選擇見證節(jié)點(diǎn),而不是根據(jù)投票選舉,雖然提高了安全性,但是增加了共識周期時長,因此也具有一定滯后性。DPoS-M2機(jī)制采用類別評定模塊,較前兩者有所提升。本文采用基于SVM的惡意節(jié)點(diǎn)判別模型,對存在惡意行為的各類節(jié)點(diǎn)及時懲罰,若見證節(jié)點(diǎn)被發(fā)現(xiàn)存在惡意行為,則將該節(jié)點(diǎn)踢出見證節(jié)點(diǎn)集合,相較于傳統(tǒng)DPoS、DDPoS及DPoS-M2均有所提升。在110 min時相較于DDPoS和DPoS-M2,分別提升了25%和20%左右,進(jìn)一步確保系統(tǒng)的安全性和穩(wěn)定運(yùn)行。

      2.4 時間消耗

      為了對比四種共識機(jī)制的時間消耗,本次實(shí)驗(yàn)設(shè)計在同一網(wǎng)絡(luò)環(huán)境下運(yùn)行24個模擬節(jié)點(diǎn),其中絕大部分,即21個節(jié)點(diǎn)扮演的是見證節(jié)點(diǎn)角色,而余下的3個節(jié)點(diǎn)則作為候選節(jié)點(diǎn)維持共識過程安全進(jìn)行,每產(chǎn)生50個塊記錄一次數(shù)據(jù)。結(jié)果如圖4所示,隨著區(qū)塊個數(shù)從0到2000的增長,使用SVM-DPoS共識算法比傳統(tǒng)DPoS共識算法在降低出塊時間方面的優(yōu)勢更加突出。這因?yàn)閭鹘y(tǒng)DPoS共識算法在選出節(jié)點(diǎn)后,見證節(jié)點(diǎn)之間的先后通信方式?jīng)]有明確的規(guī)定,采用隨機(jī)的見證出塊順序,出塊速度大致為3 s左右;DDPoS在節(jié)點(diǎn)選取階段使用PoW消耗大量計算資源,使得出塊交易確認(rèn)時間較長,出塊速度在8 s左右;DPoS-M2機(jī)制擯棄了節(jié)點(diǎn)投票而采用對屬性值進(jìn)行計算選取記賬節(jié)點(diǎn),出塊時間在4 s左右;本文將原先的隨機(jī)出塊順序改為由見證商議后確定的出塊順序,共識算法選取委托人后互相協(xié)商出一個出塊的順序,見證出塊時進(jìn)行全網(wǎng)廣播,其他見證收到新區(qū)塊后立即對此區(qū)塊進(jìn)行驗(yàn)證,無須等待其他見證自己出塊時再確認(rèn),降低了隨機(jī)選取委托人節(jié)點(diǎn)之間不必要的通信消耗,加快了區(qū)塊形成的速度。

      最后對時間效率進(jìn)行分析。本次實(shí)驗(yàn)設(shè)計在同一網(wǎng)絡(luò)環(huán)境下運(yùn)行24個模擬節(jié)點(diǎn),其中絕大部分,即21個節(jié)點(diǎn)扮演的是見證節(jié)點(diǎn)角色,而余下的3個節(jié)點(diǎn)則作為候選節(jié)點(diǎn),其存在的主要目的是為了維護(hù)共識的安全性。進(jìn)行50輪的共識實(shí)驗(yàn),并同時比較了四種共識機(jī)制在此過程中所消耗的時間。具體的實(shí)驗(yàn)結(jié)果如圖5所示。觀察實(shí)驗(yàn)數(shù)據(jù)可以發(fā)現(xiàn)一個明顯的趨勢,那就是隨著模擬周期的增長,四種共識機(jī)制消耗的時間都呈現(xiàn)出線性增長的態(tài)勢。在相同的實(shí)驗(yàn)條件下,隨著共識次數(shù)的增加,SVM-DPoS共識機(jī)制所耗費(fèi)的時間相對其他三種機(jī)制來說更少。即相比其他三種共識機(jī)制,時間消耗的優(yōu)勢更加明顯。這種優(yōu)勢主要體現(xiàn)在兩個方面:一是可以大幅度降低因節(jié)點(diǎn)惡意行為導(dǎo)致的網(wǎng)絡(luò)阻塞問題,二是每個周期見證節(jié)點(diǎn)出塊順序固定且隨機(jī)產(chǎn)生,降低了時間開銷。

      3 結(jié)束語

      在區(qū)塊鏈公鏈共識算法中,相較于PoW,DPoS在共識過程中減少了能源的浪費(fèi),通過代表節(jié)點(diǎn)的選舉和輪流出塊的方式,極大地提高了系統(tǒng)的能效。這為區(qū)塊鏈網(wǎng)絡(luò)的可持續(xù)性發(fā)展提供了有力支持。其次與PoS相比,DPoS通過選舉產(chǎn)生代表節(jié)點(diǎn),有效地避免了寡頭壟斷的問題,使得共識過程更為去中心化和民主化。這有助于防止權(quán)力過于集中,維護(hù)了整個網(wǎng)絡(luò)的去中心化特性。雖然DPoS共識算法相對于PoW和PoS有了一定提升,但其安全性始終備受爭議?;诖?,本文從見證節(jié)點(diǎn)的作惡剔除方面進(jìn)行改進(jìn)和優(yōu)化。將支持向量機(jī)運(yùn)用到區(qū)塊鏈節(jié)點(diǎn)的共識過程中,利用構(gòu)建SVM分類器實(shí)現(xiàn)對惡意節(jié)點(diǎn)的精確標(biāo)記,快速有效地剔除了惡意節(jié)點(diǎn),在保持原有性能的前提下,提高了共識節(jié)點(diǎn)的可信度及DPoS共識機(jī)制的安全性。但目前的研究還存在一些局限性和不足之處,需要繼續(xù)在實(shí)踐中不斷完善和改進(jìn),從而構(gòu)建安全、高效和可擴(kuò)展的區(qū)塊鏈系統(tǒng)。

      參考文獻(xiàn):

      [1]Chandra T D,Griesemer R,Redstone J. Paxos made live: an engineering perspective [C]// Proc of the 26th Annual ACM Symposium on Principles of Distributed Computing. New York:ACM Press,2007: 398-407.

      [2]Ongaro D,Ousterhout J. In search of an P1HP2s2LLH/LsI7l+uwTU+T95NtJ+Aqcz0CyK1phtso=understandable consensus algorithm [C]// Proc of USENIX Annual Technical Conference. 2014: 305-319.

      [3]Nakamoto S. Bitcoin: a peer-to-peer electronic cash system [R/OL]. (2008-10-31) [2020-09-12]. https://www. debr. io/article/21260-bitcoin-a-peer-to-peer-electronic-cash-system.

      [4]鄧小鴻,王智強(qiáng),李娟,等. 主流區(qū)塊鏈共識算法對比研究 [J]. 計算機(jī)應(yīng)用研究,2022,39(1): 1-8. (Deng Xiaohong,Wang Zhiqiang,Li Juan,et al. Comparative research on mainstream blockchain consensus algorithms [J]. Application Research of Computers,2022,39(1): 1-8.)

      [5]BitFury G. Proof of stake versus proof-of-work [EB/OL]. (2015-09-13). https://www. docin. com/p-1967383132. html.

      [6]King S,Nadal S. PPCoin: peer-to-peer crypto-currency with proof-of-stake [EB/OL].(2012). https://www.researchgate.net/publication/265116876_PPCoin_Peer-to-Peer_Crypto-Currency_with_Proof-of-Stake.

      [7]Larimer D. Delegated proof-of-stake (DPoS) [EB/OL]. (2014-04-03). https://how.bitshares.works/en/master/technology/dpos.html.

      [8]Xu Jie,Wang Cong,Jia Xiaohua. A survey of blockchain consensus protocols [J]. ACM Computing Surveys,2023,55(13S): 1-35.

      [9]Deepa N,Pham Q V,Nguyen D C,et al. A survey on blockchain for big data: Approaches,opportunities,and future directions [J]. Future Generation Computer Systems,2022,131: 209-226.

      [10]Yu Bin,Li Xiaofeng,Zhao He,et al. A scalable blockchain network model with transmission paths and neighbor node subareas [J]. Computing,2022,104(10): 2253-2277.

      [11]張雅萍,任秀麗. 基于配對制度的DPoS共識機(jī)制 [J]. 計算機(jī)應(yīng)用研究,2021,38(10): 2909-2914. (Zhang Yaping,Ren Xiuli. DPoS consensus mechanism based on matching mechanism [J]. Application Research of Computers,2021,38(10): 2909-2914.)

      [12]Xu Guangxia,Liu Yong,Khan P W. Improvement of the DPoS consensus mechanism in blockchain based on vague sets [J]. IEEE Trans on Industrial Informatics,2019,16(6): 4252-4259.

      [13]何帥,黃襄念,劉謙博,等. DPoS區(qū)塊鏈共識機(jī)制的改進(jìn)研究 [J]. 計算機(jī)應(yīng)用研究,2021,38(12): 3551-3557. (He Shuai,Huang Xiangnian,Liu Qianbo,et al. Research on improvement of DPoS blockchain consensus mechanism [J]. Application Research of Computers,2021,38(12): 3551-3557.)

      [14]Yang Fan,Zhou Wei,Wu Qingqing,et al. Delegated proof of stake with downgrade: a secure and efficient blockchain consensus algorithm with downgrade mechanism [J]. IEEE Access,2019,7: 118541-118555.

      [15]Sabokrou M,F(xiàn)athy M,Zhao Guoying,et al. Deep end-to-end one-class classifier [J]. IEEE Trans on Neural Networks and Learning Systems,2021,32(2): 675-684.

      [16]Yu Zhi,Shi Xiuzhi,Zhou Jian,et al. A new multikernel relevance vector machine based on the HPSOGWO algorithm for predicting and controlling blast-induced ground vibration [J]. Engineering with Computers,2022,38: 1905-1920.

      [17]Chen Kui,Badji A,Laghrouche S,et al. Polymer electrolyte membrane fuel cells degradation prediction using multi-kernel relevance vector regression and whale optimization algorithm [J]. Applied Energy,2022,318: 119099.

      [18]Prabhavathy T,Elumalai V K,Balaji E. Hand gesture classification framework leveraging the entropy features from sEMG signals and VMD augmented multi-class SVM [J]. Expert Systems with Applications,2024,238: 121972.

      [19]Vos K,Peng Z,Jenkins C,et al. Vibration-based anomaly detection using LSTM/SVM approaches [J]. Mechanical Systems and Signal Processing,2022,169: 108752.

      [20]Zhou Junbo,Xiao Maohua,Niu Yue,et al. Rolling bearing fault diagnosis based on WGWOA-VMD-SVM [J]. Sensors,2022,22(16): 6281.

      [21]戴小路,汪廷華,胡振威. 模糊多核支持向量機(jī)研究進(jìn)展 [J]. 計算機(jī)應(yīng)用研究,2021,38(10): 2896-2903. (Dai Xiaolu,Wang Tinghua,Hu Zhenwei. Research progress of fuzzy multiple kernel support vector machine [J]. Application Research of Computers,2021,38(10): 2896-2903.)

      [22]肖開研,廉潔. 基于多核支持向量機(jī)的句子分類算法 [J]. 華東師范大學(xué)學(xué)報: 自然科學(xué)版,2023 (6): 85-94. (Xiao Kaiyan,Lian Jie. Sentence classification algorithm based on multi-kernel support vector machine [J]. Journal of East China Normal University: Natural Science,2023 (6): 85-94.)

      [23]Wang Yu,Zhang Mingkai,Tang Xiaowei,et al. A kMap optimized VMD-SVM model for milling chatter detection with an industrial robot [J]. Journal of Intelligent Manufacturing,2022,33: 1483-1502.

      [24]Zheng Weilin,Zheng Zibin,Dai H N,et al. XBlock-EOS: extracting and exploring blockchain data from EOSIO [J]. Information Processing & Management,2021,58(3): 102477.

      收稿日期:2024-01-08;修回日期:2024-03-22 基金項目:國家自然科學(xué)基金資助項目(62162067,82360280);云南省軟件工程重點(diǎn)實(shí)驗(yàn)室開放基金資助項目(2020SE310);跨境網(wǎng)絡(luò)空間安全教育部工程研究中心開放基金資助項目(KJAQ202112013)

      作者簡介:何婧(1978—),女,云南紅河人,副教授,碩導(dǎo),博士,主要研究方向?yàn)榇髷?shù)據(jù)分析、數(shù)據(jù)挖掘、區(qū)塊鏈;豆天晨(1998—),男,陜西咸陽人,碩士研究生,主要研究方向?yàn)閰^(qū)塊鏈共識算法;陳琳(1998—),女,云南曲靖人,碩士研究生,主要研究方向?yàn)榫W(wǎng)絡(luò)表示學(xué)習(xí);董云云(1989—),女(通信作者),云南保山人,講師,博士,主要研究方向?yàn)閳D像隱寫、區(qū)塊鏈(dongyy929@ynu.edu.cn).

      杂多县| 左云县| 玛曲县| 陆丰市| 怀集县| 上思县| 伊川县| 南充市| 新巴尔虎左旗| 营山县| 北流市| 上饶县| 广水市| 神木县| 宝应县| 宽甸| 达州市| 巨鹿县| 偏关县| 陆河县| 鄄城县| 石楼县| 米易县| 溆浦县| 陕西省| 油尖旺区| 德阳市| 淅川县| 常德市| 萨迦县| 沈丘县| 明水县| 平果县| 瑞丽市| 盘山县| 黄大仙区| 饶河县| 枝江市| 博乐市| 胶南市| 聊城市|