動(dòng)態(tài)口令產(chǎn)生裝置和方法、預(yù)處理裝置、及業(yè)務(wù)處理方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種動(dòng)態(tài)口令產(chǎn)生裝置和方法、預(yù)處理裝置、及業(yè)務(wù)處理方法和系統(tǒng),尤其涉及一種根據(jù)認(rèn)證信息和加密(與解密)業(yè)務(wù)信息來產(chǎn)生動(dòng)態(tài)口令的動(dòng)態(tài)口令產(chǎn)生裝置和方法、預(yù)處理裝置、及利用這種動(dòng)態(tài)口令的業(yè)務(wù)處理方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著信息技術(shù)的發(fā)展,現(xiàn)已制造出各種安全設(shè)備,例如諸如口令令牌之類的口令產(chǎn)生裝置,用于保障業(yè)務(wù)處理的安全。一些類型的安全設(shè)備常常使用動(dòng)態(tài)口令來增加用戶認(rèn)證的安全性。動(dòng)態(tài)口令,也稱為一次性口令(OTP ),用戶通過某種方式(例如,基于令牌的方式)可獲得動(dòng)態(tài)變化的口令,進(jìn)而在業(yè)務(wù)終端(例如,客戶端)填入該口令,提供給服務(wù)器以在服務(wù)器側(cè)對(duì)該口令進(jìn)行驗(yàn)證,如驗(yàn)證不正確則終止業(yè)務(wù)操作,以此來增加用戶認(rèn)證的安全性。
[0003]基于令牌的動(dòng)態(tài)口令是指由用戶持有的令牌動(dòng)態(tài)產(chǎn)生的口令,用戶在客戶端填入該口令并提交至服務(wù)器側(cè)以進(jìn)行驗(yàn)證。目前,有兩種形式的令牌:基于時(shí)間因子產(chǎn)生動(dòng)態(tài)口令的令牌和基于事件因子產(chǎn)生動(dòng)態(tài)口令的令牌。基于時(shí)間因子的動(dòng)態(tài)口令是將當(dāng)前時(shí)間作為運(yùn)算因子,口令隨時(shí)間而變化,經(jīng)常設(shè)為60秒變化一次?;谑录蜃拥膭?dòng)態(tài)口令是以用戶點(diǎn)擊按鍵的次數(shù)作為運(yùn)算因子,用戶每按一次按鍵,令牌就計(jì)算一個(gè)新的口令。
[0004]傳統(tǒng)的動(dòng)態(tài)口令通常應(yīng)用于登錄環(huán)節(jié),如圖1所示。
[0005]圖1是示出了一種用戶利用傳統(tǒng)令牌在業(yè)務(wù)終端(例如,PC機(jī))上進(jìn)行業(yè)務(wù)請(qǐng)求等操作的示意圖。在圖1中,業(yè)務(wù)終端102通過互聯(lián)網(wǎng)或者通信線路與認(rèn)證服務(wù)器105相連。當(dāng)持有動(dòng)態(tài)口令令牌101的用戶103通過業(yè)務(wù)終端102登錄業(yè)務(wù)處理系統(tǒng)時(shí),用戶103在業(yè)務(wù)終端102顯示的登錄頁面下輸入帳號(hào)、靜態(tài)密碼(B卩,靜態(tài)口令)和動(dòng)態(tài)口令令牌101所產(chǎn)生的動(dòng)態(tài)口令,然后業(yè)務(wù)終端102將輸入的帳號(hào)、靜態(tài)密碼和動(dòng)態(tài)口令發(fā)送給認(rèn)證服務(wù)器105,認(rèn)證服務(wù)器105用自身存儲(chǔ)的帳號(hào)、靜態(tài)密碼和以與令牌101相同的密碼計(jì)算機(jī)制所計(jì)算得到的動(dòng)態(tài)口令對(duì)業(yè)務(wù)終端102發(fā)送來的帳號(hào)、靜態(tài)密碼和動(dòng)態(tài)口令進(jìn)行驗(yàn)證,如果驗(yàn)證結(jié)果正確,即,如果二者的帳號(hào)、靜態(tài)密碼和動(dòng)態(tài)口令都分別相同,則完成用戶所請(qǐng)求的業(yè)務(wù),否則終止當(dāng)前操作。
[0006]然而,在登錄環(huán)節(jié)使用動(dòng)態(tài)口令有一個(gè)較大的安全問題,S卩,不能抵御中間人攻擊。例如,攻擊者可以誘騙用戶在一個(gè)釣魚網(wǎng)站上通過登錄輸入動(dòng)態(tài)口令,當(dāng)獲得用戶輸入的動(dòng)態(tài)口令后,攻擊者就可冒充用戶登錄真正的網(wǎng)站,并獲得用戶的全部權(quán)限。如果一個(gè)系統(tǒng)設(shè)計(jì)為登錄后即可完成所請(qǐng)求的業(yè)務(wù),則用戶將遭受巨大損失。例如,如果某網(wǎng)上交易系統(tǒng)設(shè)計(jì)為登錄后即可轉(zhuǎn)賬,則用戶的資金將面臨巨大損失的風(fēng)險(xiǎn)。
[0007]為避免這種中間人攻擊,在實(shí)際中已經(jīng)開始改進(jìn)動(dòng)態(tài)口令的使用方式,例如,在登錄后的業(yè)務(wù)處理環(huán)節(jié)使用“業(yè)務(wù)動(dòng)態(tài)口令”,即,讓動(dòng)態(tài)口令的產(chǎn)生與業(yè)務(wù)信息相關(guān),產(chǎn)生的口令也只能用于當(dāng)前的業(yè)務(wù)處理確認(rèn),而不能用于其他業(yè)務(wù)。尤其是在例如交易系統(tǒng)中,將“交易動(dòng)態(tài)口令”用于登錄后的交易環(huán)節(jié),即,讓動(dòng)態(tài)口令的產(chǎn)生與交易內(nèi)容相關(guān),產(chǎn)生的口令也只能用于當(dāng)前的交易確認(rèn),不能用于其他交易。這樣,即使攻擊者獲取到“業(yè)務(wù)動(dòng)態(tài)口令”,也不能冒充用戶去完成其他任何業(yè)務(wù)請(qǐng)求操作,從而大大增強(qiáng)了安全性。
[0008]相應(yīng)于這種“業(yè)務(wù)動(dòng)態(tài)口令”,產(chǎn)生動(dòng)態(tài)口令的令牌就升級(jí)為“挑戰(zhàn)-響應(yīng)令牌”。
[0009]圖2是示出了一種已有的利用挑戰(zhàn)-響應(yīng)令牌進(jìn)行業(yè)務(wù)操作的業(yè)務(wù)處理系統(tǒng)的示意性方框圖。
[0010]如圖2所示,這種已有的業(yè)務(wù)處理系統(tǒng)包括挑戰(zhàn)-響應(yīng)令牌201、業(yè)務(wù)終端202、業(yè)務(wù)服務(wù)器204和安全認(rèn)證服務(wù)器205。在登錄后,針對(duì)一項(xiàng)業(yè)務(wù)請(qǐng)求,業(yè)務(wù)服務(wù)器204會(huì)從業(yè)務(wù)信息中提取一部分?jǐn)?shù)字作為挑戰(zhàn)值,通過業(yè)務(wù)終端202展示給用戶,用戶將該挑戰(zhàn)值手動(dòng)輸入到挑戰(zhàn)-響應(yīng)令牌201中,點(diǎn)擊“確定”鍵后,該令牌201會(huì)根據(jù)該挑戰(zhàn)值運(yùn)算出一個(gè)動(dòng)態(tài)口令(這種情況下,也稱為“響應(yīng)值”),然后用戶將該動(dòng)態(tài)口令經(jīng)由業(yè)務(wù)終端202和業(yè)務(wù)服務(wù)器204提交給安全認(rèn)證服務(wù)器205進(jìn)行驗(yàn)證。例如,該業(yè)務(wù)處理系統(tǒng)是交易系統(tǒng),針對(duì)每筆交易,業(yè)務(wù)服務(wù)器204會(huì)從交易數(shù)據(jù)(例如,轉(zhuǎn)出賬戶及金額)中提取一部分?jǐn)?shù)字作為挑戰(zhàn)值,通過業(yè)務(wù)終端202展示給用戶,用戶將該挑戰(zhàn)值手動(dòng)輸入到挑戰(zhàn)-響應(yīng)令牌201中,點(diǎn)擊“確定”鍵后,該令牌201會(huì)根據(jù)該挑戰(zhàn)值運(yùn)算出一個(gè)動(dòng)態(tài)口令(這種情況下,也稱為“響應(yīng)值”),然后用戶將該動(dòng)態(tài)口令經(jīng)由業(yè)務(wù)終端202和業(yè)務(wù)服務(wù)器204提交給安全認(rèn)證服務(wù)器205進(jìn)行驗(yàn)證。由于動(dòng)態(tài)口令的產(chǎn)生依賴于業(yè)務(wù)信息的一部分?jǐn)?shù)字,所以,避免了釣魚網(wǎng)站在登錄環(huán)節(jié)中獲取動(dòng)態(tài)口令進(jìn)而造成用戶巨大損失的可能性。
[0011]圖3是示出了一種現(xiàn)有的挑戰(zhàn)-響應(yīng)令牌作為銀行電子密碼器的正面視圖。圖3中,這種電子密碼器301包括數(shù)字輸入鍵部311、開關(guān)機(jī)與確認(rèn)刪除鍵部312和顯示部313,其中數(shù)字輸入鍵部311用于用戶輸入挑戰(zhàn)值的數(shù)字,開關(guān)機(jī)與確認(rèn)刪除鍵部312用于用戶對(duì)該密碼器301的使用操作和對(duì)挑戰(zhàn)值的確認(rèn)和刪除操作,而顯示部313用于顯示用戶輸入的挑戰(zhàn)值和其他信息(例如,確認(rèn)信息等)。
[0012]圖4是示出了圖2所示的已有的業(yè)務(wù)處理系統(tǒng)進(jìn)行業(yè)務(wù)處理的流程圖。如圖4所示,這種已有的利用挑戰(zhàn)-相應(yīng)令牌進(jìn)行業(yè)務(wù)處理的具體流程如下:
[0013]在步驟S411,用戶通過業(yè)務(wù)終端202向業(yè)務(wù)服務(wù)器204發(fā)起業(yè)務(wù)請(qǐng)求;
[0014]在步驟S412,業(yè)務(wù)服務(wù)器204根據(jù)業(yè)務(wù)請(qǐng)求產(chǎn)生業(yè)務(wù)信息(例如,交易信息),并摘出部分?jǐn)?shù)字做挑戰(zhàn)值;
[0015]在步驟S413,業(yè)務(wù)服務(wù)器204將關(guān)于業(yè)務(wù)(例如,當(dāng)前交易)的該挑戰(zhàn)值反饋給業(yè)務(wù)終端202 ;
[0016]在步驟S414,業(yè)務(wù)終端202將該挑戰(zhàn)值展示給用戶;
[0017]在步驟S415,用戶手動(dòng)將該挑戰(zhàn)值輸入給挑戰(zhàn)-響應(yīng)令牌201 ;
[0018]在步驟S416,挑戰(zhàn)-響應(yīng)令牌201根據(jù)該挑戰(zhàn)值、時(shí)間因子(或者事件因子)和種子密鑰運(yùn)算出動(dòng)態(tài)口令,并將該動(dòng)態(tài)口令展示給用戶;
[0019]在步驟S417,用戶將該動(dòng)態(tài)口令手動(dòng)輸入到業(yè)務(wù)終端202 ;
[0020]在步驟S418,業(yè)務(wù)終端202將該動(dòng)態(tài)口令提交給業(yè)務(wù)服務(wù)器204 ;
[0021]在步驟S419,業(yè)務(wù)服務(wù)器204將該挑戰(zhàn)值和該動(dòng)態(tài)口令發(fā)送給安全認(rèn)證服務(wù)器205 ;
[0022]安全認(rèn)證服務(wù)器205在步驟S420驗(yàn)證該動(dòng)態(tài)口令是否正確,并且在步驟S421將驗(yàn)證結(jié)果發(fā)送給業(yè)務(wù)服務(wù)器204 ;
[0023]如果在步驟S420驗(yàn)證的結(jié)果是正確的,即,安全認(rèn)證服務(wù)器205根據(jù)該挑戰(zhàn)值、時(shí)間因子(或者事件因子)和種子密鑰運(yùn)算出的驗(yàn)證動(dòng)態(tài)口令與業(yè)務(wù)服務(wù)器204發(fā)送來的動(dòng)態(tài)口令相同,則在步驟S422完成用戶所請(qǐng)求的業(yè)務(wù)(例如,交易),否則終止當(dāng)前操作。
[0024]實(shí)際中,綜合考慮到設(shè)備成本、用戶操作復(fù)雜度等因素,例如,挑戰(zhàn)值需要用戶在令牌上輸入,如果可輸入的長度過長,則用戶輸入繁瑣且易錯(cuò),而如果可輸入的長度過短,則安全性不高,所以,通常取一部分業(yè)務(wù)(例如,交易)內(nèi)容的8?10位數(shù)字作為挑戰(zhàn)值。然而,采用這樣的折中方案,依然存在一些問題,例如:用戶需要做兩次輸入操作,即,在令牌上輸入挑戰(zhàn)值并進(jìn)行確認(rèn),然后在業(yè)務(wù)終端輸入動(dòng)態(tài)口令,這使得用戶使用不方便并且仍相對(duì)繁瑣且易于出錯(cuò);用戶不能輸入漢字等字符,例如交易商家的名稱,所以不能用于需要漢字表達(dá)的業(yè)務(wù);由于只輸入部分業(yè)務(wù)內(nèi)容,所以無法做到業(yè)務(wù)信息和業(yè)務(wù)動(dòng)態(tài)口令之間的強(qiáng)關(guān)聯(lián),依然存在被釣魚的可能(例如,攻擊者先進(jìn)入用戶的賬戶做轉(zhuǎn)賬請(qǐng)求,在需要輸入動(dòng)態(tài)口令時(shí),將獲取的挑戰(zhàn)值編輯到一個(gè)欺騙短信中發(fā)送給用戶。若挑戰(zhàn)值是完整業(yè)務(wù)信息,用戶會(huì)從閱讀該業(yè)務(wù)信息的過程中發(fā)現(xiàn)這不是用戶自己進(jìn)行的業(yè)務(wù),從而放棄讓令牌計(jì)算口令,這樣攻擊者就無法獲知用戶的動(dòng)態(tài)口令。然而,由于現(xiàn)有技術(shù)的挑戰(zhàn)值是8?10位數(shù)字的部分業(yè)務(wù)內(nèi)容而非完整業(yè)務(wù)信息,所以用戶一般會(huì)認(rèn)為業(yè)務(wù)機(jī)構(gòu)在任何環(huán)節(jié)都讓用戶來輸入這8?10位數(shù)字而忽略業(yè)務(wù)內(nèi)容是什么或無從得知完整的業(yè)務(wù)內(nèi)容,從而陷入攻擊者設(shè)計(jì)的陷阱中。由此,用戶被誘導(dǎo)打開短信中的鏈接欺騙網(wǎng)頁并在令牌上輸入該挑戰(zhàn)值,然后用戶將令牌算出的動(dòng)態(tài)口令填到該欺騙網(wǎng)頁上,攻擊者由此獲得該動(dòng)態(tài)口令而將該口令填到真正的轉(zhuǎn)賬頁面上,從而實(shí)現(xiàn)了有效攻擊。而且,令牌內(nèi)要保存時(shí)間因子以使得所計(jì)算的動(dòng)態(tài)口令具有時(shí)效性,即,當(dāng)前時(shí)段根據(jù)某挑戰(zhàn)值算出的動(dòng)態(tài)口令,與下一時(shí)段根據(jù)相同挑戰(zhàn)值算出的動(dòng)態(tài)口令不同,故令牌上有時(shí)間晶振,如果更換電源,將導(dǎo)致時(shí)間與認(rèn)證服務(wù)器失步,從而無法正確計(jì)算動(dòng)態(tài)口令,所以令牌不能斷電,這樣令牌就不能更換電池,導(dǎo)致令牌的壽命非常有限(一般為3年)。
[0025]因此,需要一種改進(jìn)的動(dòng)態(tài)口令產(chǎn)生裝置和方法、及業(yè)務(wù)處理方法和系統(tǒng)。
【發(fā)明內(nèi)容】
[0026]本發(fā)明能夠克服現(xiàn)有技術(shù)存在的上述一個(gè)或者多個(gè)缺點(diǎn)。
[0027]根據(jù)本發(fā)明的一個(gè)方面,一種動(dòng)態(tài)口令產(chǎn)生裝置可以包括:第一安全單元,所述第一安全單元用于驗(yàn)證認(rèn)證信息和把密文解密成業(yè)務(wù)信息;用戶交互單元,所述用戶交互單元用于獲取用戶的交互指令;第二安全單元,所述第二安全單元用于根據(jù)所述業(yè)務(wù)信息運(yùn)算出所述動(dòng)態(tài)口令;輸出單元,所述輸出單元用于輸出所述業(yè)務(wù)信息和所述動(dòng)態(tài)口令;和電源單元,所述電源單元用于提供所述裝置所需的電源。
[0028]另外,可選的是,上述動(dòng)態(tài)口令產(chǎn)生裝置還可以包括解調(diào)單元,所述解調(diào)單元用于把調(diào)制后的媒體文件解調(diào)成報(bào)文,所述報(bào)文包括所述密文和所述認(rèn)證信息。
[0029]此外,可選的是,在上述動(dòng)態(tài)口令產(chǎn)生裝置中,所述媒體文件可以是音頻文件,并且所述輸出單元可以是顯示單元。
[0030]還有,可選的是,在上述動(dòng)態(tài)口令產(chǎn)生裝置中,所述電源單元可以是可更換的電源單元。
[0031]根據(jù)本發(fā)明的另一個(gè)方面,一種動(dòng)態(tài)口令產(chǎn)生方法可以包括:驗(yàn)證