李 萌, 裴 攀, 孫恩昌, 楊睿哲, 司鵬搏, 張延華
(1.北京工業(yè)大學(xué)信息學(xué)部, 北京 100124; 2.先進(jìn)信息網(wǎng)絡(luò)北京實(shí)驗(yàn)室, 北京 100124)
作為當(dāng)前最具前景的技術(shù)之一,物聯(lián)網(wǎng)(internet of things, IoT)是在互聯(lián)網(wǎng)基礎(chǔ)上延伸和擴(kuò)展的網(wǎng)絡(luò),將各種信息傳感設(shè)備與互聯(lián)網(wǎng)結(jié)合起來而形成的一個巨大網(wǎng)絡(luò),實(shí)現(xiàn)在任何時間、任何地點(diǎn),人、機(jī)、物的互聯(lián)互通[1]. 然而,隨著通信技術(shù)的迅速發(fā)展, IoT場景下的數(shù)據(jù)和計(jì)算任務(wù)量的激增導(dǎo)致諸多問題亟待解決. 1)大數(shù)據(jù)分析:大量的IoT終端設(shè)備產(chǎn)生豐富的數(shù)據(jù),急需實(shí)時做出有效分析和關(guān)鍵數(shù)據(jù)提??; 2)安全性:在大量的IoT用戶產(chǎn)生的數(shù)據(jù)中,可能會有惡意節(jié)點(diǎn)產(chǎn)生攻擊或錯誤的信息,不加以區(qū)分地進(jìn)行數(shù)據(jù)交互,極可能造成嚴(yán)重的損失; 3)中心化:傳統(tǒng)的云端網(wǎng)絡(luò)架構(gòu)與數(shù)據(jù)存儲過于集中,中心節(jié)點(diǎn)極易遭受惡意軟件或黑客的攻擊; 4)計(jì)算能力:每個節(jié)點(diǎn)的計(jì)算能力有所差異,從而導(dǎo)致數(shù)據(jù)計(jì)算返回過程產(chǎn)生時延和誤差;5)能量消耗:能量的不必要損耗,造成系統(tǒng)能效性較低,對資源造成浪費(fèi)的同時,不利于技術(shù)落地等問題. 然而,人工智能(artificial intelligence, AI)技術(shù)和區(qū)塊鏈技術(shù)的興起為解決這些問題帶來了有效的解決方案.
AI是人工制造的智能,所謂智能,指的是機(jī)器具有感知、學(xué)習(xí)、推理和自動解決復(fù)雜問題的能力[2]. 目前,業(yè)界已經(jīng)提出了各種類型的AI算法,在面對大數(shù)據(jù)分析的問題時,AI算法,如:深度學(xué)習(xí)(deep learning, DL),可為大量的數(shù)據(jù)提供分類識別的分析,以鑒別傳輸數(shù)據(jù)的完整性和安全性[3];強(qiáng)化學(xué)習(xí)(reinforcement learning, RL),可識別不熟悉的數(shù)據(jù)模型并根據(jù)不同條件對它們進(jìn)行分類[4]. 結(jié)合這些AI算法的特點(diǎn),通過智能的鑒別傳輸?shù)臄?shù)據(jù),可以為數(shù)據(jù)安全性問題提供較有效的解決方案. 深度強(qiáng)化學(xué)習(xí)(deep reinforcement learning, DRL),可在動態(tài)的環(huán)境中通過學(xué)習(xí)訓(xùn)練為系統(tǒng)找到最優(yōu)的調(diào)度策略. 利用該算法的特點(diǎn),可以為IoT場景下有限的無線資源使用調(diào)度進(jìn)行優(yōu)化. 同時,IoT場景中各節(jié)點(diǎn)計(jì)算能力差異問題以及能量消耗問題也即可以借助部署移動邊緣計(jì)算(mobile edge computing, MEC)服務(wù)器,通過深度強(qiáng)化學(xué)習(xí)算法進(jìn)行數(shù)據(jù)計(jì)算執(zhí)行的策略優(yōu)化. 然而,由于AI算法所需的數(shù)據(jù)存儲、訓(xùn)練過于集中心化,算法在執(zhí)行過程中通常需要第三方的參與和管理,從而出現(xiàn)安全性不佳、缺乏激勵機(jī)制等問題,往往導(dǎo)致數(shù)據(jù)得不到足夠多的用戶信任和支持,繼而導(dǎo)致模型訓(xùn)練的精度受限等問題.
另一項(xiàng)前沿技術(shù),區(qū)塊鏈技術(shù)也逐步應(yīng)用于IoT場景. 區(qū)塊鏈技術(shù)是一種分散的、分布式的和公共的數(shù)字分類賬,用于在各個節(jié)點(diǎn)中保存各種事物[5]. 它最初起源于比特幣,現(xiàn)在已經(jīng)在許多不同的領(lǐng)域應(yīng)用并凸顯出它的潛力. 在IoT場景中,區(qū)塊鏈技術(shù)去中心化、公開透明、可信任和不可篡改性等特點(diǎn),恰恰可以為上述安全性、隱私性和存儲中心化的問題提供有效的解決方案. 具體實(shí)施方案主要是通過將IoT場景中有關(guān)隱私的數(shù)據(jù)以分布形式安全可靠地存儲在區(qū)塊鏈當(dāng)中,為整個系統(tǒng)提供了充分的安全保障[1]. 然而,引入?yún)^(qū)塊鏈技術(shù)的同時不可避免地需要考慮其帶來的一些潛在問題,例如,區(qū)塊鏈系統(tǒng)中的可擴(kuò)展性,挖礦過程中帶來的能量過度消耗、區(qū)塊鏈網(wǎng)絡(luò)結(jié)構(gòu)中的智能合約,以及共識機(jī)制的實(shí)現(xiàn)可能帶來的安全漏洞等問題.
通過上述分析介紹,AI技術(shù)與區(qū)塊鏈技術(shù)的結(jié)合存在互補(bǔ)的潛力. 從區(qū)塊鏈的角度來講,其可擴(kuò)展性和系統(tǒng)能耗問題也可通過深度強(qiáng)化學(xué)習(xí)算法進(jìn)行優(yōu)化,而其結(jié)構(gòu)上智能合約和共識機(jī)制的實(shí)現(xiàn)帶來的安全漏洞可以通過AI算法識別與檢測;從AI技術(shù)的角度來看,區(qū)塊鏈作為可信任的平臺,可以為AI技術(shù)提供必需收集、存儲和利用的高度敏感信息創(chuàng)建安全、不可篡改、分布式的系統(tǒng). 在這個安全的系統(tǒng)里,不需要第三方的參與和管理,用戶之間互相信任并共享數(shù)據(jù),基于龐大且可靠的數(shù)據(jù)集,智能體做決策的精度與之相應(yīng)提高. AI技術(shù)和區(qū)塊鏈技術(shù)的結(jié)合不僅僅是為了相互促進(jìn)彼此,更多的是在相互促進(jìn)的過程中為IoT場景中各類應(yīng)用起推動和優(yōu)化的作用. 因此,將2項(xiàng)技術(shù)結(jié)合的研究是具有重要性和前瞻性.
綜上所述,本文深入調(diào)研了AI技術(shù)和區(qū)塊鏈技術(shù)融合并賦能IoT場景的可行性. 首先,介紹了借助AI技術(shù)優(yōu)化可擴(kuò)展性、系統(tǒng)能耗和區(qū)塊鏈網(wǎng)絡(luò)安全性等方面的研究. 然后,介紹了借助區(qū)塊鏈技術(shù)的去中心化存儲、分布式、不可篡改性和可信賴等特點(diǎn),用于提高AI算法性能和決策的研究. 此外,對未來相關(guān)領(lǐng)域的研究方向和挑戰(zhàn)進(jìn)行了深入而廣泛的探討. 本文的調(diào)研和討論可以系統(tǒng)展示AI技術(shù)和區(qū)塊鏈技術(shù)的融合在本領(lǐng)域的研究現(xiàn)狀,并為后續(xù)研究提供更多的思路和方向.
區(qū)塊鏈網(wǎng)絡(luò)基礎(chǔ)架構(gòu)如圖1所示,主要由物理層、網(wǎng)絡(luò)層、共識層、激勵層、合約層和應(yīng)用層組成. 為了提高區(qū)塊鏈網(wǎng)絡(luò)的有效性和智能性,一些研究已經(jīng)在相關(guān)領(lǐng)域場景中探索將區(qū)塊鏈和AI兩項(xiàng)技術(shù)融合. 本文將分別從可擴(kuò)展性、系統(tǒng)能耗和安全性等方面,詳細(xì)介紹如何運(yùn)用AI 技術(shù)來解決區(qū)塊鏈技術(shù)中存在的缺陷.
圖1 區(qū)塊鏈網(wǎng)絡(luò)基礎(chǔ)架構(gòu)Fig.1 Basic architecture of blockchain network
可擴(kuò)展性是區(qū)塊鏈網(wǎng)絡(luò)的一個重要性能指標(biāo),主要包含吞吐量、存儲和網(wǎng)絡(luò)容量等3個方面的擴(kuò)展. 隨著5G等新一代通信網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,越來越多的IoT設(shè)備部署并使用. IoT網(wǎng)絡(luò)利用區(qū)塊鏈技術(shù)處理大量的數(shù)據(jù),就需要區(qū)塊鏈網(wǎng)絡(luò)具有可信賴和高可擴(kuò)展性,同時能實(shí)現(xiàn)高吞吐量[3]. 因此,在IoT場景下,將區(qū)塊鏈技術(shù)用作不同服務(wù)和應(yīng)用程序的通用平臺,可擴(kuò)展性是一個關(guān)鍵的問題.
基于文獻(xiàn)[5-9]的調(diào)研,提高區(qū)塊鏈架構(gòu)可擴(kuò)展性的方法主要分為鏈上(on-chain)和鏈下(off-chain)2種不同的操作方式[5]. 其鏈上操作方式具體可分為:1) 分片技術(shù)(sharding)[6-7],將區(qū)塊鏈節(jié)點(diǎn)劃分為不同的分片,不同的分片可以同時處理交易事務(wù),采用并行復(fù)用的原理,實(shí)現(xiàn)對區(qū)塊鏈網(wǎng)絡(luò)吞吐量的增強(qiáng);2) 性能參數(shù)微調(diào)技術(shù),通過調(diào)整區(qū)塊鏈相關(guān)參數(shù)[8],如區(qū)塊的大小、相鄰塊的時間間隔等實(shí)現(xiàn)區(qū)塊鏈系統(tǒng)性能的提升. 而鏈下操作方式主要為多鏈(multi-chain)技術(shù)[9],通過將主鏈的瑣碎交易業(yè)務(wù)遷移到其他副鏈,僅僅將少量關(guān)鍵數(shù)據(jù)上傳至目標(biāo)主鏈,其目的就是為了減少主鏈的負(fù)載和冗余,以達(dá)到提升可擴(kuò)展性的要求.
此外,通過改進(jìn)或替換共識算法也是一個非常重要的方法. 例如,有權(quán)益證明(proof of stake, PoS)機(jī)制或者實(shí)用拜占庭容錯(practical Byzantine fault tolerance, PBFT)共識算法來替換傳統(tǒng)的工作量證明(proof of work, PoW)共識算法,通過替換可以大大地減少計(jì)算開銷,間接地提高區(qū)塊鏈系統(tǒng)在單位時間內(nèi)的吞吐量.
雖然已有文獻(xiàn)提出并討論了諸多提升可擴(kuò)展性的方法,但是大多數(shù)需要犧牲其他系統(tǒng)性能,例如,去中心化、安全性和時延. 而在IoT場景中,這些性能通常也不可忽視. 因此,在盡可能不損害其他系統(tǒng)性能的同時,提高可擴(kuò)展性仍然是非常嚴(yán)峻的挑戰(zhàn).
隨著AI的發(fā)展,智能算法可優(yōu)化系統(tǒng)性能的特點(diǎn)可以充分地與區(qū)塊鏈技術(shù)結(jié)合,即運(yùn)用AI算法智能體調(diào)度的優(yōu)勢,提高區(qū)塊鏈應(yīng)用IoT場景可擴(kuò)展性的同時,更好平衡其他系統(tǒng)性能. 在文獻(xiàn)[8,10]中,均提到了用深度強(qiáng)化學(xué)習(xí)算法實(shí)現(xiàn)相應(yīng)的優(yōu)化,并通過智能體動態(tài)選擇最優(yōu)的調(diào)度方案. 前者通過深度強(qiáng)化學(xué)習(xí)算法,智能體動態(tài)地選擇不同的共識算法和區(qū)塊的生產(chǎn)節(jié)點(diǎn),以及調(diào)整區(qū)塊的大小和時間間隔等,尋找最優(yōu)的搭配提升區(qū)塊鏈網(wǎng)絡(luò)的可擴(kuò)展性,同時保證系統(tǒng)的去中心化特性、時延特性和安全性[8]. 而后者,為了獲得較好的吞吐量,利用深度Q網(wǎng)絡(luò)(deepQnetwork, DQN)算法智能體動態(tài)地調(diào)整區(qū)塊大小、時間間隔和分片的數(shù)量,尋找最優(yōu)的相關(guān)參數(shù),同時為系統(tǒng)滿足安全性等問題[10].
綜上所述,在IoT場景的應(yīng)用中可以結(jié)合鏈下與鏈上的方法,并結(jié)合不同的共識算法,通過AI算法做出最優(yōu)決策,從而逐步實(shí)現(xiàn)系統(tǒng)區(qū)塊鏈的可擴(kuò)展性、去中心化、時延和安全性之間進(jìn)行平衡,以達(dá)到更適合于IoT場景的性能.
能耗問題一直是IoT場景下討論的重點(diǎn),區(qū)塊鏈技術(shù)從被提出應(yīng)用到IoT,能耗問題一直備受關(guān)注. 如果能耗問題不能很好地解決,區(qū)塊鏈本身的價(jià)值將會被稀釋,而且其在IoT中的應(yīng)用將會被嚴(yán)重阻礙[11]. 本小節(jié)將從2個方面闡述區(qū)塊鏈技術(shù)在能耗方面的優(yōu)化與改進(jìn),并且著重介紹AI技術(shù)用于優(yōu)化能耗問題的研究內(nèi)容和方法.
單從區(qū)塊鏈本身角度來講,其能量消耗主要發(fā)生在共識機(jī)制用于挖礦的過程中,也即在傳統(tǒng)的共識算法工作量證明機(jī)制中,大多數(shù)能量被區(qū)塊鏈中基于工作量證明機(jī)制的哈希值計(jì)算所消耗. 傳統(tǒng)的解決方法,例如,PoS機(jī)制與PBFT共識算法的提出,就是為了避免在計(jì)算共識過程中消耗大量能量. 此外,為了避免計(jì)算資源和能量資源在此過程中過度消耗,共識算法與AI算法可深度融合來解決此問題.
例如,結(jié)合機(jī)器學(xué)習(xí)算法形成的學(xué)習(xí)證明(proof of learning, PoL)[12]共識協(xié)議,該協(xié)議通過給定任務(wù)的機(jī)器學(xué)習(xí)進(jìn)行模型訓(xùn)練,然后,基于最小損失函數(shù)值進(jìn)行排序,最后,選擇最優(yōu)的模型參數(shù)通過其他挖礦節(jié)點(diǎn)的驗(yàn)證,實(shí)現(xiàn)分布式共識. 此外,在文獻(xiàn)[11]中,主要思想使IoT系統(tǒng)充分回收了促進(jìn)和維護(hù)共識機(jī)制所需的能量,并將其重新投入于AI算法的計(jì)算,從而實(shí)現(xiàn)節(jié)省系統(tǒng)能量開銷. 具體而言,作者提出了結(jié)合深度學(xué)習(xí)算法形成的深度學(xué)習(xí)證明(proof of deep learning, PoDL)共識協(xié)議,其迫使智能體進(jìn)行深度學(xué)習(xí)的模型訓(xùn)練,并提出訓(xùn)練模型作為效驗(yàn)證明,只有產(chǎn)生適當(dāng)?shù)纳疃葘W(xué)習(xí)模型時,才能達(dá)到共識并生成新塊.
另一方面,從整個IoT系統(tǒng)的角度來講,隨著5G的發(fā)展以及移動邊緣計(jì)算技術(shù)的興起,為了緩解在IoT場景中部署區(qū)塊鏈時所導(dǎo)致的功耗問題,在文獻(xiàn)[13-14]中,均提出通過深度強(qiáng)化學(xué)習(xí)算法,動態(tài)調(diào)度對計(jì)算能力與能耗敏感的計(jì)算任務(wù). 例如,將計(jì)算任務(wù)從終端卸載至移動邊緣計(jì)算服務(wù)器或者云服務(wù)器等,并且將區(qū)塊鏈部署至邊緣節(jié)點(diǎn),避免IoT終端節(jié)點(diǎn)耗費(fèi)大量能耗或者計(jì)算資源,以此提升系統(tǒng)的能效性,如圖2所示. 此外,考慮到一個小區(qū)內(nèi),可能在終端節(jié)點(diǎn)附近的邊緣節(jié)點(diǎn)并未有充足的能量來處理這些任務(wù),文獻(xiàn)[15-16]通過跨小區(qū)調(diào)度、尋找相鄰小區(qū)具有能量充足的邊緣節(jié)點(diǎn)或云服務(wù)器來執(zhí)行復(fù)雜的計(jì)算任務(wù).
圖2 IoT任務(wù)調(diào)度系統(tǒng)Fig.2 Task scheduling system for IoT
綜上所述,針對IoT場景中系統(tǒng)能量的不必要損耗,以及引入?yún)^(qū)塊鏈技術(shù)導(dǎo)致系統(tǒng)能效性低的問題,現(xiàn)有的AI技術(shù)能夠在一定程度上給與優(yōu)化和改進(jìn).
盡管區(qū)塊鏈技術(shù)提供了一些可靠的方案來確保物聯(lián)網(wǎng)系統(tǒng)的數(shù)據(jù)相對安全,但是,基于區(qū)塊鏈技術(shù)自身來講,其分散的權(quán)利可能會受到濫用的風(fēng)險(xiǎn),特別是區(qū)塊鏈技術(shù)中的智能合約以及共識機(jī)制容易受到惡意的網(wǎng)絡(luò)攻擊或篡改. 本節(jié)主要從智能合約以及共識機(jī)制的安全性2個方面來論述區(qū)塊鏈在解決安全性問題的最新研究以及重點(diǎn)介紹與AI算法結(jié)合的解決方法.
1.3.1 智能合約
智能合約是區(qū)塊鏈網(wǎng)絡(luò)的重要組成部分,其旨在以數(shù)字方式促進(jìn)、驗(yàn)證或強(qiáng)制談判或履行合同的計(jì)算機(jī)協(xié)議[17],其中智能是指可以自動地驗(yàn)證預(yù)定義條款和條件的執(zhí)行,是一種允許在沒有第三方的情況下進(jìn)行可信交易機(jī)制,消除了第三方系統(tǒng)對信任驗(yàn)證的需求[18],從而在節(jié)省了管理和服務(wù)成本的同時,提高了系統(tǒng)效率并降低了相關(guān)的安全風(fēng)險(xiǎn). 在IoT場景中,多數(shù)應(yīng)用也急需類似技術(shù)加以輔助,以提高數(shù)據(jù)交互的安全性.
然而,智能合約雖然在應(yīng)用中有諸多優(yōu)勢,但仍然存在著不可忽視的問題,例如,軟件實(shí)現(xiàn)的代碼容易被惡意節(jié)點(diǎn)入侵[18],智能合約安全的定義標(biāo)準(zhǔn)的缺乏[19]等,這些問題可能導(dǎo)致安全漏洞和攻擊,在一定程度上危及整個區(qū)塊鏈網(wǎng)絡(luò). 所以,確保智能合約的實(shí)現(xiàn)不存在漏洞,并盡可能保證其免受攻擊是非常重要的. 傳統(tǒng)的解決方法從智能合約開發(fā)者的角度出發(fā),例如,為開發(fā)者提出了一種Web服務(wù)工具,它可以幫助開發(fā)人員在智能合約中發(fā)現(xiàn)一些安全漏洞[20]. 然而,隨著AI技術(shù)的迅速發(fā)展,為解決智能合約的安全性問題提供了一種思路.
目前,已經(jīng)有較多工作借助了AI算法對智能合約的安全性及合法性進(jìn)行了判斷和分析. 例如,在文獻(xiàn)[21]中,通過對大量的智能合約的用戶賬戶和操作代碼中提取相關(guān)特征進(jìn)行學(xué)習(xí),基于機(jī)器學(xué)習(xí)算法XGBoost來檢測合約中是否存在潛在的旁氏騙局,旁氏騙局是一種經(jīng)典的投資詐騙行為,也有基于區(qū)塊鏈的表現(xiàn)形式,本質(zhì)為新投資者的投入資金作為老投資者的回報(bào)[21]. 此外,Alarab等[22]提出并驗(yàn)證了基于圖卷積網(wǎng)絡(luò)的方法在比特幣鏈中檢測洗錢的行為.
然而,在IoT場景中,結(jié)合AI技術(shù),也可使智能合約更加“智能”. 根據(jù)文獻(xiàn)[23-25],將AI算法嵌入到智能合約當(dāng)中,利用AI算法可對不同數(shù)據(jù)分類以及預(yù)測的特性,可以加強(qiáng)智能合約的安全性. 在文獻(xiàn)[23-24]中,僅僅是在其未來挑戰(zhàn)和研究方向中提到了AI使能智能合約的概念. 前者指出了AI嵌入智能合約的挑戰(zhàn),即智能合約執(zhí)行結(jié)果是確定性的而AI算法計(jì)算的結(jié)果是非確定性的矛盾[23];后者在車聯(lián)網(wǎng)場景中提出利用強(qiáng)化學(xué)習(xí)算法來識別不熟悉的數(shù)據(jù)模式,并根據(jù)不同的條件對它們在智能合約中進(jìn)行分類處理[24]. 此外,文獻(xiàn)[25]具體闡述了在一個車聯(lián)網(wǎng)與區(qū)塊鏈技術(shù)結(jié)合的場景中利用自然語言處理(natural language processing, NLP)對智能合約進(jìn)行自動編碼,通過嵌入樸素貝葉斯分類器去預(yù)測每個用戶請求的標(biāo)記,并通過標(biāo)記來判斷是否為惡意請求[25]. 該文獻(xiàn)實(shí)驗(yàn)仿真結(jié)果表明,相比于常規(guī)的智能合約,該利用了AI技術(shù)改善的合約明顯在安全性問題上更優(yōu).
AI與智能合約的結(jié)合不僅僅局限于加強(qiáng)智能合約的安全性. 在文獻(xiàn)[23]中也曾提出,由于智能合約的可編碼特性,可以將AI算法嵌入智能合約,讓其為整個系統(tǒng)做優(yōu)化或決策. 更重要的是,當(dāng)智能合約用于機(jī)器學(xué)習(xí)算法進(jìn)行決策和分析時,這些決策結(jié)果的可信度將顯著提升.
1.3.2 共識機(jī)制
共識機(jī)制也是區(qū)塊鏈技術(shù)中非常重要的一個環(huán)節(jié),其涉及到為一個去中心化的網(wǎng)絡(luò)鏈?zhǔn)浇Y(jié)構(gòu)中校驗(yàn)節(jié)點(diǎn)區(qū)塊的信任程度,當(dāng)一個新加入的區(qū)塊節(jié)點(diǎn)加入鏈時,需要通過現(xiàn)有的其他區(qū)塊一起工作而使得整個區(qū)塊鏈節(jié)點(diǎn)達(dá)到共識,確定加入一個可信的區(qū)塊. 常用的共識機(jī)制包括工作量證明、PoS機(jī)制、授權(quán)PoS機(jī)制、PBFT算法等等.
盡管共識的任務(wù)就是為了驗(yàn)證區(qū)塊入鏈的信任程度,從而使得區(qū)塊鏈在一個不可信的環(huán)境下對惡意活動有一定的容忍度,但是在IoT某些場景應(yīng)用中依然存在容忍度不足的現(xiàn)象,導(dǎo)致網(wǎng)絡(luò)節(jié)點(diǎn)被惡意篡改等問題. 因此,基于這個問題,可以充分借助AI算法的特點(diǎn),用于檢測欺詐行為來一定程度的解決這個問題. 例如,基于Hyperledger Fabric區(qū)塊鏈平臺,其對惡意活動容忍度相對較低的情況,Mehrdad[26]等在共識協(xié)議之前設(shè)計(jì)了一個外部檢測算法作為先前一步的共識,驗(yàn)證了新數(shù)據(jù)的兼容性,并丟棄了可疑的數(shù)據(jù),以提高網(wǎng)絡(luò)對第二步共識(PBFT共識機(jī)制)的容錯能力,如圖3所示. 結(jié)果顯示設(shè)計(jì)的這個算法對這個區(qū)塊鏈平臺的容錯能力有顯著提升.
圖3 兩步共識網(wǎng)絡(luò)Fig.3 Two-step consensus network
同時,在文獻(xiàn)[27]中,為了減少區(qū)塊鏈分布式系統(tǒng)共識過程中部分節(jié)點(diǎn)串通,導(dǎo)致破壞節(jié)點(diǎn)共識的公平性,作者采用了受監(jiān)督的機(jī)器學(xué)習(xí)方法,具體是當(dāng)一個新的區(qū)塊將加入鏈中之前,通過一個智能體根據(jù)以往的經(jīng)驗(yàn)與概率判斷是否為公平的交易事務(wù),從而使得共識過程中的安全性提升. 此外,在文獻(xiàn)[28]中,在區(qū)塊鏈節(jié)點(diǎn)共識之前,為了防止攻擊者控制共識過程,Houda等提出了一種基于機(jī)器學(xué)習(xí)的貝葉斯網(wǎng)絡(luò)濾波算法,自動地檢測區(qū)塊鏈網(wǎng)絡(luò)中的異常,可以有效地保護(hù)共識過程.
隨著區(qū)塊鏈技術(shù)和AI技術(shù)在IoT領(lǐng)域的迅速發(fā)展,當(dāng)前研究不僅僅關(guān)注借助AI技術(shù)的特點(diǎn)來促進(jìn)區(qū)塊鏈在IoT領(lǐng)域的發(fā)展,而且同樣考慮利用區(qū)塊鏈技術(shù)的特點(diǎn)促進(jìn)AI的發(fā)展,以達(dá)到深度融合,從而共同賦能IoT的發(fā)展. 在本節(jié)中,將具體綜述和討論借助區(qū)塊鏈技術(shù)促進(jìn)AI技術(shù)進(jìn)一步發(fā)展的研究現(xiàn)狀.
目前,IoT數(shù)據(jù)存儲和計(jì)算模式為云、邊、端,云代表服務(wù)器,邊代表邊緣節(jié)點(diǎn),端則代表終端的設(shè)備,云和邊緣服務(wù)器負(fù)責(zé)將所從終端設(shè)備產(chǎn)生的數(shù)據(jù)收集存儲并處理. 這樣的處理方式可能有較大風(fēng)險(xiǎn),因?yàn)槿菀自馐茚槍π缘墓簦掖嬖诮K端用戶不信任第三方收集自己的敏感數(shù)據(jù)的問題. 區(qū)塊鏈作為一個分布式的可靠存儲平臺,通過將其部署在邊緣節(jié)點(diǎn)甚至下沉至終端,可以很好地利用區(qū)塊鏈平臺分區(qū)塊的存儲及管理數(shù)據(jù),以增強(qiáng)系統(tǒng)的魯棒性. 從與AI技術(shù)結(jié)合的角度而言,區(qū)塊鏈的分布式結(jié)構(gòu)與以分布式特點(diǎn)為代表的機(jī)器學(xué)習(xí)算法融合,能實(shí)現(xiàn)更加完善的協(xié)同優(yōu)化決策.
例如,聯(lián)邦學(xué)習(xí)(federated learning, FL),其特點(diǎn)是首先本地訓(xùn)練模型,然后將本地訓(xùn)練模型的參數(shù)上傳至一個中心節(jié)點(diǎn)進(jìn)行全局模型更新,繼續(xù)循環(huán)迭代此過程直至達(dá)到全局模型訓(xùn)練最優(yōu)為止. 在一個車聯(lián)網(wǎng)系統(tǒng)中,利用區(qū)塊鏈在車輛之間進(jìn)行聯(lián)邦學(xué)習(xí)的過程中提供一個分布式存儲與管理的平臺,以增強(qiáng)系統(tǒng)的魯棒性[29]. 其具體的做法是在聯(lián)邦學(xué)習(xí)的過程中,利用區(qū)塊鏈技術(shù),本地智能車輛計(jì)算出的本地訓(xùn)練模型參數(shù)作為一個交易通過共識保存到區(qū)塊鏈中,而當(dāng)系統(tǒng)要進(jìn)行全局聚合時,邊緣服務(wù)器作為聚合節(jié)點(diǎn)通過從區(qū)塊鏈中獲取更新的本地上傳模型執(zhí)行全局聚合,從而實(shí)現(xiàn)以一個相對穩(wěn)定的方式執(zhí)行聯(lián)邦學(xué)習(xí)算法來優(yōu)化系統(tǒng)性能.
同時,如圖4所示,利用區(qū)塊鏈的分布式特點(diǎn),將區(qū)塊鏈部署至邊緣服務(wù)器,將聯(lián)邦學(xué)習(xí)中的全局更新模型參數(shù)利用狀態(tài)樹結(jié)構(gòu),安全存儲在區(qū)塊鏈的最新產(chǎn)生的區(qū)塊中[30]. 具體的做法是,在每次迭代的本地節(jié)點(diǎn)模型訓(xùn)練參數(shù)存儲在一個區(qū)塊,經(jīng)過共識驗(yàn)證后分批次地保存在區(qū)塊鏈當(dāng)中,以此來增強(qiáng)在物聯(lián)網(wǎng)系統(tǒng)中聯(lián)邦學(xué)習(xí)的魯棒性和安全性.
圖4 針對聯(lián)邦學(xué)習(xí)的區(qū)塊鏈存儲結(jié)構(gòu)Fig.4 Storage structure of blockchain for federated learning
此外,基于區(qū)塊鏈平臺的結(jié)構(gòu)特點(diǎn),可以更好地設(shè)計(jì)一個激勵機(jī)制,使相互不信任的節(jié)點(diǎn),通過激勵的方法,互相分享數(shù)據(jù),突破不同數(shù)據(jù)擁有方的壁壘,實(shí)現(xiàn)數(shù)據(jù)融合[16]. 一旦智能體擁有充足的訓(xùn)練數(shù)據(jù),基于AI算法,其最終的性能會很大程度上得以提升,更好地服務(wù)于整個系統(tǒng)優(yōu)化.
隨著5G及IoT技術(shù)的發(fā)展,大規(guī)模終端節(jié)點(diǎn)的部署會產(chǎn)生大量的數(shù)據(jù). 對于AI技術(shù),擁有越大量的數(shù)據(jù)就意味著其訓(xùn)練模型的精確度就越高. 然而,如果這些數(shù)據(jù)中有少部分存在安全性問題,相應(yīng)地,數(shù)據(jù)的有效性就會影響系統(tǒng)決策,從而影響系統(tǒng)的整體性能. 幸運(yùn)的是,區(qū)塊鏈技術(shù)的引入,為數(shù)據(jù)安全和隱私性問題帶來了有效的解決方案.
區(qū)塊鏈技術(shù)具有匿名性、不可篡改性、接口訪問控制和簽名認(rèn)證授權(quán)等技術(shù)來保障交易數(shù)據(jù)的安全與隱私,這些技術(shù)可以充分地運(yùn)用到IoT領(lǐng)域,為大數(shù)據(jù)的安全保駕護(hù)航,也為AI模型訓(xùn)練所需的數(shù)據(jù)提供質(zhì)量保障.
為實(shí)現(xiàn)安全可信賴的數(shù)據(jù)共享,可以采用私鑰對本地?cái)?shù)據(jù)或模型進(jìn)行加密簽名處理,在區(qū)塊鏈平臺進(jìn)行存儲之前必須通過驗(yàn)證簽名[31-32],目的是保證從多方節(jié)點(diǎn)上傳的數(shù)據(jù)安全可靠. 例如,為了確保支持向量機(jī)算法對智慧城市中IoT數(shù)據(jù)分類之前用戶數(shù)據(jù)的完整性和隱私保護(hù),Shen等[33]使用區(qū)塊鏈技術(shù)來實(shí)現(xiàn)安全可靠的IoT數(shù)據(jù)共享,每個IoT數(shù)據(jù)提供者通過自己的私鑰對數(shù)據(jù)實(shí)例進(jìn)行本地加密,然后經(jīng)過特殊格式化的事務(wù)在區(qū)塊鏈上記錄以保護(hù)用戶數(shù)據(jù)的隱私.
同時,隨著AI技術(shù)的發(fā)展和萬物互聯(lián)的興起,在IoT場景中設(shè)計(jì)一個可擴(kuò)展的、私有的、可信且智能的大數(shù)據(jù)共享體系非常關(guān)鍵. Regio等[34]提出了一種名為SpeedChain的體系框架,該框架利用區(qū)塊鏈技術(shù),允許智能車輛共享其大數(shù)據(jù),通過使用周期性變化的秘鑰來保護(hù)終端用戶的隱私,在秘鑰更新間隔中,車輛更新新的密鑰對.
此外,通過對多維數(shù)據(jù)上傳至區(qū)塊時進(jìn)行訪問控制[35-36],針對一些惡意節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行管控,可以有效地抵御攻擊,如圖5所示. 此外,為了進(jìn)一步對大規(guī)模節(jié)點(diǎn)進(jìn)行安全性效驗(yàn),可采用對每一個節(jié)點(diǎn)進(jìn)行信用等級評級,即給每個節(jié)點(diǎn)按照以往的行為設(shè)置一個名譽(yù)值(reputation value)[37],區(qū)塊鏈平臺可以通過這名譽(yù)值來判定該節(jié)點(diǎn)上傳的數(shù)據(jù)是否真實(shí)可靠. 例如,Guntur等[38]利用區(qū)塊鏈技術(shù)在異構(gòu)和動態(tài)IoT環(huán)境中重新構(gòu)建了一個輕量級、可伸縮和可信任的訪問控制系統(tǒng),以防止未經(jīng)授權(quán)的訪問和自動檢測受損節(jié)點(diǎn). 該系統(tǒng)將區(qū)塊鏈的信任和聲譽(yù)特點(diǎn)用于IoT訪問控制,通過逐步評估和計(jì)算每個參與節(jié)點(diǎn)的信任和聲譽(yù)評分,實(shí)現(xiàn)一個自適應(yīng)和值得信賴的訪問控制系統(tǒng).
圖5 區(qū)塊鏈網(wǎng)絡(luò)訪問控制Fig.5 Access control for Blockchain
綜上所述,區(qū)塊鏈技術(shù)在數(shù)據(jù)安全與隱私性帶來的保障不僅使得在AI訓(xùn)練的過程中為其提供安全可靠的數(shù)據(jù)來源,大大提高了系統(tǒng)決策的準(zhǔn)確性,還可以確保整個系統(tǒng)在多方面的安全性得以提升.
區(qū)塊鏈的共識機(jī)制,即在區(qū)塊鏈的結(jié)構(gòu)中為決定一個新的區(qū)塊將加入到鏈中而配置的一種協(xié)議[39],是維持區(qū)塊鏈網(wǎng)絡(luò)安全穩(wěn)定的核心.
考慮到在一個IoT場景中,由于區(qū)塊鏈技術(shù)的共識過程和AI模型的訓(xùn)練都需要消耗大量的計(jì)算與能量資源,而這些資源在IoT場景中通常極為有限,融合2項(xiàng)技術(shù),勢必會對系統(tǒng)性能造成影響. 盡管通過深度強(qiáng)化學(xué)習(xí)等算法能夠?qū)崿F(xiàn)來計(jì)算任務(wù)卸載以及資源調(diào)度優(yōu)化[15],但無法滿足對資源消耗較為嚴(yán)苛的業(yè)務(wù)場景.
因此,在區(qū)塊鏈網(wǎng)絡(luò)執(zhí)行共識的過程中同時執(zhí)行AI模型的訓(xùn)練,資源消耗可在一定程度上實(shí)現(xiàn)降低. 同時,設(shè)計(jì)相應(yīng)的協(xié)議框架,安全性問題也能夠迎刃而解. 文獻(xiàn)[11-12,40-42],即利用共識機(jī)制的特點(diǎn),結(jié)合集體學(xué)習(xí)以及聯(lián)邦學(xué)習(xí)算法等符合分布式特點(diǎn)的算法,設(shè)計(jì)形成一種新型共識協(xié)議.
Bravo-Marquez等[12]提出了PoL共識協(xié)議,它是一種結(jié)合機(jī)器學(xué)習(xí)的共識機(jī)制,同時提出了模型競爭機(jī)制(只有最優(yōu)的訓(xùn)練模型區(qū)塊才能通過共識加入到區(qū)塊鏈當(dāng)中[12])以及主要協(xié)議流程. 基于上述模型競爭的思想,文獻(xiàn)[11,41]利用深度學(xué)習(xí)作為分布式節(jié)點(diǎn)的模型訓(xùn)練結(jié)構(gòu). 前者設(shè)計(jì)了PoDL共識協(xié)議[10],通過測試數(shù)據(jù)庫效驗(yàn)后,在學(xué)習(xí)節(jié)點(diǎn)中,只有最高精度的訓(xùn)練模型才能被允許產(chǎn)生區(qū)塊并加入到區(qū)塊鏈中. 后者設(shè)計(jì)提出了有效工作量證明(proof of useful work, PoUW)共識協(xié)議[41],在該協(xié)議中,挖礦方案需要訓(xùn)練深度學(xué)習(xí)模型,只有當(dāng)該模型的性能超過一定閾值時,才會產(chǎn)生區(qū)塊. 結(jié)合文獻(xiàn)[11-12,41]提出的算法特點(diǎn),集體Q學(xué)習(xí)算法[40]被提出,通過深度Q學(xué)習(xí)(deepQ-learning, DQL)算法的深度神經(jīng)網(wǎng)絡(luò)(deep neural network, DNN)與Q學(xué)習(xí)算法分開處理,利用移動邊緣計(jì)算服務(wù)器作為分布式的節(jié)點(diǎn)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),運(yùn)用了PoL共識機(jī)制,并通過模型競爭機(jī)制選擇最佳的訓(xùn)練模型,最后通過這種優(yōu)化算法優(yōu)化IoT場景中的網(wǎng)絡(luò)資源.
此外,聯(lián)邦學(xué)習(xí)作為當(dāng)前比較受關(guān)注的一種分布式機(jī)器學(xué)習(xí)方法,結(jié)合共識機(jī)制的概念,也有較廣泛的應(yīng)用. 如圖6所示,將聯(lián)邦學(xué)習(xí)的學(xué)習(xí)步驟視為訓(xùn)練質(zhì)量證明(proof of training quality, PoQ)共識協(xié)議的流程[42],主要分為交易、廣播、校驗(yàn)、存儲4個步驟,可以很好地實(shí)現(xiàn)同時訓(xùn)練和共識的目的,即區(qū)塊鏈共識的過程也就是AI模型的訓(xùn)練的過程.
圖6 PoQ協(xié)議的共識流程Fig.6 Consensus process of PoQ
綜上所述,利用共識機(jī)制的特點(diǎn),為AI模型的訓(xùn)練制定一個契合共識流程的協(xié)議,能有效地代替?zhèn)鹘y(tǒng)工作量證明共識機(jī)制,達(dá)到一方面進(jìn)行共識,另一方面為AI進(jìn)行模型訓(xùn)練. 在未來的研究過程中,可以將該方法應(yīng)用在IoT場景中,通過區(qū)塊鏈技術(shù)和AI技術(shù)協(xié)同優(yōu)化,為系統(tǒng)提供實(shí)現(xiàn)最優(yōu)性能的決策.
考慮到智能合約的可編程特性,可將AI算法嵌入智能合約中,即基于AI的決策執(zhí)行算法被區(qū)塊鏈的節(jié)點(diǎn)作為智能合約執(zhí)行[23]. 然而,在智能合約機(jī)制引入AI的同時,還需要解決諸多問題. 例如,在現(xiàn)有研究工作中,智能合約的執(zhí)行結(jié)果常常都是確定性的,而AI算法執(zhí)行的結(jié)果通常是不確定性的、隨機(jī)的,而且多數(shù)情況是難以預(yù)測的. 這兩者間的矛盾對AI嵌入智能合約用于執(zhí)行決策優(yōu)化形成了一定的挑戰(zhàn).
因此,在未來研究中,需要一種新的解決方案來處理智能合約確定性和AI算法隨機(jī)性的矛盾,這種方案可以為智能合約處理近似計(jì)算,并為各區(qū)塊鏈參與節(jié)點(diǎn)設(shè)計(jì)協(xié)商一致的協(xié)議,以便以特定的確定性、準(zhǔn)確性和高精度來輸出決策結(jié)果.
當(dāng)前,多數(shù)相關(guān)文獻(xiàn)的研究往往只針對系統(tǒng)中的單個性能指標(biāo)進(jìn)行優(yōu)化,而忽視了多個系統(tǒng)性能指標(biāo)的協(xié)同優(yōu)化. 然而,隨著技術(shù)的成熟和研究的深入,針對不同系統(tǒng)性能提出的解決方案可以相互結(jié)合,實(shí)現(xiàn)多個系統(tǒng)性能協(xié)同優(yōu)化的目標(biāo).
例如,在一個融合了AI與區(qū)塊鏈技術(shù)的IoT場景中,將一個深度強(qiáng)化學(xué)習(xí)算法中深度神經(jīng)網(wǎng)絡(luò)與強(qiáng)化學(xué)習(xí)分離,具體做法是:一方面借助區(qū)塊鏈網(wǎng)絡(luò)共識過程中進(jìn)行模型訓(xùn)練,其采用模型競爭的方式,為深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練最佳模型參數(shù);另一方面在智能合約中嵌入強(qiáng)化學(xué)習(xí)算法,然后將共識過程中訓(xùn)練好的最佳模型參數(shù)上傳至智能合約中強(qiáng)化學(xué)習(xí)算法,這樣做形成的深度強(qiáng)化學(xué)習(xí)算法可用于對系統(tǒng)中的能耗、時延和計(jì)算能力進(jìn)行智能的最終優(yōu)化. 在此過程中,不僅對共識的算法,智能合約有促進(jìn)的作用,而且對其他系統(tǒng)的性能也進(jìn)行了優(yōu)化.
區(qū)塊鏈的分布式結(jié)構(gòu),使得像分布式的聯(lián)邦學(xué)習(xí)算法與區(qū)塊鏈技術(shù)的結(jié)合更加緊密,被視為極具前景的研究方向,得到研究學(xué)者的廣泛關(guān)注. 然而遺憾的是,聯(lián)邦學(xué)習(xí)的訓(xùn)練過程依然存在依賴中心服務(wù)器的問題. 由于全局模型的更新是中心化的,就可能導(dǎo)致安全和魯棒性不佳等問題.
與聯(lián)邦學(xué)習(xí)中本地訓(xùn)練模型到中心節(jié)點(diǎn)全局模型更新不同的是,集體學(xué)習(xí)是一個促進(jìn)數(shù)據(jù)積累和智能體本地解決問題的過程[31],其主要訓(xùn)練過程為每個節(jié)點(diǎn)在本地訓(xùn)練模型,通過將訓(xùn)練參數(shù)上傳至附近的邊緣節(jié)點(diǎn),結(jié)合區(qū)塊鏈技術(shù)能做到較安全的存儲,然后本地節(jié)點(diǎn)下載所有其他的本地訓(xùn)練模型參數(shù),最后結(jié)合這些參數(shù)在本地進(jìn)行模型更新. 整個過程中每個本地節(jié)點(diǎn)更新自己的全局模型并不會影響其他節(jié)點(diǎn),使得整個系統(tǒng)確保安全和魯棒性.
無線通信技術(shù)的迅速發(fā)展,6G通信與太赫茲(Terahertz, THz)通信技術(shù)等技術(shù)的相繼提出,為融合AI與區(qū)塊鏈技術(shù)賦能IoT帶來新的發(fā)展機(jī)遇. 相比于5G通信技術(shù),6G通信技術(shù)在傳輸數(shù)據(jù)率、安全性、時延、網(wǎng)絡(luò)容量和覆蓋率等方面優(yōu)于前者. 而對于帶寬豐富的THz通信(0.1~10.0 THz)更是被業(yè)界認(rèn)為是超高數(shù)據(jù)速率、超可靠、低時延應(yīng)用的一種有效的通信技術(shù).
基于6G與THz通信的諸多特點(diǎn),在融合AI與區(qū)塊鏈技術(shù)的過程中,新一代未來網(wǎng)絡(luò)可提供可靠、安全、超低時延的網(wǎng)絡(luò)環(huán)境. 例如,在對區(qū)塊鏈可擴(kuò)展性研究中,雖然利用現(xiàn)有的技術(shù)能實(shí)現(xiàn)一定的優(yōu)化,但是隨著數(shù)據(jù)量的劇增仍然顯得不足. 基于6G與THz技術(shù)的高數(shù)據(jù)速率的特點(diǎn),未來的可擴(kuò)展性問題將迎刃而解. 隨著現(xiàn)代社會對無線通信網(wǎng)絡(luò)速率要求的不斷提高,使用6G與THz通信技術(shù)將會成為現(xiàn)代通信技術(shù)發(fā)展的必然,同時,也將在更大程度上為融合AI技術(shù)與區(qū)塊鏈技術(shù)提供網(wǎng)絡(luò)環(huán)境基礎(chǔ).
1) 對AI技術(shù)與區(qū)塊鏈技術(shù)融合并賦能IoT發(fā)展進(jìn)行了系統(tǒng)性綜述,以及對AI和區(qū)塊鏈的相關(guān)背景與其的優(yōu)缺點(diǎn)進(jìn)行了討論.
2) 分別從AI驅(qū)動區(qū)塊鏈和區(qū)塊鏈驅(qū)動AI兩個方面詳細(xì)總結(jié),提出了兩者的融合將為IoT場景中的熱點(diǎn)問題帶來更豐富、更有效地解決方案.
3) 給出了AI技術(shù)與區(qū)塊鏈技術(shù)融合并賦能于IoT場景中所面臨的一些重要研究挑戰(zhàn)和未來發(fā)展趨勢,包括智能合約確定性與AI算法隨機(jī)性的矛盾、多個性能指標(biāo)協(xié)同優(yōu)化、集體學(xué)習(xí)的應(yīng)用和6G與太赫茲等新技術(shù)帶來的機(jī)遇等.
4) 當(dāng)前,AI技術(shù)和區(qū)塊鏈技術(shù)融合所帶來的優(yōu)勢非常顯現(xiàn),但其所面臨的問題和挑戰(zhàn)也不可忽視. 通過從2種不同的角度綜述2項(xiàng)技術(shù)的融合的優(yōu)勢,并對此過程中存在的問題和挑戰(zhàn)提供了研究方案與解決思路.
5) 通過對AI技術(shù)與區(qū)塊鏈技術(shù)的融合并賦能IoT的綜述,以及提出的挑戰(zhàn)和未來發(fā)展方向,能夠?yàn)橄嚓P(guān)領(lǐng)域研究提供參考和借鑒,更好地促進(jìn)IoT場景下相關(guān)技術(shù)的發(fā)展與演進(jìn).