一種對象標識方法
【技術領域】
[0001]本發明涉及射頻識別,特別涉及一種對象標識方法。
【背景技術】
[0002]RFID是一種非接觸式的自動識別技術,具有識別過程無需人工干預、數據讀取方便快捷、有效識別距離遠、抗污染能力強的優點,在物流、跟蹤、定位等領域得到了廣泛應用。典型RFID系統包含標簽、掃描器和后端數據庫,標簽和掃描器通過無線信道傳遞信息,數據完全暴露,因此容易遭受外界攻擊。為了保證用戶的安全和隱私,已有多種基于加密算法的RFID安全協議,然而大多數協議被證明無法抵御跟蹤式攻擊。
【發明內容】
[0003]為解決上述現有技術所存在的問題,本發明提出了一種對象標識方法,包括:
[0004]掃描器確定當前識別模式為批量標簽模式還是單個標簽模式;
[0005]若為批量標簽模式,則掃描器將進行編組的標簽群組一次協議過程中全部進行讀與;
[0006]若為單個標簽模式,則掃描器對特定單個標簽進行讀寫。
[0007]優選地,后端數據庫為每個標簽保留兩個表:(ID1, K1, BID,M,RBID)。^^ (ID ,, K1,BID,M,RBID)_,其中在每次認證過程中均更新廣播群組編號BID、掩碼M、標簽密鑰K的值,RBID為標簽的實際群組編號,數據庫在協議過程中建立臨時緩存,用于緩存標簽更新成功信息;當標簽T1認證成功后,數據庫刪除對應T 4勺(ID y Ki,BID,M,RBID) 0LD,所述標簽1\有I個獨立的密鑰值K1,內部存儲(ID1, U),標簽中的隨機數發生器,生成隨機數,進行異或Θ、與Λ,以及哈希運算,所述BID中設有工作模式標志位,O為單個標簽模式,I為批量標簽模式。
[0008]優選地,所述若為批量標簽模式,則掃描器將進行編組的標簽群組一次協議過程中全部進行讀寫,進一步包括:
[0009]步驟1:數據庫激活標簽;
[0010]數據庫確認需要激活的標簽群組,根據組中成員數目確定本輪需要激活的標簽總數;數據庫生成隨機數rd,計算md= RBID ? M,將BID、m ,和r d經掃描器廣播至標簽;
[0011]標簽利用本地保存的掩碼M計算RBID’ = BID Λ M,m; = RBID’十M ;
[0012]標簽比較mjP m d’,若相等,確定標簽是應當被激活的標簽群組中成員;
[0013]標簽根據BID末位的標志位判斷本次協議工作模式,I為批量標簽模式,O為單個標簽模式;
[0014]步驟2:標簽認證數據庫的合法性;
[0015]對于標簽群組中的第i個標簽T1,在數據庫中計算C1=H (RBID,ID ,,K1^rd), H表示對消息進行哈希運算;將(:1經掃描器發送至標簽T1,標簽T1收到(^后,計算Cl’ =H (RBID',ID1, K1, rd);然后比較cjP c /,若相等,確定數據庫合法,否則發送失敗信號;
[0016]步驟3:數據庫認證標簽的合法性;
[0017]標簽T1確認數據庫的合法性后產生隨機數Γι,計算t1= HCrdjRBIDMDljK1^r1),將h、巧經掃描器發送至數據庫;數據庫收到t n巧后,計算t J = H(rd,RBID, ID1, K1, rx);然后比較tJP t /,若相等,確定標簽T1合法,否則拒絕T 1;若T i在預定時間內沒有回送消息,則數據庫確定本次協議失敗;
[0018]步驟4:更新廣播群組編號BID,掩碼M和標簽密鑰K ;數據庫確認標簽T1的合法性后生成隨機數rdi,計算BIDnew= BID ? r di,再計算Mnew= M ? rd 最終得RBIDnew =BIDnewA M 數據庫更新存儲的標簽密鑰,計算K inew= K,? M _,然后計算更新消息Hi1, In1= Mnew? r,? M,其中M來自于(ID^K1, BID, M, RBID) _,將Hi1經掃描器發送至標簽T 1;標簽!\收到m ;后,計算M = m; ? M ? r ;,再計算新的密鑰值Kinew’ = Ki ? M ;
[0019]步驟5:標簽發送更新完成確認消息;
[0020]標簽1\完成信息更新后生成確認消息ACK i,將ACK1S掃描器發送至數據庫;數據庫收到ACK1后,在緩存中保存“ Y”,刪除對應的(ID i,K1,BID,M,RBID) _,若在閾值Inax內沒收到標簽發送的ACK,數據庫在對應標簽的緩存中保存“N” ;
[0021]步驟6:到達時間閾值!~_后,數據庫開始認證下一個標簽,對標簽T 1重復步驟2至5 ;直到群組中所有標簽完成響應。
[0022]本發明相比現有技術,具有以下優點:
[0023]本發明提出了一種對象標識方法,克服了現有方法無法抵御跟蹤式攻擊的缺陷,提高了對批量對象標簽的識別效率,具有較高的實用性。
【附圖說明】
[0024]圖1是根據本發明實施例的對象標識方法的流程圖。
【具體實施方式】
[0025]下文與圖示本發明原理的附圖一起提供對本發明一個或者多個實施例的詳細描述。結合這樣的實施例描述本發明,但是本發明不限于任何實施例。本發明的范圍僅由權利要求書限定,并且本發明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細節以便提供對本發明的透徹理解。出于示例的目的而提供這些細節,并且無這些具體細節中的一些或者所有細節也可以根據權利要求書實現本發明。
[0026]本發明中掃描器選擇特定的一組標簽,并在一次協議過程中自動完成組中所有標簽的識別。標簽閱讀過程具有兩種工作模式,批量標簽模式將一類對象的標簽進行編組,掃描器在一次協議過程中讀寫組中所有標簽,單個標簽模式用于對特定目的的單個標簽讀寫。使用異或(? )、與(Λ )、哈希運算,下文所涉及標記符號的含義如下所示。
[0027]ID:標簽標識符
[0028]H (m):對消息m進行哈希運算
[0029]K:標簽密鑰
[0030]rd:數據庫生成的隨機數
[0031]M:掩碼
[0032]Γι:標簽T1生成的隨機數
[0033]BID:廣播群組編號
[0034]ACK:標簽更新完成確認消息
[0035]RBID:實際群組編號
[0036]Tniax標簽認證時間閾值
[0037]后端數據庫中存儲(101,^10,1,1?10),其中廣播群組編號810、掩碼1、密鑰1(的值在每次認證過程中都會更新。數據庫在協議過程中建立臨時緩存,用于緩存標簽更新成功信息。數據庫為每個標簽保留兩個表:(ID1, K1, BID,M,RBIDUP (ID 口 K1, BID,M,RBID)_,當標簽T1認證成功后,數據庫刪除對應T工的(ID P Ki, BID,M,RBID)oldo假設掃描器和后端數據庫之間的信道是安全的。含有8個標簽的標簽群組BID格式滿足批量標簽模式和單個標簽模式間的相互切換。標簽!\有I個獨立的密鑰值K1,內部存儲(ID1, KyM)。標簽具有隨機數發生器,能夠生成隨機數,可以進行異或(? )、與(Λ )、哈希運算。
[0038]BID中設有工作模式標志位,O為單個標簽模式,I為批量標簽模式。批量標簽模式相互認證過程為:
[0039]步驟1:數據庫激活標簽。
[0040]數據庫確認需要激活的標簽群組,根據組中成員數目確定本輪需要激活的標簽總數。數據庫生成隨機數rd,計算md= RBID ? M,將BID、m ,和r 掃描器廣播至標簽。
[0041]標簽利用本地保存的M計算RBID’ = BID Λ M,m; = RBID’十Μ。
[0042]標簽比較mjP m ;,若相等,說明標簽是應當被激活的標簽群組中成員。
[0043]標簽根據BID末位的標志位判斷本次協議工作模式,I為批量標簽模式,O為單個標簽模式。
[0044]步驟2:標簽認證數據庫的合法性。
[0045]以標簽群組中第I個標簽T1為例,數據庫計算c != H(RBID,ID ” K1, rd),將cl經掃描器發送至標簽!\。標簽T1收到C 1后,計算C / = H(RBIDMDljK1^rd)0然后比較?和c/,若相等,說明數據庫合法,否則發送失敗信號。
[0046]步驟3:數據庫認證標簽的合法性。
[0047]標簽Tl確認數據庫的合法性后產生隨機數F1,計算t1= H(r d,RBID’,IDpK1J1),將tl、rl經掃描器發送至數據庫。數據庫收到^、巧后,計算tl’ = H(r d,RBID,IDljK1^r1)。然后比