(57)【要約】【課題】処理にかかる時間の短縮及び利便性の向上を図ることが可能なＩＣカード及びＩＣカードプログラムを提供する。【解決手段】複数のアプリケーションを記憶するＥＥＰＲＯＭ１７と、外部装置２０と通信を行う環境である通信環境を設定するための通信環境設定情報を外部装置２０と通信する通信部１１と、この通信から外部装置２０との間で決定したプロトコル形式等の通信プロトコルに基づいて、ＥＥＰＲＯＭ１７に記憶されている複数のアプリケーションの中から一のアプリケーションを選択するアプリケーション選択部１４１とを備えるＩＣカード１０。【選択図】　　　　　　　　図１
2004139244.tif 000002
【特許請求の範囲】
【請求項１】
複数のアプリケーションを記憶するアプリケーション記憶手段と、
外部装置と通信を行う環境である通信環境を設定するための通信環境設定情報を、前記外部装置と通信する通信環境設定情報通信手段と、
前記通信環境設定情報通信手段によって通信される通信環境設定情報に基づいて、前記アプリケーション記憶手段によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択するアプリケーション選択手段と
を備えるＩＣカード。
【請求項２】
請求項１に記載のＩＣカードにおいて、
前記アプリケーション選択手段は、前記外部装置との間で決定した通信プロトコルに基づいて、前記アプリケーション記憶手段によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択すること、
を特徴とするＩＣカード。
【請求項３】
請求項１又は請求項２に記載のＩＣカードにおいて、
前記アプリケーション選択手段は、前記外部装置との間で決定したプロトコル形式及び／又は通信速度に基づいて、前記アプリケーション記憶手段によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択すること、
を特徴とするＩＣカード。
【請求項４】
複数のアプリケーションを記憶するアプリケーション記憶部を備えるＩＣカードのＣＰＵに実行させるＩＣカードプログラムであって、
外部装置と通信を行う環境である通信環境を設定するための通信環境設定情報を、前記外部装置と通信する通信環境設定情報通信手順と、
前記通信環境設定情報通信手順において通信する通信環境設定情報に基づいて、前記アプリケーション記憶部に記憶している複数のアプリケーションの中から一のアプリケーションを選択するアプリケーション選択手順とを備えること、
を特徴とするＩＣカードプログラム。
【請求項５】
請求項４に記載のＩＣカードプログラムにおいて、
前記アプリケーション選択手順は、前記外部装置との間で決定した通信プロトコルに基づいて、前記アプリケーション記憶部に記憶している複数のアプリケーションの中から一のアプリケーションを選択すること、
を特徴とするＩＣカードプログラム。
【請求項６】
請求項４又は請求項５に記載のＩＣカードプログラムにおいて、
前記アプリケーション選択手順は、前記外部装置との間で決定したプロトコル形式及び／又は通信速度に基づいて、前記アプリケーション記憶部に記憶している複数のアプリケーションの中から一のアプリケーションを選択すること、
を特徴とするＩＣカードプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のアプリケーションを搭載及び削除可能なＩＣカード、このＩＣカードのＣＰＵに実行させるＩＣカードプログラムに関するものである。
【０００２】
【従来の技術】
最近では１枚のＩＣカードに複数のアプリケーションが搭載されたマルチアプリケーションＩＣカードが利用されるようになり複数枚のカードの機能が１枚のＩＣカードに集約され、利用する側にとってはカードを複数枚持ち運ぶ手間や、ＡＴＭ等の外部装置の前に立ち、どのカードをカード装置に挿入すれば良いかといった悩みもなくなり、利便性が向上している。このマルチアプリケーションＩＣカードとして有名なものは、ＭＵＬＴＯＳカードやＪａｖａＣａｒｄ（「ＪＡＶＡ」は、登録商標。）であり、これらはそれぞれ、ＭＥＬ（Ｍｕｌｔｏｓ　Ｅｘｅｃｕｔａｂｅｌ　Ｌａｎｇｕａｇｅ）言語、Ｊａｖａ言語で記述された複数のアプリケーションを搭載・削除が可能なＩＣカードである。通常、ＩＣカードには、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭといった機能が１チップ化されており、接触式、非接触式、又は、接触式／非接触式両方のインターフェイス（Ｉ／Ｆ）を有するものがある。
なお、アプリケーションとは、主にプログラムコードの部分であるプログラム部、個人情報等のプログラム部の処理に必要なデータであるデータ部及び外部に知らせるための情報である属性情報等で構成され、基本ソフトウェアであるオペレーティングシステム（以下、「オペレーティングシステム」を「ＯＳ」という。）の管理下においてＣＰＵにＩＣカードの各種用途に合わせた処理を行わせるためにまとめられた情報である。
【０００３】
しかし、外部装置は、複数のアプリケーションが搭載されたマルチアプリケーションＩＣカードを処理する場合には、処理の対象となる一のアプリケーションを選択するため、アプリケーションを選択する要求であるセレクトコマンドをＩＣカードへ送信し、ＩＣカードで処理を行い、処理結果であるレスポンスを受信する必要があり、この選択についての一連の処理に時間がかかり、利用者が待たされるという問題があった。アプリケーションの選択とは、ＩＣカードがセレクトコマンドで指定されるアプリケーションのファイルを識別する識別情報をＲＡＭに保持し、カレントファイル等のコマンドのアクセス対象を設定することである。
この課題を解決するため、ＭＵＬＴＯＳカードやＪａｖａＣａｒｄでは、デフォルト選択されるアプリケーションを仕様に定めている。これによれば、ＩＣカードの初期化（リセット）後に、外部装置からアプリケーション選択コマンド（Ｓｅｌｅｃｔ　ｆｉｌｅ　ｃｏｍｍａｎｄ）がＩＣカードに対し実行されたかの様に振る舞うというものであって、一のアプリケーションがデフォルト選択されることによって、選択コマンドの処理にかかる時間を短縮し、一つの意味のある一連の処理についての処理速度（いわゆるトランザクションの処理速度）の迅速化を図ることが可能となる（例えば、特許文献１参照）。
【０００４】
【特許文献１】
特開２０００−１４８９４５号公報（［００２９］、図４）
【０００５】
【発明が解決しようとする課題】
しかし、ＩＣカードを使用する場所等の理由によって、デフォルト選択されるアプリケーションと、使用されるアプリケーションが異なる場合には、改めて選択コマンドをＩＣカードに対して実行する必要があり、常に選択コマンドを実行しなくてもよいというわけではないという問題があった。
【０００６】
本発明の課題は、処理にかかる時間の短縮及び利便性の向上を図ることが可能なＩＣカード及びＩＣカードプログラムを提供することである。
【０００７】
【課題を解決するための手段】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。すなわち、請求項１の発明は、複数のアプリケーションを記憶するアプリケーション記憶手段（１７）と、外部装置（２０）と通信を行う環境である通信環境を設定するための通信環境設定情報を、前記外部装置と通信する通信環境設定情報通信手段（１１）と、前記通信環境設定情報通信手段によって通信される通信環境設定情報に基づいて、前記アプリケーション記憶手段によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択するアプリケーション選択手段（１４１，１４１−２）とを備えるＩＣカード（１０，１０−２）である。
【０００８】
請求項２の発明は、請求項１に記載のＩＣカードにおいて、前記アプリケーション選択手段は、前記外部装置との間で決定した通信プロトコルに基づいて、前記アプリケーション記憶手段によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択すること、を特徴とするＩＣカード（１０，１０−２）である。
【０００９】
請求項３の発明は、請求項１又は請求項２に記載のＩＣカードにおいて、前記アプリケーション選択手段は、前記外部装置との間で決定したプロトコル形式及び／又は通信速度に基づいて、前記アプリケーション記憶手段によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択すること、を特徴とするＩＣカード（１０，１０−２）である。
【００１０】
請求項４の発明は、複数のアプリケーションを記憶するアプリケーション記憶部を備えるＩＣカードのＣＰＵに実行させるＩＣカードプログラムであって、外部装置と通信を行う環境である通信環境を設定するための通信環境設定情報を、前記外部装置と通信する通信環境設定情報通信手順（Ｓ１１０，Ｓ１２０、Ｓ１５０，Ｓ２２０、Ｓ２５０，Ｓ３２０；Ｓ４１０，Ｓ４２０、Ｓ４５０，Ｓ４７０、Ｓ４５０，Ｓ６２０、Ｓ６５０，Ｓ７２０、）と、前記通信環境設定情報通信手順において通信する通信環境設定情報に基づいて、前記アプリケーション記憶部に記憶している複数のアプリケーションの中から一のアプリケーションを選択するアプリケーション選択手順（Ｓ１４０，Ｓ２４０，Ｓ３４０、Ｓ４４０，Ｓ５００，Ｓ５３０，Ｓ６４０，Ｓ７４０、）とを備えること、を特徴とするＩＣカードプログラムである。
【００１１】
請求項５の発明は、請求項４に記載のＩＣカードプログラムにおいて、前記アプリケーション選択手順は、前記外部装置との間で決定した通信プロトコルに基づいて、前記アプリケーション記憶部に記憶している複数のアプリケーションの中から一のアプリケーションを選択すること、を特徴とするＩＣカードプログラムである。
【００１２】
請求項６の発明は、請求項４又は請求項５に記載のＩＣカードプログラムにおいて、前記アプリケーション選択手順は、前記外部装置との間で決定したプロトコル形式及び／又は通信速度に基づいて、前記アプリケーション記憶部に記憶している複数のアプリケーションの中から一のアプリケーションを選択すること、を特徴とするＩＣカードプログラムである。
【００１３】
【発明の実施の形態】
以下、図面等を参照しながら、本発明の実施の形態について、更に詳しく説明する。
（第１実施形態）
図１は、本発明によるＩＣカードの第１実施形態を示すブロック図である。
図１に示すように、ＩＣカード１０は、ＡＴＭ等のリーダライタを備える情報処理端末である外部装置２０に挿入され、接続されることによって、外部装置２０と通信を行う。ＩＣカード１０は、複数のアプリケーションを搭載及び削除可能なマルチアプリケーションＩＣカードであって、通信部１１及びＩＣチップ１２を備えている。通信部１１は、例えば、アンテナ、接触端子等であって、外部装置２０及びＣＰＵ１４の通信を媒介する。ＩＣチップ１２は、ＣＰＵ１４と、ＣＰＵ１４に接続されたＩ／Ｏインターフェイス１３、ＲＡＭ１５、ＲＯＭ１６及びＥＥＰＲＯＭ１７等を備えている。
【００１４】
Ｉ／Ｏインターフェイス４３は、通信部１１及びＣＰＵ１４間の入出力を媒介する入出力インターフェイスである。
ＣＰＵ１４は、種々の演算及び制御を行う、ＩＣカード１０を統括制御する中央処理装置であって、ＲＯＭ１６、ＥＥＰＲＯＭ１７等のメモリに格納されているプログラムを実行することによって、アプリケーション選択部１４１等を実現する。アプリケーション選択部１４１は、外部装置２０からのリセット信号に対する応答である初期応答情報（ＡＴＲ；Ａｎｓｗｅｒ　Ｔｏ　Ｒｅｓｅｔ）に含まれ、通信プロトコル等、ＩＣカード１０及び外部装置２０間における通信を行う通信環境を設定するためにＩＣカード１０及び外部装置２０間で通信される通信環境設定情報と、ＲＯＭ１６に記憶されているアプリケーション選択テーブルとに基づいて、ＥＥＰＲＯＭ１７によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択する機能を備えている。
【００１５】
ＲＡＭ１５、ＲＯＭ１６及びＥＥＰＲＯＭ１７は、プログラム等のＣＰＵ１４の処理に必要な情報を記憶するための記憶手段である。ＲＡＭ１５は、揮発性メモリであり、ＣＰＵ１４が処理を行うための作業領域として使用される。
ＲＯＭ１６は、不揮発性の読み出し専用メモリであって、ＯＳ、実行環境等のプログラム等を記憶している。また、ＲＯＭ１６は、コールドリセット用ＡＴＲ、ウォーム１リセット用ＡＴＲ及びウォーム２リセット用ＡＴＲの３種類の初期応答情報をそれぞれ格納する初期応答ファイルが記憶されている。
【００１６】
初期応答情報は、ＩＣカード１０及び外部装置２０間のシリアルデータ伝送の意味づけ（ＬＳＢファースト等）を示す意味づけ、初期応答情報の構成を示す構成表示、接続情報、ＩＣカード１０の使用方法に関する各種データを示す管理情報、初期応答情報に誤りがあるか否かを示す検査情報等を含んでいる。接続情報は、ＩＣカード１０が設定可能な通信プロトコルを示す情報であって、通信周波数、通信速度、プロトコル形式等のＩＣカード１０及び外部装置２０間での通信プロトコルを決定するために、ＩＣカード１０から外部装置２０へ送信される情報であって、ＩＣカード１０及び外部装置２０間の通信環境を設定するための通信環境設定情報である。具体的には、接続情報は、クロック伝送率変換因子Ｆ、ビット伝送率調整因子Ｄ、最大プログラム供給電流因子Ｉ、プログラム供給電圧因子Ｐ、特別キャラクタ保護時間Ｎ等の通信プロトコル上の各種パラメータと、プロトコル形式Ｔとを示す情報である。なお、通信プロトコルとは、複数のデバイスやコンピュータシステムが互いに通信するための規約である。
【００１７】
本実施形態において、コールドリセット用ＡＴＲは、コールドリセット、つまり、活性化及び初期化のために非活性状態のＩＣカード１０が外部装置２０から提供される電源（Ｖｃｃ）その他のリセット信号に対して送信する初期応答情報であって、プロトコル形式がＴ＝０、通信速度が３８．４ｋｂｐｓ等の設定である通信プロトコルＡを示す接続情報を含んでいる。ウォーム１リセット用ＡＴＲ及びウォーム２リセット用ＡＴＲは、ウォームリセット、つまり、クロック（ＣＬＫ）及び電源が供給され、ＩＣカード１０が活性化されている状態において受信するリセット信号に対する初期応答情報である。ウォーム１リセット用ＡＴＲ及びウォーム２リセット用ＡＴＲは、プロトコル形式及び通信速度がそれぞれＴ＝０及び９６００ｂｐｓ等の設定である通信プロトコルＢ，Ｔ＝１及び９６００ｂｐｓ等の設定である通信プロトコルＣを示す接続情報をそれぞれ含んでいる。プロトコル形式は、伝送制御、制御手順等を示し、プロトコル形式のＴ＝０は、調歩式半二重キャラクタ式通信プロトコル、Ｔ＝１は、調歩式半二重ブロック式通信プロトコルを示している。
【００１８】
図２は、ＲＯＭに記憶されている選択アプリケーションテーブルを示す図である。
図２に示すように、ＲＯＭ１６は、ＩＣカード１０が設定可能なプロトコル形式と、ＥＥＰＲＯＭ１７に記憶されている複数のアプリケーションとをそれぞれ関連づける選択アプリケーションテーブルを記憶している。この選択アプリケーションテーブルは、ＩＣカード１０及び外部装置２０間で決定したプロトコル形式によって、アプリケーション選択部１４１が選択するアプリケーションを示し、プロトコル形式がＴ＝０で決定すれば、クレジット・アプリケーションを選択し、Ｔ＝１では、ポイント・アプリケーションを選択する。なお、この関連づけは、任意に設定することが可能である。なお、外部装置２０は、記憶しているアプリケーションについて、この選択アプリケーションテーブルと同様のテーブルを記憶し、いずれの通信プロトコルが設定された場合に、処理を行うアプリケーションが選択されるかを認識することが可能である。
ＥＥＰＲＯＭ１７は、書き換え可能な不揮発性メモリであって、複数のアプリケーションを記憶し、ＣＰＵ１４の作業領域としても使用される。
【００１９】
図３は、第１実施形態における、本発明によるＩＣカードの動作及び本発明によるＩＣカードプログラムの実行を示すフローチャートである。
ステップ１００（以下、「ステップ」を「Ｓ」という。）において、ＩＣカード１０は、非活性状態で外部装置２０のリーダライタに接続されている。
Ｓ１１０において、ＩＣカード１０は、リセット信号を受信し、電源等の供給を受け、活性化される。ＩＣカード１０は、コールドリセット用ＡＴＲを外部装置２０へ送信し（Ｓ１２０）、プロトコル形式をＴ＝０、通信速度を３８．４ｋｂｐｓ等、コールドリセット用ＡＴＲが示す通信プロトコルＡに設定する（Ｓ１３０）。また、アプリケーション選択部１４１は、選択アプリケーションテーブルに基づいて、プロトコル形式Ｔ＝０に対応するクレジット・アプリケーションを選択する（Ｓ１４０）。
【００２０】
外部装置２０は、Ｓ１２０においてＩＣカード１０から送信された初期応答情報を受信し、このコールドリセット用ＡＴＲが示す通信プロトコルＡを設定可能であるか否かを判定する。例えば、外部装置２０は、９６００ｂｐｓでの通信のみが可能であれば、３８．４ｋｂｐｓの通信速度での処理は不可能であり、ＩＣカード１０に設定可能な他の通信プロトコルでの通信を要求するために、再びリセット信号を送信する。一方、通信プロトコルＡを設定可能である場合には、Ｓ１４０においてＩＣカード１０で選択されているクレジット・アプリケーションを対象としたコマンドをＩＣカード１０へ送信し、アプリケーションについての処理を開始する。
【００２１】
ＩＣカード１０は、コールドリセット用ＡＴＲの送信（Ｓ１２０）後に、コマンドを受信した場合には（Ｓ１５０，Ｓ１６０）、コマンドに応じた処理であるコマンド処理を行い（Ｓ１７０）、その結果であるレスポンスを外部装置２０へ送信する（Ｓ１８０）。ＩＣカード１０は、電源の供給がなくなり処理を終了するまで（Ｓ２００）、又は、リセット信号を受信（Ｓ１５０）するまで同様の処理を繰り返し（Ｓ１７０，Ｓ１８０，Ｓ１９０）、リセット信号を受信した場合には、Ｓ１６０からの処理を行う。
【００２２】
一方、ＩＣカード１０は、アプリケーションの選択（Ｓ１４０）後に、再び、リセット信号を受信した場合には（Ｓ１５０，Ｓ１６０）、ウォーム１リセット用ＡＴＲを外部装置２０へ送信し（Ｓ２２０）、プロトコル形式をＴ＝０、通信速度を９６００ｂｐｓ等、通信プロトコルＢに設定する（Ｓ２３０）。また、アプリケーション選択部１４１は、プロトコル形式Ｔ＝０に対応するクレジット・アプリケーションを選択する（Ｓ２４０）。
【００２３】
ＩＣカード１０は、アプリケーションの選択（Ｓ１４０）後に、コマンドを受信した場合には（Ｓ２５０，Ｓ２６０）、コマンド処理等を行い（Ｓ１７０，Ｓ１８０）、リセット信号を再び受信した場合には（Ｓ２５０，Ｓ２６０）、ウォーム２リセット用ＡＴＲを外部装置２０へ送信し（Ｓ３２０）、プロトコル形式をＴ＝１、通信速度を９６００ｂｐｓ等、通信プロトコルＣに設定する（Ｓ３３０）。また、アプリケーション選択部１４１は、プロトコル形式Ｔ＝１に対応するポイント・アプリケーションを選択する（Ｓ３４０）。
ＩＣカード１０は、ウォーム２リセット用ＡＴＲの送信（Ｓ３２０）後に、コマンドを受信した場合には（Ｓ３５０，Ｓ３６０）、コマンド処理等を行い（Ｓ１７０，Ｓ１８０）、リセット信号を再び受信した場合には（Ｓ３５０，Ｓ３６０）、レスポンスとしてエラーを外部装置２０へ送信し（Ｓ３７０，Ｓ１８０）、他のコマンドを受信しなければ処理を終了する（Ｓ１９０，Ｓ２００）。
【００２４】
このように、第１実施形態によれば、ＩＣカード１０は、外部装置２０との間で決定したプロトコル形式に基づいて、アプリケーションの選択を行うため、セレクトコマンドの処理にかかる時間を短縮し、利便性を向上することが可能となった。
【００２５】
（第２実施形態）
図４は、本発明によるＩＣカード１０−２の第２実施形態を示すブロック図である。
図４に示すように、ＩＣカード１０−２は、通信部１１及びＩＣチップ１２−２を備えるマルチアプリケーションＩＣカードである。ＩＣチップ１２−２は、ＣＰＵ１４−２と、ＣＰＵ１４−２に接続されたＩ／Ｏインターフェイス１３、ＲＡＭ１５、ＲＯＭ１６−２及びＥＥＰＲＯＭ１７等を備えている。
【００２６】
ＣＰＵ１４−２は、ＲＯＭ１６−２、ＥＥＰＲＯＭ１７等のメモリに格納されているプログラムを実行することによって、アプリケーション選択部１４１−２等を実現する。アプリケーション選択部１４１−２は、ＩＣカード１０−２及び外部装置２０間で通信される通信環境設定情報である初期応答情報と、ＲＯＭ１６−２に記憶されているアプリケーション選択テーブルとに基づいて、ＥＥＰＲＯＭ１７によって記憶されている複数のアプリケーションの中から一のアプリケーションを選択する機能を備えている。
また、ＣＰＵ１４−２は、外部装置２０から受信するプロトコルパラメータセレクトコマンド（以下、「ＰＰＳコマンド」という。）に応じた処理を行う。ＰＰＳコマンドは、通信プロトコル上の各種パラメータ、プロトコル形式等の通信環境設定情報を含み、指定する通信プロトコルの設定を要求するコマンドある。ＣＰＵ１４−２は、ＰＰＳコマンドが指定する通信プロトコルが設定可能か否かを判定し、可能である場合に設定を行い、その処理結果を外部装置２０へ送信する。
【００２７】
ＲＯＭ１６−２は、コールドリセット用ＡＴＲ、ウォーム１リセット用ＡＴＲ及びウォーム２リセット用ＡＴＲの３種類の初期応答情報をそれぞれ格納する初期応答ファイルが記憶されている。
本実施形態において、コールドリセット用ＡＴＲは、第１実施形態と異なり、プロトコル形式がＴ＝０及びＴ＝１の２種類、通信速度が３８．４ｋｂｐｓ等の設定である通信プロトコルＡ’を示す接続情報を含んでいる。ウォーム１リセット用ＡＴＲ及びウォーム２リセット用ＡＴＲは、第１実施形態と同様に、プロトコル形式及び通信速度がそれぞれＴ＝０及び９６００ｂｐｓ等の設定である通信プロトコルＢ，Ｔ＝１及び９６００ｂｐｓ等の設定である通信プロトコルＣを示す接続情報をそれぞれ含んでいる。
また、ＲＯＭ１６−２は、第１実施形態と同様に選択アプリケーションテーブルを記憶している（図２参照）。
【００２８】
図５は、第２実施形態における、本発明によるＩＣカードの動作及び本発明によるＩＣカードプログラムの実行を示すフローチャートである。
Ｓ４００からＳ４６０まで、Ｓ５４０からＳ５７０まで、Ｓ６２０からＳ６６０まで、及び、Ｓ７２０からＳ７７０まで、ＩＣカード１０−２は、図３に示す第１実施形態のＩＣカード１０のＳ１００からＳ１６０まで、Ｓ１７０からＳ２００まで、Ｓ２２０からＳ２６０まで、及び、Ｓ３２０からＳ３７０までと略同様の処理を行う。なお、コールドリセット用ＡＴＲは、Ｔ＝０及びＴ＝１の複数のプロトコル形式を含んでいるが、数字の小さいＴ＝０が優先するため、ＩＣカード１０−２は、プロトコル形式をＴ＝０として、第１実施形態の通信プロトコルＡの設定と同様に通信プロトコルＡ’の設定を行う（Ｓ４３０）。
【００２９】
また、Ｓ４５０、Ｓ６５０、Ｓ７５０において、ＩＣカード１０−２がＰＰＳコマンドを受信した場合には、ＣＰＵ１４−２は、ＰＰＳコマンドが指定する通信プロトコルが設定可能か否か、つまり、プロトコル形式については、直前に送信したＡＴＲ（Ｓ４２０，Ｓ６２０，Ｓ７２０）にＰＰＳコマンドが指定するプロトコル形式が存在するか否かを判定し（Ｓ４８０，Ｓ５１０）、存在せず、不可能である場合には、エラーとなり（Ｓ７７０）、存在し、設定が可能である場合には、指定されている通信プロトコルでの設定を行う（Ｓ４９０，Ｓ５２０）。アプリケーション選択部（１４１−２）は、指定されているプロトコル形式に対応するアプリケーションを選択し（Ｓ５００，Ｓ５３０）、ＩＣカード１０−２は、処理結果をレスポンスとして送信し（Ｓ５５０）、他のコマンドを受信しなければ処理を終了する（Ｓ５６０，Ｓ５７０）。
【００３０】
このように、第２実施形態によれば、初期応答情報に２種類のプロトコル形式を含む場合であっても、ＩＣカード１０−２は、外部装置２０から受信したＰＰＳコマンドが指定する通信プロトコル等の通信環境設定情報に基づいて、アプリケーションの選択を行うため、第１実施形態と同様の効果を得ることが可能となった。
【００３１】
（変形形態）
以上説明した実施形態に限定されることなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲内である。例えば、各実施形態において、ＩＣカード１０，１０−２は、接触式のＩＣカードに限られず、非接触式又は接触式／非接触式兼用のＩＣカードであってもよい。また、ＩＣカード１０は、電磁誘導方式により外部装置２０と通信を行うＩＣカードに限られず、静電結合方式により通信を行うＩＣカードであってもよく、通信方法は、限定されない。他の通信方法の場合も同様にアプリケーション選択部１４１，１４１−２は、ＩＣカード１０，１０−２及び外部装置２０間で決定した通信プロトコル等、通信環境設定情報に基づいてアプリケーションの選択を行い、同様の効果を得ることが可能である。
【００３２】
各実施形態において、ＩＣカード１０，１０−２は、ウォーム２リセット用ＡＴＲの送信後にリセット信号を受信した場合に（Ｓ３５０，Ｓ３６０、Ｓ７５０，Ｓ７６０）、Ｓ１２０又はＳ４２０へ進み、再び同様の処理を繰り返してもよい。また、リセット信号を受信するたびに送信する、ＲＯＭ１６，１６−２に記憶されている各初期応答情報の順序は、限定されず、任意に設定してよい。
【００３３】
図６は、本発明によるＩＣカードの変形形態を説明する図である。
各実施形態において、アプリケーション選択部１４１，１４１−２は、ＩＣカード１０，１０−２及び外部装置２０間で決定したプロトコル形式と、ＲＯＭ１６，１６−２に記憶している選択アプリケーションテーブルに基づいてアプリケーションの選択を行っているが、図６に示すように、ＲＯＭ１６，１６−２に、ＩＣカード１０が設定可能なプロトコル形式及び通信速度と、ＥＥＰＲＯＭ１７に記憶されている複数のアプリケーションをそれぞれ関連づける選択アプリケーションテーブルを記憶し、プロトコル形式Ｔ＝１、通信速度が３８．４ｋｂｐｓで決定した場合には、クレジット・アプリケーションを選択する等、プロトコル形式及び通信速度に基づいてアプリケーションの選択を行ってもよい。
また、アプリケーション選択部１４１，１４１−２は、ＩＣカード１０，１０−２及び外部装置２０間で決定した通信プロトコルに含まれる他の１又は複数のパラメータに基づいてアプリケーションの選択を行ってもよい。
【００３４】
種々のパラメータの組合せに多種類のアプリケーションをそれぞれ対応させ、選択することができ、ＩＣカード１０，１０−２に多種類のアプリケーションを搭載した場合、また、ＩＣカード１０，１０−２が種々の外部装置２０に対応する場合であっても、同様の効果を得ることが可能である。また、例えば、遅い通信速度には、古い外部装置２０が処理を行うアプリケーションを対応させる等、アプリケーション選択部１４１，１４１−２が各パラメータの性質に基づいて、アプリケーションを選択することによって、より正確な選択を実現し、処理効率及び利便性を向上することが可能である。
【００３５】
各実施形態において、ＩＣカード１０，１０−２は、複数のアプリケーションをＥＥＰＲＯＭ１７，１７−２に記憶しているが、ＲＯＭ１６，１６−２に記憶していてもよく、ＥＥＰＲＯＭ１７，１７−２及びＲＯＭ１６，１６−２に記憶していてもよい。また、ＩＣカード１０，１０−２は、選択アプリケーションテーブルをＲＯＭ１６，１６−２に記憶しているが、ＥＥＰＲＯＭ１７，１７−２に記憶していてもよい。
【００３６】
第２実施形態において、ＩＣカード１０−２は、２種類のプロトコル形式を含む初期応答情報をＲＯＭ１６−２に記憶しているが、３種類以上のプロトコル形式を含む初期応答情報をＲＯＭ１６−２に記憶していてもよく、同様に通信速度等、他のパラメータを複数種類含む初期応答情報をＲＯＭ１６−２に記憶していてもよい。外部装置２０から受信するＰＰＳコマンドに含まれる通信環境設定情報に基づいて選択を行う等、ＩＣカード１０−２が同様の処理を行うことによって、同様の効果を得ることが可能である。
【００３７】
【発明の効果】
以上詳しく説明したように、本発明によれば、以下の効果を得ることが可能となった。
（１）通信環境設定情報に基づいて、記憶している複数のアプリケーションの中から一のアプリケーションを選択することによって、セレクトコマンドの処理にかかる時間を短縮し、利便性の向上を図る。
（２）特に、ＩＣカード及び外部装置間で決定したプロトコル形式、通信速度等の通信プロトコルに基づいて、アプリケーションの選択を行うことによって、より正確な選択を実現し、処理効率及び利便性の向上を図る
【図面の簡単な説明】
【図１】本発明によるＩＣカードの第１実施形態を示すブロック図である。
【図２】ＲＯＭに記憶されている選択アプリケーションテーブルを示す図である。
【図３】第１実施形態における、本発明によるＩＣカードの動作及び本発明によるＩＣカードプログラムの実行を示すフローチャートである。
【図４】本発明によるＩＣカード１０−２の第２実施形態を示すブロック図である。
【図５】第２実施形態における、本発明によるＩＣカードの動作及び本発明によるＩＣカードプログラムの実行を示すフローチャートである。
【図６】本発明によるＩＣカードの変形形態を説明する図である。
【符号の説明】
１０，１０−２　ＩＣカード
１１　通信部
１２，１２−２　ＩＣチップ
１３　Ｉ／Ｏインターフェイス
１４，１４−２　ＣＰＵ
１５　ＲＡＭ
１６，１６−２　ＲＯＭ
１７　ＥＥＰＲＯＭ
２０　外部装置
１４１，１４１−２　アプリケーション選択部
【図１】
2004139244.tif 000003
【図２】
2004139244.tif 000004
【図３】
2004139244.tif 000005
【図４】
2004139244.tif 000006
【図５】
2004139244.tif 000007
【図６】
2004139244.tif 000008