一種滿足后向安全的rfid雙向認(rèn)證方法
【專利摘要】本發(fā)明公開了一種滿足后向安全的RFID雙向認(rèn)證方法,包括步驟:讀寫器生成兩個都是L位長度的隨機數(shù)R1和R2,根據(jù)標(biāo)識符ID_L、ID_R計算出A和B的值,然后將A、B的值以及認(rèn)證請求命令一同發(fā)給標(biāo)簽;標(biāo)簽通過A、B的值計算得到R1_T、R2_T,然后再利用密鑰KEY_T、R1_T、R2_T建立一標(biāo)簽真?zhèn)悟炞C公式,計算得到標(biāo)簽真?zhèn)悟炞C值C_T,將C_T值傳給讀寫器;讀寫器將自身存儲的密鑰KEY以及生成的R1和R2代入上述的標(biāo)簽真?zhèn)悟炞C公式,驗證標(biāo)簽的真?zhèn)巍H绻麡?biāo)簽是合法的,讀寫器用當(dāng)前密鑰KEY以及生成的隨機數(shù)R2計算得到讀寫器真?zhèn)悟炞C值D,將D值傳給標(biāo)簽,讀寫器更新密鑰。標(biāo)簽在收到讀寫器傳來的D之后,驗證讀寫器的真?zhèn)巍H绻炞C讀寫器是合法的,則標(biāo)簽更新自身存放的密鑰。
【專利說明】
-種滿足后向安全的RF ID雙向認(rèn)證方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及射頻識別研究領(lǐng)域,特別設(shè)及一種RFID系統(tǒng)中標(biāo)簽與讀寫器之間滿足 后向安全的RFID雙向認(rèn)證方法。
【背景技術(shù)】
[0002] 無線射頻識別技術(shù)(radio frequen巧identification,RFID)是一種利用射頻信 號實現(xiàn)無接觸信息傳輸,并且通過所傳輸?shù)男畔磉_(dá)到識別的目的的技術(shù)。由于RFID技術(shù) 是利用無線射頻通道來交換數(shù)據(jù),因此很容易受到外部環(huán)境的干擾W及攻擊者的惡意攻 擊。如果RFID標(biāo)簽中存放的個人信息或者商業(yè)情報等被惡意的攻擊者非法獲取,會給使用 者帶來巨大的損失。
[0003] 為克服上述問題,研究人員提出了許多基于偽隨機數(shù)生成器的認(rèn)證協(xié)議,運類協(xié) 議可W實現(xiàn)安全與隱私保護;同時也提出了一些基于位運算和HA甜函數(shù)的輕量級RFID認(rèn)證 協(xié)議,但是運些協(xié)議都存在安全隱患或是認(rèn)證效率低等問題。例如,Godor G等人提出的認(rèn) 證方案不能抵抗去同步攻擊,攻擊者可W通過重放消息,使讀寫器與標(biāo)簽兩者之間的密鑰 不一致,從而破壞兩者之間的后續(xù)認(rèn)證(Godor G,Imre S. Hash-based mutual authentication protocol for low-cost RFID systems[C]//Proc of the 18th EUNICE Conf on Informstion 曰nd Communicstions Technologies.Berlin:Springer,2012:76-87.) ;Miyaji A等人提出的認(rèn)證方案其實質(zhì)是一個捜索協(xié)議,并不能算一個雙向認(rèn)證協(xié)議 (Miyaji A,Rahman M S.KIMAP:Key-insulated mutual authentication protocol for RFID[J].Int Journal of Automated Identification Technology,2011,3(2):61-74.); Mamun M SI等人提出的認(rèn)證方案不能抵抗主動攻擊,攻擊者通過不斷的詢問標(biāo)簽,來分析 標(biāo)簽的回復(fù)信息,就可W完全推導(dǎo)出標(biāo)簽中存放的所有密鑰信息(Mamun M S !,Miyaji A, Rahman M S.A secure and private RFID authentication protocol under SLPN problem[C]//Proc of the 6th Int Conf on Network and System Security.Berlin: Springer,2012:476-489.);Alomair B等人提出的認(rèn)證方案不能提供向后的隱私安全性 (Alomair B,Cuellar J,Poovendran R.Scalable RFID systems:A privacy-preserving protocol with constant time identification[J]. IEEE Trans on Parallel and Distributed Systems,2012,23(8): 1-10.);杜宗印等人根據(jù)遺傳算法的相關(guān)知識提出了 交叉位運算,并結(jié)合X0R、Rot運算提出了 CURAP協(xié)議,但是CURAP在運算方面過于簡單,安全 性略顯不足,同時該協(xié)議在每次認(rèn)證完成之后,標(biāo)簽與讀寫器兩者之間密鑰的更新過程過 于復(fù)雜且計算量相對較大(杜宗印,章國安,袁紅林.基于交叉位運算的超輕量RFID認(rèn)證協(xié) 議[J].計算機科學(xué),2013,40(11): 35-37 .);王少輝等人提出的方案不能抵抗暴力破解攻 擊,因為rl和r2采用明文傳輸,因此攻擊者很容易獲取rl和采用窮舉法可W推導(dǎo)出標(biāo)簽 中存放的密鑰信息(王少輝,劉素娟,陳丹偉.滿足后向隱私的可擴展RFID雙向認(rèn)證方案 [J].計算機研究與發(fā)展,2013,50(6): 1276-1284.)?;谏厦娴臄⑹觯O(shè)計一個安全的雙向 認(rèn)證協(xié)議具有重要的研究意義和實用價值。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點與不足,提供一種滿足后向安全的RFID雙 向認(rèn)證方法,該方法解決了目前RFID系統(tǒng)中標(biāo)簽與讀寫器之間認(rèn)證存在安全缺陷的問題, 具有安全性高、認(rèn)證效率高、標(biāo)簽成本低的優(yōu)點。
[0005] 本發(fā)明的目的通過W下的技術(shù)方案實現(xiàn):一種滿足后向安全的RFID雙向認(rèn)證方 法,包括步驟:
[0006] (1)讀寫器讀取內(nèi)部存儲的標(biāo)簽的唯一標(biāo)識符,將其等分為兩部分,記為ID_L、ID_ R,長度均為L位;讀寫器生成兩個長度均為L位的隨機數(shù)Rl和R2;讀寫器利用IDJJPRl進行 異或運算得到A,利用10_3和1?2進行異或運算得到B,然后將A、BW及認(rèn)證請求命令一并發(fā)送 給標(biāo)簽;
[0007] (2)標(biāo)簽接收到讀寫器發(fā)送來的A、BW及認(rèn)證請求命令后,先取出自身儲存的ID_ LT和ID_RT,然后將ID_LT與接收到的A進行異或運算得到R1_T,將ID_RT與接收到的B進行異 或運算得到R2_T,接著根據(jù)標(biāo)簽自身存儲的密鑰KEY_TW及計算得到的Rl_T、R2_im立一個 標(biāo)簽真?zhèn)悟炞C公式,計算得到標(biāo)簽真?zhèn)悟炞C值C_T;最后,將C_T值傳給讀寫器;
[0008] (3)讀寫器在接收到標(biāo)簽發(fā)送來的信息W后,首先讀寫器將自身存儲的密鑰KEYW 及生成的隨機數(shù)Rl和R2代入上述的標(biāo)簽真?zhèn)悟炞C公式,得到驗證值C,如果C與C_T不相等, 則說明標(biāo)簽是偽造的,認(rèn)證立刻結(jié)束;如果相等,則執(zhí)行步驟(4);
[0009] (4)讀寫器用當(dāng)前密鑰KEYW及生成的隨機數(shù)R2建立一個讀寫器真?zhèn)悟炞C公式,計 算得到讀寫器真?zhèn)悟炞C值D,將D值傳給標(biāo)簽;讀寫器按照預(yù)設(shè)的密鑰更新公式更新密鑰; [0010] (5)標(biāo)簽在收至喊寫器傳來的D之后,將自身存放的密鑰KEY_TW及計算得到的R2_ T代入上述的讀寫器真?zhèn)悟炞C公式,得到驗證值D_T,如果D與D_T不相等,則說明讀寫器是偽 造的,認(rèn)證立刻結(jié)束;如果相等,則標(biāo)簽按照預(yù)設(shè)的密鑰更新公式更新自身存放的密鑰。 [OOW 優(yōu)選的,所述步驟(2)中標(biāo)簽真?zhèn)悟炞C值C_T的計算公式如下:
[0012] C_T=[(KEY_T&R2_T&Rl_T)Vod M]l;
[OOK]其中,KEY_T表示標(biāo)簽自身存儲的密鑰,化取運算結(jié)果的前U立;&表示與運算,M表 示模數(shù),M=2L-1 ;
[0014] 同理的,驗證值C的計算公式如下:
[0015] C=[化EY&R2&Rl)2mod M]l。
[0016] 更進一步的,所述步驟(3)中,讀寫器自身存儲的密鑰KEY分為兩種,一種是當(dāng)前的 密鑰K_new,另一種是歷史使用過的密鑰K_old,K_old為一個數(shù)組;在接收到標(biāo)簽傳來的C_T 值后,讀寫器先根據(jù)1〇16巧、1?1和R2得到第一驗證值C',并將C'與C_T進行比較,
[0017] 若二者相等,則令KEY等于K_new,執(zhí)行步驟(4);
[0018] 若二者不相等,再根據(jù)1(_〇1(1、1?巧郵2得到第二驗證值(:'',(:''為一個數(shù)組,將(:'' 中所有的值與C_T進行比較,如果均不相等,說明標(biāo)簽是偽造的,認(rèn)證立刻結(jié)束,如果C''中 的其中一個值C' '_1與(:_1'相等,則令KEY等于與該C' '_i對應(yīng)的密鑰K_oW_i,執(zhí)行步驟(4)。 [0019]優(yōu)選的,步驟(4)中讀寫器真?zhèn)悟炞C值D的計算公式如下:
[0020] D=比EY2mod M]l&R2;
[0021] 其中,[]L取運算結(jié)果的前L位;&表示與運算,M表示模數(shù),M=2^1;
[0022] 同理的,驗證值D_T的計算公式如下:
[0023] D_T=[KEY_T 2m0d M]l&R2_T。
[0024] 優(yōu)選的,步驟(4)中,讀寫器更新密鑰的公式是:
[0025] KEY_new= [KEYVod M]l;
[0026] 其中,化取運算結(jié)果的前L位;M表示模數(shù),M=2Li;
[0027] 同理的,步驟(5)中,標(biāo)簽更新自身存放的密鑰的公式是:
[002引 KEY_T_new=[KEY_T 2m0d M]l。
[0029] 本發(fā)明的RFID雙向認(rèn)證方法具有如下優(yōu)點和有益效果:
[0030] (1)本發(fā)明拋棄傳統(tǒng)的化Sh運算加密傳輸?shù)姆椒?,采用具有同等級安全的模運算 加密方法對傳輸?shù)男畔⑦M行加密,從而減少標(biāo)簽端及讀寫器端的運算量,使本發(fā)明方法可 W達(dá)到輕量級的級別;
[0031] (2)本發(fā)明拋棄標(biāo)簽端產(chǎn)生隨機數(shù)的做法,選擇由讀寫器端產(chǎn)生隨機數(shù),從而達(dá)到 降低標(biāo)簽成本的目標(biāo);
[0032] (3)本發(fā)明充分利用標(biāo)簽和讀寫器之間共享的標(biāo)簽唯一的標(biāo)識符ID的信息,減少 信息的引入和存放,將標(biāo)簽的標(biāo)識符ID分成ID_^PID_R兩部分進行加密傳輸,作為雙向認(rèn) 證的憑據(jù),從而降低標(biāo)簽端的存儲成本;
[0033] (4)本發(fā)明標(biāo)簽與讀寫器之間雙向認(rèn)證過程所傳輸?shù)乃械男畔⒍际墙?jīng)過加密之 后再傳輸?shù)?,與傳統(tǒng)的傳輸方式相比更為安全,同時傳輸過程的信息中都至少有兩個W上 的變量對于攻擊者而言是未知的,從而徹底避免了攻擊者采用窮舉法破解密鑰的安全隱 出 VQi'' O
【附圖說明】
[0034] 圖1是本實施例所述方法的流程示意圖。
[0035] 圖2是本實施例雙向認(rèn)證過程中各參數(shù)傳遞過程示意圖。
【具體實施方式】
[0036] 下面結(jié)合實施例及附圖對本發(fā)明作進一步詳細(xì)的描述,但本發(fā)明的實施方式不限 于此。
[0037] 實施例1
[0038] 參見圖1、2,首先給出本實施例所述方法中設(shè)及到的各個符號的含義:
[0039] R:讀寫器;
[0040] T:標(biāo)簽;
[0041 ] KEY:讀寫器和標(biāo)簽之間共享的密鑰(長度為L位);
[0042] ID:標(biāo)簽的唯一標(biāo)識符(長度為化位);
[00創(chuàng) ID_L:標(biāo)簽ID的左半部分(左邊的L位);
[0044] ID_R:標(biāo)簽ID的右半部分(右邊的L位);
[0045] K_new:本次認(rèn)證的共享密鑰(長度為L位);
[0046] K_old:歷史若干次認(rèn)證的共享密鑰(長度為L位);
[0047] ^密鑰的長度;
[004 引 M:模數(shù),M = 2L-1;
[0049] Rl和R2:讀寫器產(chǎn)生的兩個隨機數(shù)(長度都為L位);
[0050] ? :異或運算;
[0化1] &:與運算。
[0052] 在RFID系統(tǒng)中讀寫器與后端數(shù)據(jù)庫之間通過有線傳輸方式進行信息的傳輸,一般 認(rèn)為兩者之間的傳輸是安全的,因此將后端數(shù)據(jù)庫和讀寫器看成一個整體。讀寫器與標(biāo)簽 之間的雙向認(rèn)證具體過程如圖1所示,其認(rèn)證過程中各個參數(shù)傳遞過程參見圖2,在圖2中,A = ID_L? R1;B = ID_R? R2;C=[化E化R2&Rl)2mod M]l,表示取運算結(jié)果的前L位;D = 比EY2Hiod M]l&R2,表示首先取□運算結(jié)果的前L位,然后再與R2進行與運算。
[0053] 結(jié)合圖1、2對本實施例的認(rèn)證過程具體說明如下:
[0054] ①讀寫器讀取內(nèi)部存儲的標(biāo)簽的唯一標(biāo)識符,將其等分為兩部分,記為ID_L、ID_ R,長度均為L位。讀寫器生成兩個長度均為L位的隨機數(shù)Rl和R2。
[0化日]讀寫器利用10_1^和1?1進行異或運算得到A,即A =ID_Le R1,然后利用1〇_3和1?2進 行異或運算得到B,即B = ID_R e R2。
[0056] 最后將A、B W及認(rèn)證請求命令如ery-并發(fā)送給標(biāo)簽。
[0057] ②標(biāo)簽接收到讀寫器發(fā)送來的信息W后,首先取出自身儲存的信息ID_LT和ID_ RT,如果讀寫器和標(biāo)簽均不是偽造的,那么ID_LT和ID_RT應(yīng)分別等于ID_L、ID_R。
[005引然后將ID_LT與接收到的A進行異或運算得到R1_T,即R1_T= ID_L ? A,將ID_RT與 接收到的B進行異或運算得到R2_T,即R2_T = ID_ReB。如果讀寫器和標(biāo)簽均不是偽造的,那 么R1_T和R2_T應(yīng)分別等于讀寫器中生成的R1、R2。
[0059] 接著標(biāo)簽根據(jù)自身存儲的密鑰KEY_T、計算得到的R1_T、R2_T建立一個標(biāo)簽真?zhèn)悟?證公式,計算標(biāo)簽真?zhèn)悟炞C值(:_1':
[0060] C_T=[(KEY_T&R2_T&Rl_T)Vod M]l;
[0061] 其中,KEY_T表示標(biāo)簽自身存儲的密鑰,[]L取運算結(jié)果的前L位;&表示與運算,M表 示模數(shù),M=2L-1 ;
[0062] 最后,將C_T值傳給讀寫器。
[0063] ③讀寫器接收到標(biāo)簽發(fā)送來的信息W后,首先讀寫器將自身存儲的密鑰KEYW及 生成的Rl和R2代入上述的標(biāo)簽真?zhèn)悟炞C公式,得到驗證值C:
[0064] C=[化EY&R2&Rl)2mod M]l;
[0065] 如果C與C_T不相等,則表明標(biāo)簽是偽造的,認(rèn)證立刻結(jié)束;如果相等,則繼續(xù)下面 步驟。
[0066] ④讀寫器用當(dāng)前密鑰KEYW及生成的隨機數(shù)R2建立一個讀寫器真?zhèn)悟炞C公式,計 算得到讀寫器真?zhèn)悟炞C值D:
[0067] D=比EY2mod M]l&R2;
[0068] 將D值傳給標(biāo)簽;讀寫器按照預(yù)設(shè)的密鑰更新公式KEY_new=比EY2Hiod M]l,更新密 鑰。
[0069] ⑤標(biāo)簽在收到讀寫器傳來的D之后,將自身存放的密鑰KEY_TW及計算得到的R2_T 代入上述的讀寫器真?zhèn)悟炞C公式,得到驗證值D_T:
[0070] D_T=[KEY_T 2m0d M]l&R2_T。
[0071 ]如果D與D_T不相等,則表明讀寫器是偽造的,認(rèn)證立刻結(jié)束;如果相等,則標(biāo)簽按 照預(yù)設(shè)的密鑰更新公式KEY_T_new=比EY_T 2Hiod M]l,更新自身存放的密鑰。如果讀寫器和 標(biāo)簽均不是偽造的,那么標(biāo)簽更新后的密鑰KEY_T_new應(yīng)與讀寫器更新后的密鑰KEY_new相 同。
[0072] 在實際應(yīng)用中,有可能標(biāo)簽在上面幾次的認(rèn)證過程中沒有得到更新,如果只采用 讀寫器最新的密鑰作為認(rèn)證密鑰,那么運類標(biāo)簽就得不到認(rèn)證,為了解決運一問題,可對步 驟③進行改進,改進的過程如下:
[0073] (3-1)將讀寫器自身存儲的密鑰KEY分為兩種,一種是當(dāng)前的密鑰K_new,另一種是 歷史使用過的密鑰K_old,K_old為一個數(shù)組,里面包括歷史采用過的所有密鑰或者部分密 鑰。
[0074] (3-2)在接收到標(biāo)簽傳來的C_T值后,讀寫器先根據(jù)1(_116*、1?1和R2得到第一驗證值 C':
[0075] C-=[化_new&R2&Rl)2mod M]l
[0076] (3-3)判斷C'與C_T是否相等,如果相等,執(zhí)行步驟(3-4);否則,執(zhí)行步驟(3-5)。
[0077] (3-4)令KEY等于K_new,執(zhí)行步驟④。
[0078] (3-5)根據(jù)K_old、Rl和R2得到第二驗證值C--:
[0079] C'' = [(K_old&R2&Rl)Vod M]l
[0080] 運里的C''為一個數(shù)組,如果該數(shù)組中所有的值與C_T均不相等,則說明標(biāo)簽是偽 造的,認(rèn)證立刻結(jié)束。如果有一個(:''_1與(:_1'相等,則令KEY等于與該C''_i對應(yīng)的密鑰K_ oW_i,執(zhí)行步驟④。
[0081] 下面給出認(rèn)證協(xié)議的BAN邏輯形式化分析,通過BAN形式化分析來證明雙向認(rèn)證方 法的安全性和正確性,證明過程如下:(針對上面文字部分的更改,下面也做了一定的更改, 請審核,運里設(shè)及的公式麻煩修改)
[0082] 首先給出協(xié)議的理想化模型:
[0083] 消息① R 一 T:如 ery,A,B
[0084] 消息②T一R:C_T
[0085] 消息③R一T: D
[0086] 下面給出協(xié)議的初始假設(shè):
[0087] Pl:昨"貧?,,時目信R和T共享密鑰值KEY。
[008引 P2: n=-/;六,T相信R和T共享密鑰值KEY_T,KEY與KEY_T相等。
[0089] P3: 時目信R和T共享標(biāo)識符ID_L。
[0090] P4: 71./苗/,T相信R和T共享標(biāo)識符ID_LT,ID_LT與ID_L相等。
[0091] P5: b;? ?V,時目信R和T共享標(biāo)識符ID_R。
[0092] P6: r=* 〇7,1'相信1?和1'共享標(biāo)識符10_1?1',10_1?1'與10_時目等。
[0093] P7:R| =#(R1),時目信隨機數(shù)Rl的新鮮性。
[0094] P8:T| = #(R1),T相信隨機數(shù)Rl的新鮮性。
[00巧]P9:R| =#(R2),時目信隨機數(shù)R2的新鮮性。
[0096] P10:T| =#(R2),T相信隨機數(shù)R2的新鮮性。
[0097] PU; 巧信R對A的管轄權(quán)。
[0098] P12; 相信R對B的管轄權(quán)。
[0099] P13; 相信T對C_T的管轄權(quán)。
[0100] P14; 相信R對D的管轄權(quán)。
[0101] 安全目標(biāo):
[0102] G1:T|=A,T相信A。G2:T|=B,T相信B。
[0103] G3:R| =C,時目信 C_T〇G4:T| =0,1'相信0。
[0104] 分析推理:
[01化]由消息①祠
(T曾經(jīng)收到消息A),并且由初始假設(shè)Pl及消息含義法則
(若主體P相信主體P和Q的共享秘鑰K,且P曾經(jīng)收到用K加密的密文X,則P相信 主體Q發(fā)送過來的消息X),得到;
[0106] 由假設(shè)P7、P9及消息新鮮性法抑
:如果一個消息的一部分是新鮮的,則整
冬'諧旨A縣盛鮮的),得T I =#(A)。由已經(jīng)推導(dǎo)出來的
及隨機數(shù)驗證法則 得到RI = Tl = Ao ,'
[0107] 由Rl引I =A、初始化假設(shè)Pim及管轄法抑 可得Tl =Ao因此,目標(biāo) 9. Gl得證。
[0108] 運用上述條件和法則,同理可證得G2、G3 W及G4。此處不再寶述。
[0109] 上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受上述實施例的 限制,其他的任何未背離本發(fā)明的精神實質(zhì)與原理下所作的改變、修飾、替代、組合、簡化, 均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護范圍之內(nèi)。
【主權(quán)項】
1. 一種滿足后向安全的RFID雙向認(rèn)證方法,其特征在于,包括步驟: (1) 讀寫器讀取內(nèi)部存儲的標(biāo)簽的唯一標(biāo)識符,將其等分為兩部分,記為ID_L、ID_R,長 度均為L位;讀寫器生成兩個長度均為L位的隨機數(shù)R1和R2;讀寫器利用IDJ^PRl進行異或 運算得到A,利用ID_I^PR2進行異或運算得到B,然后將A、B以及認(rèn)證請求命令一并發(fā)送給標(biāo) 簽; (2) 標(biāo)簽接收到讀寫器發(fā)送來的A、B以及認(rèn)證請求命令后,先取出自身儲存的ID_LT和 ID_RT,然后將ID_LT與接收到的A進行異或運算得到R1_T,將ID_RT與接收到的B進行異或運 算得到R2_T,接著根據(jù)標(biāo)簽自身存儲的密鑰ΚΕΥ_Τ&及計算得到的R1_T、R2_T建立一個標(biāo)簽 真?zhèn)悟炞C公式,計算得到標(biāo)簽真?zhèn)悟炞C值C_T;最后,將C_T值傳給讀寫器; (3) 讀寫器在接收到標(biāo)簽發(fā)送來的信息以后,首先讀寫器將自身存儲的密鑰KEY以及生 成的隨機數(shù)R1和R2代入上述的標(biāo)簽真?zhèn)悟炞C公式,得到驗證值C,如果C與C_T不相等,則說 明標(biāo)簽是偽造的,認(rèn)證立刻結(jié)束;如果相等,則執(zhí)行步驟(4); (4) 讀寫器用當(dāng)前密鑰KEY以及生成的隨機數(shù)R2建立一個讀寫器真?zhèn)悟炞C公式,計算得 到讀寫器真?zhèn)悟炞C值D,將D值傳給標(biāo)簽;讀寫器按照預(yù)設(shè)的密鑰更新公式更新密鑰; (5) 標(biāo)簽在收到讀寫器傳來的D之后,將自身存放的密鑰ΚΕΥ_Τ&及計算得到的R2_TR 入上述的讀寫器真?zhèn)悟炞C公式,得到驗證值D_T,如果D與D_T不相等,則說明讀寫器是偽造 的,認(rèn)證立刻結(jié)束;如果相等,則標(biāo)簽按照預(yù)設(shè)的密鑰更新公式更新自身存放的密鑰。2. 根據(jù)權(quán)利要求1所述的RFID雙向認(rèn)證方法,其特征在于,所述步驟(2)中標(biāo)簽真?zhèn)悟?證值C_T的計算公式如下: C_T=[(KEY_T&R2_T&Rl_T)2mod M]l; 其中,KEY_T表示標(biāo)簽自身存儲的密鑰,[]L取運算結(jié)果的前L位;&表示與運算,Μ表示模 數(shù),M=2l-1; 同理的,驗證值C的計算公式如下: C=[(KEY&R2&Rl)2mod M]l〇3. 根據(jù)權(quán)利要求2所述的RFID雙向認(rèn)證方法,其特征在于,所述步驟(3)中,讀寫器自身 存儲的密鑰KEY分為兩種,一種是當(dāng)前的密鑰K_new,另一種是歷史使用過的密鑰K_old,K_ old為一個數(shù)組;在接收到標(biāo)簽傳來的C_T值后,讀寫器先根據(jù)1(_11冊、1?1和R2得到第一驗證 值C',并將C'與C_T進行比較, 若二者相等,則令KE Y等于K_n e w,執(zhí)行步驟(4); 若二者不相等,再根據(jù)1(_〇1(1、1?1和R2得到第二驗證值C'',C''為一個數(shù)組,將C''中所 有的值與C_T進行比較,如果均不相等,說明標(biāo)簽是偽造的,認(rèn)證立刻結(jié)束,如果C''中的其 中一個值C' '」與(:_1'相等,則令KEY等于與該C' '_i對應(yīng)的密鑰K_old_i,執(zhí)行步驟(4)。4. 根據(jù)權(quán)利要求1所述的RFID雙向認(rèn)證方法,其特征在于,步驟(4)中讀寫器真?zhèn)悟炞C 值D的計算公式如下: D=[KEY2mod M]l& R2; 其中,[]l取運算結(jié)果的前L位;&表示與運算,Μ表示模數(shù),M=2l-1; 同理的,驗證值D_T的計算公式如下: D_T=[KEY_T2mod M]l&R2_T〇5. 根據(jù)權(quán)利要求1所述的RFID雙向認(rèn)證方法,其特征在于,步驟(4)中,讀寫器更新密鑰 的公式是: KEY_new=[KEY2mod M]l; 其中,[]l取運算結(jié)果的前L位;M表示模數(shù),M=2l-1; 同理的,步驟(5)中,標(biāo)簽更新自身存放的密鑰的公式是: KEY_T_new=[KEY_T2mod M]l〇
【文檔編號】H04L9/08GK105847009SQ201610157282
【公開日】2016年8月10日
【申請日】2016年3月17日
【發(fā)明人】凌捷, 劉道微, 謝銳, 柳毅, 龔怡
【申請人】廣東工業(yè)大學(xué)