999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進拜占庭容錯算法的區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng)

2022-06-14 08:25:16夏凱文顏超馮徑段超凡
科學(xué)技術(shù)與工程 2022年13期

夏凱文, 顏超,2*, 馮徑, 段超凡

(1.國防科技大學(xué)氣象海洋學(xué)院, 長沙 410005; 2. 南京工業(yè)大學(xué)浦江學(xué)院基礎(chǔ)部, 南京 211112)

在氣象大數(shù)據(jù)背景下,隨著地面觀測、探空、雷達、國內(nèi)外專業(yè)氣象網(wǎng)站以及企業(yè)自主設(shè)立氣象站等氣象資料種類及數(shù)量的增長,加快推動氣象部門、民營企業(yè)等機構(gòu)和個人的氣象數(shù)據(jù)資源的匯聚聯(lián)通、共建共享,消除氣象數(shù)據(jù)孤島,成為氣象大數(shù)據(jù)發(fā)展的重要方向[1-2]。

針對某一具體區(qū)域或站點數(shù)據(jù)的獲取較為困難,對氣象數(shù)據(jù)的可靠性、易獲取性具有較高要求。因此,建立一個氣象數(shù)據(jù)共享平臺是解決上述需求的重要途徑。當前氣象數(shù)據(jù)共享的主要方式基于集中式的云平臺進行處理[3],實現(xiàn)共享數(shù)據(jù)的存儲、傳遞和應(yīng)用。但缺乏可靠性和可跟蹤性,且需要借助強大的中央服務(wù)器。區(qū)塊鏈技術(shù)具有去中心化、可靠數(shù)據(jù)庫、去信任、交易匿名性以及不可篡改等特性[4],可實現(xiàn)在不完全信任的環(huán)境下,不依靠數(shù)據(jù)中心,實現(xiàn)節(jié)點間的氣象數(shù)據(jù)共享。當前基于區(qū)塊鏈的數(shù)據(jù)共享已經(jīng)應(yīng)用于眾多場合。如第五代移動通信技術(shù)(5th generation mobile communication technology,5G)無人機數(shù)據(jù)共享[5]、工業(yè)物聯(lián)網(wǎng)數(shù)據(jù)共享[6]、產(chǎn)品質(zhì)量溯源[7]以及醫(yī)療數(shù)據(jù)共享[8]等。

針對區(qū)塊鏈數(shù)據(jù)共享存儲系統(tǒng),國內(nèi)外學(xué)者在各領(lǐng)域給出了較為成熟的解決方案。Liu等[9]基于區(qū)塊鏈,提出了一種高效的數(shù)據(jù)收集和安全共享方案,結(jié)合以太坊區(qū)塊鏈和深度強化學(xué)習(xí)(deep reinforcement learning,DRL)創(chuàng)建一個可靠和安全的環(huán)境,其中DRL用于優(yōu)化收集的數(shù)據(jù)量,使其滿足最優(yōu)要求,區(qū)塊鏈技術(shù)用來保證數(shù)據(jù)共享的可靠性和安全性。Wang等[10]研究了分布式存儲系統(tǒng)的數(shù)據(jù)存儲與共享方案,提出了將分布式存儲網(wǎng)絡(luò)(distributed storage network,DSN)、以太坊和區(qū)塊鏈加密技術(shù)相結(jié)合的數(shù)據(jù)共享架構(gòu)。Dinh等[11]基于區(qū)塊鏈技術(shù)和DSN提出了一個新型電子醫(yī)療數(shù)據(jù)共享框架,并使用智能合約設(shè)計了一個可靠的訪問控制機制,以實現(xiàn)不同患者和醫(yī)療供應(yīng)商之間安全的電子醫(yī)療數(shù)據(jù)共享。通過DSN將共享的數(shù)據(jù)轉(zhuǎn)化成哈希值,然后將哈希值存儲在區(qū)塊鏈上,從而避免了大量共享數(shù)據(jù)的鏈上存儲。但是DSN網(wǎng)絡(luò)要想穩(wěn)定運行,需要用戶貢獻存儲空間和網(wǎng)絡(luò)帶寬,如果沒有恰當?shù)莫剟顧C制,那么巨大的資源開銷很難維持網(wǎng)絡(luò)的持久運行[12]。基于聯(lián)盟鏈的場景,譚海波等[13]提出由數(shù)字檔案館、聯(lián)盟區(qū)塊鏈、公有區(qū)塊鏈、去中心化存儲網(wǎng)絡(luò)、系統(tǒng)服務(wù)構(gòu)成的數(shù)據(jù)檔案保護和共享方法。蔣宇娜等[14]提出基于區(qū)塊鏈技術(shù)的去中心化物聯(lián)網(wǎng)數(shù)據(jù)共享和存儲方案,將系統(tǒng)框架分為智能合約[15]、區(qū)塊鏈網(wǎng)絡(luò)、分布式賬本和物聯(lián)網(wǎng)設(shè)備。

然而,基于區(qū)塊鏈技術(shù)實現(xiàn)氣象數(shù)據(jù)共享,面臨的問題包括:種類繁多、體量龐大的氣象共享數(shù)據(jù)存儲;高效的區(qū)塊鏈共識機制;氣象數(shù)據(jù)共享與獲取方法。針對上述問題,現(xiàn)通過引入去中心化存儲網(wǎng)絡(luò),“匯聚”區(qū)塊鏈網(wǎng)絡(luò)中節(jié)點的存儲空間,提出基于存儲算力的共識機制。通過改進拜占庭容錯算法,提出一種基于共享度的改進拜占庭容錯算法。通過引入“共享幣”作為區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng)的數(shù)據(jù)流通手段,用于激勵系統(tǒng)的數(shù)據(jù)共享,可通過“共享幣”獲取其他用戶或機構(gòu)所共享的氣象數(shù)據(jù)。針對氣象數(shù)據(jù)共享場景,基于星際文件系統(tǒng)(interplanetary file system,IPFS)和Ethereum設(shè)計氣象數(shù)據(jù)共享智能合約,并進行實驗和測試。

1 系統(tǒng)模型

1.1 區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng)框架

提出的區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng)(blockchain meteorological data sharing system, BMDSS)框圖如圖1所示,BMDSS由共享節(jié)點、區(qū)塊鏈共識網(wǎng)絡(luò)、去中心化應(yīng)用(decentralized applications, DApp)、去中心化存儲網(wǎng)絡(luò)(DSN)和分布式賬本等構(gòu)成。

圖1 區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng)框圖Fig.1 Blockchain meteorological data sharing system block diagram

1.1.1 共享節(jié)點

共享節(jié)點(shared node, SN)是BMDSS的核心組成部分,為BMDSS提供共享氣象數(shù)據(jù)及存儲空間,是BMDSS中的交易實體。共享節(jié)點由參與共享氣象數(shù)據(jù)或提供存儲空間的各類用戶,包括個人、自建站、科研機構(gòu)、商業(yè)公司等組成。

SN由節(jié)點公鑰(public key of the nodes, PB)、節(jié)點私鑰(private key of the nodes, PV)、共享度(sharing degree, SD)、節(jié)點類型(node types, NT),共享幣余額(sharing coin balance, BAL)、節(jié)點行為(node action, NA)6個屬性構(gòu)成,SNi可用六元組表示為

SNi=〈PBi,PVi,SDi,NTi,BALi,NAi〉

(1)

BMDSS中節(jié)點行為包括氣象數(shù)據(jù)共享及獲取、存儲空間共享、參與區(qū)塊共識、節(jié)點間交易。其中共享節(jié)點包括共識節(jié)點和驗證節(jié)點。PBi、PVi、SDi、NTi、BALi、NAi分別為第i個共享節(jié)點的節(jié)點公鑰、節(jié)點私鑰、共享度、節(jié)點類型、共享幣余額和節(jié)點行為。對這兩類節(jié)點做出如下說明。

(1) 共識節(jié)點。屬于共享節(jié)點;參與BMDSS中節(jié)點行為的合法性驗證,并向驗證節(jié)點廣播節(jié)點行為,進行二次驗證。

(2) 驗證節(jié)點。屬于共享節(jié)點;用于節(jié)點行為進行二次驗證。

1.1.2 區(qū)塊鏈共識網(wǎng)絡(luò)

區(qū)塊鏈共識網(wǎng)絡(luò)(blockchain consensus network,BCN)由共識節(jié)點和驗證節(jié)點組成,在共識機制的約束下,驗證BMDSS中所有節(jié)點行為的合法性。

1.1.3 去中心化應(yīng)用

去中心化應(yīng)用(DApp)其本身不存儲任何數(shù)據(jù)和交易信息,以接口的形式為共享節(jié)點提供智能合約和DSN的接口調(diào)用。

1.1.4 去中心化存儲網(wǎng)絡(luò)

去中心化存儲網(wǎng)絡(luò)(DSN)聚集共享節(jié)點的存儲空間,用于對共享的氣象數(shù)據(jù)進行存儲,并生成唯一的哈希地址。SN可通過智能合約獲取DSN生成的哈希地址,實現(xiàn)對氣象數(shù)據(jù)的檢索。

1.1.5 分布式賬本

分布式賬本由所有共享節(jié)點共同參與維護,用于記錄節(jié)點間的交互日志。

BMDSS數(shù)據(jù)流如圖2所示。

圖2 BMDSS數(shù)據(jù)流Fig.2 BMDSS data flow

1.2 智能合約架構(gòu)

智能合約是一個可編程的業(yè)務(wù)規(guī)則制定平臺,當預(yù)先設(shè)定的條件被觸發(fā)時,智能合約會自動執(zhí)行處理流程[16]。由于智能合約具有可編程性、不可篡改性和一致性等特點,通過智能合約實現(xiàn)氣象數(shù)據(jù)共享與獲取、節(jié)點間的數(shù)據(jù)交易、節(jié)點的獎懲以及共享和驗證節(jié)點的選舉。BMDSS包含的智能合約架構(gòu)如圖3所示,其中包括氣象數(shù)據(jù)存儲合約(meteorological data storage contract, MDSC)、共享節(jié)點交易合約(shared node trading contracts, SNTC)、節(jié)點身份選舉合約(node identity election contract, NIEC)、共享存儲證明合約(Sharing storage certificate contract, SSCC)以及節(jié)點獎懲機制合約(node reward penalty contract, NRPC)。

各合約功能分述如下。

(1)氣象數(shù)據(jù)存儲合約。MDSC用于對SN的氣象數(shù)據(jù)共享請求[Req(SNshare)]、氣象數(shù)據(jù)獲取請求[Req(SNget)]的合法性進行驗證,并在DSN中建立氣象數(shù)據(jù)索引列表。Req(SNshare)返回共享的氣象數(shù)據(jù)存儲的哈希地址和“共享幣”獎勵,Req(SNget)返回獲取的氣象數(shù)據(jù)的哈希地址和消費的“共享幣”。

(2)共享節(jié)點交易合約。SNTC用于對交易發(fā)起方的交易請求[Req(SNTx)]和交易接收方的反饋信息[FB(SNTx)]進行驗證,借助Merkle樹驗證交易發(fā)起方賬戶余額和“共享幣”來源的合法性,并返回交易結(jié)果(true or false)。

(3)節(jié)點身份選舉合約。NIEC用于選舉參與共識機制的共識節(jié)點和驗證節(jié)點。NIEC在固定的周期中執(zhí)行一次,使得參與共識機制的節(jié)點不產(chǎn)生于某些固定的節(jié)點中,以保證BMDSS的去中心化程度。

(4)共享存儲證明合約。SSCC用于檢查SN的共享存儲空間是否持續(xù)存儲共享數(shù)據(jù),借鑒Filecoin中的復(fù)制證明和時空證明,保證SSCC的可靠性,以用于防御惡意節(jié)點的女巫攻擊、外包攻擊和生成攻擊[17]。

(5)節(jié)點獎懲機制合約。NRPC定義了BMDSS中的獎懲機制。SN的節(jié)點行為中氣象數(shù)據(jù)共享及獲取,節(jié)點間交易以“共享幣”作為激勵機制,不參與獎懲機制。節(jié)點的其他行為的獎懲如表1所示。

圖3 BMDSS的智能合約架構(gòu)Fig.3 The smart contract architecture of BMDSS

表1 節(jié)點行為獎懲Table 1 Node behavior rewards and punishments

1.3 共識機制

在BMDSS的開放數(shù)據(jù)處理與融合方式中,少數(shù)的惡意節(jié)點傾向于通過偽造數(shù)據(jù)、謊報存儲容量等方式加入BMDSS,進而獲取不當利益。由于區(qū)塊鏈中每個節(jié)點都是對等的,因此BDMSS中不存在與傳統(tǒng)網(wǎng)絡(luò)中的中心化數(shù)據(jù)庫。為了能在決策權(quán)分散的無中心化區(qū)塊鏈系統(tǒng)中快速、高效地針對節(jié)點行為的合法性達成一致,通過在BMDSS中建立完善的共識機制,保證系統(tǒng)的規(guī)范化運轉(zhuǎn)。目前區(qū)塊鏈中的共識機制可分為五類[18],包括選舉類共識,如RAFT;能力證明類共識,如目前主流的共識機制有比特幣和以太坊采用的工作量證明機制(proof of work,PoW)、EOS采用的權(quán)益證明機制(proof of stake,PoS);隨機類共識;約定類共識以及混合類共識。考慮到共享數(shù)據(jù)的存儲需求,借鑒傳統(tǒng)的PoW和PoS共識機制,提出基于存儲算力的共識機制(proof of stored computing power,Posp)。

定義1出塊周期(Tblock)表示每隔一個固定時間周期,BDMSS將該時間周期內(nèi)系統(tǒng)中節(jié)點的所有行為進行封裝,并生成一個區(qū)塊。

(2)

為了激勵存儲算力較小的節(jié)點積極性,將第t個出塊周期中最大存儲算力記為max(SPt),對應(yīng)節(jié)點記為SNmax(SPt)。該出塊周期結(jié)束后,SNmax(SPt)分配50%的出塊獎勵(即共享幣)。將剩余的節(jié)點按存儲算力大小,依式(3)分配第t個出塊周期的50%出塊獎勵。

(3)

2 基于共享度的改進拜占庭容錯算法

2.1 基于共享度的節(jié)點選舉

BMDSS對共享節(jié)點的共享氣象數(shù)據(jù)、存儲空間等行為給予一定的共享幣獎勵,為了規(guī)范BMDSS中的節(jié)點行為規(guī)范,防范惡意節(jié)點謀取不當利益以及系統(tǒng)中可能存在的故障節(jié)點,提出基于共享度的改進拜占庭容錯算法(sharing degree practical Byzantine-fault tolerance,SD-PBFT),解決存在惡意節(jié)點情況下的共識達成問題。

定義2選舉周期(Tvote)至BMDSS中每隔固定時間進行共識節(jié)點和鹽城節(jié)點的選舉,兩個選舉的是漸漸個為選舉周期,其中有

(4)

定義3共享度(sharing degree,SD)是第t個選舉周期中對單個共享節(jié)點的氣象數(shù)據(jù)共享情況和存儲算力綜合度量。共享度越高,表示節(jié)點參與數(shù)據(jù)共享越活躍。其中共享數(shù)據(jù)情況用共享節(jié)點的氣象數(shù)據(jù)共享率(sharing rate, SR)衡量,即

(5)

(6)

λ1+λ2=1

(7)

此外,為激勵共享節(jié)點參與維護區(qū)塊鏈,共識節(jié)點和驗證節(jié)點每成功參與一次驗證都將得到一定數(shù)量的“共享幣”獎勵。為最大化收益,BDMSS中的共享節(jié)點會盡可能提高共享度,以增大成為共識節(jié)點或驗證節(jié)點的概率。

2.2 算法設(shè)計

SD-PBFT的智能合約架構(gòu)如圖4所示。設(shè)共識節(jié)點的總數(shù)量為Ncon,其中惡意節(jié)點的數(shù)量為fcon,Ncon>3fcon;設(shè)共識節(jié)點的總數(shù)量為Ncon,Nver為驗證節(jié)點數(shù)量,惡意節(jié)點的數(shù)量為fver,Ncon>3fver。

(1)請求階段。智能合約向共識節(jié)點發(fā)送驗證請求,其中REQ為階段標識,m為消息內(nèi)容,signSN(m)為消息發(fā)起的共享節(jié)點對m的簽名,time為消息的時間戳,num為消息的請求編號。

(2)準備階段。共識節(jié)點對驗證請求中的消息請求進行驗證,若請求非法,則丟棄;否則向驗證節(jié)點廣播準備請求,其中signcon(m)為共識節(jié)點對m的簽名。

(3)提交階段。驗證節(jié)點首先判斷是否收到至少收到2fcon+1個編號為num的準備請求,若滿足,則對準備請求中的消息請求進行驗證。若請求非法,則丟棄;否則向共識節(jié)點廣播提交請求,其中signver(m)為驗證節(jié)點對m的簽名。

(4)響應(yīng)階段。共享節(jié)點首先判斷是否至少收到2fver+1個編號為num的提交請求,若滿足,則對提交請求中的消息請求進行驗證,并向智能合約驗證通過信息;否則驗證失敗。

圖4 BMDSS的智能合約架構(gòu)Fig.4 The smart contract architecture of BMDSS

(5)統(tǒng)計階段。智能合約收到fcon+1個來自不同共識節(jié)點的相同結(jié)果后,將該結(jié)果作為最終結(jié)果。

具體算法如算法1。

算法1: SD-PBFTINPUT:Ncon,Nver,mOUTPUT:True or FalseFunction Node_vote(Ncon,Nver): Initialize SDt={SDt1,SDt2,…,SDtn} for i in SDt: if t = 1 do SDti=λ1SPti+λ2SRti if t != 1 do SDti=αSDt-1i+λ1SPti+λ2SRti if θ1≤SDti do Ncon.append(SDti) if θ2≤SDti≤θ1 do Nver.append(SDti) return Ncon,NverBegin: Ncon,Nver = Node_vote(Ncon,Nver) REQ_Flag = Constract. send() to Ncon if REQ_Flag do PRE_Flag =Ncon.send() to Nver if PRE_Flag do COM_Flag =Nver. send() to Ncon if COM_Flag do REP_Flag =Ncon. send() to Constract if REP _Flag do calculate(result) if result > fcon+1 do return true else: return falseEnd

2.3 算法性能分析

在基于共享度的改進拜占庭容錯算法中,算法的執(zhí)行主要依靠于共識節(jié)點和驗證節(jié)點完成,通過帕累托分布函數(shù)來描述共享節(jié)點的共享度。帕累托分布是意大利經(jīng)濟學(xué)家維弗雷多·帕累托在19世紀末提出的,用于描述20%的人占有80%的社會財富的財富分配情況。考慮到BDMSS中的共享度主要集中在共識節(jié)點和驗證節(jié)點中,即存在大量共享度低的節(jié)點和少量共享度高的節(jié)點,可通過帕累托分布來描述共識節(jié)點和驗證節(jié)點的分布情況。設(shè)共享節(jié)點的共享度集合為SD=(SD1,SD2,…,SDn}。其中n=Ncon+Nver,Ncon為共識節(jié)點數(shù)量,Nver為驗證節(jié)點數(shù)量。SDi服從參數(shù)ζ和min{SDi}的帕累托分布,其概率分布為

(8)

式(8)中:x≥min{SDi},k>0。

概率密度分布函數(shù)為

(9)

由式(9)可知,當共享節(jié)點Ni充當共識節(jié)點時,有θ1≤SDi;當共享節(jié)點充當驗證節(jié)點時,有θ2≤SDi≤θ1。綜上,共享節(jié)點成為共識節(jié)點的概率Pcon為

(10)

共享節(jié)點成為驗證節(jié)點的概率為

= Pr(X>θ2)-Pr(X>θ1)

(11)

式(11)中:θ2>θ1>min{SDi};參數(shù)k越大,共享節(jié)點中成為共識節(jié)點和驗證節(jié)點的概率越小。

共享節(jié)點和驗證節(jié)點的數(shù)量分別為

Ncon=[nPcon]

(12)

Nver=[nPver]

(13)

式中:[nPcon]、[nPver]分別為nPcon和nPver的整數(shù)部分。

將依據(jù)帕累托分布所得到的Ncon、Nver對基于共享度的改進拜占庭算法的時延、通信帶寬開銷和網(wǎng)絡(luò)吞吐量做出分析。

(1)時延。由圖4可知,算法執(zhí)行的時延主要包含兩個方面,即共享節(jié)點和驗證節(jié)點間的數(shù)據(jù)傳輸時延和區(qū)塊的驗證時延。設(shè)節(jié)點之間的基礎(chǔ)網(wǎng)絡(luò)時延為τd,節(jié)點間的網(wǎng)絡(luò)時延擾動范圍Δτ,SN處理一個字節(jié)信息所需時間的集合為T={t1,t2,…,ti}。算法執(zhí)行的總時延τtotal為

(14)

式(14)中:Sblock為區(qū)塊的字節(jié)數(shù)。

(2)吞吐量。BDMSS中的吞吐量是指每秒完成的交易數(shù),其計算公式為

(15)

式(15)中:TPS為吞吐量;Stx為交易的大小;tblock為區(qū)塊達成共識的時間,其中tblock=Tblock。

(3)通信帶寬開銷。基于共享度的改進拜占庭算法中的通信開銷發(fā)生在共識節(jié)點和驗證節(jié)點的選舉和區(qū)塊驗證兩個過程中。在一個選舉周期中通信帶寬開銷BW可表示為

(16)

3 系統(tǒng)方法設(shè)計

所設(shè)計的BDMSS旨在塑造一個開放式的氣象數(shù)據(jù)共享平臺,BDMSS的氣象數(shù)據(jù)共享與獲取、節(jié)點間的數(shù)據(jù)交易的方法實現(xiàn)流程如下。

3.1 氣象數(shù)據(jù)共享與獲取方法設(shè)計

氣象數(shù)據(jù)共享與獲取方法基于智能合約、DSN以及混合加密機制實現(xiàn)安全可靠的氣象數(shù)據(jù)共享,使節(jié)點可以安全高效地實現(xiàn)數(shù)據(jù)獲取。

為了便于描述,設(shè)共享節(jié)點A(SNA)需要將存有的氣象數(shù)據(jù)共享至BMDSS中,共享節(jié)點B(SNB)需要獲取節(jié)點A共享的氣象數(shù)據(jù)。

3.1.1 氣象數(shù)據(jù)共享方法步驟

(17)

(18)

步驟4MDSC通知DSN開辟滿足MeteData存儲的空間,并向SNA發(fā)送氣象數(shù)據(jù)上傳指令。同時調(diào)用NRPC,給予SNA一定數(shù)量的“共享幣”作為獎勵。

步驟5SNA將MeteData上傳至DNS成功后,DNS返回MeteData唯一對應(yīng)的哈希地址,并通過PBA進行加密,將加密后的數(shù)據(jù)地址返回至SNA,即

HashAdd=DSN(MeteData)

(19)

HashAddRSA=RSA(HashAdd,PBA)

(20)

上述步驟中RSA為非對稱加密算法加密過程;RSA為非對稱加密算法解密過程, DSN為MeteData的哈希地址生成過程;HashAdd為MeteData的哈希地址,HashAddRSA為加密后的哈希地址。采用比特幣中使用的橢圓曲線加密法。

3.1.2 氣象數(shù)據(jù)獲取方法步驟

(21)

(22)

步驟4MDSC通過DSN獲取DigestMeteData的哈希地址,并經(jīng)過PBB進行加密后,將加密后的哈希地址返回至SNB,即

HashAddRSA=RSA(HashAdd,PBB)

(23)

步驟5SNB通過私鑰PVB解密后,獲取哈希地址,可通過獲取的哈希地址下載查看數(shù)據(jù),即

HashAdd=DSA(HashAddRSA,PVB)

(24)

3.2 氣象數(shù)據(jù)交易方法設(shè)計

考慮到部分節(jié)點擁有某些專有數(shù)據(jù),這類數(shù)據(jù)不會被公開共享至DSN中,其他節(jié)點可通過交易的方式獲取數(shù)據(jù)。氣象數(shù)據(jù)交易方法步驟如下。

步驟1SNA將專有數(shù)據(jù)的基本信息(格式、名稱、范圍等)通過SNTC發(fā)布至DSN的索引列表中,供BMDSS中其他節(jié)點進行檢索。

HashAdd=DSN[RSA(MeteData,PBB)]

(25)

(26)

步驟4SNB使用PVB解密后,得到數(shù)據(jù)哈希地址,SNB可通過數(shù)據(jù)哈希地址下載查看數(shù)據(jù),即

(27)

步驟5SNTC將SNB本次交易所需的“共享幣”轉(zhuǎn)至SNA中,同時SNB中扣除對應(yīng)數(shù)量的“共享幣”,交易結(jié)束。

4 實驗結(jié)果

首先仿真分析了SD-PBFT的性能,其中包括時延、通信帶寬開銷和網(wǎng)絡(luò)吞吐量,并與PBFT算法進行了對比;其次,針對區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng),基于以太坊平臺,并結(jié)合IPFS進行氣象數(shù)據(jù)共享,BMDSS進行初步實現(xiàn)與測試。

4.1 算法仿真結(jié)果

為了分析SD-PBFT算法的各項指標,在基于Intel(R) Xeon(R) W-2104 CPU @3.20 Hz,16 GB RAM計算機中實現(xiàn)了SD-PBFT和PBFT算法,并進行了相應(yīng)的測試。系統(tǒng)仿真參數(shù)如表2所示。

圖5展示了在k=1、k=2、k=3下,在共享節(jié)點個數(shù)分別為10、50、100、1 000、5 000、10 000時,SD-PBFT算法共識節(jié)點和驗證節(jié)點的個數(shù)。

表2 系統(tǒng)仿真參數(shù)Table 2 System simulation parameters

圖5 不同共享節(jié)點和k值下共識節(jié)點和驗證節(jié)點的數(shù)量Fig.5 Number of consensus nodes and validation nodes with different shared nodes and k values

首先,對SD-PBFT算法對帶寬開銷進行測試。取k=1,當共享節(jié)點的數(shù)量逐漸增加至10 000時,帶寬開銷達到0.26×106KB。如圖7所示,隨著共享節(jié)點數(shù)量的增加,帶寬開銷保持著較小曲率的指數(shù)增長。同時,圖7展示了SD-PBFT與PBFT的對比效果,在共享節(jié)點個數(shù)為0~1 500時,SD-PBFT與PBFT算法的帶寬開銷較為接近,這是因為SD-PBFT選舉共識節(jié)點和驗證節(jié)點時,系統(tǒng)需要承擔一定的開銷。然而,隨著共享節(jié)點數(shù)量的增加,PBFT的帶寬開銷呈現(xiàn)出指數(shù)級的增長,而SD-PBFT還未明顯出現(xiàn)指數(shù)增長的趨勢。在共享節(jié)點數(shù)量為10 000時,PBFT的帶寬開銷達到2.5×106KB,遠遠高于SD-PBFT的0.26×106KB。綜上,在共享節(jié)點數(shù)量較多時,SD-PBFT表現(xiàn)出更好的性能,具備更低的帶寬開銷。

其次,對比了不同交易數(shù)量下SD-PBFT和PBFT的吞吐量。如圖7所示,隨著交易數(shù)量由0增加至10 000,SD-PBFT和PBFT的吞吐量均呈現(xiàn)線性增長;當交易數(shù)量小于4 000時,SD-PBFT和PBFT保持接近;然而,隨著交易數(shù)量大于4 000時,SD-PBFT的吞吐量明顯高于PBFT。當交易數(shù)量為10 000時,SD-PBFT的吞吐量為1 534筆/s,PBFT的吞吐量為1 426筆/s,SD-PBFT的吞吐量相對于PBFT提升7.5%。

最后,分析對比了不同交易數(shù)量下SD-PBFT和PBFT的時延。如圖8所示,隨著交易數(shù)量的增加,SD-PBFT的時延增長的趨勢由快減緩。當交易數(shù)量大于3 000時,SD-PBFT時延低于PBFT;當交易數(shù)為10 000時,SD-PBFT的時延為8 973 ms,PBFT的時延為10 358 ms,SD-PBFT的時延相對于PBFT降低13.3%。

綜上,交易數(shù)量為10 000時,SD-PBFT和PBFT的性能分析如表3所示。

圖6 SD-PBFT和PBFT算法帶寬開銷Fig.6 SD-PBFT and PBFT algorithm bandwidth overhead

圖7 SD-PBFT和PBFT算法吞吐量Fig.7 SD-PBFT and PBFT algorithm throughput

圖8 SD-PBFT和PBFT算法時延Fig.8 SD-PBFT and PBFT algorithm delay

表3 SD-PBFT和PBFT性能分析Table 3 SD-PBFT and PBFT performance analysis

4.2 BMDSS實現(xiàn)

BMDSS系統(tǒng)基于IPFS和Ethereum進行實現(xiàn),并基于Truffle框架完成web端程序的開發(fā)。其中Truffle是針對基于以太坊的Solidity語言的一套開發(fā)框架,其本身基于JavaScript。將環(huán)境部署至本地的Ubuntu18.04虛擬機中。具體界面如圖9所示。其中包括文件上傳、文件Hash值獲取、文件瀏覽地址(IPFS地址)獲取等功能。

BMDSS通過兩個用戶節(jié)點(節(jié)點1和節(jié)點2)演示氣象數(shù)據(jù)共享功能,所共享的數(shù)據(jù)為2020年4月10日0:00的某國家級地面站逐小時觀探測資料(以下簡稱觀探測資料)。節(jié)點1和節(jié)點2的節(jié)點信息如表4所示。

節(jié)點1通過智能合約發(fā)布共享的觀探測資料至區(qū)塊鏈網(wǎng)絡(luò)中,通過共識機制完成認證后,將觀探測資料存儲至IPFS中,并返回該資料所對應(yīng)的哈希值QmRv6wwRKv9kUtHCxoEXc3mbLJNc458bBycpBE VVHg13Z。節(jié)點2可通過查詢節(jié)點1所上傳的觀探測資料,獲取資料的哈希值,并通過連接(http://IP/ipfs/資料的哈希值)獲取觀探測資料內(nèi)容。獲取的結(jié)果如圖10所示。

圖9 BMDSS系統(tǒng)界面Fig.9 BMDSS system interface

表4 用戶節(jié)點基本信息Table 4 User node basic information

圖10 節(jié)點2所獲取節(jié)點1上傳的觀探測資料Fig.10 The observation detection data uploaded by Node 1 obtained by Node 2

5 結(jié)論

針對所提出的區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng)提出了基于共享度的共識機制和改進拜占庭容錯算法,并設(shè)計了氣象數(shù)據(jù)共享與獲取方法和交易方法。在仿真實驗中,所提出的SD-PBFT在交易數(shù)量為10 000時,相對于PBFT吞吐量提升7.5%,時延降低13.3%,且擁有更小的帶寬開銷。最后,結(jié)合IPFS和Ethereum初步設(shè)計共享系統(tǒng),并進行演示和測試。在未來工作中,將就區(qū)塊鏈氣象數(shù)據(jù)共享系統(tǒng)開展進一步深入研究。

主站蜘蛛池模板: 人妻出轨无码中文一区二区| 露脸国产精品自产在线播| 丁香综合在线| 精品三级网站| 午夜啪啪网| 成·人免费午夜无码视频在线观看| 国内精品伊人久久久久7777人| 2021精品国产自在现线看| 欧美一级片在线| 国产成人无码AV在线播放动漫| jizz国产视频| 国产国产人免费视频成18| 亚洲一区无码在线| 怡红院美国分院一区二区| 欧美国产日韩在线观看| 国产美女丝袜高潮| 91在线丝袜| 欧美国产菊爆免费观看| 色悠久久久久久久综合网伊人| 男女男免费视频网站国产| 日韩欧美国产精品| 日韩毛片免费| 另类综合视频| 美女视频黄又黄又免费高清| 国产最新无码专区在线| 亚洲一区二区成人| 午夜国产精品视频| 欧美h在线观看| 亚洲综合日韩精品| 99精品视频在线观看免费播放| 国产成人91精品免费网址在线| 99视频在线看| 妇女自拍偷自拍亚洲精品| 中文一级毛片| 华人在线亚洲欧美精品| 国产美女叼嘿视频免费看| 91久久偷偷做嫩草影院| 国产女人18毛片水真多1| 日韩麻豆小视频| 亚洲最黄视频| 日本人真淫视频一区二区三区| 性色在线视频精品| 国产中文在线亚洲精品官网| 日韩A∨精品日韩精品无码| 久久毛片网| 玖玖精品在线| 亚洲一欧洲中文字幕在线| 国产区在线观看视频| 1769国产精品视频免费观看| 亚洲国产精品无码AV| 伊人中文网| 免费观看无遮挡www的小视频| 九九这里只有精品视频| 国产欧美精品专区一区二区| 日韩AV手机在线观看蜜芽| 亚洲天堂久久久| 国产成人精品2021欧美日韩| 伊人狠狠丁香婷婷综合色 | 国产精品jizz在线观看软件| 成年午夜精品久久精品| 国产小视频a在线观看| 欧美亚洲一二三区| 久久久久久久97| yjizz国产在线视频网| 久久国产免费观看| 精品综合久久久久久97超人| 久久9966精品国产免费| 日韩成人午夜| 视频一本大道香蕉久在线播放| 国产精品一区二区无码免费看片| 亚洲高清国产拍精品26u| 九九九精品成人免费视频7| 久久综合亚洲色一区二区三区| 色屁屁一区二区三区视频国产| 手机精品视频在线观看免费| 欧洲精品视频在线观看| 成人无码区免费视频网站蜜臀| 国产尤物在线播放| 国产中文在线亚洲精品官网| 国产精品hd在线播放| 国产丝袜啪啪| 欧美日韩亚洲国产主播第一区|