專(zhuān)利名稱(chēng):鑒別用戶(hù)的裝置及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一用戶(hù)鑒別系統(tǒng),特別地,涉及一鑒別使用便攜終端和一集成電路(IC)卡的用戶(hù)的裝置及其方法,(IC)卡表示帳戶(hù)余額及電子錢(qián)的交易記錄并能產(chǎn)生一一次性使用或暫時(shí)密碼。
由于計(jì)算機(jī)和通信的發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)的普及,具有存儲(chǔ)及計(jì)算能力的集成電路(IC)卡的發(fā)展,產(chǎn)生了許多應(yīng)用領(lǐng)域并帶給人類(lèi)許多方便。IC卡的應(yīng)用領(lǐng)域之一的電子錢(qián)應(yīng)能表示帳戶(hù)余額及電子錢(qián)的交易記錄。
此外用戶(hù)可以不去銀行就可處理他或她的帳戶(hù)中的錢(qián)并通過(guò)在他或她的家中一使用計(jì)算機(jī)的遠(yuǎn)端連接方便地處理許多事情。此時(shí)一服務(wù)提供者如銀行或網(wǎng)絡(luò)服務(wù)者須證實(shí)要求服務(wù)的用戶(hù)是否一合法用戶(hù)。若一假裝為合法用戶(hù)的人的企圖由于弱的用戶(hù)鑒別系統(tǒng)而獲得成功,則侵犯隱私與產(chǎn)生精神的和物質(zhì)的破壞。特別地,當(dāng)用戶(hù)從遠(yuǎn)距離請(qǐng)求服務(wù)時(shí),服務(wù)提供者需一方法證實(shí)用戶(hù)的身份而不會(huì)見(jiàn)用戶(hù)本人。
為鑒別用戶(hù)的身份,可使用只有用戶(hù)知道的,僅用戶(hù)所有的,或用戶(hù)所獨(dú)有的物理特征或習(xí)慣。最基本和普遍的用于鑒別用戶(hù)的身份的方法是使用密碼。密碼法中,通過(guò)證實(shí)僅用戶(hù)知道的來(lái)鑒別用戶(hù)的身份。即請(qǐng)求服務(wù)的用戶(hù)選一僅他或她知道的密碼并向服務(wù)提供者登記(服務(wù)者)。用戶(hù)通常使用一串幾個(gè)數(shù)字或字母作為密碼。當(dāng)希望鑒別他或她的身份的用戶(hù)向服務(wù)者傳來(lái)密碼時(shí),服務(wù)者比較傳來(lái)的密碼與初始登記的密碼,并鑒別用戶(hù)。
為安全鑒別用戶(hù)的身份,推薦采用一次性使用密碼,其中每次用戶(hù)希望鑒別時(shí)改變密碼。該方法中,由于每次用戶(hù)希望鑒別時(shí)改變密碼,非法用戶(hù)不能再用他或她發(fā)現(xiàn)的密碼。為用一次性使用密碼鑒別身份,需一產(chǎn)生一次性使用密碼的裝置。此時(shí),若每個(gè)用戶(hù)用他或她自己的終端產(chǎn)生一次性使用密碼,因?yàn)槟芡瑫r(shí)證實(shí)僅用戶(hù)知道的和僅用戶(hù)所有的以鑒別用戶(hù),所以能增加安全性。
在一次性使用密碼中,不同于普通密碼,為產(chǎn)生每次改變的密碼需要每次都改變的量。為此采用一用實(shí)時(shí)鐘(RTC)的方法和一用隨機(jī)數(shù)的提出/響應(yīng)的方法。
在RTC作為一變量的用戶(hù)鑒別法中,用戶(hù)所有的終端和服務(wù)提供者的服務(wù)器同步。即在用戶(hù)希望被鑒別時(shí),通過(guò)將根據(jù)終端的時(shí)間產(chǎn)生的一次性使用密碼與服務(wù)器在相同時(shí)間所產(chǎn)生的密碼相比來(lái)鑒別用戶(hù)。
在用隨機(jī)數(shù)的提出/響應(yīng)的方法中,為產(chǎn)生一次性使用密碼用一隨機(jī)數(shù)產(chǎn)生器產(chǎn)生隨機(jī)數(shù)。當(dāng)用戶(hù)鑒別開(kāi)始時(shí),服務(wù)器產(chǎn)生隨機(jī)數(shù)并將它們傳至用戶(hù)。終端用一與服務(wù)器共享的密數(shù)加密該隨機(jī)數(shù),產(chǎn)生一次性使用密碼并將其傳至服務(wù)器。服務(wù)器通過(guò)用與終端共享的相同密數(shù)和傳來(lái)的相同隨機(jī)數(shù)產(chǎn)生一密碼并將其與終端產(chǎn)生的密碼相比來(lái)鑒別用戶(hù)。
然而上述使用密碼的、目前使用最多的用戶(hù)鑒別方法有許多問(wèn)題。根據(jù)個(gè)人信息如電話(huà)號(hào)碼、出生日期和身份證ID產(chǎn)生的幾個(gè)數(shù)字或字母的密碼很容易被他人發(fā)現(xiàn)。當(dāng)用戶(hù)為不忘記將密碼記于它處時(shí),很容易被他人發(fā)現(xiàn)。此時(shí)從遠(yuǎn)處請(qǐng)求服務(wù)的用戶(hù)為被鑒別將他或她的密碼經(jīng)電話(huà)線(xiàn)或網(wǎng)絡(luò)發(fā)送時(shí),很易被一竊聽(tīng)裝置暴露給他人。
在用RTC的用戶(hù)鑒別法中,為產(chǎn)生一次性使用密碼和鑒別用戶(hù),用戶(hù)所有的終端的時(shí)間和服務(wù)提供者的服務(wù)器的時(shí)間同步。若隨時(shí)間的流逝終端與服務(wù)器不同步,由于終端產(chǎn)生的密碼不同于服務(wù)器產(chǎn)生的密碼,則即使合法用戶(hù)也不能被證明了。為使終端與服務(wù)器同步需一特別裝置。因此在傳統(tǒng)的應(yīng)用的服務(wù)中為加強(qiáng)用戶(hù)鑒別而使用了一一次性使用的密碼時(shí),需一特別服務(wù)器來(lái)同步終端的時(shí)間與服務(wù)器的時(shí)間,這樣引起了服務(wù)提供者大的花費(fèi)。此外由于在終端中用實(shí)時(shí)鐘產(chǎn)生密碼的變量是實(shí)時(shí)鐘,終端僅能為一服務(wù)產(chǎn)生一次性使用密碼。當(dāng)用戶(hù)需要多個(gè)應(yīng)用服務(wù)時(shí),每一服務(wù)需一單獨(dú)終端。
在上述用隨機(jī)數(shù)的提出/響應(yīng)的方法中,為產(chǎn)生一次性使用密碼服務(wù)器傳來(lái)的隨機(jī)數(shù)須被輸入至終端。為此終端須含一輸入設(shè)備。此外,由于在服務(wù)器將隨機(jī)數(shù)傳至終端和用戶(hù)將隨機(jī)數(shù)輸入終端時(shí)需要一處理,自將花較長(zhǎng)時(shí)間且對(duì)用戶(hù)不方便。此外,在服務(wù)器不能將隨機(jī)數(shù)傳至用戶(hù)時(shí)不能用該方法。
本發(fā)明的目的是為便宜和安全鑒別用戶(hù),提供一裝置來(lái)鑒別使用了便攜式終端和IC卡的用戶(hù),IC卡能表示帳戶(hù)余額和電子錢(qián)的交易記錄并能產(chǎn)生一次性使用密碼。
為達(dá)到上述目的,提供了一鑒別用戶(hù)的裝置,含保存用于產(chǎn)生一次性使用密碼的密鑰和預(yù)定隨機(jī)數(shù)的集成電路(IC)卡,用IC作為輸入產(chǎn)生一次性使用密碼的終端,鑒別終端產(chǎn)生的一次性使用密碼的服務(wù)器。終端含一接收并與IC卡接口,且判斷是否第一次插入IC卡的卡接收器,一個(gè)當(dāng)?shù)谝淮螌C卡插入卡接收器時(shí)讀取和保存并刪除IC卡的隨機(jī)數(shù)的隨機(jī)數(shù)存儲(chǔ)器,通過(guò)讀取IC卡的密鑰和存于隨機(jī)數(shù)存儲(chǔ)器的隨機(jī)數(shù)而產(chǎn)生一次性使用密碼的第一密碼產(chǎn)生器,一個(gè)當(dāng)?shù)谝幻艽a產(chǎn)生器產(chǎn)生一次性使用密碼時(shí)將存于隨機(jī)數(shù)存儲(chǔ)器的隨機(jī)數(shù)改為一預(yù)定值并將改變值存于隨機(jī)數(shù)存儲(chǔ)器的第一隨機(jī)數(shù)改變器,一個(gè)顯示終端和服務(wù)器處理結(jié)果的的顯示器。服務(wù)器含保存與初始存于IC卡的密鑰和預(yù)定隨機(jī)數(shù)一致的密鑰和預(yù)定隨機(jī)數(shù)的密鑰存儲(chǔ)器,一個(gè)讀取存于密鑰存儲(chǔ)器的密鑰和預(yù)定隨機(jī)數(shù)并用與終端相同的方法產(chǎn)生一次性使用密碼的第二密碼產(chǎn)生器,一當(dāng)?shù)诙艽a產(chǎn)生器產(chǎn)生一次性使用密碼時(shí)將存于密鑰存儲(chǔ)器的隨機(jī)數(shù)改為一與終端隨機(jī)數(shù)改變器相同的值,并將改變值存于密鑰存儲(chǔ)器的第二隨機(jī)數(shù)改變器,一通過(guò)電話(huà)線(xiàn)或網(wǎng)絡(luò)接收終端產(chǎn)生的一次性使用密碼的密碼接收器,及一檢驗(yàn)接收的密碼是否與產(chǎn)生的密碼相同的密碼檢驗(yàn)器。
IC卡還含一卡訪(fǎng)問(wèn)密鑰存儲(chǔ)器,密鑰存儲(chǔ)器含一允許無(wú)條件訪(fǎng)問(wèn)的公共區(qū)和為安全保存允許訪(fǎng)問(wèn)秘密區(qū)所需的卡訪(fǎng)問(wèn)密鑰且從外部訪(fǎng)問(wèn)時(shí)需要一卡訪(fǎng)問(wèn)密鑰的私有區(qū),一通過(guò)將外部輸入的卡訪(fǎng)問(wèn)密鑰與存于卡訪(fǎng)問(wèn)密鑰存儲(chǔ)器的卡訪(fǎng)問(wèn)密鑰相比而決定是否允許對(duì)內(nèi)部信息的訪(fǎng)問(wèn)的卡訪(fǎng)問(wèn)檢驗(yàn)器。當(dāng)IC卡第一次插入卡接收器時(shí),終端的隨機(jī)數(shù)存儲(chǔ)器讀取IC卡的卡訪(fǎng)問(wèn)密鑰和隨機(jī)數(shù)并存儲(chǔ)它們,并從IC卡的公共區(qū)中刪除隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰。
終端的第一密碼產(chǎn)生部分含一讀取IC卡的密鑰和隨機(jī)數(shù)存儲(chǔ)器的隨機(jī)數(shù)并用對(duì)稱(chēng)密鑰加密算法產(chǎn)生一密碼的對(duì)稱(chēng)密鑰加密器部分,一用一單向哈什函數(shù)轉(zhuǎn)換對(duì)稱(chēng)密鑰加密器部分中產(chǎn)生的密碼并防止密鑰的逆向跟蹤的哈什函數(shù)部分,和一將加密器的輸出從哈什函數(shù)部分轉(zhuǎn)成一預(yù)定格式的格式轉(zhuǎn)換器。服務(wù)器的第二密碼產(chǎn)生部分含讀取存于密鑰存儲(chǔ)部分的密鑰和隨機(jī)數(shù)并用對(duì)稱(chēng)密鑰加密算法產(chǎn)生一密碼的對(duì)稱(chēng)密鑰加密器部分,一用一單向哈什函數(shù)并防止對(duì)對(duì)稱(chēng)密鑰加密器部分中產(chǎn)生的密碼的逆向跟蹤的哈什函數(shù)部分,和一將加密器的輸出從哈什函數(shù)部分轉(zhuǎn)成一預(yù)定格式的格式轉(zhuǎn)換器。
為達(dá)到上述目的,提供了一用一用戶(hù)鑒別裝置鑒別用戶(hù)的方法,該用戶(hù)鑒別裝置含存儲(chǔ)一預(yù)定隨機(jī)數(shù)的IC卡和產(chǎn)生一次性使用密碼的密鑰,一用IC卡作為輸入產(chǎn)生一次性使用密碼的終端,和保存與IC卡一致的密鑰和隨機(jī)數(shù)并鑒別終端產(chǎn)生的一次性使用密碼的服務(wù)器,該方法含步將IC卡插入終端,判斷IC卡是否第一次被插入,當(dāng)?shù)谝淮尾迦隝C卡時(shí)初始化預(yù)定服務(wù)并產(chǎn)生一次性使用密碼,當(dāng)IC卡是較后插入時(shí)產(chǎn)生一次性用戶(hù)密碼,經(jīng)一預(yù)定通信媒質(zhì)接收終端產(chǎn)生的一次性使用密碼并證實(shí)一次性使用密碼。在產(chǎn)生密碼的步驟時(shí)服務(wù)的初始化含步讀取IC卡的隨機(jī)數(shù)并將其存于終端,從IC卡中刪除該隨機(jī)數(shù)。在產(chǎn)生密碼的步驟時(shí)產(chǎn)生一次性使用密碼含步讀取IC卡的密鑰和存于終端的隨機(jī)數(shù),用該密鑰和隨機(jī)數(shù)作為輸入執(zhí)行對(duì)稱(chēng)密鑰加密算法,根據(jù)對(duì)稱(chēng)密鑰加密算法的輸出值執(zhí)行單向哈什函數(shù),將隨機(jī)數(shù)改為一預(yù)定值并存于終端,將單向哈什函數(shù)的輸出轉(zhuǎn)換為預(yù)定格式。證實(shí)含步經(jīng)一預(yù)定通信媒質(zhì)接收終端產(chǎn)生的一次性使用密碼,讀取存于服務(wù)器的密鑰和隨機(jī)數(shù),用該密鑰和隨機(jī)數(shù)作為輸入執(zhí)行對(duì)稱(chēng)密鑰加密算法,根據(jù)對(duì)稱(chēng)密鑰加密算法的輸出值執(zhí)行單向哈什函數(shù),將隨機(jī)數(shù)改為一預(yù)定值并存于終端,將單向哈什函數(shù)的輸出轉(zhuǎn)換為預(yù)定格式,若預(yù)定格式與接收的一次性使用密碼相同則鑒別用戶(hù),若不同則不鑒別用戶(hù)。
當(dāng)IC卡含一私有和公共存儲(chǔ)區(qū)且含訪(fǎng)問(wèn)私有區(qū)所需的卡訪(fǎng)問(wèn)密鑰時(shí),在產(chǎn)生密碼的步驟時(shí)服務(wù)的初始化含步從IC卡的公共區(qū)讀取隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰以允許訪(fǎng)問(wèn)隨機(jī)數(shù)和私有區(qū),并將其存入終端,從IC卡的公共區(qū)刪除該隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰。在產(chǎn)生密碼的步驟時(shí)讀取IC卡的密鑰含步將存于終端的卡訪(fǎng)問(wèn)密鑰輸入IC卡,檢驗(yàn)輸入至IC卡的卡訪(fǎng)問(wèn)密鑰是否與IC卡私有區(qū)中的卡訪(fǎng)問(wèn)密鑰相同,若相同,則允許訪(fǎng)問(wèn)卡,在檢驗(yàn)卡訪(fǎng)問(wèn)密鑰期間若允許訪(fǎng)問(wèn)則讀取IC卡的密鑰。
當(dāng)終端和服務(wù)器每個(gè)含一計(jì)數(shù)器以將終端與服務(wù)器同步時(shí),在產(chǎn)生密碼的步驟時(shí)產(chǎn)生一次性使用密碼含步將隨機(jī)數(shù)和計(jì)數(shù)器值改為預(yù)定值并將其存入終端。在產(chǎn)生密碼的步驟時(shí)產(chǎn)生一次性使用密碼含步將計(jì)數(shù)器值插入根據(jù)對(duì)稱(chēng)密鑰加密算法的輸出執(zhí)行單向哈什函數(shù)產(chǎn)生的密碼比特流中,將計(jì)數(shù)器值插入其中的密碼比特流轉(zhuǎn)為預(yù)定格式。證實(shí)步的接收步還含從接收的一次性使用密碼中抽取計(jì)數(shù)器值,將抽取步中抽取的計(jì)數(shù)器值與服務(wù)器中的計(jì)數(shù)器值相比,在比較步中計(jì)數(shù)器值不相等時(shí),使計(jì)數(shù)器的計(jì)數(shù)器值相等并將隨機(jī)數(shù)改為與計(jì)數(shù)器值相應(yīng)的一隨機(jī)數(shù)。證實(shí)步的改變隨機(jī)數(shù)的步是將隨機(jī)數(shù)改為一預(yù)定值并將其存入終端。證實(shí)步的轉(zhuǎn)換步含步執(zhí)行單向哈什函數(shù)并將計(jì)數(shù)器值插入輸出密碼比特流中,將計(jì)數(shù)器值插入其中的密碼值轉(zhuǎn)換為一預(yù)定格式。
通過(guò)參考附圖詳細(xì)描述一優(yōu)選實(shí)施方式將更清楚本發(fā)明的上述目的和優(yōu)點(diǎn)。
圖1是根據(jù)本發(fā)明鑒別用戶(hù)的裝置的結(jié)構(gòu)框圖;圖2是第一密碼產(chǎn)生器的詳細(xì)結(jié)構(gòu)框圖;圖3是第二密碼產(chǎn)生器的詳細(xì)結(jié)構(gòu)框圖;圖4是根據(jù)本發(fā)明鑒別用戶(hù)的裝置的整體工作流圖;圖5是服務(wù)初始化處理的流圖;圖6是圖4產(chǎn)生一次性使用密碼的詳細(xì)處理流圖;圖7是證實(shí)用戶(hù)傳至訪(fǎng)問(wèn)提供者的服務(wù)器的密碼的處理流圖。
此后將參考附圖詳細(xì)描述本發(fā)明。參考圖1,一根據(jù)本發(fā)明鑒別用戶(hù)的裝置含一安全保存和攜帶個(gè)人秘密信息的IC卡100,一超小型的便于攜帶的、產(chǎn)生一一次性使用密碼以證實(shí)用戶(hù)的身份并表示電子錢(qián)的帳戶(hù)余額的終端120,鑒別終端120產(chǎn)生的一次性使用密碼并提供服務(wù)的服務(wù)器140。
IC卡100保存用于產(chǎn)生一次性使用密碼的預(yù)定隨機(jī)數(shù)和密鑰。IC卡100含一允許外部訪(fǎng)問(wèn)的公共區(qū)106,一允許外部訪(fǎng)問(wèn)時(shí)需一卡訪(fǎng)問(wèn)密鑰的私有區(qū)108,一保存訪(fǎng)問(wèn)私有區(qū)108時(shí)所需的卡訪(fǎng)問(wèn)密鑰的卡訪(fǎng)問(wèn)密鑰存儲(chǔ)器102,和一將從外部輸入的卡訪(fǎng)問(wèn)密鑰與存于卡訪(fǎng)問(wèn)密鑰存儲(chǔ)器102(作為私有區(qū))的卡訪(fǎng)問(wèn)密鑰相比并判斷是否允許訪(fǎng)問(wèn)內(nèi)部信息的卡訪(fǎng)問(wèn)檢驗(yàn)器104。由于IC卡100的存儲(chǔ)量遠(yuǎn)大于傳統(tǒng)磁卡的存儲(chǔ)量,IC卡100可用作身份證或電子錢(qián)和保存用戶(hù)不能記住的許多信息。此外由于讀取存在IC卡中的數(shù)據(jù)時(shí)需要IC卡100的卡訪(fǎng)問(wèn)密鑰,即使用戶(hù)誤放了IC卡其他人也不能輕易獲得用戶(hù)的個(gè)人信息。
終端120用于接收IC卡100并產(chǎn)生一次性使用密碼。終端120含一卡接收器121,一隨機(jī)數(shù)存儲(chǔ)器122,一第一密碼產(chǎn)生器123,一第一隨機(jī)數(shù)改變器124,一顯示器125,一查詢(xún)部分126,一計(jì)數(shù)器存儲(chǔ)器127,和一計(jì)數(shù)器改變器128。
卡接收器121有一接收IC卡100的槽并與IC卡100接口。當(dāng)IC卡100初始輸入至卡接收器121時(shí)隨機(jī)數(shù)存儲(chǔ)器122讀取存于IC卡100的隨機(jī)數(shù),保存隨機(jī)數(shù)并刪除存于IC卡100該隨機(jī)數(shù)。
第一密碼產(chǎn)生器123用于讀取IC卡100的密鑰和存于隨機(jī)數(shù)保存部分122的隨機(jī)數(shù),用一預(yù)定方法產(chǎn)生一次性使用密碼。如圖2所示,第一密碼產(chǎn)生器123含一對(duì)稱(chēng)密鑰加密部分200,一哈什函數(shù)部分210,及一第一格式轉(zhuǎn)換部分220。對(duì)稱(chēng)密鑰加密部分200讀取IC卡100的密鑰和存于隨機(jī)數(shù)保存部分122的隨機(jī)數(shù),用一對(duì)稱(chēng)密鑰加密算法產(chǎn)生一密碼。哈什函數(shù)部分210通過(guò)用單向哈什函數(shù)轉(zhuǎn)換對(duì)稱(chēng)密鑰加密部分200產(chǎn)生的密碼來(lái)阻止非法用戶(hù)逆向跟蹤密鑰和隨機(jī)數(shù)。第一格式轉(zhuǎn)換部分220用于將從哈什函數(shù)部分210輸出的密碼比特流轉(zhuǎn)換為用戶(hù)能輕易讀懂的預(yù)定格式。第一格式轉(zhuǎn)換部分220含將計(jì)數(shù)器存儲(chǔ)器127的值插入密碼比特流的計(jì)數(shù)器插入器222,一將從計(jì)數(shù)器插入器222輸出的密碼比特流轉(zhuǎn)換為用戶(hù)能輕易讀懂的預(yù)定格式的格式轉(zhuǎn)換器224。一表示產(chǎn)生多個(gè)一次性使用密碼的算法的協(xié)議的協(xié)議類(lèi)型選擇(PTS)比特能被計(jì)數(shù)器插入器222附加地插入。格式轉(zhuǎn)換器224優(yōu)選地將一二進(jìn)制密碼比特流轉(zhuǎn)換為用戶(hù)能輕易讀懂的十進(jìn)制數(shù)。
在第一密碼產(chǎn)生器123產(chǎn)生了一次性使用密碼后,第一隨機(jī)數(shù)改變器124將存于隨機(jī)數(shù)存儲(chǔ)器122的隨機(jī)數(shù)變?yōu)橐活A(yù)定值并將改變的隨機(jī)數(shù)存入隨機(jī)數(shù)存儲(chǔ)器122。顯示器125用于顯示第一密碼產(chǎn)生器123產(chǎn)生的密碼。推薦使用LCD作為顯示器125。
查詢(xún)部分126表示IC卡100的帳戶(hù)余額和交易記錄。計(jì)數(shù)器存儲(chǔ)器127保存計(jì)數(shù)器值以將終端120與服務(wù)器140同步。無(wú)論何時(shí)產(chǎn)生了一次性使用密碼計(jì)數(shù)器改變器128將計(jì)數(shù)器值變?yōu)橐活A(yù)定值并將值存入計(jì)數(shù)器存儲(chǔ)器127。
服務(wù)器140用于鑒別終端120產(chǎn)生的一次性使用密碼。服務(wù)器140含一密鑰存儲(chǔ)器141,一第二密碼產(chǎn)生器144,一第二隨機(jī)數(shù)改變器143,1密碼接收器142,1密碼證實(shí)器147,一計(jì)數(shù)器存儲(chǔ)器145,一計(jì)數(shù)器改變器146,一計(jì)數(shù)器抽取器148,和一隨機(jī)數(shù)同步器149。
密鑰存儲(chǔ)器141保存分別與初始存于IC卡100的密鑰和預(yù)定隨機(jī)數(shù)一致的密鑰和隨機(jī)數(shù)。
第二密碼產(chǎn)生器144用于讀取存于密鑰存儲(chǔ)器141的密鑰和隨機(jī)數(shù),用與終端120的預(yù)定方法相同的方法產(chǎn)生一次性使用密碼。如圖3所示,第二密碼產(chǎn)生器144含一對(duì)稱(chēng)密鑰加密部分300,一哈什函數(shù)部分310,和一第二格式轉(zhuǎn)換部分320。對(duì)稱(chēng)密鑰加密部分300讀取存于密鑰存儲(chǔ)器141的密鑰和隨機(jī)數(shù),并用一對(duì)稱(chēng)密鑰加密算法產(chǎn)生一密碼。哈什函數(shù)部分310通過(guò)轉(zhuǎn)換在對(duì)稱(chēng)密鑰加密部分300用單向哈什函數(shù)產(chǎn)生的密碼,阻止非法用戶(hù)逆向跟蹤該密鑰和隨機(jī)數(shù)。第二格式轉(zhuǎn)換部分320用于將從哈什函數(shù)部分310輸出的密碼比特流轉(zhuǎn)為一預(yù)定格式。第二格式轉(zhuǎn)換部分320含一將計(jì)數(shù)器存儲(chǔ)器145的計(jì)數(shù)器值插入密碼比特流的計(jì)數(shù)器插入器322,一將從計(jì)數(shù)器插入器322輸出的密碼比特流轉(zhuǎn)為用戶(hù)能輕易讀懂的預(yù)定格式的格式轉(zhuǎn)換器324。格式轉(zhuǎn)換器324優(yōu)選地將一二進(jìn)制比特流轉(zhuǎn)為用戶(hù)能輕易讀懂的十進(jìn)制數(shù)。
第二隨機(jī)數(shù)改變器143使密鑰存儲(chǔ)器141的隨機(jī)數(shù)與終端120的第一隨機(jī)數(shù)改變器124的值相同,在第二密碼產(chǎn)生器144產(chǎn)生了一次性使用密碼后將改變的值存入密鑰存儲(chǔ)器141。密碼接收器142經(jīng)一電話(huà)線(xiàn)或預(yù)定網(wǎng)絡(luò)接收與顯示于終端120的顯示器125的密碼相同的一次性使用密碼。
密碼證實(shí)器147檢驗(yàn)接收的密碼是否與產(chǎn)生的密碼相同,并證實(shí)該一次性使用密碼。計(jì)數(shù)器存儲(chǔ)器145保存用于將終端120與服務(wù)器140同步的計(jì)數(shù)器值。無(wú)論何時(shí)產(chǎn)生了一一次性使用密碼,計(jì)數(shù)器改變器146將計(jì)數(shù)器值變?yōu)橐活A(yù)定值并將它存入計(jì)數(shù)器存儲(chǔ)器145。
計(jì)數(shù)器抽取器148從密碼接收器142接收的一次性使用密碼中抽取計(jì)數(shù)器值,當(dāng)PTS被終端120的計(jì)數(shù)器插入器222插入時(shí)抽取PTS。隨機(jī)數(shù)同步器149檢驗(yàn)計(jì)數(shù)器抽取器148抽取的計(jì)數(shù)器值是否與服務(wù)器140的計(jì)數(shù)器值一致。若不,隨機(jī)數(shù)同步器149根據(jù)被抽取的計(jì)數(shù)器值產(chǎn)生一隨機(jī)數(shù)并將隨機(jī)數(shù)輸入至服務(wù)器140的對(duì)稱(chēng)密鑰加密部分300。
根據(jù)本發(fā)明鑒別一用戶(hù)的裝置的操作及方法,描述如下。在本發(fā)明中,使用了每次鑒別用戶(hù)都被改變的一次性使用密碼。一密鑰,一隨機(jī)數(shù),和一計(jì)數(shù)器作為產(chǎn)生一次性密碼的變量被使用。該用于對(duì)稱(chēng)密鑰加密算法的密鑰作為加密的秘密值使用并存于每個(gè)用戶(hù)的IC卡100中。每次用于產(chǎn)生不同密碼的隨機(jī)數(shù)存于IC卡中,并在初始化服務(wù)器的過(guò)程中被傳至和存入便攜式終端120,并從IC卡中被刪除。將終端120與服務(wù)器140同步的計(jì)數(shù)器被保持在終端120中。用終端120中保持的隨機(jī)數(shù)和計(jì)數(shù)器產(chǎn)生一次性使用密碼。當(dāng)用戶(hù)希望被不同的服務(wù)器鑒別時(shí),需要用于每個(gè)服務(wù)器的IC卡,但僅有一終端。
在產(chǎn)生一次性密碼的一過(guò)程中通過(guò)在密碼中含計(jì)數(shù)器值使終端120和服務(wù)器140同步是可能的。服務(wù)器140從密碼中抽取計(jì)數(shù)器值,該密碼接收自用戶(hù),與終端同步,用與終端共享的密鑰和隨機(jī)數(shù)值產(chǎn)生密碼,并檢測(cè)產(chǎn)生的密碼是否與從用戶(hù)接收的密碼一致。盡管僅終端的計(jì)數(shù)器改變了,容易的將終端與服務(wù)器同步是可能的,并且服務(wù)器的計(jì)數(shù)器不改變而導(dǎo)致用戶(hù)偶然的改變計(jì)數(shù)器值。并且,IC卡能夠要求卡訪(fǎng)問(wèn)密鑰被提交以讀取存于卡的私有區(qū)108中的信息。由于通過(guò)卡訪(fǎng)問(wèn)密鑰僅有一被鑒別過(guò)的用戶(hù)能讀卡的私有區(qū),安全的保存用戶(hù)的私人信息是可能的。
本發(fā)明的操作將被更詳細(xì)的描述。根據(jù)本發(fā)明的用戶(hù)鑒別裝置具有查詢(xún)帳戶(hù)余額和交易細(xì)節(jié),初始化服務(wù)器以產(chǎn)生一一次性使用密碼,產(chǎn)生一次性密碼,和在服務(wù)器中證實(shí)一次性使用密碼的功能。
根據(jù)圖4,在本發(fā)明中,用一次性使用密碼鑒別用戶(hù)按三步進(jìn)行當(dāng)用戶(hù)插IC卡到終端以獲取服務(wù)時(shí)初始化服務(wù)器(步470),在終端中產(chǎn)生一次性使用密碼(步430),及證實(shí)在服務(wù)器中的用戶(hù)密碼(步450)。
用戶(hù)為獲得他或她想要的服務(wù)插IC卡入終端120的卡接收器121(步400)>庇沒(méi)P迦IC卡,終端120的卡接收器判斷IC卡的種類(lèi),并檢驗(yàn)IC卡100是第一次插入,還是被插入一次并在過(guò)去已被初始化(步410)。如果IC卡是第一次插入,將進(jìn)行初始化過(guò)程(步470)。當(dāng)早已被初始化的IC卡被插入時(shí),將決定是否將產(chǎn)生一次性使用密碼(步420)。通常,過(guò)程在僅查詢(xún)帳戶(hù)余額時(shí)結(jié)束(步460)。使用終端的正運(yùn)行的裝置想要被鑒別的用戶(hù)可產(chǎn)生一次性使用密碼(步430)。終端(120)將在初始化過(guò)程時(shí)收到的卡訪(fǎng)問(wèn)密鑰提交給IC卡100,從卡中讀秘密值(對(duì)稱(chēng)加密算法的密鑰),并產(chǎn)生一次性使用密碼(步430)。當(dāng)用戶(hù)將此結(jié)果傳給服務(wù)器140時(shí)(步440),服務(wù)器140證實(shí)它(步450)。
圖5詳細(xì)描述了服務(wù)初始化過(guò)程(步470)。在用戶(hù)第一次將IC卡100插入終端120后(圖4的步400)服務(wù)初始化過(guò)程(步470)用于將卡訪(fǎng)問(wèn)密鑰傳輸至終端,,用于讀取存于IC卡的公共區(qū)域中對(duì)用戶(hù)鑒別是關(guān)鍵的隨機(jī)數(shù)和存于用戶(hù)IC卡的私有區(qū)域中的密鑰,并從公共區(qū)域中刪除隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰。在此時(shí),終端120判斷IC卡100是被第一次插入,并執(zhí)行初始化過(guò)程。終端120讀取存于IC卡100的公共區(qū)域中的隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰(步510),并將它們存入終端120的隨機(jī)數(shù)存儲(chǔ)器122(步520),并從IC卡100的公共區(qū)域中刪除該隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰(步530)。因此,僅密鑰被保存在已初始化了的IC卡的安全私有區(qū)域中。
用于表示帳戶(hù)余額的IC卡的信息對(duì)每個(gè)人是公開(kāi)的。為讀取用于用戶(hù)鑒別的存于私有區(qū)域的密鑰需要卡訪(fǎng)問(wèn)密鑰。在執(zhí)行了服務(wù)初始化過(guò)程以后,IC卡的密鑰僅能被已執(zhí)行了初始化過(guò)程的終端讀取。用戶(hù)可以用一個(gè)終端產(chǎn)生一個(gè)用于多個(gè)服務(wù)的一次性使用密碼。終端給各個(gè)服務(wù)分配了獨(dú)立的存儲(chǔ)空間。鑒別各個(gè)服務(wù)的用戶(hù)所需的信息被保存在存儲(chǔ)空間。
圖6是詳細(xì)說(shuō)明圖4的產(chǎn)生一次性使用密碼的步430的操作。用由IC卡100和服務(wù)器140共享的密鑰(對(duì)稱(chēng)密鑰加密算法的密鑰)并根據(jù)終端120與服務(wù)器140共享的隨機(jī)數(shù)產(chǎn)生一次性使用密碼。當(dāng)用戶(hù)將I大卡插入終端(圖4步400)并命令終端產(chǎn)生一一次性使用密碼時(shí),終端120的第一密碼產(chǎn)生器123的對(duì)稱(chēng)密鑰加密部分200從IC卡100讀取密鑰且從隨機(jī)數(shù)存儲(chǔ)器122讀取隨機(jī)數(shù)和計(jì)數(shù)器值(步610),用一對(duì)稱(chēng)密鑰加密算法從所讀值產(chǎn)生一密碼(步620),并用哈什函數(shù)部分210中的單向哈什函數(shù)計(jì)算產(chǎn)生的二進(jìn)制值(步630)。單向哈什函數(shù)用于阻止試圖非法訪(fǎng)問(wèn)的他人用一次性使用密碼的結(jié)果找到任何關(guān)于秘密值的信息。
由于單向哈什函數(shù)的結(jié)果不能直接用作一次性使用密碼,它被算術(shù)處理轉(zhuǎn)換(步680)。首先用戶(hù)不熟悉的二進(jìn)制結(jié)果值被變?yōu)橛脩?hù)容易使用的十進(jìn)制數(shù)。變?yōu)槭M(jìn)制形式的一次性使用密碼被顯示于顯示器125上(步690)。由于單向哈什函數(shù)輸出的二進(jìn)制數(shù)很大(如多于64比特的二進(jìn)制數(shù)),它須被轉(zhuǎn)為有一定大小的、能被顯示于終端顯示器125上的數(shù)(如在用8個(gè)十進(jìn)制數(shù)作為一次性使用密碼時(shí)用約26比特的二進(jìn)制數(shù))。
轉(zhuǎn)換算法中(步680)使用單向哈什函數(shù)的結(jié)果值,計(jì)數(shù)器值和協(xié)議類(lèi)型選擇(PTS)。為了同步終端120和服務(wù)器140,計(jì)數(shù)器插入器222將PTS和計(jì)數(shù)器值N插入一次性使用密碼的比特流中。如26比特的秘碼可分為單向哈什函數(shù)的結(jié)果區(qū)域和計(jì)數(shù)器值N的區(qū)域和PTS區(qū)域。當(dāng)服務(wù)器將各種產(chǎn)生一次性使用密碼的算法分類(lèi)時(shí),需要PTS。
每次產(chǎn)生一密碼時(shí)計(jì)數(shù)器值N減一(步650)。并檢測(cè)減后的值是否為0(步640)。當(dāng)值為0時(shí),處理返回到初始步。當(dāng)N為0時(shí)隨機(jī)數(shù)通常增一并被初始化。在初始化服務(wù)器的過(guò)程中,從IC卡讀取的、使用的隨機(jī)數(shù)僅用于初始產(chǎn)生密碼,在初始步以后,當(dāng)每次產(chǎn)生密碼時(shí)隨機(jī)數(shù)增一(步650)。當(dāng)計(jì)數(shù)器值N為0時(shí),在密碼產(chǎn)生期間產(chǎn)生的隨機(jī)數(shù)(如對(duì)稱(chēng)密鑰加密算法的結(jié)果)被置成隨機(jī)數(shù)的初始值。通過(guò)將隨機(jī)數(shù)增一來(lái)產(chǎn)生密碼(步650)。當(dāng)計(jì)數(shù)器值N為0時(shí)設(shè)置一新隨機(jī)數(shù)(步660)。在產(chǎn)生一密碼后,將隨機(jī)數(shù)RN和計(jì)數(shù)器值N被記于隨機(jī)數(shù)存儲(chǔ)器122中(步670)。
圖7是證實(shí)用戶(hù)傳至服務(wù)提供者的服務(wù)器140的密碼的處理的流圖。服務(wù)器140經(jīng)密碼接收器142接收用戶(hù)傳來(lái)的一次性使用密碼(步700)。然后,服務(wù)器從通過(guò)計(jì)數(shù)器抽取器148從接收的數(shù)據(jù)比特流中抽取計(jì)數(shù)器值并與終端120同步。服務(wù)器140用與終端相同的方法、用被同步的隨機(jī)數(shù)和密數(shù)來(lái)產(chǎn)生一一次性使用密碼(步720)。因?yàn)楫a(chǎn)生一次性使用密碼的過(guò)程與在終端中相同,省略了相關(guān)的解釋。然后將產(chǎn)生的一次性使用密碼與用戶(hù)產(chǎn)生的一次性使用密碼相比(步730)。若兩密碼一致,就鑒別了用戶(hù)的身份(步770)。
若用戶(hù)傳來(lái)的密碼與服務(wù)器140產(chǎn)生的密碼不一致,它意味著一非法個(gè)人試圖使用該卡,或用戶(hù)的終端120沒(méi)有與服務(wù)器140同步。若合法用戶(hù)傳來(lái)的一次性使用密碼不與服務(wù)器140產(chǎn)生的密碼一致,它意味著用戶(hù)犯了一錯(cuò)誤或終端120的計(jì)數(shù)器值與服務(wù)器140的計(jì)數(shù)器值不一致。即,即使終端120的計(jì)數(shù)器值與服務(wù)器140的計(jì)數(shù)器值一致,當(dāng)兩計(jì)數(shù)器的周期N不同時(shí),由于隨機(jī)數(shù)的差異密碼也可能不同。為補(bǔ)償它,服務(wù)器140增加計(jì)數(shù)器值和隨機(jī)數(shù),計(jì)算密碼并將密碼與用戶(hù)傳來(lái)的密碼以計(jì)數(shù)器的周期單元相比。為計(jì)算N次周期以后的密碼服務(wù)器140不需計(jì)算所有N次的密碼。由于當(dāng)N為0時(shí),僅需一設(shè)置一新隨機(jī)數(shù)的附加計(jì)算,大量的計(jì)算是不必要的(步760)。在第N個(gè)密碼以后密碼與用戶(hù)傳來(lái)的密碼不一致時(shí),第N個(gè)密碼以后的密碼需要被重新計(jì)算。若需要,可判斷需重復(fù)這樣的處理多少次(步740)。若在規(guī)定時(shí)間內(nèi)用戶(hù)傳來(lái)的密碼與服務(wù)器的密碼不一致,它判斷是一非法個(gè)人的企圖并拒絕服務(wù)(步750)。
如上述,能通過(guò)額外使用用戶(hù)記住的用于用戶(hù)鑒別的密碼來(lái)增加安全等級(jí),其中僅使用用戶(hù)的IC卡100和便攜式終端120。若用戶(hù)誤放了IC卡100和終端120,一個(gè)知道用戶(hù)個(gè)人信息的人可通過(guò)獲得它們而被鑒別。若將證實(shí)僅被用戶(hù)記住的密碼的過(guò)程加入到本鑒別系統(tǒng),可得到一更安全的用戶(hù)鑒別。即,為被確認(rèn)為一合法用戶(hù),用戶(hù)應(yīng)擁有僅被用戶(hù)記住的密碼,僅用戶(hù)擁有的IC卡,產(chǎn)生一次性使用密碼的便攜式終端。
如上述,用戶(hù)使用終端來(lái)產(chǎn)生一次性使用密碼。終端中存有對(duì)每個(gè)用戶(hù)獨(dú)特的用于產(chǎn)生不同的一次性使用密碼的密鑰。該密鑰應(yīng)包含于服務(wù)器中以證實(shí)用戶(hù)傳來(lái)的一次性使用密碼。此處,該密鑰可被工廠(chǎng)在制造時(shí)插入終端中。然而,推薦當(dāng)一服務(wù)提供者執(zhí)行了終端的一用戶(hù)登記以后才將該密鑰插入終端中。服務(wù)提供者為終端產(chǎn)生一密鑰,將其通過(guò)IC卡插入終端并將它登記在服務(wù)器中。
這樣做,當(dāng)制造終端時(shí)無(wú)需額外的插入密鑰的過(guò)程。因此,當(dāng)在工廠(chǎng)中批量生產(chǎn)終端時(shí)可提高成品率。此外,僅被服務(wù)提供者知道的用于用戶(hù)鑒別的密鑰是安全的且不會(huì)泄密。此處,終端制造者或服務(wù)提供者在提供給用戶(hù)以前不必預(yù)先建構(gòu)終端。
本發(fā)明中,通過(guò)使用每次鑒別一用戶(hù)時(shí)就改變的一次性使用密碼提高了安全等級(jí)。
本發(fā)明中,由于僅當(dāng)用戶(hù)擁有的IC卡100與用戶(hù)擁有的終端120一致時(shí)才產(chǎn)生一正確的一次性使用密碼,其安全等級(jí)遠(yuǎn)高于傳統(tǒng)用戶(hù)鑒別方法的安全等級(jí),這樣即使一非法用戶(hù)得到一合法用戶(hù)的終端或IC卡,他或她也不能產(chǎn)生正確的密碼。此外,由于在鑒別用戶(hù)的過(guò)程中加入了證實(shí)僅由用戶(hù)記住的密碼的過(guò)程,密碼,IC卡,產(chǎn)生用戶(hù)密碼的終端是確認(rèn)一合法用戶(hù)的基本條件。
本發(fā)明中,由于用戶(hù)使用他或她的IC卡和便攜式終端來(lái)產(chǎn)生一次性使用密碼,且設(shè)置一個(gè)讀取存于該IC卡的信息和保存用戶(hù)的個(gè)人信息的卡訪(fǎng)問(wèn)密鑰,阻止了私人信息的被曝光,且由一終端產(chǎn)生用于多種服務(wù)的一次性使用密碼。
采用了用于產(chǎn)生一次性使用密碼的隨機(jī)數(shù)和用于將用戶(hù)的終端與服務(wù)提供者的服務(wù)器同步的計(jì)數(shù)器,作為在一傳統(tǒng)的鑒別用戶(hù)的系統(tǒng)中的一軟件,本發(fā)明是易于實(shí)現(xiàn)的。因此,有可能在性?xún)r(jià)比上增強(qiáng)用戶(hù)的鑒別而不增加服務(wù)提供者的額外花費(fèi)。
本發(fā)明中的鑒別用戶(hù)的裝置及其方法可以用于任何需要鑒別用戶(hù)的地方,如電話(huà)銀行,家庭購(gòu)物和使用PC的銀行,一個(gè)付帳的PC通信,和一個(gè)網(wǎng)絡(luò)服務(wù)。特別地,用戶(hù)不需要直接去服務(wù)提供者那兒進(jìn)行一服務(wù)登記。用戶(hù)從一個(gè)服務(wù)提供者那兒申請(qǐng)一服務(wù),通過(guò)郵件從服務(wù)提供者那兒接收一個(gè)IC卡,從一個(gè)商店獲得一個(gè)終端,并被安全確認(rèn)。在用戶(hù)訪(fǎng)問(wèn)服務(wù)提供者很困難的情形下,這是很方便的。此外,服務(wù)提供者不需要面對(duì)許多用戶(hù)以進(jìn)行大批收發(fā)業(yè)務(wù)。
本發(fā)明中使用的終端能產(chǎn)生一次性使用密碼并表示一個(gè)通用IC卡中的電子錢(qián)的帳戶(hù)余額和交易記錄。考慮到電子錢(qián)的使用將迅速地普及,本發(fā)明的終端是非常有用的。
權(quán)利要求
1.一個(gè)鑒別一個(gè)用戶(hù)的裝置,含一個(gè)用于保存用來(lái)產(chǎn)生一個(gè)一次性使用密碼和預(yù)定隨機(jī)數(shù)的密鑰的集成電路(IC)卡;一個(gè)用所述IC卡作為一輸入產(chǎn)生一個(gè)一次性使用密碼的終端;和一個(gè)用于鑒別由所述終端產(chǎn)生的一次性使用密碼的服務(wù)器,其中所述終端含一個(gè)卡接收器,用于接收并與所述IC卡接口,并判斷所述IC卡是否是第一次輸入;一個(gè)隨機(jī)數(shù)存儲(chǔ)器,當(dāng)所述IC卡被第一次插入所述卡接收器時(shí),用于讀取并保存,然后刪除所述IC卡中的隨機(jī)數(shù);一個(gè)第一密碼產(chǎn)生器,通過(guò)讀取存于所述IC卡的密鑰和存于所述隨機(jī)數(shù)存儲(chǔ)器中的隨機(jī)數(shù)來(lái)產(chǎn)生一個(gè)一次性使用密碼;一個(gè)第一隨機(jī)數(shù)改變器,當(dāng)一次性使用密碼被所述第一密碼產(chǎn)生器產(chǎn)生時(shí),將存于所述隨機(jī)數(shù)存儲(chǔ)器中的隨機(jī)數(shù)變?yōu)橐粋€(gè)預(yù)定值,并將被改變的值存入所述隨機(jī)數(shù)存儲(chǔ)器中;和一個(gè)顯示器,用于顯示所述終端和所述服務(wù)器的處理結(jié)果,和其中所述服務(wù)器含一個(gè)密鑰存儲(chǔ)器,用于保存與初始時(shí)存于所述IC卡的密鑰和一個(gè)預(yù)定值相一致的一個(gè)密鑰和一個(gè)預(yù)定值;一個(gè)第二密碼產(chǎn)生器,用于讀取存于所述密鑰存儲(chǔ)器的密鑰和隨機(jī)數(shù),并用與所述終端使用的相同方法來(lái)產(chǎn)生一個(gè)一次性使用密碼;一個(gè)第二隨機(jī)數(shù)改變器,當(dāng)一次性使用密碼被所述第二密碼產(chǎn)生器產(chǎn)生時(shí),將存于所述密鑰存儲(chǔ)器中的隨機(jī)數(shù)變?yōu)橐粋€(gè)與所述終端中的隨機(jī)數(shù)改變器相一致的數(shù),并將被改變的值存入所述密鑰存儲(chǔ)器中;一個(gè)密碼接收器,用于經(jīng)一電話(huà)線(xiàn)或一個(gè)網(wǎng)絡(luò)接收所述終端產(chǎn)生的一次性使用密碼;和一個(gè)密碼證實(shí)器,用于證實(shí)所述接收的密碼是否與所述產(chǎn)生的密碼一致。
2.如權(quán)利要求1的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中所述IC卡被用作一個(gè)身份證卡和電子錢(qián),并安全地保存一個(gè)用于鑒別一個(gè)用戶(hù)的密碼值。
3.如權(quán)利要求1的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中在一個(gè)用戶(hù)登記期間,所述終端的密鑰被一個(gè)服務(wù)提供者初始插入所述終端。
4.如權(quán)利要求1的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中所述IC卡還含;一個(gè)卡訪(fǎng)問(wèn)密鑰存儲(chǔ)器,該存儲(chǔ)器含一訪(fǎng)問(wèn)被無(wú)條件允許的公共區(qū)域,和一個(gè)為允許從外部的訪(fǎng)問(wèn)時(shí)需要一個(gè)卡訪(fǎng)問(wèn)密鑰的私有區(qū),以安全地保存訪(fǎng)問(wèn)所述私有區(qū)所需的一個(gè)卡訪(fǎng)問(wèn)密鑰;和一個(gè)卡訪(fǎng)問(wèn)檢驗(yàn)器,通過(guò)將從外部輸入的所述卡訪(fǎng)問(wèn)密鑰與存于所述卡訪(fǎng)問(wèn)密鑰存儲(chǔ)器中的卡訪(fǎng)問(wèn)密鑰相比,判斷是否應(yīng)該允許對(duì)內(nèi)部信息的訪(fǎng)問(wèn),和其中當(dāng)所述IC卡被第一次插入所述卡接收器時(shí),所述終端的隨機(jī)數(shù)存儲(chǔ)器讀取所述IC卡的隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰,并保存它們,并從所述IC卡的公共區(qū)域中刪除隨機(jī)數(shù)和卡訪(fǎng)問(wèn)密鑰。
5.如權(quán)利要求1的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中所述終端還含一個(gè)查詢(xún)所述IC卡中的帳戶(hù)余額和交易記錄的查詢(xún)部分。
6.如權(quán)利要求4的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中所述終端的第一密碼產(chǎn)生部分含一個(gè)對(duì)稱(chēng)密鑰加密部分,用于讀取所述IC卡的密鑰和所述隨機(jī)數(shù)存儲(chǔ)器的隨機(jī)數(shù),并采用一個(gè)對(duì)稱(chēng)密鑰加密算法產(chǎn)生一個(gè)密碼;一個(gè)哈什函數(shù)部分,使用一個(gè)單向哈什函數(shù)轉(zhuǎn)換所述對(duì)稱(chēng)密鑰加密部分產(chǎn)生的密碼,以阻止逆向跟蹤所述密鑰;和一個(gè)格式轉(zhuǎn)換器,用于將從所述哈什函數(shù)部分輸出的密碼轉(zhuǎn)為一個(gè)預(yù)定格式,和其中所述服務(wù)器的第二密碼產(chǎn)生部分含一個(gè)對(duì)稱(chēng)密鑰加密部分,用于讀取存于所述密鑰保存部分的密鑰和隨機(jī)數(shù),并采用一個(gè)對(duì)稱(chēng)密鑰加密算法產(chǎn)生一個(gè)密碼;一個(gè)哈什函數(shù)部分,使用一個(gè)單向哈什函數(shù)阻止逆向跟蹤所述對(duì)稱(chēng)密鑰加密部分產(chǎn)生的密鑰;和一個(gè)格式轉(zhuǎn)換器,用于將從所述哈什函數(shù)部分輸出的密碼轉(zhuǎn)為一個(gè)預(yù)定格式。
7.如權(quán)利要求6的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中所述終端和服務(wù)器還含一個(gè)用于保存將所述終端與所述服務(wù)器同步的一個(gè)計(jì)數(shù)器值的計(jì)數(shù)器存儲(chǔ)器;和一個(gè)計(jì)數(shù)器改變器,無(wú)論何時(shí)產(chǎn)生了一個(gè)一次性使用密碼,它用于將所述計(jì)數(shù)器值變?yōu)橐粋€(gè)預(yù)定值,并將該新值存入所述計(jì)數(shù)器存儲(chǔ)器中,其中所述第一密碼產(chǎn)生器的格式轉(zhuǎn)換器和所述第二密碼產(chǎn)生器的格式轉(zhuǎn)換器還含一個(gè)將所述計(jì)數(shù)器存儲(chǔ)器的計(jì)數(shù)器值插入從所述哈什函數(shù)部分輸出的密碼比特流中的計(jì)數(shù)器插入器,和其中所述服務(wù)器還含一個(gè)計(jì)數(shù)器抽取器,用于從所述密碼接收器接收的一次性使用密碼中抽取一個(gè)計(jì)數(shù)器值;和一個(gè)隨機(jī)數(shù)同步器,在所述抽取器抽取的計(jì)數(shù)器值與所述服務(wù)器的計(jì)數(shù)器值不一致時(shí),產(chǎn)生相應(yīng)于所述被抽取的計(jì)數(shù)器值的一個(gè)隨機(jī)數(shù),并將它輸入至所述服務(wù)器的對(duì)稱(chēng)密鑰加密部分。
8.如權(quán)利要求7的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中格式轉(zhuǎn)換器將一個(gè)二進(jìn)制數(shù)變?yōu)橐粋€(gè)十進(jìn)制數(shù)。
9.如權(quán)利要求7的用于鑒別一個(gè)用戶(hù)的一個(gè)裝置,其中所述終端和所述服務(wù)器的計(jì)數(shù)器插入器每個(gè)還附加地插入一個(gè)表示產(chǎn)生多于一個(gè)一次性使用密碼的算法的協(xié)議的比特PTS,所述服務(wù)器的計(jì)數(shù)器抽取器還抽取所述PTS比特,且第一和第二密碼產(chǎn)生器還根據(jù)所述PTS的信息使用一個(gè)產(chǎn)生一次性使用密碼的算法產(chǎn)生一個(gè)一次性使用密碼。
10.使用一個(gè)用戶(hù)鑒別裝置來(lái)鑒別一個(gè)用戶(hù)的一個(gè)方法,含一個(gè)保存一個(gè)預(yù)定隨機(jī)數(shù)的IC卡和產(chǎn)生一個(gè)一次性使用密碼的一個(gè)密鑰,用所述IC卡作為輸入產(chǎn)生一個(gè)一次性使用密碼的一個(gè)終端,用于保存與所述IC卡中的密鑰和隨機(jī)數(shù)相一致的密鑰和隨機(jī)數(shù),并鑒別所述終端產(chǎn)生的一次性使用密碼的服務(wù)器,用戶(hù)鑒別方法含步將所述IC卡插入所述終端;判斷是否是第一次將所述IC卡插入所述終端;當(dāng)所述IC卡是第一次被插入時(shí),初始化一個(gè)預(yù)定服務(wù)并產(chǎn)生一個(gè)一次性使用密碼,當(dāng)所述IC卡不是第一次被插入時(shí),則產(chǎn)生一個(gè)一次性使用密碼;和經(jīng)一個(gè)預(yù)定通信媒質(zhì)接收所述終端產(chǎn)生的一個(gè)一次性使用密碼,并證實(shí)所述一次性使用密碼,其中在所述密碼產(chǎn)生的步驟期間,所述初始化一個(gè)服務(wù)的步含步讀取所述IC卡中的隨機(jī)數(shù)并將它存入所述終端中;和從所述IC卡中刪除該隨機(jī)數(shù),其中在所述密碼產(chǎn)生的步驟期間,所述產(chǎn)生一個(gè)一次性使用密碼的步含步(a)讀取所述IC卡的密鑰和存于所述終端的隨機(jī)數(shù);(b)用所述密鑰和隨機(jī)數(shù)作為輸入執(zhí)行一個(gè)對(duì)稱(chēng)密鑰加密算法;(c)根據(jù)從所述對(duì)稱(chēng)密鑰加密算法輸出的值執(zhí)行一個(gè)單向哈什函數(shù);(d)將所述隨機(jī)數(shù)變?yōu)橐粋€(gè)預(yù)定值并將它存入所述終端;和(e)將所述單向哈什函數(shù)的輸出變?yōu)橐粋€(gè)預(yù)定格式,和其中所述證實(shí)步含步經(jīng)一個(gè)預(yù)定通信媒質(zhì)接收所述終端產(chǎn)生的一個(gè)一次性使用密碼;讀取存于所述服務(wù)器的密鑰和隨機(jī)數(shù);用所述密鑰和所述隨機(jī)數(shù)作為輸入執(zhí)行一個(gè)對(duì)稱(chēng)密鑰加密算法;根據(jù)從所述對(duì)稱(chēng)密鑰加密算法輸出的值執(zhí)行一個(gè)單向哈什函數(shù);將所述隨機(jī)數(shù)變?yōu)橐粋€(gè)預(yù)定值并將它存入所述終端;和將所述單向哈什函數(shù)的輸出變?yōu)橐粋€(gè)預(yù)定格式,和若所述預(yù)定格式與所述接收的一次性使用密碼相同,則確認(rèn)一個(gè)用戶(hù),若不同則不確認(rèn)該用戶(hù)。
11.如權(quán)利要求10的鑒別一個(gè)用戶(hù)的方法,當(dāng)所述IC卡還含一個(gè)服務(wù)一個(gè)私有區(qū)時(shí)所需的卡訪(fǎng)問(wèn)密鑰時(shí),其中在所述密碼產(chǎn)生步驟期間初始化一個(gè)服務(wù)含步從所述IC卡的公共區(qū)域中讀取用于允許對(duì)隨機(jī)數(shù)和私有區(qū)域進(jìn)行訪(fǎng)問(wèn)的隨機(jī)數(shù)和一個(gè)卡訪(fǎng)問(wèn)密鑰,并將它們存入所述終端;和從所述IC卡的公共區(qū)域中刪除所述隨機(jī)數(shù)和所述卡訪(fǎng)問(wèn)密鑰,和其中在所述密碼產(chǎn)生步驟期間讀取所述IC卡的密碼的所述步(a)含步將存于所述終端的卡訪(fǎng)問(wèn)密鑰輸入至所述IC卡;檢驗(yàn)輸入至所述IC卡的卡訪(fǎng)問(wèn)密鑰是否與所述IC卡的私有區(qū)中的卡訪(fǎng)問(wèn)密鑰相同,若它們相同,則允許對(duì)卡的訪(fǎng)問(wèn);和在所述檢驗(yàn)卡訪(fǎng)問(wèn)密鑰的步驟期間,當(dāng)允許訪(fǎng)問(wèn)時(shí)讀取所述IC卡的密鑰。
12.如權(quán)利要求11的鑒別一個(gè)用戶(hù)的方法,當(dāng)所述終端和所述服務(wù)器每個(gè)還含將終端與服務(wù)器同步的計(jì)數(shù)器時(shí),其中在所述密碼產(chǎn)生步驟期間產(chǎn)生一個(gè)一次性使用密碼的所述步(d)含步將所述隨機(jī)數(shù)和所述計(jì)數(shù)器值變?yōu)轭A(yù)定值,并將它們存入終端,其中在所述密碼產(chǎn)生步驟期間產(chǎn)生一個(gè)一次性使用密碼的所述步(e)含步將所述計(jì)數(shù)器值插入一個(gè)根據(jù)所述對(duì)稱(chēng)密鑰加密算法輸出的值執(zhí)行一個(gè)單向哈什函數(shù)的所述步(c)產(chǎn)生的一個(gè)密碼比特流;和將所述計(jì)數(shù)器值插入其中的密碼比特流轉(zhuǎn)為一個(gè)預(yù)定格式,其中所述證實(shí)步的所述接收步還含步從接收的一次性使用密碼中抽取一個(gè)計(jì)數(shù)器值;將在所述抽取步中抽取的計(jì)數(shù)器值與所述服務(wù)器的計(jì)數(shù)器值相比;和在所述比較步驟中計(jì)數(shù)器值不相等的情況下,使所述計(jì)數(shù)器的計(jì)數(shù)器值相等,并將所述隨機(jī)數(shù)變?yōu)橐粋€(gè)與所述計(jì)數(shù)器值相應(yīng)的隨機(jī)數(shù),其中所述證實(shí)步的改變所述隨機(jī)數(shù)的所述步用于將所述隨機(jī)數(shù)變?yōu)橐粋€(gè)預(yù)定值并將它存入終端,和所述證實(shí)步的轉(zhuǎn)換步含步執(zhí)行所述單向哈什函數(shù)并將所述計(jì)數(shù)器值插入輸出密碼比特流;和將所述計(jì)數(shù)器值插入其中的密碼值變?yōu)橐粋€(gè)預(yù)定格式。
全文摘要
鑒別用戶(hù)的裝置及方法。該裝置含一個(gè)集成電路(IC)卡,一個(gè)卡接收器,一個(gè)隨機(jī)數(shù)存儲(chǔ)器,一個(gè)第一密碼產(chǎn)生器,一個(gè)第一隨機(jī)數(shù)改變器,一個(gè)處理結(jié)果顯示器,一個(gè)終端,一個(gè)密鑰存儲(chǔ)器,一個(gè)第二密碼產(chǎn)生器,一個(gè)第二隨機(jī)數(shù)改變器,一個(gè)密碼接收器,一個(gè)密碼證實(shí)器,和一個(gè)服務(wù)器。通過(guò)使用每次用戶(hù)被鑒別時(shí)都被更改的一次性使用密碼可以提高安全等級(jí),并通過(guò)使用單個(gè)終端來(lái)產(chǎn)生用于多種服務(wù)的一次性使用密碼可以節(jié)省花費(fèi)。
文檔編號(hào)G07F7/10GK1181560SQ97120040
公開(kāi)日1998年5月13日 申請(qǐng)日期1997年10月5日 優(yōu)先權(quán)日1996年10月5日
發(fā)明者柳周烈, 鄭鎬碩, 文焞一 申請(qǐng)人:三星電子株式會(huì)社