專利名稱:驗(yàn)證裝置、便攜終端和驗(yàn)證方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種可訪問(wèn)便攜終端具備的IC卡的程序的驗(yàn)證技術(shù)。
背景技術(shù):
近年來(lái),作為實(shí)現(xiàn)普適計(jì)算(Ubiquitous Computing)的手段之一,正推進(jìn)TRON(The Real-time Operating system Nucleus,實(shí)時(shí)操作系統(tǒng)核心)的開(kāi)發(fā)。提出了如下技術(shù),即在內(nèi)置了e-TRON卡等IC(IntegratedCircuit,集成電路)卡的便攜終端中,當(dāng)在終端間傳遞電子票據(jù)等電子權(quán)利價(jià)值(下面記作“電子價(jià)值”。)時(shí),在雙方的IC卡之間直接進(jìn)行電子價(jià)值的收發(fā)。作為將這種技術(shù)應(yīng)用于不完善的電子價(jià)值收費(fèi)中的系統(tǒng)實(shí)例,在日本特開(kāi)2003-337887號(hào)公報(bào)中公開(kāi)了確保高安全性與簡(jiǎn)易性的電子價(jià)值收費(fèi)系統(tǒng)。
為了實(shí)現(xiàn)這種系統(tǒng),提出了如下方式,即內(nèi)置于便攜終端中的IC卡、與同樣存儲(chǔ)在便攜終端中的程序(以下記作“終端程序”。)通過(guò)相互進(jìn)行消息的收發(fā),而協(xié)同地動(dòng)作。在這種方式中,終端程序通過(guò)向設(shè)置在便攜終端上的庫(kù)提供預(yù)定形式的消息,從而向IC卡或其它終端程序發(fā)送消息。所謂預(yù)定形式的消息例如是發(fā)送源ID(src)、發(fā)送目的地ID(dst)、消息的類別(mtype)、消息的內(nèi)容(param)。
上述方式未提及IC卡驗(yàn)證終端程序的手段,即消除不正當(dāng)用戶經(jīng)由終端程序來(lái)利用IC卡的擔(dān)心的手段。但是,對(duì)于這種擔(dān)心,如果終端程序是單一的,則與ISO7816-4的外部驗(yàn)證(EXTERNAL AUTHENTICATION)指令等一樣,通過(guò)與現(xiàn)有的外部驗(yàn)證方式組合來(lái)解決。即,在IC卡中預(yù)先保存正規(guī)終端程序所保存的秘密信息,通過(guò)使用例如哈希函數(shù)的驗(yàn)證,來(lái)限制可利用該IC卡的終端程序(或其用戶)。
上述驗(yàn)證方法對(duì)單一的終端程序是有效的,但在便攜終端上執(zhí)行多個(gè)程序的環(huán)境下,未必安全。即,若多個(gè)終端程序中的任一個(gè)驗(yàn)證成功、而該驗(yàn)證成功的程序存在于便攜終端內(nèi),則即使除此之外的終端程序未驗(yàn)證成功,也存在被全部程序利用IC卡的功能的可能性。
發(fā)明內(nèi)容
因此,本發(fā)明的課題在于,在與終端程序之間進(jìn)行消息發(fā)送的IC卡中,通過(guò)針對(duì)每個(gè)終端程序單獨(dú)管理是否驗(yàn)證成功,提高IC卡的安全性。
本發(fā)明的驗(yàn)證裝置具備隨機(jī)數(shù)生成單元,當(dāng)接收到具有第1類別的消息時(shí),其生成隨機(jī)數(shù),并將包含于該消息中的發(fā)送源與該隨機(jī)數(shù)對(duì)應(yīng)起來(lái)存儲(chǔ);發(fā)送源驗(yàn)證單元,當(dāng)從所述發(fā)送源接收到具有第2類別的消息時(shí),在存儲(chǔ)有與該發(fā)送源對(duì)應(yīng)的所述隨機(jī)數(shù)的情況下,判定根據(jù)本驗(yàn)證裝置所保存的驗(yàn)證密鑰與所述隨機(jī)數(shù)而算出的值、和包含于所述具有第2類別的消息中的值(例如包含于消息內(nèi)容中的值)是否一致;和處理執(zhí)行單元,在通過(guò)所述發(fā)送源驗(yàn)證單元判定為所述算出的值、和包含于所述消息中的值一致的情況下,當(dāng)從所述發(fā)送源接收到具有第3類別的消息時(shí),其執(zhí)行與該消息的類別對(duì)應(yīng)的處理。
本發(fā)明的驗(yàn)證方法包含如下步驟在接收到具有第1類別的消息時(shí),生成隨機(jī)數(shù),并將包含于該消息中的發(fā)送源與該隨機(jī)數(shù)對(duì)應(yīng)起來(lái)存儲(chǔ);當(dāng)從所述發(fā)送源接收到具有第2類別的消息時(shí),在存儲(chǔ)有與該發(fā)送源對(duì)應(yīng)的所述隨機(jī)數(shù)的情況下,判定根據(jù)本驗(yàn)證裝置保存的驗(yàn)證密鑰與所述隨機(jī)數(shù)而算出的值、和包含于所述具有第2類別的消息中的值是否一致;和在判定為所述算出的值、和包含于所述消息中的值一致的情況下,當(dāng)從所述發(fā)送源接收到具有第3類別的消息時(shí),執(zhí)行與該消息的類別對(duì)應(yīng)的處理。
根據(jù)這些發(fā)明,驗(yàn)證裝置對(duì)每個(gè)消息發(fā)送源單獨(dú)生成隨機(jī)數(shù),并根據(jù)使用該隨機(jī)數(shù)與驗(yàn)證密鑰而算出的值,執(zhí)行發(fā)送源的驗(yàn)證。由此,實(shí)現(xiàn)消息的發(fā)送源識(shí)別符單位的驗(yàn)證,進(jìn)而實(shí)現(xiàn)發(fā)送源單位的單獨(dú)驗(yàn)證。因此,即便在驗(yàn)證裝置上可執(zhí)行多個(gè)程序的環(huán)境下,也可避免象以往那樣,隨著一個(gè)程序的驗(yàn)證成功、其它不正當(dāng)程序也被肯定驗(yàn)證的擔(dān)心。結(jié)果,提高驗(yàn)證裝置的安全性等級(jí)。
這里,驗(yàn)證裝置例如是IC卡。所謂發(fā)送源例如是終端程序,但也可以是在便攜終端的外部。另外,發(fā)送源也可以是IC卡。
在上述驗(yàn)證裝置是IC卡、上述發(fā)送源是終端程序的情況下,同一便攜終端可具備可相互進(jìn)行消息的通信的IC卡與終端程序。當(dāng)便攜終端具備多個(gè)終端程序時(shí),該便攜終端可采用如下結(jié)構(gòu)。即,便攜終端具備IC卡作為上述驗(yàn)證裝置,還具備對(duì)該IC卡發(fā)送具有所述第1至第3類別的消息的多個(gè)終端程序,所述IC卡根據(jù)所述消息,對(duì)每個(gè)終端程序單獨(dú)進(jìn)行隨機(jī)數(shù)的生成、發(fā)送源的驗(yàn)證、處理的執(zhí)行。利用具有這種結(jié)構(gòu)的便攜終端,在便攜終端內(nèi),IC卡可針對(duì)每個(gè)終端程序單獨(dú)管理驗(yàn)證是否成功,所以可實(shí)現(xiàn)排除了不正當(dāng)程序?qū)C卡的利用的安全性的提高。
優(yōu)選本發(fā)明的驗(yàn)證裝置還具備存儲(chǔ)單元,其以賦予順序的方式存儲(chǔ)預(yù)定數(shù)量的驗(yàn)證成功的消息發(fā)送源的識(shí)別符;和存儲(chǔ)控制單元,其在通過(guò)所述發(fā)送源驗(yàn)證單元判定為所述算出的值、和包含于所述消息中的值一致時(shí),使所述發(fā)送源的識(shí)別符存儲(chǔ)在所述存儲(chǔ)單元的開(kāi)頭,在接收到具有所述第3類別的消息時(shí),在所述消息的發(fā)送源的識(shí)別符已存儲(chǔ)在所述存儲(chǔ)單元中的情況下,所述存儲(chǔ)控制單元將該識(shí)別符移動(dòng)到所述存儲(chǔ)單元的開(kāi)頭。
根據(jù)本發(fā)明,發(fā)送消息的時(shí)刻越晚的發(fā)送源的識(shí)別符,被存儲(chǔ)在存儲(chǔ)單元的越開(kāi)頭部分。由此,將消息發(fā)送頻度高的發(fā)送源的識(shí)別符優(yōu)先保存在驗(yàn)證裝置中,可有效管理識(shí)別符。
另外,所述存儲(chǔ)控制單元也可在存儲(chǔ)后的識(shí)別符數(shù)量超過(guò)所述預(yù)定數(shù)量的情況下,刪除所述存儲(chǔ)單元最末尾的識(shí)別符。由此,可將存儲(chǔ)單元中保存的識(shí)別符數(shù)量保持為恒定。結(jié)果,在抑制存儲(chǔ)區(qū)域的數(shù)據(jù)容量的同時(shí),實(shí)現(xiàn)識(shí)別符的有效管理。在可存儲(chǔ)容量有限制的IC卡中,這種數(shù)據(jù)量的抑制特別有效。
并且,所述存儲(chǔ)控制單元也可在存儲(chǔ)后的識(shí)別符數(shù)量超過(guò)所述預(yù)定數(shù)量的情況下,暫時(shí)中斷處理,輸出用于通知該情況的消息。之后,若根據(jù)來(lái)自用戶的指示,刪除或保存識(shí)別符,則用戶可簡(jiǎn)單迅速地把握識(shí)別符數(shù)量超過(guò)上限值的情況,同時(shí),可容易地判斷是否刪除,尤其適合于容易地判斷刪除的對(duì)象。
圖1是表示本發(fā)明的便攜終端的功能結(jié)構(gòu)圖。
圖2是用于說(shuō)明便攜終端執(zhí)行的程序驗(yàn)證處理的第1階段、和第2階段的前半部分的圖。
圖3是用于說(shuō)明便攜終端執(zhí)行的程序驗(yàn)證處理的第2階段的后半部分的圖。
圖4是用于說(shuō)明便攜終端執(zhí)行的程序驗(yàn)證處理的第3階段的圖。
具體實(shí)施例方式
下面,參照為了例示而附加的附圖來(lái)說(shuō)明本發(fā)明的一個(gè)實(shí)施方式。
本實(shí)施方式的便攜終端1如圖1所示,至少具備IC卡2(對(duì)應(yīng)于驗(yàn)證裝置)和程序存儲(chǔ)部3。便攜終端1例如是便攜電話或PDA(PersonalDigital Assistance,個(gè)人數(shù)字助手),但只要是具有通信功能的終端裝置,則不限定其功能或用途。
IC卡2具備消息收發(fā)部21、隨機(jī)數(shù)生成部22(對(duì)應(yīng)于隨機(jī)數(shù)生成單元)、隨機(jī)數(shù)存儲(chǔ)部23、發(fā)送源驗(yàn)證部24(對(duì)應(yīng)于發(fā)送源驗(yàn)證單元)、存儲(chǔ)控制部25(對(duì)應(yīng)于存儲(chǔ)控制單元)、已驗(yàn)證發(fā)送源存儲(chǔ)部26(對(duì)應(yīng)于存儲(chǔ)單元)、處理執(zhí)行部27(對(duì)應(yīng)于處理執(zhí)行單元)。這些各構(gòu)成要素經(jīng)由未圖示的總線而連接成可相互輸入輸出信號(hào)。從確保對(duì)外部程序或裝置的高隱匿性與抗性的觀點(diǎn)來(lái)看,期望IC卡2具有抗篡改性。對(duì)IC卡2分配識(shí)別符i。
消息收發(fā)部21與終端程序31~33之間經(jīng)由總線進(jìn)行各種消息的收發(fā)。消息的細(xì)節(jié)將在后面動(dòng)作說(shuō)明中敘述,但本實(shí)施方式中,包含附圖在內(nèi),接收或發(fā)送的消息均以<發(fā)送源ID、發(fā)送目的地ID、消息類別、消息內(nèi)容>的形式來(lái)表述。另外,消息類別中的“Rn(n為自然數(shù))”表示IC卡2中的處理正常完成。相反,“En(n為自然數(shù))”表示IC卡2中的處理異常結(jié)束。
隨機(jī)數(shù)生成部22以具有類別“1”的消息的接收為契機(jī),生成隨機(jī)數(shù)n。
隨機(jī)數(shù)存儲(chǔ)部23可參照地保存由隨機(jī)數(shù)生成部22生成的隨機(jī)數(shù)n、和與之對(duì)應(yīng)的發(fā)送源ID的組。隨機(jī)數(shù)存儲(chǔ)部23的初始狀態(tài)為表示空狀態(tài)的“null”。
發(fā)送源驗(yàn)證部24保存驗(yàn)證密鑰k。作為驗(yàn)證密鑰k,例如可使用稱為PIN(Personal Identity Number,個(gè)人識(shí)別碼)碼的用戶識(shí)別用密碼。發(fā)送源驗(yàn)證部24在確認(rèn)了與消息發(fā)送源對(duì)應(yīng)的隨機(jī)數(shù)n的存儲(chǔ)后的情況下,以具有類別“2”的消息的接收為契機(jī),進(jìn)行發(fā)送源的驗(yàn)證。在發(fā)送源的驗(yàn)證中,例如可使用SHA-1(SecureHash Algorithm 1,安全哈希算法1)或MD5(Message Digest 5,消息摘要5)這樣的安全的哈希函數(shù)。發(fā)送源驗(yàn)證部24將上述驗(yàn)證密鑰k與上述確認(rèn)了存儲(chǔ)的隨機(jī)數(shù)n代入預(yù)定的哈希函數(shù)H中,生成哈希值,將該值與上述消息的內(nèi)容(例如“m”)相對(duì)照。在對(duì)照的結(jié)果是雙方的值一致的情況下,設(shè)驗(yàn)證成功。將成功的驗(yàn)證結(jié)果通知給存儲(chǔ)控制部25。將失敗的驗(yàn)證結(jié)果通知給發(fā)送源。
存儲(chǔ)控制部25執(zhí)行已驗(yàn)證發(fā)送源存儲(chǔ)部26中的已驗(yàn)證發(fā)送源ID的追加與刪除、或存儲(chǔ)順序的變更。另外,在處理執(zhí)行部27執(zhí)行處理之前,判定已驗(yàn)證發(fā)送源存儲(chǔ)部26的有序列表中有無(wú)發(fā)送源ID。
已驗(yàn)證發(fā)送源存儲(chǔ)部26可更新地保存對(duì)驗(yàn)證成功的發(fā)送源ID賦予了順序的列表。在本實(shí)施方式中,將可存儲(chǔ)在列表中的識(shí)別符數(shù)量的最大值設(shè)為3,將初始狀態(tài)設(shè)為從開(kāi)頭ID起降序地為(a2、a3、a4)。另外,“a4”是除終端程序31~33以外的終端程序的識(shí)別符。
處理執(zhí)行部27以具有類別“3”的消息的接收為契機(jī),執(zhí)行作為該消息的內(nèi)容而保存的“data”的處理。
在程序存儲(chǔ)部3中,存儲(chǔ)有終端程序31~33。終端程序31、32、33均為用于處理包含于消息中的預(yù)定數(shù)據(jù)的應(yīng)用程序,分別具有“a1、a2、a3”的識(shí)別符。
下面,參照?qǐng)D2~圖4,說(shuō)明本實(shí)施方式的便攜終端1的動(dòng)作、一起說(shuō)明構(gòu)成本發(fā)明的驗(yàn)證方法的各步驟。
作為說(shuō)明的前提,便攜終端1正在啟動(dòng)終端程序31、32、33。
當(dāng)便攜終端1的用戶指示利用IC卡2時(shí)(圖2的S1),首先從程序31向IC卡2發(fā)送消息<a1,i,“1”,null>(S2)。“null”如上所述,表示消息內(nèi)容為空數(shù)據(jù)。另外,所謂利用IC卡2例如是在IC卡2的庫(kù)中登錄新的個(gè)人信息(電話號(hào)碼等)的處理、或檢索已有的個(gè)人信息進(jìn)行更新的處理等。
當(dāng)IC卡2接收到上述消息時(shí),確認(rèn)發(fā)送目的地ID是IC卡2的識(shí)別符i,消息類別為“1”(S3)。此時(shí),若消息類別為“1”以外的類別,則中斷處理。
之后,IC卡2通過(guò)隨機(jī)數(shù)生成部22生成隨機(jī)數(shù)n,將該隨機(jī)數(shù)n與作為發(fā)送源ID的“a1”對(duì)應(yīng)起來(lái),存儲(chǔ)在隨機(jī)數(shù)存儲(chǔ)部23中(S4)。由于隨機(jī)數(shù)存儲(chǔ)部23的初始值為“null”,所以該存儲(chǔ)處理的結(jié)果為隨機(jī)數(shù)存儲(chǔ)部23被更新為組(a1,n)。更新后,由消息收發(fā)部21將消息<i,a1,“R1”,n>返回給終端程序31(S5)。
接收到上述消息的終端程序31根據(jù)其類別“R1”,督促用戶輸入驗(yàn)證密鑰,并將該輸入結(jié)果得到的驗(yàn)證密鑰設(shè)為k’(S6)。終端程序31在使用預(yù)定的哈希函數(shù)H算出m=H(k’|n)后(S7),將發(fā)送目的地設(shè)為IC卡2,發(fā)送將該值作為內(nèi)容的消息<a1,i,“2”,m>(S8)。
當(dāng)IC卡2接收到上述消息時(shí),與S3一樣,確認(rèn)發(fā)送目的地ID是IC卡2的識(shí)別符i并確認(rèn)消息類別(S9)。因?yàn)橄㈩悇e是“2”,所以IC卡2在S10執(zhí)行基于該該消息類別的處理。即,IC卡2判定包含于S9中接收到的上述消息中的發(fā)送源ID“a1”是否已存儲(chǔ)在隨機(jī)數(shù)存儲(chǔ)部23中,即終端程序31是否是過(guò)去發(fā)送過(guò)消息的程序(S10)。由發(fā)送源驗(yàn)證部24執(zhí)行該判定。
前進(jìn)到圖3,在已存儲(chǔ)有“a1”的情況下(S10;是),移動(dòng)到后述S12及S12之后的處理。在未存儲(chǔ)的情況下,即檢索失敗的情況下(S10;否),IC卡2向終端程序31返回表示該情況的錯(cuò)誤消息(S11)。該消息利用<i,a1,“E1”,err>來(lái)表述,根據(jù)包含錯(cuò)誤類別“E1”與錯(cuò)誤原因的“err”,可識(shí)別出發(fā)送源a1未注冊(cè)。
在S12中,IC卡2接受發(fā)送源a1已登錄的情況,利用發(fā)送源驗(yàn)證部24從隨機(jī)數(shù)存儲(chǔ)部23取得與發(fā)送源a1對(duì)應(yīng)的隨機(jī)數(shù)n。接著,按如下步驟進(jìn)行發(fā)送源a1的驗(yàn)證。首先,發(fā)送源驗(yàn)證部24將自己保存的驗(yàn)證密鑰k、和S12中取得的發(fā)送源a1的隨機(jī)數(shù)n代入預(yù)定的哈希函數(shù)H中。接著,將作為計(jì)算結(jié)果的哈希值與S8中接收到的消息的內(nèi)容即“m”相對(duì)照,根據(jù)其一致/不一致,確定發(fā)送源a1的驗(yàn)證是否成功(S13)。若一致,則驗(yàn)證成功,若不一致,則驗(yàn)證不成功。
若S6中輸入的驗(yàn)證密鑰k’是正規(guī)的,則在作為發(fā)送源的終端程序31中,使用S5中取得的隨機(jī)數(shù)n理應(yīng)能生成相同的哈希值。因此,只要在上述計(jì)算結(jié)果一致的情況下,就可判斷為發(fā)送源a1、即終端程序31是正規(guī)的程序。
另一方面,在驗(yàn)證失敗的情況下(S13;否),與S11一樣,將表示該情況的錯(cuò)誤消息<i,a1,“E2”,err>從IC卡2發(fā)送給終端程序31(S14)。該情況下,終端程序31根據(jù)錯(cuò)誤類別“E2”和其內(nèi)容“err”,檢測(cè)出驗(yàn)證失敗,結(jié)束程序驗(yàn)證處理。
在S13中驗(yàn)證成功的情況下(S13;是),存儲(chǔ)控制部25在已驗(yàn)證發(fā)送源存儲(chǔ)部26的列表的開(kāi)頭,追加作為已驗(yàn)證的(驗(yàn)證成功的)發(fā)送源的識(shí)別符的“a1”(S15)。已驗(yàn)證發(fā)送源存儲(chǔ)部26的初始狀態(tài)如上所述,為(a2、a3、a4),但可存儲(chǔ)的識(shí)別符的最大值為3。因此,隨著“a1”的追加,從已驗(yàn)證發(fā)送源存儲(chǔ)部26中刪除存儲(chǔ)在最末尾的“a4”,上述列表被更新成(a1、a2、a3)。在更新之后,與S5一樣,將表示已把驗(yàn)證結(jié)果反映到列表中的消息<i,a1,“R2”,null>從消息收發(fā)部21發(fā)送到終端程序31(S16)。
之后,參照?qǐng)D4,說(shuō)明IC卡2實(shí)際執(zhí)行從終端程序31所指示的處理的第3階段。
當(dāng)終端程序31通過(guò)發(fā)送消息<a1,i,“3”,data>,向IC卡2指示處理“data”時(shí)(S17),IC卡2根據(jù)發(fā)送目的地ID,確認(rèn)消息是發(fā)送給本卡的。同時(shí),確認(rèn)消息類別(S18)。
另外,雖然“data”是由與消息類別“3”相對(duì)應(yīng)的處理所處理的任意數(shù)據(jù),但在程序執(zhí)行不伴隨有數(shù)據(jù)處理的情況下,也可以是“null”。
在發(fā)送目的地ID不是“i”的情況下,IC卡2在拋棄該消息之后,中斷處理,但若發(fā)送目的地ID是“i”,則執(zhí)行與消息類別“3”對(duì)應(yīng)的處理。即,S19中,IC卡2通過(guò)存儲(chǔ)控制部25參照已驗(yàn)證發(fā)送源存儲(chǔ)部26的列表,判定有無(wú)作為發(fā)送源ID的“a1”。在列表中不存在“a1”的情況下(S19;否),向作為消息發(fā)送源的終端程序31發(fā)送表示該情況的錯(cuò)誤消息<i,a1,“E3”,err>(S20),結(jié)束一連串的程序驗(yàn)證處理。
在上述判定的結(jié)果為已驗(yàn)證發(fā)送源存儲(chǔ)部26的列表中存在“a1”的情況下(S19;是),存儲(chǔ)控制部25將該“a1”移動(dòng)到該列表的開(kāi)頭(S21)。但是,在本實(shí)施方式中,由于在圖3所示的S15的時(shí)刻已經(jīng)在開(kāi)頭存儲(chǔ)了“a1”,所以“a1”的位置不移動(dòng),仍在開(kāi)頭不變。在執(zhí)行S19的處理的時(shí)刻,在已驗(yàn)證發(fā)送源存儲(chǔ)部26的列表例如是(a2、a3、a1)的情況下,S21的處理結(jié)果為將列表更新為(a1、a2、a3)。
在S22中,處理執(zhí)行部27還執(zhí)行“data“的處理,作為與消息類別“3”對(duì)應(yīng)的處理。在執(zhí)行之后,IC卡2為了通知處理的執(zhí)行已正常完成,由消息收發(fā)部21發(fā)送消息<i,a1,“R3”,ret>(S23)。另外,“ret”表示“data”的處理結(jié)果,有時(shí)也可能是“null”。
對(duì)于終端程序32、33,也可按與終端程序31一樣的處理步驟來(lái)執(zhí)行S17~S23的一連串處理(圖4所示的第3階段)(S24)。
即便在S18中確認(rèn)了發(fā)送目的地ID與消息類別,對(duì)于ID未存儲(chǔ)在已驗(yàn)證發(fā)送源存儲(chǔ)部26中的發(fā)送源程序,仍視為驗(yàn)證未成功的終端程序,不執(zhí)行所指示的處理。IC卡2由此根據(jù)發(fā)送源ID來(lái)個(gè)別地防止驗(yàn)證未成功的終端程序的處理的執(zhí)行,并防患于未然,排除不正當(dāng)程序或用戶利用IC卡2。由此,維持高的安全性。
如上所述,具備IC卡2的便攜終端1對(duì)每個(gè)終端程序31~33進(jìn)行訪問(wèn)驗(yàn)證。即,在便攜終端1的用戶想通過(guò)終端程序31來(lái)利用IC卡2的信息的情況下,必須進(jìn)行基于終端程序31的發(fā)送源驗(yàn)證處理,同樣,在期望基于終端程序32、33的利用的情況下,必須進(jìn)行這些終端程序的獨(dú)立的驗(yàn)證處理。因此,確實(shí)消除了不管終端程序31~33中是否存在不正當(dāng)終端程序都允許該程序的訪問(wèn)這種以往的擔(dān)心。
另外,由作為存儲(chǔ)單元的已驗(yàn)證發(fā)送源存儲(chǔ)部26將驗(yàn)證成功的終端程序ID依次保存在開(kāi)頭,同時(shí),伴隨著該動(dòng)作而刪除驗(yàn)證時(shí)的老的終端程序的ID。因此,IC卡2可優(yōu)先保存驗(yàn)證后使用的可能性高的已驗(yàn)證發(fā)送源ID,同時(shí)將所需數(shù)據(jù)容量抑制為固定量。當(dāng)把發(fā)明應(yīng)用于存儲(chǔ)數(shù)據(jù)容量有限的便攜終端的IC卡時(shí),這種數(shù)據(jù)保存的效率化特別有效。
權(quán)利要求
1.一種驗(yàn)證裝置,其特征在于,具備隨機(jī)數(shù)生成單元,當(dāng)接收到具有第1類別的消息時(shí),其生成隨機(jī)數(shù),并將包含于該消息中的發(fā)送源與該隨機(jī)數(shù)對(duì)應(yīng)起來(lái)存儲(chǔ);發(fā)送源驗(yàn)證單元,當(dāng)從所述發(fā)送源接收到具有第2類別的消息時(shí),在存儲(chǔ)有與該發(fā)送源對(duì)應(yīng)的所述隨機(jī)數(shù)的情況下,判定根據(jù)本驗(yàn)證裝置所保存的驗(yàn)證密鑰與所述隨機(jī)數(shù)而算出的值、和包含于所述具有第2類別的消息中的值是否一致;和處理執(zhí)行單元,在通過(guò)所述發(fā)送源驗(yàn)證單元判定為所述算出的值、和包含于所述消息中的值一致的情況下,當(dāng)從所述發(fā)送源接收到具有第3類別的消息時(shí),其執(zhí)行與該消息的類別對(duì)應(yīng)的處理。
2.根據(jù)權(quán)利要求1所述的驗(yàn)證裝置,其特征在于,還具備存儲(chǔ)單元,其以賦予順序的方式存儲(chǔ)預(yù)定數(shù)量的、驗(yàn)證成功的消息發(fā)送源的識(shí)別符;和存儲(chǔ)控制單元,其在通過(guò)所述發(fā)送源驗(yàn)證單元判定為所述算出的值、和包含于所述消息中的值一致時(shí),使所述發(fā)送源的識(shí)別符存儲(chǔ)在所述存儲(chǔ)單元的開(kāi)頭,在接收到具有所述第3類別的消息時(shí),在所述消息的發(fā)送源的識(shí)別符已存儲(chǔ)在所述存儲(chǔ)單元中的情況下,所述存儲(chǔ)控制單元將該識(shí)別符移動(dòng)到所述存儲(chǔ)單元的開(kāi)頭。
3.一種便攜終端,其特征在于具備IC卡作為權(quán)利要求1所述的驗(yàn)證裝置,還具備多個(gè)終端程序,對(duì)該IC卡發(fā)送具有所述第1~第3類別的消息,所述IC卡根據(jù)所述消息,對(duì)每個(gè)終端程序單獨(dú)進(jìn)行隨機(jī)數(shù)的生成、發(fā)送源的驗(yàn)證、處理的執(zhí)行。
4.一種驗(yàn)證方法,其特征在于,包含如下步驟在接收到具有第1類別的消息時(shí),生成隨機(jī)數(shù),并將包含于該消息中的發(fā)送源與該隨機(jī)數(shù)對(duì)應(yīng)起來(lái)存儲(chǔ);當(dāng)從所述發(fā)送源接收到具有第2類別的消息時(shí),在存儲(chǔ)有與該發(fā)送源對(duì)應(yīng)的所述隨機(jī)數(shù)的情況下,判定根據(jù)本驗(yàn)證裝置保存的驗(yàn)證密鑰與所述隨機(jī)數(shù)而算出的值、和包含于所述具有第2類別的消息中的值是否一致;和在判定為所述算出的值、和包含于所述消息中的值一致的情況下,當(dāng)從所述發(fā)送源接收到具有第3類別的消息時(shí),執(zhí)行與該消息的類別對(duì)應(yīng)的處理。
全文摘要
一種可訪問(wèn)便攜終端具備的IC卡的程序的驗(yàn)證技術(shù)。IC卡(2)具備隨機(jī)數(shù)生成部(22)、發(fā)送源驗(yàn)證部(24)、和處理執(zhí)行部(27)。隨機(jī)數(shù)生成部(22)在接收到類別“1”的消息時(shí),生成隨機(jī)數(shù)n,將包含于該消息中的發(fā)送源(a1)與隨機(jī)數(shù)n對(duì)應(yīng)起來(lái),存儲(chǔ)在隨機(jī)數(shù)存儲(chǔ)部(23)中。發(fā)送源驗(yàn)證部(24)在從發(fā)送源(a1)接收到類別“2”的消息時(shí),在存儲(chǔ)有與發(fā)送源(a1)對(duì)應(yīng)的隨機(jī)數(shù)n的情況下,將根據(jù)IC卡(2)保存的驗(yàn)證密鑰與隨機(jī)數(shù)n而算出的值m、和包含于類別“2”的消息中的值m進(jìn)行對(duì)照。在兩個(gè)值一致的情況下,當(dāng)從發(fā)送源(a1)接收到類別“3”的消息時(shí),處理執(zhí)行部(27)執(zhí)行與該消息的類別對(duì)應(yīng)的處理。
文檔編號(hào)G06K19/10GK1831876SQ20061006796
公開(kāi)日2006年9月13日 申請(qǐng)日期2006年3月10日 優(yōu)先權(quán)日2005年3月11日
發(fā)明者寺田雅之, 森謙作, 石井一彥, 本鄉(xiāng)節(jié)之 申請(qǐng)人:株式會(huì)社Ntt都科摩