專(zhuān)利名稱(chēng):基于公開(kāi)密鑰體系-用戶(hù)身份識(shí)別卡獲取動(dòng)態(tài)口令的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)安全領(lǐng)域,特別是涉及一種基于公開(kāi)密鑰體系_用戶(hù)身份識(shí)別卡(Public Key Infrastructure - Subscriber Identity Model, PKI — SIM )獲取動(dòng)態(tài)口令的方法。
背景技術(shù):
目前, 一次性口令方法(OTP, One-Time Password )以其口令具有一次 性、能有效防止重放攻擊(Replay Attack )以及用戶(hù)真實(shí)口令無(wú)須在網(wǎng)上傳 輸?shù)葍?yōu)點(diǎn),在身份認(rèn)證領(lǐng)域得到了廣泛應(yīng)用。在比較流行的OTP方法中,動(dòng)態(tài)令牌卡(Token)通過(guò)采用一種專(zhuān)用硬件 一令牌卡,利用密碼生成芯片運(yùn)行專(zhuān)門(mén)的密碼算法,根據(jù)當(dāng)前時(shí)間生成當(dāng)前 密碼。該技術(shù)基于令牌卡和服務(wù)提供商(SP)后臺(tái)服務(wù)器的時(shí)間同步,通過(guò)運(yùn) 算生成一致的動(dòng)態(tài)口令,基于時(shí)間同步的令牌卡的更新率通常為60秒,即 每60秒產(chǎn)生一個(gè)新口令。供的網(wǎng)絡(luò)系統(tǒng)登錄后SP臺(tái)服務(wù)器以獲取相關(guān)服務(wù)時(shí),使用動(dòng)態(tài)令牌卡生成 當(dāng)前口令,并在登錄頁(yè)面上輸入該口令,然后再由SP后臺(tái)服務(wù)器對(duì)該動(dòng)態(tài) 口令進(jìn)行驗(yàn)證從而實(shí)現(xiàn)對(duì)該用戶(hù)的身份認(rèn)證。上述利用動(dòng)態(tài)令牌卡生成動(dòng)態(tài)口令的技術(shù)方案中,由于進(jìn)行同步的基礎(chǔ) 是國(guó)際標(biāo)準(zhǔn)時(shí)間,因此要求SP后臺(tái)服務(wù)器能夠十分精確的保持正確的時(shí)鐘, 且時(shí)鐘不得隨意更改,以免發(fā)生同步問(wèn)題,影響所有基于此SP后臺(tái)服務(wù)器 進(jìn)行認(rèn)證的令牌,同時(shí),也對(duì)令牌卡的的制造工藝要求更嚴(yán)格,以降低令牌 卡和SP后臺(tái)服務(wù)器前可以通過(guò)增大檢查窗口的技術(shù)(前后10分鐘或更長(zhǎng)時(shí)間)來(lái)進(jìn)行遠(yuǎn)程同 步,確保其能夠繼續(xù)使用,但該方法將增大暴力攻擊的成功概率,降低身份 認(rèn)證系統(tǒng)的安全性。精確性要求過(guò)高的局限性。 發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的在于提供一種基于PKI- SIM卡獲取動(dòng)態(tài) 口令的方法,其能克服對(duì)時(shí)鐘精確性的依賴(lài)。為了達(dá)到上述目的,本發(fā)明提出的技術(shù)方案為一種基于PKI - SIM卡獲取動(dòng)態(tài)口令的方法,該方法包括以下步驟a、 PKI-SIM卡根據(jù)指定的一次性動(dòng)態(tài)口令OTP服務(wù)的狀態(tài)信息,判斷所 述OTP服務(wù)是否開(kāi)通,如果開(kāi)通則轉(zhuǎn)入步驟c;b、 PKI - SIM卡向系統(tǒng)定制OTP服務(wù),在所述定制OTP服務(wù)的過(guò)程中, PKI - SIM卡將PKI - SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器;c、 PKI - SIM卡利用PKI - SIM卡標(biāo)識(shí)(ICCID)和密鑰生成動(dòng)態(tài)口令。 如上所述的方法中,所述步驟b中所述PKI - SIM卡將PKI - SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器的方法包括以下步驟 bxl、隨機(jī)生成一個(gè)密鑰;bx2、將PKI - SIM卡標(biāo)識(shí)和密鑰組合,生成同步信息數(shù)據(jù);bx3、利用SP的公鑰對(duì)同步信息數(shù)據(jù)進(jìn)行公鑰加密運(yùn)算,得到加密信息;bx4、將加密信息發(fā)送到SP后臺(tái)服務(wù)器;bx5、 SP后臺(tái)服務(wù)器利用自己的私鑰對(duì)加密信息進(jìn)行解密,獲得PKI - SIM 卡標(biāo)識(shí)和密鑰。如上所述的方法中,所述步驟bxl中隨機(jī)生成一個(gè)三重DES密鑰;所述步 驟bx3中按照RSAES-PKCSl-vl—5標(biāo)準(zhǔn),利用SP的公鑰對(duì)同步信息數(shù)據(jù)進(jìn)行 公鑰加密運(yùn)算;所述步驟bx5中,通過(guò)短信方式將加密信息發(fā)送到SP后臺(tái)服務(wù)器。如上所述的方法中,所述步驟b中實(shí)現(xiàn)PKI-SIM卡與SP后臺(tái)服務(wù)器的數(shù) 據(jù)同步的方法進(jìn)一步包括步驟將與所述OTP服務(wù)對(duì)應(yīng)的事件計(jì)數(shù)器的計(jì)數(shù)值置零。 如上所述的方法中,所述步驟a與步驟b之間進(jìn)一步包括步驟 通過(guò)用戶(hù)界面提示用戶(hù)服務(wù)未開(kāi)通,退出流程。如上所述的方法中,所述步驟c在生成動(dòng)態(tài)口令之前,所述步驟c進(jìn)一步 包括以下步驟cxl、根據(jù)所述OTP服務(wù)的OTP個(gè)人識(shí)別碼狀態(tài)信息判斷是否需要OTP個(gè)人識(shí)別碼保護(hù),如果需要,則轉(zhuǎn)入步驟cx2,否則轉(zhuǎn)入所述利用PKI-SIM卡標(biāo)識(shí)和密鑰生成動(dòng)態(tài)口令的步驟;cx2^瞼證用戶(hù)的個(gè)人識(shí)別碼是否正確,如果正確則轉(zhuǎn)入所述利用PKI - SIM卡標(biāo)識(shí)和密鑰生成動(dòng)態(tài)口令的步驟,否則退出流程。如上所述的方法中,所述步驟c生成動(dòng)態(tài)口令的方法包括以下步驟 將PKI - SIM卡標(biāo)識(shí)和事件計(jì)數(shù)器的計(jì)數(shù)值組合生成種子數(shù)據(jù); 利用對(duì)稱(chēng)加密算法對(duì)種子數(shù)據(jù)進(jìn)行加密運(yùn)算,得到加密的種子數(shù)據(jù); 利用SHA1 -Hash散列函數(shù)得到加密的種子數(shù)據(jù)的散列值; 對(duì)散列值進(jìn)行數(shù)字化處理,所述數(shù)字化處理方法為從散列值中動(dòng)態(tài)取出至少一個(gè)字節(jié)的數(shù)據(jù)并轉(zhuǎn)化成十進(jìn)制數(shù)字,通過(guò)用戶(hù)界面將所述十進(jìn)制數(shù)字作為動(dòng)態(tài)口令結(jié)果顯示;將事件計(jì)數(shù)器的計(jì)數(shù)值加一 。如上所述的方法中,所述步驟c生成動(dòng)態(tài)口令的方法中采用的所述對(duì)稱(chēng)加 密算法為三重DES加密方法。如上所述的方法中,所述步驟c生成動(dòng)態(tài)口令的方法包括以下步驟將PKI - SIM卡標(biāo)識(shí)和挑戰(zhàn)碼組合生成種子數(shù)據(jù),其中,所述挑戰(zhàn)碼由SP 服務(wù)器產(chǎn)生,用戶(hù)在登錄SP后臺(tái)服務(wù)器時(shí)從登錄頁(yè)面中得到所述挑戰(zhàn)碼;利用對(duì)稱(chēng)加密算法對(duì)種子數(shù)據(jù)進(jìn)行加密運(yùn)算,得到加密的種子數(shù)據(jù);利用SHA1 -Hash散列函數(shù)得到加密的種子數(shù)據(jù)的散列值;對(duì)散列值進(jìn)行數(shù)字化處理,所述數(shù)字化處理方法為從散列值中動(dòng)態(tài)取 出至少一個(gè)字節(jié)的數(shù)據(jù)并轉(zhuǎn)化成十進(jìn)制數(shù)字,通過(guò)用戶(hù)界面將所述十進(jìn)制數(shù) 字作為動(dòng)態(tài)口令結(jié)果顯示。如上所述的方法中,所述步驟c生成動(dòng)態(tài)口令的方法中釆用的所述對(duì)稱(chēng) 加密算法為三重DES加密方法。綜上所述,本發(fā)明基于PKI-SIM卡實(shí)現(xiàn)了動(dòng)態(tài)令牌卡的功能,該方法 通過(guò)將用于生成動(dòng)態(tài)口令的密鑰和SIM卡標(biāo)識(shí)使用非對(duì)稱(chēng)加密方式加密后 發(fā)送給SP后臺(tái)服務(wù)器,SP后臺(tái)服務(wù)器再對(duì)其進(jìn)行解密獲得用于生成動(dòng)態(tài)口 令的密鑰和SIM卡標(biāo)識(shí),從而實(shí)現(xiàn)PKI-SIM卡與SP后臺(tái)服務(wù)器的數(shù)據(jù)同多問(wèn)題。
圖1是本發(fā)明方法的流程圖。圖2是本發(fā)明實(shí)施例一的流程圖。圖3示出圖2中PKI- SIM卡與SP后臺(tái)服務(wù)器的數(shù)據(jù)同步的流程圖。圖4示出圖2中生成動(dòng)態(tài)口令的流程圖。圖5是本發(fā)明實(shí)施例二的流程圖。圖6示出圖5中生成動(dòng)態(tài)口令的流程圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖及具體 實(shí)施例對(duì)本發(fā)明作進(jìn) 一 步地詳細(xì)描述。本發(fā)明的基本思想是通過(guò)數(shù)據(jù)同步的形式來(lái)替代傳統(tǒng)令牌卡所采用的時(shí) 間同步技術(shù),簡(jiǎn)單的說(shuō)就是,當(dāng)用戶(hù)開(kāi)通指定的OTP服務(wù)時(shí),PKI-SIM卡將 將用于生成動(dòng)態(tài)口令的密鑰和SIM卡標(biāo)識(shí)作為同步信息數(shù)據(jù),利用SP的公鑰將同步信息數(shù)據(jù)加密后傳遞給SP后臺(tái)服務(wù)器,SP后臺(tái)服務(wù)器利用自己的私鑰對(duì)同步信息數(shù)據(jù)解密,獲得用于生成動(dòng)態(tài)口令的密鑰和SIM卡標(biāo)識(shí),從而實(shí)現(xiàn) PKI-SIM卡與SP后臺(tái)服務(wù)器的數(shù)據(jù)同步,然后再由PKI-SIM卡利用這些種 子數(shù)據(jù)的信息生成動(dòng)態(tài)口令。如圖1所示,本發(fā)明基于PKI-SIM卡獲取動(dòng)態(tài)口令的方法,主要包括以 下步驟101 、 PKI - SIM卡根據(jù)指定OTP服務(wù)的狀態(tài)信息,判斷OTP服務(wù)是否開(kāi) 通,如果開(kāi)通則轉(zhuǎn)入步驟103。這里,指定OTP服務(wù)的狀態(tài)信息是由系統(tǒng)事先預(yù)置于PKI - SIM卡中的, 當(dāng)用戶(hù)開(kāi)通所指定的OTP服務(wù)時(shí),將會(huì)改變其狀態(tài)信息,以指示所指定的OTP 服務(wù)已開(kāi)通,具體的狀態(tài)信息設(shè)置方法為現(xiàn)有技術(shù),此處不再贅述。102、 PKI - SIM卡向系統(tǒng)定制OTP服務(wù),在所述定制OTP服務(wù)的過(guò)程中, PKI - SIM卡將PKI - SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器。本步驟是用于開(kāi)通指定OTP服務(wù),該過(guò)程包含PKI-SIM卡與SP后臺(tái)服 務(wù)器的數(shù)據(jù)同步過(guò)程。這里的數(shù)據(jù)同步過(guò)程就是PKI - SIM卡將PKI - SIM卡 標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器,具體的說(shuō)就是PKI-SIM卡將 ICCID和自身生成的密鑰作為同步信息,并利用SP的公鑰對(duì)同步信息數(shù)據(jù)進(jìn)行 加密后通過(guò)系統(tǒng)的后臺(tái)服務(wù)器發(fā)送給SP后臺(tái)服務(wù)器,SP后臺(tái)服務(wù)器再利用SP 的私鑰對(duì)收到的同步信息解密,從而獲得PKI - SIM卡用于生成動(dòng)態(tài)口令的密 鑰和標(biāo)識(shí)該P(yáng)KI - SIM的ICCID,以便此后對(duì)該P(yáng)KI - SIM卡的動(dòng)態(tài)口令進(jìn)行 認(rèn)證。所述SP的公鑰可以在發(fā)行PKI - SIM卡的時(shí)候預(yù)置在卡內(nèi)部或者由系統(tǒng) 后臺(tái)服務(wù)器在開(kāi)通OTP服務(wù)時(shí)遠(yuǎn)程寫(xiě)入PKI - SIM卡。另外,在服務(wù)開(kāi)通后,當(dāng)用戶(hù)認(rèn)為需要更換密鑰重新進(jìn)行數(shù)據(jù)同步時(shí),也 可通過(guò)SIM卡工具包(SIMCard ToolKit, STK)菜單選擇數(shù)據(jù)同步功能單獨(dú)進(jìn) 行數(shù)據(jù)同步。103、 PKI-SIM卡利用ICCID和密鑰生成動(dòng)態(tài)口令。這里,根據(jù)生成動(dòng)態(tài)口令所使用的種子數(shù)據(jù)的不同,動(dòng)態(tài)口令的生成方式可以分為兩種, 一種是事件同步方式,另一種是挑戰(zhàn)碼方式,所述事件同步方 式所采用的種子數(shù)據(jù)是ICCID與事件計(jì)數(shù)器的計(jì)數(shù)值的組合,所述挑戰(zhàn)碼方式所采用的種子數(shù)據(jù)是ICCID與挑戰(zhàn)碼的組合,所述挑戰(zhàn)碼是由SP后臺(tái)服務(wù)器 產(chǎn)生的,用戶(hù)在登錄SP后臺(tái)服務(wù)器時(shí)可以從登錄頁(yè)面中得到所述挑戰(zhàn)碼,在 實(shí)際應(yīng)用中具體采用上述哪種動(dòng)態(tài)口令生成方式可以由系統(tǒng)進(jìn)行選擇。 為了更好地說(shuō)明本發(fā)明的方法,下面用較佳實(shí)施例進(jìn)行詳細(xì)描述。 圖2為本發(fā)明實(shí)施例一的流程圖。實(shí)施例一中生成動(dòng)態(tài)口令的方式為事 件同步方式,如圖2所示實(shí)施例一包括以下步驟201、 PKI-SIM卡根據(jù)指定OTP服務(wù)的狀態(tài)信息,判斷OTP服務(wù)是否開(kāi) 通,如果開(kāi)通,則直接轉(zhuǎn)入步驟203,否則轉(zhuǎn)入步驟202開(kāi)通OTP服務(wù);在實(shí)際應(yīng)用中,如果判斷出指定OTP服務(wù)沒(méi)有開(kāi)通,也可以提示用戶(hù)服務(wù) 未開(kāi)通,然后結(jié)束流程。此后,由用戶(hù)通過(guò)STK菜單方式觸發(fā)開(kāi)通指定OTP 服務(wù)過(guò)程的執(zhí)行,然后再由用戶(hù)通過(guò)STK菜單重新觸發(fā)動(dòng)態(tài)口令生成過(guò)程的 執(zhí)行來(lái)獲得動(dòng)態(tài)口令。202、 PKI - SIM卡向系統(tǒng)定制OTP服務(wù),在所述定制OTP服務(wù)的過(guò)程中, PKI - SIM卡將PKI - SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器,同 時(shí)將所述OTP服務(wù)對(duì)應(yīng)的事件計(jì)數(shù)器的計(jì)數(shù)值置零。在實(shí)際應(yīng)用中,對(duì)ICCID和密鑰進(jìn)行加密時(shí)可以使用非對(duì)稱(chēng)加密方式以增 強(qiáng)加密信息的安全性,如圖3所示,步驟202中PKI - SIM卡將PKI - SIM卡 標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器的流程包括以下步驟301、 隨機(jī)生成一個(gè)三重DES的密鑰deskey;302、 將ICCID和deskey組合,生成同步信息數(shù)據(jù)M;303、 按照RSAES-PKCSl-vl—5標(biāo)準(zhǔn),利用SP的公鑰對(duì)M進(jìn)行公鑰加密 運(yùn)算,得到加密信息Info;304、 將與所述OTP服務(wù)對(duì)應(yīng)的事件計(jì)數(shù)器的計(jì)數(shù)值置零;305、 通過(guò)短信方式將Info發(fā)送到系統(tǒng)后臺(tái)服務(wù)器,并由系統(tǒng)后臺(tái)服務(wù)器轉(zhuǎn) 發(fā)至SP后臺(tái)服務(wù)器;306、SP后臺(tái)服務(wù)器利用自己的私鑰對(duì)Info進(jìn)行解密,獲得ICCID和deskey。 這里需要說(shuō)明的是,步驟304在上述流程中的位置沒(méi)有嚴(yán)格的要求,只要 在實(shí)現(xiàn)數(shù)據(jù)同步的過(guò)程中將事件計(jì)數(shù)器的計(jì)數(shù)值置零即可。203、 根據(jù)所述OTP服務(wù)的OTP個(gè)人識(shí)別碼狀態(tài)信息判斷是否需要OTP 個(gè)人識(shí)別碼保護(hù),如果需要?jiǎng)t轉(zhuǎn)入步驟204驗(yàn)證用戶(hù)的個(gè)人識(shí)別碼,否則轉(zhuǎn)入 步驟205直接生成動(dòng)態(tài)口令。這里,OTP個(gè)人識(shí)別碼狀態(tài)信息是用戶(hù)在開(kāi)通OTP服務(wù)時(shí)由用戶(hù)根據(jù)實(shí)際 需要設(shè)定的,該信息存儲(chǔ)于PKI-SIM卡中。204、 驗(yàn)證用戶(hù)的個(gè)人識(shí)別碼是否正確,如果正確則轉(zhuǎn)入步驟205,否則結(jié) 束流程。205、 PKI-SIM卡利用ICCID和密鑰,采用事件同步的方式生成動(dòng)態(tài)口令。 這里,如圖4所示,本實(shí)施例中采用事件同步方式生成動(dòng)態(tài)口令的方法包括以下步驟401、 將ICCiD和事件計(jì)數(shù)器的計(jì)數(shù)值組合生成種子數(shù)據(jù);402、 利用三重DES加密方法對(duì)種子數(shù)據(jù)進(jìn)行加密運(yùn)算,得到加密的種 子數(shù)據(jù)EM;這里需要說(shuō)明的是,在實(shí)際應(yīng)用中,對(duì)種子數(shù)據(jù)進(jìn)行加密運(yùn)算時(shí)所采用 的加密算法并不限于本實(shí)施例中的三重DES加密方法,只要是對(duì)稱(chēng)加密算 法即可。403、 利用SHA1 - Hash散列函數(shù)得到EM的散列值SM;404、 對(duì)SM進(jìn)行數(shù)字化處理,并將數(shù)字化處理結(jié)果作為動(dòng)態(tài)口令通過(guò) 用戶(hù)界面顯示出來(lái);所述數(shù)字化處理方法為從SM中動(dòng)態(tài)取出至少一個(gè)字節(jié)的數(shù)據(jù)并轉(zhuǎn)化 成十進(jìn)制數(shù)字,本實(shí)施例中從SM中動(dòng)態(tài)取出4個(gè)字節(jié)的數(shù)據(jù),然后把這4 個(gè)字字的數(shù)據(jù)轉(zhuǎn)換成8位的十進(jìn)制數(shù)字。405、 將事件計(jì)數(shù)器的計(jì)數(shù)值加一。這里需要說(shuō)明的是,步驟405在上述流程中的位置沒(méi)有嚴(yán)格的要求,只要在每次生成動(dòng)態(tài)口令時(shí),PKI - SIM卡將所指定OTP服務(wù)的事件計(jì)數(shù)器的計(jì)數(shù) 值加一即可,相應(yīng)的SP后臺(tái)服務(wù)器也會(huì)對(duì)其所存儲(chǔ)的相應(yīng)的事件計(jì)數(shù)器的計(jì) 數(shù)值進(jìn)行加一,這樣就能使PKI- SIM卡和SP后臺(tái)服務(wù)器各自的關(guān)于所指定 OTP服務(wù)的事件計(jì)數(shù)器保持一致,從而使兩者能夠基于事件進(jìn)行同步。在上述實(shí)施例一的技術(shù)方案中,步驟201實(shí)現(xiàn)了本發(fā)明方法的步驟101, 步驟202實(shí)現(xiàn)了本發(fā)明方法的步驟102,步驟205實(shí)現(xiàn)了本發(fā)明方法的步驟103, 步驟203和204是在實(shí)際應(yīng)用中根據(jù)用戶(hù)需要而增設(shè)的用戶(hù)個(gè)人識(shí)別碼的驗(yàn)證 步驟,以提高用戶(hù)身份認(rèn)證的安全性。本發(fā)明的實(shí)施例二給出了采用挑戰(zhàn)碼方式生成動(dòng)態(tài)口令的方法,實(shí)施例 二和實(shí)施例一的主要區(qū)別在于實(shí)施例二使用SP提供的挑戰(zhàn)碼替代事件計(jì) 數(shù)器來(lái)生成種子數(shù)據(jù),相應(yīng)的在方法流程中也不需要對(duì)事件計(jì)數(shù)器進(jìn)行設(shè)置 和更新,如圖5所示,實(shí)施例二主要包括以下步驟501、 PKI-SIM卡根據(jù)指定OTP服務(wù)的狀態(tài)信息,判斷OTP服務(wù)是否 開(kāi)通,如果開(kāi)通則轉(zhuǎn)入步驟503,否則轉(zhuǎn)入步驟502;502、 PKI - SIM卡向系統(tǒng)定制OTP服務(wù),在所述定制OTP服務(wù)的過(guò)程中, PKI - SIM卡將PKI - SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器。這里,實(shí)現(xiàn)PKI-SIM卡與SP后臺(tái)服務(wù)器的數(shù)據(jù)同步方法與實(shí)施例一的數(shù) 據(jù)同步方法基本相同,不同之處在于本實(shí)施例中不需要執(zhí)行對(duì)事件計(jì)數(shù)器的計(jì) 數(shù)值置零的步驟,其他步驟均相同,故不再贅述。503、 根據(jù)所述OTP服務(wù)的OTP個(gè)人識(shí)別碼狀態(tài)信息判斷是否需要OTP 個(gè)人識(shí)別碼保護(hù),如果需要?jiǎng)t轉(zhuǎn)入步驟504驗(yàn)證用戶(hù)的個(gè)人識(shí)別碼,否則轉(zhuǎn)入 步驟505直接生成動(dòng)態(tài)口令。504、 驗(yàn)證用戶(hù)的個(gè)人識(shí)別碼是否正確,如果不正確,則結(jié)束流程。505、 PKI-SIM卡利用ICCID和密鑰,采用4兆戰(zhàn)碼的方式生成動(dòng)態(tài)口令。 這里,如圖6所示,采用挑戰(zhàn)碼方式生成動(dòng)態(tài)口令的方法包括以下步驟601、 將ICCID和挑戰(zhàn)碼組合生成種子數(shù)據(jù);602、 利用三重DES加密方法對(duì)種子數(shù)據(jù)進(jìn)行加密運(yùn)算,得到加密的種子數(shù)據(jù)EM;603、 利用SHA1 - Hash散列函數(shù)得到EM的散列值SM;604、 對(duì)SM進(jìn)行數(shù)字化處理,并將數(shù)字化處理結(jié)果作為動(dòng)態(tài)口令通過(guò) 用戶(hù)界面顯示出來(lái)。上述采用挑戰(zhàn)碼的方式生成動(dòng)態(tài)口令的方法與實(shí)施例 一 中采用事件同 步的方式生成動(dòng)態(tài)口令的方法基本相同,不同之處在于本實(shí)施例是利用 ICCID和挑戰(zhàn)碼的組合來(lái)生成種子數(shù)據(jù),另外,也不需要對(duì)事件計(jì)數(shù)器的計(jì) 數(shù)值執(zhí)行加一操作,除此之外,其余步驟均相同,故不再贅述。本發(fā)明中PKI-SIM卡所生成的三重DES密鑰的更新管理可以由SP后臺(tái) 服務(wù)器完成,當(dāng)三重DES密鑰使用一定時(shí)間或次數(shù)之后,SP后臺(tái)服務(wù)器將 使用密鑰交換協(xié)議對(duì)其進(jìn)行更新。密鑰更新時(shí),由PKI-SIM卡生成新的三 重DES密鑰,然后再使用SP的公鑰對(duì)其進(jìn)行加密并傳送至SP后臺(tái)服務(wù)器。以上是對(duì)本發(fā)明及其較佳實(shí)施例的詳細(xì)描述,這里需要說(shuō)明的是,在實(shí) 際應(yīng)用中,用戶(hù)可以使用裝設(shè)PKI-SIM卡手機(jī)的STK菜單來(lái)實(shí)施本發(fā)明的 方法。例如,提供OTP服務(wù)的STK菜單可以包括"獲取口令,,、"開(kāi)通服 務(wù)"、"注銷(xiāo)服務(wù)"、"數(shù)據(jù)同步"和"設(shè)定PIN保護(hù)"等功能選項(xiàng),用戶(hù) 可以通過(guò)選擇這些功能選項(xiàng)來(lái)調(diào)用實(shí)現(xiàn)相應(yīng)功能的過(guò)程,例如,用戶(hù)可以通 過(guò)選擇上述STK菜單上的"獲取口令"選項(xiàng)獲取指定OTP服務(wù)的動(dòng)態(tài)口令, 用戶(hù)也可以在認(rèn)為需要數(shù)據(jù)同步時(shí)通過(guò)選擇"數(shù)據(jù)同步"功能選項(xiàng)來(lái)實(shí)現(xiàn) PKI-SIM卡與SP后臺(tái)服務(wù)器的數(shù)據(jù)同步。通過(guò)釆用上述技術(shù)方案,本發(fā)明基于PKI- SIM卡采用數(shù)據(jù)同步的方式性,避免了因時(shí)間同步而產(chǎn)生的諸多局限性。本發(fā)明中所使用的三重DES密鑰是用戶(hù)與SP之間協(xié)商的,因此能夠保 證點(diǎn)對(duì)點(diǎn)的數(shù)據(jù)安全。本發(fā)明通過(guò)手機(jī)的顯示屏幕和鍵盤(pán)完成與用戶(hù)的信息交互,有效減少了 設(shè)備成本以及設(shè)備本身的故障點(diǎn)。另外,本發(fā)明在實(shí)際應(yīng)用時(shí),用戶(hù)僅需攜帶手機(jī),方便了用戶(hù)使用。 綜上所述,以上僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種基于公開(kāi)密鑰體系-用戶(hù)身份識(shí)別PKI-SIM卡獲取動(dòng)態(tài)口令的方法,其特征在于,該方法包括以下步驟a、PKI-SIM卡根據(jù)指定的一次性動(dòng)態(tài)口令OTP服務(wù)的狀態(tài)信息,判斷所述OTP服務(wù)是否開(kāi)通,如果開(kāi)通則轉(zhuǎn)入步驟c;b、PKI-SIM卡向系統(tǒng)定制OTP服務(wù),在所述定制OTP服務(wù)的過(guò)程中,PKI-SIM卡將PKI-SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器;c、PKI-SIM卡利用PKI-SIM卡標(biāo)識(shí)和密鑰生成動(dòng)態(tài)口令。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟b中所述PKI - SIM 卡將PKI _ SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器的方法包括以下 步驟bxl、隨4幾生成一個(gè)密鑰;bx2、將PKI-SIM卡標(biāo)識(shí)和密鑰組合,生成同步信息數(shù)據(jù);bx3、利用SP的公鑰對(duì)同步信息數(shù)據(jù)進(jìn)行公鑰加密運(yùn)算,得到加密信息;bx4、將加密信息發(fā)送到SP后臺(tái)服務(wù)器;bx5、 SP后臺(tái)服務(wù)器利用自己的私鑰對(duì)加密信息進(jìn)行解密,獲得PKI-SIM 卡標(biāo)識(shí)和密鑰。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟bxl中隨機(jī)生成一 個(gè)三重DES密鑰;所述步驟bx3中按照RSAES-PKCSl-v1—5標(biāo)準(zhǔn),利用SP的 公鑰對(duì)同步信息數(shù)據(jù)進(jìn)行公鑰加密運(yùn)算;所述步驟bx5中,通過(guò)短信方式將加 密信息發(fā)送到SP后臺(tái)服務(wù)器。
4、 根據(jù)權(quán)利要求2或3所述的方法,其特征在于,所述步驟b中實(shí)現(xiàn)PKI -SIM卡與SP后臺(tái)服務(wù)器的數(shù)據(jù)同步的方法進(jìn)一步包括步驟將與所述OTP服務(wù)對(duì)應(yīng)的事件計(jì)數(shù)器的計(jì)數(shù)值置零。
5、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟a與步驟b之間進(jìn) 一步包括步驟通過(guò)用戶(hù)界面提示用戶(hù)服務(wù)未開(kāi)通,退出流程。
6、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟C在生成動(dòng)態(tài)口令之前,所述步驟c進(jìn)一步包括以下步驟cxl、根據(jù)所述OTP服務(wù)的OTP個(gè)人識(shí)別碼狀態(tài)信息判斷是否需要OTP 個(gè)人識(shí)別碼保護(hù),如果需要,則轉(zhuǎn)入步驟cx2,否則轉(zhuǎn)入所述利用PKI-SIM卡 標(biāo)識(shí)和密鑰生成動(dòng)態(tài)口令的步驟;cx2、驗(yàn)證用戶(hù)的個(gè)人識(shí)別碼是否正確,如果正確則轉(zhuǎn)入所述利用PKI - SIM 卡標(biāo)識(shí)和密鑰生成動(dòng)態(tài)口令的步驟,否則退出流程。
7、 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述步驟c生成動(dòng)態(tài)口令的 方法包括以下步驟將PKI - SIM卡標(biāo)識(shí)和事件計(jì)數(shù)器的計(jì)數(shù)值組合生成種子數(shù)據(jù); 利用對(duì)稱(chēng)加密算法對(duì)種子數(shù)據(jù)進(jìn)行加密運(yùn)算,得到加密的種子數(shù)據(jù); 利用SHA1 - Hash散列函數(shù)得到加密的種子數(shù)據(jù)的散列值; 對(duì)散列值進(jìn)行數(shù)字化處理,所述數(shù)字化處理方法為從散列值中動(dòng)態(tài)取出至少一個(gè)字節(jié)的數(shù)據(jù)并轉(zhuǎn)化成十進(jìn)制數(shù)字,通過(guò)用戶(hù)界面將所述十進(jìn)制數(shù)字作為動(dòng)態(tài)口令結(jié)果顯示;將事件計(jì)數(shù)器的計(jì)數(shù)值加一
8、 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述步驟c生成動(dòng)態(tài)口令的 方法中采用的所述對(duì)稱(chēng)加密算法為三重DES加密方法。
9、 根據(jù)權(quán)利要求1至6任一所述的方法,其特征在于,所述步驟c生成動(dòng) 態(tài)口令的方法包括以下步驟將PKI - SIM卡標(biāo)識(shí)和挑戰(zhàn)碼組合生成種子數(shù)據(jù),其中,所述挑戰(zhàn)碼由SP 服務(wù)器產(chǎn)生,用戶(hù)在登錄SP后臺(tái)服務(wù)器時(shí)從登錄頁(yè)面中得到所述挑戰(zhàn)碼; 利用對(duì)稱(chēng)加密算法對(duì)種子數(shù)據(jù)進(jìn)行加密運(yùn)算,得到加密的種子數(shù)據(jù); 利用SHA1 -Hash散列函數(shù)得到加密的種子數(shù)據(jù)的散列值; 對(duì)散列值進(jìn)行數(shù)字化處理,所述數(shù)字化處理方法為從散列值中動(dòng)態(tài)取出 至少一個(gè)字節(jié)的數(shù)據(jù)并轉(zhuǎn)化成十進(jìn)制數(shù)字,通過(guò)用戶(hù)界面將所述十進(jìn)制數(shù)字作
10、根據(jù)權(quán)利要求9所述的方法,其特征在于,所述步驟C生成動(dòng)態(tài)口令的方法中采用的所述對(duì)稱(chēng)加密算法為三重DES加密方法。
全文摘要
本發(fā)明公開(kāi)了一種基于PKI-SIM卡獲取動(dòng)態(tài)口令的方法,該方法包括PKI-SIM卡根據(jù)指定的一次性動(dòng)態(tài)口令OTP服務(wù)的狀態(tài)信息,判斷所述OTP服務(wù)是否開(kāi)通,如果未開(kāi)通則向系統(tǒng)定制OTP服務(wù),在所述定制OTP服務(wù)的過(guò)程中,PKI-SIM卡將PKI-SIM卡標(biāo)識(shí)和自身生成的密鑰同步給SP后臺(tái)服務(wù)器;所述OTP服務(wù)開(kāi)通后,PKI-SIM卡利用PKI-SIM卡標(biāo)識(shí)和密鑰生成動(dòng)態(tài)口令。本發(fā)明通過(guò)PKI-SIM卡與SP后臺(tái)服務(wù)器的數(shù)據(jù)同步方式能有效避免傳統(tǒng)令牌卡技術(shù)因基于時(shí)間同步而產(chǎn)生的諸多局限性。
文檔編號(hào)H04L9/32GK101277182SQ20081010200
公開(kāi)日2008年10月1日 申請(qǐng)日期2008年3月14日 優(yōu)先權(quán)日2008年3月14日
發(fā)明者鄒俊偉 申請(qǐng)人:北京信聯(lián)恒業(yè)通訊技術(shù)有限公司