用Hash鎖方法解決RFID的安全與隱私問題
RFID安全問題集中在對個人用戶的隱私保護、對企業用戶的商業秘密保護,防范對RFID系統的攻擊以及利用RFID技術進行安全防范等多個方面。
面臨的挑戰是:
① 保證用戶對標簽的擁有信息不被未經授權訪問,以保護用戶在消費習慣、個人行蹤等方面的隱私。 ② 避免由于RFID系統讀取速度快,可以迅速對超市中所有商品進行掃描并跟蹤變化,而被利用來竊取用戶商業機密。 ③ 防護對RFID系統的各類攻擊,如重寫標簽以篡改物品信息;使用特制設備偽造標簽應答欺騙讀寫器,以制造物品存在的假相;根據RFID前后向信道的不對稱性遠距離竊聽標簽信息;通過干擾RFID工作頻率實施拒絕服務攻擊;通過發射特定電磁波破壞標簽等。 ④ 如何把RFID的唯一標識特性用于門禁安防、支票防偽、產品防偽等。
為了避免RFID標簽給客戶帶來關于個人隱私的擔憂,同時也為了防止用戶攜帶安裝有標簽的產品進入市場所帶來的混亂,很多商家在商品交付給客戶時都把標簽拆掉。這種方法無疑增加了系統成本,降低了RFID標簽的利用率,并且有些場合標簽不可拆卸。為解決上述安全與隱私問題,人們還從技術上提出了多種方案,包括Kill標簽、法拉第網罩、主動干擾、智能標簽、阻止標簽和Hash鎖等方法。Hash鎖通過簡單的Hash函數,增加閉鎖和開鎖狀態,對標簽和讀寫器之間的通信進行訪問;但是它無法解決位置隱私和中間人攻擊問題。
本文提出一種Hash鎖改進方法,成功解決了這個問題。
1 Hash鎖方法分析
1.1 定讀取控制Hash鎖方法
在定讀取控制Hash鎖方法中,射頻標簽只對授權的讀寫器起作用,它代表了一種認證過程,認證密匙固定不變。使用該方法的射頻標簽分別有1個只讀(ROM)和1個可讀寫(如RAM)的存儲器,并且每個電子標簽只供有限的用戶使用。這些用戶都共有同一個存儲在讀寫存儲器中的識別碼。每個標簽認證讀寫器的過程如圖1所示。讀寫器對每一個電子標簽都有一個認證密匙k,每個電子標簽都存儲有一Hash方程計算的結果metaID=Hash(k)。首先讀寫器向射頻標簽發出ID訪問請求,標簽向讀寫器發出相應的metaID。讀寫器根據接收到的metaID得出密匙k并發送給標簽。然后該標簽把接收到的密匙k代入Hash方程,檢驗計算得到的結果與存儲在標簽中的metaID是否一致。如果一致,標簽就把其ID發送給讀寫器。
該方案提出了一[FS:PAGE]種低成本解決安全與隱私問題的方法。僅僅需要一個Hash方程和存儲metaID值就足夠。但是它不能防止被跟蹤,因為射頻標簽的反應能提前被預測泄露,并且隨機密匙k和標簽ID能被敵人竊聽到。
1.2 隨機讀取控制Hash鎖的方法
為了避免被跟蹤,射頻標簽的反應不能被預測到而是隨機的。主要有兩種隨機讀取控制Hash鎖的方法。MIT AutoID中心提出了一種隨機Hash方案。讀寫器向射頻標簽發出ID訪問請求,標簽向讀寫器發出的不是固定的metaID,而是變化的。如圖2所示,每個標簽與讀寫器共享一個認證密匙IDk。當讀寫器向射頻標簽發出ID訪問請求時,射頻標簽產生一個偽隨機數字R和輸出(R,h(IDk‖R)),其中h(IDk‖R)是輸入R和認證密匙IDk的Hash方程。然后讀寫器獲得所有射頻標簽的認證密匙。讀寫器根據接收的R和存儲在后臺數據庫中所有密匙的ID計算Hash方程。如果Hash方程值與射頻標簽發送的Hash方程值匹配,讀寫器識別出該射頻標簽的密匙IDk并發送給射頻標簽。因為每次訪問時,射頻標簽的輸出改變了。該方法避免了被跟蹤的缺點;但是該方法不適合少量射頻標簽的用戶。因為被授權的讀寫器識別一個射頻標簽,就需要搜索和計算所有標簽的ID,因此該方法不適合大量射頻標簽。
NTT提出了一種Hash鏈方法。在第i次與讀寫器交換時,射頻標簽有其初始值Si,發送ai=G(Si)給讀寫器,再根據以前的Si更新密匙Si+1=H(Si)。其中G和H都是Hash函數。 讀寫器把ai傳給后臺數據庫,后臺數據庫維持一對列表(ID;Si)。其中Si是初始密匙值,對每一個標簽,其值是不同的。后臺數據庫從讀寫器處接收標簽,輸出ai,并且對列表中的每個Si計算a0i=G(Hj(Si)),檢查是否ai=a0i。如果ai與a0i匹配,ID就從一對a0i中識別出來了。該方法滿足了不可分辨和向前的安全特性。G是單向方程,因此敵人能獲得標簽輸出ai,但是不能從ai獲得Si。G輸出隨機值,敵人能觀測到標簽輸出,但不能把ai和ai+1聯系起來。H也是單向方程,敵人能篡改標簽并獲得標簽的密匙值,但不能從Si+1獲得Si。該算法優勢很明顯,但是有太多的計算和比較。為了識別一個ID,后臺服務器不得不計算ID列表中的每1個ID。假設有N個已知的標簽ID在數據庫中,數據庫不得不進行N次ID搜索,2N次Hash方程計算和N次比較。計算機處理負載隨著ID列表長度成線性增加,因此,該方法也不適合大量射頻標簽的情況。
2 隨機讀取控制Hash鎖方法的改進
&nb[FS:PAGE]sp; 為了避免定讀取控制Hash鎖方法中的人為攻擊和惡意跟蹤的缺陷,并克服隨機讀取控制Hash鎖方法中計算負載過大的不足,在隨機讀取控制Hash鎖的基礎上,提出了一種改進方法。
2.1 必需的RFID系統各部分結構
(1) 射頻標簽 射頻標簽由兩部分構成:一部分是只讀存儲器(ROM)和隨機讀取存儲器(RAM),ROM存儲的是標簽ID的Hash值,RAM存儲的是被鑒別的讀寫器的ID;另一部分是邏輯電路,主要用于一些簡單的計算,如計算Hash方程或產生簡單的偽隨機數。
(2) 讀寫器 讀寫器與射頻標簽無線通信,每一個讀寫器都有ReaderID,用來識別一批被鑒別的讀寫器。例如,在超市里的所有讀寫器都有一樣的ReaderID,表明它們都來源于該超市。當讀寫器向射頻標簽發出訪問請求時,標簽通過讀寫器的ReaderID檢驗讀寫器。讀寫器同時與后臺數據庫連接并通信,以識別標簽并運行相關的應用。
(3) 數據庫 后臺數據庫存儲了一對對射頻標簽ID和它的Hash方程值:[TagID,hash(TagID)]。一般地,后臺數據庫與讀寫器通過有線和安全通道相連接。
2.2 工作原理 讀寫器要查詢射頻標簽ID,必須首先確定該讀寫器是否被認證。若讀寫器被認證,標簽則響應讀寫器并讓讀寫器獲得其ID。
(1) 讀寫器認證 在響應讀寫器并讓讀寫器獲得標簽ID信息前,讀寫器和標簽確定了認證體制。因為讀寫器的ReaderID提前存儲在標簽的RAM中,所以標簽通過讀寫器ID識別出有權限的讀寫器。標簽不響應沒有權限的讀寫器,因此,不可能被敵人跟蹤(因為讀寫器都有權限)。另外,這種權限化過程是基于標簽產生的隨機數,因此,還可以防止敵人的哄騙。 當射頻標簽接收到讀寫器的請求時,首先射頻標簽產生隨機數k并發送給讀寫器,讀寫器接收后傳給后臺數據庫,后臺數據庫計算a(k)=Hash (ReaderID‖k)并把a(k)傳回給讀寫器,然后讀寫器把a(k)發送給標簽。同時射頻標簽計算Hash(ReaderID‖k),然后標簽比較讀寫器與標簽計算的a(k)值是否相等。如相等,讀寫器通過了認證并且標簽向它發送一些與TagID相關的信息;若不等,該讀寫器沒有通過認證被屏蔽。
(2) 獲得標簽的TagID 在讀寫器認證后,射頻標簽響應認證的讀寫器Hash(TagID)。當讀寫器接收到Hash(TagID)值時,它會與后臺數據庫通信并尋找數據對(TagID,Hash(TagID)),讀[FS:PAGE]寫器就會獲得相應的TagID。即使Hash(TagID)值被竊聽了,當標簽向外發送其值時,竊聽者也不會知道Hash的值。因為竊聽者無法確定TagID與Hash(TagID)之間的相互關系。
(3) 在射頻標簽存儲器里更新認證讀寫器的ReaderID 當一個物體從一個倉庫運到另一個倉庫時,被認證的讀寫器將從先前倉庫的讀寫器改變為當前的讀寫器。這個過程如圖6所示。讀寫器獲得Hash(TagID)的值并傳給后臺數據庫,數據庫通知存儲在標簽里的ReaderID更新。相應地,數據庫尋找出New ReaderID并把它傳給讀寫器。當讀寫器接收到New ReaderID時,讀寫器把該值與Old ReaderID“異或”,并把“異或”值發送給射頻標簽。標簽能夠從“異或”值和Old ReaderID中得出New ReaderID,最后ReaderID被更新。 在ReaderID更新過程中,即使“異或”值被泄露,敵人也不能獲取New ReaderID。因為不能獲取Old ReaderID,因此防止了哄騙。
2.3 改進方法分析
(1) 防止竊聽 在認證過程中,即使敵人竊聽到讀寫器的輸出a(k),也不能在下一步獲得認證。因為每一認證過程中需要的a(k)值是變化的。前一次認證的a(k)值對于后一次認證來說是無意義的。 認證完后,射頻標簽輸出Hash(TagID)而不是TagID。因為Hash方程很難求其反函數,所以敵人捕獲到輸出Hash(TagID)值,也不能得到TagID的值。 當射頻標簽要更新存儲器的ReaderID時,所更新的ReaderID是經過舊的ReaderID加密過的,也防止了竊聽。 總之,上述改進方法即使在讀寫器和射頻標簽之間的通信遭遇到敵人的竊聽時,也是安全的。
(2) 防止跟蹤 射頻標簽對敵人是屏蔽的,只對被認證的讀寫器響應。而且,如上所述,敵人是無法偽造認證讀寫器的。因為沒有標簽輸出,所以敵人不能通過跟蹤標簽來跟蹤客戶剛付費買的是什么。位置隱私及客人攜帶的物品得到了保護。
(3) 低計算負載 該改進方法運算速度快,成本低。當要從N個已知的射頻標簽中識別出一個時,讀寫器只需要執行1次Hash操作和N次ID搜索,而隨機讀取控制Hash鎖方法至少需要N次Hash操作和N次ID搜索。顯然在同一安全級上,所提出的改進方法計算負載顯著降低;而且認證過程是依賴于N個已知的標簽ID和1個Hash鎖方程,因此隨著標簽的數量增多,計算負載緩慢增大。
(4) 適用于大量射頻標簽 因為計算負載低,并且隨著射頻標簽的數量增加而緩慢增加,所以[FS:PAGE]該方法非常適合有大量標簽存在的被保護的RFID系統。
3 結論
以上提出的一種Hash鎖改進方法,特別適合于物流管理。該方法需要必要的硬件,如可改寫的存儲器和簡單的邏輯電路。該方法具有高安全性、小負載等優點,適用于大量標簽應用的場合;解決了位置隱私和中間人攻擊問題,即使敵人竊取了標簽的輸出,也不能獲取標簽的ID。
相關文章
數字化轉型時代,物聯網生態安全問題何解?
白皮書介紹標題:《安全連接設備的基本屬性:PSACertified的10個安全目標和Microsoft的高安全設備的7個屬性》作者:RobSmart,Arm(PSA認證的聯合創始人)高級首席安全架構師及微軟本文檔由PSACer...
近千家美國醫療機構擁抱RAIN RFID技術
8月10日,TersoSolutions公司宣布,近1000家美國醫療保健機構部署RAINRFID解決方案。TersoSolutions的全套RAINRFID設備能夠提供前所未有的實時可視化。這些全套設備可以通過基于云的一系列...
為何說物聯網安全將成為智慧城市發展的基石?
疫情大考下,眾多智慧城市的技術應用在戰疫過程中發揮了重要作用。近年來,在政策、社會、技術和實踐背景等四維利好的推動下,中國智慧城市建設蓬勃發展。根據IDC最新發布的報告顯示,2020年,中國智慧城市建設支出規模將達到180...
數字化轉型中,如何兼顧云的發展和安全
數字化給社會發展帶來了深刻變革。政務數字化為老百姓提供了極大的便利,讓“最多跑一次”成為現實;借助信息化手段,在疫情最嚴重的時候,“健康碼”得以迅速上線,成為有效的防疫手段。在社會經濟層面,數字化改變了生產過程中的流通鏈條和成...
5G和物聯網:面臨各種安全挑戰的新興技術
從全球部署的角度來看,5G移動網絡仍然有些陌生,但它們的前景令人鼓舞。它們不僅提出了很高的數據傳輸速度,而且還將促進設備之間的連接。智能設備以及可以連接到網絡的任何個人或家庭使用的設備,都將受益于更好的連接性和更高的速度。...