王帆,殷鋒,袁平
(1.四川大學計算機學院,成都610065;2.西南民族大學計算機科學與技術學院,成都610041;3.重慶第二師范學院數學與信息工程學院,重慶400067)
隨著5G 通信和物聯網的發展,數億臺設備已被部署于各個領域用于感知、收集和傳輸數據。近年來,可穿戴智能設備由于其可以通過軟件與中心服務器連接,以此實現數據交互,為用戶提供豐富的功能,加上其獨特的便攜性正受到持續關注。5G 即第五代移動通信系統,英文名為5th Generation Mobile Networks。它的最大特點是高速率、大寬帶、低時延,在傳輸速率上能比4G 快上百倍,預計每秒至少能達到1000 兆比特(Gb/s),相當于傳輸1GB 的視頻僅需要短短8 秒。隨著5G 時代的到來和逐漸成熟,5G 加速了可穿戴智能設備的發展,對我們的生活帶來了很大的轉變。與此同時,各大廠商也在積極投入研發,使得可穿戴設備的種類逐漸趨向于多元化,而如何實現更強大的功能成為核心問題。數據共享可以擴大產品的覆蓋范圍,同時,可以利用設備的測量數據通過相應的服務平臺對數據進行分析,讓服務提供商提供更具有針對性的服務。
在大數據背景下,數據呈指數增長,已成為研究的重要資源。而目前,各行業卻依然存在“數據孤島”的問題,建立安全有效的數據共享模型成為重點關注問題。許多領域,例如醫學和醫療保健中,通過共享臨床數據可以深入進行個性化的病人護理和醫學知識研究;在工業領域,促進各企業間數據的互聯互通,將有助于工業協同生產和產品優化等。盡管數據共享可以催生許多應用,為各行業的生產發展等帶來了極大便利,但在數據共享過程中,仍存在一個關鍵問題:傳統的數據共享方案利用中央服務器進行集中存儲,使得數據的隱私性無法得到保證,因此用戶可能不愿意共享數據。另外,在傳統的生產模式下,由于數據是存儲在單一、孤立的系統中,缺乏強大的數據保護措施,單一節點損壞會帶來巨大的損失,與此同時,數據存儲的壓力也日益增長。
針對上述問題,本文提出一種基于區塊鏈和邊緣計算的可穿戴設備數據共享框架。使用區塊鏈存儲采集的穿戴設備的共享數據,考慮到區塊鏈節點需要較高的計算資源,因此結合邊緣計算完成節點的計算任務。
區塊鏈是在網絡共識下結合智能合約和其他輔助技術的分布式賬本技術。區塊鏈技術的核心優勢是去中心化,通過運用數據加密、時間戳、分布式共識和經濟激勵等手段,使網絡節點在無需互相信任的分布式系統中實現可信任的點對點交易、協調與協作,從而解決中心化機構普遍存在的高成本、低效率和數據存儲不安全等問題。區塊和區塊鏈結構如圖1 所示。

圖1 區塊和區塊鏈結構示意圖
基于區塊鏈技術的去中心化理念,利用其分布式控制及存儲,通過共享經濟模式,盤活網絡上的存量存儲和計算資源,將有效緩解工業大數據運營商的數據存儲及運維壓力,進一步有效實現數據挖掘和價值增值。同時,鑒于區塊鏈的不可篡改特性,能有效減少用戶的數據隱私安全問題。
一系列工作已經研究基于區塊鏈的數據共享。例如,DubovitskayaA 等人[1]提出了基于區塊鏈的醫療數據管理的觀點,特別是關于醫療提供商之間的EMR 數據共享和研究,并建立了一個用于管理和共享用于癌癥患者護理的EMR 數據的框架。Michelin 等人[2]提出了一個名為SpeedyChain 的框架,將存儲在交易中的數據與區塊頭解耦,從而允許將數據快速添加到區塊中。K.Christidis 等人[3]指出區塊鏈與IoT 的組合有力促進了服務和資源的共享,從而在設備之間創建服務市場,以及允許我們以密碼可驗證的方式實現自動化現有的耗時的工作流程。在文獻[4]中,作者提出了一種基于區塊鏈的高效數據收集和安全共享方案,結合Ethereum 區塊鏈和DRL,建立一個可靠的環境。
但由于區塊鏈所需的網絡計算消耗大,可擴展性不高,而可穿戴設備本身硬件實力不高,因此直接使用區塊鏈建立可穿戴設備上的數據共享平臺將造成不小的計算負擔。
物聯網一般采用云計算技術來完成計算任務,但隨著設備的增加,網絡側產生的數據將會非常龐大。當網絡流量壓力較大時,將無法滿足一些設備的低時延和實時協同合作。邊緣計算屬于一種分布式計算,可以在網絡邊緣側的智能網關上就近處理采集的數據,而不需要將大量數據上傳到遠端的核心管理平臺,能實現大量設備的高效協同功能,同時滿足設備在敏捷性、實時性、數據優化、應用智能,以及安全與隱私保護等方面的關鍵需求。
移動邊緣計算(MEC)的概念最早出現在2013 年,主要思想是通過在移動基站上引入業務平臺功能,使得業務應用可以部署在移動網絡邊緣,以在接近智能手機或者移動終端的地方實現云計算能力。由于移動邊緣計算將網絡業務“下沉”到無線接入網里,因此具備三大優點:①更低延時;②有效抑制了網絡擁塞;③更多的網絡信息及網絡控制功能可以開放給開發者。采用邊緣計算可以就近處理海量數據,大量設備可以實現高效協同工作,諸多問題迎刃而解,從而極大地提升計算的“智能”。Marjanovic[5]已將MEC 體系結構用于人群感應應用程序,其中可以共享大容量的原始傳感數據并將其保存在云中,并具有改進的可伸縮性。作者提出了一種能量收集模型,該模型允許移動節點將任務轉移到附近的移動邊緣塔上,以在移動節點處獲得能源效率[6]。
本文所提出的數據共享框架“BMECS”如圖2 所示,該系統主要由區塊鏈模塊和邊緣計算模塊組成。該區塊鏈通過其加密的記錄在所有終端設備之間建立安全連接,為減輕設備壓力,提高計算效率,區塊由設備附近的移動邊緣計算節點進行維護。該區塊鏈主要實現兩種功能:分布式數據安全共享和數據檢索。

圖2 BMECS系統結構圖
如圖2 所示,我們將系統設備層中的穿戴設備稱為數據請求者/提供者,數據請求者可以向數據提供方請求數據,數據提供商利用MEC 節點將本地采集的數據上傳到區塊鏈當中進行存儲以此獲得獎勵。由于數據提供者的計算資源有限,因此MEC 節點負責將收集到的數據進行處理和加密,并廣播全網的其他節點進行驗證,達成一致,該過程稱為共識算法。常見的共識算法有POW(工作量證明)、POS(權益證明)、PBFT(拜占庭容錯算法)等,考慮到可穿戴設備所需的低時延特點和計算能力,本文擬采用PBFT 作為區塊鏈節點的共識機制,該算法流程如圖3 所示,主要分為以下四個步驟:
(1)客戶端發送請求給主節點
(2)主節點廣播請求給其它節點,節點執行PBFT算法的三階段共識流程,該流程如圖3 所示。其中C為客戶端,N0~N3表示服務節點,特別的,N0為主節點,N3為故障節點。
(3)節點處理完三階段流程后,返回消息給客戶端。
(4)客戶端收到來自f+1 個節點的相同消息后,代表共識已經正確完成。

圖3 PBFT算法三階段共識流程
考慮到用戶對數據隱私的擔憂,為了激勵用戶參與到系統中進行數據共享,同時為了減少無效或有害數據在鏈上的傳輸,本文將引入“信譽幣”的概念,用于用戶之間的數據交易。數據請求者向數據提供商發起訪問授權,之后,請求者使用“信譽幣”向提供者支付費用。系統詳細流程如下:
(1)系統初始化:對初加入系統中的用戶通過中央機構進行身份驗證,審核通過的分配數字證書、公鑰、私鑰并設置初始信譽幣;
(2)數據共享請求:數據請求者向MEC 發起數據共享請求,MEC 執行共識算法新增交易請求區塊;
(3)數據檢索:數據提供商通過附件的MEC 節點定時檢索區塊鏈,驗證數據請求者的證書合法,達成協商,使用私鑰將數據進行加密并上傳至鏈上;
(4)達成交易:數據請求者支付“信譽幣”給數據提供商,獲取公鑰對數據進行解密,交易完成。
為了評估所提出的系統模型,本節將從以下幾個方面來進行分析。
由于設備所共享的數據存儲在區塊鏈上,當某一節點發生修改時都將造成斷鏈,因此任何人都無法偽造數字簽名對區塊進行篡改。當有用戶傳播惡意數據時,系統可以在區塊鏈上進行檢索,并通過減少“信譽幣”來懲罰用戶。利用公私鑰實現數據的加解密,有效保障了數據的隱私性。
針對可穿戴設備的高延遲、離線情況和算力問題,系統使用到移動邊緣計算節點進行數據的采集、處理和加密,并執行拜占庭容錯算法進行“挖礦”,有效減少了計算消耗和系統故障問題。
系統使用區塊鏈架構,通過智能合約可以自動執行設定的代碼,不需要相互信任,同時不會受到人為因素干擾,系統穩定性較高。
本文針對可穿戴設備的“數據孤島”問題,建立了一個基于區塊鏈和移動邊緣計算的數據共享框架“BMECS”。該系統利用區塊鏈實現了設備數據存儲和數據檢索功能,為減輕穿戴設備的計算壓力,結合了移動邊緣計算用于執行節點的共識算法。為減少無效或有害數據在區塊鏈系統上的傳播,在該系統中引入“信譽幣”的概念激勵用戶共享有效數據。與傳統集中式數據存儲相比,提高了數據的隱私性和安全性,而且有效保障了數據傳輸時延,并提高了可穿戴設備的數據共享效率。