◆鄭欣
一種改進的RFID雙向認證協議
◆鄭欣
(南京審計大學金審學院信息科學與工程學院 江蘇 210046)
通過研究RFID認證協議,發現了一些安全問題,對此提出了一種基于hash函數的雙向認證協議。該協議通過隨機數和秘密值的計算來完成數據庫、標簽和讀卡器之間的認證,有效防止了竊聽、重放攻擊、假冒攻擊等常見攻擊。
RFID;Hash函數;安全分析;Hash-lock
射頻識別(RFID)技術[1]又稱為“電子標簽”,是一種非接觸式的自動識別技術,能夠通過射頻信號來自動的識別目標并獲取相應的重要數據。RFID技術目前運用非常廣泛,在對RFID協議進行研究時發現還是存在一些安全問題的。所以,本文通過分析總結目前各類RFID認證協議,對比之間的執行過程及優缺點,在此基礎上提出了一種改進的基于Hash函數的 RFID雙向認證協議。
(1)讀卡器:讀寫標簽信息的手持式或固定設備[2]。
(2)電子標簽:由耦合元件及芯片組成,每個標簽都具有一個不可修改的唯一標識符—UID。用戶數據存放于用戶數據區(DATA)中,可以進行讀寫、增加等操作[2]。
(3)天線:主要用于標簽和讀卡器之間傳遞射頻信號的設備[2]。
(4)應用系統:集中統計和分析讀卡器轉發的所有電子標簽信息,通過安全信道反饋給讀卡器[6]。
RFID技術為人們生活提供了便利,同時由于RFID系統對應用的完全開放為系統帶來了諸多安全隱患。一般來說,RFID受到的安全威脅主要分為物理環境威脅和黑客攻擊威脅。①物理環境威脅:如電磁干擾、設備妨礙等;②黑客攻擊威脅:如假冒攻擊、竊聽攻擊、跟蹤攻擊等。
Hash-lock協議[9]是Sarma等人提出的一種安全協議。其協議使用密鑰key的hash函數meta ID來代替標簽的真實ID。
如圖1所示:

圖1 Hash-lock協議認證過程
Hash-lock協議認證過程如下:
(1)讀卡器向標簽發送認證請求。
(2)標簽把自身的meta ID發送給讀卡器,meta ID=H(key),H(*)表示哈希函數。
(3)讀卡器再把meta ID發送給數據庫。
(4)數據庫搜索meta ID對應的key和ID,如果找到key和ID則表示標簽過來的信息認證成功,將key和ID發送給讀卡器,如果找不到則表示認證失敗。
(5)讀卡器把收到的key和ID后,保存ID,把key發送給標簽。標簽收到key以后,計算H(key)是否等于自身的meta ID,如果相同表示數據庫過來的認證成功,把自身ID發送給讀卡器,如果不相同則認證失敗。
(6)標簽把自身的ID發送給讀卡器,讀卡器把2個ID進行比較,如果相同則認證成功,不相同認證失敗。
Hash-lock協議的優點:協議的硬件電路相對來說比較簡單,適合低功耗標簽使用。
Hash-lock協議的缺點[4]:為了隱藏標簽ID,協議使用meta ID代替真實的標簽ID,但是由于以明文形式傳送metaID的哈希值,并且哈希值一直保持不變,因此在認證的過程中還是容易遭受到假冒攻擊、竊聽、重放以及位置跟蹤等多種威脅。
針對Hash-lock協議存在的一些安全問題,由Weis等人提出了隨機hash-Lock協議[10],該協議通過添加隨機數的方法改進了Hash-lock協議,如圖2所示。

圖2 隨機Hash-lock協議認證過程
隨機Hash-lock協議的認證過程如下:
(1)讀卡器向標簽發送認證請求。
(2)標簽收到請求后產生一個隨機數R,通過哈希算法算出一個值H(IDk|| R),IDk為標簽的標識,標簽把R和hash的值一起發給讀卡器。
(3)讀卡器向數據庫索要所有的標簽標識(ID1,ID2,ID3,…,IDn)。J表示(1,2,3,…,n)中的某一個ID標識。
(4)數據庫將所有的標簽標識發給讀卡器。讀卡器通過哈希算法計算出H(IDj|| R),如果其值等于H(IDk|| R),認證成功。
(5)如果認證成功,讀卡器會把IDj發送給標簽。
(6)標簽對比IDj和IDk是否相同,相同認證成功,不相同認證失敗。
隨機Hash-lock協議存在的安全問題:在協議的認證過程中可以發現在第⑤步中傳遞ID時仍然是以明文形式進行了傳遞,攻擊者同樣也可以輕易獲取到標簽的真實數據,同時在協議第④步中,僅僅針對一個標簽的認證,后端數據庫會將所有的標簽ID全部發給讀卡器,一方面加大了數據庫與讀卡器之間的通信開銷,另一方面也增加了讀卡器搜索驗證的計算開銷,對于大量標簽的RFID協議來說顯然不太適用[5]。
Hash鏈協議[11]是由NTT提出的,是對Hash-lock協議進行了改進,是基于共享密鑰的詢問應答協議。過程如圖3所示。
Hash鏈協議引入了標簽ID的動態更新機制[3],使標簽的信息不可分辨,但是我們可以發現協議只是對標簽身份進行了合法認證,對讀卡器的身份并沒有進行有效的認證。因此這種單向的認證容易遭受到非法讀卡器的攻擊,從而產生較大的安全隱患。除此之外hash鏈協議仍然存在大量標簽ID的發送和接收,對數據庫和讀卡器都會有較大的計算開銷。

圖3 hash鏈協議認證過程
通過上述幾種協議的分析和研究,發現了現有幾種安全認證協議存在的問題,基于上述分析,本文提出了一種改進的基于hash函數的RFID雙向認證安全協議,基本能夠達到安全目標。
標簽有秘密值S和隨機數Rt,數據庫也會產生一個隨機數Rd,通過哈希算法對數據庫和標簽中的值進行比較,完全相同時表示認證成功。協議認證過程如圖4。

圖4 RFID雙向協議認證過程
(1)當讀卡器向標簽發送請求時,數據庫會立即產生一個隨機數Rd,讀卡器把Rd發送給標簽。
(2)標簽本身有一個S秘密值,還會產生一個隨機數Rt,標簽會將ID和Rd進行哈希得到一個數值,再和S進行異或最終得到數值St。
(3)標簽將數值St和隨機數Rt一起發給讀卡器,讀卡器再轉發給數據庫。
(4)數據庫接收到消息以后會去檢索系統中的數據是否存在某個IDj(1≤j≤n),使H(IDj|| Rd)⊕S=St是否成立,如果不等于則認證失敗。如果等于,數據庫會根據IDj和Rt的哈希值與S異或得到Sd。
(5)通過讀卡器把Sd傳給標簽。
(6)標簽收到信息后計算St=H(ID || Rt)⊕S,如果其值等于Sd,則認證成功。
(1)向前安全性
由于隨機數Rd和Rt,秘密值S都是可變的,所以即使黑客獲取到了St的值也查不出標簽之前的運作數據。
(2)雙向認證
在數據庫通過哈希算法[7]比較H(IDj|| Rd)⊕S和H(ID || Rd)⊕S是否相同,以及在標簽中通過哈希算法比較H(IDj|| Rt)⊕S和H(ID || Rt)⊕S是否相同,實現協議的雙向認證。
(3)防位置跟蹤
由于Rd和秘密值S是隨機的,所以每次St的值也是可變的,有效防止了位置跟蹤。
(4)防竊聽
標簽ID值并沒有在傳輸消息的過程中出現,所以非法用戶無法竊聽到標簽的真實ID。
(5)防重傳攻擊
由于秘密值S的可變性,黑客不能再次模擬出數值Sd,有效的防止了重傳攻擊。
(6)防假冒攻擊
假如非法者用非法標簽[8]偽裝成合法標簽,并使用非法算法返回給讀卡器認證,由于數據庫產生的隨機數Rd和秘密值S可變,計算出來的St的值和偽裝的St值不會相同,所以標簽無法通過讀卡器的認證。
如表1所示,列出了幾種協議和本文協議進行的比較。

表1 協議安全性對比
本文通過分析和比較三種現有RFID安全認證協議,提出了一種改進的基于Hash函數的RFID雙向認證協議,基本滿足了安全目標,有效克服已有認證協議的諸多缺陷,對設計高效的、安全的、低成本的RFID認證協議具有比較重要的理論指導意義。
[1]周永彬,馮登國.RFID安全協議的設計與分析[J].計算機學報,2006.
[2]王旭宇,景鳳宣,王雨晴.一種基于Hash函數的RFID認證改進協議[J].山東大學學報(理學版),2014.
[3]周曄.基于Hash鏈的RFID雙向認證協議的設計[J].網絡安全技術與應用,2014.
[4]丁振華,李錦濤,馮波.基于Hash 函數的RFID安全認證協議研究[J]. 計算機研究與發展,2009.
[5]張兵,馬新新,秦志光.輕量級RFID雙向認證協議設計與分析[J].電子科技大學學報,2013.
[6]黃穩定,鄔春學,高華.基于hash函數的RFID安全認證協議研究[J].軟件導刊,2017.
[7]王家超.一種基于雙向Hash認證協議的RFID標簽動態管理設計[D].電子科技大學碩士論文,2017.
[8]石春華.一種基于Hash函數的RFID安全認證協議的設計與實現[D]. 電子科技大學碩士論文,2013.
[9]Radio frequency identification:Secure risks and challenges. Sarma S E,Weis S A,Engels D W. RSA Laboratories Cryptobytes,2003.
[10]Security and privacy aspects of low-cost radio frequency identification systems. Weis S.A,Sarma S.E,Rivest R.L,Engels D.W. Proceedings of the1st International Conference on Security in Pervasive Computing,2004.
[11]Hash-chain based forward-secure privacy protection scheme for low-cost RFID. OHKUBO M,SUZUKI K,KINOSHITA S. Proceedings of the2004Sy mposium on Cr y ptog raphy and Information Security,2004.