(57)【要約】【課題】複数コマンドを効率よく実行することができる通信媒体を提供することである。【解決手段】実施形態の通信媒体は、記憶手段と、受信手段と、実行手段と、及び送信手段とを備える。前記記憶手段は、第１のコマンドに対応した第１の処理を実行するための第１の情報、第２のコマンドに対応した第２の処理を実行するための第２の情報、及び一括処理コマンドに対応し前記第１及び第２の情報に基づき前記第１及び第２の処理を順に実行するための第３の情報を記憶する。前記受信手段は、一括処理コマンドを受信する。前記実行手段は、前記一括処理コマンドの受信に対応し、前記３の情報に基づき前記第１の情報を参照し前記第１の処理を実行し、前記第３の情報に基づき前記第２の情報を参照し前記第２の処理を実行する。前記送信手段は、前記第１の処理の実行結果を示す第１の実行結果情報、及び前記第２の処理の実行結果を示す第２の実行結果情報を含む応答を送信する。【選択図】図５
2012194918.tif 000002
【特許請求の範囲】
【請求項１】
第１のコマンドに対応した第１の処理を実行するための第１の情報、第２のコマンドに対応した第２の処理を実行するための第２の情報、及び一括処理コマンドに対応し前記第１及び第２の情報に基づき前記第１及び第２の処理を順に実行するための第３の情報を記憶する記憶手段と、
一括処理コマンドを受信する受信手段と、
前記一括処理コマンドの受信に対応し、前記３の情報に基づき前記第１の情報を参照し前記第１の処理を実行し、前記第３の情報に基づき前記第２の情報を参照し前記第２の処理を実行する実行手段と、
前記第１の処理の実行結果を示す第１の実行結果情報、及び前記第２の処理の実行結果を示す第２の実行結果情報を含む応答を送信する送信手段と、
を備えた通信媒体。
【請求項２】
前記記憶手段は、前記一括処理コマンドの識別情報を含む前記第３の情報を記憶し、
前記実行手段は、前記一括処理コマンドの受信に対応し、前記一括処理コマンドの前記識別情報から前記第３の情報を読み出し、前記３の情報に基づき前記第１の情報を参照し前記第１の処理を実行し、前記第３の情報に基づき前記第２の情報を参照し前記第２の処理を実行する請求項１記載の通信媒体。
【請求項３】
前記送信手段は、前記一括処理コマンドの受信に対応し、前記第１及び第２の処理の正常終了に対応し、前記第１の実行結果情報、前記第２の実行結果情報、及び正常終了情報を含む前記応答を送信する請求項１又は２記載の通信媒体。
【請求項４】
前記実行手段は、前記一括処理コマンドの受信に対応し、前記第１の処理を実行し前記第１の処理の正常終了に対応し、前記第２の処理を実行し前記第２の処理のエラーに対応し前記第２の処理を中断し、
前記送信手段は、前記第１の実行結果情報、及び前記第２の処理のエラーを示すエラーデータを含む前記応答を送信する請求項１又は２記載の通信媒体。
【請求項５】
前記実行手段は、前記一括処理コマンドの受信に対応し、前記第１の処理を実行し前記第１の処理のエラーに対応し前記第１の処理を中断し、前記第２の処理を実行し、
前記送信手段は、前記第１の処理のエラーを示すエラーデータ、及び前記第２の実行結果情報を含む前記応答を送信する請求項１又は２記載の通信媒体。
【請求項６】
ＩＣモジュールが埋め込まれたカード本体により構成されるＩＣカードであって、
前記ＩＣモジュールは、
第１のコマンドに対応した第１の処理を実行するための第１の情報、第２のコマンドに対応した第２の処理を実行するための第２の情報、及び一括処理コマンドに対応し前記第１及び第２の情報に基づき前記第１及び第２の処理を順に実行するための第３の情報を記憶する記憶手段と、
一括処理コマンドを受信する受信手段と、
前記一括処理コマンドの受信に対応し、前記３の情報に基づき前記第１の情報を参照し前記第１の処理を実行し、前記第３の情報に基づき前記第２の情報を参照し前記第２の処理を実行する実行手段と、
前記第１の処理の実行結果を示す第１の実行結果情報、及び前記第２の処理の実行結果を示す第２の実行結果情報を含む応答を送信する送信手段と、
を備えたＩＣカード。
【請求項７】
一括処理コマンドを受信し、
第１のコマンドに対応した第１の処理を実行するための第１の情報、及び第２のコマンドに対応した第２の処理を実行するための第２の情報、一括処理コマンドに対応し前記第１及び第２の情報に基づき前記第１及び第２の処理を順に実行するための第３の情報を記憶したメモリから、前記一括処理コマンドの受信に対応して、前記第３の情報を参照し、前記３の情報に基づき前記第１の情報を参照し前記第１の処理を実行し、前記第３の情報に基づき前記第２の情報を参照し前記第２の処理を実行し、
前記第１の処理の実行結果を示す第１の実行結果情報、及び前記第２の処理の実行結果を示す第２の実行結果情報を含む応答を送信する通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信媒体、ＩＣカード、及び通信方法に関する。
【背景技術】
【０００２】
近年、ＩＣカードと称される携帯可能電子装置（通信媒体）の普及が目覚ましい。例えば、ＩＣカードは、クレジットカード、定期券、旅券、免許証、その他の商取引の決済に使われるだけでなく、社員証、会員証、保険証などのＩＤカードとしても様々な分野で使用されている。
【０００３】
ＩＣカードは、不揮発性のデータメモリ及びＣＰＵなどの制御素子を有するＩＣ（集積回路）チップを内蔵する。また、ＩＣカードリーダライタ等のＩＣカード処理装置は、ＩＣカードに対してリードコマンドを送信しＩＣカードからデータを読み出したり、ＩＣカードに対してライトコマンドを送信しＩＣカードに対してデータを書き込んだりする。
【０００４】
ＩＣカードに対して複数のコマンドに対応した複数処理を要求する場合、ＩＣカード処理装置は、ＩＣカードに対して、最初のコマンドを送信し、最初のコマンドに対応する応答を待ち、最初のコマンドに対応する応答を受信してから、次のコマンドを送信し、次のコマンドに対応する応答を待ち、次のコマンドに対応する応答を受信する。このように、複数のコマンドに対応した複数処理の実行時には、処理時間が比較的長くなる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３６５７３１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、複数コマンドを効率よく実行することができる通信媒体、ＩＣカード、及び通信方法を提供することである。
【課題を解決するための手段】
【０００７】
実施形態の通信媒体は、記憶手段と、受信手段と、実行手段と、及び送信手段とを備える。前記記憶手段は、第１のコマンドに対応した第１の処理を実行するための第１の情報、第２のコマンドに対応した第２の処理を実行するための第２の情報、及び一括処理コマンドに対応し前記第１及び第２の情報に基づき前記第１及び第２の処理を順に実行するための第３の情報を記憶する。前記受信手段は、一括処理コマンドを受信する。前記実行手段は、前記一括処理コマンドの受信に対応し、前記３の情報に基づき前記第１の情報を参照し前記第１の処理を実行し、前記第３の情報に基づき前記第２の情報を参照し前記第２の処理を実行する。前記送信手段は、前記第１の処理の実行結果を示す第１の実行結果情報、及び前記第２の処理の実行結果を示す第２の実行結果情報を含む応答を送信する。
【図面の簡単な説明】
【０００８】
【図１】第１〜第３の実施形態のＩＣカードシステムの概略構成を示すブロック図である。
【図２】第１〜第３の実施形態に係るカードリーダ／ライタの概略構成を示すブロック図である。
【図３】第１〜第３の実施形態に係るＩＣカードの概略構成を示すブロック図である。
【図４】マクロ呼び出しコマンド（一括処理コマンド）のコマンドメッセージの一例を示す図である。
【図５】ＩＣカードに記憶（登録）されるマクロのデータ構造の一例を示す図である。
【図６】ＩＣカードに記憶される処理対象データのデータ構造の一例を示す図である。
【図７】マクロ呼び出しコマンドの一例を示す図である。
【図８】マクロ呼び出しコマンドによるマクロの実行の一例を示す図である。
【図９】マクロ呼び出しコマンドに対する応答情報の第１例を示す図である。
【図１０】マクロ呼び出しコマンドに対する応答情報の第２例を示す図である。
【図１１】マクロ呼び出しコマンドに対する応答情報の第３例を示す図である。
【発明を実施するための形態】
【０００９】
図１は、第１〜第３の実施形態のＩＣカードシステム（別称、スマートカードシステム）の概略構成を示すブロック図である。図１に示すように、ＩＣカードシステムは、端末１（通信装置）及びＩＣカード２（通信媒体）により構成される。端末１は、本体（上位装置）１１、ディスプレイ１２、キーボード１３、カードリーダ／ライタ１４を備えている。端末１はＩＣカード２と通信可能に構成されており、端末１はＩＣカード２に対してデータを送信したり、ＩＣカード２からのデータを受信したりする。
【００１０】
本体１１は、複数の通信方式及び複数のアプリケーションを選択的に実行することができる。ディスプレイ１２は、ＩＣカード２との通信結果及び認証結果等を表示する。キーボード１３は、本体１１に対して文字や数字等を入力する。カードリーダ／ライタ１４は、ＩＣカード２と通信する。
【００１１】
なお、第１〜第３の実施形態では、ＩＣカード２が、非接触式のカードであるケースについて説明するが、ＩＣカード２は、接触式のカードであってもよいし、非接触式及び接触式の両者をサポートするコンビ型のカードであってもよい。
【００１２】
図２は、第１〜第３の実施形態に係るカードリーダ／ライタ１４の概略構成を示すブロック図である。図２に示すように、カードリーダ／ライタ１４は、アンテナ１４１、通信Ｉ／Ｆ１４２、ＣＰＵ１４３、データメモリ１４４、ＲＡＭ１４５、ＲＯＭ１４６を備えている。ＣＰＵ１４３は、ＩＣカード２に対してコマンドの送信を制御する。
【００１３】
図３は、第１〜第３の実施形態に係るＩＣカードの概略構成を示すブロック図である。図３に示すように、ＩＣカード２は、例えばプラスチックカードであり、ＩＣチップ２０（ＩＣモジュール）を備え、ＩＣチップ２０は、通信Ｉ／Ｆ２０１、ＣＰＵ２０４、データメモリ（不揮発性メモリ）２０５、ＲＡＭ２０６、ＲＯＭ２０７を備えている。さらに、図３に示すように、ＩＣカード２は、アンテナ２１を備えている。ＣＰＵ２０４は、例えばコマンドに対応する処理を実行する実行手段として機能する。つまり、ＣＰＵ２０４は、端末１から送信されるコマンドを解釈し、コマンドに対応する処理を実行したり、端末２に対してコマンド実行結果（応答）の返信を制御したりする。
【００１４】
以下、上記説明したＩＣカードシステムによる一括処理について説明する。
【００１５】
（第１の実施形態）
図４は、マクロ呼び出しコマンド（一括処理コマンド）のコマンドメッセージの一例を示す図である。マクロ呼び出しコマンドは、ＩＣカード２のデータメモリ２０５に記憶された複数コマンドを実行順に並べ登録したもの（以下、マクロと呼ぶ）を呼び出すためのコマンドメッセージである。
【００１６】
このコマンドメッセージのフォーマットはISO/IEC 7816-4によって定められ、CLA（クラスバイト）、INS（インストラクションバイト）、P1（パラメータバイト）、P2（パラメータバイト）、Lc、Data、Leによって構成される。CLA、INSによって「マクロ呼び出しコマンド」の使用を指定し、P1、P2によって呼び出したいマクロの識別子を指定する。また、LcはLcフィールド、DataはDataフィールド、LeはLeフィールドと呼ばれる。Dataフィールドは、マクロに必要なデータを指定するための情報を含む。Lcフィールドは、Dataフィールドの長さを指定する情報を含む。なお、マクロによっては、データを必要としないものも存在し、その場合、Lc、Dataは省略することが可能である。Leフィールドは、ＩＣカード２内のマクロによる処理全体で要求されるデータのデータ長を示す情報を含む。
【００１７】
なお、ISO/IEC 7816-4:2005では、CLA-INS-P1-P2の４バイトを「コマンドヘッダー」と定義している。
【００１８】
次に「マクロ呼び出しコマンド」を用いて、複数のデータを読み出す処理の一例を説明する。つまり、「マクロ呼び出しコマンド」を用いて、複数のコマンドに対応する複数の処理（例えばデータの読み出し）を順に実行する処理の一例を説明する。
【００１９】
図５は、ＩＣカード２に記憶（登録）されるマクロのデータ構造の一例を示す図である。ここでは、マクロが、コマンドＡに対応する処理Ａ、コマンドＢに対応する処理Ｂ、及びコマンドＣに対応する処理Ｃを順に指定するケースについて説明する。例えば、データメモリ２０５は、コマンドＡに対応した処理Ａを実行するための情報Ａ、コマンドＢに対応した処理Ｂを実行するための情報Ｂ、コマンドＣに対応した処理Ｃを実行するための情報Ｃを記憶する。図５に示すマクロは、マクロ呼び出しコマンドに対応し情報Ａ、Ｂ、Ｃに基づき処理Ａ、Ｂ、Ｃを順に実行するための情報である。例えば、マクロは、３つのデータ読み出しコマンド（コマンドＡ、コマンドＢ、コマンドＣ）を実行し、３種類のデータを読み出すための情報である。
【００２０】
ＩＣカード２の通信Ｉ／Ｆ２０１（受信手段）が、マクロ呼び出しコマンドを受信すると、ＩＣカード２のＣＰＵ２０４は、マクロ呼び出しコマンドの識別情報（例えば0001）から、図５に示すマクロに割り振られた識別情報（例えば0001）を検出し、図５に示すマクロを実行する。つまり、ＣＰＵ２０４は、マクロの実行に対応して、マクロに設定されたコマンドの実行順序に従い、３つのデータ読み出しコマンド（コマンドＡ、コマンドＢ、コマンドＣ）を実行する。即ち、ＣＰＵ２０４は、最初にコマンドＡに対応するデータＡの読み出し処理を実行し、続いて、コマンドＢに対応するデータＢの読み出し処理を実行し、続いて、コマンドＣに対応するデータＣの読み出し処理を実行する。
【００２１】
例えば、コマンドＡのCHフィールドのP1、P2が、データＡを指定し、コマンドＢのCHフィールドのP1、P2が、データＢを指定し、コマンドＣのCHフィールドのP1、P2が、データＣを指定する。なお、コマンドＡ、Ｂ、ＣのDataフィールドにはデータは設定されない。また、コマンドＡのLeフィールドは、コマンドＡが要求するデータＡのデータ長を含む。コマンドＢのLeフィールドは、コマンドＢが要求するデータＢのデータ長を含む。コマンドＣのLeフィールドは、コマンドＣが要求するデータＣのデータ長を含む。
【００２２】
図６は、ＩＣカード２のデータメモリ２０５に格納された処理対象データ（データＡ、Ｂ、Ｃ）のデータ構造の一例を示す図である。例えば、データメモリ２０５に格納されたデータＡは、Ｔａｇ（T_A）、Ｌｅｎｇｔｈ（L_A）、Ｖａｌｕｅ（V_A）により構成される。同様に、データメモリ２０５に格納されたデータＢは、Ｔａｇ（T_B）、Ｌｅｎｇｔｈ（L_B）、Ｖａｌｕｅ（V_B）により構成される。同様に、データメモリ２０５に格納されたデータＣは、Ｔａｇ（T_C）、Ｌｅｎｇｔｈ（L_C）、Ｖａｌｕｅ（V_C）により構成される。
【００２３】
Ｖａｌｕｅは、実際のデータ内容を表す。Ｔａｇは、データ固有子を表す。Ｌｅｎｇｔｈは、Valueの長さを表す。図５に示すマクロのP1、P2は、この図６に示すTagに対応する値を指定する。これにより、各コマンドが、どのデータの読み出しを指示するかを決める。
【００２４】
図７は、識別子0001のマクロを使用するためのマクロ呼び出しコマンドの一例を示す図である。識別子は、図７に示すように、P1、P2により指定される。Leは、マクロによる処理全体で読み出されるデータのデータ長を指定する。また、マクロがデータを必要としない場合、Dataの指定は無い。
【００２５】
図８は、図７に示す「マクロ呼び出しコマンド」を用いて、図５に示すマクロを呼び出し、複数のコマンドに対応した複数の処理を実行し、複数のデータを読み出す処理の一例を示す図である。
【００２６】
カードリーダ／ライタ１４は、ＩＣカード２に対して、図７に示すマクロ呼び出しコマンドを送信する。ＩＣカードの通信Ｉ／Ｆ２０１は、マクロ呼び出しコマンドを受信し、ＣＰＵ２０４は、マクロ呼び出しコマンドから識別子0001を検出し、識別子0001のマクロ（図５に示すマクロ）を実行する。
【００２７】
つまり、ＣＰＵ２０４は、マクロの実行に対応して、マクロに設定されたコマンドの実行順序に従い、３つのデータ読み出しコマンド（コマンドＡ、コマンドＢ、コマンドＣ）を実行する。即ち、ＣＰＵ２０４は、最初にコマンドＡを実行し、データメモリ２０５からデータＡを読み出し、続いて、コマンドＢを実行し、データメモリ２０５からデータＢを読み出し、続いて、コマンドＣを実行し、データメモリ２０５からデータＣを読み出す。
【００２８】
さらに、ＣＰＵ２０４は、コマンドＡに対応した処理Ａの実行結果を示す実行結果情報Ａ、コマンドＢに対応した処理Ｂの実行結果を示す実行結果情報Ｂ、及びコマンドＣに対応した処理Ｃの実行結果を示す実行結果情報Ｃを含む応答情報を生成する。つまり、ＣＰＵ２０４は、読み出したデータＡ、Ｂ、Ｃを組み合わせて応答情報を生成する。通信Ｉ／Ｆ２０１は、カードリーダ／ライタ１４に対して応答情報を送信する。
【００２９】
図９は、マクロ呼び出しコマンドに対する応答情報の第１例を示す図である。図９に示すように、応答情報は、コマンドＡ、Ｂ、Ｃにより読み出されたデータＡ、データＢ、データＣの連続情報を含む。なお、データＡは、Ｔａｇ（T_A）、Ｌｅｎｇｔｈ（L_A）、Ｖａｌｕｅ（V_A）により構成され、データＢは、Ｔａｇ（T_B）、Ｌｅｎｇｔｈ（L_B）、Ｖａｌｕｅ（V_B）により構成され、データＣは、Ｔａｇ（T_C）、Ｌｅｎｇｔｈ（L_C）、Ｖａｌｕｅ（V_C）により構成される。従って、応答情報に含まれたデータＡ、データＢ、データＣは容易に区別できる。
【００３０】
さらに、マクロによる処理全体が正常であった場合（コマンドＡ、Ｂ、Ｃに対応する処理Ａ、Ｂ、Ｃが正常であった場合）、応答情報は、正常コード（Ｐ）を含む。例えば、応答情報の最後に正常コード（Ｐ）が配置される。つまり、マクロによる処理全体が正常であった場合、通信Ｉ／Ｆ２０１（送信手段）は、カードリーダ／ライタ１４に対して、図９に示す応答情報を送信する。
【００３１】
（第２の実施形態）
上記第１の実施形態では、マクロによる処理全体が正常であった場合に、ＩＣカード２が、正常コード（Ｐ）を含む応答情報を送信するケースについて説明した。第２の実施形態では、マクロによる処理の途中で異常又はエラーが発生した場合に、ＩＣカード２が、マクロによる処理を中断し、エラーコードを含む応答情報を送信するケースについて説明する。なお、ＩＣカードシステムの基本構成及び基本動作は、第１の実施形態で説明した通りであり、第１の実施形態と異なる部分を中心に説明する。
【００３２】
図１０は、マクロ呼び出しコマンドに対する応答情報の第２例を示す図である。例えば、ＣＰＵ２０４は、マクロの実行に対応して、コマンドＡに対応する処理Ａを実行し、処理Ａの正常終了（データＡの読み出し成功）に対応し、次に、コマンドＢに対応する処理Ｂを実行する。コマンドＢに対応する処理Ｂを正しく実行できない場合（データＢの読み出し失敗）、つまり、マクロによる処理の途中で異常又はエラーが発生した場合、ＣＰＵ２０４は、マクロによる処理を中断する（処理Ｃは実行しない）。
【００３３】
さらに、ＣＰＵ２０４は、処理中断前に正常終了した処理の実行結果情報及びエラーコードを付加した応答情報を生成する。例えば、図１０に示すように、ＣＰＵ２０４は、処理Ａの正常終了に対応した実行結果情報Ａ（データＡ）及びエラーコードを含む応答情報を生成する。つまり、マクロによる処理の途中で異常又はエラーが発生した場合、ＣＰＵ２０４は、マクロによる処理を中断し、通信Ｉ／Ｆ２０１は、カードリーダ／ライタ１４に対して、図１０に示す応答情報を送信する。
【００３４】
（第３の実施形態）
上記第２の実施形態では、マクロによる処理の途中で異常又はエラーが発生した場合に、ＩＣカード２が、マクロによる処理を中断し、エラーコードを含む応答情報を送信するケースについて説明した。第３の実施形態では、マクロによる処理の途中で異常又はエラーが発生した場合に、ＩＣカード２が、マクロによる一部処理を中断し、マクロによる一部処理を継続し、エラーコードを含む応答情報を送信するケースについて説明する。なお、ＩＣカードシステムの基本構成及び基本動作は、第１の実施形態で説明した通りであり、第１の実施形態と異なる部分を中心に説明する。
【００３５】
図１１は、マクロ呼び出しコマンドに対する応答情報の第３例を示す図である。例えば、ＣＰＵ２０４は、マクロの実行に対応して、コマンドＡに対応する処理Ａを実行し、処理Ａの正常終了（データＡの読み出し成功）に対応し、次に、コマンドＢに対応する処理Ｂを実行する。コマンドＢに対応する処理Ｂを正しく実行できない場合（データＢの読み出し失敗）、つまり、マクロによる処理の途中で異常又はエラーが発生した場合、ＣＰＵ２０４は、処理Ｂを中断し、次に、コマンドＣに対応する処理Ｃを実行する。つまり、ＣＰＵ２０４は、実行できない処理を無視して、マクロによる処理を最後まで継続する。
【００３６】
さらに、ＣＰＵ２０４は、正常終了した処理の実行結果情報及び実行不能な処理に対応するエラーコードを含む応答情報を生成する。例えば、図１１に示すように、ＣＰＵ２０４は、処理Ａの正常終了に対応した実行結果情報Ａ（データＡ）、処理Ｂの異常又はエラーに対応したエラーコード、処理Ｃの正常終了に対応した実行結果情報Ｃ（データＣ）を含む応答情報を生成する。つまり、マクロによる処理の途中で異常又はエラーが発生した場合、ＣＰＵ２０４は、実行できない処理を飛ばしてマクロによる処理を継続し、通信Ｉ／Ｆ２０１は、カードリーダ／ライタ１４に対して、図１１に示す応答情報（複数処理のうちの正常終了処理とエラー発生中断処理とを区別できる情報）を送信する。
【００３７】
図１１に示すように、応答情報に含まれた実行結果情報Ａ（データＡ）は、Ｔａｇ、Ｌｅｎｇｔｈ、Ｖａｌｕｅで構成され、また、応答情報に含まれた実行結果情報Ｃ（データＣ）も、Ｔａｇ、Ｌｅｎｇｔｈ、Ｖａｌｕｅで構成されている。これに対して、応答情報に含まれたエラーコード（Ｅ_Ｙ２）は、Ｔａｇ、Ｌｅｎｇｔｈ、Ｖａｌｕｅのデータ構造ではなく、２番目のコマンドＢがエラーであることを示す情報を含む。
【００３８】
以下、各実施形態についてまとめる。
【００３９】
上記したように、ＩＣカードシステムでは、一括処理コマンドを適用することができるので、複数コマンドに対応する複数処理のためのデータの送受信回数を減らすことができ、応答情報の受信待ち時間も減らすことができる。これにより、コマンド処理全体の高速化を図ることができる。
【００４０】
例えば、一括処理コマンドを適用せずに、複数コマンドに対応する複数処理を実行しようとすると、カードリーダ／ライタ１４は、ＩＣカード２に対して、複数コマンドのうちの最初のコマンド（第１のコマンド）をＩＣカード２へ送信し、ＩＣカード２は、この第１のコマンドを受信し、第１のコマンドに基づく第１の処理を実行し、カードリーダ／ライタ１４に対して第１の処理結果を含む第１の応答を送信する。カードリーダ／ライタ１４は、第１の応答を受信してから、複数コマンドのうちの次のコマンド（第２のコマンド）をＩＣカード２へ送信することになる。このようにして、コマンド一括処理ではなく、コマンド逐次処理を適用した場合、複数コマンドに対応する複数処理を実行しようとすると、データの送受信回数が多くなるし、応答情報の受信待ち時間も長くなる。
【００４１】
なお、上記説明では、ＩＣカード２のデータメモリ２０５が、コマンドＡに対応した処理Ａを実行するための情報Ａ、コマンドＢに対応した処理Ｂを実行するための情報Ｂ、コマンドＣに対応した処理Ｃを実行するための情報Ｃを記憶（登録）し、マクロ呼び出しコマンドに対応し情報Ａ、Ｂ、Ｃに基づき処理Ａ、Ｂ、Ｃを順に実行するためのマクロを記憶（登録）するケースについて説明した。しかしながら、ＩＣカード２のデータメモリ２０５以外の記憶手段が、これら情報Ａ、Ｂ、Ｃ、マクロを記憶してもよい。
【００４２】
例えば、ＩＣカード２のＲＯＭ２０７が、これら情報Ａ、Ｂ、Ｃ、マクロを記憶してもよい。つまり、これら情報Ａ、Ｂ、Ｃ、マクロが登録されたＲＯＭ２０７を備えたＩＣカード２を発行することができる。また、ＩＣカード２のＲＯＭ２０７が、これら情報Ａ、Ｂ、Ｃを記憶し、ＩＣカード２のデータメモリ２０５が、マクロを記憶してもよい。つまり、情報Ａ、Ｂ、Ｃが登録されたＲＯＭ２０７を備えたＩＣカード２を発行し、ＩＣカード２の運用段階で、ＩＣカード２のデータメモリ２０５にマクロを登録することもできる。
【００４３】
上記した少なくとも１つの実施形態によれば、複数コマンドを効率よく実行することができる通信媒体、ＩＣカード、及び通信方法を提供することができる。
【００４４】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００４５】
１…端末、２…ＩＣカード、３…ＩＣカードホルダ、１１…本体、１２…ディスプレイ、１３…キーボード、１４…カードリーダ／ライタ、２０…ＩＣチップ、２１…アンテナ、１４１…アンテナ、１４２…通信Ｉ／Ｆ、１４３…ＣＰＵ、１４４…データメモリ、１４５…ＲＡＭ、１４６…ＲＯＭ、２０１…通信Ｉ／Ｆ、２０４…ＣＰＵ、２０５…データメモリ、２０６…ＲＡＭ、２０７…ＲＯＭ
【図１】
2012194918.tif 000003
【図２】
2012194918.tif 000004
【図３】
2012194918.tif 000005
【図４】
2012194918.tif 000006
【図５】
2012194918.tif 000007
【図６】
2012194918.tif 000008
【図７】
2012194918.tif 000009
【図８】
2012194918.tif 000010
【図９】
2012194918.tif 000011
【図１０】
2012194918.tif 000012
【図１１】
2012194918.tif 000013