欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于公鑰的射頻識(shí)別雙向認(rèn)證方法

文檔序號(hào):7551197閱讀:329來(lái)源:國(guó)知局
專利名稱:基于公鑰的射頻識(shí)別雙向認(rèn)證方法
技術(shù)領(lǐng)域
本發(fā)明屬于信息安全技術(shù)領(lǐng)域,主要涉及到射頻識(shí)別系統(tǒng)中射頻識(shí)別標(biāo)簽與其讀卡器之間的雙向認(rèn)證技術(shù),可用于射頻識(shí)別系統(tǒng)通信中讀卡器與標(biāo)簽的相互認(rèn)證中。
背景技術(shù)
射頻識(shí)別RFID是一種非接觸式雙向通信的自動(dòng)識(shí)別技術(shù),用于實(shí)現(xiàn)對(duì)物品的標(biāo)識(shí)。RFID的非接觸識(shí)別和多目標(biāo)識(shí)別等特點(diǎn),使其廣泛應(yīng)用于軍事、制造業(yè)、商業(yè)、日常生活等領(lǐng)域。同時(shí),RFID通信系統(tǒng)的安全機(jī)制不完善,使得安全與隱私問題日益突出,制約了它的大規(guī)模應(yīng)用。RFID系統(tǒng)主要由三部分組成:標(biāo)簽Tag、讀寫器Reader和后臺(tái)服務(wù)器Back-endServer,其中:標(biāo)簽是所附著物品或持有者的信息載體;讀寫器是讀寫標(biāo)簽的設(shè)備,負(fù)責(zé)向后臺(tái)數(shù)據(jù)庫(kù)傳送標(biāo)簽信息并執(zhí)行指令;后臺(tái)服務(wù)器用來(lái)存儲(chǔ)和處理標(biāo)簽與讀寫器的數(shù)據(jù)信息,對(duì)它們進(jìn)行管理和控制。讀寫器與后臺(tái)服務(wù)器有較強(qiáng)的計(jì)算與存儲(chǔ)能力,它們之間的通信信道在RFID系統(tǒng)中假定是安全的,而標(biāo)簽與讀寫器之間通信信道的安全問題是RFID研究領(lǐng)域有待解決的問題。針對(duì)RFID系統(tǒng)的安全與隱私問題,采用密碼學(xué)方法設(shè)計(jì)一個(gè)安全的認(rèn)證協(xié)議,對(duì)標(biāo)簽和讀寫器進(jìn)行認(rèn)證的方法成為普遍認(rèn)可的解決方法。為降低成本,計(jì)算和存儲(chǔ)能力很弱的被動(dòng)標(biāo)簽被廣泛使用,這使得設(shè)計(jì)的認(rèn)證協(xié)議必須是標(biāo)簽?zāi)軌虺惺艿妮p量級(jí)協(xié)議。因此,設(shè)計(jì)一個(gè)安全的低成本的認(rèn)證協(xié)議成為研究的熱點(diǎn)。現(xiàn)有的各種低成本RFID認(rèn)證協(xié)議,如由Feldhofer提出的基于對(duì)稱密碼算法的詢問一響應(yīng)協(xié)議和由Girault, Poupard和Stern共同提出基于公鑰的cryptoGPS方案,其中:Feldhofer提出的詢問一響應(yīng)協(xié)議,是第一個(gè)基于對(duì)稱密碼算法的RFID認(rèn)證協(xié)議,該方案基于AES塊密碼,由讀寫器發(fā)送隨機(jī)數(shù)作為詢問請(qǐng)求,后由標(biāo)簽響應(yīng)。該方案雖能以較低成本實(shí)現(xiàn)認(rèn)證,在0.35 um CMOS工藝下只需要3595個(gè)等效門即可,但是,該認(rèn)證方案由于受對(duì)稱密碼算法密鑰分配的影響,其靈活性差,限制了射頻識(shí)別RFID的應(yīng)用范圍和提供服務(wù)的形式,使該認(rèn)證方案的實(shí)際應(yīng)用受到了限制;由Girault, Poupard和Stern共同提出的基于公鑰的cryptoGPS方案,是一種基于橢圓曲線加密算法ECC的認(rèn)證方案,該方案是將標(biāo)簽的復(fù)雜計(jì)算交給讀寫器預(yù)先計(jì)算后存儲(chǔ)優(yōu)待券,是現(xiàn)有基于公鑰密碼的認(rèn)證方案中最省資源的設(shè)計(jì),適用于低成本的RFID標(biāo)簽,但是,該方案由于只實(shí)現(xiàn)了讀寫器對(duì)標(biāo)簽的單向認(rèn)證,且其密鑰管理方法與對(duì)稱密碼算法相當(dāng),不能體現(xiàn)公鑰管理的靈活性優(yōu)勢(shì),故限制了其在RFID中的應(yīng)用。綜上,現(xiàn)有的RFID認(rèn)證協(xié)議存在的以下缺陷:1、現(xiàn)有的RFID認(rèn)證協(xié)議均是單向認(rèn)證協(xié)議,只能解決讀寫器對(duì)標(biāo)簽合法性的認(rèn)證問題,不能解決標(biāo)簽對(duì)讀卡器的驗(yàn)證問題,也不利于標(biāo)簽對(duì)讀卡器權(quán)限的檢驗(yàn)以及對(duì)讀卡器的動(dòng)態(tài)授權(quán),影響大規(guī)模RFID網(wǎng)絡(luò)應(yīng)用的推廣。2、采用對(duì)稱密碼算法設(shè)計(jì)的低成本認(rèn)證協(xié)議,雖然能滿足標(biāo)簽資源受限的要求,但是,部署規(guī)模受到密鑰分配的嚴(yán)重限制,靈活性也不夠,不適合大規(guī)模的應(yīng)用。3、當(dāng)前已有的采用公鑰密碼算法設(shè)計(jì)的協(xié)議,占用的資源較多,遠(yuǎn)遠(yuǎn)超過了低成本標(biāo)簽的資源承受范圍,而且這些協(xié)議并沒有解決公鑰的密鑰分發(fā)問題,無(wú)法體現(xiàn)公鑰管理的優(yōu)勢(shì)和使用的靈活性,使得標(biāo)簽在應(yīng)用范圍和提供服務(wù)的形式上都嚴(yán)重受限。4、不能完全抵抗現(xiàn)有的各種攻擊手段,安全性能不夠。

發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述已有方法的不足,提出一種基于公鑰的射頻識(shí)別雙向認(rèn)證方法,以進(jìn)一步降低占用資源,實(shí)現(xiàn)讀寫器與標(biāo)簽的雙向認(rèn)證。為實(shí)現(xiàn)上述目的,本發(fā)明包括以下步驟:(I)讀寫器生成隨機(jī)數(shù)rs和讀寫器公鑰n,讀寫器將詢問信號(hào)Q、隨機(jī)數(shù)rs、讀寫器公鑰n與讀寫器的身份1 發(fā)送給標(biāo)簽;(2)標(biāo)簽收到數(shù)據(jù)后,檢查讀寫器公鑰n是否為標(biāo)簽所存儲(chǔ)的集合N中的元素,如果不是,則通信結(jié)束;如果是,則進(jìn)行如下操作:(2a)由標(biāo)簽隨機(jī)產(chǎn)生128位會(huì)話密鑰f,用讀寫器公鑰n將會(huì)話密鑰f利用加密函數(shù)En加密,加密結(jié)果記作a=En(f);(2b)從標(biāo)簽預(yù)存儲(chǔ)的m個(gè)優(yōu)待券中選取一個(gè)優(yōu)待券,記作(rs, !TiP),并采用輕量級(jí)流密碼算法Grain vl加密隨機(jī)數(shù)rs、與標(biāo)簽證書Certt,加密結(jié)果記作b=Gf(rs IriPl | Certt),其中,是 `隨機(jī)數(shù),P為選定的公鑰密碼算法中橢圓曲線的基點(diǎn),為橢圓曲線點(diǎn)乘運(yùn)算結(jié)果,Gf是流密碼算法Grain vl加密函數(shù);(2c)將兩個(gè)加密結(jié)果a與b發(fā)送給讀寫器;(3)讀寫器收到數(shù)據(jù)后,先解密a獲得會(huì)話密鑰f,再由會(huì)話密鑰f解密b獲得所述的rs、r,P和Certt ;通過讀寫器驗(yàn)證rs,如果驗(yàn)證不正確,則終止協(xié)議,否則,截取標(biāo)簽證書Certt的160位數(shù)據(jù)Cert 1 t,同時(shí)產(chǎn)生32位的隨機(jī)數(shù)c,并采用Grain vl算法使用會(huì)話密鑰f對(duì)數(shù)據(jù)Cert',和隨機(jī)數(shù)c加密,加密結(jié)果記作Gf (Cert ' t||c);最后將加密結(jié)果Gf (Cert ' t||c)發(fā)送給標(biāo)簽;(4)標(biāo)簽解密Gf (Cert ’ t)獲得數(shù)據(jù)Cert ’ t和隨機(jī)數(shù)C,驗(yàn)證數(shù)據(jù)Cert ’ t是否為標(biāo)簽證書Certt的部分位,如果不是,則通信結(jié)束;如果是,則標(biāo)簽對(duì)讀寫器的認(rèn)證成功,再計(jì)算中間值Y=I^sXcmodq,將中間值y值發(fā)送給讀寫器,其中,s是標(biāo)簽的私鑰,q為160位低漢明重量數(shù)據(jù),是橢圓曲線有限域的階,mod q為對(duì)階q的取模運(yùn)算;(5)讀寫器收到數(shù)據(jù)后,利用雙方公鑰V=-SP對(duì)標(biāo)簽進(jìn)行認(rèn)證,驗(yàn)證關(guān)系式y(tǒng)P+cV=riP是否成立,如果成立,則讀寫器對(duì)標(biāo)簽的認(rèn)證成功,該標(biāo)簽是讀寫器合法的通信對(duì)象;如果不成立,則認(rèn)證失敗,通信結(jié)束。與現(xiàn)有技術(shù)相比,該發(fā)明提出的認(rèn)證方法有以下優(yōu)點(diǎn):I)本發(fā)明實(shí)現(xiàn)了標(biāo)簽與讀寫器的雙向認(rèn)證;2)在標(biāo)簽的運(yùn)算中,公鑰n選擇為低漢明重量數(shù)據(jù),降低了標(biāo)簽的計(jì)算量;3)標(biāo)簽的隨機(jī)數(shù)生成和流密碼加解密,采用面向硬件的輕量級(jí)序列密碼算法Grain vl算法,Grain vl算法硬件內(nèi)存低、占用門數(shù)少及功耗低等優(yōu)點(diǎn),大大減少了標(biāo)簽所需資源;
4)將128位的會(huì)話密鑰f擴(kuò)展成1024位低漢明重量數(shù)據(jù)后再做Rabin加密,提高協(xié)議安全性的同事也大大的減少了標(biāo)簽的計(jì)算量;5)協(xié)議中標(biāo)簽上耗費(fèi)資源較多的乘法運(yùn)算及取模運(yùn)算采用兩個(gè)低資源乘法器來(lái)實(shí)現(xiàn),減少了標(biāo)簽所需資源。下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說(shuō)明:


圖1是本發(fā)明基于公鑰的射頻識(shí)別雙向認(rèn)證示意圖;圖2是本發(fā)明生成讀寫器公鑰n的流程圖;圖3是本發(fā)明進(jìn)行平方運(yùn)算f ' 2的第一低資源乘法器結(jié)構(gòu)圖;圖4是本發(fā)明進(jìn)行取模運(yùn)算modn的第二低資源乘法器結(jié)構(gòu)圖。
具體實(shí)施例方式本發(fā)明提出了一種基于公鑰的射頻識(shí)別雙向認(rèn)證方法,該認(rèn)證方法基于公鑰密碼中的橢圓曲線密碼,已知橢圓曲線C,基點(diǎn)P,預(yù)先給標(biāo)簽分配一個(gè)160位私鑰S,雙方公鑰V=_sP,讀寫器公鑰n的集合N=Inci, Ii1, n2, n3}, m個(gè)預(yù)計(jì)算優(yōu)待券Cri, T1, P)及標(biāo)簽證書Certt= (IDt, V=-sP, sigCA),其中,巧是隨機(jī)數(shù),rf為橢圓曲線點(diǎn)乘結(jié)果,IDt是標(biāo)簽的身份,sigCA是認(rèn)證中心CA對(duì)標(biāo)簽的簽字。參照?qǐng)D1,本發(fā)明的雙向認(rèn)證過程如下:步驟I,讀寫器操作:`
(Ia)讀寫器生成隨機(jī)數(shù)rs,即采用輕量級(jí)序列密碼算法Grain vl算法生成隨機(jī)數(shù)匕;(Ib)生成讀寫器公鑰n,參照?qǐng)D2,本步驟的具體實(shí)現(xiàn)如下:(lbl)選定一個(gè)512位模4余3的素?cái)?shù)作為讀寫器公鑰n的第一因子p,并要求中間值P-1有大素因子,具體操作如下:(Ibll)采用Grain vl算法生成一個(gè)496位的素?cái)?shù)作為中間值p_l的大素因子yi ;(lbl2)取中間值 p-1 的另一因子 y2=215+l,(lbl3)則讀寫器公鑰n的第一因子p=2*yi*y2+l ;(lbl4)對(duì)第一因子p進(jìn)行素性檢驗(yàn),若不是素?cái)?shù),中間值p-1的另一因子自加2,即y2=y2+2,再判斷因子y2是否滿足y2 < 216,若滿足,則返回(lbl3);若不滿足,則返回(Ibll);若第一因子p是素?cái)?shù),則進(jìn)行后續(xù)操作;(lb2)根據(jù)讀寫器公鑰n的取值范圍確定讀寫器公鑰n的第二因子q=n/p的取值范圍:(lb21)讀寫器公鑰n的前500位的最高位為1,其余位是0,后524位隨機(jī)選?。蛔x寫器公鑰n的的取值范圍是[nmin,nmax],其中,最小值nmin= [10000……0001,最大值nmax=1000……0111……111,最小值[nmin首尾為1,中間位均為0 ;最大值[nmax首位與后524位全為1,中間位均為0 ;(lb22)由關(guān)系式 qmin=nmin/p, qmax=nmax/p,得到第二因子 q 的取值范圍[qmin, qmax];
( lb3)在第二因子q的取值范圍內(nèi)搜索出一個(gè)模4余3的素?cái)?shù)作為第二因子q,并要求p-1與q_l的最大公因子gcd(p_l, q-1)最小,具體操作如下:(lb31)令讀寫器公鑰n的第一因子q= Qfflin ;(lb32)對(duì)第一因子q做模4余3的檢驗(yàn):如果模值不為3,則對(duì)第一因子q自加1,即q=q+l,直到第一因子q是模4余3的數(shù);(lb33)判斷第一因子q〈 q_是否成立,如果滿足進(jìn)行后續(xù)操作;若不滿足,則返回
I;(lb34)檢驗(yàn)p-1的大素因子Y1是否整除q_l,若整除,則說(shuō)明gcd(p_l, q-1)較大,不滿足要求,返回I ;若不整除,繼續(xù)后續(xù)操作;( lb35)對(duì)第一因子q進(jìn)行素性檢驗(yàn),若不是素?cái)?shù),第一因子q自加4,返回(lb3c);若是素?cái)?shù),繼續(xù)后續(xù)操作;(lb4)由關(guān)系式n=pq,得到讀寫器公鑰n的值;(Ic)讀寫器將詢問信號(hào)Q、隨機(jī)數(shù)rs、讀寫器公鑰n與讀寫器的身份1 發(fā)送給標(biāo)簽。步驟2,標(biāo)簽操作:檢查收到的讀寫器公鑰n是否是其所存儲(chǔ)的讀寫器公鑰n集合N中的元素,如果不是,則通信結(jié) 束;如果是,則繼續(xù)以下操作:(2a)標(biāo)簽生成并加密會(huì)話密鑰:(2al)標(biāo)簽采用Grain vl算法產(chǎn)生128位隨機(jī)數(shù)作為會(huì)話密鑰f ;(2a2)將生成的128位會(huì)話密鑰的每一位嵌入到1024位空數(shù)據(jù)的每個(gè)字節(jié)的最低位,得到嵌入后的數(shù)據(jù)f';(2a3)對(duì)嵌入后的數(shù)據(jù)做Rabin加密,加密結(jié)果記作a=En (f) = f 2modn,其中,f' 2是1024位數(shù)據(jù)f'的平方運(yùn)算,mod n是對(duì)讀寫器公鑰n的取模運(yùn)算;(2b)從標(biāo)簽預(yù)存儲(chǔ)的m個(gè)優(yōu)待券中選取一個(gè)優(yōu)待券,記作Cri, !TiP),其中,rt是隨機(jī)數(shù),r, P為橢圓曲線點(diǎn)乘運(yùn)算結(jié)果;(2c)采用Grain vl算法加密隨機(jī)數(shù)rs、!TiP與標(biāo)簽證書Certt,加密結(jié)果記作b=Gf(rs| IriPl I Certt),其中,Gf是流密碼算法Grain vl加密函數(shù);(2d)將加密結(jié)果a與b發(fā)給讀寫器。步驟3,讀寫器向標(biāo)簽證明身份:(3a)用Rabin解密算法解密收到的加密結(jié)果a,獲得會(huì)話密鑰f ;(3b)利用會(huì)話密鑰f采用Grain vl算法解密加密結(jié)果b,獲得隨機(jī)數(shù)I^riP與標(biāo)簽證書Certt ;(3c)驗(yàn)證隨機(jī)數(shù)rs是否被改變,若隨機(jī)數(shù)rs被改變,則終止協(xié)議;若隨機(jī)數(shù)rs未被改變,則繼續(xù)以下操作:(3cI)截取標(biāo)簽證書Certt的160位數(shù)據(jù)Cert丨t ;(3c2)采用Grain vl算法生成一個(gè)32位的隨機(jī)數(shù)c ;(3c3)采用Grain vl算法并使用會(huì)話密鑰f對(duì)數(shù)據(jù)Cert ' t和隨機(jī)數(shù)c加密,力口密結(jié)果記作Gf (Cert丨11 I c); (3c4)將加常結(jié)果Gf (Cert ' 11 I c)發(fā)送給標(biāo)簽。
步驟4,標(biāo)簽對(duì)讀寫器進(jìn)行認(rèn)證:(4a)標(biāo)簽采用Grain vl算法解密加密結(jié)果Gf (Ceri^ t),獲得數(shù)據(jù)Ceri^ t和隨機(jī)數(shù)c ;(4b)標(biāo)簽驗(yàn)證數(shù)據(jù)Cert ’ t是否為標(biāo)簽證書Certt的部分位,如果不是,則通信結(jié)束;如果是,則標(biāo)簽對(duì)讀寫器的認(rèn)證成功,繼續(xù)以下操作;標(biāo)簽計(jì)算中間值yzri+sXcmodq,并將中間值y值發(fā)送給讀寫器,其中,s是標(biāo)簽的私鑰,Q為橢圓曲線有限域的階,mod q為對(duì)階q的取模運(yùn)算。步驟5,讀寫器對(duì)標(biāo)簽的認(rèn)證:讀寫器利用雙方公鑰V=-SP對(duì)標(biāo)簽進(jìn)行認(rèn)證,讀寫器驗(yàn)證關(guān)系式y(tǒng)P+cV=riP是否成立,如果成立,則讀寫器對(duì)標(biāo)簽的認(rèn)證成功,該標(biāo)簽是合法通信對(duì)象;如果不成立,則認(rèn)證失敗,通信結(jié)束。上述方法中耗費(fèi)資源較多是乘法運(yùn)算,故對(duì)所述步驟(2a3)中對(duì)公式a=En(f)=f ’ 2Hiodn的平方運(yùn)算和取模運(yùn)算,采用兩種新型低資源乘法實(shí)現(xiàn),其中:(I)對(duì)加密函數(shù)En(f)中Rabin加密的平方運(yùn)算f ' 2采用如圖3所示的第一低資源乘法器實(shí)現(xiàn),該乘法器由4個(gè)I位乘法器,4個(gè)16位加法器和多個(gè)移位寄存器組成,其運(yùn)算步驟如下:首先,向I位乘法器輸入被乘數(shù)f '的16位和乘數(shù)的8位,4個(gè)I位乘法器并行計(jì)算,該I位乘法器相當(dāng)于一個(gè)特殊的與非門,乘數(shù)輸入為I時(shí),輸出被乘數(shù);乘數(shù)輸入為0,則輸出0 ;其次,將I位乘法器輸出的數(shù)`據(jù)進(jìn)入到初始置零的移位寄存器,移位寄存器Regl6、Reg32、Reg48和Reg64分別將I位乘法器輸出結(jié)果存儲(chǔ)在移位寄存器的高16位,其余位均為0,間接實(shí)現(xiàn)將乘法結(jié)果左移0位、16位、32位和48位;接著,將移位寄存器輸出數(shù)據(jù)進(jìn)入到16位加法器做加法運(yùn)算,相加后進(jìn)位返回參與下一次計(jì)算,相加后的結(jié)果存入RAM ;接著,將RAM中存儲(chǔ)的結(jié)果進(jìn)入64位移位寄存器,間接實(shí)現(xiàn)將數(shù)據(jù)左移64位;最后,將64位移位寄存器與第二次計(jì)算每個(gè)時(shí)鐘輸出的16位數(shù)據(jù)輸入到16位加法器,相加后進(jìn)位返回,相加結(jié)果存入RAM ;該乘法器重復(fù)運(yùn)行32次后,即可完成加密函數(shù)En (f)中Rabin加密的平方運(yùn)算f丨2,該乘法器共需要1600個(gè)門即可實(shí)現(xiàn),耗時(shí)為2048個(gè)時(shí)鐘周期。(2)對(duì)加密函數(shù)En(f)中Rabin加密的取模運(yùn)算mod n采用如圖4所示的第二低資源乘法器實(shí)現(xiàn),該乘法器由2個(gè)8位乘法器,3個(gè)8位加法器,2個(gè)16位加法器和多個(gè)移位寄存器組成,其運(yùn)算步驟如下:首先,向8位乘法器輸入被乘數(shù)的8位和乘數(shù)的8位,2個(gè)8位乘法器并行計(jì)算;其次,將8位乘法器輸出的數(shù)據(jù)進(jìn)入到16位加法器,輸出結(jié)果的高8位作為進(jìn)位返回參與下一次計(jì)算,低8位輸出;接著,將16位加法器輸出數(shù)據(jù)進(jìn)入到初始置零的移位寄存器,移位寄存器RegS和Regl6分別將8位乘法器輸出結(jié)果存儲(chǔ)在移位寄存器的高8位,其余位均為0,間接實(shí)現(xiàn)將乘法結(jié)果左移0位和8位;接著,將移位寄存器輸出數(shù)據(jù)進(jìn)入到8位加法器做加法運(yùn)算,相加后進(jìn)位返回參與下一次計(jì)算,相加后的結(jié)果存入RAM ;接著,將RAM中存儲(chǔ)的結(jié)果進(jìn)入16位移位寄存器,間接實(shí)現(xiàn)將數(shù)據(jù)左移16位;最后,將16位移位寄存器與第二次計(jì)算每個(gè)時(shí)鐘輸出的8位數(shù)據(jù)輸入到8位加法器,相加后進(jìn)位返回,相加結(jié)果存入RAM ;該乘法器重復(fù)運(yùn)行32次,即可完成加密函數(shù)En (f)中Rabin加密的取模運(yùn)算modn,該乘法器共需要1678個(gè)門,耗時(shí)為1088個(gè)時(shí)鐘周期。綜上所述,本發(fā)明中標(biāo)簽只需3278個(gè)門即可實(shí)現(xiàn)與讀寫器的雙向認(rèn)證,這滿足RFID認(rèn)證中標(biāo)簽的低成本實(shí)現(xiàn)要求。
權(quán)利要求
1.一種基于公鑰的射頻識(shí)別雙向認(rèn)證方法,其特征在于,包括以下步驟: (1)讀寫器生成隨機(jī)數(shù)rs和讀寫器公鑰n,讀寫器將詢問信號(hào)Q、隨機(jī)數(shù)rs、讀寫器公鑰n與讀寫器的身份1 發(fā)送給標(biāo)簽; (2)標(biāo)簽收到數(shù)據(jù)后,檢查讀寫器公鑰n是否為標(biāo)簽所存儲(chǔ)的集合N中的元素,如果不是,則通信結(jié)束;如果是,則進(jìn)行如下操作: (2a)由標(biāo)簽隨機(jī)產(chǎn)生128位會(huì)話密鑰f,用讀寫器公鑰n將會(huì)話密鑰f利用加密函數(shù)En加密,加密結(jié)果記作a=En(f); (2b)從標(biāo)簽預(yù)存儲(chǔ)的m個(gè)優(yōu)待券中選取一個(gè)優(yōu)待券,記作(ri,r,P),并采用輕量級(jí)流密碼算法Grain vl加密隨機(jī)數(shù)I^riP與標(biāo)簽證書Certt,加密結(jié)果記作b=Gf(rs | TiP Certt),其中,^是隨機(jī)數(shù),P為選定的公鑰密碼算法中橢圓曲線的基點(diǎn),riP為橢圓曲線點(diǎn)乘運(yùn)算結(jié)果,Gf是流密碼算法Grain vl加密函數(shù); (2c)將兩個(gè)加密結(jié)果a與b發(fā)送給讀寫器; (3)讀寫器收到數(shù)據(jù)后,先解密a獲得會(huì)話密鑰f,再由會(huì)話密鑰f解密b獲得所述的rs、r,P和Certt ;通過讀寫器驗(yàn)證rs,如果驗(yàn)證不正確,則終止協(xié)議,否則,截取標(biāo)簽證書Certt的160位數(shù)據(jù)Cert 1 t,同時(shí)產(chǎn)生32位的隨機(jī)數(shù)c,并采用Grain vl算法使用會(huì)話密鑰f對(duì)數(shù)據(jù)Cert',和隨機(jī)數(shù)c加密,加密結(jié)果記作Gf (Cert ' 11 I c);最后將加密結(jié)果Gf (Cert丨11 I c)發(fā)送給標(biāo)簽; (4)標(biāo)簽解密Gf(Cert丨t)獲得數(shù)據(jù)Cert丨t和隨機(jī)數(shù)C,驗(yàn)證數(shù)據(jù)Cert丨t是否為標(biāo)簽證書Certt的部分位,如果不是,則通信結(jié)束;如果是,則標(biāo)簽對(duì)讀寫器的認(rèn)證成功,再計(jì)算中間值y^i+s X cmodq,將中間值y值發(fā)送給讀寫器,其中,s是標(biāo)簽的私鑰,q為160位低漢明重量數(shù)據(jù),是橢圓曲線有限域的階,mod q為對(duì)階q的取模運(yùn)算; (5)讀寫器收到數(shù)據(jù)后,利用雙方公鑰V=-SP對(duì)標(biāo)簽進(jìn)行認(rèn)證,驗(yàn)證關(guān)系式uP+cV=riP是否成立,如果成立,則讀寫器對(duì)標(biāo)簽的認(rèn)證成功,該標(biāo)簽是讀寫器合法的通信對(duì)象;如果不成立,則認(rèn)證失敗,通信結(jié)束。
2.根據(jù)權(quán)利要求1所述的基于公鑰的射頻識(shí)別雙向認(rèn)證方法,其中步驟(I)所述的讀寫器生成公鑰n,按如下步驟進(jìn)行: (Ia)選定一個(gè)512位模4余3的素?cái)?shù)作為讀寫器公鑰n的第一因子p,并要求p_l有大素因子; (Ib)根據(jù)讀寫器公鑰n的數(shù)據(jù)要求確定讀寫器公鑰n的取值范圍,即讀寫器公鑰n的前500位的最高位為I,其余位是0,后524位隨機(jī)選取; (Ic)由讀寫器公鑰n的取值范圍確定第二因子q=n/p的取值范圍,在第二因子q的取值范圍內(nèi)搜索出一個(gè)模4余3的素?cái)?shù)作為第二因子q,并要求P-1與q_l的最大公因子gcd(p-l, q-1)最?。? (Id)由關(guān)系式n=pq,確定讀寫器公鑰n的值。
3.根據(jù)權(quán)利要求1所述的基于公鑰的射頻識(shí)別雙向認(rèn)證方法,其中步驟(2a)所述的用加密函數(shù)En加密,按如下操作進(jìn) 行: (2al)將128位的會(huì)話密鑰f擴(kuò)展成1024位的低漢明重量數(shù)據(jù)f丨,即將會(huì)話密鑰f的每一位嵌入到一個(gè)1024位空數(shù)據(jù)的每個(gè)字節(jié)的最低位,嵌入后的數(shù)據(jù)記為f丨; (2a2)對(duì)低漢明重量數(shù)據(jù)f '做Rabin加密,得到加密結(jié)果:En(f)=f ' 2modn,其中,f ; 2是1024位低漢明重量數(shù)據(jù)f '的平方運(yùn)算,modn是對(duì)讀寫器公鑰n的取模運(yùn)算。
4.根據(jù)權(quán)利要求3所述的基于公鑰的射頻識(shí)別雙向認(rèn)證方法,其中步驟(2a2)中平方運(yùn)算f丨2,是通過第一低資源乘法器實(shí)現(xiàn),其運(yùn)算步驟如下: 首先,向I位乘法器輸入被乘數(shù)f'的16位和乘數(shù)f'的8位,4個(gè)I位乘法器并行計(jì)算,該I位乘法器相當(dāng)于一個(gè)特殊的與非門,乘數(shù)輸入為I時(shí),輸出被乘數(shù);乘數(shù)輸入為0,則輸出0 ; 其次,將I位乘法器輸出的數(shù)據(jù)進(jìn)入到初始置零的移位寄存器,移位寄存器Regie、Reg32、Reg48和Reg64分別將I位乘法器輸出結(jié)果存儲(chǔ)在移位寄存器的高16位,其余位均為0,間接實(shí)現(xiàn)將乘法結(jié)果左移0位、16位、32位和48位; 接著,將移位寄存器輸出數(shù)據(jù)進(jìn)入到16位加法器做加法運(yùn)算,相加后進(jìn)位返回參與下一次計(jì)算,相加后的結(jié)果存入RAM ; 接著,將RAM中存儲(chǔ)的結(jié)果進(jìn)入64位移位寄存器,間接實(shí)現(xiàn)將數(shù)據(jù)左移64位; 最后,將64位移位寄存器與第二次計(jì)算每個(gè)時(shí)鐘輸出的16位數(shù)據(jù)輸入到16位加法器,相加后進(jìn)位返回,相加結(jié)果存入RAM ; 該乘法器重復(fù)運(yùn)行32次后,即可完成該1024位的低漢明重量數(shù)據(jù)f '的平方運(yùn)算f '
5.根據(jù)權(quán)利要求3所述的基于公鑰的射頻識(shí)別雙向認(rèn)證方法,其中步驟(2a2)中取模運(yùn)算modn,是通過第二低資源乘法器實(shí)現(xiàn),其運(yùn)算步驟如下: 首先,向8位乘法器輸入被乘數(shù)的8位和乘數(shù)的8位,2個(gè)8位乘法器并行計(jì)算; 其次,將8位乘法器輸出的數(shù)據(jù)進(jìn)入到16位加法器,輸出結(jié)果的高8位作為進(jìn)位返回參與下一次計(jì)算,低8位輸出; 接著,將16位加法器輸出數(shù)據(jù)進(jìn)入到初始置零的移位寄存器,移位寄存器RegS和Regl6分別將8位乘法器輸出結(jié)果存儲(chǔ)在移位寄存器的高8位,其余位均為0,間接實(shí)現(xiàn)將乘法結(jié)果左移0位和8位; 接著,將移位寄存器輸出數(shù)據(jù)進(jìn)入到8位加法器做加法運(yùn)算,相加后進(jìn)位返回參與下一次計(jì)算,相加后的結(jié)果存入RAM ; 接著,將RAM中存儲(chǔ)的結(jié)果進(jìn)入16位移位寄存器,間接實(shí)現(xiàn)將數(shù)據(jù)左移16位; 最后,將16位移位寄存器與第二次計(jì)算每個(gè)時(shí)鐘輸出的8位數(shù)據(jù)輸入到8位加法器,相加后進(jìn)位返回,相加結(jié)果存入RAM ; 該乘法器重復(fù)運(yùn)行32次,即可完成取模運(yùn)算modn。
全文摘要
本發(fā)明公開了一種基于公鑰的射頻識(shí)別雙向認(rèn)證方法,主要解決現(xiàn)有射頻識(shí)別認(rèn)證中標(biāo)簽成本過高且通信安全性不足的問題。其實(shí)現(xiàn)步驟是(1)由讀寫器將詢問信號(hào)Q、隨機(jī)數(shù)rs、讀寫器公鑰n與讀寫器的身份IDr發(fā)送給標(biāo)簽;(2)標(biāo)簽驗(yàn)證讀寫器公鑰n后生成會(huì)話密鑰f,并將會(huì)話密鑰f和標(biāo)簽證書Certt加密后發(fā)給讀寫器;(3)由讀寫器截取標(biāo)簽證書Certt的160位數(shù)據(jù)Cert't加密后發(fā)給標(biāo)簽,向標(biāo)簽證明身份;(4)標(biāo)簽通過驗(yàn)證Cert't認(rèn)證讀寫器,并計(jì)算中間值發(fā)給證明身份;(5)讀寫器利用公鑰V完成對(duì)標(biāo)簽的認(rèn)證。本方法實(shí)現(xiàn)了標(biāo)簽與讀寫器的雙向認(rèn)證,有效降低了標(biāo)簽的計(jì)算量和占用資源,同時(shí)也保證了通信安全性,能更好的適用于資源受限的射頻識(shí)別系統(tǒng)。
文檔編號(hào)H04L9/32GK103078744SQ20131003028
公開日2013年5月1日 申請(qǐng)日期2013年1月25日 優(yōu)先權(quán)日2013年1月25日
發(fā)明者董慶寬, 魏麗麗, 丁文秀, 李小平, 劉彥明, 趙蕾, 黎劍兵 申請(qǐng)人:西安電子科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
靖远县| 黑龙江省| 盖州市| 多伦县| 南江县| 肇州县| 吉首市| 通渭县| 阳谷县| 叶城县| 武山县| 中方县| 安陆市| 奇台县| 报价| 高陵县| 乌鲁木齐市| 栾川县| 金沙县| 南投市| 彩票| 会宁县| 清丰县| 寻乌县| 京山县| 高邑县| 麻城市| 武穴市| 应城市| 永城市| 八宿县| 集贤县| 安塞县| 双桥区| 民和| 柏乡县| 青铜峡市| 顺义区| 晋宁县| 门头沟区| 子洲县|