基于ID變化的RFID安全協議
[ 導讀 ] 射頻識別(RFID)系統是使用無線射頻技術在開放系統環境中進行對象識別,通過射頻信號自動識別目標對象并獲取相關數據。
射頻識別(RFID)系統是使用無線射頻技術在開放系統環境中進行對象識別,通過射頻信號自動識別目標對象并獲取相關數據。這種識別的優點之一是不需要物理接觸或其他任何可見的接觸。現在,許多人已將RFID系統看作是一項實現普適計算環境的有效技術。但同時,關鍵問題是要確保只有授權用戶能夠識別各個標簽,而攻擊者無法對這些標簽進行任何形式的跟蹤。針對這一問題,國內外開展了大量關于RFID隱私安全保密的研究,提出了許多RFID安全協議,如Hash鎖協議、隨機化Hash鎖協議、Hash鏈協議等,但這些協議存在著安全隱患、效率低下等缺陷。本文針對這些協議的不足,進一步對RFID的安全隱私進行研究。
1 RFID基本原理
1.1 RFID系統基本構成[1]
RFID系統一般由三大部分構成: (1)標簽配備有天線的微型電路,但通常沒有處理器,僅由數千個邏輯門組成;(2)讀寫器。一個有天線的無線發射與接收設備,它的處理能力、存儲空間都比較大;(3)后臺數據庫。用戶根據系統需求進行選擇的數據庫系統,存儲所有標簽的信息,它通過可信的讀寫器獲得標簽發送的信息,具有很強的處理能力和存儲空間。一般認為讀寫器到后臺數據庫的通信信道為安全信道,標簽到讀寫器之間的信道為不安全信道。
1.2 RFID安全隱患與安全需求
RFID讀寫器與標簽之間通過空中接口進行通信,不需要任何物理或可見接觸,使得隱私侵犯者可以通過監聽,截獲雙方通信信息,獲取標簽中隱私的信息。此外,標簽中含有唯一的序列號,隱私侵犯者可以通過其序列號追蹤、定位標簽,從而獲得標簽所有的信息。
正因為如此,設計安全、高效的RFID安全協議成為了一個具有挑戰性的問題。而安全的射頻識別系統對單向攻擊應該能夠予以防范:
(1) 標簽信息泄漏問題:避免未授權讀寫器或者隱私侵犯者獲取標簽中的敏感數據。
(2) 標簽的可追蹤性:避免隱私侵犯者通過對標簽序列號追蹤定位獲得標簽持有者的隱私信息。
(3) 前向安全性:避免隱私侵犯者根據竊取的敏感信息獲取標簽歷史活動記錄和標簽持有者隱私信息。
2 RFID安全協議
基于密碼學的發展,到目前為止,已經有多種RFID安全協議被提出來,本文將介紹3種典型的RFID安全協議,并分析其優缺點。
2.1 Hash鎖[2]協議
Hash鎖(Hash Lock)協議是由Sarma等人提出來的。為了避免信息泄漏和被追蹤,使用metaID代替真實的標簽ID,協議流程如圖1所示。
(1)讀寫器向標簽發送Query認證請求。
(2)標簽將metaID發送給讀寫器。
(3)讀寫器將metaID轉發給后臺數據庫。
(4)后臺數據庫查詢自己的數據庫,如果找到與metaID匹配的項,則將該項的(Key,ID)發送給讀寫器,其中ID為待認證標簽的標識,metaID=H(Key);否則返回給讀寫器認證失敗信息。
(5)讀寫器將接收后臺數據庫的部分信息Key發送給標簽。
(6)標簽驗證metaID=H(key)是否成立,如果成立,則將其ID發送給讀寫器。
(7)讀寫器比較從標簽接收到的ID是否與后臺數據庫發送過來的ID一致,如果一致,則認證通過;否則,認證失敗。
由上述過程可以看出,Hash鎖協議中沒有ID動態刷新機制,并且metaID也保持不變,ID是以明文的形式通過不安全的信道傳送的,因此,Hash鎖協議非常容易受到假冒攻擊和重傳攻擊,攻擊者也可以很容易地對標簽進行追蹤。也就是說,Hash鎖協議沒有達到其安全目標。
2.2 隨機化Hash鎖協議
為了解決Hash鎖中位置跟蹤的問題,將Hash鎖方法加以改進,采用隨機化Hash鎖(Random Hash-Lock)協議,此協議由Weis等人提出,采用了基于隨機數的詢問-應答機制。首先介紹字符串連接符號“||”,如標簽ID和隨機數R的連接即表示為“ID||R”。該方法中數據庫存儲各個標簽的ID值,設為ID1、ID2 … IDk…IDn。其協議流程如圖2所示。
(1)讀寫器向標簽發送Query認證請求。
(2)標簽生成一個隨機化數R,計算H(IDk||R),其中IDk為標簽的標識,標簽將(R,H(IDk||R) )發送給讀寫器。
(3)讀寫器向后臺數據庫提出獲得所有標簽標識的請求。
(4)后臺數據庫將自己數據庫中的所有標簽標識(ID1,ID2…IDn)發送給讀寫器。
(5)讀寫器檢查是否有某個IDj(1≤j≤n),使得H(IDj||R)=H(IDk||R)成立;如果有,則認證通過,并將IDj發送給標簽。
(6)標簽驗證IDj與IDk是否相同,如果相同,則通過認證。
在隨機化Hash鎖協議中,認證通過后的標簽標識IDk仍以明文的形式通過不安全信道傳送,因此攻擊者可以對標簽進行有效的追蹤。同時,一旦獲得了標簽的標識IDk,攻擊者就可以對標簽進行假冒,而該協議無法抵抗重傳攻擊。因此,隨機化Hash鎖協議也是不安全的。不僅如此,每一次標簽驗證時,后臺數據庫都需要將所有標簽的標識發送給讀寫器,二者之間的數據通信量很大,該協議不實用。
2.3 Hash鏈協議
NTT提出了一種Hash鏈(Hash-Chain)[3-4]協議。在第i次與讀寫器交換時,射頻標簽有初始值Si,發送ai=G(Si)給讀寫器,再根據以前的Si更新密鑰Si+1=H(Si)。其中G和H都是Hash函數,如圖3所示。
3 基于ID變化的RFID安全協議
為了避免Hash鎖方法中的人為攻擊和惡意跟蹤的缺陷,并克服隨機數Hash鎖方法中計算負載過大的不足,結合以上幾種方法的思想,本文提出了一種基于ID變化的RFID安全協議,實現了安全高效的讀取訪問控制。
3.1 工作原理
在此協議中,后臺數據庫的記錄主要包括3列:H(ID),ID,Pointer,主鍵為H(ID)。其中ID為電子標簽的唯一標識符, H(ID)是對應ID的單向Hash函數的計算值,Pointer是數據記錄的關聯指針,主要用來保持數據一致性[5]。
3.1.1 標簽的鎖定
對于每個電子標簽,出廠時都有其唯一的ID值,在實際應用中數據庫首先建立所有標簽在數據庫中的初始記錄(H(IDi),IDi,Pointeri),標簽在未收到激勵信號時,處于鎖定狀態。
3.1.2 標簽的解鎖
設數據庫初始化存儲了3個標簽,ID分別為1、2、3,其初始化如表1所示。
當標簽被詢問過1次之后,數據庫始終保持了2條與該標簽有關的數據記錄,這主要是為了保證數據的一致性。假設在某次通信中閱讀器在第5步發送的H(ID*)未成功且被標簽收到,則標簽2的ID值不會更新,此時數據庫的第4條記錄是錯誤的。這樣在下次與標簽2通信中,查找到的仍是記錄2,數據庫根據記錄2的Pointer值為4,將修改第4條記錄,這樣就能夠保持數據一致性。
3.3 性能分析及方法特點
本協議使用2個單向的Hash函數實現標簽ID的自動更新和通信信息加密,能夠有效地抵抗各種攻擊。
(1)防竊聽。標簽和標簽讀寫器之間的通信信息都經過了Hash函數H加密。根據Hash函數的性質,隱私侵犯者是無法根據加密后的信息獲取加密的信息。
(2)防哄騙。標簽的ID在每完成1次通信過程后將使用Hash函數S進行自主更新為ID*,隱私侵犯者無法偽造出H(ID*||R)。
(3)防重傳。每次認證前閱讀器將產生一個新的隨機數R,隱私侵犯者能截獲上次的H(ID||R),但無法偽造新一次認證的H(ID||R)。
(4)防追蹤。標簽中的ID在每次詢問后都將更新,并且同一標簽在不同認證過程中,閱讀器都將產生隨機數R。這些都是標簽對每次詢問的響應結果。
通過上述分析可以看出,基于ID變化的RFID安全協議實現了標簽ID的隱藏性、隨機性以及訪問控制,完全滿足RFID系統的安全需求。
本協議的特點主要表現在以下幾個方面:
(1)前向安全性。因為標簽的ID在每次通信過程后就會執行ID*=S(ID)更新。根據Hash函數的性質,隱私侵犯者即使獲取了ID*,也無法獲得ID和標簽的歷史活動記錄,從而保證了前向安全性。
(2)實現雙向驗證。后臺數據庫通過對H(ID||R)的計算比較,實現了數據庫對標簽的驗證;而標簽通過對H(ID*)的計算比較,則實現了對數據庫的驗證。
(3)數據一致性。根據此協議的后臺數據庫結構,當標簽被詢問過1次之后,數據庫始終保持了2條與該標簽有關的數據記錄,這樣一來即使標簽無法收到閱讀器返回的信息,造成標簽的ID值不更新,也不會造成數據庫與標簽的數據同步問題。
本文提出的基于ID變化的RFID安全協議,具有前向安全、雙向驗證等特點,基本上彌補了目前安全保護方法安全性不夠等缺陷,是一種較為實用的算法,但此方法還存在一些不足。一次雙向驗證過程中,標簽仍需要進行3次Hash函數運算,這對低成本的標簽是費時的,這些尚需進一步研究改進。
1 RFID基本原理
1.1 RFID系統基本構成[1]
RFID系統一般由三大部分構成: (1)標簽配備有天線的微型電路,但通常沒有處理器,僅由數千個邏輯門組成;(2)讀寫器。一個有天線的無線發射與接收設備,它的處理能力、存儲空間都比較大;(3)后臺數據庫。用戶根據系統需求進行選擇的數據庫系統,存儲所有標簽的信息,它通過可信的讀寫器獲得標簽發送的信息,具有很強的處理能力和存儲空間。一般認為讀寫器到后臺數據庫的通信信道為安全信道,標簽到讀寫器之間的信道為不安全信道。
1.2 RFID安全隱患與安全需求
RFID讀寫器與標簽之間通過空中接口進行通信,不需要任何物理或可見接觸,使得隱私侵犯者可以通過監聽,截獲雙方通信信息,獲取標簽中隱私的信息。此外,標簽中含有唯一的序列號,隱私侵犯者可以通過其序列號追蹤、定位標簽,從而獲得標簽所有的信息。
正因為如此,設計安全、高效的RFID安全協議成為了一個具有挑戰性的問題。而安全的射頻識別系統對單向攻擊應該能夠予以防范:
(1) 標簽信息泄漏問題:避免未授權讀寫器或者隱私侵犯者獲取標簽中的敏感數據。
(2) 標簽的可追蹤性:避免隱私侵犯者通過對標簽序列號追蹤定位獲得標簽持有者的隱私信息。
(3) 前向安全性:避免隱私侵犯者根據竊取的敏感信息獲取標簽歷史活動記錄和標簽持有者隱私信息。
2 RFID安全協議
基于密碼學的發展,到目前為止,已經有多種RFID安全協議被提出來,本文將介紹3種典型的RFID安全協議,并分析其優缺點。
2.1 Hash鎖[2]協議
Hash鎖(Hash Lock)協議是由Sarma等人提出來的。為了避免信息泄漏和被追蹤,使用metaID代替真實的標簽ID,協議流程如圖1所示。
(1)讀寫器向標簽發送Query認證請求。
(2)標簽將metaID發送給讀寫器。
(3)讀寫器將metaID轉發給后臺數據庫。
(4)后臺數據庫查詢自己的數據庫,如果找到與metaID匹配的項,則將該項的(Key,ID)發送給讀寫器,其中ID為待認證標簽的標識,metaID=H(Key);否則返回給讀寫器認證失敗信息。
(5)讀寫器將接收后臺數據庫的部分信息Key發送給標簽。
(6)標簽驗證metaID=H(key)是否成立,如果成立,則將其ID發送給讀寫器。
(7)讀寫器比較從標簽接收到的ID是否與后臺數據庫發送過來的ID一致,如果一致,則認證通過;否則,認證失敗。
由上述過程可以看出,Hash鎖協議中沒有ID動態刷新機制,并且metaID也保持不變,ID是以明文的形式通過不安全的信道傳送的,因此,Hash鎖協議非常容易受到假冒攻擊和重傳攻擊,攻擊者也可以很容易地對標簽進行追蹤。也就是說,Hash鎖協議沒有達到其安全目標。
2.2 隨機化Hash鎖協議
為了解決Hash鎖中位置跟蹤的問題,將Hash鎖方法加以改進,采用隨機化Hash鎖(Random Hash-Lock)協議,此協議由Weis等人提出,采用了基于隨機數的詢問-應答機制。首先介紹字符串連接符號“||”,如標簽ID和隨機數R的連接即表示為“ID||R”。該方法中數據庫存儲各個標簽的ID值,設為ID1、ID2 … IDk…IDn。其協議流程如圖2所示。
(1)讀寫器向標簽發送Query認證請求。
(2)標簽生成一個隨機化數R,計算H(IDk||R),其中IDk為標簽的標識,標簽將(R,H(IDk||R) )發送給讀寫器。
(3)讀寫器向后臺數據庫提出獲得所有標簽標識的請求。
(4)后臺數據庫將自己數據庫中的所有標簽標識(ID1,ID2…IDn)發送給讀寫器。
(5)讀寫器檢查是否有某個IDj(1≤j≤n),使得H(IDj||R)=H(IDk||R)成立;如果有,則認證通過,并將IDj發送給標簽。
(6)標簽驗證IDj與IDk是否相同,如果相同,則通過認證。
在隨機化Hash鎖協議中,認證通過后的標簽標識IDk仍以明文的形式通過不安全信道傳送,因此攻擊者可以對標簽進行有效的追蹤。同時,一旦獲得了標簽的標識IDk,攻擊者就可以對標簽進行假冒,而該協議無法抵抗重傳攻擊。因此,隨機化Hash鎖協議也是不安全的。不僅如此,每一次標簽驗證時,后臺數據庫都需要將所有標簽的標識發送給讀寫器,二者之間的數據通信量很大,該協議不實用。
2.3 Hash鏈協議
NTT提出了一種Hash鏈(Hash-Chain)[3-4]協議。在第i次與讀寫器交換時,射頻標簽有初始值Si,發送ai=G(Si)給讀寫器,再根據以前的Si更新密鑰Si+1=H(Si)。其中G和H都是Hash函數,如圖3所示。
3 基于ID變化的RFID安全協議
為了避免Hash鎖方法中的人為攻擊和惡意跟蹤的缺陷,并克服隨機數Hash鎖方法中計算負載過大的不足,結合以上幾種方法的思想,本文提出了一種基于ID變化的RFID安全協議,實現了安全高效的讀取訪問控制。
3.1 工作原理
在此協議中,后臺數據庫的記錄主要包括3列:H(ID),ID,Pointer,主鍵為H(ID)。其中ID為電子標簽的唯一標識符, H(ID)是對應ID的單向Hash函數的計算值,Pointer是數據記錄的關聯指針,主要用來保持數據一致性[5]。
3.1.1 標簽的鎖定
對于每個電子標簽,出廠時都有其唯一的ID值,在實際應用中數據庫首先建立所有標簽在數據庫中的初始記錄(H(IDi),IDi,Pointeri),標簽在未收到激勵信號時,處于鎖定狀態。
3.1.2 標簽的解鎖
設數據庫初始化存儲了3個標簽,ID分別為1、2、3,其初始化如表1所示。
當標簽被詢問過1次之后,數據庫始終保持了2條與該標簽有關的數據記錄,這主要是為了保證數據的一致性。假設在某次通信中閱讀器在第5步發送的H(ID*)未成功且被標簽收到,則標簽2的ID值不會更新,此時數據庫的第4條記錄是錯誤的。這樣在下次與標簽2通信中,查找到的仍是記錄2,數據庫根據記錄2的Pointer值為4,將修改第4條記錄,這樣就能夠保持數據一致性。
3.3 性能分析及方法特點
本協議使用2個單向的Hash函數實現標簽ID的自動更新和通信信息加密,能夠有效地抵抗各種攻擊。
(1)防竊聽。標簽和標簽讀寫器之間的通信信息都經過了Hash函數H加密。根據Hash函數的性質,隱私侵犯者是無法根據加密后的信息獲取加密的信息。
(2)防哄騙。標簽的ID在每完成1次通信過程后將使用Hash函數S進行自主更新為ID*,隱私侵犯者無法偽造出H(ID*||R)。
(3)防重傳。每次認證前閱讀器將產生一個新的隨機數R,隱私侵犯者能截獲上次的H(ID||R),但無法偽造新一次認證的H(ID||R)。
(4)防追蹤。標簽中的ID在每次詢問后都將更新,并且同一標簽在不同認證過程中,閱讀器都將產生隨機數R。這些都是標簽對每次詢問的響應結果。
通過上述分析可以看出,基于ID變化的RFID安全協議實現了標簽ID的隱藏性、隨機性以及訪問控制,完全滿足RFID系統的安全需求。
本協議的特點主要表現在以下幾個方面:
(1)前向安全性。因為標簽的ID在每次通信過程后就會執行ID*=S(ID)更新。根據Hash函數的性質,隱私侵犯者即使獲取了ID*,也無法獲得ID和標簽的歷史活動記錄,從而保證了前向安全性。
(2)實現雙向驗證。后臺數據庫通過對H(ID||R)的計算比較,實現了數據庫對標簽的驗證;而標簽通過對H(ID*)的計算比較,則實現了對數據庫的驗證。
(3)數據一致性。根據此協議的后臺數據庫結構,當標簽被詢問過1次之后,數據庫始終保持了2條與該標簽有關的數據記錄,這樣一來即使標簽無法收到閱讀器返回的信息,造成標簽的ID值不更新,也不會造成數據庫與標簽的數據同步問題。
本文提出的基于ID變化的RFID安全協議,具有前向安全、雙向驗證等特點,基本上彌補了目前安全保護方法安全性不夠等缺陷,是一種較為實用的算法,但此方法還存在一些不足。一次雙向驗證過程中,標簽仍需要進行3次Hash函數運算,這對低成本的標簽是費時的,這些尚需進一步研究改進。
【聲明】物流產品網轉載本文目的在于傳遞信息,并不代表贊同其觀點或對真實性負責,物流產品網倡導尊重與保護知識產權。如發現文章存在版權問題,煩請聯系小編電話:010-82387008,我們將及時進行處理。
相關文章
一種用于醫療無菌手套自動分配的RFID解決方案
一臺具備RFID功能的機器使醫務人員能夠用ID卡輕靠設備,戴上尺寸合適的手套,從而降低感染風險。在日常工作中,丁腈手套是醫護人員最常用的消耗工具之一,可確保他們在不傳播感染的情況下治療患者。根據德克薩斯醫療技術公司(Texas...
05月21日 11:29RFID世界網
如何提升超高頻RFID多標簽的讀取率?
在RFID的實際應用中,常常有要求同時讀取大量標簽的情況,比如對倉庫貨物數量的盤點,圖書館場景中對館藏圖書數量的盤點,也包括傳送帶或托盤上數十個乃至上百個貨物標簽的讀取情況。針對多數貨物讀取的情形,根據其被讀取成功的概率稱作讀...
07月06日 14:32RFID世界網
智慧食品安全新紀元中的RFID和供應鏈數字化
去年,FDA(美國食品和藥物管理局)發起了一項新的前瞻性運動,以推動供應鏈現代化的長期采用和行業共識。“智慧食品安全新紀元”計劃是通過文化的漸進式變革、新技術的普及和互操作標準的清晰化,朝著建立一個以技術為基礎的食品體系邁出的...
04月09日 12:17RFID世界網
RFID機場智慧消防物聯網解決方案
當前信息化時代的大背景下,智慧消防建設率先在機場、文保單位、軌道交通等重點領域進行建設,此類場所消防工作極為重要,人口集中,且人口流量大,另外像油、電、氣等能源的應用,對消防工作更是提出了更為嚴苛的要求。機場智慧消防物聯網...
01月14日 15:48千智客