(57)【要約】【課題】それぞれボーレートが異なる新旧複数のアプリケーションを搭載して、それらを任意に選択的に使用可能なＩＣカードを提供する。【解決手段】新旧複数のアプリケーションを搭載し、かつ、新旧アプリケーションによってボーレート（Ｆ・Ｄ）が異なるＩＣカードにおいて、起動時あるいは再活性化時のＡＴＲ直後のＰＰＳリクエストで要求されたデータ伝送速度によってアプリケーションの選択を自動的に行なう。【選択図】    図１０
2005011008.tif 000002
【特許請求の範囲】
【請求項１】
外部装置との間でデータを送受信する通信手段と、
データを格納するメモリと、
外部装置との間のデータ伝送速度が一部とされるファイル定義情報により前記メモリに対し複数のファイルを定義してファイル構造を構築するファイル構築手段と、
前記通信手段を介して受信されたデータがＰＰＳリクエストである場合、このＰＰＳリクエストにより指定されるデータ伝送速度に一致するデータ伝送速度を持ったファイル定義情報により定義されたファイルを前記メモリから検索するファイル検索手段と、
前記通信手段を介して受信された次のデータが処理コマンドである場合、前記ファイル検索手段により検索されたファイルを用いた処理を実行する処理手段と、
を具備したことを特徴とするＩＣカード。
【請求項２】
前記ＰＰＳリクエストは、当該ＩＣカードの起動時あるいは再活性化時に出力される初期応答データの直後に外部装置から出力されることを特徴とする請求項１記載のＩＣカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、たとえば、書込み、書換えが可能な不揮発性メモリおよびこれらを管理、制御するためのＣＰＵなどの制御素子を有し、外部からのデータの入出力を行なう手段を備えたＩＣチップを内蔵したＩＣカードに関する。
【０００２】
【従来の技術】
近年、携帯可能な記憶媒体として、書込み、書換えが可能な不揮発性メモリおよびこれらを管理、制御するためのＣＰＵ（セントラル・プロセッシング・ユニット）などの制御素子を有し、外部からのデータの入出力を行なう手段を備えたＩＣチップを内蔵したＩＣカードが産業各方面で利用されている。
【０００３】
この種のＩＣカード、特にＥＣ（電子商取引）などの分野で注目されているＩＣカードは、ほとんどのものが国際標準仕様であるＩＳＯ／ＩＥＣ７８１６−３にて規定される通信プロトコルに準拠しており、この通信プロトコルにより外部装置との間でデータの入出力を行なう。また、ＩＣカードの起動時および再活性化時には、初期応答データであるＡＴＲ（Ａｎｓｗｅｒ  Ｔｏ  Ｒｅｓｅｔ）を出力することが  記述されている。ＡＴＲには、動作電圧などのＩＣカードの物理的特性に関する情報やＡＴＲ出力後の外部装置とのデータ伝送速度、動作モード（折衝可能モード、専用モード）に関する情報などが含まれている。
【０００４】
また、複数の通信プロトコルおよび複数のデータ伝送速度をサポート可能なＩＣカードでは、起動時と再活性化時では異なるＡＴＲを出力することで、伝送条件の変更を外部装置に通知する機能がＩＳＯ／ＩＥＣ７８１６−３の中に記述されている。
【０００５】
さらに、折衝可能モードの場合は、外部装置からＰＰＳ（プロトコル・アンド・パラメータ・セレクション）リクエストを出力し、データ伝送速度であるボーレート（Ｆ・Ｄ）を変更することが規定されている。なお、ＡＴＲに含まれる情報は、実際にＩＣカードで運用されるアプリケーションごとの準拠仕様にて規定されることとなる。この場合のアプリケーションとは、たとえば、クレジットやポイントシステムなどである。
通常、複数のアプリケーションを搭載するＩＣカードは、リセットされた後、最初のアプリケーションが機能する前に、アプリケーションを選択する処理が実行される。
【０００６】
【発明が解決しようとする課題】
しかしながら、既存システムの端末装置によっては、アプリケーションの選択を行なわないでアプリケーションの処理を行なうものがあり、そのため新システムの端末装置に対応したアプリケーションと旧システムの端末装置に対応したアプリケーションを搭載することができない。
【０００７】
そこで、本発明は、それぞれボーレートが異なる新旧複数のアプリケーションを搭載して、それらを任意に選択的に使用可能なＩＣカードを提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明のＩＣカードは、外部装置との間でデータを送受信する通信手段と、データを格納するメモリと、外部装置との間のデータ伝送速度が一部とされるファイル定義情報により前記メモリに対し複数のファイルを定義してファイル構造を構築するファイル構築手段と、前記通信手段を介して受信されたデータがＰＰＳリクエストである場合、このＰＰＳリクエストにより指定されるデータ伝送速度に一致するデータ伝送速度を持ったファイル定義情報により定義されたファイルを前記メモリから検索するファイル検索手段と、前記通信手段を介して受信された次のデータが処理コマンドである場合、前記ファイル検索手段により検索されたファイルを用いた処理を実行する処理手段とを具備している。
【０００９】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
図１は、本実施の形態に係るＩＣカードの構成を概略的に示すものである。本ＩＣカード１００は、カード表面に設けられた磁気ストライプ部１０１、外部装置としての端末装置（カードリーダライタ）との間でデータの送受信を行なう通信手段としての通信部１０２、および、１つ（あるいは複数）のＩＣチップ１０３から構成されている。
【００１０】
通信部１０２は、当該ＩＣカード１００が無線式ＩＣカードの場合にはアンテナおよび送受信部として構成され、無線式カードリーダライタから送信された変調波を非接触で受信したり外部へ変調波を送信するようになっている。また、受信した変調波から内部回路に供給するための電源やクロックパルスを生成するようになっている。また、当該ＩＣカード１００が接触式ＩＣカードの場合にはコンタクト部として構成され、カードリーダライタに設けられたＩＣカード接触端子部と接触することにより、データの送受信を行なうとともに、電源やクロックパルスを得るようになっている。
【００１１】
ＩＣチップ１０３は、制御手段としての制御素子（たとえばＣＰＵ）１０４、記憶手段としてのデータメモリ１０５、ワーキングメモリ１０６、および、プログラムメモリ１０７から構成され、通信部１０２と接続された状態でＩＣカード本体内に埋設されている。
【００１２】
制御素子１０４は、ファイル創成処理を行なうとともに、各種の判定処理／判断処理及びメモリへの書込みや読出しなどのデータ処理を行なう。
データメモリ１０５は、アプリケーションデータなどの各種データの記憶に使用され、たとえば、ＥＥＰＲＯＭ（エレクトリカリ・イレーザブル・アンド・プログラマブル・リード・オンリ・メモリ）などの消去（書き換え）可能な不揮発性メモリで構成されている。
【００１３】
ワーキングメモリ１０６は、制御素子１０４が処理を行なう際の処理データを一時的に保持するための作業用メモリであり、たとえば、ＲＡＭ（ランダム・アクセス・メモリ）などの揮発性メモリで構成されている。
プログラムメモリ１０７は、たとえば、マスクＲＯＭ（リード・オンリ・メモリ）などの書換え不可能な固定メモリで構成されており、各基本機能を実現するサブルーチンを備えた制御素子１０４の制御プログラムなどを記憶している。
【００１４】
データメモリ１０５には、たとえば、図２に示すように、複数のアプリケーションに関する情報がファイル構造で記憶されている。このファイル構造は、ＩＳＯ／ＩＥＣ７８１６−４に基づき、色々なフォルダの種類を持ったディレクトリのツリー構造になっており、複数のアプリケーションが登録可能である。
【００１５】
図２に示すように、最上位がＭＦ（Ｍａｓｔｅｒ  Ｆｉｌｅ）２０１で、その配下に各アプリケーションごとに設定されるフォルダとしてＤＦ（Ｄｅｄｉｃａｔｅｄ  Ｆｉｌｅ）２０２，２０３，２０４が設けられ、さらに、それらの配下に実際にアプリケーションで使われるユーザデータの格納に使用されるＥＦ（Ｅｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ）２０５，２０６，２０７，２０８，２０９，２１０が設けられている構成になっている。
また、ＭＦ２０１の配下には、アクセス権を確立するためのキーの格納に使用されるキーＥＦ２１１が設けられている。
【００１６】
そして、本実施の形態では、ＤＦ２０２（以後、ＤＦ１とも称す）には、たとえば、旧システムの端末装置に対応したアプリケーション用ファイルとしてＤＦ名が「旧システムアプリケーション」と設定され、その配下には、旧システムアプリケーションで使用されるＥＦ２０５（以後、ＥＦ１−１とも称す）、ＥＦ２０６（以後、ＥＦ１−２とも称す）の２つのファイルが存在する。
【００１７】
また、ＤＦ２０３（以後、ＤＦ２とも称す）には、たとえば、新システムの端末装置に対応したアプリケーション用ファイルとしてＤＦ名が「新システムアプリケーション」と設定され、その配下には、新システムアプリケーションで使用されるＥＦ２０７（以後、ＥＦ２−１とも称す）、ＥＦ２０８（以後、ＥＦ２−２とも称す）の２つのファイルが存在する。
【００１８】
さらに、ＤＦ２０４（以後、ＤＦ３とも称す）には、たとえば、サービスＺ社向けアプリケーション用ファイルとしてＤＦ名が「サービスＺ社」と設定され、その配下には、サービスＺ社向けアプリケーションで使用されるＥＦ２０９（以後、ＥＦ３−１とも称す）、ＥＦ２１０（以後、ＥＦ３−２とも称す）の２つのファイルが存在する。
【００１９】
図３は、図２で例示したファイル構造例に基づいたデータメモリ１０５におけるメモリマップである。図３に示すように、データメモリ１０５には、ＭＦ２０１の定義情報エリア３０、キーＥＦ２１１のキーエリア３１、ディレクトリ領域３２、空き領域３３およびエリア群３４が存在する。
【００２０】
ディレクトリ領域３２には、ＤＦ１，ＤＦ２，ＤＦ３、ＥＦ１−１，ＥＦ１−２，ＥＦ２−１，ＥＦ２−２，ＥＦ３−１，ＥＦ３−２の各定義情報３０１〜３０９がそれぞれ格納されている。また、エリア群３４には、複数のデータエリア、すなわち、ＥＦ３−２のデータエリア３７５、ＥＦ３−１のデータエリア３７６、ＥＦ２−２のデータエリア３７７、ＥＦ２−１のデータエリア３７８、ＥＦ１−２のデータエリア３７９、ＥＦ１−１のデータエリア３８０がそれぞれ設けられている。
【００２１】
ＤＦ１〜ＤＦ３の定義情報３０１，３０４，３０７は、たとえば、図４に示すようなフォーマットを持つ情報である。すなわち、ファイル識別子４０１、ＤＦ名４０２、アクセス条件情報４０３、ボーレート（Ｆ・Ｄ）４０４、ＤＦ固有番号４０５、ＤＦ固有情報４０６、および、ファイルチェックバイト４０７から構成されている。
【００２２】
ファイル識別子４０１は、当該ＤＦを識別するためのファイルの種類ごとにファイルの作成順で付与される作成番号からなるＤＦファイル識別子であり、本情報により処理対象ファイルの種類か否かを確認する。ＤＦ名４０２は、当該ＤＦを識別するために付与された識別情報としてのＤＦ名である。アクセス条件情報４０３は、当該ＤＦへのアクセスの際に必須な照合条件を示す情報である。
【００２３】
ボーレート（Ｆ・Ｄ）４０４は、端末装置（カードリーダライタ）との間のデータ伝送速度である。ＤＦ固有番号４０５は、当該ＤＦの創成時にカード内部で生成されるＤＦごとに固有な「００ｈ」以外の番号である。ＤＦ固有情報４０６は、ＤＦごとに固有の情報である。ファイルチェックバイト４０７は、創生された当該ＤＦの正当性をチェックするために、ファイル識別子４０１からファイルチェックバイト４０７までをＥＸ−ＯＲしたときに「００ｈ」となる値が設定される。
【００２４】
ＥＦ１−１，ＥＦ１−２，ＥＦ２−１，ＥＦ２−２，ＥＦ３−１，ＥＦ３−２の各定義情報３０２，３０３，３０５，３０６，３０８，３０９は、たとえば、図５に示すようなフォーマットを持つ情報である。すなわち、ファイル識別子５０１、ＤＦ固有番号５０２、ＥＦ−ＩＤ５０３、サイズ情報５０４、データエリア先頭アドレス５０５、アクセス条件情報５０６、および、ファイルチェックバイト５０７から構成されている。
【００２５】
ファイル識別子５０１は、当該ＥＦを識別するためのファイルの種類ごとにファイルの作成順で付与される作成番号からなるＥＦファイル識別子であり、本情報により処理対象ファイルの種類か否かを確認する。ＤＦ固有番号５０２は、当該ＥＦの創成時にカード内部で生成されるＥＦごとに固有な番号である。ＥＦ−ＩＤ５０３は、当該ＥＦを識別するために付与された識別情報としてのＩＤ番号である。
【００２６】
サイズ情報５０４は、当該ＥＦのサイズ情報である。データエリア先頭アドレス５０５は、データエリア３４の先頭アドレスである。アクセス条件情報５０６は、当該ＥＦへのアクセスの際に必須な照合条件を示す情報である。ファイルチェックバイト５０７は、創生された当該ＥＦの正当性をチェックするために、ファイル識別子５０１からファイルチェックバイト５０７までをＥＸ−ＯＲしたときに「００ｈ」となる値が設定される。
【００２７】
データメモリ１０５のファイルに対して、外部からアクセスが行なわれた場合、ワーキングメモリ１０６には、たとえば、図６に示すように、アクセス権が確立されたことを示すステータスフラグ６０１、カレントＤＦが定義されているアドレスであるカレントＤＦ定義情報アドレス６０２、カレントになっているＤＦの定義情報であるカレントＤＦ定義情報６０３〜６０８、カレントＥＦが定義されているアドレスであるカレントＥＦ定義情報アドレス６０９、カレントになっているＥＦの定義情報であるカレントＥＦ定義情報６１０〜６１４が格納される。ステータスフラグ６０１は、キーエリア３１内のキーの照合あるいは認証によって設定される。
【００２８】
これらのカレントＤＦ定義情報６０２〜６１４は、データメモリ１０５に対して外部からアクセスが行なわれたときに、データメモリ１０５のディレクトリ領域３２のアクセス対象ＤＦ定義情報から記憶される。
【００２９】
図７は、端末装置（カードリーダ・ライタ）から供給されるＤＦ選択コマンドのフォーマット例を示している。ＤＦ選択コマンドは、コマンドヘッダ７０１およびＤＦ名７０２から構成されている。制御素子１０４は、このＤＦ選択コマンド内のＤＦ名７０２でデータメモリ１０５のディレクトリ領域３２を検索することにより、指定されたＤＦを探し出すようになっている。
【００３０】
図８は、ＤＦ選択コマンドのコマンドヘッダ７０１のフォーマット例を示している。コマンドヘッダ７０１は、命令データ（ＣＬＡ）８０１、（ＩＮＳ）８０２、パラメータデータ（Ｐ１）８０３、（Ｐ２）８０４、（Ｌｃ）８０５から構成されており、パラメータデータ（Ｌｃ）８０５はＤＦ名７０２の長さを示し、パラメータデータ（Ｐ１）８０３で全ＤＦ名選択かパーシャルＤＦ名選択かを示し、パラメータデータ（Ｐ２）８０４でＤＦ情報出力ありか否かを示している。
【００３１】
次に、上記のような構成において動作を説明する。
まず、ＩＣカード１００と図示しない端末装置（カードリーダ・ライタ）との間の通信の流れについて、図９に示すフローチャートを参照して簡単に説明する。
【００３２】
端末装置からＩＣカード１００にリセット信号が入力され、解除されると（ステップＳ９１）、ＩＣカード１００は初期応答データ（ＡＴＲ）を端末装置へ送信する（ステップＳ９２）。このとき、初期応答データ内の動作モードが折衝可能モードになっている場合、端末装置はＰＰＳリクエストをＩＣカード１００へ送信する（ステップＳ９３）。
【００３３】
ＩＣカード１００は、ＰＰＳリクエストで指定されたボーレート（データ伝送速度）に応じたアプリケーション（ＤＦ）を選択し（ステップＳ９４）、ＰＰＳ成功のレスポンスを端末装置へ送信する（ステップＳ９５）。これを受けた端末装置は、電文ブロック（選択したアプリケーションを機能させるためのコマンド）をＩＣカード１００へ送信する（ステップＳ９６）。このコマンドを受けたＩＣカード１００は、先に選択されたアプリケーション（ＤＦ）に対する処理を実行する。
【００３４】
次に、ＩＣカード１００におけるステップＳ９４のアプリケーション（ＤＦ）の選択処理について図１０に示すフローチャートを参照して説明する。
制御素子１０４は、端末装置から送信されるＰＰＳリクエストを受信すると、データメモリ１０５のディレクトリ領域３２に登録されている定義情報を１つずつワーキングメモリ１０６に読込む（ステップＳ１０１）。次に、制御素子１０４は、読込んだ定義情報のファイル識別子４０１，５０１に基づき、当該定義情報がＤＦ定義情報であるか否かを確認する（ステップＳ１０２）。この確認の結果、ＤＦ定義情報である場合、制御素子１０４は、当該ＤＦ定義情報のボーレート（データ伝送速度）４０４とＰＰＳリクエストで指定されたボーレートとが一致するかを確認する（ステップＳ１０３）。
【００３５】
この確認の結果、両ボーレートが一致する場合、制御素子１０４は、ボーレートが一致したＤＦ定義情報のＤＦを選択し（ステップＳ１０４）、ＰＰＳレスポンスを端末装置へ送信する処理（図９のステップＳ９５の処理）へ移行する。
ステップＳ１０２における確認の結果、ＤＦ定義情報でない場合、あるいは、ステップＳ１０３における確認の結果、両ボーレートが一致しない場合、制御素子１０４は、ディレクトリ領域３２に次の定義情報があるか否かを確認する（ステップＳ１０５）。
【００３６】
この確認の結果、次の定義情報があれば、制御素子１０４は、ステップＳ１０１に戻って上記動作を繰り返し、次の定義情報がなければ、データメモリ１０５の定義情報エリア３０に登録されているＭＦ定義情報をワーキングメモリ１０６に読込み（ステップＳ１０６）、ＰＰＳレスポンスを端末装置へ送信する処理（図９のステップＳ９５の処理）へ移行する。
【００３７】
このように、新旧複数のアプリケーションを搭載し、かつ、新旧アプリケーションによってボーレート（Ｆ・Ｄ）が異なるＩＣカードにおいて、起動時あるいは再活性化時のＡＴＲ直後のＰＰＳリクエストで要求されたデータ伝送速度によってアプリケーションの選択を自動的に行なう機能を搭載することにより、新旧アプリケーション搭載時の問題点を解決することができる。
【００３８】
【発明の効果】
以上詳述したように本発明によれば、それぞれボーレートが異なる新旧複数のアプリケーションを搭載して、それらを任意に選択的に使用可能なＩＣカードを提供できる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るＩＣカードの構成を概略的に示すブロック図。
【図２】データメモリに複数のアプリケーションを構成した場合のファイル構造の概念図。
【図３】データメモリのメモリマップを示す図。
【図４】ＤＦ定義情報の構成を説明するための図。
【図５】ＥＦ定義情報の構成を説明するための図。
【図６】ワーキングメモリの構成を示す図。
【図７】ＤＦ選択コマンドの構成を説明するための図。
【図８】ＤＦ選択コマンドのコマンドヘッダのフォーマットを示す図。
【図９】ＩＣカードと端末装置との間の通信の流れを説明するフローチャート。
【図１０】ＩＣカードにおけるアプリケーションの選択処理について説明するフローチャート。
【符号の説明】
１００…ＩＣカード、１０２…通信部（通信手段）、１０３…ＩＣチップ、１０４…制御素子（ＣＰＵ）、１０５…データメモリ、１０６…ワーキングメモリ、１０７…プログラムメモリ、２０１…ＭＦ、２０２…ＤＦ１、２０３…ＤＦ２、２０４…ＤＦ３。
【図１】
2005011008.tif 000003
【図２】
2005011008.tif 000004
【図３】
2005011008.tif 000005
【図４】
2005011008.tif 000006
【図５】
2005011008.tif 000007
【図６】
2005011008.tif 000008
【図７】
2005011008.tif 000009
【図８】
2005011008.tif 000010
【図９】
2005011008.tif 000011
【図１０】
2005011008.tif 000012