張文麗 趙峰
摘要:針對RFID系統的實際安全需求,利用數學和密碼學技術方法,同時考慮交互認證協議的安全性,隱私性和有效性,對RFID系統認證協議進行研究,提出了一個RFID互認證協議。對其進行安全性及性能分析發現,該協議安全性能良好,功能全面,能夠保證內容隱私、防止位置跟蹤攻擊、抵抗重放攻擊、防止假冒攻擊,并且具有前向安全性。
關鍵詞:射頻識別; 安全; 穩私; 認證; 互認證
中圖分類號:TP391.4 文獻標識碼:A文章編號:2095-2163(2013)05-0091-03
0引言
射頻識別(Radio Frequency Identification)技術是一種非接觸的無線自動識別技術,主要由RFID標簽和讀寫器組成。電子標簽通過與讀寫器發生電磁耦合并獲得能量,將自身的數據信息傳遞給讀寫器,所交換數據自動傳送,系統無需任何物理接觸就可以完成對特定目標對象的自動識別,并可在各種惡劣的環境下工作,同時還對多個標簽進行數據交換,操作簡單快捷[1]。因而在上世紀末,RFID技術就已逐漸進入到企業應用領域。
盡管RFID技術比傳統的識別技術有著許多無法比擬的優點,但是,由于讀寫器和電子標簽之間的信息是通過無線射頻信號傳播的,所傳遞的這些數據信息完全暴露在外面,任何人通過一定手段都能夠得到這些信息,這樣就會使得一些比較敏感的信息可能發生泄漏,因而會導致其存在傳統識別技術并不曾面對的一些安全隱私方面的問題。
安全認證技術是解決RFID安全的關鍵之一。有了可靠的安全機制,就可以保證RFID標簽中的數據、信息不被竊取、干擾、更改等,RFID系統中的個人信息,甚至是軍事機密和商業機密才能不被人盜竊和利用。另外,由于電子標簽本身在處理能力、存儲空間、電源供給等方面的局限性,目前比較成熟的加密算法難以應用其中。因此,研究設計一種高效、安全、低成本的RFID安全認證協議具有重大的實用意義。
1相關工作
國內外專家針對RFID的安全問題提出了許多不同的對策,如電磁屏蔽方法,Kill命令機制,標簽阻塞器的方法,有源干擾的方法等物理方法[2]。但是,這些物理方法都使得標簽的利用率降低,成本增高,安全性也較差,甚至有可能涉及到法律問題。
物理安全機制主要用于低成本的RFID標簽中,但物理安全機制存在著種種缺陷,而密碼機制通過采用各種密碼算法來保護RFID系統的安全和隱私,其實現方法較為靈活,是目前的研究熱點。
由于標簽資源的有限性,傳統的密碼算法不能被運用在協議的認證過程中。研究者提出了不同的解決方案,Sarma等人在2003年提出了Hash-Lock協議[3],此方案不能防止位置跟蹤攻擊,還會遭受假冒和重放攻擊;為了在認證過程中避免信息的跟蹤,對Hash-Lock方法加以改進,就得到了隨機Hash-Lock協議[4];對其再改進,又得到了HSAP協議以及改進的協議IHSAP[5];Hash鏈方案[6]也是基于秘密共享的詢問—應答機制,且標簽具有自主更新ID的能力,但是Hash鏈協議只能對標簽身份進行單向認證,并且不能抵抗重放攻擊;另有基于雜湊的ID變化協議[2]、David的數字圖書館RFID協議[2]、分布式RFID詢問—響應協議等被提出[2]。
以上提出的協議中,存在著各種缺陷和漏洞,部分協議存在嚴重的安全隱患,無法真正實現低成本RFID系統的安全要求。所以,隨著研究的深入和應用的不斷推廣,迫切需要適用于不同應用領域的低成本RFID系統的安全認證協議。第5期張文麗,等:RFID雙向安全認證協議的設計及分析智能計算機與應用第3卷
2協議設計
以上所提出的大多數協議,僅僅是讀寫器對標簽的單向認證,使得合法的標簽能夠被讀寫器所處理,而在現實應用中,攻擊者常常假冒合法讀寫器來讀取標簽中的數據信息,以此來謀取非法利益,所以,標簽對于讀寫器的認證即顯得尤為重要。
因此,RFID安全認證協議的設計,就要求一方面能夠實現讀寫器對標簽的認證,同時還要能夠實現標簽對讀寫器的認證,這種雙向認證RFID的安全認證協議的安全性能才會更高。
下面,就提出一種雙向認證的RFID安全認證協議,該協議的認證過程如圖1所示。
2.1協議描述
初始狀態:先為每個標簽分配IDT值,為每個讀寫器分配IDR值,同時后臺數據庫應保存各個合法標簽的IDT值以及各個合法讀寫器的(IDR,H(IDR))數據對。
2.2認證過程
(1) 讀寫器以時間戳TS,作為認證請求并發送至標簽;
(2) 標簽判斷TS>TSlast是否成立,若成立,則將H(IDT‖TS)值發送給讀寫器,并置TSlast=TS;否則拒絕;
(3) 讀寫器根據自身IDR計算H(IDR),并把(H(IDT‖TS)),H(IDR),TS)值發送給數據庫;
(4)數據庫根據收到的TS,在IDT項目中計算并查詢是否存在滿足H(IDTk‖TS)=H(ITT‖TS)的記錄,若找到滿足等式的IDTk,則說明標簽合法;然后數據庫根據收到的H(IDR),并在(IDR,H(IDR))項目中查詢是否有相對應的H(IDR)值,若有則說明讀寫器合法,最后,可根據H(IDR)在(IDR,H(IDR))項目中得到讀寫器的IDR值;
(5) 數據庫計算出IDTIDRTS值,將此值發給讀寫器;
(6) 讀寫器根據自身IDR值可計算出IDTTS,然后計算H(IDTTS),并發給標簽;
(7) 標簽根據自身IDT、TS計算H*(IDTTS),比較H*(IDTTS)=H(IDTTS)是否成立,若成立,則標簽通過讀寫器的認證,而同時,讀寫器通過標簽的認證,從而標簽開鎖,并允許讀寫器讀取其信息;若不相等,則認為讀寫器為非法讀寫器,標簽不作任何回應。
雙向認證的RFID安全認證協議如圖1所示。
圖1 雙向認證的安全認證協議
Fig.1 Mutual authentication protocol of RFID3協議評價
3.1安全性分析
(1)保證隱私內容安全。只有授權的后臺數據庫和讀寫器才能夠訪問標簽的詳細信息,而所有信息均是利用Hash函數變換后進行傳遞的,Hash函數的單向性保證了標簽的內容是安全的;
(2) 防止位置跟蹤攻擊。在該協議中,在每次成功認證后,標簽都要更新其IDT值,在不同的通信時間,標簽的H(IDT‖TS)值都不同,攻擊者即使截獲這些信息,也不能夠據此確定標簽位置,因此可以防止位置信息被跟蹤;同時,在該協議中,時間戳TS防止了攻擊者持續發送同一個數的這樣的攻擊方式,若每次認證請求時時間戳TS都不同,則標簽的回應H(ID‖TS)信息都不同,從而攻擊者無法由此確定標簽所在的位置;
(3) 防止重放攻擊。在該協議中,標簽在每次完成成功認證過程后,要更新標簽的值,則每次通信中標簽的返回值都和上一次不同,所以攻擊者無法使用之前竊聽到的通信內容重放給讀寫器來欺騙后臺數據庫從而獲得認證;
(4) 防止假冒攻擊。加入了時間戳TS,標簽的回應信息為H(IDT‖TS),如果是非法標簽想冒充合法通過讀寫器的認證,而攻擊者無法通過截獲TS或H(IDT‖TS)得到H*(IDTTS)到和H(IDTTS), 所以,就無法通過讀寫器的認證;同樣,若是非法讀寫器想要冒充合法通過標簽的認證,也是要滿足H*(IDTTS)=H(IDTTS)這個等式,攻擊者根據竊聽等方式截獲的信息無法得到H*(IDTTS)和H(IDTTS),所以,非法讀寫器也就不能通過合法標簽的認證了;
(5) 具有前向安全性。在該協議中,如果一個攻擊者獲取了該標簽先前發出的信息H(IDT‖TS),那么攻擊者利用此次截獲的信息不能夠確定該標簽,也即攻擊者不能夠根據在本次通信中截取到的標簽的輸出H(IDT‖TS),然后通過某種推算,以此得出標簽所發送的歷史數據;
(6) 具有雙向認證功能。在該協議中,只有合法的標簽才能夠得到讀寫器的認證,而同樣,只有合法的讀寫器才能夠得到標簽的認證。在認證過程中,讀寫器收到標簽的回應信息H(IDT‖TS)后,將(H(IDT‖TS),H(IDR),TS)數據對發送至后臺數據庫,后臺數據庫根據收到的數據來驗證標簽以及讀寫器的合法性。若是非法標簽,在驗證過程中,后臺數據庫根據收到的TS,在IDT項目中計算并查詢是否存在滿足H(IDTk‖TS)=H(IDT‖TS)的記錄時,理論上是不會找到滿足等式的IDTk,從而非法標簽就不能繼續之后的認證過程;若是非法讀寫器,后臺數據庫根據收到的H(IDR)并在(IDR,H(IDR))項目中查詢是否有相對應的H(IDR)值時,理論上是不會找到滿足等式的H(IDR)來的,從而非法讀寫器就不能繼續之后的認證過程。只是當且僅當讀寫器和標簽同時合法時,才能互相通過認證。
以上對該協議的安全性進行了詳細分析,現將文中提到的部分協議的安全性進行比較。
3.2性能分析
由以上的分析可知,該協議有比較好的安全性能,RFID安全認證協議除了安全性能要得到保證以外,還要在計算時間和存儲容量方面進行考慮以降低標簽成本,從而降低RFID系統的成本。通過計算標簽、讀寫器和后臺數據庫在完成整個認證過程中所需要的計算時間和存儲空間來對協議進行評估。
為了方便起見,假設系統中標簽的數目為n,,L表示128個比特位,標簽和讀寫器的標識只有128bit,也就是1L。H代表進行Hash運算的次數,G代表生成隨機數的次數,T代表時間戳的生成次數,X表示進行異或運算的次數。
對于本文提到的部分安全認證協議,其時間復雜度和空間復雜度如表2所示。
從表2可看出,Hash-Lock協議、隨機Hash-Lock協議、以及HSAP協議都有n數量級以上的運算量,這使得計算量過大,對RFID系統的成本和運算速度都帶來了影響。表2文中部分協議的存儲空間和計算量比較
Tab.2 Comparison of capacity and computing with different authentication protocol
安全協議計算時間存儲容量標簽讀寫器后臺數據庫標簽讀寫器后臺數據庫Hash-Lock協議1H——2L—3nL隨機Hash-Lock協議1H+1G—nH1L—nLHSAP協議3H+1G—2H2L—4nLIHSAP協議2H+1X1T (2n+1)H+1X2L—2nL本文協議2H+1X1T+2H+1XnH+2X2L1L(n+2)L在本文提出的雙向認證協議中,標簽的存儲容量小,只需要2L,同時不需要隨機數產生器,所以計算時間不大,標簽成本大大降低,RFID系統成本也會因此而降低。
4結束語
本文提出了一種基于Hash函數的RFID安全認證協議,從安全性能,計算速度和存儲容量三方面考慮,本文提出的雙向認證的RFID安全認證協議更優于其他協議。首先,在安全性方面,該協議能夠較好地解決RFID系統中的安全隱私問題,通過對其進行安全性分析可知,該協議可以保證內容隱私、防止位置跟蹤攻擊、抵抗重放攻擊,防止假冒攻擊,具有前向安全性,并且具有雙向認證功能,這是協議最基本的要求,雖然這需要計算速度和存儲容量上的一點代價。但是與其他一些協議相比,該協議的計算量并不是太大,其次對存儲容量要求非常低,并且該協議是基于Hash函數的RFID安全認證協議,所以具有計算量小,成本低的特點,由此可知該協議是一種安全、高效、低成本的RFID安全認證協議。
參考文獻:
[1]鄧淼磊,馬建峰,周利華.RFID匿名認證協議的設計[J].通信學報,2009,30(7):20-26.
[2]周永彬,馮登國.RFID安全協議的設計與分析[J]. 計算機學報,2006,29(4):581-589.
[3]SARMA S E,WEIS S A, Engels D W.RFID systems and security and privacy implications[C]//Proceedings of the 4th International Workshop on Cryptographic Hardware and Embedded Systems.Berlin:Springer-Verlag,2003:454-469.
[4]WEIS S A, SARMA S E, RIVEST R L,et al. Security and privacy aspects of low-cost radio frequency identication systems[C]//Proceedings of the 1st Security in Pervasive Computing. Berlin:Springer-Verlag,2003:201-212.
[5]張文麗.RFID安全認證協議HSAP的分析及改進[J].智能計算機與應用,2012,2(5): 78-80.
[6]OHKUBO M,SUZUKI K,KINOSHITA S. Hash-chain based forward-secure privacy protection scheme for low-cost RFID [C]//Sendai:SCIS,2004:719-724.