專利名稱:基于生物特征和口令的可配置雙向認(rèn)證方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種雙向認(rèn)證方法,特別是基于生物特征和口令的可配置雙向認(rèn)證方法。
背景技術(shù):
在分布式網(wǎng)絡(luò)應(yīng)用領(lǐng)域中,用戶與服務(wù)器之間的雙向認(rèn)證一般基于口令驗(yàn)證實(shí)現(xiàn)。而在實(shí)際應(yīng)用當(dāng)中,由于口令易被猜測(cè)而經(jīng)常出現(xiàn)用戶身份被盜用的安全事件發(fā)生?;?于生物特征,如指紋、虹膜等的身份認(rèn)證直接認(rèn)證用戶物理身份,能夠防止因用戶口令被盜 而引起的用戶身份被盜用問(wèn)題,已被應(yīng)用在一些需要高安全級(jí)別的應(yīng)用場(chǎng)合中。文獻(xiàn)“指紋識(shí)別技術(shù)的新進(jìn)展.自然科學(xué)進(jìn)展.2006,16(4),400-408”公開(kāi)了一 種基于生物特征(指紋)的用戶身份認(rèn)證方法。該方法要求用戶在注冊(cè)時(shí)將生物特征(指 紋)模板存儲(chǔ)于數(shù)據(jù)庫(kù);認(rèn)證時(shí),服務(wù)器將用戶現(xiàn)場(chǎng)采集的生物特征(指紋)樣本與從數(shù) 據(jù)庫(kù)讀取的生物特征(指紋)模板進(jìn)行比對(duì)。如果比對(duì)結(jié)果是吻合的,則服務(wù)器對(duì)用戶認(rèn) 證成功;否則,說(shuō)明用戶身份無(wú)效。但是此方法存在一些安全缺陷一是直接使用采集的生 物特征作明文進(jìn)行注冊(cè),沒(méi)有考慮到用戶生物特征的安全性,如果服務(wù)器上的生物特征模 板被盜,則永久性地?zé)o法避免用戶身份被盜用事件發(fā)生;二是僅實(shí)現(xiàn)了服務(wù)器對(duì)用戶的單 向認(rèn)證,而沒(méi)有實(shí)現(xiàn)用戶對(duì)服務(wù)器的認(rèn)證,存在服務(wù)器欺騙用戶的安全隱患;三是由于僅實(shí) 現(xiàn)了基于生物特征的認(rèn)證,存在合法用戶無(wú)法通過(guò)認(rèn)證的安全威脅,因?yàn)榛谏锾卣鞯?認(rèn)證方式不是百分之百可靠的,必需提供在生物特征認(rèn)證無(wú)法完成情況下的可替換認(rèn)證方 法;四是該方法使用生物特征明文信息進(jìn)行認(rèn)證,僅適合本地身份認(rèn)證,不適合分布式、遠(yuǎn) 程認(rèn)證,因?yàn)榫W(wǎng)上傳輸生物特征明文存在生物特征被攻擊者截取的安全威脅。
發(fā)明內(nèi)容
為了克服現(xiàn)有方法僅基于用戶生物特征比對(duì)進(jìn)行認(rèn)證而導(dǎo)致的安全性差的不足, 本發(fā)明提供一種基于生物特征和口令的可配置雙向認(rèn)證方法。該方法采用基于口令和生物 特征的混合式、可配置的認(rèn)證方法,實(shí)現(xiàn)用戶和服務(wù)器的分布式雙向認(rèn)證,可以避免僅基于 用戶生物特征進(jìn)行認(rèn)證所帶來(lái)的安全性差的技術(shù)問(wèn)題。本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案一種基于生物特征和口令的可配置雙 向認(rèn)證方法,其特征在于包括下述步驟(a)認(rèn)證請(qǐng)求分組由用戶User發(fā)送給服務(wù)器Server ;分組內(nèi)容包括 其中——UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份;—N1字段表示用戶User選取的一次性隨機(jī)數(shù);
當(dāng)Server收到User發(fā)送的認(rèn)證請(qǐng)求分組后,利用接收到的UID值在數(shù)據(jù)庫(kù)DB 中查詢是否存在用戶身份為UID的記錄;如果不存在,則丟棄該分組,認(rèn)證失?。环駝t,根據(jù) Server所采用的認(rèn)證方式構(gòu)造認(rèn)證響應(yīng)分組發(fā)送給用戶User ;(b)認(rèn)證響應(yīng)分組由服務(wù)器Server發(fā)送給用戶User ;分組內(nèi)容包括 其中——UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份;——SID字段表示服務(wù)器Server的身份;—N1字段表示用戶User選取的一次性隨機(jī)數(shù);—N2字段表示服務(wù)器Server選取的一次性隨機(jī)數(shù);—AFLAG字段表示服務(wù)器Server采用的認(rèn)證方式;當(dāng)字段值為0時(shí),表示基于 口令和生物特征的混合認(rèn)證方式;當(dāng)字段值為1時(shí),表示僅基于口令的認(rèn)證方式;當(dāng)字段值 為2時(shí),表示僅基于生物特征的認(rèn)證方式;當(dāng)字段值為其它值時(shí),表示該字段為保留字段;—ADATA字段表示對(duì)應(yīng)于AFLAG字段的用于認(rèn)證的數(shù)據(jù);當(dāng)字段值為0或2 時(shí),該字段值為服務(wù)器Server從數(shù)據(jù)庫(kù)DB中查找的對(duì)應(yīng)于用戶身份UID的生物注冊(cè)信息 EBMV ;當(dāng)字段值為其它值時(shí),該字段值為空;—MIC1字段表示服務(wù)器Server計(jì)算的對(duì)該字段之前的所有字段計(jì)算的MIC 值;當(dāng) AFLAG 字段值為 0 時(shí),其值等于 H(UID Il SID Il N1 Il N2 Il AFLAG Il ADATA Il Pff Il SK);當(dāng) AFLAG字段值為1時(shí),其值等于H(UID Il SID Il N1 Il N2 Il AFLAG Il Pff);當(dāng)AFLAG字段值為2時(shí), 其值等于H(UID Il SID Il N1 Il N2 Il AFLAG Il ADATA Il SK);當(dāng)AFLAG字段值為其它值時(shí),表示該 字段為保留字段;當(dāng)用戶User收到服務(wù)器Server發(fā)送的認(rèn)證響應(yīng)分組后,判斷N1是否為自己選取 的隨機(jī)數(shù);如果不是,則丟棄該分組,否則,判斷AFLAG字段是否為0或1或2 ;如果不是,丟 棄該分組,否則,(1)當(dāng)AFLAG字段值為0時(shí),現(xiàn)場(chǎng)采集用戶的生物特征樣本VBM,利用VBM解綁定 ADATA字段中的EBMV得到用戶私鑰SK,然后,利用用戶口令PW和用戶私鑰SK重新計(jì)算MIC1 =H(UID Il SID N1 Il N2 Il AFLAG Il ADATA Il Pff Il SK)并與接收到的 MIC1 值進(jìn)行比較;如果不 相等,則丟棄該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組發(fā) 送給服務(wù)器Server ;(2)當(dāng)AFLAG字段值為1時(shí),利用用戶口令PW重新計(jì)算MIC1 = H(UID Il SID Il N1 Il N2 Il AFLAG Il Pff)并與接收到的MIC1值進(jìn)行比較;如果不相等,則丟棄 該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組發(fā)送給服務(wù)器 Server ;(3)當(dāng)AFLAG字段值為2時(shí),現(xiàn)場(chǎng)采集用戶的生物特征樣本VBM,利用VBM解 綁定ADATA字段中的EBMV得到用戶私鑰SK,然后,利用用戶私鑰SK重新計(jì)算MIC1 = H(UID Il SID Il N1 Il N2 Il AFLAG Il ADATA Il SK)并與接收到的MIC1值進(jìn)行比較;如果不相等,則 丟棄該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組發(fā)送給服務(wù)器 Server ;(c)認(rèn)證確認(rèn)分組由用戶User發(fā)送給服務(wù)器Server ;分組格式如下 其中——UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份;——SID字段表示服務(wù)器Server的身份;—N2字段表示服務(wù)器Server選取的一次性隨機(jī)數(shù);——AFLAG字段表示服務(wù)器Server采用的認(rèn)證方式;—MIC2字段表示用戶User計(jì)算的MIC值;當(dāng)AFLAG字段值為 0 時(shí),其值等于 H(UID Il SID Il N2 Il AFLAG Il Pff Il SK);當(dāng) AFLAG 字段值為 1 時(shí), 其值等于H(UID Il SID Il N2 Il AFLAG Il Pff);當(dāng)AFLAG字段值為2時(shí),其值等于 H(UID Il SID Il N2 Il AFLAG Il SK);當(dāng)AFLAG字段值為其它值時(shí),表示該字段為保留字段;當(dāng)服務(wù)器Server收到用戶User發(fā)送的認(rèn)證確認(rèn)分組后,判斷N2是否自己選取的 隨機(jī)數(shù);如果不是,則丟棄該分組,否則,判斷AFLAG字段是否為0或1或2 ;如果不是,丟棄 該分組,否則,判斷AFLAG字段值是否等于自己選取的AFLAG字段值;如果不相等,則丟棄該 分組,否則,(1)當(dāng)AFLAG字段值為0時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶口令PW和用戶私鑰 SK重新計(jì)算MIC2 = H(UID Il SID Il N2 Il AFLAG Il Pff Il SK)并與接收到的MIC2值進(jìn)行比較;如 果不相等,則丟棄該分組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證;(2)當(dāng)AFLAG字段值為1時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶口令PW重新計(jì)算MIC2 =H(UID Il SID Il N2 Il AFLAG Il Pff)并與接收到的MIC2值進(jìn)行比較;如果不相等,則丟棄該分 組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證;(3)當(dāng)AFLAG字段值為2時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶私鑰SK重新計(jì)算MIC2 =H(UID Il SID Il N2 Il AFLAG Il SK)并與接收到的MIC2值進(jìn)行比較;如果不相等,則丟棄該分 組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證。本發(fā)明的有益效果是由于采用基于口令和生物特征的混合式、可配置的認(rèn)證方 法,實(shí)現(xiàn)用戶和服務(wù)器的分布式雙向認(rèn)證,避免了僅基于用戶生物特征進(jìn)行認(rèn)證所帶來(lái)的 安全性差的技術(shù)問(wèn)題。下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作詳細(xì)說(shuō)明。
附圖是本發(fā)明基于生物特征和口令的可配置雙向認(rèn)證方法流程示意圖。
具體實(shí)施例方式以下是實(shí)施例中所用到的名詞和符號(hào)說(shuō)明 參照附圖。本發(fā)明雙向認(rèn)證方法具體步驟如下1)認(rèn)證請(qǐng)求分組。認(rèn)證請(qǐng)求分組由用戶User發(fā)送給服務(wù)器Server。該分組內(nèi)容包括
其中——UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份;—N1字段表示用戶User選取的一次性隨機(jī)數(shù)。當(dāng)Server收到User發(fā)送的認(rèn)證請(qǐng)求分組后,利用接收到的UID值在數(shù)據(jù)庫(kù)DB中 查詢是否存在用戶身份為UID的記錄。如果不存在,則丟棄該分組,認(rèn)證失??;否則,根據(jù) Server所采用的認(rèn)證方式構(gòu)造認(rèn)證響應(yīng)分組發(fā)送給用戶User。2)認(rèn)證響應(yīng)分組。認(rèn)證響應(yīng)分組由服務(wù)器Server發(fā)送給用戶User。該分組內(nèi)容包括 其中—UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份,其值應(yīng)與認(rèn) 證請(qǐng)求分組中的UID值相同;——SID字段表示服務(wù)器Server的身份,—N1字段表示用戶User選取的一次性隨機(jī)數(shù),其值應(yīng)與認(rèn)證請(qǐng)求分組中的N1 值相同;—N2字段表示服務(wù)器Server選取的一次性隨機(jī)數(shù);—AFLAG字段表示服務(wù)器Server采用的認(rèn)證方式。當(dāng)字段值為0時(shí),表示基 于口令和生物特征(如指紋、虹膜等)的混合認(rèn)證方式;當(dāng)字段值為1時(shí),表示僅基于口令 的認(rèn)證方式;當(dāng)字段值為2時(shí),表示僅基于生物特征(如指紋、虹膜等)的認(rèn)證方式;當(dāng)字段 值為其它值時(shí),表示該字段為保留字段;—ADATA字段表示對(duì)應(yīng)于AFLAG字段的用于認(rèn)證的數(shù)據(jù)。當(dāng)字段值為0或2 時(shí),該字段值為服務(wù)器Server從數(shù)據(jù)庫(kù)DB中查找的對(duì)應(yīng)于用戶身份UID的生物注冊(cè)信息 EBMV ;當(dāng)字段值為其它值時(shí),該字段值為空;—MIC1字段表示服務(wù)器Server計(jì)算的對(duì)該字段之前的所有字段計(jì)算的MIC 值。當(dāng) AFLAG 字段值為 0 時(shí),其值等于 H(UID Il SID Il N1 Il N2 Il AFLAG Il ADATA Il Pff Il SK);當(dāng) AFLAG字段值為1時(shí),其值等于H(UID Il SID Il N1 Il N2 Il AFLAG Il Pff);當(dāng)AFLAG字段值為2時(shí), 其值等于H(UID Il SID Il N1 Il N2 Il AFLAG Il ADATA Il SK);當(dāng)AFLAG字段值為其它值時(shí),表示該 字段為保留字段;當(dāng)用戶User收到服務(wù)器Server發(fā)送的認(rèn)證響應(yīng)分組后,判斷N1是否為自己選取 的隨機(jī)數(shù)。如果不是,則丟棄該分組,否則,判斷AFLAG字段是否為0或1或2。如果不是, 丟棄該分組,否則,根據(jù)AFLAG字段值選取以下三種處理之一(a)當(dāng)AFLAG字段值為0時(shí),現(xiàn)場(chǎng)采集用戶的生物特征(如指紋、虹膜等)樣本 VBM,利用VBM解綁定ADATA字段中的EBMV得到用戶私鑰SK,然后,利用用戶口令PW和用 戶私鑰 SK 重新計(jì)算 MIC1 = H(UID Il SID Il N1 Il N2 Il AFLAG Il ADATA Il Pff Il SK)并與接收到的MIC1值進(jìn)行比較。如果不相等,則丟棄該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn) 證并構(gòu)造認(rèn)證確認(rèn)分組發(fā)送給服務(wù)器Server ;(b)當(dāng)AFLAG字段值為1時(shí),利用用戶口令PW重新計(jì)算MIC1 = H(UID Il SID Il N1 Il N2 Il AFLAG Il Pff)并與接收到的MIC1值進(jìn)行比較。如果不相等,則丟棄 該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組發(fā)送給服務(wù)器 Server ;(c)當(dāng)AFLAG字段值為2時(shí),現(xiàn)場(chǎng)采集用戶的生物特征(如指紋、虹膜等)樣本 VBM,利用VBM解綁定ADATA字段中的EBMV得到用戶私鑰SK,然后,利用用戶私鑰SK重新計(jì) 算 MIC1 = H(UID Il SID Il N1 Il N2 Il AFLAG Il ADATA Il SK)并與接收到的 MIC1 值進(jìn)行比較。如果 不相等,則丟棄該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組 發(fā)送給服務(wù)器Server。3)認(rèn)證確認(rèn)分組。認(rèn)證確認(rèn)分組由用戶User發(fā)送給服務(wù)器Server。其分組格式如下。 其中 —UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份,其值應(yīng)與認(rèn) 證響應(yīng)分組中的UID值相同;—SID字段表示服務(wù)器Server的身份,其值應(yīng)與認(rèn)證響應(yīng)分組中的SID值相 同,—N2字段表示服務(wù)器Server選取的一次性隨機(jī)數(shù),其值應(yīng)與認(rèn)證響應(yīng)分組中 的N2值相同;—AFLAG字段表示服務(wù)器Server采用的認(rèn)證方式,其值應(yīng)與認(rèn)證響應(yīng)分組中 的AFLAG值相同;——MIC2字段表示用戶User計(jì)算的MIC值。當(dāng)AFLAG字段值 為 0 時(shí),其值等于 H(UID Il SID Il N2 Il AFLAG Il Pff Il SK);當(dāng) AFLAG 字段值為 1 時(shí), 其值等于H(UID Il SID Il N2 Il AFLAG Il Pff);當(dāng)AFLAG字段值為2時(shí),其值等于 H(UID Il SID Il N2 Il AFLAG Il SK);當(dāng)AFLAG字段值為其它值時(shí),表示該字段為保留字段。當(dāng)服務(wù)器Server收到用戶User發(fā)送的認(rèn)證確認(rèn)分組后,判斷N2是否自己選取的 隨機(jī)數(shù)。如果不是,則丟棄該分組,否則,判斷AFLAG字段是否為0或1或2。如果不是,丟 棄該分組,否則,判斷AFLAG字段值是否等于自己選取的AFLAG字段值。如果不相等,則丟 棄該分組,否則,根據(jù)AFLAG字段值選取以下三種處理之一(d)當(dāng)AFLAG字段值為0時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶口令PW和用戶私鑰 SK重新計(jì)算MIC2 = H(UID Il SID Il N2 Il AFLAG Il Pff Il SK)并與接收到的MIC2值進(jìn)行比較。如 果不相等,則丟棄該分組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證;(e)當(dāng)AFLAG字段值為1時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶口令PW重新計(jì)算MIC2 =H(UID Il SID Il N2 Il AFLAG Il Pff)并與接收到的MIC2值進(jìn)行比較。如果不相等,則丟棄該分 組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證;
(f)當(dāng)AFLAG字段值為2時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶私鑰SK重新計(jì)算MIC2 =H(UID Il SID Il N2 Il AFLAG Il SK)并與接收到的MIC2值進(jìn)行比較。如果不相等,則丟棄該分 組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證.
權(quán)利要求
一種基于生物特征和口令的可配置雙向認(rèn)證方法,其特征在于包括下述步驟(a)認(rèn)證請(qǐng)求分組由用戶User發(fā)送給服務(wù)器Server;分組內(nèi)容包括 UID N1其中——UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份;——N1字段表示用戶User選取的一次性隨機(jī)數(shù);當(dāng)Server收到User發(fā)送的認(rèn)證請(qǐng)求分組后,利用接收到的UID值在數(shù)據(jù)庫(kù)DB中查詢是否存在用戶身份為UID的記錄;如果不存在,則丟棄該分組,認(rèn)證失??;否則,根據(jù)Server所采用的認(rèn)證方式構(gòu)造認(rèn)證響應(yīng)分組發(fā)送給用戶User;(b)認(rèn)證響應(yīng)分組由服務(wù)器Server發(fā)送給用戶User;分組內(nèi)容包括 UID SID N1 N2 AFLAG ADATA MIC1其中——UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份;——SID字段表示服務(wù)器Server的身份;——N1字段表示用戶User選取的一次性隨機(jī)數(shù);——N2字段表示服務(wù)器Server選取的一次性隨機(jī)數(shù);——AFLAG字段表示服務(wù)器Server采用的認(rèn)證方式;當(dāng)字段值為0時(shí),表示基于口令和生物特征的混合認(rèn)證方式;當(dāng)字段值為1時(shí),表示僅基于口令的認(rèn)證方式;當(dāng)字段值為2時(shí),表示僅基于生物特征的認(rèn)證方式;當(dāng)字段值為其它值時(shí),表示該字段為保留字段;——ADATA字段表示對(duì)應(yīng)于AFLAG字段的用于認(rèn)證的數(shù)據(jù);當(dāng)字段值為0或2時(shí),該字段值為服務(wù)器Server從數(shù)據(jù)庫(kù)DB中查找的對(duì)應(yīng)于用戶身份UID的生物注冊(cè)信息EBMV;當(dāng)字段值為其它值時(shí),該字段值為空;——MIC1字段表示服務(wù)器Server計(jì)算的對(duì)該字段之前的所有字段計(jì)算的MIC值;當(dāng)AFLAG字段值為0時(shí),其值等于H(UID‖SID‖N1‖N2‖AFLAG‖ADATA‖PW‖SK);當(dāng)AFLAG字段值為1時(shí),其值等于H(UID‖SID‖N1‖N2‖AFLAG‖PW);當(dāng)AFLAG字段值為2時(shí),其值等于H(UID‖SID‖N1‖N2‖AFLAG‖ADATA‖SK);當(dāng)AFLAG字段值為其它值時(shí),表示該字段為保留字段;當(dāng)用戶User收到服務(wù)器Server發(fā)送的認(rèn)證響應(yīng)分組后,判斷N1是否為自己選取的隨機(jī)數(shù);如果不是,則丟棄該分組,否則,判斷AFLAG字段是否為0或1或2;如果不是,丟棄該分組,否則,(1)當(dāng)AFLAG字段值為0時(shí),現(xiàn)場(chǎng)采集用戶的生物特征樣本VBM,利用VBM解綁定ADATA字段中的EBMV得到用戶私鑰SK,然后,利用用戶口令PW和用戶私鑰SK重新計(jì)算MIC1=H(UID‖SID‖N1‖N2‖AFLAG‖ADATA‖PW‖SK)并與接收到的MIC1值進(jìn)行比較;如果不相等,則丟棄該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組發(fā)送給服務(wù)器Server;(2)當(dāng)AFLAG字段值為1時(shí),利用用戶口令PW重新計(jì)算MIC1=H(UID‖SID‖N1‖N2‖AFLAG‖PW)并與接收到的MIC1值進(jìn)行比較;如果不相等,則丟棄該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組發(fā)送給服務(wù)器Server;(3)當(dāng)AFLAG字段值為2時(shí),現(xiàn)場(chǎng)采集用戶的生物特征樣本VBM,利用VBM解綁定ADATA字段中的EBMV得到用戶私鑰SK,然后,利用用戶私鑰SK重新計(jì)算MIC1=H(UID‖SID‖N1‖N2‖AFLAG‖ADATA‖SK)并與接收到的MIC1值進(jìn)行比較;如果不相等,則丟棄該分組,否則,用戶User完成對(duì)服務(wù)器Server的認(rèn)證并構(gòu)造認(rèn)證確認(rèn)分組發(fā)送給服務(wù)器Server;(c)認(rèn)證確認(rèn)分組由用戶User發(fā)送給服務(wù)器Server;分組格式如下 UID SID N2 AFLAG MIC2其中——UID字段表示用戶User在服務(wù)器Server上注冊(cè)時(shí)選取的身份;——SID字段表示服務(wù)器Server的身份;——N2字段表示服務(wù)器Server選取的一次性隨機(jī)數(shù);——AFLAG字段表示服務(wù)器Server采用的認(rèn)證方式;——MIC2字段表示用戶User計(jì)算的MIC值;當(dāng)AFLAG字段值為0時(shí),其值等于H(UID‖SID‖N2‖AFLAG‖PW‖SK);當(dāng)AFLAG字段值為1時(shí),其值等于H(UID‖SID‖N2‖AFLAG‖PW);當(dāng)AFLAG字段值為2時(shí),其值等于H(UID‖SID‖N2‖AFLAG‖SK);當(dāng)AFLAG字段值為其它值時(shí),表示該字段為保留字段;當(dāng)服務(wù)器Server收到用戶User發(fā)送的認(rèn)證確認(rèn)分組后,判斷N2是否自己選取的隨機(jī)數(shù);如果不是,則丟棄該分組,否則,判斷AFLAG字段是否為0或1或2;如果不是,丟棄該分組,否則,判斷AFLAG字段值是否等于自己選取的AFLAG字段值;如果不相等,則丟棄該分組,否則,(1)當(dāng)AFLAG字段值為0時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶口令PW和用戶私鑰SK重新計(jì)算MIC2=H(UID‖SID‖N2‖AFLAG‖PW‖SK)并與接收到的MIC2值進(jìn)行比較;如果不相等,則丟棄該分組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證;(2)當(dāng)AFLAG字段值為1時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶口令PW重新計(jì)算MIC2=H(UID‖SID‖N2‖AFLAG‖PW)并與接收到的MIC2值進(jìn)行比較;如果不相等,則丟棄該分組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證;(3)當(dāng)AFLAG字段值為2時(shí),利用UID字段所對(duì)應(yīng)用戶的用戶私鑰SK重新計(jì)算MIC2=H(UID‖SID‖N2‖AFLAG‖SK)并與接收到的MIC2值進(jìn)行比較;如果不相等,則丟棄該分組,認(rèn)證失敗,否則,服務(wù)器Server完成對(duì)用戶User的認(rèn)證。
全文摘要
本發(fā)明公開(kāi)了一種基于生物特征和口令的可配置雙向認(rèn)證方法,其目的是解決現(xiàn)有方法僅基于用戶生物特征比對(duì)進(jìn)行認(rèn)證而導(dǎo)致的安全性差的技術(shù)問(wèn)題。技術(shù)方案是采用基于口令和生物特征的混合式、可配置的認(rèn)證方法,實(shí)現(xiàn)用戶和服務(wù)器的分布式雙向認(rèn)證,避免了僅基于用戶生物特征進(jìn)行認(rèn)證所帶來(lái)的安全性差的技術(shù)問(wèn)題。
文檔編號(hào)H04L9/32GK101848213SQ20101015262
公開(kāi)日2010年9月29日 申請(qǐng)日期2010年4月22日 優(yōu)先權(quán)日2010年4月22日
發(fā)明者龐遼軍, 李慧賢 申請(qǐng)人:西北工業(yè)大學(xué);西安電子科技大學(xué)