專利名稱:一種可同步的rfid安全認證方法
技術領域:
本發(fā)明涉及一種可同步的RFID安全認證方法,屬于RFID系統(tǒng)通信安全領域。
背景技術:
近年來,隨著大規(guī)模集成電路和網絡通信等技術的發(fā)展,RFID技術已經廣泛進入商業(yè)化應用階段。由于RFID技術能夠進行非接觸式識別、多目標識別和高速移動物體識別,因此該技術顯現出巨大的市場前景和發(fā)展空間,被譽為21實際最優(yōu)發(fā)展前途的技術之一。然而,隨著RFID技術的大面積使用,其完全開放的設計帶來了嚴重的安全隱患,同時由于加解密需要耗費過多的處理能力,這必然會給低成本的標簽增加額外的開支,造成一些優(yōu)秀的安全工具無法嵌入到標簽中。其主要的安全風險包括以下幾個方面 機密性。標簽不能夠向未授權的讀寫器泄露任何消息。然后,無論是有源的RFID系統(tǒng)還是無源的RFID系統(tǒng),讀寫器在接收標簽發(fā)送的信號時,沒有安全機制的標簽會向鄰近的讀寫器泄露標簽的內容和一些重要信息。此時,惡意攻擊者能夠讀取、篡改標簽上的數據,其信息的保密性遭到破壞。完整性。數據的完整性是為了保證接收者收到的信息在傳輸過程中沒有被攻擊者篡改或替換。顯然,數字簽名由于其昂貴的開銷,已不適合在RFID系統(tǒng)中使用,因此必須找到適合RFID系統(tǒng)應用的完整性驗證方法??捎眯?。RFID系統(tǒng)提供的安全解決方案能夠被授權用戶使用的同時,還能夠有效防止非法攻擊者企圖中斷RFID服務的惡意攻擊。但這種方案必須具有節(jié)能的特點,各種安全協議和算法不能夠過于復雜,盡量避免使用公鑰算法等計算開銷較大的安全機制??烧J證性。攻擊者可以利用偽造標簽代替實際物品或通過重寫合法的標簽內容,使用低價物品標簽代替高價物品標簽并從中獲利,同時,攻擊者也可通過某種方式隱藏標簽,使讀寫器無法發(fā)現該標簽,從而成果實施物品的轉移。為此,讀寫器必須能夠對標簽進行身份確認,從而保證信息是從正確的標簽中發(fā)送過來的。隱私性。一個安全的RFID應用系統(tǒng)應當能夠保護使用者的隱私信息和相關的經濟實體的商業(yè)利益。而現有的RFID系統(tǒng)面臨著位置保密和實時跟蹤的安全風險,S卩個人攜帶貼有標簽的物品可能泄露個人的身份,通過讀寫器能夠跟蹤攜帶不安全標簽的個人,并將這些信息進行綜合和分寫,獲得使用者個人喜好和行蹤等隱私信息。前向安全性。即使攻擊者獲得了某次通信過程中的全部信息,入侵者也不能利用截獲的信息來獲得關于目標標簽之前的信息,如何時、何地認證的,標簽所處的環(huán)境等信肩、O后向安全性。入侵者獲得了認證過程中的所有信息,即使其有強大的攻擊能力,也不能從這些信息中破解標簽以后的認證信息、具體位置等。同步性。攻擊者如果在某次認證過程中阻塞、篡改了標簽的信息,那么就會使得后臺服務器和標簽的共享信息出現不同步狀態(tài),從而造成下次認證過程中標簽無法通過認證。發(fā)明內容本發(fā)明提供了一種可同步的RFID安全認證方法,在系統(tǒng)安全和有限資源之間尋求一種平衡,實現RFID讀寫器和標簽之間的雙向認證。該方法在RFID讀寫器和標簽之間建立一個安全通道,適用于資源嚴重受限、安全性要求較高的RFID應用場合。本發(fā)明為解決其技術問題采用如下技術方案
一種可同步的RFID安全認證方法,包括以下幾個步驟
(1)RFID讀寫器詢問標簽
讀寫器首先產生隨機數,連同詢問請求Query —起組成認證請求消息{ Query}
發(fā)送給標簽;
(2)標簽應答RFID讀寫器
標簽收到RFID讀寫器發(fā)送過來的認證請求消息{ Query}后,首先產生隨機數r2
,然后將·^、r2和ID進行異或運算,標簽利用其id號計算出本次認證所需
要的對稱密鑰A = ,接著,標簽產生加密信息^1 1 『2),計算ID的散列值
H(ID),最后將應答消息[&(iD T1Gr2LHdDM發(fā)送給標簽;
(3)RFID讀寫器向后臺服務器提交認證請求
RFID讀寫器收到來自標簽的應答消息{ ErMDm T1 r2) , H(ID)}后,連同自己產生的隨機數?i 一起通過安全通道發(fā)送給后臺服務器,其提交的認證請求為{十 q 十 r3) ,H(ID) };
(4)后臺服務器驗證認證請求
后臺服務器收到RFID讀寫器的認證請求{ EJJD ri , H(ID),^ I后,首先利用H(ID)在數據庫中查找對應的ID號,如果能夠找到匹配的ID號,則標簽的身份得到驗證,否則,該標簽是非法標簽;然后利用ID號計算本次通信所用的對稱密鑰馬=F(ID),解
密消息,得到,將該值與ID和q異或后得到標簽產生的本
次通信的隨機數#*2 ;
(5)后臺服務器提交RFID讀寫器的驗證消息
后臺服務器驗證了標簽的身份后,將獲得的隨機數r2、標簽的新ID號ID’和時間戳T
組合在一起,利用對稱密鑰Ki產生加密信息五u(7i|r2 ||/i 'r),然后將加密信息通過RFID
讀寫器發(fā)送給標簽,與此同時,后臺服務器將銷毀舊的對稱密鑰盡;
(6)標簽驗證RFID讀寫器的身份
標簽收到RFiD讀寫器發(fā)送過來的認證消息j^tr||r2||J£0后,利用其保存的密鑰解密該消息得到隨機數r2 ,如果隨機數r2與其產生的隨機數r2相同,則rfid讀寫器的身
份合法,否則,中斷與RFID讀寫器的聯系;RFID讀寫器的身份得到證實后,標簽利用獲得的時間戳修改其當前時鐘,利用新的ID’代替原ID號。本發(fā)明的有益效果如下
本發(fā)明有效解決了 RFID讀寫器和標簽之間的雙向認證問題,抵抗常見攻擊,實現了標簽的ID號動態(tài)變化和時鐘與RFID讀寫器同步問題的同時,有效控制了系統(tǒng)的能量消耗,適合系統(tǒng)資源受限且安全性要求高的RFID應用場合。
圖I為RFID系統(tǒng)結構圖。 圖2為本發(fā)明的步驟流程圖。
具體實施例方式 下面結合附圖對本發(fā)明創(chuàng)造做進一步詳細說明。本發(fā)明在RFID系統(tǒng)安全通信領域提出了一種能夠實現RFID讀寫器和標簽之間同步的安全認證方法,該方法采用對稱加密算法、Hash散列函數和多項式技術,在RFID讀寫器和標簽之間雙向認證時,實現了傳遞信息的機密性、完整性,消息的可認證性,保護了用戶隱私。在認證過程中,利用隨機數和動態(tài)標簽ID可以有效阻止入侵者實施重放攻擊,保證了系統(tǒng)的前向安全性和后向安全性。在本發(fā)明中,由于后臺服務器資源不受限制,RFID讀寫器資源完全有能力處理復雜的安全機制,因此,可以合理的認為RFID讀寫器和后臺服務器之間完全可以利用現有的安全策略實現其高安全通信(如圖1),此部分的安全需求不再本發(fā)明的考慮范圍內。I、系統(tǒng)的初始化
本方法所涉及到的設備,即后臺服務器、RFID讀寫器和標簽,在部署前都是集中在一個機構或組織中的,因此,系統(tǒng)在初始化過程中所涉及的一些敏感信息的傳輸安全是有充
分保證的。在初始化過程中,后臺服務器將為所有的標簽3}(J=L2,……,產生初始
的ID號,即LDyO1'= U,......》N) 0每個標簽中將加載一個Hash函數和一個多項式F
函數,而后臺服務器將除了保存相應的Hash函數和F多項式外,將保存標簽初始ID號與H(ID)之間的對應關系。然后,RFID讀寫器和后臺服務器之間建立可靠的安全通道,保證兩者之間信息傳輸的安全,但其采用的方法不在本發(fā)明中。2、認證方法的步驟如圖2所示。(I) RFID讀寫器詢問標簽
讀寫器首先產生隨機數〖I,連同詢問請求Query —起組成認證請求消息丨^ Query}發(fā)送給標簽。(2)標簽應答RFID讀寫器
標簽收到RFID讀寫器發(fā)送過來的認證請求消息{ Query}后,首先產生隨機數 *2
,然后將卩、r2和ID進行異或運算卩十$十/£),標簽利用其ID號計算出本次認證所需要的對稱密鑰,接著,標簽產生加密信息^(ID .^ /^ ,計算ID的散列值
H(ID),最后將應答消息[^.(JI^r^rlHaD)}發(fā)送給標簽。(3) RFID讀寫器向后臺服務器提交認證請求
RFID讀寫器收到來自標簽的應答消息{ EJJD T1 @ r2) , H(ID)}后,連同
自己產生的隨機數F1 —起通過安全通道發(fā)送給后臺服務器,其提交的認證請求為
{ Zs(II)十/^r2) ’H(ID),F1 }。(4)后臺服務器驗證認證請求
后臺服務器收到RFID讀寫器的認證請求{ ^.(JDe^erJ - H(ID), F1 }后,首先 利用H(ID)在數據庫中查找對應的ID號,如果能夠找到匹配的ID號,則標簽的身份得到驗證,否則,該標簽是非法標簽。然后利用ID號計算本次通信所用的對稱密鑰A = P(ZD),解
密消息EsPD十T1Sr2),得到/D fi r2 ,將該值與ID和^異或后得到標簽產生的本次通信的隨機數r2。(5)后臺服務器提交RFID讀寫器的驗證消息
后臺服務器驗證了標簽的身份后,將獲得的隨機數 *2、標簽的新ID號ID’和時間戳T
組合在一起,利用對稱密鑰K產生加密信息(r||r21iDl,然后將加密信息通過RFID
讀寫器發(fā)送給標簽,與此同時,后臺服務器將銷毀舊的對稱密鑰A。(6)標簽驗證RFID讀寫器的身份
標簽收到RFID讀寫器發(fā)送過來的認證消息jfffiir||r21 JDl后,利用其保存的密鑰
解密該消息得到隨機數r2 ,如果隨機數r2與其產生的隨機數r2相同,則rfid讀寫器的身
份合法,否則,中斷與RFID讀寫器的聯系。RFID讀寫器的身份得到證實后,標簽利用獲得的時間戳修改其當前時鐘,利用新的ID’代替原ID號。在RFID讀寫器和標簽之間進行雙向認證的過程中,為了避免新產生的ID號之間出現沖突,我們將每個ID號的變動約束在一個固定的范圍內變動,每次產生新的ID號時,它們都在其范圍內進行隨機選取。在RFID系統(tǒng)中,一般都會有M ARFID讀寫器乓(i =1Λ……,M),N個標簽
TjU =1,1,……,和一套后臺服務器。RFID讀寫器和標簽之間是多對多的關系,在不同的時間段,可能有多個不同的合法RFID讀寫器讀取標簽的信息,因此標簽的一些特殊信息,如標簽的ID和對稱密鑰Γ都保存在后臺服務器中,RFID讀寫器不保存這些敏感信肩、O在本發(fā)明中,標簽需要傳輸其ID號,為了保證其機密性,我們采用了 Hash函數計算其單項散列值,g卩H(ID),其散列值長度為128位,這樣即使入侵者獲取了該信息,也無法從這個信息中逆向推出標簽的ID號。在本發(fā)明中,為了驗證標簽的合法身份,標簽需要將RFID讀寫器發(fā)送來的隨機數\加密后傳輸,即EJJD q十r2),其中壬表述異或的邏輯運算,采用該方法能夠在保
證數據機密性的同時,縮短有效數據的長度。通過驗證密鑰A的有效性來驗證標簽的身份,這個過程在后臺服務器中完成,加密算法采用DES算法。在本發(fā)明中,為了保證對稱密鑰能夠經常更換,又不增加網絡的額外負擔,我
們采用了多項式技術,即A = P(D)。在此,選擇的多項式要考慮其計算的復雜度,以適應標簽資源限制的要求。根據不同標簽的資源情況,我們可以選擇不同的多項式。在本發(fā)明中,標簽和后臺服務器之間的對稱密鑰&并不保存在后臺服務器中。后臺服務器獲取RFID讀寫器發(fā)送過來的H(ID)后,從數據庫中查找相應的ID號,然后根據ID號計算對稱密鑰耳,S卩Ki= P(ID)。利用Ki來解密EJJD T1十G ),然后驗證rI是否
與RFID讀寫器發(fā)送的^ 一致,從而驗證了標簽的身份。在本發(fā)明中,為了阻止入侵者前向和后向攻擊,標簽的ID號將實現動態(tài)變化,SP 每次驗證后,標簽的ID號將發(fā)生改變,下次驗證的ID號將采用新修改的ID號。此時,RFID讀寫器和標簽之間的對稱密鑰也將隨之改變,但該密鑰并不在網上傳輸,而是直接通過保存在RFID讀寫器和標簽中的函數F計算得到。在本發(fā)明中,為了驗證RFID讀寫器的身份,我們設計了隨機數r2。在整個通信過程中,隨機數5都是以密文的形式傳輸,如果標簽能夠從獲得的密文^β^ζΓ|ι·2|/Ι/;)中得到正確的r2 ,那么就能夠驗證RFID讀寫器的身份是合法的。在本發(fā)明中,為了保證RFID讀寫器和標簽中保存的信息是同步的,必須保證RFID讀寫器和標簽的時鐘是同步的,為此,在RFID讀寫器每次讀寫標簽信息時,必須將后臺服務器的時鐘同步到標簽中。我們采用的方法是將后臺服務器的時間戳T加密后傳輸給標
簽,即方J5^rllr21/Df),標簽解密該信息獲得τ后,修改標簽的時鐘。
權利要求
1.一種可同步的RFID安全認證方法,其特征在于,包括以下幾個步驟 (1)RFID讀寫器詢問標簽 讀寫器首先產生隨機數丨i,連同詢問請求Query —起組成認證請求消息丨\ Query}發(fā)送給標簽; (2)標簽應答RFID讀寫器 標簽收到RFID讀寫器發(fā)送過來的認證請求消息{ Query}后,首先產生隨機數F2,然后將卩、r2和ID進行異或運算F10r2 ZD,標簽利用其ID號計算出本次認證所需要的對稱密鑰高= i (/D),接著,標簽產生加密,計算ID的散列值 H (ID),最后將應答消息[EJJD T1 Θγ2) ,H (ID)}發(fā)送給標簽; (3)RFID讀寫器向后臺服務器提交認證請求 RFID讀寫器收到來自標簽的應答消息{ EJJim T1 @ r2) , H(ID)}后,連同自己產生的隨機數L 一起通過安全通道發(fā)送給后臺服務器,其提交的認證請求為{,H(ID) }; (4)后臺服務器驗證認證請求 后臺服務器收到RFID讀寫器的認證請求{ EJJD I r2) , H(ID)、j后,首先利用H(ID)在數據庫中查找對應的ID號,如果能夠找到匹配的ID號,則標簽的身份得到驗證,否則,該標簽是非法標簽;然后利用ID號計算本次通信所用的對稱密鑰K = P(/切,解密消息EJID& & & r2),得到/D十,將該值與ID和^異或后得到標簽產生的本次通信的隨機數?*2 ; (5)后臺服務器提交RFID讀寫器的驗證消息 后臺服務器驗證了標簽的身份后,將獲得的隨機數r2、標簽的新ID號ID’和時間戳T組合在一起,利用對稱密鑰Ki產生加密信息五1 ^|||*2||101,然后將加密信息通過RFID讀寫器發(fā)送給標簽,與此同時,后臺服務器將銷毀舊的對稱密鑰A ; (6)標簽驗證RFID讀寫器的身份 標簽收到RFiD讀寫器發(fā)送過來的認證消息IB(r||r21Ji/)后,利用其保存的密鑰<解密該消息得到隨機數r2 ,如果隨機數r2與其產生的隨機數r2相同,則rfid讀寫器的身份合法,否則,中斷與RFID讀寫器的聯系;RFID讀寫器的身份得到證實后,標簽利用獲得的時間戳修改其當前時鐘,利用新的ID’代替原ID號。
全文摘要
本發(fā)明公開了一種可同步的RFID安全認證方法,屬于RFID系統(tǒng)通信安全領域。該方法包括以下幾個步驟(1)RFID讀寫器詢問標簽;(2)標簽應答RFID讀寫器;(3)RFID讀寫器向后臺服務器提交認證請求;(4)后臺服務器驗證認證請求;(5)后臺服務器提交RFID讀寫器的驗證消息;(6)標簽驗證RFID讀寫器的身份。該方法不僅能夠實現RFID讀寫器和標簽之間的雙向認證,抵抗各種常見的外部攻擊,而且能夠實現讀寫器和標簽之間的時鐘同步,實現標簽ID號的動態(tài)變化。該發(fā)明適合系統(tǒng)資源受限且安全性要求高的RFID應用場景。
文檔編號H04L9/32GK102882683SQ201210361508
公開日2013年1月16日 申請日期2012年9月26日 優(yōu)先權日2012年9月26日
發(fā)明者鄒濤, 辛柯俊, 黃杰 申請人:南京三寶科技股份有限公司