專利名稱:一種動態(tài)口令認(rèn)證的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全領(lǐng)域,特別涉及一種動態(tài)口令認(rèn)證的方法。
背景技術(shù):
在傳統(tǒng)的靜態(tài)口令身份認(rèn)證技術(shù)中,最普遍的方法是采用"用戶名+靜態(tài)口令"的方式 來進(jìn)行用戶身份的認(rèn)證。對于這種傳統(tǒng)的靜態(tài)口令,如果用戶不去修改它,那么這個口令就 是固定不變的、長期有效的,因此它是一種靜態(tài)的認(rèn)證信息。正因為這種認(rèn)證信息的靜態(tài)性, 導(dǎo)致傳統(tǒng)口令在很多情況下都有著發(fā)生口令泄密的危險。
隨著身份認(rèn)證技術(shù)的不斷發(fā)展,動態(tài)口令技術(shù)出現(xiàn)了。動態(tài)口令(Dynamic Password), 又叫〃一次性口令(OTP: One Time Password) 〃,是由軟件令牌或電子令牌(Token)等手持終 端設(shè)備生成的。它是根據(jù)某種加密算法產(chǎn)生的隨某一個不斷變化的參數(shù)(例如時間,事件等) 不停地、沒有重復(fù)變化的一種口令,是為了解決傳統(tǒng)靜態(tài)的、固定的口令和密碼存在的無法 解決的缺陷,而設(shè)計的一種密碼體制,以保護(hù)用戶的關(guān)鍵數(shù)據(jù)資源。硬件令牌一般帶有一個 液晶顯示屏,用于顯示每次生成的動態(tài)口令。目前,廣泛應(yīng)用的動態(tài)口令大多是六位的一串 數(shù)字。
一般來講每個客戶端的令牌都有一個唯一的密鑰,該密鑰同時存放在服務(wù)器端,每次認(rèn) 證時令牌與服務(wù)器分別根據(jù)同樣的密鑰,同樣的隨機(jī)數(shù)(時間、事件或挑戰(zhàn))和同樣的算法 計算出認(rèn)證當(dāng)時的動態(tài)口令,從而確??诹畹囊恢滦院驼J(rèn)證的成功。因每次認(rèn)證時,隨機(jī)數(shù) 的參數(shù)不同,所以每次產(chǎn)生的動態(tài)口令也不同。每次計算時參數(shù)的隨機(jī)性保證了每次口令不 可預(yù)測,保證系統(tǒng)安全。
動態(tài)口令技術(shù)主要分兩種同步口令技術(shù)和異步口令技術(shù)。同步口令技術(shù)又分為基于時 間的同步口令技術(shù)和基于事件的同步口令技術(shù)兩種。異步口令技術(shù)主要是基于挑戰(zhàn)應(yīng)答的技 術(shù)。其中,基于事件同步的令牌,其原理是通過某一特定的事件次序及相同的種子值作為輸 入,使用一致的算法運算出一致的密碼,其運算機(jī)理決定了其整個工作流程同時鐘無關(guān),不 受時鐘的影響,但由于其算法的一致性,其口令是預(yù)先可知的,通過令牌,可以預(yù)先知道今 后的多個密碼?;谑录C(jī)制的動態(tài)口令具有累計性,即直至下一次產(chǎn)生的動態(tài)口令沒有提
交驗證之前本次口令將一直有效,至本次動態(tài)口令提交驗證之后方失效。而且,產(chǎn)生的密碼 只能使用一次。因此,即使密碼被別人非法獲得,也無法用于成功登錄系統(tǒng)。
現(xiàn)有的基于事件的同步口令技術(shù)的動態(tài)口令令牌在工作時,使用者通過按令牌上的專用 按鈕來使令牌產(chǎn)生一個動態(tài)口令。如果動態(tài)口令令牌為聯(lián)機(jī)方式時,動態(tài)口令的提交是通過 動態(tài)口令令牌自動完成的,例如可以通過有線或無線方式與主機(jī)相連,令牌自動將上述數(shù)據(jù) 傳送到主機(jī),再由主機(jī)傳送到位于遠(yuǎn)程的認(rèn)證服務(wù)器。如果動態(tài)口令令牌為脫機(jī)方式時,動 態(tài)口令的提交是通過用戶來完成的,例如動態(tài)口令令牌與主機(jī)未建立任何形式的通信連接, 用戶將顯示在動態(tài)口令令牌顯示屏上的上述數(shù)據(jù)手動輸入認(rèn)證系統(tǒng)的客戶端(即主機(jī)),然 后再由客戶端將其傳送到位于遠(yuǎn)程的認(rèn)證服務(wù)器。每個動態(tài)口令唯一對應(yīng)一個次數(shù)相關(guān)信息 (一個序號),動態(tài)口令令牌每產(chǎn)生一個動態(tài)口令,其內(nèi)部的計數(shù)器會將其對應(yīng)的次數(shù)相關(guān) 信息加l。當(dāng)認(rèn)證服務(wù)器接收到動態(tài)口令令牌提交的動態(tài)口令后,與其存儲或根據(jù)上一次成 功驗證時的次數(shù)相關(guān)信息產(chǎn)生的若干個連續(xù)的動態(tài)口令(例如50個) 一一比較來進(jìn)行驗證,
如果認(rèn)證服務(wù)器接收到的動態(tài)口令在認(rèn)證服務(wù)器上存儲或產(chǎn)生的口令范圍內(nèi),則認(rèn)證成功, 否則認(rèn)證失敗。
在正常情況下,每產(chǎn)生一個動態(tài)口令都提交到認(rèn)證服務(wù)器上進(jìn)行認(rèn)證,那樣動態(tài)口令令 牌的次數(shù)相關(guān)信息與認(rèn)證服務(wù)器上的次數(shù)相關(guān)信息是完全同步的。而當(dāng)不正常情況發(fā)生后, 例如由于誤操作或動態(tài)口令令牌與主機(jī)、主機(jī)與認(rèn)證服務(wù)器之間的通信故障導(dǎo)致產(chǎn)生了動態(tài) 口令令牌卻沒有及時提交到認(rèn)證服務(wù)器進(jìn)行認(rèn)證,造成了動態(tài)口令令牌與認(rèn)證服務(wù)器上的次 數(shù)相關(guān)信息不一致、不同步。如果在認(rèn)證服務(wù)器根據(jù)上一次成功驗證時的次數(shù)相關(guān)信息產(chǎn)生
的若干個連續(xù)的動態(tài)口令的數(shù)量范圍內(nèi)(例如50個),認(rèn)證服務(wù)器還是可以經(jīng)過尋找來成功 認(rèn)證該動態(tài)口令的。但是如果沒有提交服務(wù)器認(rèn)證的連續(xù)動態(tài)口令的數(shù)量超出認(rèn)證服務(wù)器根 據(jù)上一次成功驗證時的次數(shù)相關(guān)信息產(chǎn)生的若干個連續(xù)的動態(tài)口令的數(shù)量范圍(例如50個), 則會造成認(rèn)證服務(wù)器在此范圍無法找到與動態(tài)口令令牌提交的動態(tài)口令相匹配的動態(tài)口令, 從而無法正確進(jìn)行認(rèn)證。
發(fā)明內(nèi)容
為了使動態(tài)口令令牌的動態(tài)口令次數(shù)相關(guān)信息與認(rèn)證服務(wù)器的動態(tài)口令次數(shù)相關(guān)信息保 持同步,能夠減少進(jìn)行認(rèn)證的時間,保證認(rèn)證的順利進(jìn)行,增強(qiáng)了動態(tài)口令的易用性,本發(fā)
明提供了一種動態(tài)口令認(rèn)證的方法,所述方法包括
步驟A:動態(tài)口令令牌在用戶觸發(fā)后根據(jù)種子信息產(chǎn)生一個動態(tài)口令;
步驟B:所述動態(tài)口令令牌將所述動態(tài)口令及與其對應(yīng)的種子相關(guān)信息一起提交到認(rèn)證 服務(wù)器;
歩驟C:所述認(rèn)證服務(wù)器根據(jù)所述種子相關(guān)信息檢索得到動態(tài)口令,并將檢索得到的動 態(tài)口令與接收到的動態(tài)口令進(jìn)行比較。 所述步驟A具體包括
步驟Al:動態(tài)口令令牌的觸發(fā)裝置接收到用戶發(fā)送的產(chǎn)生動態(tài)口令的指令; 步驟A2:所述動態(tài)口令令牌接收到所述指令后,根據(jù)當(dāng)前存儲的或臨時獲取的種子信息 產(chǎn)生一個動態(tài)口令。
所述步驟B具體包括
步驟B1:所述動態(tài)口令令牌獲取步驟A2中使用的與所述動態(tài)口令對應(yīng)的種子相關(guān)信息; 步驟B2:所述動態(tài)口令令牌將所述動態(tài)口令及所述種子相關(guān)信息一起提交到認(rèn)證服務(wù)器。 所述步驟C具體包括
步驟C1:所述認(rèn)證服務(wù)器接收到所述動態(tài)口令及所述種子相關(guān)信息后,根據(jù)所述種子相 關(guān)信息檢索得到動態(tài)口令;
步驟C2:所述認(rèn)證服務(wù)器將檢索得到的動態(tài)口令與接收到的動態(tài)口令進(jìn)行比較,如果所 述認(rèn)證服務(wù)器檢索得到的動態(tài)口令不止一個,則將其中每個動態(tài)口令依次與接收到的動態(tài)口 令進(jìn)行比較。
所述步驟B具體包括
步驟B1:所述動態(tài)口令令牌獲取步驟A2中使用的與所述動態(tài)口令對應(yīng)的種子相關(guān)信息; 步驟B2:所述動態(tài)口令令牌通過加密算法對所述種子相關(guān)信息加密;
步驟B3:所述動態(tài)口令令牌將所述動態(tài)口令及經(jīng)過加密的所述種子相關(guān)信息一起提交到 認(rèn)證服務(wù)器;
相應(yīng)地,所述步驟C具體包括
步驟C1:所述認(rèn)證服務(wù)器接收到所述動態(tài)口令及所述種子相關(guān)信息后,使用與加密算法 相同的算法解密所述種子相關(guān)信息;
步驟C2:所述認(rèn)證服務(wù)器根據(jù)解密后的所述種子相關(guān)信息檢索得到動態(tài)口令;
步驟C3:所述認(rèn)證服務(wù)器將檢索得到的動態(tài)口令與接收到的動態(tài)口令進(jìn)行比較,如果所 述認(rèn)證服務(wù)器檢索得到的動態(tài)口令不止一個,則將其中每個動態(tài)口令依次與接收到的動態(tài)口 令進(jìn)行比較。
所述種子信息是按預(yù)先設(shè)定的規(guī)律變化的。
所述按預(yù)先設(shè)定的規(guī)律變化包括遞增、遞減和按一定序列變化。
所述種子相關(guān)信息是實際完整的種子信息。
所述種子相關(guān)信息是實際完整的種子信息中的一部分。
所述種子信息為次數(shù)信息。
所述種子信息為時間信息。
所述檢索得到的動態(tài)口令為根據(jù)所述種子相關(guān)信息臨時計算得到的。 所述檢索得到的動態(tài)口令為預(yù)先計算出的。
所述根據(jù)所述種子相關(guān)信息臨時計算具體為所述認(rèn)證服務(wù)器在收到認(rèn)證請求后根據(jù)所 述種子相關(guān)信息生成動態(tài)口令。
所述預(yù)先計算具體為所述認(rèn)證服務(wù)器在認(rèn)證過程開始之前生成動態(tài)口令。 所述預(yù)先計算具體為所述認(rèn)證服務(wù)器在所述認(rèn)證服務(wù)器空閑時生成動態(tài)口令。 所述預(yù)先計算具體為所述認(rèn)證服務(wù)器在上一次認(rèn)證成功后生成動態(tài)口令。 采用本發(fā)明提供的技術(shù)方案帶來的有益效果是
本發(fā)明利用將動態(tài)口令及其種子相關(guān)信息一起提交到認(rèn)證服務(wù)器,認(rèn)證服務(wù)器根據(jù)所述 種子相關(guān)信息將事先存儲在服務(wù)器上或臨時通過計算得到的動態(tài)口令與接收到的動態(tài)口令進(jìn) 行比較,實現(xiàn)動態(tài)口令令牌與認(rèn)證服務(wù)器的同步,降低了服務(wù)器端的運算量,減少了服務(wù)器端 的響應(yīng)時間。
圖1是本發(fā)明實施例1提供的動態(tài)口令認(rèn)證的方法的流程圖2是本發(fā)明實施例2提供的動態(tài)口令認(rèn)證的方法的流程圖3是本發(fā)明實施例3提供的動態(tài)口令認(rèn)證的方法的流程圖。
具體實施例方式
下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步說明,但不作為對本發(fā)明的限定。
實施例1:
參見圖l,本實施例提供了一種動態(tài)口令認(rèn)證的方法,其中種子信息為次數(shù)信息,種子 相關(guān)信息為實際完整的次數(shù)信息。該方法包括
步驟101:動態(tài)口令令牌上的觸發(fā)裝置收到用戶發(fā)出的一個產(chǎn)生動態(tài)口令的指令;
本實施例中動態(tài)口令令牌上的觸發(fā)裝置具體為專用按鈕,當(dāng)按鈕被按下時產(chǎn)生動態(tài)口令;
步驟102:動態(tài)口令令牌根據(jù)當(dāng)前存儲的次數(shù)信息產(chǎn)生一個動態(tài)口令,并且當(dāng)前存儲的 次數(shù)信息隨之遞增;
步驟103:動態(tài)口令令牌通過內(nèi)部計數(shù)器得到當(dāng)前動態(tài)口令的次數(shù)相關(guān)信息,該次數(shù)相 關(guān)信息是通過計數(shù)器的計數(shù)不斷累加得到的并與動態(tài)口令令牌產(chǎn)生的動態(tài)口令一一對應(yīng)的完 整的實際次數(shù)信息
步驟104:動態(tài)口令令牌通過加密算法將上述次數(shù)相關(guān)信息加密; 步驟105:將動態(tài)口令及其加密后的次數(shù)相關(guān)信息一起提交到認(rèn)證服務(wù)器; 如果動態(tài)口令令牌處于聯(lián)機(jī)狀態(tài),包括與主機(jī)的有線連接(如通過USB接口連接)和無 線連接(如通過藍(lán)牙等無線通信技術(shù)連接),此操作可以通過動態(tài)口令令牌來完成,即令牌 自動將上述數(shù)據(jù)傳送到主機(jī),再由主機(jī)轉(zhuǎn)送到位于遠(yuǎn)程的認(rèn)證服務(wù)器;
如果動態(tài)口令令牌處于脫機(jī)狀態(tài),其與主機(jī)之間未建立任何形式的通信連接,則此操作 可以通過動態(tài)口令令牌的用戶來完成,即用戶將顯示在動態(tài)口令令牌顯示屏上的上述數(shù)據(jù)手 動輸入認(rèn)證系統(tǒng)的客戶端(即主機(jī)),然后再由客戶端將其傳送到位于遠(yuǎn)程的認(rèn)證服務(wù)器; 步驟106:認(rèn)證服務(wù)器使用與加密算法相同的算法解密經(jīng)過加密的次數(shù)相關(guān)信息; 步驟107:認(rèn)證服務(wù)器根據(jù)該次數(shù)相關(guān)信息臨時計算出相應(yīng)的動態(tài)口令并將其與動態(tài)口 令令牌提交的動態(tài)口令比較,進(jìn)行動態(tài)口令認(rèn)證;
認(rèn)證服務(wù)器通過次數(shù)相關(guān)信息檢索到相應(yīng)的動態(tài)口令,并將其與客戶端提交的動態(tài)口令 進(jìn)行比較;如果匹配,則認(rèn)證成功;否則,認(rèn)證失敗。用于檢索的動態(tài)口令可以是根據(jù)次數(shù) 相關(guān)信息在服務(wù)器端收到認(rèn)證請求時臨時計算出的,也可以是預(yù)先計算出的,如在認(rèn)證過程 開始之前、在認(rèn)證服務(wù)器空閑時或在上一次認(rèn)證成功后生成的動態(tài)口令。
采用上述實施例,可以直接實現(xiàn)動態(tài)口令令牌與認(rèn)證服務(wù)器的同歩。利用將動態(tài)口令及 其次數(shù)相關(guān)信息一起提交到認(rèn)證服務(wù)器,認(rèn)證服務(wù)器根據(jù)次數(shù)相關(guān)信息將事先存儲在服務(wù)器 上或通過計算得到的動態(tài)口令與得到的動態(tài)口令進(jìn)行比較,實現(xiàn)動態(tài)口令令牌與認(rèn)證服務(wù)器 的同步,降低了服務(wù)器端的運算量,減少了服務(wù)器端的響應(yīng)時間。
實施例2:
參見圖2,本實施例提供了一種動態(tài)口令認(rèn)證的方法,其中種子信息為次數(shù)信息,種子 相關(guān)信息為實際完整的次數(shù)信息的一部分。該方法包括
步驟201:動態(tài)口令令牌上的觸發(fā)裝置收到用戶發(fā)出的一個產(chǎn)生動態(tài)口令的指令; 本實施例中動態(tài)口令令牌上的觸發(fā)裝置具體為語音識別裝置,當(dāng)語音識別裝置接收到用
戶發(fā)出的產(chǎn)生動態(tài)口令的特定聲音時產(chǎn)生動態(tài)口令;
步驟202:動態(tài)口令令牌根據(jù)當(dāng)前存儲的次數(shù)信息產(chǎn)生一個動態(tài)口令,并且當(dāng)前存儲的 次數(shù)信息隨之遞減(注作為種子信息的次數(shù)信息的變化也可以在產(chǎn)生動態(tài)口令之前);
步驟203:動態(tài)口令令牌通過內(nèi)部計數(shù)器得到當(dāng)前動態(tài)口令的次數(shù)相關(guān)信息,該次數(shù)相 關(guān)信息是通過計數(shù)器的計數(shù)不斷遞減得到的并與動態(tài)口令令牌產(chǎn)生的動態(tài)口令一一對應(yīng)的完 整的實際次數(shù)信息;
步驟204:動態(tài)口令令牌從上述次數(shù)相關(guān)信息中提取一部分信息,如只提取實際次數(shù)信 息中的十位和百位;
步驟205:將動態(tài)口令及提取的部分次數(shù)信息一起提交到認(rèn)證服務(wù)器;
如果動態(tài)口令令牌處于聯(lián)機(jī)狀態(tài),包括與主機(jī)的有線連接(如通過USB接口連接)和無 線連接(如通過藍(lán)牙等無線通信技術(shù)連接),此操作可以通過動態(tài)口令令牌來完成,即令牌 自動將上述數(shù)據(jù)傳送到主機(jī),再由主機(jī)轉(zhuǎn)送到位于遠(yuǎn)程的認(rèn)證服務(wù)器;
如果動態(tài)口令令牌處于脫機(jī)狀態(tài),其與主機(jī)之間未建立任何形式的通信連接,則此操作 可以通過動態(tài)口令令牌的用戶來完成,即用戶將顯示在動態(tài)口令令牌顯示屏上的上述數(shù)據(jù)手 動輸入認(rèn)證系統(tǒng)的客戶端(即主機(jī)),然后再由客戶端將其傳送到位于遠(yuǎn)程的認(rèn)證服務(wù)器;
步驟206:認(rèn)證服務(wù)器獲取接收到的部分次數(shù)信息;
步驟207:認(rèn)證服務(wù)器根據(jù)該部分次數(shù)信息將提交的動態(tài)口令與其預(yù)先得到的相應(yīng)動態(tài) 口令(如根據(jù)上一次成功認(rèn)證后的次數(shù)信息生成的動態(tài)口令)比較,進(jìn)行動態(tài)口令認(rèn)證;
認(rèn)證服務(wù)器通過部分次數(shù)信息檢索到相應(yīng)的動態(tài)口令,并將其與客戶端提交的動態(tài)口令 進(jìn)行比較。如果認(rèn)證服務(wù)器檢索得到的動態(tài)口令不止一個,則將其中每個動態(tài)口令依次與其 從客戶端接收到的動態(tài)口令進(jìn)行比較。如果匹配,則認(rèn)證成功;否則,認(rèn)證失敗。用于檢索 的動態(tài)口令可以是根據(jù)次數(shù)相關(guān)信息臨時計算出的,也可以是預(yù)先計算出的。
在現(xiàn)有技術(shù)中,認(rèn)證服務(wù)器一般會將接收到的動態(tài)口令與其存儲或者根據(jù)其存儲的用戶 上一次成功驗證時的次數(shù)信息產(chǎn)生的50個連續(xù)的動態(tài)口令一一比較來進(jìn)行驗證。采用本實施 例,只傳輸實際次數(shù)信息的十位和百位數(shù)據(jù)時,如果動態(tài)口令令牌與認(rèn)證服務(wù)器之間的次數(shù) 信息相差1000次之內(nèi),最多只需要比較10次即可完成驗證(由于十位和百位數(shù)字已經(jīng)確定, 所以只比較個位數(shù)字即可,從0 9只有10個),極大地提高了效率。
當(dāng)然上述實施例中如果對安全性有更高的要求的話,也可以在步驟205中將提取的部分 次數(shù)信息經(jīng)過加密后再提交到認(rèn)證服務(wù)器,相應(yīng)地,步驟206中認(rèn)證服務(wù)器獲取接收到的部 分次數(shù)信息也要經(jīng)過解密后才能用來對動態(tài)口令進(jìn)行認(rèn)證。
本實施例利用將動態(tài)口令及其部分次數(shù)信息一起提交到認(rèn)證服務(wù)器,認(rèn)證服務(wù)器根據(jù)部 分次數(shù)信息將事先存儲在服務(wù)器上或通過計算得到的動態(tài)口令與得到的動態(tài)口令進(jìn)行比較, 實現(xiàn)動態(tài)口令令牌與認(rèn)證服務(wù)器的同步,并使動態(tài)口令令牌的動態(tài)口令的次數(shù)相關(guān)信息與認(rèn) 證服務(wù)器的動態(tài)口令的次數(shù)相關(guān)信息保持同步,由于不是完整的次數(shù)信息,因此無需加密也 能保證很高的安全性。由于需要向服務(wù)器端提供的數(shù)據(jù)量與實施例l相比更小,因此這種方 式更適合于脫機(jī)情況。
實施例3:
參見圖3,本實施例提供了一種動態(tài)口令認(rèn)證的方法,其中種子信息為時間信息,種子
相關(guān)信息為實際完整的時間信息或部分時間信息。該方法包括
步驟301:動態(tài)口令令牌上的觸發(fā)裝置收到用戶發(fā)出的一個產(chǎn)生動態(tài)口令的指令; 本實施例中動態(tài)口令令牌上的觸發(fā)裝置具體為指紋識別裝置,當(dāng)指紋識別裝置接收到掃
描的指紋信息時產(chǎn)生動態(tài)口令;
步驟302:動態(tài)口令令牌獲取當(dāng)前時間并根據(jù)該時間產(chǎn)生一個動態(tài)口令;
步驟303:動態(tài)口令令牌將上述時間信息的全部或部分與動態(tài)口令令牌產(chǎn)生的動態(tài)口令
組成一個數(shù)據(jù)包;
本實施例中全部時間信息為yyyy/mm/dd/hh/ram/ss,部分時間信息為yyyy/ran/dd,其中 yyyy、誦、dd、 hh、 mm禾Q ss分別對應(yīng)于年、月、日、時、分和秒); 步驟304:動態(tài)口令令牌通過加密算法將上述數(shù)據(jù)包加密; 步驟305:將加密后的數(shù)據(jù)包提交到認(rèn)證服務(wù)器;
如果動態(tài)口令令牌處于聯(lián)機(jī)狀態(tài),包括與主機(jī)的有線連接(如通過USB接口連接)和無 線連接(如通過藍(lán)牙等無線通信技術(shù)連接),此操作可以通過動態(tài)口令令牌來完成,即令牌 自動將上述數(shù)據(jù)包傳送到主機(jī),再由主機(jī)轉(zhuǎn)送到位于遠(yuǎn)程的認(rèn)證服務(wù)器;
如果動態(tài)口令令牌處于脫機(jī)狀態(tài),其與主機(jī)之間未建立任何形式的通信連接,則此操作 可以通過動態(tài)口令令牌的用戶來完成,即用戶將顯示在動態(tài)口令令牌顯示屏上的上述數(shù)據(jù)包 (形式上可以是一個字符串)手動輸入認(rèn)證系統(tǒng)的客戶端(即主機(jī)),然后再由客戶端將其 傳送到位于遠(yuǎn)程的認(rèn)證服務(wù)器;
步驟306:認(rèn)證服務(wù)器使用與加密算法相同的算法解密經(jīng)過加密的上述數(shù)據(jù)包;
步驟307:認(rèn)證服務(wù)器獲取時間相關(guān)信息(部分或完整的時間信息),根據(jù)該信息檢索 出動態(tài)口令,并將其與動態(tài)口令令牌提交的動態(tài)口令比較,進(jìn)行動態(tài)口令認(rèn)證;如果認(rèn)證服
務(wù)器檢索得到的動態(tài)口令不止一個,則將其中每個動態(tài)口令依次與其從客戶端(動態(tài)口令令 牌)接收到的動態(tài)口令進(jìn)行比較;
如果匹配,則認(rèn)證成功;否則,認(rèn)證失敗。
用于檢索的動態(tài)口令可以是根據(jù)時間相關(guān)信息臨時計算出的,也可以是預(yù)先計算出的。 在本實施例中,如果只向認(rèn)證服務(wù)器傳送作為種子相關(guān)信息的部分時間信息,則可以不 必對其和動態(tài)口令令牌生成的動態(tài)口令組成的數(shù)據(jù)包進(jìn)行加密,即可將該數(shù)據(jù)包傳送給認(rèn)證 服務(wù)器。由于傳送的不是完整的時間信息,在安全性未受到較大影響的情況下,更方便用戶 在脫機(jī)情況下向客戶端輸入動態(tài)口令和時間相關(guān)信息。
在本發(fā)明的上述實施例中,種子信息(如次數(shù)信息或時間信息)是可以按照一定的規(guī)律 變化的,這種變化可以是遞增、遞減,也可以是按照一定的序列(如時間序列或奇偶序列) 變化。
在本發(fā)明中,種子信息并不限于動態(tài)口令的次數(shù)信息和時間信息,其他可以唯一標(biāo)識動 態(tài)口令的信息都可作為種子信息。
相應(yīng)的,觸發(fā)裝置也并不限于按鈕、語音、指紋等形式,其他能夠收到用戶發(fā)送的產(chǎn)生 動態(tài)口令的指令的裝置都可以采用。
釆用本發(fā)明的上述實施例,可以直接實現(xiàn)動態(tài)口令令牌與認(rèn)證服務(wù)器的同步。利用將動 態(tài)口令及其次數(shù)相關(guān)信息或時間相關(guān)信息一起提交到認(rèn)證服務(wù)器,認(rèn)證服務(wù)器根據(jù)次數(shù)相關(guān) 信息或時間相關(guān)信息將事先存儲在服務(wù)器上或臨時通過計算得到的動態(tài)口令與得到的動態(tài)口 令進(jìn)行比較,實現(xiàn)動態(tài)口令令牌與認(rèn)證服務(wù)器的同步,降低了服務(wù)器端的運算量,減少了服務(wù) 器端的響應(yīng)時間。
以上對本發(fā)明所提供的一種動態(tài)口令認(rèn)證的方法及設(shè)備進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了 具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上實施例的說明只是用于幫助理解本發(fā) 明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實 施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1.一種動態(tài)口令認(rèn)證的方法,其特征在于,所述方法包括步驟A動態(tài)口令令牌在用戶觸發(fā)后根據(jù)種子信息產(chǎn)生一個動態(tài)口令;步驟B所述動態(tài)口令令牌將所述動態(tài)口令及與其對應(yīng)的種子相關(guān)信息一起提交到認(rèn)證服務(wù)器;步驟C所述認(rèn)證服務(wù)器根據(jù)所述種子相關(guān)信息檢索得到動態(tài)口令,并將檢索得到的動態(tài)口令與接收到的動態(tài)口令進(jìn)行比較。
2. 如權(quán)利要求l所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述步驟A具體包括 步驟A1:動態(tài)口令令牌的觸發(fā)裝置接收到用戶發(fā)送的產(chǎn)生動態(tài)口令的指令;步驟A2:所述動態(tài)口令令牌接收到所述指令后,根據(jù)當(dāng)前存儲的或臨時獲取的種子信息 產(chǎn)生一個動態(tài)口令。
3. 如權(quán)利要求2所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述步驟B具體包括 步驟B1:所述動態(tài)口令令牌獲取步驟A2中使用的與所述動態(tài)口令對應(yīng)的種子相關(guān)信息; 步驟B2:所述動態(tài)口令令牌將所述動態(tài)口令及所述種子相關(guān)信息一起提交到認(rèn)證服務(wù)器。
4. 如權(quán)利要求3所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述步驟C具體包括 步驟C1:所述認(rèn)證服務(wù)器接收到所述動態(tài)口令及所述種子相關(guān)信息后,根據(jù)所述種子相關(guān)信息檢索得到動態(tài)口令;步驟C2:所述認(rèn)證服務(wù)器將檢索得到的動態(tài)口令與接收到的動態(tài)口令進(jìn)行比較,如果所 述認(rèn)證服務(wù)器檢索得到的動態(tài)口令不止一個,則將其中每個動態(tài)口令依次與接收到的動態(tài)口 令進(jìn)行比較。
5. 如權(quán)利要求2所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述步驟B具體包括 步驟B1:所述動態(tài)口令令牌獲取步驟A2中使用的與所述動態(tài)口令對應(yīng)的種子相關(guān)信息; 步驟B2:所述動態(tài)口令令牌通過加密算法對所述種子相關(guān)信息加密;步驟B3:所述動態(tài)口令令牌將所述動態(tài)口令及經(jīng)過加密的所述種子相關(guān)信息一起提交到 認(rèn)證服務(wù)器;相應(yīng)地,所述歩驟C具體包括步驟C1:所述認(rèn)證服務(wù)器接收到所述動態(tài)口令及所述種子相關(guān)信息后,使用與加密算法相同的算法解密所述種子相關(guān)信息;步驟C2:所述認(rèn)證服務(wù)器根據(jù)解密后的所述種子相關(guān)信息檢索得到動態(tài)口令;步驟C3:所述認(rèn)證服務(wù)器將檢索得到的動態(tài)口令與接收到的動態(tài)口令進(jìn)行比較,如果所述認(rèn)證服務(wù)器檢索得到的動態(tài)口令不止一個,則將其中每個動態(tài)口令依次與接收到的動態(tài)口令進(jìn)行比較。
6. 如權(quán)利要求1一5中任一權(quán)利要求所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子信息是按預(yù)先設(shè)定的規(guī)律變化的。
7. 如權(quán)利要求6所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述按預(yù)先設(shè)定的規(guī)律變化 包括遞增、遞減和按一定序列變化。
8. 如權(quán)利要求l-5中任一權(quán)利要求所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子 相關(guān)信息是實際完整的種子信息。
9. 如權(quán)利要求6所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子相關(guān)信息是實際完 整的種子信息。
10. 如權(quán)利要求7所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子相關(guān)信息是實際 完整的種子信息。
11. 如權(quán)利要求l-5中任一權(quán)利要求所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種 子相關(guān)信息是實際完整的種子信息中的一部分。
12. 如權(quán)利要求6所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子相關(guān)信息是實際 完整的種子信息中的一部分。
13. 如權(quán)利要求7所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子相關(guān)信息是實際 完整的種子信息中的一部分。
14. 如權(quán)利要求l-5中任一權(quán)利要求所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子信息為次數(shù)信息。
15. 如權(quán)利要求6所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子信息為次數(shù)信息。
16. 如權(quán)利要求7所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子信息為次數(shù)信息。
17. 如權(quán)利要求l-5中任一權(quán)利要求所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種 子信息為時間信息。
18. 如權(quán)利要求6所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子信息為時間信息。
19. 如權(quán)利要求7所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述種子信息為時間信息。
20. 如權(quán)利要求1-5中任一權(quán)利要求所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述檢 索得到的動態(tài)口令為根據(jù)所述種子相關(guān)信息臨時計算得到的。
21. 如權(quán)利要求6所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述檢索得到的動態(tài)口令 為根據(jù)所述種子相關(guān)信息臨時計算得到的。
22. 如權(quán)利要求7所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述檢索得到的動態(tài)口令 為根據(jù)所述種子相關(guān)信息臨時計算得到的。
23. 如權(quán)利要求l-5中任一權(quán)利要求所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述檢 索得到的動態(tài)口令為預(yù)先計算出的。
24. 如權(quán)利要求6所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述檢索得到的動態(tài)口令 為預(yù)先計算出的。
25. 如權(quán)利要求7所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述檢索得到的動態(tài)口令 為預(yù)先計算出的。
26. 如權(quán)利要求20所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述根據(jù)所述種子相關(guān)信 息臨時計算具體為所述認(rèn)證服務(wù)器在收到認(rèn)證請求后根據(jù)所述種子相關(guān)信息生成動態(tài)口令。
27. 如權(quán)利要求23所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述預(yù)先計算具體為所 述認(rèn)證服務(wù)器在認(rèn)證過程開始之前生成動態(tài)口令。
28. 如權(quán)利要求23所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述預(yù)先計算具體為所 述認(rèn)證服務(wù)器在所述認(rèn)證服務(wù)器空閑時生成動態(tài)口令。
29. 如權(quán)利要求23所述的動態(tài)口令認(rèn)證的方法,其特征在于,所述預(yù)先計算具體為所 述認(rèn)證服務(wù)器在上一次認(rèn)證成功后生成動態(tài)口令。
全文摘要
本發(fā)明提供了一種動態(tài)口令認(rèn)證的方法,屬于信息安全領(lǐng)域。所述方法包括動態(tài)口令令牌在用戶觸發(fā)后根據(jù)種子信息產(chǎn)生一個動態(tài)口令;動態(tài)口令令牌將動態(tài)口令及與其對應(yīng)的種子相關(guān)信息一起提交到認(rèn)證服務(wù)器;認(rèn)證服務(wù)器根據(jù)種子相關(guān)信息檢索得到動態(tài)口令,并將檢索得到的動態(tài)口令與接收到的動態(tài)口令進(jìn)行比較。本發(fā)明將動態(tài)口令及其種子相關(guān)信息一起提交到認(rèn)證服務(wù)器,認(rèn)證服務(wù)器根據(jù)所述種子相關(guān)信息將通過檢索得到的動態(tài)口令與接收到的動態(tài)口令進(jìn)行比較,實現(xiàn)動態(tài)口令令牌與認(rèn)證服務(wù)器的同步,降低了服務(wù)器端的計算量,減少了服務(wù)器端的響應(yīng)時間。
文檔編號H04L9/28GK101197667SQ20071030386
公開日2008年6月11日 申請日期2007年12月26日 優(yōu)先權(quán)日2007年12月26日
發(fā)明者于華章, 舟 陸 申請人:北京飛天誠信科技有限公司