◆鄭欣
一種改進(jìn)的RFID雙向認(rèn)證協(xié)議
◆鄭欣
(南京審計(jì)大學(xué)金審學(xué)院信息科學(xué)與工程學(xué)院 江蘇 210046)
通過研究RFID認(rèn)證協(xié)議,發(fā)現(xiàn)了一些安全問題,對(duì)此提出了一種基于hash函數(shù)的雙向認(rèn)證協(xié)議。該協(xié)議通過隨機(jī)數(shù)和秘密值的計(jì)算來(lái)完成數(shù)據(jù)庫(kù)、標(biāo)簽和讀卡器之間的認(rèn)證,有效防止了竊聽、重放攻擊、假冒攻擊等常見攻擊。
RFID;Hash函數(shù);安全分析;Hash-lock
射頻識(shí)別(RFID)技術(shù)[1]又稱為“電子標(biāo)簽”,是一種非接觸式的自動(dòng)識(shí)別技術(shù),能夠通過射頻信號(hào)來(lái)自動(dòng)的識(shí)別目標(biāo)并獲取相應(yīng)的重要數(shù)據(jù)。RFID技術(shù)目前運(yùn)用非常廣泛,在對(duì)RFID協(xié)議進(jìn)行研究時(shí)發(fā)現(xiàn)還是存在一些安全問題的。所以,本文通過分析總結(jié)目前各類RFID認(rèn)證協(xié)議,對(duì)比之間的執(zhí)行過程及優(yōu)缺點(diǎn),在此基礎(chǔ)上提出了一種改進(jìn)的基于Hash函數(shù)的 RFID雙向認(rèn)證協(xié)議。
(1)讀卡器:讀寫標(biāo)簽信息的手持式或固定設(shè)備[2]。
(2)電子標(biāo)簽:由耦合元件及芯片組成,每個(gè)標(biāo)簽都具有一個(gè)不可修改的唯一標(biāo)識(shí)符—UID。用戶數(shù)據(jù)存放于用戶數(shù)據(jù)區(qū)(DATA)中,可以進(jìn)行讀寫、增加等操作[2]。
(3)天線:主要用于標(biāo)簽和讀卡器之間傳遞射頻信號(hào)的設(shè)備[2]。
(4)應(yīng)用系統(tǒng):集中統(tǒng)計(jì)和分析讀卡器轉(zhuǎn)發(fā)的所有電子標(biāo)簽信息,通過安全信道反饋給讀卡器[6]。
RFID技術(shù)為人們生活提供了便利,同時(shí)由于RFID系統(tǒng)對(duì)應(yīng)用的完全開放為系統(tǒng)帶來(lái)了諸多安全隱患。一般來(lái)說,RFID受到的安全威脅主要分為物理環(huán)境威脅和黑客攻擊威脅。①物理環(huán)境威脅:如電磁干擾、設(shè)備妨礙等;②黑客攻擊威脅:如假冒攻擊、竊聽攻擊、跟蹤攻擊等。
Hash-lock協(xié)議[9]是Sarma等人提出的一種安全協(xié)議。其協(xié)議使用密鑰key的hash函數(shù)meta ID來(lái)代替標(biāo)簽的真實(shí)ID。
如圖1所示:
圖1 Hash-lock協(xié)議認(rèn)證過程
Hash-lock協(xié)議認(rèn)證過程如下:
(1)讀卡器向標(biāo)簽發(fā)送認(rèn)證請(qǐng)求。
(2)標(biāo)簽把自身的meta ID發(fā)送給讀卡器,meta ID=H(key),H(*)表示哈希函數(shù)。
(3)讀卡器再把meta ID發(fā)送給數(shù)據(jù)庫(kù)。
(4)數(shù)據(jù)庫(kù)搜索meta ID對(duì)應(yīng)的key和ID,如果找到key和ID則表示標(biāo)簽過來(lái)的信息認(rèn)證成功,將key和ID發(fā)送給讀卡器,如果找不到則表示認(rèn)證失敗。
(5)讀卡器把收到的key和ID后,保存ID,把key發(fā)送給標(biāo)簽。標(biāo)簽收到key以后,計(jì)算H(key)是否等于自身的meta ID,如果相同表示數(shù)據(jù)庫(kù)過來(lái)的認(rèn)證成功,把自身ID發(fā)送給讀卡器,如果不相同則認(rèn)證失敗。
(6)標(biāo)簽把自身的ID發(fā)送給讀卡器,讀卡器把2個(gè)ID進(jìn)行比較,如果相同則認(rèn)證成功,不相同認(rèn)證失敗。
Hash-lock協(xié)議的優(yōu)點(diǎn):協(xié)議的硬件電路相對(duì)來(lái)說比較簡(jiǎn)單,適合低功耗標(biāo)簽使用。
Hash-lock協(xié)議的缺點(diǎn)[4]:為了隱藏標(biāo)簽ID,協(xié)議使用meta ID代替真實(shí)的標(biāo)簽ID,但是由于以明文形式傳送metaID的哈希值,并且哈希值一直保持不變,因此在認(rèn)證的過程中還是容易遭受到假冒攻擊、竊聽、重放以及位置跟蹤等多種威脅。
針對(duì)Hash-lock協(xié)議存在的一些安全問題,由Weis等人提出了隨機(jī)hash-Lock協(xié)議[10],該協(xié)議通過添加隨機(jī)數(shù)的方法改進(jìn)了Hash-lock協(xié)議,如圖2所示。
圖2 隨機(jī)Hash-lock協(xié)議認(rèn)證過程
隨機(jī)Hash-lock協(xié)議的認(rèn)證過程如下:
(1)讀卡器向標(biāo)簽發(fā)送認(rèn)證請(qǐng)求。
(2)標(biāo)簽收到請(qǐng)求后產(chǎn)生一個(gè)隨機(jī)數(shù)R,通過哈希算法算出一個(gè)值H(IDk|| R),IDk為標(biāo)簽的標(biāo)識(shí),標(biāo)簽把R和hash的值一起發(fā)給讀卡器。
(3)讀卡器向數(shù)據(jù)庫(kù)索要所有的標(biāo)簽標(biāo)識(shí)(ID1,ID2,ID3,…,IDn)。J表示(1,2,3,…,n)中的某一個(gè)ID標(biāo)識(shí)。
(4)數(shù)據(jù)庫(kù)將所有的標(biāo)簽標(biāo)識(shí)發(fā)給讀卡器。讀卡器通過哈希算法計(jì)算出H(IDj|| R),如果其值等于H(IDk|| R),認(rèn)證成功。
(5)如果認(rèn)證成功,讀卡器會(huì)把IDj發(fā)送給標(biāo)簽。
(6)標(biāo)簽對(duì)比IDj和IDk是否相同,相同認(rèn)證成功,不相同認(rèn)證失敗。
隨機(jī)Hash-lock協(xié)議存在的安全問題:在協(xié)議的認(rèn)證過程中可以發(fā)現(xiàn)在第⑤步中傳遞ID時(shí)仍然是以明文形式進(jìn)行了傳遞,攻擊者同樣也可以輕易獲取到標(biāo)簽的真實(shí)數(shù)據(jù),同時(shí)在協(xié)議第④步中,僅僅針對(duì)一個(gè)標(biāo)簽的認(rèn)證,后端數(shù)據(jù)庫(kù)會(huì)將所有的標(biāo)簽ID全部發(fā)給讀卡器,一方面加大了數(shù)據(jù)庫(kù)與讀卡器之間的通信開銷,另一方面也增加了讀卡器搜索驗(yàn)證的計(jì)算開銷,對(duì)于大量標(biāo)簽的RFID協(xié)議來(lái)說顯然不太適用[5]。
Hash鏈協(xié)議[11]是由NTT提出的,是對(duì)Hash-lock協(xié)議進(jìn)行了改進(jìn),是基于共享密鑰的詢問應(yīng)答協(xié)議。過程如圖3所示。
Hash鏈協(xié)議引入了標(biāo)簽ID的動(dòng)態(tài)更新機(jī)制[3],使標(biāo)簽的信息不可分辨,但是我們可以發(fā)現(xiàn)協(xié)議只是對(duì)標(biāo)簽身份進(jìn)行了合法認(rèn)證,對(duì)讀卡器的身份并沒有進(jìn)行有效的認(rèn)證。因此這種單向的認(rèn)證容易遭受到非法讀卡器的攻擊,從而產(chǎn)生較大的安全隱患。除此之外hash鏈協(xié)議仍然存在大量標(biāo)簽ID的發(fā)送和接收,對(duì)數(shù)據(jù)庫(kù)和讀卡器都會(huì)有較大的計(jì)算開銷。
圖3 hash鏈協(xié)議認(rèn)證過程
通過上述幾種協(xié)議的分析和研究,發(fā)現(xiàn)了現(xiàn)有幾種安全認(rèn)證協(xié)議存在的問題,基于上述分析,本文提出了一種改進(jìn)的基于hash函數(shù)的RFID雙向認(rèn)證安全協(xié)議,基本能夠達(dá)到安全目標(biāo)。
標(biāo)簽有秘密值S和隨機(jī)數(shù)Rt,數(shù)據(jù)庫(kù)也會(huì)產(chǎn)生一個(gè)隨機(jī)數(shù)Rd,通過哈希算法對(duì)數(shù)據(jù)庫(kù)和標(biāo)簽中的值進(jìn)行比較,完全相同時(shí)表示認(rèn)證成功。協(xié)議認(rèn)證過程如圖4。
圖4 RFID雙向協(xié)議認(rèn)證過程
(1)當(dāng)讀卡器向標(biāo)簽發(fā)送請(qǐng)求時(shí),數(shù)據(jù)庫(kù)會(huì)立即產(chǎn)生一個(gè)隨機(jī)數(shù)Rd,讀卡器把Rd發(fā)送給標(biāo)簽。
(2)標(biāo)簽本身有一個(gè)S秘密值,還會(huì)產(chǎn)生一個(gè)隨機(jī)數(shù)Rt,標(biāo)簽會(huì)將ID和Rd進(jìn)行哈希得到一個(gè)數(shù)值,再和S進(jìn)行異或最終得到數(shù)值St。
(3)標(biāo)簽將數(shù)值St和隨機(jī)數(shù)Rt一起發(fā)給讀卡器,讀卡器再轉(zhuǎn)發(fā)給數(shù)據(jù)庫(kù)。
(4)數(shù)據(jù)庫(kù)接收到消息以后會(huì)去檢索系統(tǒng)中的數(shù)據(jù)是否存在某個(gè)IDj(1≤j≤n),使H(IDj|| Rd)⊕S=St是否成立,如果不等于則認(rèn)證失敗。如果等于,數(shù)據(jù)庫(kù)會(huì)根據(jù)IDj和Rt的哈希值與S異或得到Sd。
(5)通過讀卡器把Sd傳給標(biāo)簽。
(6)標(biāo)簽收到信息后計(jì)算St=H(ID || Rt)⊕S,如果其值等于Sd,則認(rèn)證成功。
(1)向前安全性
由于隨機(jī)數(shù)Rd和Rt,秘密值S都是可變的,所以即使黑客獲取到了St的值也查不出標(biāo)簽之前的運(yùn)作數(shù)據(jù)。
(2)雙向認(rèn)證
在數(shù)據(jù)庫(kù)通過哈希算法[7]比較H(IDj|| Rd)⊕S和H(ID || Rd)⊕S是否相同,以及在標(biāo)簽中通過哈希算法比較H(IDj|| Rt)⊕S和H(ID || Rt)⊕S是否相同,實(shí)現(xiàn)協(xié)議的雙向認(rèn)證。
(3)防位置跟蹤
由于Rd和秘密值S是隨機(jī)的,所以每次St的值也是可變的,有效防止了位置跟蹤。
(4)防竊聽
標(biāo)簽ID值并沒有在傳輸消息的過程中出現(xiàn),所以非法用戶無(wú)法竊聽到標(biāo)簽的真實(shí)ID。
(5)防重傳攻擊
由于秘密值S的可變性,黑客不能再次模擬出數(shù)值Sd,有效的防止了重傳攻擊。
(6)防假冒攻擊
假如非法者用非法標(biāo)簽[8]偽裝成合法標(biāo)簽,并使用非法算法返回給讀卡器認(rèn)證,由于數(shù)據(jù)庫(kù)產(chǎn)生的隨機(jī)數(shù)Rd和秘密值S可變,計(jì)算出來(lái)的St的值和偽裝的St值不會(huì)相同,所以標(biāo)簽無(wú)法通過讀卡器的認(rèn)證。
如表1所示,列出了幾種協(xié)議和本文協(xié)議進(jìn)行的比較。
表1 協(xié)議安全性對(duì)比
本文通過分析和比較三種現(xiàn)有RFID安全認(rèn)證協(xié)議,提出了一種改進(jìn)的基于Hash函數(shù)的RFID雙向認(rèn)證協(xié)議,基本滿足了安全目標(biāo),有效克服已有認(rèn)證協(xié)議的諸多缺陷,對(duì)設(shè)計(jì)高效的、安全的、低成本的RFID認(rèn)證協(xié)議具有比較重要的理論指導(dǎo)意義。
[1]周永彬,馮登國(guó).RFID安全協(xié)議的設(shè)計(jì)與分析[J].計(jì)算機(jī)學(xué)報(bào),2006.
[2]王旭宇,景鳳宣,王雨晴.一種基于Hash函數(shù)的RFID認(rèn)證改進(jìn)協(xié)議[J].山東大學(xué)學(xué)報(bào)(理學(xué)版),2014.
[3]周曄.基于Hash鏈的RFID雙向認(rèn)證協(xié)議的設(shè)計(jì)[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2014.
[4]丁振華,李錦濤,馮波.基于Hash 函數(shù)的RFID安全認(rèn)證協(xié)議研究[J]. 計(jì)算機(jī)研究與發(fā)展,2009.
[5]張兵,馬新新,秦志光.輕量級(jí)RFID雙向認(rèn)證協(xié)議設(shè)計(jì)與分析[J].電子科技大學(xué)學(xué)報(bào),2013.
[6]黃穩(wěn)定,鄔春學(xué),高華.基于hash函數(shù)的RFID安全認(rèn)證協(xié)議研究[J].軟件導(dǎo)刊,2017.
[7]王家超.一種基于雙向Hash認(rèn)證協(xié)議的RFID標(biāo)簽動(dòng)態(tài)管理設(shè)計(jì)[D].電子科技大學(xué)碩士論文,2017.
[8]石春華.一種基于Hash函數(shù)的RFID安全認(rèn)證協(xié)議的設(shè)計(jì)與實(shí)現(xiàn)[D]. 電子科技大學(xué)碩士論文,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.
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2021年2期