(57)【特許請求の範囲】
【請求項１】
読み出し専用メモリ、一時記憶および作業用メモリ、書き換え可能な不揮発性メモリ、演算処理装置を備え、前記書き換え可能な不揮発性メモリに複数のアプリケーションが格納され、各アプリケーションに共通のコマンドセットを有するＩＣカードにおいて、各アプリケーション毎に専用のコマンドセットを有し、外部からコマンドを受信したとき、選択されているアプリケーションの専用コマンドセットを検索し、検索に成功した時はそのコマンドを実行し、検索できなかった時には共通のコマンドセットを検索するようにコマンドを振り分けるコマンド振り分け手段を備えたことを特徴とするコマンド振り分け機能付きＩＣカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は演算処理機能を備えたＩＣカードの演算処理システム（ＯＳ）に関するものである。
【０００２】
【従来の技術】
図３はＩＣカードを用いたシステムの概念図である。
端末装置１にＩＣカード２をセットすると、端末装置１からはＩＣカード２に対して、コマンド（命令）を送信し、これを受信したＩＣカード２はコマンドを解釈して書き込み、読み取り、読み出し等の処理を実行し、処理結果をレスポンスとして端末装置１に返すようになっている。
【０００３】
図４はＩＣカードの構成を示す図である。
ＩＣカード２はＣＰＵ２０、ＲＡＭ２１、ＲＯＭ２２、ＥＥＰＲＯＭ２３（不揮発性メモリであれば他のメモリでもよい）を有しており、ＲＯＭ２２に記憶されているプログラムをＣＰＵ２０に読み込み、端末装置１から送信されるコマンドをＩ／Ｏポート（端末とのインターフェース）を通して受信するとこれを解釈し、コマンドと共に送信されたデータを読み込んで、必要な処理を行い、結果をＥＥＰＲＯＭ２３の所定のファイルエリアに書き込み、Ｉ／Ｏポートを通してレスポンスを出力するものである。なお、プログラムはＥＥＰＲＯＭ２３に記憶してもよい。
【０００４】
このようなＩＣカードにおいて、複数の異なる仕様のアプリケーションを搭載した場合、それぞれのアプリケーション間でのコマンドの競合を避けるために、全てのアプリケーションに共通のコマンドセット（図５に示すように、端末から送信されるインストラクションコードに対応する処理内容と、実行するプログラムが対応付けされているもので、例えばＲＯＭにセットされている）を持ち、各アプリケーション毎に実行できるコマンドを選択して出すように指示するなど、所定のルールのもとにコマンドを発行していた。あるいは、それぞれのアプリケーション毎にインストラクションコードの異なるコマンドを持つことで、ＯＳは同じ類のコマンドであっても別コマンドであると判断してその競合を解消していた。
【０００５】
【発明が解決しようとする課題】
従来のＩＣカードでは、複数のアプリケーションを搭載する場合、同一のコマンドセットを使用していたため、各アプリケーション毎に要求される細かい仕様に対応することができなかった。各アプリケーション毎の細かい仕様に対応させるためには、アプリケーション毎にコマンドセットを持つ必要があるため、ＩＳＯ規格によるコマンドであってもインストラクションコードを仕様により変更して実現しなくてはならない。このため、端末とＩＣカード間のインターフェースは対応の柔軟性を失うことになり、さらに冗長なメモリ空間を使用することにもなっていた。
【０００６】
本発明は上記課題を解決するためのもので、ＩＣカードに複数の異なる仕様のアプリケーションを搭載した場合に、各アプリケーション間でのコマンドの競合を避けるとともに、カードに対するコマンドの柔軟性を持たせるようにすることを目的とする。
【０００７】
【課題を解決するための手段】
本発明は、読み出し専用メモリ、一時記憶および作業用メモリ、書き換え可能な不揮発性メモリ、演算処理装置を備え、前記書き換え可能な不揮発性メモリに複数のアプリケーションが格納され、各アプリケーションに共通のコマンドセットを有するＩＣカードにおいて、各アプリケーション毎に専用のコマンドセットを有し、外部からコマンドを受信したとき、選択されているアプリケーションの専用コマンドセットを検索し、検索に成功した時はそのコマンドを実行し、検索できなかった時には共通のコマンドセットを検索するようにコマンドを振り分けるコマンド振り分け手段を備えたことを特徴とする。
【０００８】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
図１は本発明のＩＣカードの機能を説明する図である。なお、以下で説明するＩＣカードは、カード形状に限定されず、可搬可能なものも含み、接触型及び／又は非接触型等のＩＣカードなど広く適用できるものであることは言うまでもない。
コマンド振り分け手段３０は端末から発行されるコマンド（インストラクションコード）を共通のコマンドセット３１、あるいは各アプリケーション毎に設定されている専用コマンドセットに振り分ける機能を有している。共通のコマンドセット３１は、例えばＲＯＭに格納されており、リードコマンド、ライトコマンド、消去コマンド等の各アプリケーションに共通するコマンドセットであり、各アプリケーション１，２，……ｎにはそれぞれ専用のコマンドセットが設けられている。コマンドセットは、図５に示したように、各インストラクションコードに対する処理内容と実行プログラムを対応つけたものである。
【０００９】
端末からコマンドを受け取ると、コマンド振り分け手段３０はどのアプリケーションが選択されているかを見て、例えば、アプリケーション１が選択されていると、まずアプリケーション１の専用コマンドセットに受信したコマンドを振り分け、該当するコマンドがあるか否かを検索する。専用コマンドセットの中に該当するものがあればそのコマンドが解釈されて実行される。一方、専用コマンドセットの中に該当するものがなければ、コマンド振り分け手段３０は共通のコマンドセット３１に振り分け、該当するものがあるか否かを検索する。
このように、共通のコマンドセットとアプリケーションに特化した専用のコマンドセットを持つようにしたので、アプリケーションを新たに追加する場合、そのアプリケーションに特化した専用のコマンドセットを同時に追加することで、既存の共通のコマンドセットを無駄にすることなく使用することができる。
【００１０】
〔実施例〕
ＩＣカード内には、アプリケーションＡおよびアプリケーションＢが搭載されている。この２つのアプリケーションのコマンド仕様は異なっているが、同一のインストラクションコードのコマンドが存在するとする。例えば、
アプリケーションＡ：ＲＥＡＤ  ＲＥＣＯＲＤコマンド
（１レコードのみ読み出し可能）
アプリケーションＢ：ＲＥＡＤ  ＲＥＣＯＲＤコマンド
（複数のレコード読み出し可能）
この場合、ＩＣカードがコマンドを受信し、アプリケーションＡが選択されている場合、まずアプリケーションＡの専用のコマンドセットの中から受信したＲＥＡＤ  ＲＥＣＯＲＤコマンドのインストラクションコードを検索する。検索に成功した場合はそのコマンドを実行し、失敗した場合、共通のコマンドセットを検索する。
【００１１】
図２は上記実施例の検索処理フローを示す図である。
ＩＣカードがＲＥＡＤ  ＲＥＣＯＲＤコマンドを受信すると、選択されているアプリケーションに特化した専用のコマンドセットにＲＥＡＤ  ＲＥＣＯＲＤが存在するか否か見て、存在すれば選択したアプリケーションのＲＥＡＤ  ＲＥＣＯＲＤコマンドを実行する。一方、選択されているアプリケーションの専用のコマンドセットにＲＥＡＤ  ＲＥＣＯＲＤが存在しない場合は、共通のＲＥＡＤＲＥＣＯＲＤコマンドを実行する。
【００１２】
【発明の効果】
以上のように本発明によれば、ＩＣカードは、仕様は異なっているが、同じインストラクションコードであるコマンドを受信した場合であっても、選択しているアプリケーションに特化したコマンドを実行することができ、特化したコマンドがない場合には共通のコマンドを検索して実行することができる。そのため、端末はアプリケーション毎のコマンド仕様の差異を考慮することなしに、コマンドを送信することが可能である。
【図面の簡単な説明】
【図１】  本発明のＩＣカードの機能を説明する図である。
【図２】  実施例の検索処理フローを示す図である。
【図３】  ＩＣカードを用いたシステムの概念図である。
【図４】  ＩＣカードの構成を示す図である。
【図５】  コマンドセットを説明する図である。
【符号の説明】
３０…コマンド振り分け手段、３１…共通のコマンドセット。
【図１】
0004026796.tif 000002
【図２】
0004026796.tif 000003
【図３】
0004026796.tif 000004
【図４】
0004026796.tif 000005
【図５】
0004026796.tif 000006