仲蓓鑫 林 浩 孔蘇鵬 程 實
(南通大學信息科學技術學院 江蘇南通 226019)
(zpx25562311@126.com)
在互聯網環境中,利用傳感器對物理空間中的眾多信息采集,并通過技術手段建立了信息化空間與物理空間之間的密切聯系[1].所有感知信息的傳輸和流通都是通過中央服務器作為媒介完成的存儲,當中央服務器受到嚴重的惡意攻擊時,保留在其內部的用戶隱私信息將會被泄露,從而產生不可預知的影響和損失.因此,多源網絡數據交換引發的大規模數據處理會對數據中心處理、存儲和服務等能力造成巨大的挑戰.區塊鏈技術天然地為高并發問題提供了一種全新的解決方法,是一種將經濟學、數學、網絡科學等多領域學科共同組成的用于去中心化的分布式數據處理技術[2].利用該技術的優勢,本文開展了對多源網絡數據隱私保護方法的研究.
區塊鏈是利用密碼學并且通過集體維護的去中心化的方法實現多源網絡數據隱私保護.采用密碼學方法將網絡節點中存在的數據信息存儲到區塊中,并生成每個區塊對應的特征值,采用鏈式的結構以時間為順序構成區塊鏈.可靠數據庫、匿名性、集體維護、去信任和去中心化是區塊鏈的主要特征.

圖1 密鑰分配管理架構圖
從圖1中可以看出,在不同的區塊中,網絡數據節點數量及存儲方式也會有所不同,每個可信機構中存在不同等級的信號節點,能夠對電網數據的通信方式進行約束.根據上述特征,利用區塊鏈的數據存儲優勢,設Tar為目標值,其計算公式如下:
(1)
其中,difficulty為難度值,該值是可以調節的;d為常量.
不停地嘗試隨機數是目前常用的尋找方式,所以每個節點的效率在專業礦機出現后會出現巨大的差別.基于區塊鏈的缺陷度量數據防篡改識別方法通過Ethash算法可以避免礦機產生的影響:
(2)
其中,n為區塊頭對應的隨機數;h為區塊頭對應的哈希;d為區塊難度;M為極大數.
區塊鏈的工作流程如下:
1) 如果1個節點在網絡中發起新的數據記錄時,需要通過P2P網絡將這條數據廣播,傳送到網絡中存在的所有節點中.
2) 其他節點在網絡中接收該節點傳輸的數據,并在區塊中存儲該數據記錄.
3) 生成區塊的節點在網絡中將自己的區塊進行廣播.
4) 網絡中存在的其他節點對被廣播的區塊進行驗證,當驗證成功時表明全網都達成了共識,在區塊主鏈中添加該區塊.
在多源網絡數據中設立3個不同功能的節點,cn為普通的檢測節點;cpn為用于對合約進行發布的節點;vn為用于進行驗證的節點.3種節點的具體功能分別為:cn用于向多源網絡中上傳采集到的對數據信息的檢測內容,但不具備對其他過程進行訪問的權限和功能;cpn負責發布多源網絡智能合約條例,在多源網絡中作為傳輸數據信息的發起者;vn主要負責向每個vn及其通信范圍內的cn成員提供代表其身份特征信息的數據證明.同時,vn還具備生成和取消身份特征信息數據證明的功能[3].通過3種不同功能節點的運行,在成員明確上傳數據信息者身份的基礎上,實現對惡意節點的控制和管理.同時節點vn是通過預選出的節點cpn擔任檢測成員,檢測成員主要負責接收節點cn采集到的監控數據,通過智能合約條例完成對數據的加工.
多源網絡數據惡意節點檢測的具體流程為:利用3個節點完成對多源網絡數據中的惡意節點檢測.首先利用節點cn對數據所處位置的各項基本數據指標進行全天候實時監控,從而采集到所有被監測的數據,檢測數據主要包括傳輸數據的位置信息、狀態信息以及行為信息等.通過cn可以有效了解數據在傳輸過程中的運行情況[3-4].節點vn中的數據是通過cn將整合后的數據由蜂窩鏈路傳輸,在節點vn上可以采集到其范圍內節點cn中的所有監測數據,再通過對節點cn內部的運行情況,將最終的分析結果通過匯創網絡存儲在中心節點cpn上.
由于多源網絡數據中的惡意節點存在較多不確定因素的影響[5],因此,為了進一步提高檢測節點的信用度,本文還將各個檢測節點的狀態數據信息、處理延遲數據信息、轉發率以及響應時間等作為惡意節點的判定標準[6].將各個節點分為運行狀態和非運行狀態2種形式,對于非運行狀態下的檢測節點將其直接移除多源網絡,對于運行狀態的檢測節點采集其3種因素[7].表1為3種因素的判定范圍及表達式:

表1 3種因素的判定范圍及表達式
表1中,DT為處理延遲的判定范圍;Tcn_id為編碼id的傳感器在一定時間間隔中由接收數據方傳輸到發送方所需要的時間;Td為時間間隔;FR為轉發率的判定范圍;sd為檢測節點發送的數據量;td為檢測節點接收到的所有數據總量;RT為響應時間的判定范圍;dbn為數據量的比特值;bw為帶寬;pd為數據傳播的距離;ps為數據傳播的速度;pt為數據處理時間;Tr為重復時間[8].通過對上述3個范圍內的多源網絡數據檢測,得出數據質量,并根據具體場景預設1個閾值,當數據的質量未達到閾值則說明該傳感器中的多源數據為包含惡意節點的數據.
根據上述檢測到的惡意節點,本文提出一種基于區塊鏈技術的隱私保護流程,其具體步驟為:
第1步.向傳輸的多源網絡數據中分配密鑰及全網密鑰.由多源網絡隨機地向每個分支分配1對密鑰,且每個密鑰當中都包含1個公鑰和1個私鑰,而全網密鑰是由公鑰和密鑰共同構成.
第2步.劃分節點.將多源網絡劃分為2個部分,其中1個為特殊節點,數據的組成至少為5個.另一個為普通節點,其功能為負責發布和驗收網絡中的數據信息.
第3步.加密傳輸數據.首先,利用傳感器將采集到的數據信息保留在本地傳感器備用,并用公鑰對集成數據進行加密,再將加密后的數據與計算機數據打包為1個完整的數據包,利用私鑰對數據包簽名.
第4步.用戶信息確認和信息驗證.對第3步中的數據包持有用戶進行全網節點驗證查明.首先通過節點cn對數據保持有用戶身份進行驗證,同時驗證保障公共賬本的安全[9].其次,查詢節點中存儲的數據信息,確定數據包是由哪個傳感器發出.其次由節點vn向一個可信的第三方服務商發送解密請求,并驗證數據信息的真實性,當第三方完成操作后,根據密鑰為請求方發送解密的數據信息,完成對數據的解密.
第5步.獲取區塊鏈公共賬本以及本地賬本.當完成信息的驗證后,由各個傳感器根據共識算法選擇出多源網絡中全網的記賬節點,并將判定范圍內的所有信息移動到另一個區塊中,并將2個區塊互相連接,完成對多源網絡數據中隱私信息的保護.
為了驗證本文方法的整體有效性,需要對基于區塊鏈的缺陷度量數據隱私保護方法進行測試,測試選用浪潮5270M4服務器,在區間[0,10]內取值.多源網絡數據的傳播通常存在匿名性弱、隱私易泄露的風險,因此基于這一傳輸環境,在仿真軟件中構建一個模擬的多源網絡數據傳輸環境,并設置500個虛擬用戶,傳輸數據總量為500×103 b,為滿足本文方法的需要,在采集信息時將各個用戶的各項基本傳輸信息上傳到傳感器中,并設置同態加密[10].
分別利用本文提出的基于區塊鏈技術的多源網絡數據隱私保護方法與傳統的保護方法對虛擬用戶傳輸的數據信息進行保護,設置本文方法為實驗組,傳統方法為對照組,比較2種方法數據傳輸的安全系數.安全系數的計算公式為:安全系數=(輸出數據總量-惡意節點)輸出數據總量.
根據上述實驗準備,完成對比實驗,并將實驗過程中數據傳輸產生的惡意節點和各判定參數數據進行記錄,再通過計算得出最終的安全系數.
在對500條傳輸數據總量進行傳輸的過程中,實驗組的安全系數明顯高于對照組,并且隨著傳輸數據總量的增加,實驗組并未受到影響,而對照組的安全系數出現了明顯的下降趨勢.因此通過實驗證明,本文提出的基于區塊鏈技術的多源網絡數據隱私保護方法能夠更加有效地保障多源網絡數據在傳輸的過程中的安全,進一步防止隱私信息發生泄露,避免用戶受到不良影響和損失.

圖2 對比結果
通過本文研究可知,利用區塊鏈技術具有的獨特性特征可以有效解決多源網絡數據在傳輸的過程中隱私信息的泄露問題,為多源網絡提供透明化、分布式存儲等技術支持,從而建立起一個更加安全、可信的網絡傳輸環境.在后續的研究中還將基于區塊鏈技術對可信計算及隱私保護的問題開展更進一步的研究.