專利名稱:便攜式信息記錄裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種便攜式信息記錄裝置,尤其涉及一種具有可根據(jù)需要與外部裝置連接,在與該外部裝置之間,通過進(jìn)行命令及響應(yīng)的信息交換,以用戶數(shù)據(jù)作為記錄對象,在內(nèi)部進(jìn)行記錄的同時(shí)進(jìn)行各種處理功能的便攜式信息記錄裝置。
背景技術(shù):
近年來,隨著半導(dǎo)體電路集成化的發(fā)展,便攜式信息記錄裝置的信息記錄容量也得以飛速提高,尤其是以IC卡為主的內(nèi)置CPU的便攜式信息記錄裝置,今后也將有望能在各個(gè)領(lǐng)域使用。例如,內(nèi)置CPU的IC卡,可以根據(jù)需要,與外部裝置(讀寫裝置)連接,在與該外部裝置之間,通過進(jìn)行命令及響應(yīng)的信息交換執(zhí)行規(guī)定的處理。給予什么樣的命令以及在IC卡內(nèi)部執(zhí)行什么樣的處理,取決于IC卡中安裝的OS(操作系統(tǒng))程序和應(yīng)用程序,因此,通常,在IC卡內(nèi)裝入具有針對每個(gè)用途的處理功能的專用應(yīng)用程序。例如,同一張IC卡,既作為醫(yī)院診斷卡、又作為金融帳戶卡使用時(shí),就要同時(shí)將診斷卡用的應(yīng)用程序和金融帳戶用的應(yīng)用程序兩個(gè)程序裝到該IC卡內(nèi)。因此,最近,IC卡內(nèi)置的存儲(chǔ)器容量也快速增加,因此,事先編入多個(gè)應(yīng)用程序的多用途IC卡已逐漸普及。而且,在卡發(fā)行以后,還能夠根據(jù)需要增加新的應(yīng)用程序,具備此功能的IC卡也正在被廣泛使用。例如,日本專利第1998-79000號公報(bào)披露了一種具有能追加應(yīng)用程序功能的IC卡,用于版本的升級等。
內(nèi)置CPU的便攜式信息記錄裝置的一個(gè)很大的特征在于有高度的安全性。例如,目前普及的一般性的IC卡,將IC卡與外部裝置連接,二者之間在開始交換信息對話期間,執(zhí)行認(rèn)證處理。通常執(zhí)行的認(rèn)證步驟是,接收外部裝置輸出的帶有認(rèn)證數(shù)據(jù)的認(rèn)證命令后,在IC卡內(nèi)部判斷其認(rèn)證數(shù)據(jù)是否正確,將其結(jié)果存入IC卡的內(nèi)部存儲(chǔ)器。根據(jù)外部裝置給出的認(rèn)證數(shù)據(jù),可以獲得各種認(rèn)證結(jié)果,比如只允許讀出IC卡內(nèi)存儲(chǔ)的數(shù)據(jù)、只允許追加新的數(shù)據(jù)、甚至還允許重寫已有的數(shù)據(jù)等。因此,其結(jié)構(gòu)是一般在交換信息對話開始時(shí),執(zhí)行上述認(rèn)證處理,其認(rèn)證結(jié)果存入IC卡內(nèi)的存儲(chǔ)器,在從外部裝置發(fā)出了各種命令時(shí),參考存儲(chǔ)器中保存的認(rèn)證結(jié)果,判斷所發(fā)出的命令是否是可執(zhí)行命令,只有當(dāng)被判定為可執(zhí)行時(shí),才可以執(zhí)行該命令。作為保存認(rèn)證結(jié)果的存儲(chǔ)器,可采用RAM等易失性存儲(chǔ)器,一次交換信息對話結(jié)束,在與外部裝置斷開時(shí),認(rèn)證結(jié)果就從IC卡內(nèi)消失。這樣,由于需要在每次交換信息對話時(shí)進(jìn)行認(rèn)證處理,因此,即使IC卡丟失,也能完全保證其安全性。
如上所述,具有代表性的IC卡內(nèi)置CPU的便攜式信息記錄裝置,通常的結(jié)構(gòu)是對應(yīng)不同的用途,安裝多個(gè)應(yīng)用程序。根據(jù)預(yù)測,今后的發(fā)展趨勢是在一張便攜式信息記錄裝置上編入的應(yīng)用程序的數(shù)量會(huì)越來越多。當(dāng)然,外部裝置給出的應(yīng)用程序用的命令是由安裝的多個(gè)應(yīng)用程序中任意一個(gè)程序進(jìn)行處理的。因此,在給出應(yīng)用程序用命令時(shí),需要事先準(zhǔn)備用于特定處理的應(yīng)用程序。通常,這種準(zhǔn)備是通過給出一個(gè)含有選擇特定應(yīng)用程序信息的應(yīng)用程序選擇命令來實(shí)現(xiàn)的。
例如,在醫(yī)院窗口,使用安裝了診斷和金融帳戶用的兩種應(yīng)用程序的IC卡時(shí),需要以下的準(zhǔn)備階段,即,IC卡與醫(yī)院窗口上設(shè)置的外部裝置連接以后,外部裝置向IC卡發(fā)出旨在選擇診斷卡用應(yīng)用程序的選擇命令,使該應(yīng)用程序?yàn)檫x擇狀態(tài),并對該應(yīng)用程序進(jìn)行固有的認(rèn)證處理,其結(jié)果存入存儲(chǔ)器(RAM)。這樣,診斷卡用應(yīng)用程序變成被選中狀態(tài)后,從外部裝置發(fā)出的一般命令,都可由處于選中狀態(tài)的診斷卡用應(yīng)用程序進(jìn)行處理。如上所述,此時(shí),每個(gè)命令執(zhí)行可否,是由存儲(chǔ)器中保存的認(rèn)證結(jié)果決定的。
在上述面向多用途的IC卡之中,為了確保高度的安全性,需要對每個(gè)應(yīng)用程序進(jìn)行認(rèn)證處理。因此,現(xiàn)有的多用途IC卡等,每次重新選擇應(yīng)用程序時(shí),都需要對該選擇應(yīng)用程序進(jìn)行認(rèn)證。例如,在醫(yī)院窗口,將診治記錄寫入作為診斷卡的IC卡中的同時(shí),用作為金融帳戶卡的IC卡來結(jié)算醫(yī)療費(fèi)時(shí),IC卡與醫(yī)院窗口設(shè)置的外部裝置連接上以后,首先,從外部裝置向IC卡發(fā)出選擇命令,旨在選擇診斷卡用應(yīng)用程序,使診斷卡用應(yīng)用程序變成選中狀態(tài),執(zhí)行寫入診治記錄處理后,接著,外部裝置向IC卡發(fā)出選擇命令,旨在選擇金融帳戶用應(yīng)用程序,使金融帳戶用應(yīng)用程序變成選中狀態(tài),執(zhí)行寫入診治費(fèi)結(jié)算信息的處理。這樣,在同一個(gè)交換信息的對話中,利用多個(gè)應(yīng)用處理,可進(jìn)行一系列關(guān)聯(lián)處理的使用方式,預(yù)計(jì)今后也將日益增多。
然而,現(xiàn)有的便攜式信息記錄裝置,每次轉(zhuǎn)換應(yīng)用程序,都要給出選擇命令,而且每次都需要進(jìn)行有關(guān)該應(yīng)用程序的認(rèn)證處理。因此,在同一個(gè)交換信息的對話中,一邊轉(zhuǎn)換多個(gè)應(yīng)用程序,一邊進(jìn)行一系列的聯(lián)系處理,致使便攜式信息記錄裝置內(nèi)部的處理負(fù)荷以及與外部裝置之間的通信負(fù)荷過大的問題產(chǎn)生。
因此,本發(fā)明的目的在于提供一種便攜式信息記錄裝置,可完全確保每個(gè)應(yīng)用程序的安全性,并且在同一個(gè)交換信息對話中,一邊轉(zhuǎn)換多個(gè)應(yīng)用程序,一邊可順利進(jìn)行一系列的關(guān)聯(lián)處理。
發(fā)明內(nèi)容
(1)本發(fā)明的第一特征在于提供了具有根據(jù)需要與外部裝置連接,在與該外部裝置之間,通過進(jìn)行命令和響應(yīng)的信息交換,在內(nèi)部記錄將成為記錄對象的用戶數(shù)據(jù)的同時(shí),進(jìn)行各種處理的功能的便攜式信息記錄裝置;包括I/O(輸入/輸出)部分,與外部裝置之間進(jìn)行交換信息;OS(操作系統(tǒng))存儲(chǔ)部分,用于存儲(chǔ)OS程序;應(yīng)用程序存儲(chǔ)部分,用于存儲(chǔ)多個(gè)應(yīng)用程序;用戶數(shù)據(jù)存儲(chǔ)部分,用于存儲(chǔ)用戶數(shù)據(jù);處理執(zhí)行部分,其基于OS程序或應(yīng)用程序,執(zhí)行外部裝置發(fā)出的命令,將執(zhí)行結(jié)果作為響應(yīng),進(jìn)行向外部裝置回送的處理;工作用數(shù)據(jù)存儲(chǔ)部分,作為所述處理執(zhí)行部分的工作區(qū)使用,確保至少可存儲(chǔ)OS程序用工作數(shù)據(jù)的OS用工作區(qū);其中處理執(zhí)行部分進(jìn)行以下處理當(dāng)從外部裝置接收包含指定特定的應(yīng)用程序的信息和應(yīng)該附加到被指定的應(yīng)用程序上的固有標(biāo)識符的準(zhǔn)備命令時(shí),在工作用數(shù)據(jù)存儲(chǔ)部分內(nèi),確保應(yīng)用程序用工作區(qū),用于存儲(chǔ)指定的應(yīng)用程序用的工作數(shù)據(jù),通過在OS用工作區(qū)內(nèi),存儲(chǔ)定義指定的應(yīng)用程序和對其附加的固有標(biāo)識符之間的對應(yīng)關(guān)系的信息,以及存儲(chǔ)被確保的所述應(yīng)用程序用工作區(qū)的特定信息,從而使該特定的應(yīng)用程序呈可使用狀態(tài);
當(dāng)從外部裝置對由標(biāo)識符指定的應(yīng)用程序發(fā)出處理執(zhí)行命令,令其執(zhí)行所規(guī)定的處理時(shí),所述處理執(zhí)行部分使用為該應(yīng)用程序確保的應(yīng)用程序用工作區(qū),根據(jù)該應(yīng)用程序執(zhí)行所述的規(guī)定處理。
2、本發(fā)明的第二特征在于,根據(jù)上述第一特征涉及的便攜式信息記錄裝置,其中的處理執(zhí)行部分進(jìn)行以下處理當(dāng)外部裝置發(fā)出認(rèn)證命令,進(jìn)行有關(guān)用標(biāo)識符指定的應(yīng)用程序的認(rèn)證時(shí),根據(jù)該認(rèn)證命令執(zhí)行認(rèn)證處理,并將該認(rèn)證結(jié)果存入為該應(yīng)用程序確保的應(yīng)用程序用工作區(qū)中;當(dāng)外部裝置發(fā)出處理執(zhí)行命令,要求由標(biāo)識符指定的應(yīng)用程序執(zhí)行規(guī)定的處理時(shí),參考為該應(yīng)用程序確保的應(yīng)用程序用工作區(qū)中存儲(chǔ)的認(rèn)證結(jié)果,判斷所發(fā)出的處理執(zhí)行命令是否為允許執(zhí)行命令,判斷為允許執(zhí)行時(shí),則由該應(yīng)用程序執(zhí)行規(guī)定的處理。
3、本發(fā)明的第三特征在于,根據(jù)上述第二特征涉及的便攜式信息記錄裝置,當(dāng)從外部裝置發(fā)出有關(guān)規(guī)定的應(yīng)用程序的認(rèn)證命令時(shí),處理執(zhí)行部分把表示允許該應(yīng)用程序執(zhí)行的命令表信息作為認(rèn)證結(jié)果,存儲(chǔ)到應(yīng)用程序用工作區(qū)中。
4、本發(fā)明的第四特征在于,根據(jù)上述第一~第三特征涉及的便攜式信息記錄裝置,其將工作用數(shù)據(jù)存儲(chǔ)部分內(nèi)確保的應(yīng)用程序用的工作區(qū)作為特定的信息,在OS用工作區(qū)內(nèi)存儲(chǔ)該區(qū)域的起始地址和該區(qū)域的容量。
5、本發(fā)明的第五特征在于,在上述第一至第四特征涉及的便攜式信息記錄裝置中,從外部裝置接收了準(zhǔn)備命令時(shí),處理執(zhí)行部分對應(yīng)用程序存儲(chǔ)部分所存儲(chǔ)的應(yīng)用程序的內(nèi)容進(jìn)行調(diào)查,確保其大小與調(diào)查結(jié)果相符的應(yīng)用程序用工作區(qū)。
6、本發(fā)明的第六特征在于,根據(jù)上述第五特征涉及的便攜式信息記錄裝置,是根據(jù)應(yīng)用程序內(nèi)使用的有關(guān)變量及數(shù)組信息,決定用于該應(yīng)用程序的應(yīng)用程序用工作區(qū)的容量的信息記錄裝置。
7、本發(fā)明的第七特征在于,根據(jù)上述第一~第六特征涉及的便攜式信息記錄裝置,其中,當(dāng)外部裝置發(fā)出查詢命令,重新查詢可用標(biāo)識符時(shí),處理執(zhí)行部分通過調(diào)查OS用工作區(qū),識別已定義狀態(tài)或未定義狀態(tài)的標(biāo)識符,把已識別的標(biāo)識符作為響應(yīng),反饋給外部裝置。
8、本發(fā)明的第八特征在于,根據(jù)上述第一~第七特征涉及的便攜式信息記錄裝置,其中,OS存儲(chǔ)部分、應(yīng)用程序存儲(chǔ)部分、和用戶數(shù)據(jù)存儲(chǔ)部分由非易失性存儲(chǔ)器構(gòu)成;工作用數(shù)據(jù)存儲(chǔ)部分由易失性存儲(chǔ)器構(gòu)成。
圖1是表示本發(fā)明的一個(gè)實(shí)施方式涉及的IC卡100與外部裝置200的連接狀態(tài)的方框圖。
圖2給出的是外部裝置發(fā)給本發(fā)明涉及的IC卡的一系列命令的例子示意圖。
圖3給出的是通過執(zhí)行圖2所示的準(zhǔn)備命令(1),(2),寫入OS用工作區(qū)的信息的實(shí)例示意圖。
圖4是作為寫入應(yīng)用程序用作業(yè)區(qū)的認(rèn)證結(jié)果,使用允許執(zhí)行命令表的示意圖。
圖5給出的是用于查詢當(dāng)前空閑的標(biāo)識符的查詢命令以及與其對應(yīng)的響應(yīng)的示例圖。
具體實(shí)施例方式
下面就本發(fā)明的實(shí)施方式參照附圖進(jìn)行說明。本發(fā)明可廣泛用于一般性便攜式信息記錄裝置。但是,這里僅闡述在最基本的便攜式信息記錄裝置IC卡上使用本發(fā)明的例子。
1、本發(fā)明涉及的IC卡的基本構(gòu)成圖1表示本發(fā)明涉及的一個(gè)實(shí)施方式的IC卡100(便攜式信息記錄裝置)與外部裝置200連接的狀態(tài)的方框圖。外部裝置200一般稱為讀寫裝置,通??膳cPC機(jī)等連接使用。IC卡100中內(nèi)置有I/O部分110,用于與外部裝置200交換信息;處理執(zhí)行部分120,在IC卡內(nèi)執(zhí)行各種處理;以及存儲(chǔ)部分130,存儲(chǔ)各種數(shù)據(jù)和程序。IC卡100與外部裝置200間的信息交換是通過命令和響應(yīng)來進(jìn)行的。即由外部裝置200向IC卡100發(fā)送特定的命令信息,該命令在I/O部分110中被接收后傳輸給處理執(zhí)行部分120。處理執(zhí)行部分120,譯碼執(zhí)行該命令,并將處理結(jié)果作為響應(yīng)轉(zhuǎn)交給I/O部分110。這樣,該響應(yīng)由I/O部分110發(fā)送給外部裝置200。處理執(zhí)行部分120根據(jù)存儲(chǔ)部分130內(nèi)存儲(chǔ)的程序,執(zhí)行給出的命令,隨著該命令的執(zhí)行,根據(jù)需要,對存儲(chǔ)部分130內(nèi)存儲(chǔ)的數(shù)據(jù)進(jìn)行存取,如圖所示,存儲(chǔ)部分130是由OS存儲(chǔ)部分131、應(yīng)用程序存儲(chǔ)部分132、用戶數(shù)據(jù)存儲(chǔ)部分133以及工作用數(shù)據(jù)存儲(chǔ)部分134這四個(gè)存儲(chǔ)部分構(gòu)成。
不過,這些構(gòu)成要素是為了便于本發(fā)明的說明,而著眼于功能方面而捕捉的構(gòu)成要素,并不是與實(shí)際的硬件上的構(gòu)成要素一一對應(yīng)的。實(shí)際上,處理執(zhí)行部分120是由IC卡內(nèi)置的CPU和其它邏輯裝置實(shí)現(xiàn)的。當(dāng)然,處理執(zhí)行部分120并不是能夠只靠CPU等硬件單獨(dú)實(shí)現(xiàn)的構(gòu)成要素,而是基于存儲(chǔ)部分130內(nèi)存儲(chǔ)的程序運(yùn)行的前提下,才能實(shí)現(xiàn)的構(gòu)成要素。另外,存儲(chǔ)部分130可由ROM、RAM、EEPROM等的存儲(chǔ)器實(shí)現(xiàn)。這里給出的實(shí)施方式中,OS存儲(chǔ)部分131是由ROM實(shí)現(xiàn)的,應(yīng)用程序存儲(chǔ)部分132及用戶數(shù)據(jù)存儲(chǔ)部分133是由EEPROM實(shí)現(xiàn)的,而工作用數(shù)據(jù)存儲(chǔ)部分134是由RAM實(shí)現(xiàn)的。在實(shí)施本發(fā)明中,其存儲(chǔ)器的構(gòu)成,也可不必按照該實(shí)施方式所描述的做。內(nèi)部未裝電源的普通類型的便攜式信息記錄裝置(換言之,系指與外部裝置200連接時(shí),由外部裝置200供電的便攜式信息記錄裝置),OS存儲(chǔ)部分131、應(yīng)用程序存儲(chǔ)部分132、用戶數(shù)據(jù)存儲(chǔ)部分133需要設(shè)置與外部裝置200斷開后,也能夠保留數(shù)據(jù)的非易失性存儲(chǔ)器。而且,至少用戶數(shù)據(jù)存儲(chǔ)部分133要用能夠重寫的非易失性存儲(chǔ)器(EEPROM)。在實(shí)際使用上,優(yōu)選應(yīng)用程序存儲(chǔ)部分132也選用能夠重寫的非易失性存儲(chǔ)器(EEPROM),以便根據(jù)需要,能夠安裝新的應(yīng)用程序。另外,為了確保安全,工作用數(shù)據(jù)存儲(chǔ)部分134,應(yīng)設(shè)置成可以重寫的易失性存儲(chǔ)器RAM。如果設(shè)置成這種構(gòu)成,則在IC卡100與外部裝置200斷開后,呈便攜的狀態(tài)中,只有工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的數(shù)據(jù)為被刪除狀態(tài)。
接下來,圍繞存儲(chǔ)部分130的各個(gè)存儲(chǔ)部分所存儲(chǔ)的信息進(jìn)行說明。首先,OS存儲(chǔ)部分131中存儲(chǔ)了描述該IC卡100的基本動(dòng)作的OS程序。目前普及的IC卡用的OS程序有JavaCard和MULTOS等,處理執(zhí)行部分120按照該OS程序執(zhí)行基本的工作。相反,應(yīng)用程序存儲(chǔ)部分132存儲(chǔ)了多個(gè)應(yīng)用程序。這里給出的實(shí)施方式的作法是,應(yīng)用程序存儲(chǔ)部分132被設(shè)置在EEPROM內(nèi)的存儲(chǔ)區(qū),在IC卡發(fā)行后,可以任意追加應(yīng)用程序。圖1給出的例子,是表示已存有三個(gè)應(yīng)用程序AP1、AP2、AP3的狀態(tài)。用戶數(shù)據(jù)存儲(chǔ)部分133存儲(chǔ)有關(guān)該IC卡100的持卡者的個(gè)人數(shù)據(jù)和交易數(shù)據(jù)等,應(yīng)記錄到該IC卡100里的用戶數(shù)據(jù)(也包括有關(guān)IC卡發(fā)行者的數(shù)據(jù))。圖中給出的例子是獨(dú)立存儲(chǔ)了應(yīng)用程序AP1、AP2、AP3的分別使用的用戶數(shù)據(jù)UD1、UD2、UD3的狀態(tài)。當(dāng)然,在附圖的例子中沒有給出,除此以外,還可以存儲(chǔ)可由多個(gè)應(yīng)用程序共享的共享用戶數(shù)據(jù)。
另外,工作用數(shù)據(jù)存儲(chǔ)部分134是作為處理執(zhí)行部分120的工作區(qū)使用的區(qū)域。當(dāng)外部裝置200發(fā)出的命令是OS命令時(shí),處理執(zhí)行部分120按照OS存儲(chǔ)部分131內(nèi)的OS程序執(zhí)行此命令,當(dāng)外部裝置200給出的命令是應(yīng)用程序用的命令時(shí),則按照應(yīng)用程序存儲(chǔ)部分132內(nèi)的規(guī)定應(yīng)用程序執(zhí)行。每個(gè)執(zhí)行結(jié)果作為響應(yīng)反饋給外部裝置200。不論哪種情形,工作用數(shù)據(jù)存儲(chǔ)部分134都作為工作區(qū)使用。正如后面要描述的那樣,處理執(zhí)行部分120在執(zhí)行OS程序時(shí),將工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的工作區(qū)作為OS用工作存儲(chǔ)區(qū)使用;處理執(zhí)行部分120在執(zhí)行規(guī)定的應(yīng)用程序時(shí),把工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的為該應(yīng)用程序確保的應(yīng)用程序用工作區(qū)作為工作區(qū)使用。其中OS用工作區(qū)是在IC卡100與外部裝置200連接上后,在開始交換信息對話時(shí),通過初始設(shè)定動(dòng)作,在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)自動(dòng)保留的。但是每個(gè)應(yīng)用程序用的工作區(qū),如下所述,是通過外部裝置200發(fā)出準(zhǔn)備命令來獲得的。
2、本發(fā)明涉及的IC卡的基本工作原理接下來,圍繞圖1所示的IC卡基本動(dòng)作的加以說明。IC卡100是典型的便攜式信息記錄裝置,一般由用戶攜帶。如上所述,在該實(shí)施方式中,由外部裝置200為IC卡100供電,因此當(dāng)IC卡100被攜帶時(shí),不需要為其供電。OS存儲(chǔ)部分131、應(yīng)用程序存儲(chǔ)部分132、用戶數(shù)據(jù)存儲(chǔ)部分133由非易失性存儲(chǔ)器構(gòu)成,因此,這些存儲(chǔ)部分內(nèi)記錄的數(shù)據(jù)不會(huì)丟失。另外,工作用數(shù)據(jù)存儲(chǔ)部分134由易失性存儲(chǔ)器(RAM)構(gòu)成,因此攜帶時(shí),工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的數(shù)據(jù)為消失狀態(tài)。
如上述例子,在醫(yī)院窗口寫入診治記錄,或者進(jìn)行有關(guān)金融帳戶結(jié)算時(shí),IC卡100與外部裝置200連接后,便開始交換信息。在開始交換信息時(shí),外部裝置200為IC卡100進(jìn)行供電,IC卡100的CPU復(fù)位,處理執(zhí)行部分120執(zhí)行OS存儲(chǔ)部分131中存儲(chǔ)的OS程序的初始例程,為交換信息對話建立工作環(huán)境。工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的OS用工作區(qū)就是在此時(shí)獲取的。這樣,交換信息對話環(huán)境一旦建立,以后,如果外部裝置200給出命令,IC卡100反饋對其做出的響應(yīng),就可以這樣相互間反復(fù)進(jìn)行信息交換。如果一次交換信息對話結(jié)束,IC卡100與外部裝置200斷開,又可由用戶攜帶。此時(shí),由易失性存儲(chǔ)器(RAM)構(gòu)成的工作用數(shù)據(jù)存儲(chǔ)部分134的內(nèi)容全部消失。如上所述,雖然在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)記錄了認(rèn)證結(jié)果,但是,該認(rèn)證結(jié)果在每次交換信息對話時(shí)都被清除,因此可確保安全性的基礎(chǔ)上狀態(tài)良好。
處理執(zhí)行部分120的處理是,如果外部裝置200給出命令,該命令是OS用的命令時(shí),按照OS存儲(chǔ)部分131內(nèi)的OS程序執(zhí)行該命令,并將對其響應(yīng)返回到外部裝置200,當(dāng)該命令是應(yīng)用程序用的命令時(shí),則基于應(yīng)用程序存儲(chǔ)部分132內(nèi)的任一應(yīng)用程序執(zhí)行,并將對其響應(yīng)返回到外部裝置200。但是,在執(zhí)行應(yīng)用程序用命令時(shí),需要事先圍繞該應(yīng)用程序進(jìn)行準(zhǔn)備。
現(xiàn)有的普通IC卡中,是通過選擇命令從外部裝置200選擇該特定的應(yīng)用程序進(jìn)行有關(guān)特定應(yīng)用程序的準(zhǔn)備的?,F(xiàn)有的這種利用選擇命令的準(zhǔn)備方法,只能將一個(gè)應(yīng)用程序變成準(zhǔn)備狀態(tài),要轉(zhuǎn)換成其它應(yīng)用程序時(shí),還需要給出新的選擇命令。而且,如上所述,為了轉(zhuǎn)換應(yīng)用程序,在給出新的選擇命令時(shí),每次都需要對該應(yīng)用程序進(jìn)行認(rèn)證處理,因此,在同一個(gè)交換信息對話中,要一邊轉(zhuǎn)換多個(gè)應(yīng)用程序一邊進(jìn)行一系列的相關(guān)處理,以致產(chǎn)生IC卡100內(nèi)部的處理負(fù)荷以及與外部裝置200之間的通信負(fù)荷過大的問題。
本發(fā)明的基本概念基于下述考慮同時(shí)將多個(gè)應(yīng)用程序設(shè)定成準(zhǔn)備狀態(tài),對成為該準(zhǔn)備狀態(tài)的每個(gè)應(yīng)用程序分別定義標(biāo)識符,通過對外部裝置200給出的每個(gè)命令分別附加標(biāo)識符,來限定被同時(shí)指定成準(zhǔn)備狀態(tài)的多個(gè)應(yīng)用程序中的1個(gè),由特定的應(yīng)用程序處理給出的命令。這樣,由于使多個(gè)應(yīng)用程序同時(shí)保持準(zhǔn)備狀態(tài),因此在本發(fā)明中,在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi),分別為各應(yīng)用程序確保一個(gè)單獨(dú)的工作區(qū),在這些各個(gè)工作區(qū)內(nèi),分別存儲(chǔ)各應(yīng)用程序的認(rèn)證結(jié)果。
下面,基于這樣的基本概念的具體動(dòng)作,參照圖2所示的一系列命令(1)~(10)的例子加以說明。在圖中所示的命令中,(1)、(2)是準(zhǔn)備命令(OS用命令),是使每個(gè)應(yīng)用程序變成準(zhǔn)備狀態(tài)的準(zhǔn)備命令;(3)-(8)是認(rèn)證命令(應(yīng)用程序用命令),用于對每個(gè)應(yīng)用程序進(jìn)行認(rèn)證,(9)、(10)是處理執(zhí)行命令(應(yīng)用程序用命令),利用各應(yīng)用程序執(zhí)行規(guī)定的處理。其中,如圖1所示,應(yīng)用程序存儲(chǔ)部分132內(nèi)存儲(chǔ)三個(gè)應(yīng)用程序AP1、AP2、AP3,為方便描述起見,以AP1是醫(yī)院診斷卡用應(yīng)用程序、AP2是金融帳戶用應(yīng)用程序、AP3是加油站服務(wù)用應(yīng)用程序?yàn)槔?,進(jìn)行以下說明。結(jié)果,該IC卡100有三種用途,既診斷卡、金融帳戶用卡、和加油站的服務(wù)卡。
現(xiàn)在,設(shè)想該IC卡100的用戶,在醫(yī)院窗口使用該卡的情形,將IC卡作為診斷卡使用,在寫入診治記錄的同時(shí),IC卡又作為金融帳戶卡使用,進(jìn)行醫(yī)療費(fèi)用結(jié)算。在這種情況下,如果使用現(xiàn)有的IC卡,則需要IC卡在與醫(yī)院窗口設(shè)置的外部裝置連接以后,首先,外部裝置向IC卡發(fā)出選擇命令,旨在選擇診斷卡用應(yīng)用程序,診斷卡用應(yīng)用程序變成選中狀態(tài),執(zhí)行寫入診治記錄的處理后,接著,外部裝置再向IC卡發(fā)出選擇命令,旨在選擇金融帳戶用應(yīng)用程序,金融帳戶用應(yīng)用程序變成選中狀態(tài),執(zhí)行寫入醫(yī)療費(fèi)用結(jié)算信息的處理。另外,每次給出各選擇命令,都要進(jìn)行各應(yīng)用程序規(guī)定的認(rèn)證處理。與此相反,在本發(fā)明中,正如圖2所示,首先,發(fā)出準(zhǔn)備命令(1)、(2),使一系列處理所需要的兩個(gè)應(yīng)用程序AP1、AP2同時(shí)變成準(zhǔn)備狀態(tài),在此基礎(chǔ)上,給出有關(guān)應(yīng)用程序AP1的認(rèn)證命令(3)~(5)和有關(guān)應(yīng)用程序AP2的認(rèn)證命令(6)~(8),分別就這兩個(gè)應(yīng)用程序進(jìn)行認(rèn)證處理,其結(jié)果存入工作用數(shù)據(jù)存儲(chǔ)部分134。此時(shí)的狀態(tài),應(yīng)用程序AP1、AP2已同時(shí)準(zhǔn)備就緒,而且認(rèn)證也已經(jīng)完成。因此,可對每個(gè)應(yīng)用程序給出所規(guī)定的處理執(zhí)行命令(9)和(10),由各應(yīng)用程序執(zhí)行所規(guī)定的處理。
圖2所示的準(zhǔn)備命令(1)和(2)包含指定特定應(yīng)用程序的信息和為被指定的應(yīng)用程序附加的固有標(biāo)識符。例如,準(zhǔn)備命令(1)是由表示該命令是準(zhǔn)備命令的命令名“PREPARE”、指定應(yīng)用程序AP1(診斷卡用應(yīng)用程序)的信息(例如應(yīng)用程序名)、以及為指定的應(yīng)用程序附加的固有標(biāo)識符“Ch1”三項(xiàng)構(gòu)成的。如果給出這樣的準(zhǔn)備命令,處理執(zhí)行部分120則在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi),確保應(yīng)用程序用的工作區(qū),為指定的應(yīng)用程序存儲(chǔ)工作用數(shù)據(jù),在OS用工作區(qū)內(nèi),存儲(chǔ)定義指定的應(yīng)用程序與附加的固有標(biāo)識符之間的對應(yīng)關(guān)系的信息,以及存儲(chǔ)特定被確保的應(yīng)用程序用工作區(qū)域的信息,從而,使該特定的應(yīng)用程序變成可利用狀態(tài)。
具體地說,在收到準(zhǔn)備命令(1)時(shí),在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)確保如圖1所示的AP1用工作區(qū),作為應(yīng)用程序AP1的工作區(qū)。而且,在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的OS用工作區(qū)(如上所述,IC卡100與外部裝置200連接之后,在進(jìn)行交換信息的環(huán)境建立階段已經(jīng)確保的區(qū)),寫入定義應(yīng)用程序AP1與對其附加的固有標(biāo)識符(Ch1)之間的對應(yīng)關(guān)系的信息,以及指定被確保的AP1用工作區(qū)的信息。同樣,收到準(zhǔn)備命令(2)時(shí),在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi),確保AP2用工作區(qū),作為應(yīng)用程序AP2的工作區(qū)。而且,還在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的OS用工作區(qū),寫入定義應(yīng)用程序AP2與對其附加的固有標(biāo)識符(Ch2)之間對應(yīng)關(guān)系的信息,以及指定被確保的AP2用工作區(qū)的信息。
圖3表示通過執(zhí)行上述準(zhǔn)備命令(1)、(2),在OS用工作區(qū)內(nèi)寫入信息的一個(gè)例子。圖3(a)所示的信息是由準(zhǔn)備命令(1)寫入的信息,圖3(b)所示的信息是由準(zhǔn)備命令(2)寫入的信息。在該例中,作為應(yīng)用程序與其附加的固有標(biāo)識符之間的對應(yīng)關(guān)系的定義信息,寫入的是標(biāo)識符和與其對應(yīng)的應(yīng)用程序的起始地址。例如,圖3(a)例,通過讓存儲(chǔ)標(biāo)識符“Ch1”與地址“Add11”(應(yīng)用程序存儲(chǔ)部分132內(nèi)存儲(chǔ)的應(yīng)用程序AP1的起始地址)對應(yīng)存儲(chǔ),來表示應(yīng)用程序AP1對應(yīng)于“Ch1”。另外,還存儲(chǔ)該區(qū)域的起始地址和區(qū)域的容量(大小),作為特別指定工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)確保的應(yīng)用程序用工作區(qū)的信息。例如,圖3(a)的例子中,是根據(jù)應(yīng)用程序AP1工作區(qū)的起始地址“Add12”(工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)確保的區(qū)域的起始地址)和該區(qū)域的容量(2kB)來特別指定AP1用工作區(qū)。圖3(b)所示的信息與應(yīng)用程序AP2涉及的信息相同。
結(jié)果,由于準(zhǔn)備命令(1)、(2)的執(zhí)行,如圖1所示,在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)確保了兩個(gè)應(yīng)用程序用工作區(qū)(AP1用工作區(qū)和AP2用工作區(qū)在圖2所示的工作例子中不能確保圖1所示的AP3用工作區(qū)),為在OS用工作區(qū)內(nèi)存儲(chǔ)了圖3所示的信息的狀態(tài)。通過執(zhí)行這樣的準(zhǔn)備命令,兩個(gè)應(yīng)用程序AP1、AP2呈可同時(shí)使用狀態(tài)。這樣,本發(fā)明中的準(zhǔn)備命令不同于過去在IC卡使用的選擇命令,可同時(shí)將多個(gè)應(yīng)用程序設(shè)定成可應(yīng)用狀態(tài)。不過,實(shí)際使用每個(gè)應(yīng)用程序時(shí),則需要經(jīng)過以下認(rèn)證處理。
圖2所示的認(rèn)證命令(3)-(8),是通常在現(xiàn)有的IC卡中也被使用的認(rèn)證命令,用這些命令執(zhí)行的認(rèn)證處理的實(shí)體,與現(xiàn)有的IC卡進(jìn)行的認(rèn)證處理一樣。不過,本發(fā)明的認(rèn)證命令的特征在于命令內(nèi)含有特定的標(biāo)識符,利用該特定的標(biāo)識符來指定成為認(rèn)證處理對象的應(yīng)用程序。例如,認(rèn)證命令(3)~(5)中都含有“Ch1”標(biāo)識符,表示這些認(rèn)證命令是有關(guān)應(yīng)用程序AP 1的命令;認(rèn)證命令(6)~(8)都含有“Ch2”標(biāo)識符,表示這些認(rèn)證命令是有關(guān)應(yīng)用程序AP2的命令。在本發(fā)明中,由于是多個(gè)應(yīng)用程序同時(shí)呈可利用的狀態(tài),因此,在給出應(yīng)用程序的認(rèn)證命令時(shí),需要由標(biāo)識符來特別指定可用狀態(tài)的多個(gè)應(yīng)用程序中的一個(gè)。
認(rèn)證命令(3)是確認(rèn)從外部裝置200給出的口令(命令中包含的“password”數(shù)據(jù))與IC卡100中記錄的應(yīng)用程序AP1的口令(由用戶數(shù)據(jù)存儲(chǔ)部分133內(nèi)的用戶數(shù)據(jù)UD1存儲(chǔ))是否一致的命令,根據(jù)該認(rèn)證命令執(zhí)行的認(rèn)證處理所得到的認(rèn)證結(jié)果,寫入AP1用工作區(qū)。具體地說,是將口令一致/不一致的結(jié)果(IC卡100中存有多個(gè)口令時(shí),表示是否與任何口令一致的結(jié)果)作為認(rèn)證結(jié)果存儲(chǔ)的。
另外,認(rèn)證命令(4)、(5),是利用兩個(gè)命令執(zhí)行一個(gè)認(rèn)證處理的命令組。首先,認(rèn)證命令(4)是使IC卡100內(nèi)部產(chǎn)生任意的隨機(jī)變量,要求將其作為響應(yīng)返回外部裝置200的命令。處理執(zhí)行部分120根據(jù)該命令中包含的標(biāo)識符“Ch1”,發(fā)生有關(guān)應(yīng)用程序AP1的隨機(jī)變量,將其作為響應(yīng),進(jìn)行返回外部裝置200的處理。此時(shí),發(fā)生的隨機(jī)變量記錄在某一地方(例如AP1用工作區(qū))。在外部裝置200一側(cè)進(jìn)行以下處理按照規(guī)定的算法語言把返回的隨機(jī)變量轉(zhuǎn)換成密碼,把含有所獲得的密碼數(shù)據(jù)“AuthData”的認(rèn)證命令(5)送給IC卡100。也就是說,圖2所示的認(rèn)證命令(5)內(nèi)的“AuthData”是根據(jù)隨機(jī)變量而制成的密碼數(shù)據(jù),所述隨機(jī)變量是作為認(rèn)證命令(4)的響應(yīng)而得到的。收到認(rèn)證命令(5)的處理執(zhí)行部分120,通過與外部裝置200進(jìn)行密碼轉(zhuǎn)化相同的算法(包含在應(yīng)用程序AP1內(nèi)),將剛才發(fā)生的隨機(jī)變量轉(zhuǎn)換成密碼,確認(rèn)其結(jié)果與認(rèn)證命令(5)內(nèi)含有的密碼數(shù)據(jù)“AuthData”是否一致。當(dāng)然,該認(rèn)證結(jié)果也寫入AP1用工作區(qū)內(nèi)。
這樣,通過執(zhí)行認(rèn)證命令(3)~(5),進(jìn)行有關(guān)應(yīng)用程序AP1的認(rèn)證處理,認(rèn)證結(jié)果存入工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的AP1用工作區(qū)內(nèi)。認(rèn)證命令(6)~(8)同樣是有關(guān)應(yīng)用程序AP2的認(rèn)證命令,基于這些認(rèn)證命令的認(rèn)證處理結(jié)果存入工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi)的AP2用工作區(qū)內(nèi)。另外,圖2所示的例子中,執(zhí)行與兩個(gè)應(yīng)用程序相關(guān)的準(zhǔn)備命令(1)和(2)后,執(zhí)行應(yīng)用程序AP1的認(rèn)證命令(3)~(5),其后,執(zhí)行應(yīng)用程序AP2的認(rèn)證命令(6)~(8)。關(guān)于特定的應(yīng)用程序,只要滿足“執(zhí)行準(zhǔn)備命令后執(zhí)行認(rèn)證命令”這一條件,這些命令的順序可隨意改變。例如,在認(rèn)證命令(3)之后也可以馬上執(zhí)行認(rèn)證命令(6),在準(zhǔn)備命令(1)之后也可以執(zhí)行認(rèn)證命令(3)~(5)。每個(gè)命令中都含有標(biāo)識符,因此,根據(jù)標(biāo)識符便可以識別各命令是哪個(gè)應(yīng)用程序的命令。
這樣,圖2所示的準(zhǔn)備命令(1)~(2)和認(rèn)證命令(3)~(8)一旦結(jié)束,則兩個(gè)應(yīng)用程序AP1和AP2的準(zhǔn)備處理與認(rèn)證處理就完成,并且使用兩個(gè)應(yīng)用程序的環(huán)境已全部建立。如果形成這種狀態(tài),外部裝置200給出這兩個(gè)應(yīng)用程序用的處理執(zhí)行命令,便可以執(zhí)行。但是,由于多個(gè)應(yīng)用程序同時(shí)為可用狀態(tài),所以,每個(gè)處理執(zhí)行命令中都要有標(biāo)識符,用于特別指定執(zhí)行該命令的應(yīng)用程序。處理執(zhí)行部分120就是像這樣,如果對用標(biāo)識符指定的應(yīng)用程序,給出處理執(zhí)行命令,令執(zhí)行規(guī)定的處理時(shí),就參考為該應(yīng)用程序確保的應(yīng)用程序用工作區(qū)內(nèi)存儲(chǔ)的認(rèn)證結(jié)果,判定給出的處理執(zhí)行命令的執(zhí)行是否得到許可,判斷為已被許可時(shí),利用該應(yīng)用程序執(zhí)行規(guī)定的處理。
例如,圖2的處理執(zhí)行命令(9)中包含“Ch1”的標(biāo)識符,所以,處理執(zhí)行部分120基于應(yīng)用程序AP1執(zhí)行該命令。此時(shí),首先,參考AP1用工作區(qū)內(nèi)存儲(chǔ)的認(rèn)證結(jié)果(認(rèn)證命令(3)~(5)執(zhí)行后取得的認(rèn)證結(jié)果),判斷該命令是否許可執(zhí)行。例如,將認(rèn)證成功或失敗的任意一個(gè)信息作為認(rèn)證結(jié)果存儲(chǔ)時(shí)(具體地說,記錄表示口令等一致或不一致的信息時(shí)),只限于當(dāng)存儲(chǔ)的信息為認(rèn)證成功時(shí),才判定為允許該命令執(zhí)行。而且,在做出肯定的判定時(shí),執(zhí)行該命令后,返回與其相對應(yīng)的響應(yīng),在做出否定的判定時(shí),返回表示出錯(cuò)的響應(yīng)。具體地說,處理執(zhí)行命令(9)是讀出文件“File3”內(nèi)的記錄“Record2”的數(shù)據(jù)的命令,讀出用戶數(shù)據(jù)存儲(chǔ)部分133內(nèi)的用戶數(shù)據(jù)UD1內(nèi)的對應(yīng)數(shù)據(jù),作為響應(yīng)返回外部裝置200。
另外,圖2的處理執(zhí)行命令(10)中包含“Ch2”的標(biāo)識符,所以,處理執(zhí)行部分120基于應(yīng)用程序AP2執(zhí)行該命令。此時(shí),首先,參考AP2用工作區(qū)內(nèi)存儲(chǔ)的認(rèn)證結(jié)果(執(zhí)行認(rèn)證命令(6)-(8)取得的認(rèn)證結(jié)果),判定該命令的執(zhí)行許可否。而且僅在做出肯定的判定時(shí),才執(zhí)行該命令。具體地說,處理執(zhí)行命令(10)是對之前讀出文件“File2”內(nèi)的記錄“Record1”的數(shù)據(jù)的更新命令,利用由處理執(zhí)行命令(9)讀出的數(shù)據(jù),重寫用戶數(shù)據(jù)存儲(chǔ)部分133內(nèi)的用戶數(shù)據(jù)UD2中的相應(yīng)的記錄內(nèi)容,將表示重寫成功的響應(yīng)返回外部裝置200。
這樣,如果利用本發(fā)明涉及的IC卡,在醫(yī)院窗口,在作為診斷卡的IC卡中寫入診治記錄的同時(shí),利用作為金融帳戶用卡的IC卡,結(jié)算醫(yī)療費(fèi)用時(shí),診斷卡用應(yīng)用程序AP1和金融帳戶用應(yīng)用程序AP2雙方都變成可用狀態(tài),并且,如果為預(yù)先認(rèn)證完成狀態(tài),通過給出用標(biāo)識符指定的任一應(yīng)用程序的處理執(zhí)行命令,便可以使所希望的應(yīng)用程序執(zhí)行所需要的處理。圖2例子中,給出的是兩個(gè)處理執(zhí)行命令(9)和(10),如果是有關(guān)應(yīng)用程序AP1和AP2的處理執(zhí)行命令,此后還可以連續(xù)給出多個(gè)命令。而且,成為命令對象的應(yīng)用程序,可以用標(biāo)識符指定,在應(yīng)用程序轉(zhuǎn)換時(shí),不需要進(jìn)行新的認(rèn)證處理。這樣,利用本發(fā)明涉及的IC卡,在同一個(gè)交換信息對話中,利用多個(gè)應(yīng)用程序,可以順利進(jìn)行一系列的連帶處理。
3、本發(fā)明涉及的便攜式信息記錄裝置的變形例以上闡述了本發(fā)明適用于IC卡的基本實(shí)施方式,這里介紹幾種本發(fā)明的變形例子。
(1)如上所述,本發(fā)明中,在由外部裝置給出有關(guān)規(guī)定應(yīng)用程序的認(rèn)證命令時(shí),處理執(zhí)行部分120按照該認(rèn)證命令執(zhí)行認(rèn)證處理,認(rèn)證結(jié)果存入該應(yīng)用程序用的工作區(qū),以后,在給出有關(guān)該應(yīng)用程序的處理執(zhí)行命令時(shí),參考該認(rèn)證結(jié)果,決定該命令的執(zhí)行可否。這里應(yīng)該注意的一點(diǎn),應(yīng)用程序用的工作區(qū)內(nèi)存儲(chǔ)的認(rèn)證結(jié)果未必只是“認(rèn)證成功或認(rèn)證失敗”兩種結(jié)果。在實(shí)際使用上,根據(jù)外部裝置200具有的訪問權(quán),可以事先存儲(chǔ)多種不同的認(rèn)證結(jié)果。例如,可事先規(guī)定第一口令僅給予讀數(shù)據(jù)的權(quán)限;第二口令給予讀出數(shù)據(jù)和追記數(shù)據(jù)的權(quán)限;第三口令等給予包括數(shù)據(jù)重寫在內(nèi)的所有權(quán)限,通過采用某個(gè)口令的認(rèn)證命令,所以,可以存儲(chǔ)各自不同的認(rèn)證結(jié)果。此時(shí),可在用第一口令進(jìn)行認(rèn)證時(shí),寫入只能讀數(shù)據(jù)的認(rèn)證結(jié)果、在用第二口令進(jìn)行認(rèn)證時(shí),寫入可以讀出數(shù)據(jù)和追記數(shù)據(jù)的認(rèn)證結(jié)果、在用第三口令進(jìn)行認(rèn)證時(shí),寫入所有處理都可以的認(rèn)證結(jié)果。
在圖4所示的例子中,給出的是作為認(rèn)證結(jié)果存儲(chǔ)在應(yīng)用程序用工作區(qū)內(nèi),表示成為認(rèn)證對象的每個(gè)應(yīng)用程序可以執(zhí)行的命令表信息。該例中,在應(yīng)用程序AP1用工作區(qū)內(nèi),作為認(rèn)證結(jié)果存儲(chǔ)了三個(gè)命令信息,“READ RECORD”(1個(gè)記錄數(shù)據(jù)的讀出命令)、“UPDATE RECORD”(1個(gè)記錄數(shù)據(jù)的更新命令)、“WRITERECORD”(1個(gè)記錄數(shù)據(jù)的追記命令),在應(yīng)用程序AP2用工作區(qū)內(nèi),作為認(rèn)證結(jié)果存儲(chǔ)了兩個(gè)命令信息,“READ RECORD”和“UPDATE RECORD”。作為認(rèn)證結(jié)果如果存儲(chǔ)有這種可執(zhí)行的命令表,在給出任意的處理執(zhí)行命令時(shí),便可立即判定該命令的執(zhí)行可否。
(2)本發(fā)明中,如果給出有關(guān)特定應(yīng)用程序的準(zhǔn)備命令,在工作用數(shù)據(jù)存儲(chǔ)部分134內(nèi),就會(huì)由處理執(zhí)行部分120確保該應(yīng)用程序用的工作區(qū)。但是,應(yīng)該確保的工作區(qū)的容量,一般每個(gè)應(yīng)用程序都是不同的,有的應(yīng)用程序需要容量大的工作區(qū),有的應(yīng)用程序用容量小的工作區(qū)就可以解決。因此,實(shí)用上,最好是處理執(zhí)行部分120對應(yīng)用程序存儲(chǔ)部分132內(nèi)存儲(chǔ)的該應(yīng)用程序的內(nèi)容進(jìn)行調(diào)查,并根據(jù)調(diào)查結(jié)果來確保應(yīng)用程序用工作區(qū)的容量。例如,在給出圖2所示的準(zhǔn)備命令(1)時(shí),處理執(zhí)行部分120可調(diào)查應(yīng)用程序存儲(chǔ)部分132內(nèi)存儲(chǔ)的應(yīng)用程序AP1的內(nèi)容,確保適應(yīng)該程序大小用的AP1工作區(qū)。具體地說,識別程序內(nèi)的變量的定義語句和數(shù)組的說明語句等,可以根據(jù)使用的變量和數(shù)組,用規(guī)定的算法來決定必要的尺寸。
(3)在上述實(shí)施方式中,給出的例子中是以“Ch1”、“Ch2”字符串作為標(biāo)識符使用的。但是,標(biāo)識符只要每個(gè)應(yīng)用程序用的是唯一的,使用什么樣的數(shù)據(jù)都無妨。在實(shí)施本發(fā)明上,每個(gè)應(yīng)用程序的認(rèn)證命令和處理命令,都必須含有用于指定應(yīng)用程序的標(biāo)識符,因此,在實(shí)用上,最好用盡量短的數(shù)據(jù)形成標(biāo)識符。例如,最大限度可將四個(gè)應(yīng)用程序設(shè)定成可同時(shí)使用狀態(tài)的IC卡,使用由“00”、“01”、“10”、“11”2位數(shù)組成的標(biāo)識符足矣。
另外,在本發(fā)明的具體實(shí)施上,對同時(shí)呈可利用狀態(tài)的多個(gè)應(yīng)用程序,需要分別賦予不同的唯一的標(biāo)識符。因此,為了不發(fā)生外部裝置200對不同的多個(gè)應(yīng)用程序賦予相同的標(biāo)識符之類的準(zhǔn)備命令的錯(cuò)誤,最好在準(zhǔn)備命令前,先用查詢命令進(jìn)行查詢。即,最好外部裝置200能夠重新給出查詢命令(OS用命令),查詢可使用的標(biāo)識符,處理執(zhí)行部分120收到這樣的查詢命令時(shí),通過調(diào)查OS用工作區(qū),識別已定義或未定義狀態(tài)的標(biāo)識符,把確認(rèn)后的標(biāo)識符作為響應(yīng)返回外部裝置200。
圖5給出的是這種查詢命令和對其響應(yīng)的具體例子。在此例中,查詢命令是由“MANAGE CHANNNEL”的字符串形成的OS用命令。如果在OS用程序中一部分準(zhǔn)備了處理這種查詢命令的例程,處理執(zhí)行部分120就可以根據(jù)該例程,實(shí)施上述調(diào)查,返回響應(yīng)。圖5給出的是已定義標(biāo)識符(Ch1、Ch2)作為響應(yīng)返回的例子和未定義狀態(tài)的標(biāo)識符(Ch3-Ch8該例的前提是作為標(biāo)識符事先準(zhǔn)備了Ch1-Ch8的8種標(biāo)識符)作為響應(yīng)返回的例子。外部裝置200收到這樣的響應(yīng)后,在考慮該響應(yīng)內(nèi)容的基礎(chǔ)上,可以給出正確的準(zhǔn)備命令,不重復(fù)定義已經(jīng)定義的標(biāo)識符。
(4)在上述實(shí)施方式中,對特定的應(yīng)用程序給出準(zhǔn)備命令,在為利用該應(yīng)用程序而進(jìn)行準(zhǔn)備的基礎(chǔ)上,給出有關(guān)該應(yīng)用程序的認(rèn)證命令,執(zhí)行認(rèn)證處理,根據(jù)該認(rèn)證結(jié)果,判定針對該應(yīng)用程序的處理執(zhí)行命令可否執(zhí)行。但是,在不需要對處理執(zhí)行進(jìn)行認(rèn)證的實(shí)施方式中,則不一定需要給出認(rèn)證命令,也可以對于用準(zhǔn)備命令準(zhǔn)備后的應(yīng)用程序,直接給出處理執(zhí)行命令,令其執(zhí)行。
(5)上述實(shí)施方式中的處理執(zhí)行部分120,根據(jù)OS存儲(chǔ)部分131內(nèi)存儲(chǔ)的OS程序或者根據(jù)應(yīng)用程序存儲(chǔ)部分132內(nèi)存儲(chǔ)的任一應(yīng)用程序,執(zhí)行各種處理。其中,使所定的應(yīng)用程序變成可用狀態(tài)的準(zhǔn)備命令,不能由成為該準(zhǔn)備命令對象的應(yīng)用程序本身來執(zhí)行,所以,一般利用OS程序執(zhí)行(根據(jù)情況,也可以由其它應(yīng)用程序執(zhí)行)。但是,認(rèn)證命令和其它處理執(zhí)行命令既可以用OS程序執(zhí)行,還可以用應(yīng)用程序執(zhí)行。不過,一般的IC卡,往往在卡發(fā)行時(shí)已經(jīng)編入OS程序,而各種應(yīng)用程序可在卡發(fā)行后適當(dāng)?shù)卦黾?,與OS程序比較靈活度高。因此,在實(shí)際應(yīng)用上,優(yōu)選的設(shè)計(jì)方案是,最好認(rèn)證命令和其它處理執(zhí)行命令的實(shí)際處理部分,由各應(yīng)用程序執(zhí)行,OS程序承擔(dān)的任務(wù)就是把這些命令轉(zhuǎn)發(fā)給各應(yīng)用程序。
工業(yè)實(shí)用性如上所述,根據(jù)本發(fā)明涉及的便攜式信息記錄裝置,完全能夠保證每個(gè)應(yīng)用程序的安全性,并且在同一個(gè)交換信息對話中,可一邊轉(zhuǎn)換多個(gè)應(yīng)用程序,一邊順利進(jìn)行一系列的相關(guān)處理。因此,本發(fā)明涉及的便攜式信息記錄裝置,在一張IC卡上,可以執(zhí)行多個(gè)不同的應(yīng)用程序,最適合用于金融業(yè)務(wù)處理、通信銷售業(yè)務(wù)處理和醫(yī)療業(yè)務(wù)處理等,也可以在各種產(chǎn)業(yè)領(lǐng)域使用。
權(quán)利要求
1.一種便攜式信息記錄裝置,具有以下功能根據(jù)需要與外部裝置(200)連接,與該外部裝置進(jìn)行命令及響應(yīng)的信息交換,在內(nèi)部記錄作為記錄對象的用戶數(shù)據(jù)(UD1~UD3),同時(shí)進(jìn)行各種處理;所述便攜式信息記錄裝置(100)包括I/O部分(110),與外部裝置(200)之間進(jìn)行信息交換;OS存儲(chǔ)部分(131),用于存儲(chǔ)OS程序;應(yīng)用程序存儲(chǔ)部分(132),用于存儲(chǔ)多個(gè)應(yīng)用程序(AP1~AP3);用戶數(shù)據(jù)存儲(chǔ)部分(133),用于存儲(chǔ)用戶數(shù)據(jù)(UD1~UD3);處理執(zhí)行部分(120),作用是基于所述的OS程序或所述的應(yīng)用程序(AP1~AP3)執(zhí)行從外部裝置(200)接收的命令,將執(zhí)行結(jié)果作為響應(yīng),反饋給外部裝置;以及,工作用數(shù)據(jù)存儲(chǔ)部分(134),被用作所述處理執(zhí)行部分(120)的工作區(qū),確保至少一個(gè)可存儲(chǔ)所述OS程序用的工作數(shù)據(jù)的OS用工作區(qū),其特征在于當(dāng)從外部裝置(200)發(fā)出包含指定特定的應(yīng)用程序(AP1~AP3)的信息和應(yīng)該附加到被指定的應(yīng)用程序上的固有標(biāo)識符(Ch1,Ch2)的準(zhǔn)備命令時(shí),所述處理執(zhí)行部分(120)進(jìn)行以下處理在所述工作用數(shù)據(jù)存儲(chǔ)部分(134)內(nèi)確保應(yīng)用程序用的工作區(qū),用于存儲(chǔ)被指定的應(yīng)用程序用的工作數(shù)據(jù),通過在所述OS用工作區(qū)內(nèi)存儲(chǔ)定義被指定的應(yīng)用程序和應(yīng)該對其附加的固有標(biāo)識符之間的對應(yīng)關(guān)系的信息,以及存儲(chǔ)被確保的所述應(yīng)用程序用工作區(qū)的特定信息,使該特定的應(yīng)用程序呈可使用狀態(tài);當(dāng)從外部裝置(200)對由標(biāo)識符(Ch1,Ch2)指定的應(yīng)用程序(AP1~AP3)發(fā)出處理執(zhí)行命令,令其執(zhí)行規(guī)定的處理時(shí),所述處理執(zhí)行部分(120)根據(jù)所述規(guī)定的應(yīng)用程序并使用為所述應(yīng)用程序確保的應(yīng)用程序用工作區(qū),執(zhí)行所述規(guī)定處理。
2.根據(jù)權(quán)利要求1所述的便攜式信息記錄裝置,其特征在于,便攜式信息記錄裝置(100)中的處理執(zhí)行部分(120)進(jìn)行以下處理當(dāng)外部裝置(200)發(fā)出認(rèn)證命令,進(jìn)行有關(guān)由標(biāo)識符(Ch1,Ch2)指定的應(yīng)用程序(AP1~AP3)的認(rèn)證時(shí),其根據(jù)該認(rèn)證命令執(zhí)行認(rèn)證處理,將其認(rèn)證結(jié)果存儲(chǔ)到為該應(yīng)程序確保的應(yīng)用程序用工作區(qū)中;當(dāng)外部裝置(200)發(fā)出處理執(zhí)行命令,令由標(biāo)識符(Ch1,Ch2)指定的應(yīng)用程序(AP1~AP3)執(zhí)行規(guī)定的處理時(shí),所述處理執(zhí)行部分(120)參照為該應(yīng)用程序確保的應(yīng)用程序用工作區(qū)中存儲(chǔ)的認(rèn)證結(jié)果,判斷所發(fā)來的處理執(zhí)行命令是否為允許執(zhí)行命令,當(dāng)判斷為允許執(zhí)行時(shí),則由該應(yīng)用程序執(zhí)行所述的規(guī)定處理。
3.根據(jù)權(quán)利要求2所述的便攜式信息記錄裝置(100),其特征在于,當(dāng)從外部裝置(200)接收關(guān)于規(guī)定的應(yīng)用程序(AP1~AP3)的認(rèn)證命令時(shí),處理執(zhí)行部分(120)把表示允許該應(yīng)用程序執(zhí)行的命令表信息作為認(rèn)證結(jié)果,存儲(chǔ)到應(yīng)用程序用工作區(qū)中。
4.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的便攜式信息記錄裝置(100),其特征在于,將工作用數(shù)據(jù)存儲(chǔ)部分(134)內(nèi)確保的應(yīng)用程序用工作區(qū)作為指定信息,在OS用工作區(qū)內(nèi)存儲(chǔ)該區(qū)域的起始地址(Add12,Add22)和該區(qū)的容量。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的便攜式信息記錄裝置(100),其特征在于,從外部裝置(200)接收了準(zhǔn)備命令時(shí),由處理執(zhí)行部分(120)調(diào)查應(yīng)用程序存儲(chǔ)部分(132)所存儲(chǔ)的應(yīng)用程序(AP1~AP3)的內(nèi)容,確保其大小與調(diào)查結(jié)果相符的應(yīng)用程序用工作區(qū)。
6.根據(jù)權(quán)利要求5所述的便攜式信息記錄裝置(100),其特征在于,根據(jù)應(yīng)用程序(AP1~AP3)內(nèi)使用的有關(guān)變量及數(shù)組信息,決定用于該應(yīng)用程序的應(yīng)用程序用工作區(qū)的容量。
7.根據(jù)權(quán)利要求1至6中任一項(xiàng)所述的便攜式信息記錄裝置(100),其特征在于,外部裝置(200)發(fā)出查詢命令,重新查詢可使用標(biāo)識符(Ch3~Ch8)時(shí),處理執(zhí)行部分(120)通過檢查OS用工作區(qū),識別已定義狀態(tài)或未定義狀態(tài)的標(biāo)識符,把已識別的標(biāo)識符作為響應(yīng),反饋給外部裝置。
8.根據(jù)權(quán)利要求1至7中任一所述的便攜式信息記錄裝置(100),其特征在于,其中,OS存儲(chǔ)部分(131)、應(yīng)用程序存儲(chǔ)部分(132)、和用戶數(shù)據(jù)存儲(chǔ)部分(133)由非易失性存儲(chǔ)器構(gòu)成;工作用數(shù)據(jù)存儲(chǔ)部分(134)由易失性存儲(chǔ)器構(gòu)成。
全文摘要
本發(fā)明提供一種便攜式信息記錄裝置,能夠同時(shí)利用多個(gè)應(yīng)用程序(AP1~AP3),如果給出對每個(gè)應(yīng)用程序附加了標(biāo)識符的準(zhǔn)備命令,在RAM(134)內(nèi)就可以確保每個(gè)應(yīng)用程序用的工作區(qū)。通過給出帶有特定標(biāo)識符的認(rèn)證命令來進(jìn)行有關(guān)特定應(yīng)用程序的認(rèn)證處理,認(rèn)證結(jié)果存入各應(yīng)用程序用的工作區(qū)。該認(rèn)證結(jié)果可持續(xù)到交換信息對話結(jié)束為止一直有效。為使特定的應(yīng)用程序執(zhí)行所希望的處理,而給出指定附加在該應(yīng)用程序上的標(biāo)識符的處理執(zhí)行命令。不僅能完全保證安全,還能在同一個(gè)交換信息對話中,一邊轉(zhuǎn)換多個(gè)應(yīng)用程序,一邊順利地進(jìn)行一系列的關(guān)聯(lián)處理。
文檔編號G06K19/10GK1556967SQ0281844
公開日2004年12月22日 申請日期2002年11月22日 優(yōu)先權(quán)日2001年11月27日
發(fā)明者入澤和義, 柴田直人, 神力哲夫, 人, 夫 申請人:大日本印刷株式會(huì)社