(57)【特許請求の範囲】
【請求項１】
ＩＣモジュールと、
前記ＩＣモジュールが取り付けられた基材と、
を備え、
前記ＩＣモジュールは、
外部装置と通信する通信手段と、
アプリケーションを記憶する記憶手段と、
前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、
前記通信手段による前記第１の命令の受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき第１の処理を実行する制御手段と、
を備え、
前記登録手段は、第１のタイミングで前記第１の命令を受信してから、第１のタイミングの後続の第２のタイミングで前記第１の命令を受信するまでの間に受信された前記第２の命令を登録し、
前記制御手段は、前記第２のタイミングで受信した前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき前記第１の処理を実行し、
前記登録手段は、前記通信手段を介して受信された削除命令に基づき登録された前記第２の命令を削除するＩＣカード。
【請求項２】
前記登録手段は、前記アプリケーションを選択するセレクトコマンドに対応付けて前記第２の命令を登録し、
前記制御手段は、前記通信手段による前記セレクトコマンドの受信に対応して、前記セレクトコマンドに基づき前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき前記第１の処理を実行し、
前記制御手段は、前記セレクトコマンドの受信に対応する第１の処理結果と、前記第１の処理の実行に対応する第２の処理結果とを含む応答の返信を指示し、
前記通信手段は、前記外部装置に対して前記応答を送信する請求項１記載のＩＣカード。
【請求項３】
前記登録手段は、ＩＣカード発行前に前記第１の命令に対応付けて前記第２の命令を登録する請求項１又は２の何れか１項記載のＩＣカード。
【請求項４】
前記登録手段は、前記第２の命令の削除後に、第３のタイミングで前記第１の命令を受信してから、第３のタイミングの後続の第４のタイミングで前記第１の命令を受信するまでの間に受信された第３の命令を前記第１の命令に対応付けて登録し、
前記制御手段は、前記第４のタイミングの後続の第５のタイミングで前記第１の命令を受信した場合に、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された前記第３の命令に基づき第２の処理を実行する請求項１項記載のＩＣカード。
【請求項５】
ＩＣモジュールと、
前記ＩＣモジュールが取り付けられた基材と、
を備え、
前記ＩＣモジュールは、
外部装置と通信する通信手段と、
アプリケーションを記憶する記憶手段と、
前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、
前記通信手段による前記第１の命令の受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された第２の命令に基づき第１の処理を実行する制御手段と、
を備え、
前記制御手段は、登録命令の実行を指示する第１の情報を含む前記第１の命令に基づき、前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき前記第１の処理を実行し、前記登録命令の実行を指示しない第２の情報を含む前記第１の命令に基づき、前記アプリケーションを選択するＩＣカード。
【請求項６】
外部装置と通信する通信手段と、
アプリケーションを記憶する記憶手段と、
前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、
前記通信手段による前記第１の命令の受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された第２の命令に基づき第１の処理を実行する制御手段と、
を備え、
前記登録手段は、第１のタイミングで前記第１の命令を受信してから、第１のタイミングの後続の第２のタイミングで前記第１の命令を受信するまでの間に受信された前記第２の命令を登録し、
前記制御手段は、前記第２のタイミングで受信した前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき前記第１の処理を実行し、
前記登録手段は、前記通信手段を介して受信された削除命令に基づき登録された前記第２の命令を削除する携帯可能電子装置。
【請求項７】
外部装置と通信する通信手段と、
アプリケーションを記憶する記憶手段と、
前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、
前記通信手段による前記第１の命令の受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された第２の命令に基づき第１の処理を実行する制御手段と、
を備え、
前記制御手段は、登録命令の実行を指示する第１の情報を含む前記第１の命令に基づき、前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき前記第１の処理を実行し、前記登録命令の実行を指示しない第２の情報を含む前記第１の命令に基づき、前記アプリケーションを選択する携帯可能電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ＩＣカード、ＩＣカード製造方法、ＩＣカード発行方法、携帯可能電子装置に関する。
【背景技術】
【０００２】
近年、安全性に優れるＩＣカード（接触式ＩＣカード及び非接触式ＩＣカード）の普及が目覚しい。ＩＣカード（別称スマートカード）は、ＩＣ（Integrated Circuit）チップを備えている。ＩＣチップは、リーダライタと通信するための通信Ｉ／Ｆ、電力供給が断たれてもデータを保持することが可能なＥＥＰＲＯＭ、各種動作を実行するＣＰＵなどの制御素子、ＣＰＵの動作プログラム等を記憶するＲＯＭ、及びデータを一時的に記憶するＲＡＭを備えている。
【０００３】
ＩＣカードは、クレジットカード、定期券、その他の商取引の決済に使われるだけでなく、社員証、会員証、保険証などのＩＤカードとしても様々な分野で使われるようになっている。これは、従来の磁気カードに比べ、ＩＣカードが、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＥＥＰＲＯＭなどを有するＩＣチップを備えることにより、様々な機能が実現可能となったこと、さらには偽造が難しいためセキュリティの面でも大きく向上したことが要因である。
【０００４】
現在、市場で運用されているＩＣカードのほとんどは、１枚のＩＣカードに複数のアプリケーションが搭載された、いわゆるマルチアプリケーションＩＣカードである。
【０００５】
このような複数のアプリケーションを実行可能なＩＣカードは、ＩＳＯ７８１６−４に従い、ＡＩＤ（application identifier）という５〜１６バイトの識別情報が付与された複数のアプリケーションを記憶している。ＩＣカードは、受信コマンドに含まれたＡＩＤに従い、記憶した複数のアプリケーションの中から１つのアプリケーションを選択し、後続の受信コマンドに基づき処理を実行する。
【０００６】
ＩＣカードは、ＩＣカードリーダライタ等の外部装置からの１つのコマンドを受信すると、受信コマンドに対応するコマンド処理を実行し、受信コマンドに対する実行結果を前記外部装置へ返信する。例えば、ＩＣカードは、１つのアプリケーションを選択した後、選択アプリケーションに関係する第１のコマンドを受信し、この第１のコマンドに対応する第１のコマンド処理を実行し、この第１のコマンドに対する第１の実行結果を返信し、次に、選択アプリケーションに関係する第２のコマンドを受信し、この第２のコマンドに対応する第２のコマンド処理を実行し、この第２のコマンドに対する第２の実行結果を返信する。このように、ＩＣカードは、１つのアプリケーションを選択した後、複数のコマンド処理を実行することがあるが、１コマンドずつの実行、１実行結果ずつの返信となる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】EMV v4.1 Book 3 Application Specification
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ＩＣカードは、第１のアプリケーションを選択した後、第１のアプリケーションに関係する複数のコマンド処理（一連の処理）を実行するが、第１のアプリケーションを選択した場合に実行される複数のコマンド処理の組み合わせは同一であることが多い。つまり、ＩＣカードは、第１のアプリケーションの選択時には、毎回、同じ組み合わせの複数のコマンド処理を実行することが多い。
【０００９】
同様に、ＩＣカードは、第２のアプリケーションを選択した後、第２のアプリケーションに関係する複数のコマンド処理（一連の処理）を実行するが、第２のアプリケーションを選択した場合に実行される複数のコマンド処理の組み合わせも同一であることが多い。つまり、ＩＣカードは、第１のアプリケーションの選択時には、毎回、同じ組み合わせの複数のコマンド処理を実行することが多い。
【００１０】
このような事情から、ＩＣカードの処理の簡略化、効率化が望まれている。
【００１１】
本発明が解決しようとする課題は、処理効率に優れたＩＣカード及び携帯可能電子装置を提供することである。
【課題を解決するための手段】
【００１２】
実施形態のＩＣカードは、ＩＣモジュールと、前記ＩＣモジュールが取り付けられた基材とを備える。さらに、前記ＩＣモジュールは、通信手段と、記憶手段と、登録手段と、制御手段とを備える。前記通信手段は、外部装置と通信する。前記記憶手段は、アプリケーションを記憶する。前記登録手段は、前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する。前記制御手段は、前記通信手段による前記第１の命令の受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された第２の命令に基づき第１の処理を実行する。
【図面の簡単な説明】
【００１３】
【図１】実施形態に係るＩＣカード（別称スマートカード）の一例を示す図である。
【図２】実施形態に係るＩＣカードのデータメモリのファイル構造の一例を示す図である。
【図３】実施形態に係るＩＣカードにより管理されるテーブル情報（ＤＦ管理テーブル）の一例を示す図である。
【図４】実施形態に係るＩＣカードが受信するコマンドのフォーマットの一例を示す図である。
【図５Ａ】実施形態に係るＩＣカードにより管理されるテーブル情報（読み出し系コマンド登録テーブル）の一例を示す図である。
【図５Ｂ】実施形態に係るＩＣカードにより管理される登録Status及び登録先アドレスの一例を示す図である。
【図６】実施形態に係るＩＣカードが実行する処理の一例を示すフローチャートである。
【図７】実施形態に係るＩＣカードが実行する処理の一例を示すフローチャートである。
【図８】実施形態に係るＩＣカードが実行する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、実施形態について図面を参照して説明する。
【００１５】
図１は、実施形態に係るＩＣカード（別称スマートカード、携帯可能電子装置）の一例を示す図である。
【００１６】
図１に示すＩＣカードは、接触及び非接触式のＩＣカード、ＩＣカード機能を搭載した携帯電話、ＩＣカード機能を搭載したスマートフォン、及びＩＣカード機能を搭載したＳＤカード等で実現可能である。
【００１７】
図１に示すように、ＩＣカードは、プラスチック等のカード本体（基材）１により構成され、１以上のＩＣチップ及び通信部１０５を備える。本実施形態では、ＩＣカードが、ＩＣチップ１００を備えるケースについて説明する。
【００１８】
例えば、ＩＣチップ１００は、制御素子（例えばＣＰＵ）１０１、データメモリ（不揮発性メモリ）１０２、ワーキングメモリ１０３、プログラムメモリメモリ１０４を備える。また、ＩＣチップ１００と通信部１０５とは一体的にＩＣモジュール化されている。ＩＣチップ１００と通信部１０５とで構成されたＩＣモジュール２は、カード本体１に取り付けられている。例えば、ＩＣモジュール２は、カード本体１に埋設されている。
【００１９】
制御素子１０１は、例えば、ＣＰＵ等により構成され、コマンドに対応する処理を実行する。つまり、制御素子１０１は、外部装置（カードリーダ・ライタ）から送信されるコマンドを解釈し、コマンドに対応する処理を実行したり、外部装置に対してコマンド実行結果（応答）の返信を制御したりする。
【００２０】
データメモリ１０２は、記憶内容が消去可能な不揮発性のメモリであり、各種データの記憶に使用され、例えばＥＥＰＲＯＭで構成されている。ワーキングメモリ１０３は、制御素子１０１により処理されるデータ及び処理されたデータを一時的に保持するためのメモリであり、例えばＲＡＭで構成される。プログラムメモリ１０４は、例えばマスクＲＯＭで構成され、制御素子１０１のプログラムなどを記憶する。
【００２１】
通信部１０５は、カード本体の表面に配置された端子、及びカード本体の内部に埋設されたアンテナのうちの少なくとも一方を含み、端子又はアンテナを介して外部装置と接触又は非接触にて通信する。例えば、通信部１０５は、接触インターフェース(ISO/IEC7816)、非接触インターフェース(ISO/IEC14443）などにより外部装置と通信する。
【００２２】
図２は、ＩＣカードのデータメモリ１０２のファイル構造の一例を示す図である。図２に示すように、データメモリ１０２は、例えば、複数のアプリケーションに関する情報をファイル構造で記憶する。このファイル構造は、ＩＳＯ／ＩＥＣ７８１６−４に基づき、色々な種類のファイルの階層構造となる。
【００２３】
すなわち、図２に示すように、最上位がＭＦ（ＭａｓｔｅｒＦｉｌｅ）２０１で、その配下にアプリケーションごとに設定されるフォルダとしてＤＦ（ＤｅｄｉｃａｔｅｄＦｉｌｅ）２０２、２０３、２０４が設けられ、さらに、それらの配下に実際にアプリケーションで使われるユーザデータの格納に使用されるＥＦ（ＥｌｅｍｅｎｔａｒｙＦｉｌｅ）２０６、２０７、２０８、２０９、２１０が設けられる。
【００２４】
また、ＭＦ２０１の配下には、カード全体へのアクセス権を確立するためのキー等の格納に使用されるＥＦ２０５が設けられる。なお、ＤＦは搭載しているアプリケーションに相当する数だけ設けられる。
【００２５】
図２に示すように、例えばＤＦ＃１ ２０２は、ＤＦ  ｎａｍｅとしてＡＰＬ１が設定され、その配下には、当該アプリケーションで使用されるデータを保持するＥＦ２０６（以後、ＥＦ１−１とも称す）、ＥＦ２０７（以後、ＥＦ１−２とも称す）、ＥＦ２０８（以後、ＥＦ１−３とも称す）という３つのファイルが存在する。
【００２６】
ＤＦ＃２ ２０３、ＤＦ＃３ ２０４（それぞれにＤＦ  ｎａｍｅとして、ＡＰＬ２、ＡＰＬ３が設定されている）についても、同様となる。
【００２７】
これらのアプリケーションが選択された後、アプリケーションに関係する処理が可能となる。
【００２８】
ＩＣカードの通信部１０５は、外部装置からの、対象のアプリケーションを選択する命令を受信し、制御素子１０１は、この命令に基づき対象のアプリケーションを選択する。対象のアプリケーションを選択する命令とは、例えばＩＳＯ−７８１６−４に示されるＳＥＬＥＣＴコマンド（セレクトコマンド）である。ＳＥＬＥＣＴコマンドは、対象アプリケーションのＤＦ  ｎａｍｅを指定する。
【００２９】
データメモリ１０２は、各アプリケーションのＤＦ  ｎａｍｅを管理（記憶する）する。例えば、データメモリ１０２は、図３に示すようにテーブル情報（以降、ＤＦ管理テーブルと称す）を管理する。ＤＦ管理テーブルは、登録されているＤＦ  ｎａｍｅを持つＤＦの位置を示すアドレス情報を登録する。
【００３０】
例えば、ＤＦ  ｎａｍｅとしてＡＰＬ１が提示され、そのＤＦ  ｎａｍｅを持つＤＦの選択が指示された場合、制御素子１０１は、図３のＤＦ管理テーブルから、当該ＤＦのアドレス情報を取得し、このアドレスを元にＤＦへアクセスする。
【００３１】
図４は、ＩＣカードのコマンドフォーマットの一例を示す図である。図４に示すように、コマンドは、クラスバイト（ＣＬＡ）４０１、インストラクションバイト（ＩＮＳ）４０２、パラメータバイト（Ｐ１）４０３、パラメータバイト（Ｐ２）４０４、Ｌｃフィールド４０５、コマンドデータフィールド４０６、Ｌｅフィールド４０７により構成される。
【００３２】
ＩＣカードの通信部１０５が、外部装置からコマンドを受信すると、制御素子１０１は、コマンドに含まれたクラスバイト４０１及びインストラクションバイト４０２から、コマンドを識別し、コマンドに含まれたデータから、このコマンドのフォーマットが正しいか否かを判定する。制御素子１０１が、前記コマンドを正しいフォーマットのコマンドと判定すると、以降の処理を実施する。
【００３３】
ＩＣカードの制御素子１０１は、外部装置からのＳＥＬＥＣＴコマンドを受信し、ＳＥＬＥＣＴコマンドに基づきアプリケーションを選択し、さらに外部装置からの複数回のコマンド（一連の命令）を順番に受信し、これら複数回のコマンドに基づき選択アプリケーションに関係する複数の処理（一連の処理）を順番に実行する。所定のアプリケーションが選択される場合、外部装置から送信される複数回のコマンドは、同一であることが多く、また、複数回のコマンドの送信の順番も同一であることが多い。
【００３４】
そこで、本実施形態のＩＣカードは、第１の登録処理又は第２の登録処理により、処理の効率化を図ることができる。
【００３５】
まず、第１の登録処理について説明する。
【００３６】
制御素子１０１は、あるアプリケーション（以下、第１のアプリケーション）を選択した場合に、第１のアプリケーションに関係する一連の処理を実行するための一連の命令（１又は複数の命令）をデータメモリ１０２に登録する。例えば、制御素子１０１は、ＳＥＬＥＣＴコマンドの受信後（第１のアプリケーションの選択後）に、さらに受信する複数の命令を調査し、毎回変化しない同一の命令（１又は複数の命令）を抽出して登録する。例えば、ＳＥＬＥＣＴコマンドの受信後に、さらに受信するリードコマンドを抽出して登録する。
【００３７】
つまり、制御素子１０１は、第１のアプリケーションを選択するＳＥＬＥＣＴコマンドに対応付けて、上記一連の命令或いは毎回変化しない同一の命令を登録する。なお、登録された命令を登録情報又は登録命令と称する。登録情報の登録後は、制御素子１０１は、第１のアプリケーションを選択するＳＥＬＥＣＴコマンドの受信に対応して、第１のアプリケーションを選択し、さらに、登録情報に基づく処理を実行する。つまり、制御素子１０１は、第１のアプリケーションの選択時に、第１のアプリケーションに関係する処理（１又は複数の処理）を一括して実行する。
【００３８】
これにより、ＩＣカードは、第１のアプリケーションを選択するＳＥＬＥＣＴコマンドの受信に対応して、第１のアプリケーションの選択処理、第１のアプリケーションに関係する処理を一括して実行することができ、処理効率の向上を図ることができる。つまり、第１のアプリケーションに関係する処理を実行するためのコマンドの受信等を省略することができる。
【００３９】
例えば、制御素子１０１は、第１のアプリケーションを選択するＳＥＬＥＣＴコマンドに対応付けて、読出しコマンドを登録する。これにより、制御素子１０１は、ＳＥＬＥＣＴコマンドの受信に対応して、第１のアプリケーションを選択し、登録された読出しコマンドに基づきデータメモリ１０２からデータを読み出し、ＳＥＬＥＣＴコマンドの受信に対応する第１の結果（第１のアプリケーション選択完了）と、データの読み出しに対応する第２の結果（読み出したデータ）とを含む応答の返信を指示し、通信部１０５を介して、外部装置に対して前記応答を返信する。つまり、第１のアプリケーションの選択処理の結果とデータの読み出し処理の結果とを一括して返信する。
【００４０】
また、ＩＣカードのデータメモリ１０２は、第１のアプリケーションに関する登録情報、第２のアプリケーションに関する登録情報を別々に保持することができる。つまり、データメモリ１０２は、アプリケーション毎に登録情報を保持することができる。第１のアプリケーションに関する登録情報とは、第１のアプリケーションを選択するＳＥＬＥＣＴコマンドに対応付けて登録された情報である。
【００４１】
次に、第２の登録処理について説明する。
【００４２】
制御素子１０１は、ＳＥＬＥＣＴコマンドの受信（第１のアプリケーションの選択）に対応して、ＳＥＬＥＣＴコマンドで指定されたアプリケーションに対応付けられた登録情報の有無を調べ、登録情報が無い場合には、次のＳＥＬＥＣＴコマンドの受信（次のアプリケーションの選択）までの間に受信する１又は複数のコマンドを、ＳＥＬＥＣＴコマンドで指定されたアプリケーションに対応付けて登録する。例えば、第１のタイミングでＳＥＬＥＣＴコマンドを受信してから、第１のタイミングの後続の第２のタイミングで次のＳＥＬＥＣＴコマンドを受信するまでの間に受信した読み出しコマンドを、ＳＥＬＥＣＴコマンドで指定されたアプリケーションに対応付けて登録する。
【００４３】
例えば、制御素子１０１は、第１のタイミングの後続の第２のタイミングで次のＳＥＬＥＣＴコマンドを受信したときに、ＳＥＬＥＣＴコマンドで指定されたアプリケーションに対応付けられた登録情報が有る場合には、ＳＥＬＥＣＴコマンドに基づきアプリケーションを選択し、さらに登録情報に対応する１又は複数のコマンド（例えば読出しコマンド）に基づく１又は複数の処理を実行し、ＳＥＬＥＣＴコマンドの処理結果とともに、登録情報に対応する１又は複数のコマンドの１又は複数の処理結果を一括して応答することを指示する。これに対応して、ＳＥＬＥＣＴコマンドの処理結果とともに、登録情報に対応する１又は複数のコマンドの１又は複数の処理結果（例えば読出しデータ）を一括して送信する。
【００４４】
これにより、ＩＣカードは、アプリケーションが選択された後に、外部装置から毎回コマンドを受信しなくても、選択されたアプリケーションに関係する必要な処理を実行することができ、アプリケーション処理の効率化を図ることができる。
【００４５】
第１の登録処理を実現するために、図３に示したＤＦ管理テーブルに、各ＤＦに対する一連の読み出し系コマンド登録情報が存在するか否かを示すフラグ（以降、登録有無フラグと称す）を付加する。
【００４６】
また、図５Ａで示すように、データメモリ１０２は、各ＤＦに対する読み出し系コマンドを登録するテーブル（以下、読み出し系コマンド登録テーブルと称する）を記憶する。更に、図５Ｂに示すように、ワーキングメモリ１０３が、読み出し系コマンド登録テーブルへの「登録中」、または「登録完了」を示すフラグ（以降、登録Statusと称す）と、読み出し系コマンド登録テーブルのどの位置に登録処理を行っているのかを示すアドレス情報（以降、登録先アドレスと称す）とを記憶する。
【００４７】
図６は、アプリケーション選択コマンドに対応する処理の一例を示すフローチャートである。
【００４８】
ＩＣカードの制御素子１０１は、外部装置から受信したコマンドがアプリケーションを選択するコマンド（ＤＦ  ｎａｍｅ指定のＳＥＬＥＣＴコマンド）であると判断した場合、読み出し系コマンド登録テーブルへの登録処理を示すフラグである登録Statusを「登録完了」に設定し、登録先アドレスもクリアする（ステップＦ６０１）。
【００４９】
次に、制御素子１０１は、ＳＥＬＥＣＴコマンドに含まれるＤＦ  ｎａｍｅを持つＤＦがカード内に存在するか、ＤＦ管理テーブルに格納されたＤＦ  ｎａｍｅ情報から検索処理を開始する（ステップＦ６０２）。
【００５０】
ＳＥＬＥＣＴコマンドに含まれるＤＦ  ｎａｍｅと一致するＤＦ  ｎａｍｅがＤＦ管理テーブルに登録されていない場合、制御素子１０１は、「対象ＤＦ無し」を意味するステータスワードの返送を指示し、通信部１０５を介して、このステータスワードを外部装置に返送する。
【００５１】
ＳＥＬＥＣＴコマンドに含まれるＤＦ  ｎａｍｅと一致するＤＦ  ｎａｍｅがＤＦ管理テーブルに登録されている場合、制御素子１０１は、アプリケーション選択処理を実行し（ステップＦ６０３）、選択対象ＤＦに対する読み出し系コマンド登録有無確認処理へ移る。
【００５２】
制御素子１０１は、選択対象のＤＦに対応する登録有無フラグを、ＤＦ管理テーブルから確認し（ステップＦ６０４）、登録情報“有”の場合、次の処理Ａに移る。処理Ａの説明は、図８に示すフローチャートを参照し後述する。
【００５３】
登録情報“無”の場合、制御素子１０１は、登録有無フラグに“有”を設定する（ステップＦ６０５）。また、制御素子１０１は、同時に登録Statusを「登録中」に設定し、登録先アドレスにも選択対象のＤＦに対応するアドレスを設定し（ステップＦ６０６）、アプリケーション選択コマンド処理を終了する。
【００５４】
このとき、制御素子１０１は、必要であればＳＥＬＥＣＴコマンドに対する返送データの返送を指示し、通信部１０５を介して、返送データを返送する。
【００５５】
図７は、ＤＦに対する読み出し系コマンドの登録処理の一例を示すフローチャートである。
【００５６】
第１の登録処理は、外部装置からの受信コマンドに対応したコマンド処理を実行する前に、実行される処理である。制御素子１０１は、外部装置からコマンドを受信すると、受信コマンドに含まれたＣＬＡバイトとＩＮＳバイトから受信コマンドを確認し（ステップＦ７０１）、受信コマンドが読み出し系コマンドか否かを識別する（ステップＦ７０２）。
【００５７】
受信コマンドが読み出し系コマンドで無い場合（ステップＦ７０２、ＮＯ）、制御素子１０１は、各コマンド処理へ移行する。
【００５８】
受信コマンドが読み出し系コマンドで有る場合（ステップＦ７０２、ＹＥＳ）、制御素子１０１は、書き込みポインタに、読み出し系コマンド登録テーブルの登録先アドレスを設定し（ステップＦ７０３）、コマンド情報を書き込む（ステップＦ７０４）。次に、制御素子１０１は、書き込みポインタを１行分（１コマンド分）進め（ステップＦ７０５）、通常コマンド処理へ移行する。
【００５９】
図８は、読み出し系コマンド登録情報が存在するＤＦが選択された際のアプリケーション選択コマンドの処理の一例を示すフローチャートである。
【００６０】
図６で示したフローチャートにおけるステップＦ６０４の処理の結果、コマンドで指定されたＤＦに対する読み出し系コマンド登録情報が存在する場合、制御素子１０１は、読み出しポインタを、読み出し系コマンド登録テーブル上、つまりコマンドで指定されたＤＦ  ｎａｍｅに対する情報が登録されているテーブルのスタートアドレスへ設定し（ステップＦ８０１）、ポインタが指定した行に登録されているコマンドを読み出す（ステップＦ８０２）。
【００６１】
制御素子１０１は、読み出したコマンドを実行し（ステップＦ８０３）、その結果、異常処理となった場合（ステップＦ８０４、ＮＯ）、対象のＤＦに対するＤＦ管理テーブル上の登録有無フラグをクリア（“無”を設定）し、読み出し系コマンド登録テーブル上の登録情報もクリアし（ステップＦ８０５）、対象のＤＦ  ｎａｍｅを指定したＳＥＬＥＣＴコマンドに対する返却値のみの返送を指示し、通信部１０５を介して、返却値を返送する（ステップＦ８０６）。
【００６２】
制御素子１０１は、読み出したコマンドを実行し、その結果、正常処理となった場合（ステップＦ８０４、ＹＥＳ）、読み出したコマンドに対する返却値（読み出しデータ）をワーキングメモリ１０３上に記録し（ステップＦ８０７）、読み出しポインタを次行（次コマンド）へ設定し（ステップＦ８０８）、次コマンドの有無を確認する（ステップＦ８０９）。
【００６３】
次コマンドの有無の確認の結果、次コマンドが存在する場合（ステップＦ８０９、ＹＥＳ）、制御素子１０１は、コマンドによる読み出しデータを記録するスタートアドレスを、当該コマンドよる返却データ長分進め（ステップＦ８１０）、次コマンドの読み出し、実行等の一連の処理を繰り返す。
【００６４】
読み出し系コマンド記憶テーブル上で、次コマンドが無くなった場合、制御素子１０１は、ＳＥＬＥＣＴコマンドによる一連の処理で読み出したデータを先頭から連結し、返送データを生成し（ステップＦ８１１）、正常終了を示すステータスワードと共に、返送データの返送を指示し、通信部１０５を介して、正常終了を示すステータスワードと共に、返送データを返送する。
【００６５】
以上説明したように、本実施形態のＩＣカードは、同一のアプリケーションを複数回選択、実行する場合に、外部装置から毎回同じ一連のコマンドを受信しなくても、アプリケーションの選択に対応して、一連のコマンドに対応する一連のコマンド処理を一括で実行することができる。これにより、一連のコマンド処理の効率化及び簡略化を図ることができる。
【００６６】
また、このような一連のコマンド処理は、ＤＦ  ｎａｍｅ毎に記録されるため、カード内に搭載されている複数のアプリケーション毎に実行することができる。
【００６７】
以下、本実施形態についてまとめる。
【００６８】
（１）ＩＣカードは、複数のアプリケーションと各アプリケーションに対応した識別子を保持し、外部装置から指示される命令を解釈、実行し、その結果を出力するものであり、外部装置からアプリケーションの選択命令を受信した場合、選択命令に基づきアプリケーションの選択を実行すると共に、前記選択命令に対応付けて登録された登録命令（１又は複数の登録命令）に基づき登録処理（１又は複数の登録処理）を実行し、選択命令に基づく選択処理の実行結果と、登録命令に基づく登録処理の実行結果とを一括して応答する。
【００６９】
（２）ＩＣカードは、第１のアプリケーションの選択を指示する第１の選択命令の受信から、次の第２のアプリケーションの選択を指示する第２の選択命令（なお、第２の選択命令は第１のアプリケーションの選択を指示する第１の選択命令と同一の選択命令であってもよい）の受信までの間に受信した命令（１又は複数の命令）を、第１の選択命令に対応付けて登録する。又は、ＩＣカードは、第１の選択命令の受信から第２の選択命令の受信までの間に受信した複数の命令のうちの所定の命令（１又は複数の命令）を選択して登録する。例えば、第１の選択命令の受信から第２の選択命令の受信までの間に受信した複数の命令のうちのリードコマンドを選択して登録する。
【００７０】
（３）ＩＣカード（制御素子１０１）は、ある命令（以下、第１の命令）の登録を指示する第１の登録命令の受信に対応して、第１の命令を登録することもできる。また、ＩＣカード（制御素子１０１）は、登録された第１の命令の削除を指示する削除命令の受信に対応して、登録された第１の命令を削除することもできる。また、ＩＣカード（制御素子１０１）は、登録命令の削除後に、再びある命令（以下、第２の命令）の登録を指示する第２の登録命令の受信に対応して、第２の命令を登録することもできる。つまり、ＩＣカード（制御素子１０１）は、削除命令を受信し、また第２の登録命令を受信することにより、第１の命令を第２の命令に変更して登録することができる。
【００７１】
（４）ＩＣカードは、カード運用以前（カード発行前）に、選択命令に対応付けて所定の命令を登録することができる。つまり、ＩＣカードの発行事業者が管理するＩＣカード発行装置が、選択命令に対応付けられた所定の命令を登録したＩＣカードを発行する。
【００７２】
（５）ＩＣカード（制御素子１０１）は、受信した選択命令に含まれた登録命令（登録処理）の実行を指示する第１の情報に基づき、選択命令に基づく選択処理を実行し、登録命令に基づく登録処理を実行する。また、ＩＣカード（制御素子１０１）は、受信した選択命令に含まれた登録命令（登録処理）の実行を指示しない第２の情報に基づき、選択命令に基づく選択処理を実行する（登録命令に基づく登録処理は実行しない）。例えば、図４に示すＩＣカードのコマンドフォーマットを構成するパラメータバイト（Ｐ１）４０３、パラメータバイト（Ｐ２）４０４のうちの少なくとも一方に、上記した第１の情報又は第２の情報を反映させることができる。例えば、受信した選択命令を構成するパラメータバイト（Ｐ２）４０４に第１の情報が含まれている場合には、ＩＣカードは、選択命令に基づく選択処理を実行し、登録命令に基づく登録処理を実行する。受信した選択命令を構成するパラメータバイト（Ｐ２）４０４に第２の情報が含まれている場合には、ＩＣカードは、選択命令に基づく選択処理を実行する（登録命令に基づく登録処理は実行しない）。
【００７３】
（６）ＩＣカード（制御素子１０１）は、選択命令に対応付けて登録命令が登録されていれば、選択命令の受信に対応して、選択命令に基づく選択処理を実行するとともに、登録命令に基づく登録処理を実行する。また、ＩＣカード（制御素子１０１）は、選択命令に対応付けて登録命令が登録されていなければ、選択命令の受信に対応して、選択命令に基づく選択処理を実行する（登録命令に基づく登録処理は実行しない）。
【００７４】
また、ＩＣカード製造方法により、上記説明したＩＣカードは製造される。例えば、制御素子１０１、データメモリ１０２、ワーキングメモリ１０３、プログラムメモリメモリ１０４等によりＩＣチップ１００が製造され、ＩＣチップ１００と通信部１０５とで構成されたＩＣモジュール２が製造され、ＩＣモジュール２がカード本体１に埋設され（取り付けられ）、ＩＣカードが製造される。
【００７５】
また、ＩＣカード発行方法により、上記説明したＩＣカードは発行される。例えば、上記ＩＣカード製造方法により製造されたＩＣカードのデータメモリ１０２に発行情報が書き込まれ、ＩＣカードが発行される。発行情報とは、例えば個人情報である。
【００７６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
［１］
ＩＣモジュールと、
前記ＩＣモジュールが取り付けられた基材と、
を備え、
前記ＩＣモジュールは、
外部装置と通信する通信手段と、
アプリケーションを記憶する記憶手段と、
前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、
前記通信手段による前記第１の命令の受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された第２の命令に基づき第１の処理を実行する制御手段と、
を備えたＩＣカード。
［２］
前記登録手段は、前記アプリケーションを選択するセレクトコマンドに対応付けて第２の命令を登録し、
前記制御手段は、前記通信手段による前記セレクトコマンドの受信に対応して、前記セレクトコマンドに基づき前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき前記第１の処理を実行する［１］記載のＩＣカード。
［３］
前記制御手段は、前記セレクトコマンドの受信に対応する第１の処理結果と、前記第１の処理の実行に対応する第２の処理結果とを含む応答の返信を指示し、
前記通信手段は、前記外部装置に対して前記応答を送信する［２］記載のＩＣカード。
［４］
前記登録手段は、第１のタイミングで前記セレクトコマンドを受信してから、第１のタイミングの後続の第２のタイミングで前記セレクトコマンドを受信するまでの間に受信された前記第２の命令を登録し、
前記制御手段は、前記第２のタイミングで受信した前記セレクトコマンドに基づき前記アプリケーションを選択し、前記登録手段に登録された前記命令に基づき前記第１の処理を実行する［２］又は［３］に記載のＩＣカード。
［５］
前記登録手段は、ＩＣカード発行前に前記第１の命令に対応付けて前記第２の命令を登録する［１］乃至［３］の何れか１項記載のＩＣカード。
［６］
前記登録手段は、前記通信手段を介して受信された削除命令に基づき前記登録された第２の命令を削除する［４］項記載のＩＣカード。
［７］
前記登録手段は、前記第２の命令の削除後に、第３のタイミングで前記セレクトコマンドを受信してから、第３のタイミングの後続の第４のタイミングで前記セレクトコマンドを受信するまでの間に受信された前記第３の命令を前記セレクトコマンドに対応付けて登録し、
前記制御手段は、前記第４のタイミングの後続の第５のタイミングで前記セレクトコマンドを受信した場合に、前記セレクトコマンドに基づき前記アプリケーションを選択し、前記登録手段に登録された前記第３の命令に基づき第２の処理を実行する［６］項記載のＩＣカード。
［８］
前記制御手段は、登録命令の実行を指示する第１の情報を含む前記第１の命令に基づき、前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき前記第１の処理を実行し、前記登録命令の実行を指示しない第２の情報を含む前記第１の命令に基づき、前記アプリケーションを選択する［１］乃至［７］の何れか１項記載のＩＣカード。
［９］
外部装置と通信する通信手段と、アプリケーションを記憶する記憶手段と、前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、前記通信手段による前記第１の命令を受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき第１の処理を実行する制御手段とを備えたＩＣモジュールを取り付けた基材により構成されるＩＣカードを製造するＩＣカード製造方法。
［１０］
外部装置と通信する通信手段と、アプリケーションを記憶する記憶手段と、前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、前記通信手段による前記第１の命令を受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された前記第２の命令に基づき第１の処理を実行する制御手段とを備えたＩＣモジュールを取り付けた基材により構成されるＩＣカードを発行するＩＣカード発行方法であって、
前記記憶手段に発行情報を書き込み前記ＩＣカードを発行するＩＣカード発行方法。
［１１］
外部装置と通信する通信手段と、
アプリケーションを記憶する記憶手段と、
前記アプリケーションを選択する第１の命令に対応付けて第２の命令を登録する登録手段と、
前記通信手段による前記第１の命令の受信に対応して、前記第１の命令に基づき前記アプリケーションを選択し、前記登録手段に登録された第２の命令に基づき第１の処理を実行する制御手段と、
を備えた携帯可能電子装置。
【符号の説明】
【００７７】
１…カード本体、２…ＩＣモジュール、１００…ＩＣチップ、１０１…制御素子、１０２…データメモリ、１０３…ワーキングメモリ、１０４…プログラムメモリ、１０５…通信部
【図１】
0005728323.tif 000002
【図２】
0005728323.tif 000003
【図３】
0005728323.tif 000004
【図４】
0005728323.tif 000005
【図５Ａ】
0005728323.tif 000006
【図５Ｂ】
0005728323.tif 000007
【図６】
0005728323.tif 000008
【図７】
0005728323.tif 000009
【図８】
0005728323.tif 000010