中國鐵塔股份有限公司云南省分公司 趙鵬
互聯網的發展給社會各領域帶來了巨大變化,物聯網環境構建中,數據傳輸屬于核心環節,需要結合物聯網數據傳輸實際問題提出有效措施保障通信安全。本文基于區塊鏈與Signal 進行互聯網安全通信系統設計研究,意在解決物聯網環境數據傳輸實際問題、提升物聯網通信安全保障力度。通過本文實踐分析可知,物聯網安全通信設計需要借助密鑰協議技術達到維持物聯網安全通信狀態優化物聯網安全通信系統設計這一目標,同時這也能提供整體運行系統安全保障力度。
宏觀物聯網環境中,身份認證主要是指,設備之間的身份驗證意在保護物聯網環境整體安全狀態。進一步細分可知,身份認證技術可包括密碼訪問控制、地址、設備身份、令牌等細節技術。在實踐應用中,身份認證技術需要以密碼為基礎,通過將設備、地址與密碼保存在認證服務器中,達到身份認證整體流程、推進目標。而設備身份認證技術主要是指,通過公共密鑰體制完成身份認證,公共密鑰主要內容包括,IP 地址、簽名等可實現設備身份驗證過程安全保障。令牌身份技術強調,通過服務器為載體,形成獨立數據,完成標識設備環節服務器[1]。這時,會生成一次性密碼,并發送給注冊設備,最終通過一次性密碼與服務器列表密碼比對,達到身份認證效果。
Signal 技術可實現端點到端點加密這一目標,現階段是普遍在通訊軟件中應用的關鍵技術,此協議主要包含X3DH 算法與雙沙棘輪算法兩種基礎算法。可實現端點至端點、群組與群組之間的有效通信,并同時保障安全信息能夠完成安全加密,并且,消息內容也能同步實現前后雙向安全保障。即使具體信息被攻擊或破解攻擊者,也無法獲得當前信息之前之后的信息內容。X3DH 密鑰協商協議主要由3 種角色、4 種密鑰為基礎結構。其中3 種角色包括,消息發送方、接收方以及中間起到銜接作用的服務器[2],服務器主要存儲參與者身份信息。4 種密鑰則主要是指身份密鑰(IK)、已簽名的預共享密鑰(OPK)、一次性預共享密鑰(EK)和臨時密鑰。其中,身份密鑰主要包含身份公共密鑰和身份私密鑰,屬于成對密鑰;已簽名預共享密鑰也包含成對密鑰,與身份密鑰同時生成,發揮作用時,身份密鑰與私密鑰共同發揮簽名認證作用;一次性預共享密鑰也包括兩個成對密鑰,此種密鑰服務器在應用過后會直接刪除,當數量不足時實現一次性補充;臨時密鑰也屬于成對密鑰,主要作用在于生成初始會話密鑰以及棘輪鏈初始輸入值。
區塊鏈技術作用發揮主要依靠區塊鏈結構,其基本結構層次包括以下幾部分:(1)網絡層;(2)數據層;(3)共識層;(4)激勵層;(5)合約層;(6)應用層,不同層面有不同功能。其中,數據層包含數據區塊以及基于區塊形成的鏈式結構,主要應用非對稱密碼學技術和Hash 算法,進行區塊中數據技術完整性保障。網絡層主要通過點對點網絡結構實現節點之間數據傳播與交易驗證過程。共識層通過共識機制,保障節點數據一致性。應用層通過腳本代碼與智能合約達到應用系統功能有效實現目標,進一步對區塊鏈類型進行分析,可包括公有鏈、私有鏈、聯盟鏈。其中,公有鏈不具備中心化管理組織鏈條節點,可自由出入區塊鏈整體網絡;而私有鏈主要是應用于政府機構網絡結構構建,私有鏈節點,可實現統一由官方管控這一效果,鏈條算法由統一組織確認;而聯盟鏈是能夠兼備公有鏈和私有鏈應用特征與優勢的鏈條結構[3]。
此系統基本結構包括管控云平臺各節點物聯網智能終端設備以及區塊鏈整體網絡。其中,管控云平臺主要功能集中在,對智能設備進行決策和指令發布,整體展示操作也可實現可視化。管控平臺中,還包括一部分運營商平臺、第三方應用平臺、統一管理平臺等分布式平臺。聯動性平臺設置結構也從側面反映出物聯網平臺系統全面性與復雜性。基礎管控平臺與智能設備進行聯動應用時,需經過身份驗證與力量協商過程。這能夠有效保證會話內容安全系統智能設備主要功能集中在實現數據信息采集計算與處理,并將計算結果上報至管控云平臺中。在與云平臺通訊之前,身份認證與密鑰協商過程也必不可少,同時,此設備還能接收執行管控平臺下一步的指令操作。智能設備基本類型包括濕度光感、風感物聯網設備。在本文研究的系統結構中,通信模塊選取NB35-A,基站數據傳輸依托NB-IoT 實現基站數據傳輸。本次研究的智能設備選用智能路燈。
在本系統研究中主要選擇聯盟鏈結構進行應用,基本鏈條結構中包括云平臺、運營商、第三方應用平臺、統一管理平臺以及可管控的低級設備與高級設備等。上述平臺共同參與聯盟鏈管理。在共識機制選擇上,本文研究選擇DPOS 改進共識機制,利用其吞吐總量較高的基本優勢,保障去中心化物聯網環境穩定運行。物聯網安全通信系統設計與開發平臺為Hyperledger Fabric。Fabric 應用于聯名鏈平臺比較常見,具有吞吐總量高、共識機制效率高、隱私性強、擴展性和靈活性高這幾方面基礎優勢,對于物聯網設備場景適用性也相對更強。結合此架構設計,可規劃出適合本門研究物聯網的安全通信系統設計架構。按照應用層、合約層、數據存儲層、數據傳輸層、感知層進行整體架構劃分。具體系統架構圖如圖1 所示。

圖1 系統總體架構圖Fig.1 Overall system architecture diagram
2.3.1 區塊鏈信息初始化環節
基礎設備在出廠階段,需進行身份信息以及公共參數預設置,這些數據信息都會直接反映在區塊鏈區域設備身份信息。若進一步細分,可包括身份ID、身份公共密鑰哈希鏈、臨時密鑰哈希鏈。不同類型結構,需要通過相應算法生成對應信息。而云平臺身份密鑰哈希鏈,則主要取決于身份公共密鑰鏈條以及共享公共簽名鏈條,信息初始節點生成和數據維護均需要借助上述信息進行參考確認,在確認基礎數據信息結構后,才能夠為數據信息拓展研究提供支持。
2.3.2 身份認證與密鑰協商環節
身份認證與密鑰協商主要需借助云平臺,從云平臺中選擇初始可信節點,對設備進行身份認證,身份認證過程需借助計算機驗證。具體認證步驟是在設備入網階段實施認證。這一階段,需要進行入網流程的合理規劃,具體包括了設備信息初始化、身份ID 確認以及身份相關哈希鏈確認。設備信息初始化環節中,主要要點在于設備身份信息以及設備功能投入時間、出產廠商等基本參數,這些基礎信息都可借助設備內部安全芯片達到加密存儲效果。關于身份ID 認證,主要是指,在設備獨立結構中,身份ID 都具有唯一性,是能夠識別其身份狀態的日志文件,能夠實現對設備行為監管追溯。這兩方面目標同設備身份是否安全也可基于區塊鏈結構與技術進行分析研究[4]。關于哈希鏈確認,需借助計算公式達到預期目標。以獨立哈希鏈行程流程分析可知,在具體確認工作落實時,設備會生成隨機數值命名為k,此數值經過連續n 次基于哈希函數的運算形成鏈條性計算結果及構成哈希鏈。
在身份認證階段需要模擬設置設備與云平臺之間的通信狀態,在通信階段首要任務就是進行身份認證。不同設備與云平臺存在等級差異。本文假設由一級設備向二級設備云平臺發送身份認證需求對身份認證具體流程進行分析。具體來說,身份認證階段要點環節包括以下幾部分內容。即身份認證請求發送、哈希值計算、鏈上信息獲取、哈希值驗證、下次認證準備工作。
其中,發送認證請求階段需要設備向云平臺發送身份ID,將設備身份哈系列中的固定項發送給云平臺。
在哈希值計算環節,需在云平臺收到設備發送的請求后,對哈希值進行進一步計算,得到相應結果。若云平臺中存在攻擊者,會獲取設備身份哈希值數值,這一數值,可實現與其他設備正常通信。結合哈希值函數單向性特征,攻擊者即使獲取哈希值數值信息,也無法獲取設備所發出的具體數據信息。同時,云平臺完成認證后,并不會將設備身份信息向設備返回發送,起到保護隱私作用。
關于鏈上信息獲取環節需要云平臺從認證區塊鏈區域借助設備身份ID 查詢核心數值信息。由于云平臺屬于一級設備鏈上節點,可在本設備數據中直接顯示查詢數值信息,可見,信息獲取便捷性更強。
關于哈希值驗證環節是指,在云平臺數據信息比對環節要保證計算值與查詢值相一致。若兩者不相等,則由云平臺發出安全警報信息,身份認證從此截止。若兩者相等,身份驗證視為成功,整體系統運行進入下一步驟。
最后進入二次認證準備環節。在第二次認證準備環節設備,會向區塊鏈認證網絡申請將具體計算數值上傳到區塊鏈結構中。上傳申請提出后,鏈條上達到50%的節點同意上傳,就會最終達成上傳操作。這一環節中,需借助共識機制進行基礎判定。同意上傳后,設備信息以及時間戳信息都會直接顯示在區塊鏈認證網絡中,設備身份認證在后續執行時就能做好充分準備。完成身份認證后,需進一步基于雙棘輪算法進行會話密鑰,以及下次雙極輪算法進行數據計算。
系統實現研究中需分別從開發環境、硬件結構、Fabric環境構建、系統展示等幾方面進行。
開發環境分析從本質上來說,是對系統應用的有效篩選。本文研究中,主要選取Ubuntu18.04 系統。不同鏈條節點上還需分配相應具備計算存儲能力的硬件,并應用Open SSL 接口,實現加密系統環境配置,具體信息如表1 所示。

表1 開發環境配置信息統計表Tab.1 Statistical table of development environment configuration information
硬件設備選擇需結合運行環境以及功能需求進行合理選擇。小熊派開發板、搭載匹配傳感器,擴展板以及通信擴展板,是本次設計系統的基本硬件結構。能夠完成信息采集數據、上報數據接收指令、提出以及指令執行幾方面基本功能。開發版基本結構包括CPU 存儲系統、顯示屏、外擴Flash 動畫顯示、供電系統、SD 卡傳感器、通信系統等模塊。
此環境主要發揮物聯網安全通信系統中的存儲功能,負責對系統各參與者身份進行存儲,并同步具備查詢功能。系統結構中,網絡由虛擬節點共同構成虛擬節點在服務器中的有效融合搭載。服務器通過虛擬機創建多個超級賬本節點,達到聯盟鏈搭建目標。此種環境搭建具有穩定性強、節點共識機制運行良好的基本優勢。在實踐應用中,采用Docker 容器作為合約運行環境,在容器安裝完成后,需進一步進行壓縮文件解壓和向虛擬機中的復制。
綜合本文實踐分析可知,基于區塊鏈以及Sianal 物聯網安全通信系統設計需通過開發環境構建硬件設計、軟件設計、關鍵認證體系規劃等多環節協同作用達到優化設計目標。同時,還應當對系統運行安全狀態基于密鑰技術和協商技術,同步發揮出對系統進行安全保障的作用。