匿名的不可追蹤的rfid相互認(rèn)證方法
【專利摘要】本發(fā)明提供一種匿名的不可追蹤的RFID相互認(rèn)證方法,基于Schnorr簽名算法和輕量級對稱加密算法,其安全性依賴于離散對數(shù)困難問題,具有運(yùn)算速度快,存儲空間小等優(yōu)點??紤]到標(biāo)簽成本較低,計算能力有限,因此將標(biāo)簽在進(jìn)行認(rèn)證時可能需要到的中間結(jié)果通過預(yù)計算數(shù)據(jù)集的方式存儲在標(biāo)簽中,本發(fā)明中標(biāo)簽只需要進(jìn)行生成隨機(jī)數(shù),Hash運(yùn)算,加法和乘法運(yùn)算這些基本的密碼操作就能實現(xiàn)認(rèn)證,無需進(jìn)行運(yùn)算量大的指數(shù)運(yùn)算。本發(fā)明在保護(hù)了信息安全和用戶隱私的同時,降低了系統(tǒng)的時間復(fù)雜度。
【專利說明】匿名的不可追蹤的RFID相互認(rèn)證方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)字認(rèn)證技術(shù),特別涉及RFID相互認(rèn)證技術(shù)。
【背景技術(shù)】
[0002] 無線射頻識別RFID系統(tǒng)使用無線射頻技術(shù)在開放的系統(tǒng)環(huán)境中進(jìn)行對象識別。 RFID是一種非物理性接觸、低成本、低功耗的自動識別技術(shù),主要是通過射頻技術(shù),在讀寫 器和標(biāo)簽之間傳遞信息,來獲取被標(biāo)識物體信息的技術(shù)。盡管與傳統(tǒng)的識別技術(shù)相比RFID 具有許多優(yōu)點,但因為RFID-些固有的局限性,其面臨著巨大的信息安全的挑戰(zhàn)。如果不 能很好地解決RFID所面臨的信息安全問題,隨著其應(yīng)用的不斷擴(kuò)展,RFID潛在的極大破壞 力將逐漸顯現(xiàn)。
[0003] RFID安全問題中面臨的一個重要挑戰(zhàn)就是隱私泄露。由于閱讀器與標(biāo)簽之間采 用無線射頻信號進(jìn)行通信,無線通信固有的脆弱性使得所傳送的信息被完全暴露,易受到 竊聽、篡改等各種攻擊,導(dǎo)致一些敏感信息被泄露。RFID的安全隱私問題主要包括兩方面: (1)攻擊者對標(biāo)簽進(jìn)行位置追蹤。由于標(biāo)簽發(fā)送的信息可能包含唯一的身份標(biāo)識信息(如 身份標(biāo)識ID),即使經(jīng)過加密處理也有可能包含某種固定或有規(guī)律的信息,攻擊者可W根據(jù) 標(biāo)簽響應(yīng)閱讀器的響應(yīng)信息對標(biāo)簽進(jìn)行位置跟蹤,而當(dāng)標(biāo)簽的使用者沒有改變時,攻擊者 就可W通過跟蹤標(biāo)簽來推測出用戶的位置,從而泄露用戶的位置信息。(2)對竊聽獲取的標(biāo) 簽信息進(jìn)行分析后再進(jìn)行攻擊。當(dāng)標(biāo)簽攜帶信息包含了用戶的個人信息時,攻擊者就可W 通過分析標(biāo)簽傳輸?shù)男畔慝@取用戶的隱私信息。例如用戶使用信用卡在商店消費(fèi)時,女口 果不良商戶將用戶的身份信息和用戶身上的標(biāo)簽發(fā)送的信息內(nèi)容聯(lián)系在一起,便可W獲取 很多用戶的隱私信息。因此,設(shè)計高效安全的認(rèn)證協(xié)議來保護(hù)用戶隱私,是我們目前迫切需 要解決的難題。
[0004] 標(biāo)簽在進(jìn)行認(rèn)證時,要證明自己是合法的用戶,但又不能讓敵手知道其身份,該就 要求標(biāo)簽具有匿名的特性。此外,如果標(biāo)簽?zāi)鼙粩呈肿粉櫍敲从脩舻碾[私和位置信息就有 可能泄露,該會帶來巨大的安全隱患。所W,不可追蹤性也是我們要考慮的問題。
[0005] 目前已經(jīng)存在一些匿名認(rèn)證協(xié)議,但它們都存在一定的安全性能等問題。2006年, Hey化設(shè)計了一個基于匿名證書公交車票匿名支付系統(tǒng),但該方案并未給出該系統(tǒng)具體實 現(xiàn)的方法。Bichsel在2009年給出一種基于化va Cards的實現(xiàn)匿名證書的方法,但是需要 所有的設(shè)備執(zhí)行公鑰密碼算法,該不符合RFID標(biāo)簽的低成本需求。2009年,Blass給出了 一個適用的基于RFID的匿名支付方案,但是該方案要求系統(tǒng)中標(biāo)簽的數(shù)目是固定不變的, 該使得該方案不具有很好的擴(kuò)展性。2010年Armknecht等人提出一個高效的RFID匿名認(rèn) 證協(xié)議,但該協(xié)議每認(rèn)證一次標(biāo)簽后,需要一個機(jī)構(gòu)對標(biāo)簽進(jìn)行匿名化處理,代價很高。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明所要解決的技術(shù)問題是,提供一種適用于RFID的匿名的不可追蹤的基于 類似簽密相互認(rèn)證方法。
[0007] 本發(fā)明為解決上述技術(shù)問題所采用的技術(shù)方案是,一種匿名的不可追蹤的RFID 相互認(rèn)證方法,包括W下步驟:
[0008] 1)發(fā)行機(jī)構(gòu)預(yù)處理步驟:
[0009] 發(fā)行機(jī)構(gòu)選擇P、q兩個大素數(shù),q是P-I的大素數(shù)因子;
[0010] 發(fā)行機(jī)構(gòu)生成閱讀器的公私鑰對(Pb, Sk),標(biāo)簽的公私鑰對(仍;
[0011] 發(fā)行機(jī)構(gòu)生成兩個哈希函數(shù)Hi與&, 巧:Z;xZ;^Z;,碼;{〇,1}* 表示 〇、1 串,Z;表示大素數(shù) P 的 整數(shù)模的乘法群,與表示大素數(shù)q的整數(shù)模的乘法群;
[0012] 發(fā)行機(jī)構(gòu)選擇一個q階生成元g,ge馬,滿足護(hù)三Imod P,三為同余,g聲Imod P,mod為取模;
[001引發(fā)行機(jī)構(gòu)為標(biāo)簽Tj預(yù)計算數(shù)據(jù)集r = !巧P巧,…,( = , 露={絞0,絞I,…為,P = (A,爲(wèi),…,爲(wèi)J 5數(shù)據(jù)集中各元素 竭=g3':爲(wèi)=資/,戰(zhàn),-=餐,屬=#/ ; 0《i《Iq-I ;lq表不大素數(shù)q的二進(jìn)制比特長 度;
[0014] 發(fā)行機(jī)構(gòu)將各標(biāo)簽的公私鑰對、標(biāo)簽標(biāo)識符W及閱讀器的公鑰l(.Vj,/V,,Wr.,&) 和預(yù)計算數(shù)據(jù)集V,弓,n和P存儲在對應(yīng)的標(biāo)簽Tj內(nèi);將所有標(biāo)簽標(biāo)識符W及對應(yīng)的標(biāo) 簽的公鑰保存在與閱讀器相連的后臺數(shù)據(jù)庫里;
[0015] 2)相互認(rèn)證步驟:
[001引 2-1)閱讀器選擇隨機(jī)數(shù)^6 ^,生成挑戰(zhàn)信息Z,Z三gt mod P ;
[0017] 2-?標(biāo)簽Tj.接收到挑戰(zhàn)信息Z后,選擇隨機(jī)數(shù)^ 利用時間存儲-折中法,根 據(jù)原存儲的數(shù)據(jù)集計算得到中間數(shù)r^gk mod P,對稱加密密鑰mod P,將中間數(shù)r 與挑戰(zhàn)信息Z輸入哈希函數(shù)Hi中,得到哈希函數(shù)值e = Hi (r,Z),再用標(biāo)簽私鑰得到簽名數(shù) 據(jù)^ (%/ +Wmodf,然后利用對稱加密密鑰K對標(biāo)簽標(biāo)識符卻:,、中間數(shù)r、簽名數(shù)據(jù)S、 挑戰(zhàn)信息Z組成的數(shù)據(jù)邱,||/-|#加密得到對稱加密密文C,M表示數(shù)據(jù)直接連接,返回響 應(yīng)數(shù)據(jù)(r,C)給閱讀器;
[0018] 2-3)閱讀器收到響應(yīng)數(shù)據(jù)(r,C)后,首先提取中間數(shù)據(jù)r利用閱讀器私鑰^計算 密鑰r S /?'> mod/>,然后利用密鑰r解密C得到解密數(shù)據(jù)Mr/ Il Il刊| /,將解密得到的 挑戰(zhàn)信息Z'與生成作為挑戰(zhàn)信息Z進(jìn)行比較,若Z'聲Z或r'聲r,則退出;
[0019] 否則閱讀器從后臺數(shù)據(jù)庫查找是否存在標(biāo)簽標(biāo)識符Wr/*若否,則視為非法標(biāo)簽; 若是,找到對應(yīng)公鑰數(shù)據(jù)項腳^,巧i.),將解密得到的中間數(shù)r'與挑戰(zhàn)信息Z'輸入哈希函 數(shù)Hi中,得到哈希函數(shù)值e' =Hi(r' ,Z'),然后利用解密得到的簽名數(shù)據(jù)S'與哈希函 數(shù)值e'驗證/S各' A./ modf是否成立,若否,則視為非法標(biāo)簽,如是,則為合法的標(biāo)簽, 閱讀器將再利用解密得到的標(biāo)簽標(biāo)識符^ 、中間數(shù)r '、挑戰(zhàn)信息Z' W及對稱加密密文 C輸入哈希函數(shù)&中得到哈希函數(shù)值倘,.'、八C--'),利用閱讀器私鑰得到簽名數(shù)據(jù) Si = 3腳+1: mod q,最后把簽名數(shù)據(jù)Si返回給標(biāo)簽Tj ;
[0020] 2-4)標(biāo)簽Tj.收到簽名數(shù)據(jù)Si后,將本地保存的標(biāo)簽標(biāo)識符味,、本地計 算得到的中間數(shù)r、對稱加密密文C W及挑戰(zhàn)信息Z輸入哈希函數(shù)&得到哈希函數(shù) 值句=//;腳,.r,C2),然后利用預(yù)計算數(shù)據(jù)集和P W及時間-存儲折中法驗證 各'1 =巧'znio非是否成立,若是,則為合法閱讀器,若否,則為非法閱讀器。
[0021] 本發(fā)明基于Schnorr簽名算法和輕量級對稱加密算法,其安全性依賴于離散對數(shù) 困難問題,具有運(yùn)算速度快,存儲空間小等優(yōu)點??紤]到標(biāo)簽成本較低,計算能力有限,因此 將標(biāo)簽在進(jìn)行認(rèn)證時可能需要到的中間結(jié)果通過預(yù)計算數(shù)據(jù)集的方式存儲在標(biāo)簽中,本發(fā) 明中標(biāo)簽只需要進(jìn)行生成隨機(jī)數(shù),化Sh運(yùn)算,加法和乘法運(yùn)算該些基本的密碼操作就能實 現(xiàn)認(rèn)證,無需進(jìn)行運(yùn)算量大的指數(shù)運(yùn)算。
[0022] 本發(fā)明的有益效果是,在保護(hù)了信息安全和用戶隱私的同時,降低了系統(tǒng)的時間 夏雜度。
【具體實施方式】
[0023] 實施例中用到的符號如下:
[0024]
【權(quán)利要求】
1.匿名的不可追蹤的RFID相互認(rèn)證方法,其特征在于,包括以下步驟: 1) 發(fā)行機(jī)構(gòu)預(yù)處理步驟: 發(fā)行機(jī)構(gòu)選擇P、q兩個大素數(shù),q是P-I的大素數(shù)因子; 發(fā)行機(jī)構(gòu)生成閱讀器的公私鑰對(PK,sK),標(biāo)簽的公私鑰對(Pr,: 發(fā)行機(jī)構(gòu)生成兩個哈希函數(shù)H1與H2, : xZ; 4 ,//2: {(UK xZ[ X Z;>Z;:,, {tur表示〇、1串,表示大素數(shù)p的整數(shù)模的乘法群,< 表示大素數(shù)q的整數(shù)模的乘法 群; 發(fā)行機(jī)構(gòu)選擇一個q階生成元g,St 6 》滿足gq = lmodp,=為同余,g關(guān)lmodp,mod 為取模; 發(fā)行機(jī)構(gòu)為標(biāo)簽Tj預(yù)計算數(shù)據(jù)集,=批,斗…?氣..J * C = J,fr=丨a("aL",,氣,丨,/7={氣,爲(wèi),…,我J;數(shù)據(jù)集中各元素 (t)i =S"' = Pr ? ai = S2 ? 總=/,/,〇彡i彡Vl ; Iq表示大素數(shù)Q的二進(jìn)制比特 長度; 發(fā)行機(jī)構(gòu)將各標(biāo)簽的公私鑰對、標(biāo)簽標(biāo)識符以及閱讀器的公鑰P?)和預(yù)計 算數(shù)據(jù)集V,(,n和P存儲在對應(yīng)的標(biāo)簽L內(nèi);將所有標(biāo)簽標(biāo)識符以及對應(yīng)的標(biāo)簽的公 鑰保存在與閱讀器相連的后臺數(shù)據(jù)庫里; 2) 相互認(rèn)證步驟: 2-1)閱讀器選擇隨機(jī)數(shù),生成挑戰(zhàn)信息z,z = gt m〇dp ; 2-2)標(biāo)簽L接收到挑戰(zhàn)信息z后,選擇隨機(jī)數(shù)t e Z9%利用時間存儲-折中法,根據(jù)原 存儲的數(shù)據(jù)集V和?計算中間數(shù)r = gkmodp,對稱加密密鑰K S p/ mod JP f將中間數(shù)r與 挑戰(zhàn)信息z輸入哈希函數(shù)H1中,得到哈希函數(shù)值e = H1 (r,z),再用標(biāo)簽私鑰得到簽名數(shù)據(jù) ,然后利用對稱加密密鑰K對標(biāo)簽標(biāo)識符Wr,、中間數(shù)r、簽名數(shù)據(jù)s、挑戰(zhàn) 信息z組成的數(shù)據(jù)/4 IrIsIk加密得到對稱加密密文C,I I表示數(shù)據(jù)直接連接,返回響應(yīng)數(shù) 據(jù)(r,C)給閱讀器; 2-3)閱讀器收到響應(yīng)數(shù)據(jù)(r,C)后,首先提取中間數(shù)據(jù)r利用閱讀器私鑰sK計算密鑰 產(chǎn)mod/;,然后利用密鑰K'解密C得到解密數(shù)據(jù)M7/ Ikl丨/丨丨/,將解密得到的挑戰(zhàn) 信息z'與生成作為挑戰(zhàn)信息z進(jìn)行比較,或者將解密得到的中間數(shù)據(jù)r'與生成的中間數(shù) 據(jù)r進(jìn)行比較,若z'尹z,或r'尹r,則退出; 否則閱讀器從后臺數(shù)據(jù)庫查找是否存在標(biāo)簽標(biāo)識符irfr/,若否,則視為非法標(biāo)簽;若 是,找到對應(yīng)公鑰數(shù)據(jù)項將解密得到的中間數(shù)r'與挑戰(zhàn)信息z'輸入哈希函數(shù) H1中,得到哈希函數(shù)值e' =H1O"',z'),然后利用解密得到的簽名數(shù)據(jù)s'與哈希函 數(shù)值e'驗證,s gs ft/ mod是否成立,若否,則視為非法標(biāo)簽,若是,則為合法的標(biāo)簽, 閱讀器再利用解密得到的標(biāo)簽標(biāo)識符中間數(shù)r'、挑戰(zhàn)信息z'以及對稱加密密文C 輸入哈希函數(shù)H2中得到哈希函數(shù)值A(chǔ) = ,利用閱讀器私鑰得到簽名數(shù)據(jù) S1 = SueJtmodq,最后把簽名數(shù)據(jù)S1返回給標(biāo)簽Tj ; 2-4)標(biāo)簽L收到簽名數(shù)據(jù)S1后,將本地保存的標(biāo)簽標(biāo)識符、本地計算得到的中間 數(shù)r、對稱加密密文C以及挑戰(zhàn)信息z輸入哈希函數(shù)H2得到哈希函數(shù)值< =, 然后利用預(yù)計算數(shù)據(jù)集n和P以及時間-存儲折中法驗證,sjj'imoclJi是否成立,若 是,則為合法閱讀器,若否,則為非法閱讀器。
【文檔編號】H04L29/06GK104363096SQ201410648359
【公開日】2015年2月18日 申請日期:2014年11月14日 優(yōu)先權(quán)日:2014年11月14日
【發(fā)明者】許春香, 金春花, 張曉均, 陳文杰 申請人:電子科技大學(xué)