陳亞茹
(河南工業貿易職業學院信息工程系 鄭州 450012)
(642200814@qq.com)
繼計算機、互聯網之后物聯網(Internet of things, IoT)[1]應用呈現出指數增長的趨勢,被認為第3次世界信息的浪潮.物聯網利用無線傳感器采集各類實體的信息,建立實體與網絡的連接,實現智慧城市、智能交通、大數據監管.在不久的將來物聯網將應用到生活的各個領域,在科技與時代發展中扮演重要的角色.隨著大量移動終端接入網絡進行信息交換和通信的過程中物聯網暴露出身份認證、數據傳輸等安全問題.目前物聯網的安全威脅主要來自于應用層、網絡層及感知層安全,圖1為物聯網的主要安全威脅:

圖1 物聯網的主要安全威脅
針對物聯網的安全問題,業界提出了很多方案[2-4].文獻[2]提出了一種基于公開基礎密鑰設施(public key infrastructure, PKI)身份認證方案,物聯網設備之間通過各自的合法身份建立信任關系,進行數據通信,實現數據安全.文獻[3]提出基于身份的加密(identity based encryption, IBE)認證方案, 物聯網設備之間通信通過共享對稱密鑰進行信息加密,實現網絡層的安全.雖然這些方案在一定程度上解決了物聯網的安全威脅,但是其大多基于中心化體系進行數據安全保護.目前的中心化體系認證已經不適應設備繁多、復雜的異構網絡環境以及存在單點故障問題,一旦出現單點故障就會造成信息泄露的問題.針對采用中心化認證方案存在的問題,文獻[4]提出基于對稱密鑰的方案,采用去中心化認證方式,雖然在一定程度上解決單點故障問題,但是存在密鑰分發、泄露等問題.
從以上提出的方案來看,無論是采用對稱密鑰還是非對稱密鑰的方案都存在缺陷,目前的方案無法適用復雜的異構網絡.區塊鏈利用鏈式進行數據的存儲與更新,具有去中心化、數據防偽造等特征[5],為物聯網安全提供一種解決思路[6].
針對目前物聯網存在身份單向認證、數據傳輸、單點故障等問題,本文以區塊鏈為基礎,結合橢圓曲線數字簽名(ECDSA)[7]提出了一種物聯網拓撲模型.
隨著移動設備接入到網絡數量的增加,物聯網出現很多問題.針對目前物聯網存在的問題,從以下3個機制進行分析:
1) 認證與訪問控制.
與互聯網的認證、訪問控制相似,物聯網也有嚴格的認證與訪問控制.物聯網認證主要有身份認證和消息認證2種方式[8]:身份認證通過密鑰加密來保證;消息認證是保證信息安全和完整的一種認證方式.物聯網的認證是指通信雙方確定通信的一個消息認證碼,發送方根據返回消息認證碼確定接收方接收信息的狀態.但在通信過程中由于消息認證碼是靜態數據,非法用戶可以通過窮舉、DDOS攻擊等方式竊取消息認證碼,然后進行偽造攻擊導致物聯網中信息泄露等安全問題.訪問控制是指按照授權策略方式對資源進行訪問,減少非法用戶的訪問.為了保證物聯網的安全,出現各種身份識別技術,如指紋、數字簽名等,但是都存在一些安全問題.
2) 數據安全.
加密是保護數據的安全常見的一種手段,如對稱密鑰和非對稱密鑰等加密方法.對傳輸數據進行加密的前提是具備一個健壯的密鑰管理方案,該方案必須適應節點資源有限的特點.物聯網中數據庫系統是流式數據,流式數據加密困難,一旦數據被攻擊,所有數據都會被竊取,因此物聯網中海量數據面臨巨大的挑戰.采用云存儲是常見的解決方法,但是云存儲數據在使用時需要反復傳輸,導致云服務器負擔極大,安全得不到保證.物聯網在無線傳輸過程中要考慮數據的安全和隱私,防止數據被非法用戶竊取.
3) 建構安全網絡架構.
由于技術的不完善,目前物聯網中網絡層節點之間沒有統一的架構協議,不統一的架構協議給非法用戶留了很多安全漏洞.因此應結合節點的特性和物聯網模型建立統一網絡層的協議,以保證物聯網的安全.
大量的移動設備連接到物聯網中共享數據時,在點對點網絡下出現網絡延遲的情況,很難保證數據的安全.當節點數量過多時節點處理事務的先后順序不一致,因此需要一種方法對發生事務的先后順序進行識別.區塊鏈具有識別機制,可以保證物聯網之間傳遞的數據得到安全保證.區塊鏈具有以下5個特點:
1) 去中心化.
去中心化是區塊鏈的典型特點,用來保證網絡安全.區塊鏈中數據的傳輸、存儲都由眾多節點構成的一種點對點網絡,不需要中心化節點的管理,形成去中心化、可信任的結構,如圖2所示.當節點收到另一個節點傳輸的數據時,該節點需要驗證另一個節點的身份信息,身份驗證成功后,把接收到的數據共享到整個網絡.利用區塊鏈去中心化的特點可以改善目前物聯網結構中心化的現狀,解決異構網絡中對中心結構的依賴現狀.

圖2 去中心化網絡
2) 安全可信.
區塊鏈采用非對稱密碼體制進行數據加密,每個節點通過哈希值處理事務的先后順序,以及利用分布式系統中共識算法進行抗偽造攻擊,提高了區塊鏈數據的安全性.如果非法用戶想篡改數據需要修改所有區塊中的數據,目前的技術是不可能實現的,因此區塊鏈中安全可靠的特點用在物聯網中使用戶的交易更加透明.
3) 可追溯性.
區塊鏈中區塊包含時間戳,時間戳是標記區塊產生的時間和標記每筆交易,為數據增加了時間維度.時間戳不僅能保留原始數據,而且降低了交易追溯的成本.當區塊建立后新產生的交易數據記錄到當前的數據塊中,當前區塊數據通過算法生成一個哈希值,記錄到當前父區塊哈希值屬性中,由于類推形成區塊鏈,這個過程是不可逆的.區塊鏈實現了信息的不可篡改和抗偽造攻擊,保證了物聯網中信息傳輸的安全.
4) 開放性.
區塊鏈提供了腳本代碼,支持用戶根據自身需求開發去中心化應用.區塊鏈系統中絕大多數數據是開放的,支持通過接口進行訪問,只有小部分數據處于保密狀態.
5) 智能合約.
智能合約的概念由Szabo[11]提出,定義為一套數字形式的承諾.設計的目的是無需第三方條件下通過內嵌數字形式的物理實體來創建多種靈活的智能資產,通常被認為一個自動擔保程序[9-10].受限于當時硬件條件,智能合約被當成一個理論,區塊鏈的出現為智能合約注入了新的活力.區塊鏈技術使智能合約強化了物聯網中用戶之間的互信機制,實現了物聯網的去信任化.
本文提出的方案基于橢圓曲線數字簽名(ECDSA)和區塊鏈技術.其中橢圓曲線數字簽名保證節點之間數據傳輸的安全性和不可否認性;區塊鏈提供一個安全和值得信賴的方式使用一個分布式共享信息模型,實現透明、安全、隱私、可審核性、訪問身份驗證、數據不變性等,物聯網系統大多部署在不可信網絡中,因此可以利用區塊鏈技術作為安全、可審計的數據日志.體系結構如圖3所示:

圖3 區塊鏈物聯網體系結構
感知層采集的信息和底層區塊鏈進行鏈上存儲,其中信息通過橢圓曲線數字簽名進行信息認證,以點對點的方式進行信息傳遞,實現數據的可追溯性和不可抵賴性.
合約層與底層區塊鏈代替了傳統的物聯網的平臺層與網絡層.合約層通過各種加密算法、共識機制、智能合約、開發的代碼編寫滿足用戶需求的各種交易操作.
物聯網中存在信息分散、應用層安全缺失、體系結構不規范等問題,利用區塊鏈技術解決異構網絡的安全、資源需求等問題.本文提出的區塊鏈物聯網體系結構具備以下4點優勢:
1) 提高數據傳輸安全.
針對傳統物聯網認證過程中存在的偽造攻擊問題,橢圓曲線數字簽名采用雙向認證方式保證了接入設備與物聯網之間信息交互的完整性與不可抵賴性,有效解決抗偽造攻擊問題.
2) 降低數據傳輸成本.
區塊鏈技術采用分布式連接方式形成一個P2P傳輸網絡,通過合理利用資源和點對點方式對物聯網的組網架構實現優化,節約了傳輸流量和物聯網硬件升級的費用.
3) 降低管理運營成本.
利用區塊鏈中智能合約編寫代碼實現物聯網信息傳遞、加工的智能化自動操作,不僅節約了中心服務器的運行與維護成本,而且實現海量終端的低成本連接,降低了管理運行成本.
4) 隱私保護.
區塊鏈技術的應用使得物聯網實現了去中心化運行,中心服務器不存儲所有交互數據,避免了信息泄露的風險,解決了信息安全與用戶隱私保護問題.與此同時,通過ECDSA等加密算法進一步保護了用戶的隱私,抗偽造、DDOS攻擊等.
區塊鏈作為一種新型的技術和管理模式,為物聯網安全注入了全新的理念,區塊鏈的去中心化、安全可信、可追溯性、智能合約等都具有安全監管的功能.本文把區塊鏈技術應用到物聯網中,提出了基于區塊鏈技術的物聯網模型,解決了傳統物聯網中單點負載、成本昂貴及數據隱私等問題,為企業安全提供參考.