陳 莊,陳亞茹
(重慶理工大學(xué) 計算機科學(xué)與工程學(xué)院, 重慶 400054)
基于hash實現(xiàn)低成本RFID的SRFID安全方案
陳 莊,陳亞茹
(重慶理工大學(xué) 計算機科學(xué)與工程學(xué)院, 重慶 400054)
針對RFID技術(shù)在安全和隱私方面存在的問題,提出在后臺服務(wù)器和標(biāo)簽之間相互認證的兩個步驟,改進了傳統(tǒng)的在標(biāo)簽、閱讀器和后端服務(wù)器需要一個安全通道來完成相互認證的過程。提出的方案基于一個單向散列函數(shù)和共享信息同步來實現(xiàn)簡單、低成本、可伸縮的安全性認證,解決了安全標(biāo)簽所有者轉(zhuǎn)移和標(biāo)簽委托的問題。分析結(jié)果表明:該方案安全性較強。
RFID;散列函數(shù);認證;隱私和安全
目前,RFID是一種很有前景的技術(shù)。被動型的標(biāo)簽由于大都采用低成本的設(shè)計,它的標(biāo)簽計算能力較弱,在后端服務(wù)器和標(biāo)簽之間的認證過程中,傳統(tǒng)方式需要一個安全的通道來完成相互認證,其中還需要安全標(biāo)簽所有者轉(zhuǎn)移和標(biāo)簽委托。一般情況下,每個閱讀器用一種安全和同步的方式去改變標(biāo)簽的ID。大量的黑客人員會利用這個漏洞來進行竊聽攻擊、重播攻擊、標(biāo)記跟蹤,標(biāo)記克隆或中間人跟蹤,從而達到利用跟蹤標(biāo)簽來攻擊后端服務(wù)器或者獲取服務(wù)器數(shù)據(jù)的目的。
近年來,隨著對散列函數(shù)的不斷深入研究,出現(xiàn)了基于散列函數(shù)的認證方案。文獻[3]提出的基于ID協(xié)議變化認證算法采用hash-lock協(xié)議,通過metaID=H(K)方法來隱藏真實的ID。盡管該方案提供了一種保證傳輸數(shù)據(jù)安全性的方法,但是攻擊方也容易通過標(biāo)簽追蹤到其ID,影響了RFID的安全性。文獻[4] 提出了一種雙向認證協(xié)議,閱讀器和標(biāo)簽基于同步信息進行身份認證,使同步傳輸數(shù)據(jù)被后端服務(wù)器監(jiān)管。但是,該協(xié)議容易被拒絕服務(wù)和造成標(biāo)簽?zāi)M攻擊。文獻[5]證實了這個后端服務(wù)器利用O(n)識別標(biāo)簽。文獻[6]改進了文獻[3-4]的方法,針對提出的協(xié)議允許在數(shù)據(jù)交換的過程中進行雙向身份認證,同時防止在認證過程中標(biāo)簽ID被篡改。但存在下面3點不足:
① 方案是不可伸縮的;
② 端服務(wù)器不能處理大量的便簽信息。使用相同的無線通道時無法識別出多個標(biāo)簽,后端服務(wù)器需要詳細地識別個人標(biāo)簽;
③ 過多使用hash函數(shù)計算增加了成本,被動型標(biāo)簽無法滿足要求;
針對以上問題,本文為被動型的標(biāo)簽提供了一種安全機制,這就意味著復(fù)雜的密碼學(xué)不適合用于這種類型的標(biāo)簽。本文提出的方案僅需少量的計算,由于算法需要一種單向的哈希函數(shù),因此該方案適用于這些被動型的標(biāo)簽。
為了解決上述安全問題,需要考慮如下:
1) 相互身份認證:允許讀寫器和標(biāo)簽在數(shù)據(jù)傳輸過程中驗證對方的身份;
2) 機密性:攻擊者可通過標(biāo)簽在不安全信息通道進行信息傳遞的過程中計算出某個數(shù)值;
3) 不可分辨性:傳輸?shù)臉?biāo)簽信息不和另一個標(biāo)簽傳輸信息相同;
4) 向前安全性:之前傳輸?shù)男畔⒉荒苁褂卯?dāng)前的傳輸標(biāo)記信息進行跟蹤;
5) 去同步性:RFID具有抵抗攻擊的能力,目標(biāo)是失去同步的標(biāo)簽和后端服務(wù)器。
6) 標(biāo)記委托:委托允許后端服務(wù)器將識別和驗證標(biāo)記的權(quán)限委托給指定的實體,以獲得有限數(shù)量的查詢。
7) 標(biāo)簽所有權(quán)轉(zhuǎn)移:標(biāo)簽所有權(quán)意味著具有身份標(biāo)簽和控制所有相關(guān)信息的授權(quán)。
本文提出的解決RFID安全和隱私問題的安全方案提供了雙向認證和標(biāo)簽ID更新,能防止在標(biāo)簽和后端服務(wù)器的跟蹤、克隆和竊聽行為,以及其他部分的攻擊。該方案滿足了前述的安全需求,方案基于響應(yīng)-回復(fù)機制,在后端服務(wù)器存儲標(biāo)簽的所有相關(guān)信息,標(biāo)簽的內(nèi)容是唯一的ID索引。為了解決仿冒攻擊時,標(biāo)簽和后端服務(wù)器進行相互認證,這個相互認證是基于標(biāo)簽和后端服務(wù)器共享的秘密數(shù)據(jù)。
在身份認證成功之后,標(biāo)簽ID更新被后端服務(wù)器更新,保證了系統(tǒng)安全性。由于這些更新機制可能導(dǎo)致去同步化攻擊,因此在后端服務(wù)器中通過密鑰保持了當(dāng)前數(shù)據(jù)的記錄和數(shù)據(jù)更新的過程。當(dāng)認證失敗時,系統(tǒng)會根據(jù)之前的數(shù)據(jù)恢復(fù)舊的ID進行身份認證。安全標(biāo)簽所有者轉(zhuǎn)移和標(biāo)簽委托更新也被提出來。
在提出的方案中,包含以下假設(shè):
1) 標(biāo)簽的處理能力有限;.
2) 后端服務(wù)器的計算能力顯著高于標(biāo)簽;
3) 如果詳細的標(biāo)簽信息從后端服務(wù)器傳到標(biāo)簽是在身份認證之后,則后端服務(wù)器和閱讀器的通道被假定是安全的。否則,提議的方案在服務(wù)器和標(biāo)簽之間的安全通道不需要雙向認證。
4) 閱讀器和標(biāo)簽之間的通信處于不安全的無線通道;
5) 標(biāo)簽是被動型的,并且只需要有1個單向的hash函數(shù),這就使得該協(xié)議適用于低成本的RFID;
6) 標(biāo)記和后端服務(wù)器共享兩個數(shù)值:
? IDHZ是一個被隱藏的標(biāo)識號,被標(biāo)簽,后端服務(wù)器唯一識別且可更新每次身份認證的會話;
? SQNZ是一系列數(shù),被標(biāo)簽,后端服務(wù)器唯一識別且可以更新每次身份認證的會話。SQN最初的數(shù)據(jù)是n0。SQN的一系列數(shù)據(jù)可有效地阻止第三方使用被攔截的身份驗證消息,可對數(shù)據(jù)進行身份認證以發(fā)現(xiàn)假數(shù)據(jù)。它還可以驗證在身份認證之前從標(biāo)簽到后端服務(wù)器的數(shù)據(jù)是否被使用過。
這兩個值由后端服務(wù)器產(chǎn)生,并在部署前以一種安全的方式將標(biāo)記傳輸?shù)綌?shù)據(jù)庫中。
7) 后端服務(wù)器數(shù)據(jù)庫為每個標(biāo)記存儲了3個值:ID、IDold和IDH-old,其中ID是標(biāo)記的當(dāng)前ID;IDold是最后一個會話標(biāo)記的ID;IDH-old是最后一個會話標(biāo)記隱藏的ID。
通過授權(quán)的設(shè)備進行標(biāo)記識別,標(biāo)簽,閱讀器和服務(wù)器進行SRFID認證的流程見圖1。
圖1 SRFID認證
步驟1 讀寫器向標(biāo)簽發(fā)送查詢或隨機的編號R。
步驟2 收到R后,標(biāo)簽根據(jù)IDT=h(IDH||SQN)計算出當(dāng)前的ID,并根據(jù)M1=h(IDH||R)查看數(shù)據(jù),隨后把數(shù)據(jù)傳給讀寫器,R將其傳給后端服務(wù)器,在服務(wù)器中使用IDT和M1函數(shù)。
步驟3 后端服務(wù)器收到IDT和M1后,將根據(jù)ID搜索數(shù)據(jù)庫,為標(biāo)簽ID找到相對應(yīng)的標(biāo)記記錄。
步驟4 后端服務(wù)器通過M1′=h(IDH||R)和接收到的IDT進行比較,如果ID和數(shù)據(jù)沒有匹配成功,數(shù)據(jù)傳輸終止;如果匹配成功,則后端服務(wù)器保存數(shù)據(jù)。
步驟5 后端服務(wù)器對標(biāo)簽進行身份驗證:
?SQNZ的增加:采用SQN=INC(SQN)函數(shù)來實現(xiàn);
? 保留當(dāng)前的IDh:IDold=IDh,用以解決之后不正常的數(shù)據(jù)傳輸;
? 更新IDh:IDh=h(SQN||IDH);
步驟6IDT、M2和R發(fā)送標(biāo)記的閱讀器;
步驟7 后端服務(wù)器更新下一個身份驗證過程的當(dāng)前標(biāo)記ID:
?SQNZ再增加一次:SQN=INC(SQN);
? 保留當(dāng)前的IDold:防止以后的異常操作問題;
? 計算出下一個標(biāo)簽的ID:ID=h(IDH,SQN);
步驟8 標(biāo)簽收到M2和R,對后端服務(wù)器和標(biāo)簽認證如下:
? 增加SQN:SQN=INC(SQN),匹配服務(wù)器在步驟5中計算的SQN的值;
? 計算IDtmp=h(SQN||IDH),與步驟5中服務(wù)器計算的IDH值相匹配。
步驟9 進行標(biāo)簽更新:SQN=DEC(SQN),IDH:IDH=IDtmp
本文方案是可擴展的。它提供標(biāo)簽授權(quán)和轉(zhuǎn)移所有權(quán)的有效途徑。為了證明本文方案的可伸縮性,采用文獻[2]中使用的方法和假設(shè)。
2.3.1 標(biāo)簽授權(quán)
2.3.2 所有權(quán)轉(zhuǎn)移
為了實現(xiàn)標(biāo)簽T的所有權(quán)轉(zhuǎn)移,S必須通過安全通道將秘密的IDH和SQN傳遞給新的所有者。這種轉(zhuǎn)移只發(fā)生在以往用戶已更新標(biāo)簽和實體,為了保護可能會被新的所有者追蹤信息的情況下。在收到來自以往服務(wù)器的信息時,新的所有者的服務(wù)器應(yīng)更新標(biāo)簽的秘密, 因此需要保證之前信息傳遞的隱私,防止被新的用戶追蹤。新用戶對標(biāo)簽進行跟蹤時,需要確保沒有被以往用戶竊聽。一旦更新完成,只有新用戶的服務(wù)器能鑒定和更新標(biāo)簽T。標(biāo)記秘密更新協(xié)議流程見圖2。
步驟1 服務(wù)器將一個更新消息和一個隨機數(shù)R通過閱讀器傳遞給標(biāo)記;
步驟2 收到R之后,根據(jù)IDT=h(IDH||SQN) 和M1=H(IDH||R) 標(biāo)簽計算出IDH和M1,傳遞給閱讀器,并連同R轉(zhuǎn)發(fā)給服務(wù)器。
步驟3 當(dāng)后端服務(wù)器接收IDT和M1后,與儲存的ID和M1進行比較。如果它們不匹配,則連接終止;如果匹配,則后端服務(wù)器生成一個隨機數(shù)R0并執(zhí)行以下計算:
1)M2=IDH/new⊕h(R′||IDH),將新的IDH安全傳輸?shù)綐?biāo)簽;
2)M3=SQNnew⊕h(R′||SQN),將新的SQN安全傳輸?shù)綐?biāo)簽;
3)M4=h(IDH/new||SQNnew||R′);
4)ID=IDH/new,IDH增加新值;
5)SQN=SQNnew,為SQN增加新值。
步驟4 后端服務(wù)器發(fā)送IDT,R′,M2,M3給閱讀器,并將其轉(zhuǎn)發(fā)到標(biāo)簽;
步驟5 當(dāng)標(biāo)簽收到R′,M2,M3后進行以下計算:
?IDtmp=M2⊕h(R′||IDH)
?SQNtmp=M3⊕h(R′||SQN)
圖2 標(biāo)記秘密更新協(xié)議
通過SRFID協(xié)議,對手可以采用竊聽攻擊方式獲得R′,M2,M3,ID,并試圖使用這些信息來確定IDH或SQN。由于這些值被哈希函數(shù)和XOR操作保護,因此不能通過簡單的竊聽來發(fā)現(xiàn),說明本文方案是不受竊聽的。
攻擊者不能重復(fù)使用以往會話中的數(shù)據(jù),因為每個響應(yīng)都會產(chǎn)生一個新隨機數(shù)的加密函數(shù)。具體地說,就是M2,M3,M4取決于R,ID依賴于在標(biāo)記和后端服務(wù)器之間共享的SQN,并需要更新每個身份驗證會話。
如果攻擊方想要克隆一個真實的標(biāo)簽,通過制造一個帶有竊聽信息的假標(biāo)簽,它需要先查詢到標(biāo)簽并獲得響應(yīng)ID和M1;接著,攻擊方把ID放在偽造的標(biāo)簽上,如果RFID閱讀器相信假標(biāo)簽是真實的,那么攻擊方就會成功。由于攻擊方無法預(yù)測隨機數(shù)R,將從真正的標(biāo)簽(M1)獲得散列值,因此,攻擊方不能克隆一個標(biāo)簽來欺騙讀者。
活躍的攻擊者可以截獲來自讀者的第5個消息給標(biāo)簽,后端服務(wù)器刷新了密鑰,標(biāo)記將不會執(zhí)行。因此,后端服務(wù)器和標(biāo)記之間的共享鍵可能不同,DOS攻擊后由于去同步化攻擊,造成標(biāo)簽不能通過合法身份驗證,而本文提到的去同步化機制可使協(xié)議抵抗DOS攻擊。
一個攻擊者不能通過插入或修改消息來干擾交換的消息,因為使用隨機數(shù)R、IDH和SQN時只知道后端服務(wù)器和標(biāo)簽。
表2是與其他方案攻擊抵抗的比較。其中:田蕓[7]采用新匿名的RFID身份認證協(xié)議,簡稱ARAP;葉翔[1]采用低成本標(biāo)簽協(xié)議,使用哈希函數(shù)和XOR操作;柳毅[9]提出一種輕量級反去同步保護協(xié)議;周曄[8]提出基于散列相互認證身份協(xié)議,解決隱私問題。
SRFID新方案與現(xiàn)有方案的對比見表3。表3中:√表示滿足要求,—表示沒有滿足要求。
表2 與其他方案攻擊抵抗的比較
√:抵抗這種攻擊; *:部分抵抗這種攻擊; —:不能抵抗這種攻擊。
績效評估時,將根據(jù)計算成本、通信成本和存儲需求來評估所提議的方案的性能。其中:H代表散列操作;RNG代表產(chǎn)生隨機數(shù)操作;mod代表模塊化操作;IH代表哈希函數(shù)的長度輸出;IR:RNG代表長度的輸出;IS代表任何存儲值的長度。
表3 安全級別與其他方案的對比
表4 方案績效對比
本文基于hash實現(xiàn)低成本RFID系統(tǒng)的SRFID安全方案。該方案旨在解決現(xiàn)有方法關(guān)于RFID性能和安全方面的問題。通過與幾種攻擊方案的比較,發(fā)現(xiàn)其在前向安全性、去同化性、安全標(biāo)簽委托,以及安全標(biāo)簽所有權(quán)轉(zhuǎn)移性能方面優(yōu)于現(xiàn)有的方案。雖然本文方案在安全性方面需要一些成本,但經(jīng)過研究發(fā)現(xiàn),成本是合理的,且與之前提出的方案相比甚至更低,其計算成本低于其他方案,標(biāo)簽T只需要4個哈希操作。本文方案有兩個獨特的功能支持可伸縮性,后端服務(wù)器只需要O(1)去進行標(biāo)簽識別,標(biāo)簽委托和所有權(quán)轉(zhuǎn)移是簡單的。本文還介紹了一種為安全標(biāo)簽所有權(quán)轉(zhuǎn)移更新標(biāo)簽機密的協(xié)議。
[1] 葉翔,徐展,胡翔,等.低成本有源RFID雙向認證加密方案[J].計算機應(yīng)用,2014(2):456-460.
[2] 謝永,章義來.一種基于Hash的RFID雙向認證的安全協(xié)議[J].湖南科技大學(xué)學(xué)報(自然科學(xué)版),2012(4):73-77.
[3] 何長林,劉煒.基于Hash的ID協(xié)議變化認證算法在RFID系統(tǒng)中的應(yīng)用[J].物聯(lián)網(wǎng)技術(shù),2014(9):48-4951.
[4] 王愛明,李艾華,穆曉曦.用Hash鎖方法解決RFID的安全與隱私問題[J].中國防偽報道,2006(10):43-47.
[5] 李慧賢.輕量級RFID雙向認證協(xié)議設(shè)計與分析[J].西安電子科技大學(xué)學(xué)報,2012(1):172-178.
[6] 王立斌,馬昌社,王濤.一種安全高效的RFID雙邊認證協(xié)議[J].計算機應(yīng)用,2008(9):2236-2238.
[7] 田蕓,陳恭亮,李建華.針對RFID身份認證協(xié)議——ARAP協(xié)議的攻擊及改進[J].中國電子科學(xué)研究院學(xué)報,2011(6):556-560.
[8] 周曄.基于Hash鏈的RFID雙向認證協(xié)議的設(shè)計[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2014(4):100-101,104.
[9] 柳毅,顧國生.一種新的輕量級RFID雙向認證協(xié)議[J].計算機科學(xué),2017(2):206-208,227.
Hash-BasedSecuritySRFIDSchemeforLowCostRFIDSystems
CHEN Zhuang, CHEN Yaru
(College of Computer Science and Engineering, Chongqing University of Technology, Chongqing 400054, China)
In the existing security and privacy problems, the proposed scheme provides a two steps mutual authentication between the backend server and the tag which does not require a secure channel between the tag reader and the backend server to complete the authentication process. A new simple, low cost, and scalable security scheme relying on one-way hash functions and synchronized secret information is proposed, which meets the requirements for tag delegation and secure tag ownership transfer. Our analysis results show that the proposed scheme outperforms existing schemes in terms of security and performance.
RFID;hash function;authentication; privacy and security
2017-05-23
重慶市研究生科研創(chuàng)新項目(CYS16222);重慶理工大學(xué)研究生創(chuàng)新基金項目(YCX2016229)
陳莊(1964—),男,博士,教授,主要從事企業(yè)信息化管理、網(wǎng)絡(luò)與信息安全研究; 陳亞茹,女,碩士研究生,主要從事網(wǎng)絡(luò)與信息安全研究,E-mail:642200814@qq.com。
陳莊,陳亞茹.基于hash實現(xiàn)低成本RFID的SRFID安全方案[J].重慶理工大學(xué)學(xué)報(自然科學(xué)),2017(12):140-145,172.
formatCHEN Zhuang, CHEN Yaru.Hash-Based Security SRFID Scheme for Low Cost RFID Systems[J].Journal of Chongqing University of Technology(Natural Science),2017(12):140-145,172.
10.3969/j.issn.1674-8425(z).2017.12.024
TP302.7
A
1674-8425(2017)12-0140-06
(責(zé)任編輯楊黎麗)