張心藝 宋建濤 杜楊



摘 要:身份認證是物聯網安全可信的第一道防線,是保障感知網絡穩定運行的基石。基于感知節點的安全性需求及有限的計算能力,提出一種基于橢圓曲線的雙向身份認證協議。該方案能夠認證通信感知節點雙方身份的真實性,加解密所需密鑰信息量少,且不存在密鑰協商問題。為解決認證延遲和能量消耗問題,實現簇頭節點對同一群組內感知節點的批身份認證,對可疑節點基于二分搜索技術實現身份追蹤,快速定位可疑節點位置,及時甄別不可信節點。安全性分析表明,該機制具有正確性、匿名性、不可抵抗性,可有效阻止惡意節點竊取及篡改感知數據。
關鍵詞:物聯網;身份認證;雙向身份認證;批認證
DOI:10. 11907/rjdk. 201149
中圖分類號:TP309文獻標識碼:A 文章編號:1672-7800(2020)010-0233-05
Abstract: Identity authentication is the first line of defense for the security of the Internet of Things, and the cornerstone to ensure the stable operation of perceptual network. Based on the security requirements of the sensing node and its limited computing power, this paper proposes a two-way identity authentication protocol based on elliptic curve. This scheme can authenticate the identity of both sides of the sensing nodes. The amount of key information needed for encryption and decryption is small, and there is no key negotiation problem. Subsequently, in order to solve the problem of authentication delay and energy consumption, based on two-way identity authentication protocol, the cluster head nodes batch identity authentication mechanism for sensing nodes in the same group is proposed. This mechanism can locate the suspicious nodes quickly and identify the untrusted nodes in time. The security analysis shows that the mechanism is correct, anonymous, and irresistible, and can effectively prevent malicious nodes from stealing and tampering with sensing data.
Key Words: Internet of Things; identity authentication; bi-directional identity authentication; batch authentication
0 引言
物聯網在融合射頻識別手段、無線通信網絡、傳感器等感知識別技術基礎上,依托互聯網向物理世界延伸與拓展[1]。信息化時代,無線射頻識別和傳感器網絡技術應運而生,無形地嵌入到我們的生活環境。物聯網并不是抽象的概念,其應用場景涉及衣食住行諸多方面,從駕駛方式、購物方式,甚至居家的能源獲取方式及電器使用過程,物聯網都能創造越來越便捷與高效的生活[2]。
物聯網中有數量眾多的異構感知網,存在嚴重和復雜的潛在威脅與攻擊[3-4]。首先,感知節點可能會部署在無人監控區域,攻擊者可輕易接觸到這些設備進行破壞;其次,感知節點供電電池一般容量不大,相應安全協議設計需考慮能耗問題。感知節點攻擊種類繁多,包括重放攻擊、身份偽造或假冒攻擊、信號泄露與干擾等[5-6]。身份認證是物聯網安全第一道防線,是保障物聯網感知網絡安全的基石[7]。在感知節點接入網絡后,通過鑒別節點的真實身份,為節點可信接入網絡提供依據。通過有效的雙向身份認證協議,對入網節點身份進行可信認證,可確保每個接入到傳感器網絡的節點身份都是可信賴的。
傳統的身份認證技術分為基于生物特征的身份識別[8]、基于口令的身份識別[9-10]和基于密碼的身份識別3種技術。從安全與效率角度考慮,基于生物特征和基于口令的身份認證技術一般使用在規模大、種類繁雜、動態適應性差的感知網絡。從密碼學角度針對物聯網感知節點的身份認證方案較多。文獻[11]提出一種適用于無線傳感網絡接入節點的雙向身份認證方案。該模型采用對稱加密方式,在客戶端與服務端兩側預先放置具有節點標識的密鑰池,通過認證密鑰生成算法認證雙方身份的可靠性。實驗表明該模型算法較簡單,適合計算資源有限的傳感節點,但在安全性方面有待進一步提高。基于物聯網設備應用環境惡劣、更新困難、存儲資源和計算資源受限等問題,文獻[12]從物聯網設備和物聯網用戶兩方面考慮可信身份認證與管理機制,以保證認證信息的安全性。從使用證書、密鑰更新、離線認證、管理中心依賴度、可用性的角度比較CA PKI、IBC 和CLA 三種認證技術。文獻[13]從安全性、隱私性、保密性方面分析各種認證方案,通過多標準分類比較現有認證協議的優缺點。針對物聯網異構網絡和不同終端系統,文獻[14]提出交互式密鑰管理協議與非交互式密鑰管理協議,使通信開銷最小,描述了基于票根的認證過程與會員密鑰重建兩個步驟,進行相應的安全分析。該方案具有良好的健壯性,可抵抗多種類型攻擊。但該方案計算過于復雜,不適合計算資源有限的感知節點。針對物聯網實體異質性、潛在資源受限、自主性等特點,文獻[15]提出一種零知識和基于身份認證的集成密鑰交換新方法,實驗表明該方法適用于資源受限設備,可抵抗中間人攻擊,效率較高、代價較小,但是身份認證執行過程過于復雜,還需進一步優化。
由于感知節點高度集成、計算能力有限且易受攻擊,以上方案在能耗、復雜度、安全性方面都不能滿足物聯網感知節點安全需要。針對目前感知網絡模型動態適應性差、應對安全威脅能力單一等特點,本文從感知節點安全性需求出發,提出一種基于橢圓曲線的物聯網雙向身份認證協議,對物聯網感知節點身份認證機制進行深入研究,解決認證協議過于復雜、通信開銷大、安全性不高等問題。
1 網絡模型
假設有一動態變化的大規模感知網絡模型,該感知網絡由不同感知群體構成,每個群體稱為一個簇,每個簇有一個管理者簇頭節點,結構如圖1所示。其感知網絡在初始階段安全可信且感知節點可信,所有傳感節點在計算能力、資源、存儲能力方面受限。感知網絡中感知節點計算能力不同、存儲能力不同,節點承擔的任務也不同。根據感知網絡節點承擔任務類型不同,將節點分為普通節點、簇頭節點和數據匯聚節點。在感知網絡中,通常可信度較高、計算能力較強的節點被選作簇頭節點。簇頭節點不是一成不變的,隨著節點可信度的變化也會相應變化。簇頭節點在存儲與計算能力方面遠高于普通節點,在感知網絡中承擔的責任也遠大于普通節點。普通節點主要負責物聯網內感知數據的采集、傳輸、轉發,簇頭節點主要對同一簇內節點進行身份認證,以及對來自普通節點感知的數據進行接收及轉發,數據匯聚節點主要對來自簇頭節點的感知數據接收及轉發。
2 認證方案
為抵制惡意節點攻擊,每個感知節點在感知網絡中認證相應的權限信息。感知節點必須在感知網絡下進行身份認證,沒有進行身份認證的感知節點無法進行節點間的感知數據傳輸。感知網絡中節點是隨機部署的,普通節點需要對簇頭節點進行身份認證,同樣,簇頭節點也需要對普通節點進行身份認證。
假設在傳感網絡投入使用之前,所有基本運算函數和橢圓曲線計算都需要提前寫入物聯網感知網絡的傳感節點中。初始狀態下存在安全通道,簇頭節點和普通節點可以進行初始參數交換。本文提出一種基于橢圓曲線的雙向身份認證協議,將數字簽名方案與動態身份認證方案相結合,實現簇頭節點與普通節點間雙向身份認證。該認證協議由系統初始化、簽名產生、單向簽名認證、雙向身份認證、批身份認證、可疑節點追蹤6個部分組成。
假設某一區域內感知網絡有無數個簇,選定其中一個簇,簇中有n個普通節點[{α1,α2,...,αn}]和簇頭節點[απ],[αi]是以[απ]為中心組成的簇中一個普通節點。初始狀態下,簇頭節點[απ]和普通節點[αi]間存在安全通道,可以進行數據交互。其中,下標[m]是與普通節點相關的參數,下標n是與簇頭節點相關的參數。表1為此方案中用到的相關符號。
2.1 系統初始化
假設[q]是橢圓曲線的生成元,[q]是[P]的素數階。首先,普通節點[αi]通過密鑰生成器選擇隨機數[Sm∈Z?]作為私鑰,公開密鑰為[Qm=SmP]。簇頭節點[απ]通過密鑰生成器選擇隨機數[Sn∈Z?]作為私鑰,簇內公開密鑰為[Qn=SnP];然后,簇頭節點[απ]隨機選擇[H1{0,1}?→G],[H2{0,1}?→G]兩個散列函數。普通節點[αi]和簇頭節點[απ]通過安全通道進行初始參數[{H1,H2,q,p}]交換,加載公共參數。普通節點[αi]將其基礎身份信息[{IDm,Qm}]通過安全通道發送給簇頭節點。簇頭節點采用預認證方式對感知節點進行時間和身份信息認證。感知節點權限受時間因子T控制,若感知節點認證超過其時效期則預認證失敗;若身份序列不符合預期序列則預認證失敗。預認證成功后,簇頭節點[απ]計算如下:
其中[Kn∈Z?]是簇頭節點[απ]選取的隨機數。在簇頭節點和普通節點部署之前,完成公共參數初始化及初始參數計算。
2.2 簽名
簇頭節點[απ]將[{N,Rn,MIDn,Qn}]發送給普通節點[αi],其中[N]為簇號,[Qn]為簇頭節點公鑰。基于身份信息[IDm]和當前時間戳[Ta]、普通節點[αi]計算如下:
2.3 單向簽名認證
在簇頭節點收到普通節點簽名[{βm,γm}]后,根據[H2(Rn,Qm)]和[βm]計算得到上一時間的時間戳[Ta=βm⊕H2(Rn,Qm)],簇頭節點將當前時刻的時間戳[Tb]與上一時刻比較,判斷[Tb-Ta≤Δt]是否成立, [Δt]為允許的時間遲延。若[Tb-Ta≤Δt]不成立,則認為是惡意節點將很久以前傳過的信息重新攻擊,該節點身份認證失敗。隨后,判斷:
是否成立,以驗證簽名是否有效。若等式成立,認證通過;若等式不成立,認證失敗。因為:
2.4 雙向身份認證
由于感知網絡的特殊性,當簇頭節點完成對普通節點身份認證后,普通節點需要對簇頭節點[απ]進行身份認證。同理,在初始階段,簇頭節點[απ]將其基礎身份信息[{IDn,Qn}]通過安全密道發送給普通節點[αi],普通節點[αi]計算如下:
其中,[Km∈Z?]是普通節點[αi]選取的隨機數。隨后,普通節點[αi]將[{Rm,MIDm,Qm}]發送給簇頭節點[απ],其中,[Qm]為普通節點公鑰。然后,基于身份信息[IDn]和當前時間戳[Ta],簇頭節點[αi]計算如下:
基于身份信息[IDn]的簇頭節點簽名為[{βn,γn}],將其發送給普通節點。在簇頭節點收到來自普通節點的簽名[{βn,γn}]后,根據[H2(Rm,Qn)]和[βn]計算可得上一時間時間戳[Ta=βn⊕H2(Rm,Qn)],簇頭節點將當前的時間戳[Tb]與上一時刻相比較,判斷[Tb-Ta≤Δt]是否成立, [Δt]為允許的時間遲延。若[Tb-Ta≤Δt]不成立,則認為是很久以前傳過的信息,節點身份認證失敗。隨后,判斷以下等式是否成立:
若等式成立,則物聯網環境下的感知節點和簇頭節點雙方身份認證成功;若等式不成立,則雙方身份認證失敗。
2.5 批身份認證
物聯網區域內感知節點數量眾多,且感知網絡規模大、種類繁雜。若同一個簇中多個普通節點同時向簇頭節點發起身份認證請求,且所有請求時間都相同,則會造成請求攻擊崩塌,從而對物聯網環境下的感知節點甚至感知網絡造成嚴重威脅。為解決認證延遲與能量消耗問題,需研究簇頭節點對同一群組內感知節點的批身份認證。狀態初始化、簽名產生與單向身份認證過程相同,當簇頭節點來自同一群組內k個普通節點[{α1,α2,...,αk}]的簽名消息[{γ1,γ2,...,γk}]時,需同時對這k個消息進行簽名認證。因為:
簇頭節點判斷以下等式是否成立:
若成立,則簇頭節點對多個節點批身份認證成功;若不成立,則簇頭節點對多個節點批身份認證失敗。其中的不可疑節點采用二分搜索將簽名進行切割,需要找到可疑節點位置,及時從系統中剔除身份可疑的節點。
2.6 可疑節點追蹤
假設節點身份認證不通過,則采用二分搜索對[{γ1,γ2,...,γk}]進行切割,找到可疑節點位置及身份認證失敗的節點。根據初始化系統參數,找到對應的ID身份信息,實現可疑節點位置追蹤。對此節點再進行一次身份認證,若不通過,則從系統中去除這個節點,同時禁止加入感知網絡。對認證成功的節點,感知節點可使用相應的權限,包括一定區域內傳輸、轉發、儲存數據。
3 安全性分析
針對物聯網身份驗證面臨的安全問題,將本文協議與Gandino[16]和He[17]提出的物聯網安全協議比較并進行安全性分析。表2為安全性比較情況,其中Yes表示符合安全,No表示不符合安全。
本協議假設哈希函數和離散對數數學問題是難解的。針對感知網絡的通信環境,本文提出的身份認證協議需要滿足正確性、不可偽造性、抗重放攻擊和匿名性。下面對這4個特性進行分析,并給出證明。
3.1 正確性分析
在簇頭節點對普通節點的單向認證過程中,如果感知節點能正確地執行簽名協議,那么[γnP=H2(Rm,Qn,IDn)Qn+] [Rm+H1(Qn,Rm)Qm]就可作為判斷認證成功的標準。
3.2 不可偽造性分析
感知網絡中感知節點選取一個隨機數作為私鑰,本文采用哈希函數與隨機數選取方法,使簇頭節點和感知節點之間傳遞的信息不斷變化,使攻擊者難以通過竊取的方式偽造身份認證。同時,由于哈希函數的單向性與強碰撞性,無法通過哈希函數逆向得到簽名內容。對給定的[Qn=SnP],[Sn∈Z?],[P]是橢圓曲線的生成元,不能通過[Qn=SnP]得到[Sn]。因此,外部攻擊節點無法得到其它節點私鑰,經過簽名的哈希函數得到進一步保護,本協議不可偽造性得證。
3.3 抗重放攻擊分析
在感知節點與簇頭節點雙向認證中,采用時間戳方式抵抗攻擊。當感知節點對身份信息進行簽名時,獲取當前時刻的時間戳[Ta]。當簇頭節點對身份信息進行認證時,根據[H2(Rn,Qm)]與[βm]可計算得到在上一時間的時間戳。簇頭節點將當前時刻的時間戳[Tb]與上一時刻比較,[Ta=βm⊕H2(Rn,Qm)],判斷[Tb-Ta≤Δt]是否成立,[Δt]是允許的時間遲延。若成立則進行后續操作,若[Tb-Ta≤Δt]不成立則認為是很久以前傳過的信息,為惡意節點重放攻擊,節點身份認證失敗,因此可知本協議能抵御重放攻擊。
3.4 匿名性分析
在感知節點與簇頭節點認證過程中,許多驗證消息是通過竊聽獲取的,因此認證過程的匿名性分析尤為重要。
假設在傳輸過程中,惡意用戶欲通過竊取[{Rm,MIDm,] [Qm}]進行解析獲得感知節點身份信息,但[Rm=KmP],[Qm=SmP],[MIDm=Km+H1(Qn,Rm)Smmodq]中使用哈希函數的單向性與隨機數,攻擊者無法從以上幾個參數解析出用戶ID,因此協議的匿名性得到驗證。
4 結語
針對現有身份認證方案缺乏普通節點對簇頭節點的雙向可信認證機制,簇頭節點易成為整個物聯網系統安全隱患問題,本文從感知節點安全性需求出發,提出一種基于橢圓曲線的物聯網雙向身份鑒別協議,實現了節點間的雙向認證,改善了以往認證協議過于復雜、通信開銷大、安全性差等問題。針對物聯網身份認證面臨的安全問題,本文對協議進行了安全性分析并與相關協議進行比較。分析表明,本方案具有正確性、匿名性、不可抵抗性,可有效識別可疑節點,阻止惡意節點竊取、篡改感知數據。但本文只考慮了集中式網絡場景,后續將對分布式網絡下高效安全的雙向身份認證機制進行研究。
參考文獻:
[1] PAWAR A B,GHUMBRE S. A survey on IoT applications, security challenges and counter measures[C].? International Conference on Computing, 2017.
[2] XU T, WENDTJ B,POTKONJAKM.Security of IoT systems: design challenges and opportunities[C].? International Conference on Computer-Aided Design (ICCAD), 2014:417-423.
[3] 楊光, 耿貴寧, 都婧,等.? 物聯網安全威脅與措施[J].? 清華大學學報(自然科學版), 2011,51(10):107-112.
[4] 楊庚, 許建, 陳偉, 等.? 物聯網安全特征與關鍵技術[J].? 南京郵電大學學報(自然科學版), 2010,30(4):20-29.
[5] ANH N D, RONALD J,PANGKAJ P. Security challenges in IoT development: a software engineering perspective[C].? The XP2017 Scientific Workshops, 2017.
[6] SHA K W,WEI W, YANG A T, et al. On security challenges and open issues in internet of things[J].? Future Generation Computer Systems, 2018,83(6):326-377.
[7] 武傳坤, 張磊, 李江力.? 物聯網設備信任體系架構與輕量級身份認證方案設計[J].? 信息網絡安全, 2017,16(9):24-28.
[8] 龍威, 孫冬梅.? 生物特征身份認證系統的安全性和用戶隱私性研究[J].? 保密科學技術, 2014,13(9):29-35.
[9] 王崇霞, 朱艷琴.? 一種動態口令身份認證協議的設計與研究[J].? 計算機工程與應用, 2010,21(18):75-77.
[10] 陳懇, 彭代淵, 魯榮波.? 一種基于ECC的一次性口令身份認證方案[J].? 計算機技術與發展, 2005,14(5):41-43.
[11] HAJJMEL, CHAMOUNM, FADLALLAHA,etal. Analysis of authentication techniques in internet of things (IoT)[C].? 2017 1st Cyber Security in Networking Conference (CSNet),2017:1-3.
[12] LI Y, DU L P, ZHAO G F.? A lightweight identity-based authentication protocol[C].? Signal Processing:Communication and Computing (ICSPCC),2013 IEEE International Conference on IEEE, 2013.
[13] 郭茂文. 物聯網身份認證解決方案探討[J]. 廣東通信技術, 2019, 39(2):28-32.
[14] CELIA, YICG. Authenticated key management protocols for internet of things[C]. San Francisco: 2018 IEEE International Congress on Internet of Things (ICIOT), 2018:126-129.
[15] SIMSEK E PRATHGEB. Zero-knowledge and identity-based authentication and key exchange for internet of things[C]. Limerick, Ireland: 2019 IEEE 5th World Forum on Internet of Things (WF-IoT),2019:283-288.
[16] FILIPPO G,RENATO F,MAURIZIO R. A key distribution scheme for mobile wireless sensor networks: q-s-composite[J]. IEEE Transactions on Information Forensics & Security, 2017,12(1):34-47.
[17] HE D, ZHANG Y, CHEN J. Cryptanalysis and improvement of an anonymous authentication protocol for wireless access networks[J].? Wireless Personal Communications, 2014,74(2):229-243.
(責任編輯:杜能鋼)