發布日期:2022-05-20 點擊率:206
射頻識別(RFID)技術是一種利用電磁發射或電磁耦合實現無接觸信息傳遞,進而自動識別和獲取目標對象信息數據的技術。作為一種穩定、可靠、快速采集數據并對數據進行加工的新興技術,RFID得到了廣泛應用并突顯其強大的實用價值。但RFID技術在安全隱私問題上面臨著諸多挑戰。為此,本文在已有的RFID協議基礎上,通過分析其執行過程及優缺點,提出一種新的基于Hash的RFID雙向認證協議,并進行了安全性分析和比較。
RFID簡介
1.1RFID系統基本構成
(1)電子標簽:由芯片和無線通信天線兩個主要部分組成,在電子標簽中可以通過存儲一些需要被識別的物品相關信息來分類、標識物品。
(2)閱讀器:RFID閱讀器包含邏輯控制單元、射頻接口和無。線通信天線3個部分,主要處理與電子標簽之間的通信,實現數據的讀寫。閱讀器既是標簽的匯聚部分,也是應用系統的下一級。
(3)應用系統:對讀寫器轉發的所有電子標簽信息進行集中統計和分析,并通過安全信道反饋給讀寫器。RFID系統基本構成如圖1所示。
1.2RFID安全性分析
RFID技術在方便人們生活的同時也帶來諸多安全隱患,其中,RFID系統對應用的完全開放是造成系統出現安全隱私問題的根本原因。
RFID可能受到的安全威脅有2類:
①物理環境威脅,如設備妨礙、電磁磁擾等;
②人員對系統的攻擊,主要有重放攻擊、假冒攻擊、竊聽攻擊、位置跟蹤等。
主動攻擊與被動攻擊如圖2所示。
RFID相關安全認證協議
2.1 Hash-Lock協議
Hash-Lock協議是Sarma等提出的一種安全協議。標簽存儲唯一標識ID及metaID,初始狀態為鎖定狀態。后端數據庫存儲所有的標簽密鑰key、ID和metaID。
Hash-Lock協議執行過程如下:
① 讀寫器向標簽發出認證請求;
② 標簽回答metaID并通過讀寫器將認證請求響應消息metaID轉發給后端數據庫;
③ 后端數據庫接收消息并檢索系統文檔,如果閱讀器發送過來的metaID與數據庫系統中保存的metaID值相同,就返回讀寫器該匹配項的key和ID;否則,返回給讀寫器認證失敗信息;
④ 讀寫器接收消息并返回給標簽密鑰;
⑤ 標簽接收密鑰信息并利用散列函數驗證H(key)與metaID是否相等。如果相等,標簽返回給讀寫器唯一標識;否則,驗證失敗;
⑥ 讀寫器判斷兩份ID數據是否相同。如果相同,則認證成功;否則,認證失敗。
2.2隨機化Hash-Lock協議
隨機化Hash-Lock協議是Weis等提出的一種安全協議。標簽保存ID并嵌入隨機數產生器,初始狀態為鎖定狀態。后端數據庫存儲全部標簽ID。
隨機化Hash-Lock協議認證過程如下:
① 讀寫器向標簽發出認證請求;
② 標簽接收認證消息并生成一個R,通過讀寫器將H(IDk||R)數據值連同R一同轉發給后端數據庫,其中R是隨機數;
③ 后端數據庫接收請求信息并檢索系統文檔,然后返回給讀寫器全部ID;
④ 讀寫器檢查是否有某個IDj(1≤j≤n),使得H(IDj||R)=H(IDk||R)成立。如果有,則認證通過,并將IDj發送給標簽;
⑤ 標簽接收數據消息并判斷IDj和IDk是否相等。如果相等,則認證通過,否則認證失敗。
2.3Hash鏈協議
在Hash鏈協議中,標簽存有ID和秘密值S,初始狀態為鎖定狀態。系統全部標簽數值對(ID,S)保存在后端數據庫。
Hash鏈協議的執行過程如下:
① 讀寫器向標簽發出認證請求;
② 標簽接收請求命令并通過散列函數計算G(S),然后標簽將計算結果通過讀寫器響應給后端數據庫并使用哈希函數H更替標簽的秘密值;
③ 后端數據庫接收消息并檢索系統文檔。計算G(H(S))并和讀寫器的相應數據比較,如果相等,則認證成功;否則,認證失敗。
2.4協議優缺點
Hash鎖協議使用標簽metaID代替真實的ID,標簽對讀寫器進行認證后再將其ID通過非安全信道發送給讀寫器。但每次傳送的metaID也屬于常量值,RFID系統很容易受到非法用戶的假冒攻擊和重傳攻擊。隨機化Hash-Lock協議和Hash鎖協議一樣,標簽ID仍以明文形式在非安全信道傳送,不能應對非法用戶的重傳攻擊。而且每次標簽執行認證請求過程中,讀寫器與后端數據庫之間的安全信道需要傳送全部標簽的ID,具有很大的信息交互量。
Hash鏈協議中,標簽成為一個具有自主更新ID能力的主動式標簽。此外,每一次認證過程中,后端數據庫都需要針對標簽使用2個不同的散列函數G和H進行j次散列運算.隨著標簽數量規模的擴大,計算負荷也隨之加大。
RFID安全認證協議設計
通過分析上述幾種安全協議的原理和執行流程,發現這些協議都存在種種安全隱患。本文提出了一種改進的安全協議,實現閱讀器-電子標簽的雙重認證,基本達到認證協議的安全目標。
3.1設計原理
標簽存有ID和秘密值S,系統全部標簽數值對(ID,S)存儲在后端數據庫,并且后端數據庫和標簽都嵌入了隨機數產生器.協議流程如圖3所示。
3.2安全協議設計
安全協議設計步驟如下:
① 后端數據庫產生一個隨機數RDB并通過讀寫器將數值結果連同Query一同發送給標簽;
② 標簽根據自身ID、讀寫器認證請求的相關隨機數RDB、后端數據庫和標簽的秘密數值S與散列函數計算出ST,其中ST=H(ID||RDB||S),然后標簽產生一個新的隨機數RT,通過讀寫器將新的隨機數連同ST一起發送給后端數據庫;
③ 后端數據庫接收消息并檢索系統中的文檔數據是否有某個IDj(1≤j≤n),使得H(IDj||RDB||S)=H(ID||RDB||S)成立;如果沒有,則認證失敗;如果有,則后端數據庫根據IDj、標簽響應的相關隨機數RT、后端數據庫和標簽的秘密數值S與散列函數計算出SDB,其中SDB=H(IDj||RT||S)。通過讀寫器將結果數值轉發給標簽;
④ 標簽計算ST=H(ID||RT||S),并比較是否與接收到的H(IDj||RT||S)相同;若相同,則認證通過;若不同,則認證失敗;
⑤ 系統分別使用SDB和ST更替后端數據庫和標簽的秘密數值S。
3.3協議安全性分析
(1) 雙向認證。在后端數據庫通過散列函數檢驗H(IDj||RDB||S)和H(ID||RDB||S)是否相等,以及在標簽中通過散列函數計算并比較H(ID||RT||S)和H(IDj||RT||S)是否相等,實現RFID系統合法身份的雙向認證。
(2) 向前安全。由于隨機數R、共享數值S的可變性以及Hash的單向性,即使非法用戶獲取了H(ID||RDB||S)也查不出標簽之前的運作數據。
(3) 防位置跟蹤。由于保存在后端數據庫中的RDB和數值S是變化的,因此每次讀寫器請求認證后的反饋消息H(ID||RDB||S)也不相同,有效阻止了攻擊者的位置跟蹤。
(4) 防重傳攻擊。由于共享數值S的可變性,非法用戶不能再次模擬出讀寫器響應給標簽的數值H(IDj||RT||S),有效防止了重傳攻擊。
(5) 防竊聽。標簽ID在非安全信道傳播時經過Hash的加密處理,所以非法用戶無法竊聽標簽的真實ID。
(6) 防假冒攻擊。假如非法用戶將非法標簽偽裝成合法標簽,并使用非法算法返回給讀寫器認證,由于后端數據庫產生的隨機數RDB和共享秘密值S是變化的,合法標簽響應的H(ID‖RDB‖S)值與偽裝標簽響應的數值完全不同,因此標簽無法通過讀寫器認證。
(7) 運算負載小,效率高。假設RFID有N個標簽。每次認證,在后端數據庫中本文協議需要進行N次值對照和N+1個Hash函數,而Hash鏈方法則需進行N次記錄搜索、N次值比較和2N個Hash函數計算,所以當N很大時,本方法運算負載小、效率高。
基于Hash的RFID協議安全性比較如表1所示。表中以“×”表示不符合安全,以“√”表示符合安全。
下一篇: PLC、DCS、FCS三大控
上一篇: RFID技術在汽車總裝線