基于生物特征的遠(yuǎn)程認(rèn)證協(xié)議方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于信息安全技術(shù)領(lǐng)域,具體設(shè)及一個(gè)基于生物特征的遠(yuǎn)程認(rèn)證協(xié)議方 法。
【背景技術(shù)】
[0002] 通信技術(shù)的發(fā)展為各種服務(wù)提供了可擴(kuò)展的平臺(tái),遠(yuǎn)程用戶可W從任何地方訪 問服務(wù)器。遠(yuǎn)程通訊系統(tǒng)提供了獨(dú)特的在線服務(wù)的機(jī)會(huì),該樣用戶不需要物理存在的服 務(wù)中屯、。該些服務(wù)采用認(rèn)證和密鑰協(xié)商協(xié)議,W確保授權(quán)和對(duì)資源的安全訪問。1981年, Lampod首先提出了基于口令的認(rèn)證協(xié)議,并得到了廣泛的應(yīng)用。但由于口令需要存儲(chǔ)且 具有容易被忘記和丟失的缺點(diǎn),單純的基于口令的認(rèn)證協(xié)議不能在滿足復(fù)雜網(wǎng)絡(luò)環(huán)境的需 求,協(xié)議設(shè)計(jì)中逐漸采用生物特征等因素,并形成了多因素認(rèn)證協(xié)議體制。
[0003] 生物特征具有如下優(yōu)點(diǎn);(1)不易被丟失或忘記;(2)極難被偽造;(3)不易被復(fù) 制或分享;(4)相比低滴的口令生物因素不易被猜測;(5)具有獨(dú)特性,很難被破解。正是基 于生物特征的如上優(yōu)點(diǎn),越來越多的遠(yuǎn)程認(rèn)證系統(tǒng),比如遠(yuǎn)程醫(yī)療、網(wǎng)上銀行,在安全認(rèn)證 協(xié)議中嵌入生物特征,保證用戶與服務(wù)器之間進(jìn)行安全的通訊。近年來,大量的基于生物特 征的遠(yuǎn)程認(rèn)證協(xié)議被相繼提出,但均不能提供足夠安全的性能,同時(shí)計(jì)算性能仍然有提升 的空間。2014年,黃朝陽提出了一種基于生物特征的認(rèn)證協(xié)議,然而他的協(xié)議具有不能保護(hù) 用戶匿名性、不能抵抗拒絕服務(wù)攻擊和私鑰泄露冒充攻擊,計(jì)算消耗較高等缺陷。
[0004] 本發(fā)明提出一個(gè)基于生物特征的遠(yuǎn)程認(rèn)證密鑰協(xié)商協(xié)議,采用高效的楠圓曲線密 碼體制,提高了協(xié)議的安全性能,能夠抵抗所有提到的已知攻擊,同時(shí)采用動(dòng)態(tài)身份保護(hù)了 用戶的匿名性,計(jì)算性能也得到了大幅度提升。
【發(fā)明內(nèi)容】
[0005] 針對(duì)上述存在的問題,本發(fā)明提出了一種基于生物特征的遠(yuǎn)程認(rèn)證協(xié)議方法。
[0006] 本發(fā)明所述的遠(yuǎn)程認(rèn)證協(xié)議,其特征在于,該協(xié)議方法包括W下五個(gè)步驟:
[0007] 步驟1;服務(wù)器S產(chǎn)生系統(tǒng)參數(shù);
[0008] 步驟2 ;用戶Ui通過安全信道向服務(wù)器提交注冊(cè)信息,服務(wù)器S經(jīng)過數(shù)據(jù)處理后, 將信息存儲(chǔ)在智能卡中,并通過安全信道將信息發(fā)送給用戶Ui;
[0009] 步驟3;為了能夠登錄到遠(yuǎn)程服務(wù)器S,用戶Ui需計(jì)算登錄信息,然后將登錄信息 發(fā)送給服務(wù)器;
[0010] 步驟4;用戶Ui與服務(wù)器S之間通過兩次"握手"即可實(shí)現(xiàn)認(rèn)證及密鑰協(xié)商的目 的,并產(chǎn)生一個(gè)會(huì)話密鑰sk;
[0011] 步驟5; 口令和生物特征值修改階段;用戶Ui無需服務(wù)器S的幫助,僅通過智能卡 運(yùn)算即可實(shí)現(xiàn)修改口令和生物特征的目的。
[001引步驟1中服務(wù)器S選擇楠圓曲線E:y2三x3+ax+b(mcxlp),Ep(a,b)是楠圓曲線E的n階點(diǎn)加法群,P為其生成元,即n?P= 0。選擇se馬作為自己的私鑰并保存,計(jì)算Y =s?p為公鑰,然后選擇單向哈希函數(shù)w*):化ir^馬。s保密s,公布其系統(tǒng)參數(shù)w= 巧p,H(*),P,p,W。
[0013] 步驟2中,具體包括W下步驟:
[0014]步驟2. 1;用戶Ui選擇賬號(hào)ID1,口令PWi及和隨機(jī)數(shù)W卻 <,生物特征提取器計(jì)算 生物特征值町,計(jì)算f巧?M,,r;=巧.?W,然后通過安全信道將1町、Wi和W2發(fā)送給服務(wù) 器S。
[0015] 步驟2. 2 ;在接收到IDi、Wi和胖2之后,S首先驗(yàn)證Ui的IDi格式是否正確,如果正 確進(jìn)行下一步驟。
[001引 步驟2.3 ;服務(wù)器S計(jì)算Fi=巧;?巧貨巧=巧F;貨馬?巧,戶2=巧剛I小F,=打聽)紐眠)貨F;。 S將{Ep,H(),P,p,Y,Vi,V3}存儲(chǔ)在智能卡中并通過安全信道發(fā)送給U。
[0017] 步驟2.4 ;Ui接收到智能卡后,將W輸入其內(nèi)保存。最終,智能卡包含信息為 {Ep,H(),P,p,Y,Vi,V3,w}。
[0018] 步驟3中用戶Ui將智能卡SC插入讀卡器中,并輸入賬號(hào)IDi和口令PWi,生物特 征提取器提取生物特征值毎,然后智能卡SC計(jì)算馬=Kf?巧,如果d(成,巧.)含r,S停 止執(zhí)行協(xié)議,否則SC計(jì)算=戶巧?M.',聽=巧貨W, 巧巧)活巧聽)。然后選擇ce。Z; 和時(shí)間戳Ti,計(jì)算Ci=C?P,C2=C?Y=C?S?P,C/A=巧 0巧}1C; |巧),F(xiàn)i= HaDillCsIlTilIVsIlY)。然后智能卡SC將叫二{CID^Bi,F(xiàn)i,Ti}發(fā)送給S。
[0019] 步驟4中,具體包括W下步驟:
[0020]步驟4. 1;接收到叫后,S驗(yàn)證T1是否有效,如果T元效,S停止執(zhí)行協(xié)議。否則, S計(jì)算C; =S'q,曲;=CZD,. 0巧:HI甸| 7]),K=巧近II小巧*=好(騎II與II引|KIIn。然后,S驗(yàn) 證壞和Fi是否相等。如果不等,則停止執(zhí)行協(xié)議,否則,S成功認(rèn)證U1。
[0021] 步驟4.2 ;S選擇隨機(jī)數(shù)和時(shí)間戳T2,然后計(jì)算D=d.Y=d.S-P, e=d'C; =d'c's'P,sA= //(/D;II切I0||句,F(xiàn)2=H(skMe||T2IIY)。然后S將ni2=(F2,了2,0} 發(fā)送給Ui。
[00過步驟4. 3 ;U浪收到m2后,檢查T2是否有效。如果無效,S停止執(zhí)行協(xié)議,否則,計(jì) 算/ =C'D,= //(曲IIGII0II/),軒=片(站*II/II引In并驗(yàn)證F2與巧*是否相等,如果不等, 則停止執(zhí)行協(xié)議,否則,成功認(rèn)證S,并接受sk>為正確的會(huì)話密鑰。
[0023] 步驟5中,具體包括W下步驟:
[0024] 步驟5. 1;用戶Ui將智能卡插入讀卡器中,并輸入賬號(hào)IDi和原有口令PWi,輸入原 有生物特征值毎。
[00巧]步驟5. 2;智能卡5(:計(jì)算戶2 =戶3史巧巧)@巧職2),馬=^@戶巧活/馬,如果^/(取馬)之[,則SC拒絕修改口令請(qǐng)求并將拒絕修改信息反饋給用戶,否則,繼續(xù)執(zhí)行下面步驟。
[002引步驟5. 3 ;智能卡SC要求Ui輸入兩遍設(shè)置的新口令P巧和毎,并選擇一個(gè)新的 隨機(jī)數(shù),計(jì)算 巧腳=P巧曬'貨"嚴(yán)…'聽馬'。''貨n'"。''。K腳=巧腳?巧'2腳史 J馬=戶巧"。''貨馬勝貨化,', vr=H{Wr)? //爬…1')@^ 。將智能卡中{Ep,H(),P,p,Y,Vi,V3,w}更新為 {與,巧),戶,;7X嚇。'',巧。
[0027] 本發(fā)明具有的有益效果:
[0028] 本發(fā)明保護(hù)用戶匿名性。在步驟2中,用戶Ui通過安全信道將IDi發(fā)送 給S,在登錄認(rèn)證階段,我們采用動(dòng)態(tài)身份c/D,=巧?//(yiiCsii?;)用于傳輸,也就是說 巧=C巧.?//〇'lie'll ,由于隨機(jī)數(shù)C不可知,攻擊者無法從CID滿取用戶的身份信息ID1, 從而保護(hù)了用戶的匿名性。
[0029] 本發(fā)明提供雙向認(rèn)證和密鑰協(xié)商。在步驟4中,用戶與服務(wù)器達(dá)到了雙向認(rèn)證的 目的。首先,通過驗(yàn)證巧%巧,服務(wù)器S成功認(rèn)證了用戶Ui,再通過驗(yàn)證巧%F;,用戶U也成功 認(rèn)證了服務(wù)器S,該樣雙方便實(shí)現(xiàn)了相互認(rèn)證。此后,計(jì)算會(huì)話密鑰sk=H(IDiIIC2IIDIIe), 其中e=d?c?Y是由Ui和S共同決定的,該意味著,會(huì)話密鑰sk在每一次會(huì)話中都不會(huì) 相同,當(dāng)會(huì)話到期后,sk不能被重復(fù)使用,因?yàn)樗怯蒀2、D和e共同決定的。該保證了Ui 和S之間秘密信息的傳遞。從而達(dá)到了雙向認(rèn)證和密鑰協(xié)商的目的。
[0030] 本發(fā)明抵抗拒絕服務(wù)攻擊。在步驟3、5中,當(dāng)攻擊者輸入錯(cuò)誤的PWi'和正確的1町 和《,智能卡通過計(jì)算馬.'=K 巧'?巧并與聳進(jìn)行比對(duì),發(fā)現(xiàn)不相等后,停止協(xié)議進(jìn)行,并 拒絕攻擊者的請(qǐng)求,保證了協(xié)議抵抗拒絕服務(wù)攻擊。
[0031] 本發(fā)明抵抗重放攻擊。協(xié)議中用于傳輸?shù)南i、m2中均包含時(shí)間戳,并在其他認(rèn) 證數(shù)據(jù)中嵌入了時(shí)間戳信息,從而通過對(duì)時(shí)間戳有效性的認(rèn)證保證協(xié)議抵抗重放攻擊。
[0032] 本發(fā)明抵抗冒充攻擊。協(xié)議中假設(shè)攻擊者想要冒充用戶&欺騙服務(wù)器S,需要獲 得Fi=H(IDJ侶||TjIVsIlY)來達(dá)到目的。但是我們可W注意到用戶的町被動(dòng)態(tài)身份 CIDi保護(hù),攻擊者無法知曉,其次由于隨機(jī)數(shù)<,攻擊者也不能計(jì)算出C2。也就意味著 攻擊者無法成功地偽造出也就無法冒充用戶成功地欺騙服務(wù)器得到認(rèn)證。從而保證了 協(xié)議抵抗冒充攻擊。
[0033] 本發(fā)明抵抗離線口令猜測攻擊。協(xié)議中假設(shè)攻擊者想要冒充用戶Ui欺騙服務(wù)器 S,需要獲得Fi=H(IDiIIC2IITiIIV2IIY)來達(dá)到目的。但是我們可化注意到用戶的IDi被動(dòng) 態(tài)身份CIDi保護(hù),攻擊者無法知曉,其次由于隨機(jī)數(shù)C 與,攻擊者也不能計(jì)算出C2。也就 意味著攻擊者無法成功地偽造出也就無法冒充用戶成功地欺騙服務(wù)器得到認(rèn)證。從而 保證了協(xié)議抵抗離線口令猜測攻擊。
[0034] 本發(fā)明具有會(huì)話密鑰的前向安全性。協(xié)議中即使私鑰S被泄露,攻擊者也不能計(jì) 算出sk=H(IDiII〔2||DIIe),因?yàn)閑=d.c.s.P,而c,d是隨機(jī)選取且相互獨(dú)立的,同 時(shí),通過叫和m2,攻擊者可W獲得到咕,的=(c-P,d's-P),基于CDH問題的難解性可 知,攻擊者無法計(jì)算出e,也就無法得到sk。所W我們的協(xié)議具有密鑰前向安全性并可W抵 抗私鑰泄露冒充攻擊。
[003引本發(fā)明的運(yùn)算性能強(qiáng),在(CPU: 1.6GHz,RAM: 2. 0GB)環(huán)境下整個(gè)過程計(jì)算時(shí)間為 9. 54ms,相比現(xiàn)有的協(xié)議計(jì)算時(shí)間大幅度縮短。
【附圖說明】
[0036] 圖1為本協(xié)議方法的總體流程示意圖;
[0037] 圖2位用戶注冊(cè)的流程圖;
[0038] 圖3為用戶登錄認(rèn)證的示意圖;
[0039] 圖4位用戶登錄認(rèn)證的流程圖;
[0040] 圖5為用戶修改口令和生物特征的示意圖;
[0041] 具體實(shí)施方法
[0042] 下面將結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。
[0043] 本協(xié)議運(yùn)用高效的楠圓曲線密碼體制算法,通過合理設(shè)計(jì)協(xié)議流程,基于生物特 征、口令與智能卡多因素,安全性能強(qiáng),計(jì)算速度快,可具體應(yīng)用在遠(yuǎn)程醫(yī)療等系統(tǒng)中,如圖 1所示具體操作如下;
[0044](一)系統(tǒng)初始化
[0045] 服務(wù)器S將會(huì)通過W下步驟產(chǎn)生系統(tǒng)參數(shù)。
[004引 (l)s選擇楠