摘 要: 對匿名RFID身份認證協議(ARAP)進行深入的分析,發現其存在無法抵抗假冒攻擊和閱讀器功能受限等方面的缺陷,提出相應的改進方案,并對改進后的協議進行全面的安全性能分析。結果表明,改進后的ARAP協議能夠抵抗假冒、拒絕服務等諸多攻擊,安全性能有所增強,且協議執行的計算量明顯減少,具有較高的可行性。
關鍵詞: 無線射頻識別; ARAP協議; 身份認證; 抵抗假冒攻擊
中圖分類號: TN915?34 文獻標識碼: A 文章編號: 1004?373X(2016)16?0068?03
Abstract: The anonymous RFID authentication protocol (ARAP) is analyzed, and its defects that it cannot resist counterfeiting attack and overcome limitation of reader function are found. The corresponding improvement scheme is proposed. The comprehensive analysis on security performance of the improved scheme is carried out. The result shows that the improved ARAP can resist attacks such as counterfeiting, denial of service and so on, its security performance is enhanced, and the calculated amount of the protocol implementation is significantly reduced. Therefore, the improved ARAP has high feasibility.
Keywords: RFID; ARAP protocol; identity authentication; resistance to counterfeiting attack
隨著電子信息技術的發展,無線射頻識別(Radio Frequency Identification,RFID)的應用日趨廣泛。RFID是一種非接觸式的自動識別技術,具有使用時間長、讀取精度高、操作便捷等優點,被廣泛地應用于工業自動化、交通控制管理、物流管理[1]和生產管理[2]等眾多領域。與此相伴的是RFID系統的安全與隱私問題日益突出,比如偽造標簽、非法訪問和信息泄露等。身份認證是保證信息安全的關鍵技術之一,通過身份認證來確保標簽和閱讀器之間數據傳輸的安全性,運用軟件機制增強RFID系統的安全性能。由于RFID系統中標簽的存儲空間和計算能力有限,難以進行復雜的數據加、解密運算,因此輕量級的RFID身份認證協議成為當前研究的熱點之一。現有的輕量級RFID身份認證協議多數基于哈希函數,其中比較典型的有:哈希鎖協議、隨機哈希鎖協議和哈希鏈協議等[3],這幾個協議都存在無法保障用戶隱私、標簽容易追蹤等安全隱患。對此,Shen等人提出了一種基于匿名機制的RFID身份認證協議ARAP(Anonymous RFID Authentication Protocol)[4],該協議實現了標簽和閱讀器的雙向認證,并通過使用假名來保護用戶的隱私,防止標簽被攻擊者跟蹤。但ARAP協議也存在異或不當而被攻擊者假冒的安全隱患[5?6]。本文對ARAP協議進行深入的分析,指出其存在的缺陷,提出改進的方案,并對改進后的協議進行安全性能分析。
1 ARAP協議
在ARAP協議中,為了防止身份泄露,標簽使用假名防止被跟蹤,為標簽提供隱私性保護,實現了標簽和讀寫器的雙向認證。假名P表示標簽T的身份,且協議每成功執行一次,標簽T就更換假名,以防止攻擊者對標簽進行跟蹤攻擊。每個標簽T都與后端數據庫DB共享一個初始秘密xT ,DB能夠根據T的假名P遍歷出初始共享的秘密xT,實現對T的身份認證。
ARAP協議的具體認證過程如圖1所示,閱讀器R和標簽T都擁有一個偽隨機數發生器,標簽可執行Hash計算和異或操作:
(1) R[→]T:R向T發送認證請求Query和隨機數rR;
(2) T[→]R:T計算S=h(P⊕xT)和M=h(rT⊕rA⊕P)⊕S,并向R發送消息{rT,P,M}作為應答,其中xT是T與R互相共享的秘密;
(3) R[→]DB:R向DB發送消息{rT,rR,P,M};
(4) DB[→]R:DB收到消息后,計算S′=h(P⊕xT)和M′=h(rT⊕rA⊕P)⊕S′,驗證M′與M是否相等。若相等,則通過認證,DB計算N′=h(M′⊕S′)發送給R。否則,認證失敗,協議終止。
(5) R[→]T:R收到N′后轉發給T,T計算N=h(M⊕S),驗證N′與N是否相等,若相等,則R通過認證,T更新假名P,否則認證失敗,協議終止。
ARAP協議使用匿名機制,能夠較好地保證標簽用戶的真實身份、當前位置等敏感信息,實現了雙向認證,且在協議的執行過程中,標簽和數據庫的信息同步更新,可以抵抗去同步攻擊。
2 ARAP協議的缺陷分析
2.1 無法抵抗假冒攻擊
從ARAP協議執行過程中可以看到rR,rT,P,M都是以明文的形式通過不安全信道傳送,攻擊者容易通過竊聽攔截的方式獲得rR,rT,P,M消息,進而可以假冒閱讀器R進行攻擊,具體過程如下:
(1) 攻擊者A生成一個偽隨機數rA,并假冒閱讀器R向標簽T發送認證請求Query,認證請求中包含rA。
(2) 標簽T接收到認證請求Query后,生成一個隨機數rT,并計算S=h(P⊕xT)和M=h(rT⊕rA⊕P)⊕S,然后標簽T將消息{rT,P,M}發送給攻擊者A。
(3) A收到消息{rT,P,M}后,可直接計算出S=M⊕h(rT⊕rA⊕P)=h(rT⊕rA⊕P)⊕S⊕h(rT⊕rA⊕P) (根據異或性質:a⊕a=0,a⊕0=a)。這樣攻擊者A可以計算出N′A = h(M⊕S),并將N′發送給T。
(4) 標簽T收到N′后,計算 N=h(M⊕S),由步驟(3)可知N=N′,則標簽T相信A是一個合法的閱讀器,并更新假名P。
通過上述步驟可知,攻擊者A通過了標簽的身份認證,偽裝成一個合法的閱讀器,成功進行假冒攻擊。
2.2 忽略了閱讀器的計算和存儲能力
在ARAP協議的執行過程中,閱讀器只起到了在標簽和后端數據庫之間進行數據傳遞的作用,沒有執行任何計算。事實上,相對于標簽T,閱讀器R具有相對強大的計算和存儲能力。因此可以利用閱讀器的計算能力,對標簽傳輸的信息先進行第一道過濾處理,既可以防止假冒攻擊,也可以減輕后端數據庫的計算量。
3 對ARAP協議的改進
ARAP協議無法抵抗假冒攻擊的根本原因是認證過程中對異或運算的使用不當,對此,參考分布式RFID詢問?應答協議等RFID身份認證過程[7?9],對部分異或運算和驗證操作進行修改,將標簽用戶的秘密隱藏入哈希函數中,使攻擊者無法通過異或運算來假冒閱讀器實施假冒攻擊。針對ARAP協議執行過程中忽略閱讀器的計算和存儲能力這一缺陷,可以結合連續會話[10]的操作模式,將前次會話的信息緩存在閱讀器中,讓閱讀器通過對比兩次會話的內容是否相同,來對消息進行第一次過濾,以減少后端數據的計算量以及對后端數據庫的重放攻擊。改進后的ARAP協議如下:
首先介紹協議中使用的符號及其含義,如表1所示。
(1) Challenge:閱讀器R生成一個偽隨機數rR,向標簽T發送Query認證請求,認證請求中包含偽隨機數rR。
(2) T?R Response:T收到Query后生成一個偽隨機數rT,計算S=h(P⊕xT)和M=h(rR‖rT‖P‖S),其中xT是T和DB共享的秘密,P是標簽的假名。T將消息{rT,P,M}發送給R。
(3) R?DB Response:R收到T的消息{rT,P,M}后,先根據上一次緩存的M′來判斷M′與M是否相等,若M′=M,則過濾掉該標簽以避免攻擊者對后端服務器的重放攻擊,降低后端服務器的計算負載。若M′≠M,則R將{rR,rT,P,M}發送給DB。
(4) DB?R Reply:DB收到R的消息后,先查找事先與標簽匿名P所對應的共享秘密xT,若無記錄,則認證失敗。若有記錄,DB計算S′=h(P⊕xT),M′= h(rR‖rT‖P‖S′),如果M=M′,則DB信任T的合法性,認證成功,DB計算N′=h(M′‖S′),并將N′發送給R;若M≠M′,則T不是合法標簽,認證失敗。
(5) R?T Reply:R將消息N′發送給T,T計算N=h(M‖S),并驗證N和N′是否相等,如果N=N′,則T信任R的合法性,并更新假名P,如果N≠N′,認證失敗,協議終止。
4 改進后協議的安全和性能分析
4.1 改進后協議的安全性分析
在安全性分析時,依據如下三個基本假設[11]:攻擊者都可以竊聽并操作公共信道上的信息;攻擊者若通過某種手段獲得用戶的智能卡,則可以得到其中存儲的秘密信息;用戶所采用的密碼是可記憶的,其信息熵不高。現選取四種較常見的攻擊對改進后的ARAP協議進行安全性分析:
(1) 抗重放攻擊。重放攻擊是指攻擊者截取以前成功認證的消息,重新發送給目標,企圖繞過認證,包括閱讀器的重放攻擊和標簽的重放攻擊。若攻擊者偽裝成合法閱讀器,向標簽發送先前監聽到的協議流程中的信息N′=h(M′‖P‖xT)和N′⊕P′。由于在協議的每次執行中所使用的隨機數rR、rT和假名P都會更新,所以標簽此時不會響應,攻擊者無法通過重放攻擊來偽裝成閱讀器。若攻擊者偽裝成一個合法標簽,發送前次通信監聽到的標簽認證信息{rT,P,M}給閱讀器,其中M=h(rR‖rT‖P‖xT)。閱讀器對從標簽收到的信息進行判斷,若發現本次收到的消息M與上次相同,則直接過濾掉該標簽。因此攻擊者無法通過重放攻擊來偽裝成合法標簽。
(2) 抗假冒攻擊。在改進后的ARAP協議中,標簽和后端數據庫事先擁有配對參數,只有擁有共享秘密xT才能通過相互驗證。且xT通過異或運算并隱藏入Hash函數中,攻擊者無法獲取,故改進后的協議可以有效防止假冒攻擊。
(3) 抗位置跟蹤攻擊。改進后的ARAP協議保留了原協議匿名性的特點,每個標簽都有大量的假名,且對應于協議的每一次成功執行,標簽會更換假名。即使攻擊者獲取大量的通信數據來跟蹤標簽,也無法確定標簽的真實身份,因此可抵抗位置跟蹤攻擊。
(4) 抗拒絕服務攻擊。原ARAP協議在一些特殊情況下易遭受拒絕服務攻擊。比如,后端數據庫鏈接斷開、閱讀器斷電等,將使得后端數據庫無法及時更新數據,造成認證失敗;攻擊者通過截取某些通信數據等手段,刻意使標簽和閱讀器不同時更新共享的數據,造成下一次通信時雙方共享的數據不相同,致使合法的標簽認證失敗。在改進后的ARAP協議中,后端數據庫存有和標簽對應的所有假名,只有標簽需要更新假名,因而不存在需要雙方同時更新的要求,能夠全面抵抗拒絕服務攻擊。如表2所示。
由表2可知,改進后的ARAP協議較好地抵抗針對RFID系統的各種攻擊,且在防拒絕服務方面的性能比原協議更強。
4.2 改進后協議的性能分析
在RFID系統中,標簽的存儲空間和計算能力有限,認證協議在解決安全性問題的同時,也要盡可能減少標簽的計算量和存儲容量,以降低標簽的成本。改進后的ARAP協議主要用到哈希運算、異或運算、隨機數運算,是一種中量級的身份認證協議。在此對典型的RFID身份認證協議進行對比,比較各協議中標簽、閱讀器和后端數據庫的計算量,結果如表3所示。其中,H表示Hash運算的次數,X表示異或運算的次數,R表示產生隨機數的次數,N表示數據庫存儲的標簽數量,j表示Hash鏈的長度。
由表2和表3可見,本文提出的ARAP協議改進方案,在安全性能進一步增強的同時,協議執行過程中的異或次數和哈希函數的使用次數都明顯減少,降低了原有協議的計算量。
5 結 語
本文對ARAP協議進行了深入的分析,發現其存在的安全缺陷,對此提出了改進方案,并對改進后的協議進行了安全性能分析。結果表明,改進后的ARAP協議能夠達到預期的認證目標,能夠抵抗假冒、拒絕服務等諸多攻擊。在安全性能有所增強的同時,協議執行的計算量明顯減少,具有較高的可行性。
參考文獻
[1] 郭偉男.射頻識別技術理論及其在物流領域的應用研究[J].現代電子技術,2014,37(7):129?132.
[2] 周曉紅,李娟娟,王曉云.基于RFID和視頻人像識別技術的門禁式定員監控系統的設計[J].現代電子技術,2015,38(16):73?75.
[3] 陸桑璐,謝磊.射頻識別技術:原理、協議及系統設計[M].北京:科學出版社,2014.
[4] SHEN J, CHOI D, MOH S, et al. A novel anonymous RFID authentication protocol providing strong privacy and security [C]// Proceedings of 2010 International Conference on Multimedia Information Networking and Security. [S.l. : s.n.], 2010: 584?588.
[5] 田蕓,陳恭亮,李建華.針對RFID身份認證協議:ARAP協議的攻擊及改進[J].中國電子科學研究院學報,2011,6(6):556?560.
[6] 李景峰,郭衛鋒.對ARAP認證協議的攻擊及其改進[J].武漢大學學報(理學版),2012,58(6):526?530.
[7] RHEE K, KWAK J, KIM S, WON D, et al. Challenge?response based RFID authentication protocol for distributed database environment [C]// Proceedings of the 2nd International Conference on Security in Pervasive Computing (SPC 2005). Berlin: Springer?Verlag, 2005: 70?84.
[8] 張兵,馬新新,秦志光.輕量級RFID雙向認證協議設計與分析[J].電子科技大學學報,2013,42(3):425?430.
[9] 王龍,彭設強.RFID多方認證協議及其安全性分析[J].計算機應用,2013,33(z2):136?138.
[10] 丁振華,李錦濤,馮波.基于Hash函數的RFID安全認證協議研究[J].計算機研究與發展,2009,46(4):583?592.
[11] WANG D, MA C G, GU D L, et al. Cryptanalysis of two dynamic ID?based remote user authentication schemes for multi?server architecture [J]. Lecture notes in computer science, 2012, 7645: 462?475.