夏艷東 戚榮鑫 季 賽,
1(南京信息工程大學網絡信息中心 江蘇 南京 210044)2(南京信息工程大學計算機與軟件學院 江蘇 南京 210044)
1999年,美國麻省理工學院(MIT)提出了物聯網的雛形。2005年,國際電信聯盟(ITU)發布了《ITU Internet reports 2005——the Internet of Things》,該報告正式在全世界范圍內提出了“物聯網”的概念[1]。工業物聯網就是將射頻識別技術、傳感網和智能分析等技術應用到工業領域中來,以更高效便捷的方式監控工業生產流程,實時收集生產數據,從而優化生產管理,降低生產成本,提高生產效率[2]。然而,工業物聯網與傳統物聯網相比對數據傳輸的可靠性和實時性要求高[3]。因此,工業物聯網需要滿足時間同步精確、通信準確和適應性高等要求[4]。隨著工業物聯網技術的廣泛應用,工業物聯網中的安全問題成為其發展過程中所面臨的重大挑戰。工業生產中傳感器節點采集的數據通常在公共信道進行傳輸,數據易遭受外部威脅和攻擊[5]。此外,工業物聯網中的設備資源有限無法支持復雜的計算操作,現有的認證方案大多數基于非對稱密碼體制。而基于非對稱密碼體制的方案需要大量計算、存儲等資源,因此無法應用于工業物聯網中。為了保障采集工業物聯網中的數據安全和隱私,建立適用于工業物聯網的安全且輕量的認證與密鑰交換協議是當前研究的熱點方向。Chang等[6]設計了一種基于智能卡的移動無線傳感網認證協議,該協議能夠提供完美前向安全性,但Li等[19]分析認為Chang等人的協議存在缺乏正確的雙向認證且無法抵抗智能卡丟失攻擊等問題。為了提高用戶身份驗證的安全性,生物特征憑借唯一性、不易復制性等特性[7-8]而得到廣泛應用[9,11]。Li等[19]基于橢圓曲線密碼體制,提出了一種基于生物特征的無線傳感網認證協議,該協議解決了Chang等的協議安全威脅,且能夠抵抗大多數常見攻擊并提供一些理想的安全屬性。何炎祥等[10]梳理了無線傳感器網絡中公鑰密碼機制研究現狀,指出無線傳感器網絡對外部用戶的認證應該集中于基于口令、智能卡、生物特征等多因素訪問控制方法的研究。Srinivas等[9]提出了一種基于智能卡,生物特征和密碼的三因素用戶認證密鑰協商方案,該方案支持智能卡撤銷以及密碼和生物密鑰更新。Li等[11]提出了一種基于密碼,切比雪夫混沌映射和二次剩余定理的三方認證密鑰協商方案,該方案提供了用戶匿名屬性。Esfahani等[13]提出一種適用于工業物聯網中機器對機器(M2M)通信的輕量級認證機制,該機制僅使用哈希函數和異或操作,盡管該協議適用于資源有限的M2M設備,但是未考慮網關節點(GWN)與M2M設備之間的認證。
針對上述研究中仍存在的問題,本文利用基于物理不可克隆函數(PUFs)與模糊提取器,提出了一種輕質的用戶認證與密鑰交換協議,所提出的協議利用模糊提取器提取生物特征信息進行用戶認證,并結合物理不可克隆函數提取傳感器設備物理特征。本協議僅使用單向函數,異或操作和對稱加/解密技術實現工業物聯網中用戶,GWN和傳感器設備的三重雙向認證并建立用戶與傳感器設備間的安全會話密鑰,能夠有效減少通信與計算開銷。實驗結果與分析表明,所提出的協議適用于資源有限的傳感器設備,能夠抵抗重放攻擊、偽裝攻擊、特權內部攻擊、中間人攻擊和物理設備竊取等多種攻擊。
物理不可克隆函數[12,14]是基于難以處理的復雜的物理系統將一組挑戰映射到一組響應中的函數。PUF表示物理不可克隆函數,PUF的輸入一般稱為挑戰,用c∈C表示,輸出一般被稱為響應,用r∈R表示。挑戰及其對應的響應被稱為挑戰-響應對(Challenge Response Pair,CRP),用CRP(c,r)表示。存在一個映射關系PUF:C→R使得PUF(C)=R,對于每一個物理不可克隆函數PUF,挑戰響應對是唯一的。物理不可克隆函數PUF具有以下屬性:
(1)PUF函數的輸出必須取決于硬件的物理微結構,對于任意PUF函數,使用相同的挑戰c作為PUF函數輸入時,在誤差允許的范圍內,該函數總是輸出相同的響應值r=PUF(c)。
(2)PUF函數的輸出是不可預測的:給定挑戰響應對集合Q={(ci,ri=PUF(ci))|i=1,2,…,n},在一定誤差范圍內,敵手預測響應值PUF(ct)是困難的。其中ct是一個挑戰且滿足條件(ct,rt=PUF(ct)?Q。
(3) 函數PUF易于實現:給定函數PUF和輸入c,在多項式時間內計算出PUF(c)是可行的。
(4) 函數PUF具有不可克隆性:從物理層面,給定一個實體的物理不可克隆函數PUF,構造一個物理實體使得該實體包含的物理不可克隆函數PUF′對于任意一個輸入c∈C在很小的誤差范圍內滿足PUF′(c)=PUF(c)是困難的。從數學層面,給定一個物理不可克隆函數,構造一個函數F使得對于任意一個輸入c∈C在很小誤差范圍內滿足F(c)=PUF(c)是困難的。因此,函數PUF是物理不可克隆的。
近年來,模糊提取器(Fuzzy Extractor, FE)[15,17]廣泛應用于用戶生物特征信息驗證,模糊提取器通常定義為一個三元組(M,l,t),主要由以下密鑰生成算法和密鑰重構算法組成。
Gen(·):密鑰生成算法是一個概率性算法。用戶以個人生物信息BIOi作為算法輸入,其中BIOi取自給定的度量空間M,輸出一個對應的長度為l比特的生物密鑰σi∈{0,1}l和一個公共重構參數τi,算法滿足Gen(BIOi)=(σi,τi)。其中,用戶對于生物密鑰σi保密,公共重構參數τi用于幫助重構出初始生物密鑰σi。

本文基于用戶生物特征和傳感器設備物理特征,提出了一種適用于工業物聯網環境的輕量的用戶認證與密鑰交換協議。該協議包含6個步驟:傳感器設備注冊,用戶注冊,網關節點注冊,登錄,身份認證與密鑰交換,生物密鑰和密碼更新。用戶、網關節點和傳感器設備分別在注冊中心注冊,注冊中心作為一個可信第三方為用戶,網關節點和傳感器設備生成認證所需的身份標識和密鑰,具體的注冊流程如圖1所示。

圖1 工業物聯網初始化注冊階段
傳感器設備SDj以離線的方式執行以下步驟完成注冊,具體的注冊步驟如下:
(1) 傳感器設備SDj輸入挑戰cj,經過函數PUF得到響應值rj,然后利用模糊提取器提取傳感器設備的物理特征Gen(rj)=(σrj,τrj)得到σrj,并在安全的信道上發送注冊請求和σrj給注冊中心(Register Center,RC)。
(2) 在接收到傳感器設備SDj的注冊請求后,RC生成一個長度為1 024比特的密鑰keyISDj-GWN并為每個傳感器設備生成長度為128比特的身份標識ISDj。同時,為了保護密鑰keyISDj-GWN的安全,RC計算Ej=h(keyISDj-GWN‖ISDj)⊕σrj,然后將ISDj和Ej發送給傳感器設備。
(3)傳感器設備SDj計算Ej⊕σrj并將ISDj和Ej⊕σrj保存在存儲器中。
用戶Ui在一個安全的信道上執行以下步驟完成注冊,具體注冊步驟如下:
(1) 用戶Ui選擇一個128比特長的身份標識IDi和一個64比特長的高熵密碼PWi,通過指紋提取傳感器取得用戶生物特征信息BIOi,并依據密鑰生成算法計算生物密鑰σi。然后,選擇一個隨機數a并計算RPWi=h(PWi‖σi‖a),將消息〈IDi,RPWi〉發送給RC。
(2) RC接收到用戶注冊請求后,生成一個1 024比特長的密鑰keyUi-GWN和對應于IDi的臨時身份標識TIDi,計算Bi=h(IDi‖keyUi-GWN)⊕RPWi;然后,RC通過安全信道將消息〈TIDi,Bi〉返回給用戶。

網關節點(IGWN)以離線的方式執行以下步驟完成注冊:
(1) 網關節點IGWN發送注冊請求給RC。
(2) RC接收到網關節點IGWN的注冊請求后,為網關節點生成一個128比特長的身份標識IGWN;然后將用戶信息{TIDi,IDi,keyUi-GWN|i=1,2,…,n}和傳感器信息{ISDj,keyISDj-GWN|j=1,2,…,n}安全地保存到網關節點中。
在登錄過程中,用戶Ui發送請求訪問傳感器設備,為了減少資源開銷,在發送請求前需要先進行本地化身份驗證,具體的步驟如下:


(3)用戶Ui通過公共信道發送消息請求TIDi、M1、M2、M3和TS1給網關節點IGWN。
當用戶Ui完成本地化身份驗證并發送認證請求給目標傳感器設備,認證與密鑰交換的過程如圖2所示。該步驟是為了通過網關節點IGWN與目標訪問傳感器設備進行雙向認證并建立安全會話密鑰。該步驟包含用戶與網關節點、網關節點與目標傳感器設備、傳感器設備與用戶之間的雙向認證。因為本方案采用時鐘同步機制,采用隨機數與時間戳相結合的方式防止重放攻擊,具體的認證與密鑰交換過程如下。

圖2 用戶認證與密鑰交換過程




該步驟進行本地化的生物密鑰與密碼更新,不需要RC的參與,具體的更新過程如下:


本協議采用模糊提取器提取用戶生物特征并結合物理不可克隆函數提取傳感器設備物理特征。在保證協議安全性的前提下提出了一個適用于工業物聯網環境更輕量的認證與密鑰交換協議。協議中,我們僅采用對稱加/解密操作、哈希操作、異或操作來實現三重雙向身份并建立用戶與傳感器設備的會話密鑰。由于異或操作所需要的計算開銷遠小于其他操作,我們只考慮模糊提取操作、哈希操作、對稱加/解密操作和群G1上的標量乘法操作。我們以符號Tfe、Th、Te和Tm分別表示進行模糊提取操作、哈希操作、對稱加/解密操作和群G1上的標量乘法操作所需要計算開銷。各操作所需的計算開銷如表 1所示。

表1 各操作計算開銷
在認證與密鑰交換階段,Li等[19]的協議需要的計算總開銷為1Tfe+19Th+6Tm,Li等[20]的協議需要的計算總開銷為1Tfe+19Th+3Tm+8Te,Wang等[21]的協議需要的計算總開銷為26Th+4Tm+4Te,本文協議需要的計算總開銷為2Tfe+19Th+4Te。同時,Li等[19]、Li等[20]、Wang等[21]以及本文協議中實體間通信所需的通信開銷分別為2 720比特、2 688比特、3 200比特和3 040比特。本文協議在保證安全的前提下提高了協議運行的效率。本文協議和其他協議在認證與密鑰交換階段的計算開銷和通信開銷如表2所示。表3為各文獻安全屬性對比??梢钥闯?,本文協議的計算總開銷與通信總開銷遠小于文獻[19]、文獻[20]和文獻[21],同時能夠抵抗多種安全威脅。本文協議與其他協議相比,支持更多如用戶匿名、不可追蹤等安全屬性,并提升安全性,降低了計算開銷,更適合于資源受限的工業物聯網中的傳感器設備。

表2 各方案性能對比

表3 安全屬性對比
本文利用物理不可克隆函數與模糊提取器,提出了一種用于工業物聯網的身份認證與密鑰交換協議,該協議使用模糊提取器實現了用戶生物特征與傳感器設備物理特征模式匹配,有效保證了用戶設備與傳感器設備的安全。實驗結果表明本文協議能夠抵抗多種攻擊且滿足眾多安全需求,有效提高了協議執行的效率。與其他現有的方案相比,本文協議更適用于資源有限的工業物聯網環境。