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

?

面向數(shù)據(jù)保護(hù)的區(qū)塊鏈物聯(lián)網(wǎng)邊緣卸載策略

2024-08-17 00:00劉汝鴻栗娟
計算機(jī)應(yīng)用研究 2024年7期

摘 要:物聯(lián)網(wǎng)(IoT)設(shè)備的廣泛應(yīng)用帶來了數(shù)據(jù)安全性和完整性的挑戰(zhàn)。針對這一問題,提出了一種區(qū)塊鏈物聯(lián)網(wǎng)邊緣卸載策略,專注于數(shù)據(jù)保護(hù)。該策略通過將IoT設(shè)備數(shù)據(jù)上傳至區(qū)塊鏈,利用其不可竄改性和可追溯性來保障數(shù)據(jù)安全。鑒于區(qū)塊鏈的工作量證明(PoW)共識算法在數(shù)據(jù)驗證和區(qū)塊添加方面的高計算資源需求,該策略采用邊緣計算技術(shù),將PoW共識過程卸載至邊緣服務(wù)器執(zhí)行。進(jìn)一步地,設(shè)計并實現(xiàn)了一個多目標(biāo)邊緣卸載算法(multi-object edge offloading algorithm,MEOA),以尋找最優(yōu)卸載策略,動態(tài)調(diào)整PoW共識難度,實現(xiàn)系統(tǒng)安全性與運行效率的平衡。仿真實驗結(jié)果表明,該策略相比其他卸載策略,在提高IoT設(shè)備數(shù)據(jù)上鏈效率、降低時間和能耗成本方面表現(xiàn)優(yōu)異,同時確保了數(shù)據(jù)安全性和完整性。

關(guān)鍵詞:區(qū)塊鏈; 物聯(lián)網(wǎng); 邊緣計算; 數(shù)據(jù)保護(hù); 邊緣卸載

中圖分類號:TP311 文獻(xiàn)標(biāo)志碼:A 文章編號:1001-3695(2024)07-004-1951-08

doi:10.19734/j.issn.1001-3695.2023.11.0531

Blockchain IoT edge offloading strategy for data protection

Abstract:The widespread application of Internet of Things(IoT) devices has brought forth the challenge of ensuring data security and integrity. This research proposed a blockchain-based IoT edge offloading strategy focused on data protection. The strategy involved uploading IoT device data to the blockchain, utilizing its immutability and traceability to enhance data security. Given the high computational demands of the blockchain’s proof of work(PoW) consensus algorithm for data verification and block addition, edge computing technology was employed to offload the PoW consensus process to edge servers. Furthermore,it developed a multi-objective edge offloading algorithm(MEOA) to identify the optimal offloading strategy and dynamically adjusted the PoW consensus difficulty, balancing system security with operational efficiency. Simulation results show that this strategy outperforms others in enhancing the chaining efficiency of IoT device data and reducing time and energy costs, while ensuring data security and integrity.

Key words:blockchain; Internet of Things; edge computing; data protection; edge offloading

0 引言

隨著物聯(lián)網(wǎng)(IoT)設(shè)備的廣泛應(yīng)用,如何保護(hù)設(shè)備數(shù)據(jù)的安全性和完整性成為了一個重要問題。區(qū)塊鏈技術(shù)因其去中心化、數(shù)據(jù)不可竄改等特性,已漸漸成為保護(hù)數(shù)據(jù)隱私和安全性的理想選擇。使用區(qū)塊鏈技術(shù),將IoT設(shè)備數(shù)據(jù)和用戶隱私數(shù)據(jù)打包成區(qū)塊進(jìn)行上鏈保護(hù),確保IoT設(shè)備數(shù)據(jù)的完整性、安全性和可追溯性[1]。然而,區(qū)塊鏈數(shù)據(jù)上鏈過程,如工作量證明(proof of work,PoW),屬于計算密集型任務(wù),若直接在計算能力有限的IoT設(shè)備上運行,對于終端計算能力來說是一個巨大的挑戰(zhàn),如果全部卸載到云端去執(zhí)行,又會給用戶數(shù)據(jù)安全帶來隱患[2,3]。

為了應(yīng)對這些挑戰(zhàn),邊緣計算技術(shù)應(yīng)運而生。作為一種新興的技術(shù),它側(cè)重于在網(wǎng)絡(luò)邊緣設(shè)備(如網(wǎng)關(guān)、路由器或接入點)進(jìn)行數(shù)據(jù)處理,以降低網(wǎng)絡(luò)延遲、提升數(shù)據(jù)處理效率,特別是在實時性需求高的應(yīng)用場景(如自動駕駛、智能制造等)中,邊緣計算更顯其優(yōu)勢。Zhao等人[4]將邊緣計算融入工廠協(xié)作跟蹤目標(biāo)中,開發(fā)了具有物聯(lián)網(wǎng)邊緣計算功能的室內(nèi)外協(xié)作跟蹤體系,使用分布式的計算方式有助于解決云端服務(wù)器的壓力,降低跟蹤延遲。Liu等人[5]提出了一種基于邊緣計算的目標(biāo)位置二次定位可靠性機(jī)制,提高了大視頻序列在實際工業(yè)應(yīng)用中的相應(yīng)速度。

任務(wù)卸載是將任務(wù)從一個計算節(jié)點(通常是終端應(yīng)用)遷移到另一個計算節(jié)點(如邊緣設(shè)備)上進(jìn)行任務(wù)執(zhí)行的過程[6]。邊緣計算環(huán)境下,使用不同任務(wù)卸載策略來提高應(yīng)用性能和資源利用率已成為一個關(guān)鍵問題。Cheng等人[7]提出了一種空間-空中-地面聯(lián)合網(wǎng)絡(luò)(SAGIN)邊緣云計算架構(gòu),用于卸載考慮遠(yuǎn)程能源和計算限制的計算密集型應(yīng)用程序,其中由飛行的無人機(jī)(UAV)提供近用戶側(cè)邊緣計算,由衛(wèi)星提供云計算的接入。凌雪延等人[8]利用混合編碼方式的遺傳算法,對系統(tǒng)時延和能耗的加權(quán)和最小化問題及逆行求解,確定最優(yōu)的任務(wù)卸載調(diào)度策略與能耗間的權(quán)衡關(guān)系。薛寧等人[9]提出了一個任務(wù)卸載和異構(gòu)資源調(diào)度的聯(lián)合優(yōu)化模型,聯(lián)合最小化用戶的設(shè)備能耗、任務(wù)執(zhí)行時延和成本等因素,利用深度強(qiáng)化學(xué)習(xí)算法,求解出最優(yōu)任務(wù)卸載算法,使設(shè)備能耗和資源消耗量降低了一個等級。李沁穎等人[10]建立移動邊緣計算車載網(wǎng)絡(luò)系統(tǒng)模型,通過構(gòu)建馬爾可夫優(yōu)化過程,計算所有方案數(shù)據(jù)傳輸?shù)某晒Ω怕什⑦M(jìn)行比較,以獲得任務(wù)分配和卸載的最優(yōu)方案。

在此背景下,針對區(qū)塊鏈的共識過程的算力需求,需要尋求一種有效的方案,以解決IoT設(shè)備計算能力不足的問題[11]。Sengupta等人[12]首先根據(jù)工業(yè)物聯(lián)網(wǎng)中最相關(guān)的安全威脅提出對策,接著討論了一種稱為Tangle的物聯(lián)網(wǎng)區(qū)塊鏈設(shè)計,為工業(yè)物聯(lián)網(wǎng)的安全研究領(lǐng)域進(jìn)行分類,并為其分別提供相應(yīng)的解決方案。夏艷東等人[13]提出一種輕量級的認(rèn)證與密鑰交換協(xié)議,采用物理不可克隆函數(shù),并用模糊提取器來保障傳感設(shè)備的安全,同時采用單向散列函數(shù)等加解密技術(shù)建立安全繪畫通道,提高了設(shè)備的安全性,能夠抵抗現(xiàn)有的多種已知攻擊。這些研究為本文的工作提供了寶貴的參考和啟示。

為解決物聯(lián)網(wǎng)場景下使用區(qū)塊鏈技術(shù)進(jìn)行數(shù)據(jù)保護(hù)時,系統(tǒng)面臨的IoT設(shè)備性能不足的問題。本文利用邊緣計算技術(shù),將區(qū)塊鏈的PoW共識過程卸載到邊緣服務(wù)器上執(zhí)行。設(shè)計并實現(xiàn)了一個多目標(biāo)邊緣卸載算法(multi-object edge offloading algorithm,MEOA),用來找到最優(yōu)的卸載策略,并動態(tài)調(diào)整PoW共識難度以平衡邊緣系統(tǒng)的安全性和運行效率。這樣不僅可以減少IoT設(shè)備的計算負(fù)擔(dān)、降低能耗,還可以加快數(shù)據(jù)上鏈的速度、提高系統(tǒng)的運行效率。通過Java語言搭建了一個仿真平臺進(jìn)行對比實驗。實驗結(jié)果表明,與其他卸載策略相比,該策略具有良好的時間性能和能耗表現(xiàn),并且可以有效地提高IoT設(shè)備數(shù)據(jù)上鏈的效率,從而更好地保護(hù)IoT數(shù)據(jù)的安全性和完整性;同時,該策略還可以對不同權(quán)重的卸載任務(wù)作出反饋,以滿足不同應(yīng)用場景的需求。

1 IoT邊緣交互模型

隨著物聯(lián)網(wǎng)的不斷發(fā)展,越來越多的物聯(lián)網(wǎng)進(jìn)入了人們的日常生活,大到工廠汽車,小到家用電器、醫(yī)療設(shè)備,日常生活的方方面面都已經(jīng)和物聯(lián)網(wǎng)緊密相關(guān)[14]。而在實際的生產(chǎn)環(huán)境中,IoT設(shè)備需要進(jìn)行高頻、實時的數(shù)據(jù)交換和處理。由于這些設(shè)備的計算能力和電池壽命都有限,直接在設(shè)備本地處理所有的數(shù)據(jù)并不高效。同時,將所有數(shù)據(jù)傳輸?shù)竭h(yuǎn)程的中央服務(wù)器進(jìn)行處理也會帶來顯著的延遲,這在實時性要求高的應(yīng)用場景中是不可接受的[15]。而邊緣技術(shù)的出現(xiàn),支持將計算任務(wù)卸載到距離終端較近的高性能邊緣服務(wù)器進(jìn)行處理,相比于云端集中處理或者本地處理,可以有效降低處理時間和延遲[16]。

IoT邊緣交互模型如圖1所示,其中IoT設(shè)備可以是任何搭載了傳感器和聯(lián)網(wǎng)功能的設(shè)備,例如工業(yè)生產(chǎn)線上的自動化機(jī)械,或智能家庭中的智能電器。這些設(shè)備會持續(xù)生成大量的數(shù)據(jù),并需要進(jìn)行一些計算密集型的任務(wù)。

邊緣服務(wù)器則位于接近IoT設(shè)備的網(wǎng)絡(luò)邊緣位置,具有強(qiáng)大的計算和存儲能力。它的主要任務(wù)是接收和處理從IoT設(shè)備傳來的數(shù)據(jù)和任務(wù)。處理完成的任務(wù)結(jié)果可以直接反饋給IoT設(shè)備,或者傳輸?shù)皆贫诉M(jìn)行進(jìn)一步的分析和處理。

IoT設(shè)備和邊緣服務(wù)器之間的交互是動態(tài)的[17],需要考慮許多因素,如IoT設(shè)備和服務(wù)器的性能、任務(wù)的緊急程度和數(shù)據(jù)的大小等。為了實現(xiàn)最優(yōu)的交互效果,通常需要一個有效的任務(wù)調(diào)度策略,以確定何時、何地以及如何處理這些任務(wù)。

1.1 區(qū)塊鏈邊緣任務(wù)卸載模型

在部署了區(qū)塊鏈進(jìn)行數(shù)據(jù)保護(hù)的物聯(lián)網(wǎng)場景中,針對區(qū)塊鏈的區(qū)塊生成過程,由于需要進(jìn)行例如PoW的共識算法[18],對IoT設(shè)備的性能提出了很高的要求,于是將這一共識過程視作邊緣任務(wù)進(jìn)行卸載。這一過程可以被抽象成如圖2所示的模型。

在該模型中,首先考慮了多個IoT設(shè)備與多個邊緣服務(wù)器。IoT設(shè)備由于其計算資源有限,不適合執(zhí)行計算密集型任務(wù),如工作量證明(PoW)等區(qū)塊鏈操作。所以,這些設(shè)備需要將區(qū)塊鏈的共識任務(wù)卸載到擁有更強(qiáng)大計算能力的邊緣服務(wù)器上。

IoT設(shè)備可以用集合D來表示,假設(shè)有n個IoT設(shè)備,集合D={d1,d2,…,di,…,dn}。每一個IoT設(shè)備都可以表示為一個三維向量di={Ci,Pi,Gi},其中Ci表示其計算能力,Pi表示其能耗速率,Gi表示其攜帶的數(shù)據(jù)大小。不同種類的IoT設(shè)備擁eb724cf2a5227ef410a08c26ded83acd有不同的以上三項參數(shù)。

邊緣服務(wù)器資源可以用集合S來表示,假設(shè)有m個邊緣服務(wù)器,集合S={s1,s2,…,sj,…,sm}。集合中的每一個邊緣服務(wù)器都可以表示為一個四維向量sj={Cj,Pj,Lj,Bj},其中Cj表示其計算能力,Pj表示其能耗速率,Lj表示其與IoT設(shè)備的物理距離,Bj表示其當(dāng)前傳輸帶寬。

根據(jù)實際應(yīng)用場景,可以抽象地理解為IoT設(shè)備在地理位置上呈現(xiàn)密集型分布,而邊緣服務(wù)器則呈現(xiàn)分散性分布,且區(qū)塊鏈部署于邊緣服務(wù)器的組網(wǎng)之中。而在任務(wù)卸載的過程中,某一邊緣服務(wù)器的傳輸帶寬Bj與其距離IoT設(shè)備的物理距離Lj成反比。bsw(base bandwith)代表系統(tǒng)的基礎(chǔ)帶寬。

具體可以表示為

PoW共識任務(wù),它包含了待處理的任務(wù)列表。每個任務(wù)都從屬于某個特定的IoT設(shè)備,并帶有該設(shè)備產(chǎn)生的數(shù)據(jù)。任務(wù)的內(nèi)容為新區(qū)塊的創(chuàng)建并上鏈,主要流程包括:新區(qū)塊的生成PoW、區(qū)塊上鏈、區(qū)塊驗證。

涉及到PoW共識機(jī)制時,特定哈希計算的原理包括礦工通過尋找滿足預(yù)定條件的哈希值來完成工作量證明[19],具體而言,Pow共識機(jī)制的核心內(nèi)容主要包括[20]:

a)特定哈希計算(一般稱此過程為“挖礦”):在PoW中,礦工需要通過哈希函數(shù)生成一個滿足特定條件的哈希值(一般稱其為“目標(biāo)值”)。這通常涉及到在區(qū)塊頭中添加一個隨機(jī)數(shù)(稱為nonce),并不斷嘗試不同的nonce,直到找到一個哈希值小于或等于“目標(biāo)值”的情況。這個目標(biāo)值是一個預(yù)先設(shè)定的閾值,它決定了挖礦的難度。

b)目標(biāo)值的動態(tài)調(diào)整:為了確保新塊的產(chǎn)生時間接近一個固定的時間間隔,PoW機(jī)制采用了動態(tài)調(diào)整目標(biāo)值的機(jī)制。如果礦工總體算力較大,導(dǎo)致塊生成速度過快,系統(tǒng)會增加目標(biāo)值,提高難度。反之,如果算力減小,系統(tǒng)會降低目標(biāo)值,降低難度。這個調(diào)整通常在每一個調(diào)整周期內(nèi)進(jìn)行,確保整個網(wǎng)絡(luò)能夠適應(yīng)算力的變化。例如,比特幣網(wǎng)絡(luò)每2 016個區(qū)塊就進(jìn)行一次調(diào)整[21],這大致對應(yīng)兩周的時間。

在邊緣環(huán)境中部署區(qū)塊鏈服務(wù)后,邊緣服務(wù)器和IoT設(shè)備將會承擔(dān)起PoW中“礦工”的角色[22]。因此,利用PoW共識機(jī)制的特點,能夠根據(jù)當(dāng)前邊緣服務(wù)器和IoT設(shè)備的實時算力、負(fù)載情況,以及上一個時間段內(nèi)的區(qū)塊生成速度,動態(tài)調(diào)整“目標(biāo)值”,從而調(diào)整挖礦的難度。

針對不同特點的邊緣環(huán)境以及不同的應(yīng)用需求,挖礦的難度可以被調(diào)整到合適的大小,既能滿足應(yīng)用的時延需求,又在邊緣服務(wù)器性能能夠承受的范圍內(nèi)。同時,如果區(qū)塊生成速度過快,系統(tǒng)提高目標(biāo)值以增加難度,反之則降低目標(biāo)值以降低難度。這樣既能避免因挖礦難度過低而損失安全性,又能將終端IoT設(shè)備不可能完成的共識操作很好地卸載到邊緣服務(wù)器上來完成。

因此,可以將區(qū)塊鏈的PoW共識過程抽象為一個卸載任務(wù),本文稱其為“區(qū)塊鏈的共識任務(wù)”(以下簡稱為任務(wù))。

卸載任務(wù)可以用集合V來表示,假設(shè)有l(wèi)個任務(wù),集合V={v1,v2,…,vk,…,vl}為待處理任務(wù)的集合。每個任務(wù)都可以表示為一個六維向量vk={ di,Nk,F(xiàn)k,Dk,Wtk,Wek}。其中:di表示任務(wù)所屬的IoT設(shè)備;Nk表示任務(wù)需要挖掘并上鏈的區(qū)塊數(shù);Fk表示任務(wù)的挖礦難度;Dk表示需要上鏈保護(hù)的數(shù)據(jù)大小,同時也是需要參與共識過程的數(shù)據(jù)大??;Wtk表示任務(wù)時間權(quán)重;Wek表示任務(wù)能耗權(quán)重。

而對于每一個任務(wù)vk,其基準(zhǔn)運算時間Btk的來源是運行仿真實驗的真實計算機(jī)處理該任務(wù)所需要的時間。任務(wù)需要參與共識的數(shù)據(jù)大小Dk取決于產(chǎn)生這個任務(wù)的IoT設(shè)備di的設(shè)備數(shù)據(jù)大小Gi,此關(guān)系可以抽象表示為

Dk=F×Gi(2)

其中:F為常量系數(shù)且F>0。

1.2 時間模型和能耗模型

任務(wù)集合中的每個任務(wù)都可以選擇在IoT設(shè)備本地執(zhí)行,或者是傳輸?shù)侥骋粋€邊緣服務(wù)器上執(zhí)行。為了簡化模型,假設(shè)每個邊緣服務(wù)器同一時刻只能處理一個卸載任務(wù)。

1)在本地執(zhí)行時

當(dāng)任務(wù)vk在本地IoT設(shè)備di執(zhí)行時,只需要考慮任務(wù)的執(zhí)行時間,而上鏈產(chǎn)生的傳輸時間相對于任務(wù)計算時間非常小,因此可忽略不計。

本地任務(wù)完成時間為

本地執(zhí)行能耗為

2)在邊緣服務(wù)器執(zhí)行時

當(dāng)IoT設(shè)備di產(chǎn)生的任務(wù)vk被卸載到邊緣服務(wù)器sj執(zhí)行時,除了計算所消耗的時間,還需要考慮任務(wù)數(shù)據(jù)傳輸?shù)臅r間。而傳輸時間又受到數(shù)據(jù)大小Dk和帶寬Bj的影響。

此時,任務(wù)完成總時間為

而邊緣服務(wù)器sj的傳輸帶寬Bj為式(1),數(shù)據(jù)大小Dk為式(2)。所以總時間為

任務(wù)vk在邊緣服務(wù)器sj執(zhí)行的能耗為

在任務(wù)卸載過程中,一個任務(wù)集合會包含多個任務(wù),每個任務(wù)都有兩種可能的卸載方式:在本地卸載或在某一邊緣服務(wù)器上卸載。所以任務(wù)集合V={v1,v2,…,vl}的總時間消耗T可表示為

總能耗E可以表示為

1.3 區(qū)塊鏈數(shù)據(jù)模型

區(qū)塊鏈被采用以確保數(shù)據(jù)的安全性,每一個區(qū)塊所包含的信息如圖3所示。

圖3中,每一個矩形代表一個區(qū)塊,每個區(qū)塊包含的信息如下:

ID值:表明當(dāng)前區(qū)塊來自于哪一個IoT設(shè)備,將設(shè)備ID置入?yún)^(qū)塊使其能夠?qū)γ總€區(qū)塊進(jìn)行溯源。

privious hash:前一個區(qū)塊的hash值,用來表示當(dāng)前區(qū)塊對前一個區(qū)塊的引用,這使得區(qū)塊與區(qū)塊直接可以相連接形成區(qū)塊鏈。

current hash:表示當(dāng)前區(qū)塊的唯一標(biāo)識。

current hash值的生成過程包含了當(dāng)前區(qū)塊的所有信息,并且是經(jīng)過PoW和驗證的合法數(shù)值。

timestamp:記錄該區(qū)塊的生成時間。

nonce:該區(qū)塊的工作量證明的計數(shù)器,也參與了current hash值的運算。

data:需要保護(hù)的數(shù)據(jù),可以是IoT設(shè)備的運行狀態(tài)、工作日志、傳感器數(shù)據(jù),或是用戶的隱私數(shù)據(jù)等。

data的長度理論上可以是無限的,具體取決于需要上鏈進(jìn)行保護(hù)的具體數(shù)據(jù)內(nèi)容。需要注意的是,該數(shù)據(jù)長度的變化將會影響區(qū)塊共識過程的計算量。

區(qū)塊鏈的生成流程如圖4所示。首先將需要保護(hù)的數(shù)據(jù)準(zhǔn)備好,接著生成一個時間戳用來記錄當(dāng)前的時間,隨后會請求區(qū)塊鏈中上一個區(qū)塊的hash值,判斷是否為空。若為空,則當(dāng)前需要產(chǎn)生創(chuàng)世區(qū)塊,privious hash參數(shù)將不會參與創(chuàng)世區(qū)塊的運算;若非空,則會將前一個區(qū)塊的hash值添加到當(dāng)前區(qū)塊中,同其他數(shù)據(jù)一并打包并開始循環(huán)計算hash值,直到計算出的hash值滿足當(dāng)前PoW要求。接著會進(jìn)行區(qū)塊鏈的完整性驗證,目的是循環(huán)區(qū)塊鏈中的所有區(qū)塊,并比較其privious hash值是否和前一個區(qū)塊的hash值相等。如果驗證不通過,則代表當(dāng)前區(qū)塊鏈已被破壞,反之則代表區(qū)塊鏈仍然有效。驗證通過后會將當(dāng)前區(qū)塊添加到區(qū)塊鏈上。

每一個成功處理的任務(wù)都將導(dǎo)致一個新的區(qū)塊添加到區(qū)塊鏈上。該過程需要的運算量較高,而IoT設(shè)備本身的運算能力有限,因此需要使用邊緣計算技術(shù)對該任務(wù)過程進(jìn)行卸載。

通過區(qū)塊鏈技術(shù),可以實現(xiàn)對IoT設(shè)備數(shù)據(jù)的安全存儲和傳輸,有效地防止數(shù)據(jù)被竄改和泄露,從而保護(hù)數(shù)據(jù)的隱私性和安全性[23]。

2 考慮權(quán)重的邊緣任務(wù)卸載策略

根據(jù)所提出的模型,在邊緣環(huán)境中部署區(qū)塊鏈網(wǎng)絡(luò)后,為了解決區(qū)塊鏈網(wǎng)絡(luò)的PoW共識問題,使用任務(wù)卸載技術(shù)將IoT設(shè)備產(chǎn)生的共識任務(wù)卸載到合適的邊緣服務(wù)器上執(zhí)行,需要設(shè)計一個適用于所提出模型的任務(wù)卸載策略。

對此,本文提出了一種考慮權(quán)重的任務(wù)卸載策略。主要思路為:a)根據(jù)每個任務(wù)不同的時間和能耗權(quán)重,建模卸載任務(wù)的綜合成本;b)針對每個任務(wù)集合,使用多目標(biāo)邊緣卸載算法(MEOA),尋找在滿足區(qū)塊鏈PoW共識過程的安全性要求前提下,該任務(wù)集合的最優(yōu)總成本;c)該最優(yōu)總成本下的卸載方案,即為同時滿足每個任務(wù)的時間能耗權(quán)重下的全局最優(yōu)卸載方案。

具體而言,區(qū)塊鏈的核心思想是去中心化,即不依賴于單一的權(quán)威機(jī)構(gòu)。在PoW共識機(jī)制中,通過礦工的去中心化計算來確保網(wǎng)絡(luò)的安全性。攻擊者要成功竄改區(qū)塊鏈的信息,需要掌握網(wǎng)絡(luò)中超過50%的計算能力,這是一項極為困難和昂貴的任務(wù)[24]。同時,在PoW中,各礦工之間處于競爭性挖礦的關(guān)系,并遵循先到先得原則,完成工作量證明過程的礦工首先獲得權(quán)利添加新區(qū)塊到區(qū)塊鏈。因此控制超過50%的計算能力意味著攻擊者有更高的概率在競爭中勝出[25],從而能夠連續(xù)竄改區(qū)塊鏈的信息。為了維護(hù)共識機(jī)制的安全性和去中心化特性,網(wǎng)絡(luò)設(shè)計者規(guī)定了攻擊者必須掌握超過50%的計算能力才能成功攻擊,這是一種保護(hù)機(jī)制。如果攻擊者只掌握小于50%的計算能力,他們在競爭中很可能被其他礦工打敗[26],導(dǎo)致他們無法連續(xù)竄改區(qū)塊鏈的信息。

在本文所提出的卸載模型中,部署了區(qū)塊鏈網(wǎng)絡(luò)的邊緣服務(wù)器用來扮演“礦工”的角色,在完成PoW共識過程中,不應(yīng)該只有某一個邊緣服務(wù)器參與,而應(yīng)當(dāng)遵循PoW的去中心化和競爭性挖礦原則。同時,為保證共識機(jī)制的安全性,卸載策略應(yīng)當(dāng)保證每個共識任務(wù)卸載過程有超過50%的邊緣服務(wù)器參與競爭挖礦。并在此前提下盡可能地提升任務(wù)卸載效率,降低卸載成本。

2.1 考慮權(quán)重的任務(wù)卸載成本

首先,對于每個具體的卸載任務(wù),由于產(chǎn)生該卸載任務(wù)的IoT設(shè)備的狀態(tài)不同,該任務(wù)對于執(zhí)行時間和能耗要求的偏向也會不同。所以產(chǎn)生的卸載任務(wù)具有各自不同的時間-能耗權(quán)重。假設(shè)任務(wù)vk的時間權(quán)重為Wtk,能耗權(quán)重為Wek。此時,該任務(wù)的綜合成本Ck可以表示為

Ck=Tk×Wtk+Ek×Wek(14)

而任務(wù)集合V={v1,v2,…,vl}的總成本C可以表示為

同時,任務(wù)卸載效率還可以由單位時間內(nèi)系統(tǒng)完成的共PoW共識總次數(shù)N來直觀體現(xiàn)。

該卸載策略旨在尋找在保證區(qū)塊鏈系統(tǒng)安全性的前提下,能夠使該總成本值最小化的最優(yōu)解。

2.2 MEOA設(shè)計

本文通過將區(qū)塊鏈的PoW共識過程抽象成需要卸載的任務(wù),并結(jié)合前文所提出的系統(tǒng)模型進(jìn)行分析,基于模擬退火的原理設(shè)計了一種多目標(biāo)邊緣卸載算法。

相比于其他傳統(tǒng)的卸載算法,對于部署了區(qū)塊鏈網(wǎng)絡(luò)的邊緣環(huán)境特點而言,該卸載算法的適用性和創(chuàng)新性主要體現(xiàn)在以下幾點:

a)算法需要遵循PoW的去中心化和競爭性挖礦原則,共識過程不能只有某一個邊緣服務(wù)器參與,而至少需要有超過邊緣服務(wù)器總數(shù)量50%的節(jié)點參與,彼此競爭,率先計算出滿足目標(biāo)hash值(即完成PoW過程)的節(jié)點將獲得添加新區(qū)塊到區(qū)塊鏈的權(quán)利。

b)動態(tài)調(diào)整共識“目標(biāo)值”,進(jìn)而調(diào)節(jié)共識難度(即挖礦難度)。算法應(yīng)根據(jù)當(dāng)前系統(tǒng)中邊緣服務(wù)器和IoT設(shè)備的硬件參數(shù)、實時算力、負(fù)載情況,以及上一個時間段內(nèi)的平均區(qū)塊生成速度,動態(tài)地、有底線地調(diào)整“目標(biāo)值”以保持共識過程的穩(wěn)定性,使塊產(chǎn)生的速度接近系統(tǒng)設(shè)計的預(yù)期值,同時避免因“目標(biāo)值”難度過低而導(dǎo)致的安全性問題,從而維持區(qū)塊鏈的安全性和可靠性。

c)預(yù)防集中攻擊(centralization attack)。在傳統(tǒng)的邊緣任務(wù)卸載策略中,卸載算法往往專注于尋找任務(wù)卸載目標(biāo)的最優(yōu)解,由于邊緣服務(wù)器的性能與負(fù)載情況在某些場景下相對固定,不會頻繁變更,所以傳統(tǒng)卸載算法的優(yōu)化方式容易使其任務(wù)頻繁地被卸載到少數(shù)個邊緣服務(wù)器上。在邊緣服務(wù)器總數(shù)量較多的情況下,部分邊緣服務(wù)器甚至沒有機(jī)會參與到任務(wù)卸載過程中[27],這顯然違背了區(qū)塊鏈中心化的安全性原則,產(chǎn)生了很大的安全風(fēng)險(攻擊者只需要針對少數(shù)個邊緣服務(wù)器攻擊即可控制整個系統(tǒng),進(jìn)而隨意竊取、竄改用戶的數(shù)據(jù))。而MEOA由于選擇超過總數(shù)量50%的邊緣服務(wù)器參與共識任務(wù)卸載,并且得益于區(qū)塊鏈網(wǎng)絡(luò)的部署,能夠有效地抵抗攻擊,保護(hù)用戶數(shù)據(jù)。攻擊者若想成功竄改區(qū)塊鏈的信息,需要掌握網(wǎng)絡(luò)中超過半數(shù)的礦工節(jié)點,這是一項極為困難和昂貴的任務(wù)。

本文算法的偽代碼如算法1所示,其主要邏輯為:

a)首先,設(shè)置一個初始溫度,和一個初始的挖礦難度,設(shè)置共識難度的變化因子Δ=0,并隨機(jī)生成一個解決方案(第1~6行),選擇超過半數(shù)的邊緣服務(wù)器數(shù)量作為邊緣礦工節(jié)點,參與PoW共識過程,彼此競爭“挖礦”。

b)開始卸載共識任務(wù),進(jìn)行PoW共識過程。直到某一個節(jié)點最先計算出符合“目標(biāo)值”的hash值,標(biāo)志著第一個共識任務(wù)被卸載完成。此時,該邊緣節(jié)點獲得權(quán)限,并將產(chǎn)生的新區(qū)塊添加到區(qū)塊鏈中;同時,系統(tǒng)計算當(dāng)前解決方案的總成本。接著比較本輪卸載耗時t1與共識任務(wù)的期待值t2,若t1>t2,則標(biāo)記挖礦難度的變化因子Δ+1;反之將Δ-1(第7~14行)。

c)進(jìn)入新一輪退火階段,通過隨機(jī)改變一個擔(dān)任礦工節(jié)點的邊緣服務(wù)器來生成一個新的解決方案,重復(fù)上一步驟,同時計算新解決方案的總成本(第15,20行)。隨后計算這兩個解決方案的成本差,如果新解決方案的成本更低,則直接接受它;否則,算法以一定的概率接受這個新的解決方案,同時更新當(dāng)前解決方案為新解決方案,并重置退火計數(shù)器(第21~26行)。這個概率會隨著成本差的增大(新解決方案越來越差)和溫度的降低而減小。這樣在初期階段,即使新的解決方案比當(dāng)前的解決方案差,也有較大的可能性被接受;而當(dāng)溫度逐漸降低,算法則越來越傾向于接受更優(yōu)的解決方案,差的新方案被接受的概率會降低。

d)每一輪共識任務(wù)完成后,判斷當(dāng)前共識難度的變化因子Δ的絕對值是否大于閾值,若成立,則代表系統(tǒng)當(dāng)前挖礦難度需要被調(diào)整,若Δ>0,則降低挖礦難度;相反則提高挖礦難度(第18~20行),這樣使得系統(tǒng)的整體安全性和運行效率能夠保持較好的平衡。

e)在迭代過程中,算法根據(jù)一個冷卻速率來逐漸降低系統(tǒng)的溫度,直到溫度低于一個預(yù)設(shè)的最小溫度或者連續(xù)一段時間沒有接受新的解決方案。這時,可以認(rèn)為系統(tǒng)已經(jīng)找到了全局最優(yōu)解,退火過程結(jié)束(第27,28行)。最后,得到的當(dāng)前解決方案就是算法找到的最優(yōu)解決方案,算法返回該方案下的邊緣服務(wù)器集合以及共識“目標(biāo)值”難度(第30行)。

算法1 MEOA

在本文設(shè)計的系統(tǒng)中,每個任務(wù)的處理時間和能耗都是需要考慮的成本因素??梢酝ㄟ^設(shè)置每個任務(wù)的時間權(quán)重和能耗權(quán)重,來調(diào)整算法對這兩個因素的重視程度。這樣就可以根據(jù)實際需求,找到一個在滿足任務(wù)處理時間和能耗權(quán)重需求下的最優(yōu)任務(wù)卸載策略。同時,由于算法可以在迭代過程中動態(tài)調(diào)整挖礦難度,使得系統(tǒng)的整體安全性和運行效率保持良好的平衡。

3 實驗分析

3.1 環(huán)境及參數(shù)設(shè)置

為了驗證本文方法的有效性,采用Java語言設(shè)計并編寫了仿真實驗。實驗是在一臺具有16 GB內(nèi)存和2.3 GHz處理器的計算機(jī)上進(jìn)行的。運行的操作系統(tǒng)為Windows 10,具體環(huán)境如表1所示。

在真實的物聯(lián)網(wǎng)應(yīng)用環(huán)境中,物聯(lián)網(wǎng)設(shè)備的種類非常豐富,不同領(lǐng)域的物聯(lián)網(wǎng)設(shè)備通常具有很大差別。例如,用于智能家居的物聯(lián)網(wǎng)電器,往往具有較低的功耗,但收集和處理的數(shù)據(jù)涉及用戶的個人隱私;而IoT工廠中的物聯(lián)網(wǎng)設(shè)備通常具有相對較高的功耗,但包含的數(shù)據(jù)更多是用于生產(chǎn)過程,此時數(shù)據(jù)的不可修改性和可朔源性就變得十分重要。

因此,仿真實驗中具體參數(shù)設(shè)置如表2所示,實驗創(chuàng)建了3個IoT終端設(shè)備,每個設(shè)備都有其不同的計算能力和功耗,并且具有不同的數(shù)據(jù)大小。代表不同種類的IoT設(shè)備,以模擬真實物聯(lián)網(wǎng)環(huán)境的多樣性。

設(shè)置了20個邊緣服務(wù)器,各自具有不同的計算能力、功耗、與IoT設(shè)備的物理距離。實驗中的所有IoT設(shè)備和服務(wù)器都基于同一種傳輸帶寬。

此外,每個IoT設(shè)備均生成系列共識任務(wù),這些任務(wù)具有確定的數(shù)據(jù)大小、需產(chǎn)生的區(qū)塊數(shù)量和“時間-能耗”權(quán)重(用于揭示任務(wù)執(zhí)行時間與能耗的權(quán)衡)。且每個任務(wù)需要上鏈的數(shù)據(jù)大小Dk與產(chǎn)生這個任務(wù)的IoT設(shè)備的數(shù)據(jù)大小Gi的比例系數(shù)F=10。實驗的任務(wù)集合由來自于三個不同IoT設(shè)備的任務(wù)組合而成。

MEOA參數(shù)設(shè)置如下:初始的挖礦難度CONSENSUS_DIFFICULTY=6;初始溫度INITIAL_TEMPERATURE=100;最低溫度MIN_TEMPERATURE=0.001;冷卻速率COOLING_RATE=0.01;提前結(jié)束條件計數(shù)器Flag=15。

在整體的系統(tǒng)模型中,IoT設(shè)備不斷產(chǎn)生區(qū)塊鏈的共識任務(wù)并加入到集合中。這些任務(wù)依據(jù)選擇的卸載策略被分配到邊緣服務(wù)器或在本地進(jìn)行處理,此過程將一直持續(xù)直至所有任務(wù)完成。該模型允許對不同參數(shù)條件下(如上鏈區(qū)塊個數(shù)、IoT設(shè)備與邊緣服務(wù)器性能、IoT設(shè)備數(shù)據(jù)大小、初始挖礦難度以及選擇的卸載算法)的卸載模型性能與卸載過程安全性進(jìn)行研究分析。

實驗過程中評價指標(biāo)包括共識任務(wù)消耗時間、系統(tǒng)能耗、單位時間內(nèi)的上鏈區(qū)塊數(shù)量、卸載過程的安全性水平等。對比算法包括:本地卸載(所有任務(wù)均在IoT設(shè)備本地執(zhí)行)、隨機(jī)卸載(所有任務(wù)隨機(jī)卸載到某一邊緣服務(wù)器執(zhí)行)、SAPSO算法(一種過基于模擬退火的粒子群優(yōu)化卸載算法,詳見文獻(xiàn)[28])。通過調(diào)整任務(wù)集合中需要上鏈的區(qū)塊數(shù)量、IoT設(shè)備數(shù)據(jù)的大小、初始挖礦難度、任務(wù)對時間和能耗的權(quán)重,來評測本文提出的MEOA的性能。

3.2 結(jié)果分析

不同情況下,取20輪結(jié)果的平均值作為當(dāng)前條件下的最終結(jié)果,分別比較每種算法在不同參數(shù)變化條件下的性能表現(xiàn)。

a)當(dāng)初始挖礦難度適中、上鏈總區(qū)塊數(shù)不變,且任務(wù)對時間和能耗的權(quán)重為0.5∶0.5(代表綜合型任務(wù)),此時改變IoT設(shè)備攜帶的數(shù)據(jù)大小,算法的性能表現(xiàn)如圖5、6所示。

在真實的物聯(lián)網(wǎng)設(shè)備應(yīng)用場景下,不同種類的IoT設(shè)備由于其功能和使用場景的差異,所攜帶的數(shù)據(jù)大小也不同[29]。對于區(qū)塊鏈的PoW共識過程而言,該取值則會直接影響到共識任務(wù)所需的計算量。

如圖5、6所示,隨著IoT設(shè)備攜帶的數(shù)據(jù)大小的增加,每個區(qū)塊所包含的需要上鏈保護(hù)的數(shù)據(jù)大小也會相應(yīng)增加,進(jìn)而直接導(dǎo)致PoW共識過程的計算量增加。

時間方面,本地卸載和隨機(jī)卸載的時間消耗都隨著該數(shù)值的增加而迅速增長;SAPSO算法與MEOA的卸載時間消耗則增長緩慢,并且MEOA具有相對更佳的時間性能表現(xiàn)。

能耗方面,本地卸載和隨機(jī)卸載的能耗也呈現(xiàn)快速增長;SAPSO算法與MEOA的能耗增長則較為緩慢。并且可以看出,雖然MEOA的能耗相對較高,但這是由于MEOA嚴(yán)格遵守了區(qū)塊鏈的共識原則,每輪都會選擇超過50%的邊緣服務(wù)器參與競爭挖礦,直到某一個邊緣服務(wù)器在競爭中勝出。這一行為雖然會產(chǎn)生額外的能耗,但很好地保證了區(qū)塊鏈去中心化的安全性,并且MEOA的能耗水平仍保持在優(yōu)秀的范圍內(nèi)。

b)當(dāng)上鏈總區(qū)塊數(shù)、IoT設(shè)備數(shù)據(jù)大小不變,且任務(wù)對時間和能耗的權(quán)重仍為0.5∶0.5時(代表綜合型任務(wù)),改變初始挖礦難度的大小,算法的性能表現(xiàn)如圖7、8所示。

可見在初始挖礦難度過低或過高的情況下,由于對比的三種算法沒有設(shè)計挖礦難度的動態(tài)調(diào)整機(jī)制,會始終以一個固定的挖礦難度運行直至結(jié)束,所以其能耗和時間都會隨著初始挖礦難度的增加而增加,并且當(dāng)采用本地卸載時,隨著挖礦難度的增加,IoT設(shè)備顯然已無法承受PoW共識過程需要的運算量。

而MEOA由于能夠在卸載過程中動態(tài)調(diào)整挖礦難度,當(dāng)初始挖礦難度被設(shè)置得過高或過低時,算法會在每輪卸載后不斷調(diào)整挖礦難度,以此來保證PoW共識過程的安全性,所以即使初始挖礦難度不斷變化,MEOA的時間和能耗值始終處于相對穩(wěn)定的水平,并且相比于其他算法仍具有優(yōu)秀的性能表現(xiàn);而相比于SAPSO算法,當(dāng)挖礦難度過大時,能夠動態(tài)降低挖礦難度,以獲得更佳的時間和能耗表現(xiàn)。

值得注意的是,由于區(qū)塊鏈的特性,當(dāng)挖礦難度過低時區(qū)塊鏈并沒有實際應(yīng)用意義,所以此時想要竄改整條區(qū)塊鏈會變得十分容易,從而失去了區(qū)塊鏈的安全性[30]。因此在實際應(yīng)用中,區(qū)塊鏈的挖礦難度應(yīng)當(dāng)設(shè)置最低閾值,避免因挖礦難度過低而使得共識過程變得不可信。在一般情況下,出于安全性的考慮,初始的挖礦難度設(shè)置應(yīng)當(dāng)相對偏高,以確保區(qū)塊鏈的共識任務(wù)始終屬于計算密集型任務(wù)。

因此,使用MEOA進(jìn)行卸載決策,能夠保持系統(tǒng)安全性與運行效率間的平衡。而隨機(jī)卸載算法與SAPSO算法雖然在某些挖礦難度下具有更低的時間和能耗表現(xiàn),但隨著挖礦難度不斷增加,由于缺少難度值的動態(tài)調(diào)整機(jī)制,共識運算量會不斷上升,直至邊緣服務(wù)器難以承受,無法滿足邊緣環(huán)境下任務(wù)的時延需求。

c)當(dāng)IoT設(shè)備數(shù)據(jù)大小、初始挖礦難度適中,且任務(wù)的時間和能耗權(quán)重仍為0.5∶0.5(代表綜合型任務(wù))時,改變單個任務(wù)的上鏈區(qū)塊總數(shù),對比在高負(fù)載情況下不同算法的性能指標(biāo)。算法的性能表現(xiàn)如圖9、10所示。

如圖9所示,即使任務(wù)的上鏈區(qū)塊數(shù)量不斷增加,MEOA始終具有優(yōu)秀的時間性能表現(xiàn),并且當(dāng)任務(wù)的上鏈區(qū)塊總數(shù)增加時,任務(wù)的總計算量不斷增加,MEOA的時間增長也最為緩慢。

如圖10所示,當(dāng)任務(wù)的上鏈區(qū)塊總數(shù)不斷增加時,MEOA的能耗增長也非常緩慢,并且相比于本地卸載和隨機(jī)卸載算法,具有更低的能耗表現(xiàn)。而由于MEOA有更多數(shù)量的邊緣服務(wù)器參與共識競爭,所以相比于未考慮共識競爭的SAPSO算法具有相對更高的能耗,但總體來看仍處于十分優(yōu)秀的水平。

接著,保持適中的挖礦難度,在其他各項參數(shù)均不變的情況下,統(tǒng)計并對比四種卸載算法在單位時間內(nèi)產(chǎn)生區(qū)塊的總數(shù)量,這反映了各算法完成共識任務(wù)卸載的效率,并能夠間接反映實際應(yīng)用場景中,將IoT設(shè)備數(shù)據(jù)上鏈存儲的效率指標(biāo)。

如圖11所示,可以看出MEOA在單位時間內(nèi)產(chǎn)生的區(qū)塊數(shù)量更多。因此在實際應(yīng)用場景中,該算法能夠以更高的效率將IoT設(shè)備的數(shù)據(jù)上鏈存儲。

接著,假設(shè)在系統(tǒng)運行過程中,有攻擊者企圖控制系統(tǒng)中的設(shè)備以竊取或竄改用戶數(shù)據(jù),本文對四種卸載算法的安全性進(jìn)行分析,如表3所示。

本地卸載的情況下,系統(tǒng)的數(shù)據(jù)安全性取決于IoT設(shè)備本身,攻擊者控制了IoT設(shè)備后便可直接獲取傳感器數(shù)據(jù)等各項數(shù)據(jù)。

隨機(jī)卸載的情況下,由于參與共識和挖礦競爭中勝出的邊緣服務(wù)器是完全隨機(jī)、不可預(yù)測的,從而具有一定程度的去中心化安全性;但隨機(jī)卸載的系統(tǒng)運行效率一般,實際應(yīng)用中難以滿足共識任務(wù)的時間需求,總體來看并不優(yōu)秀。

SAPSO卸載算法雖能夠以較快的效率和更低的總能耗完成共識任務(wù),產(chǎn)生新的區(qū)塊上鏈。但隨著算法迭代的次數(shù)增加,系統(tǒng)會頻繁地選擇個別算力較高的邊緣服務(wù)器來完成共識,這顯然在一定程度上違背了區(qū)塊鏈的共識原則,極易產(chǎn)生中心化風(fēng)險。并且攻擊者只需針對個別數(shù)量的邊緣服務(wù)器展開攻擊,獲得其控制權(quán),就能輕易地完成共識進(jìn)而竄改整條區(qū)塊鏈的信息,使得邊緣區(qū)塊鏈網(wǎng)絡(luò)喪失其安全性,因此用戶的數(shù)據(jù)無法得到良好的保護(hù)。

而MEOA由于其每一輪都會選擇超過總數(shù)量50%的邊緣服務(wù)器參與共識競爭,并且會根據(jù)共識任務(wù)的卸載情況動態(tài)地調(diào)整挖礦難度,以保持系統(tǒng)運行效率與安全性的平衡。雖然由于參與共識競爭的邊緣服務(wù)器數(shù)量較多從而導(dǎo)致卸載總能耗的上升,但很好地保證了區(qū)塊鏈的去中心化安全性,攻擊者若想成功竄改或破壞整條區(qū)塊鏈,需要至少控制超過50%的邊緣服務(wù)器數(shù)量才有可能在共識競爭中勝出,而實現(xiàn)這種程度的攻擊是極為困難且昂貴的。

綜合來看,MEOA算法能夠在確保區(qū)塊鏈系統(tǒng)的去中心化安全性和用戶數(shù)據(jù)安全性的前提下,仍具有優(yōu)秀的運行效率和成本消耗。因此,MEOA更適用于本文提出的區(qū)塊鏈邊緣任務(wù)卸載模型。

最后,保持其他參數(shù)不變,僅調(diào)整任務(wù)的時間能耗權(quán)重分別為:a)0.5∶0.5(綜合型任務(wù));b)0.1∶0.9(能耗關(guān)鍵型任務(wù):代表任務(wù)要求更低的執(zhí)行能耗);c)0.9∶0.1(時間關(guān)鍵型任務(wù):代表任務(wù)要求更短的執(zhí)行時間)。同時改變?nèi)蝿?wù)的上鏈區(qū)塊總數(shù),將三種不同權(quán)重類型的任務(wù)在使用MEOA下的卸載結(jié)果進(jìn)行對比,如圖12所示。

可見當(dāng)任務(wù)的能耗權(quán)重高于時間權(quán)重時,該卸載策略會犧牲一些時間性能從而取得更好的能耗表現(xiàn);而當(dāng)任務(wù)的時間權(quán)重高于能耗權(quán)重時,則會犧牲一些能耗從而取得更好的時間性能表現(xiàn)。因此,認(rèn)為在該卸載策略下,系統(tǒng)能夠?qū)Σ煌瑱?quán)重的卸載任務(wù)作出反饋,尋找該權(quán)重下最優(yōu)的卸載策略,并且對比其他算法仍然具有優(yōu)秀的性能表現(xiàn)。

4 結(jié)束語

隨著區(qū)塊鏈技術(shù)的發(fā)展,將其應(yīng)用于IoT設(shè)備的數(shù)據(jù)保護(hù)已經(jīng)成為一種理想的選擇。然而,區(qū)塊鏈的工作原理需要通過PoW的共識機(jī)制來驗證和添加新的數(shù)據(jù)塊,這個過程需要消耗大量的計算資源和時間。為了解決這個問題,本文提出了一種面向數(shù)據(jù)保護(hù)的區(qū)塊鏈物聯(lián)網(wǎng)邊緣卸載策略。利用邊緣計算技術(shù),將PoW共識過程卸載到邊緣服務(wù)器上執(zhí)行,以此來解決IoT設(shè)備性能不足的問題。接著,設(shè)計并實現(xiàn)了一個多目標(biāo)邊緣卸載算法(MEOA),該算法可以在保證數(shù)據(jù)的安全性和完整性的同時,動態(tài)地調(diào)整PoW的共識難度,平衡系統(tǒng)安全性與上鏈效率;并通過找到系統(tǒng)最優(yōu)的卸載策略,以實現(xiàn)更好的綜合性能表現(xiàn)。使用Java語言搭建了一個仿真實驗平臺,通過深入的理論分析和大量的仿真實驗,證明了本文算法不僅能夠保證卸載過程的安全性,還具有優(yōu)秀的性能表現(xiàn),并且能夠滿足不同IoT設(shè)備對任務(wù)執(zhí)行時間和能耗的不同權(quán)重要求。本文的研究為區(qū)塊鏈技術(shù)在物聯(lián)網(wǎng)數(shù)據(jù)保護(hù)領(lǐng)域的應(yīng)用提供了參考,為未來的研究提供了新的視角和思路。

參考文獻(xiàn):

[1]Malik P K, Sharma R, Singh R, et al. Industrial Internet of Things and its applications in Industry 4.0: state of the art[J]. Computer Communications, 2021,166: 125-139.

[2]Atzori L, Iera A, Morabito G. The Internet of Things: a survey[J]. Computer Networks, 2010, 54(15): 2787-2805.

[3]Mao Yuyi, You Changheng, Zhang Jun, et al. A survey on mobile edge computing: the communication perspective[J]. IEEE Communications Surveys & Tutorials, 2017, 19(4): 2322-2358.

[4]Zhao Zhiheng, Lin Peng, Shen Leidi, et al. IoT edge computing-enabled collaborative tracking system for manufacturing resources in industrial park[J]. Advanced Engineering Informatics, 2020, 43: 101044.

[5]Liu Shuai, Guo Chunli, Al-Turjman F, et al. Reliability of response region: a novel mechanism in visual tracking by edge computing for IIoT environments[J]. Mechanical Systems and Signal Proces-sing, 2020, 138: 106537.

[6]Lin Li, Liao Xiaofei, Jin Hai, et al. Computation offloading toward edge computing[J]. Proceedings of the IEEE, 2019, 107(8): 1584-1607.

[7]Cheng Nan, Lyu Feng, Quan Wei, et al. Space/aerial-assisted computing offloading for IoT applications: a learning-based approach[J]. IEEE Journal on Selected Areas in Communications, 2019, 37(5): 1117-1129.

[8]凌雪延, 王鴻, 宋榮方. 多核服務(wù)器邊緣計算系統(tǒng)中任務(wù)卸載調(diào)度和功率分配的研究[J].南京郵電大學(xué)學(xué)報: 自然科學(xué)版, 2020, 40(2): 81-88. (Ling Xueyan, Wang Hong, Song Rongfang. Joint task offloading scheduling and transmit power allocation for mobile edge computing systems with multi-core server[J]. Journal of Nanjing University of Posts and Telecommunications: Natural Science Edition, 2020,40(2): 81-88.

[9]薛寧, 霍如, 曾詩欽, 等. 基于DRL的MEC任務(wù)卸載與資源調(diào)度算法[J]. 北京郵電大學(xué)學(xué)報, 2019,42(6): 64-69,104. (Xue Ning, Huo Ru, Zeng Shiqin, et al. Tasks offloading and resource scheduling algorithm based on deep reinforcement learning in MEC[J]. Journal of Beijing University of Posts and Telecommunications, 2019,42(6): 64-69,104.)

[10]李沁穎,曹青松. 基于馬爾科夫優(yōu)化的移動邊緣計算車載網(wǎng)絡(luò)任務(wù)卸載[J]. 濟(jì)南大學(xué)學(xué)報:自然科學(xué)版, 2021, 35(6): 545540-545551. (Li Qinyin, Cao Qingsong. Task offloading of mobile edge computing vehicle network based on Markov optimization[J]. Journal of University of Jinan: Science and Technology, 2021, 35(6): 545540-545551.)

[11]Khan M A, Salah K. IoT security: review, blockchain solutions, and open challenges[J]. Future Generation Computer Systems, 2018, 82: 395-411.

[12]Sengupta J, Ruj S, Bit S D. A comprehensive survey on attacks, security issues and blockchain solutions for IoT and IIoT[J]. Journal of Network and Computer Applications, 2020, 149: 102481.

[13]夏艷東,戚榮鑫,季賽. 工業(yè)物聯(lián)網(wǎng)中基于PUFs輕量級的密鑰交換協(xié)議研究[J]. 計算機(jī)應(yīng)用與軟件, 2022,39(3):316-321. (Xia Yandong, Qi Rongxin, Ji Sai. PUFs-baesd lightweight key exchange protocol in IoT[J]. Computer Applications and Software, 2022,39(3):316-321.)

[14]Huang Junqin, Kong Linghe, Chen Guihai, et al. B-IoT: blockchain driven Internet of Things with credit-based consensus mechanism[C]//Proc of the 39th IEEE International Conference on Distributed Computing Systems. Piscataway,NJ: IEEE Press, 2019: 1348-1357.

[15]Saranyah V, Suganthi N. Blockchain application in preserving authenticity and enabling transparency in the approval of loans for the clients in banking system[C]//Proc of the 2nd International Conference on Advancements in Electrical, Electronics, Communication, Computing and Automation. Piscataway,NJ: IEEE Press, 2023: 1-5.

[16]Zhang Fan, Cecchetti E, Croman K, et al. Town crier: an authen-ticated data feed for smart contracts[C]//Proc of the 23rd ACM Conference on Computer and Communications Security. New York: ACM Press, 2016: 270-282.

[17]Al-Sulami Z A, Ramli R. Blockchain adoption in healthcare: mo-dels, challenges, and future work[J]. Journal of Basrah Researches: Sciences, 2023,49(2): 79-93.

[18]Chhina S, Chadhar M, Firmin S, et al. The role of actors in blockchain adoption decisions-an innovation translation perspective[J]. Australasian Journal of Information Systems, 2023, 27:4489.

[19]Zheng Zibin, Xie Shaoan, Dai Hongning, et al. An overview of blockchain technology: architecture, consensus, and future trends[C]//Proc of IEEE International Conference on Big Data. Pisca-taway,NJ: IEEE Press, 2017: 557-564.

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

[21]田雨萌,劉志波,張凱,等. 云邊資源協(xié)同中的任務(wù)卸載技術(shù)綜述[J].計算機(jī)科學(xué)與探索,2023,17(10):2325-2342. (Tian Yumeng,Liu Zhibo,Zhang Kai,et al. Survey of task offloading technology in cloud-edge resource collaboration[J]. Journal of Frontiers of Computer Science and Technology,2023,17(10):2325-2342.)

[22]Tan Runti, Zhang Longxin, Ai Minghui, et al. Survey on multiple methods for task offloading in mobile cloud-edge environment[J]. Computer Science and Technology, 2023,2(3): 105.

[23]Wang Dayong, Bakar K B A, Isyaku B. A Survey on IoT task offloa-ding decisions in multi-access edge computing: a decision content perspective[J]. Qubahan Academic Journal, 2023, 3(4): 422-436.

[24]Rafea S A, Jasim A D. AI workload allocation methods for edge-cloud computing: a review[J]. Al-Iraqia Journal for Scientific Enginee-ring Research, 2023,2(4): 115-132.

[25]Liang Junyi, Qi Xuehao, Yang Jinmei, et al. A comprehensive survey on computation offloading using reinforcement learning[C]//Proc of International Conference on Algorithms, High Performance Computing, and Artificial Intelligence. 2023: 405-413.

[26]Tomatsu Y, Han Wenlin. Bitcoin and renewable energy mining: a survey[J]. Blockchains, 2023, 1(2): 90-110.

[27]Imane L, Noureddine M, Driss S, et al. Towards blockchain-integrated enterprise resource planning: a pre-implementation guide[J]. Compu-ters, 2023,13(1): 11.

[28]李立, 王司令, 周洋, 等. 基于邊緣計算的無人機(jī)協(xié)同任務(wù)卸載策略研究[J]. 計算機(jī)與數(shù)字工程, 2023,51(6): 1270-1275. (Li Li, Wang Siling, Zhou Yang, et al. Research on cooperative task offloading strategy of UAV based on edge computing[J]. Computer and Digital Engineering, 2023,51(6):1270-1275.)

[29]Shelke P, Mirajkar R. Role of blockchain technology in Industry 4.0[M]//Industry 4.0 Convergence with AI, IoT, Big Data and Cloud Computing: Fundamentals, Challenges and Applications. 2023: 22-51.

[30]Taparia A, Banu P K N. A survey of blockchain: concepts, applications and challenges[J]. International Journal of Computing Scie-nce and Mathematics, 2023,17(2): 152-165.