(57)【要約】 【課題】ＩＣカードに一括実行するためのコマンド群を登録し、このコマンド群を一括実行するコマンドを定義して実行することにより、処理時間を短縮することができるＩＣカードを提供すること。【解決手段】ＩＣカード１０は、登録コマンド群一括実行コマンドを受信した場合（Ｓ０２のＹｅｓ）、かつ、当該コマンドのパラメータ（Ｐ１、Ｐ２）で示す識別子（０００２）を有するコマンド群が登録されている場合（Ｓ０４のＹｅｓ）、当該コマンド群の最初のコマンドのパラメータ（Ｐ１、Ｐ２）を当該受信コマンドのData領域で指定するデータで置き換え、その置き換えたパラメータの値を識別子とするＥＦ１−１で示されるファイルデータを送信バッファに書き込む（Ｓ０９）。同様にＥＦ１-２、ＥＦ１−３で示されるファイルデータを送信バッファに追記し、送信バッファに書き込まれたファイルデータと状態指示子（Status byte）を出力する。【選択図】  図７
2013190987.tif 000002
【特許請求の範囲】
【請求項１】
制御部、記憶部及び通信部を有して構成され、外部端末から送信されたヘッダ部及びデータ部で構成されたコマンドを受信し、このコマンドを解釈、実行してその結果をレスポンスとして前記外部端末に送信するＩＣカードにおいて、
前記記憶部には、予め複数の連続して実行されるコマンド群がその実行順序に従って、かつ、当該コマンド群を識別する識別子が付与されて登録され、
前記制御部は、
前記通信部を介して前記外部端末から受信したコマンドがISO/IEC 7816-3で規定された登録コマンド群を一括実行するコマンドであるか確認する登録コマンド群一括実行コマンド確認手段と、
この確認の結果、登録コマンド群一括実行コマンドの場合、当該登録コマンド群一括実行コマンドを構成するパラメータで示される識別子を有するコマンド群が登録済みか確認する登録コマンド群確認手段と、
この確認の結果、登録コマンド群が確認されたとき、この登録コマンド群のパラメータを前記登録コマンド群一括実行コマンドのコマンドデータで示す値に置き換えるパラメータ置換手段と、
このパラメータ置換手段で置き換えられたパラメータを有する登録コマンド群を構成するコマンドの数だけ連続的に一括実行する登録コマンド群一括実行手段と、
この登録コマンド群一括実行手段によって取得されたデータを送信バッファに出力する出力手段と、
を備えたＩＣカード。
【請求項２】
前記登録コマンド群一括実行コマンドは、
クラスバイト、インストラクションバイト、パラメータ及びコマンドデータを有し、
前記クラスバイト及びインストラクションバイトによって当該登録コマンド群一括実行コマンドであることを指定し、前記パラメータによって登録コマンド群の識別子を指定し、
前記コマンドデータによって登録コマンド群のパラメータを指定し、
前記登録コマンド群一括実行手段は、
前記登録コマンド群一括実行コマンドのコマンドデータによって置き換えられたパラメータを有する登録コマンド群を構成するコマンドの数だけ連続的に実行する請求項１記載のＩＣカード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ＩＣカードに関する。
【背景技術】
【０００２】
ＩＣカードは、ＩＣカードリーダ・ライタ（端末）を備えた端末上のアプリケーション、あるいは、この端末とネットワーク接続されたサーバ上のアプリケーションによって、外部端末からアクセスされる。外部端末からＩＣカード内の複数のＥＦ（Elementary File:エレメンタリファイル、基礎ファイル）-ＩＤ（Identification：識別子）で指定されたレコードを読み出す場合、現状では、ＩＣカードリーダ・ライタ（端末）が、short ＥＦ−ＩＤと、そのＩＤ内レコード番号を指定し、ＩＣカードは、ＩＣカードリーダ・ライタからのコマンド（命令）を解釈し、指定されたＥＦ−ＩＤ内のレコード番号で、指定されたレコードを読み出す処理を繰り返す。
【０００３】
なお、上記ＥＦ（Elementary File ：エレメンタリファイル、基礎ファイル）とは、ISO/IEC 7816-4で規定されているデータを格納するファイルである。
【０００４】
なお、１回に送信可能なデータ量の最大値を規定しないことにより、読み出すデータの量が多くても読み出しにおけるコマンド／レスポンス処理が一回で済む方法が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１２２４５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来の技術では、複数のＥＦ-ＩＤから複数のレコードを読み出す場合、ＩＣカードリーダ・ライタ（端末）が、ＥＦ−ＩＤとそのＩＤ内のレコード番号を指定し、ＩＣカードは端末からのコマンドを解釈し、指定ＩＤ内の指定レコードを読み出す処理を繰り返す。この結果、ＩＣカードは端末からのコマンドを解釈する回数が増え、ＩＣカードのファイルアクセスにおける処理時間が増えるという課題があった。なお、特許文献の方法は、大量データの送受信を行うための通状態が安定にできる領域での使用が推奨されている。
【０００７】
本発明は、上述した課題を解決するためになされたもので、ＩＣカード側では複数のコマンド群を実行順に並べて登録し、この登録されたコマンド群を一括実行するために登録コマンド群一括実行コマンドを定義し（マクロコマンド）、端末側から送信された登録コマンド一括実行コマンドを受信した際、当該受信コマンドのパラメータによって登録コマンド群の識別子を指定し、当該受信コマンドのデータによって当該登録コマンド群を構成する各コマンドのパラメータ及びデータを補完或いは置き換え、当該登録コマンド群を構成するコマンドの数だけ連続に実行することができるため、処理時間を短縮することができるＩＣカードを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の請求項１記載のＩＣカードは、制御部、記憶部及び通信部を有して構成され、外部端末から送信されたヘッダ部及びデータ部で構成されたコマンドを受信し、このコマンドを解釈、実行してその結果をレスポンスとして前記外部端末に送信するＩＣカードにおいて、前記記憶部には、予め複数の連続して実行されるコマンド群がその実行順序に従って、かつ、当該コマンド群を識別する識別子が付与されて登録され、前記制御部は、前記通信部を介して前記外部端末から受信したコマンドがISO/IEC 7816-3で規定された登録コマンド群を一括実行するコマンドであるか確認する登録コマンド群一括実行コマンド確認手段と、この確認の結果、登録コマンド群一括実行コマンドの場合、当該登録コマンド群一括実行コマンドを構成するパラメータで示される識別子を有するコマンド群が登録済みか確認する登録コマンド群確認手段と、この確認の結果、登録コマンド群が確認されたとき、この登録コマンド群のパラメータを前記登録コマンド群一括実行コマンドのコマンドデータで示す値に置き換えるパラメータ置換手段と、このパラメータ置換手段で置き換えられたパラメータを有する登録コマンド群を構成するコマンドの数だけ連続的に一括実行する登録コマンド群一括実行手段と、この登録コマンド群一括実行手段によって取得されたデータを送信バッファに出力する出力手段と、を備えた。
【図面の簡単な説明】
【０００９】
【図１】実施例１に係るＩＣカードの概略構成図
【図２】ＩＣカードを構成するＮＶＭの構成
【図３】ＮＶＭ内ユーザデータ領域に設定されたファイル階層構造を説明する図
【図４】コマンドフォーマット（パラメータＰ１、Ｐ２指定前）
【図５】登録コマンド群一括実行コマンドのコマンドフォーマット
【図６】READ RECORDコマンドフォーマット（パラメータＰ１、Ｐ２指定後）
【図７】登録コマンド群一括実行コマンド処理を示すフローチャート
【図８】ＩＣカードから端末に送信する送信フォーマット
【発明を実施するための形態】
【００１０】
本実施例に係るＩＣカード１０は、制御部及び通信部を有して構成される。制御部は、ＣＰＵ（Central Processing Unit:中央処理装置、マイクロプロセッサと同義）部及び記憶部を有して構成される。記憶部は、ＲＯＭ（Read Only Memory:読み取り専用メモリ)、ＲＡＭ（Random Access Memory:読取・書込メモリ、揮発性メモリ）及びＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory:電気的に消去可能なＰＲＯＭ（プログラマブルロム））などのＮＶＭ（Nonvolatile Memory:不揮発性メモリ）を有して構成される。通信部は、ＵＡＲＴ（Universal Asynchronous Receiver Transmitter:汎用非同期受信・送信機）を有して構成される。
【００１１】
このように構成されたＩＣカードは、上記ＵＡＲＴを介してＩＣカードリーダ・ライタ（端末）２０と通信を行う。
【００１２】
以下、ＩＣカード１０とＩＣカードリーダ・ライタ２０との通信において、ＩＣカードに登録されたコマンド群に対する一括実行可能な登録コマンド群一括実行コマンド処理を、以下図面を参して説明する。
【実施例１】
【００１３】
図１は、実施例１に係るＩＣカード１０の概略図である。ＩＣカード１０は、制御部及び通信部で構成される。
【００１４】
制御部は、ＣＰＵ部及び記憶部を有する。ＣＰＵ部は、ＣＰＵ１１ａ及びCo-Processor(補助プロセッサ)１１ｂを有して構成される。なお、Co-Processor１１ｂは、マイクロプロセッサ(ＣＰＵ１１ａ)の性能を強化するために特定分野に特化した補助プロセッサをいうが、ＣＰＵ１１ａが複数のプロセッサで構成される場合にはＣＰＵ１１ａに含めて表現される場合もある。
【００１５】
記憶部は、ＲＯＭ(Read Only Memory:読み取り専用メモリ)１３、ＲＡＭ(Random-Access Memory:読取・書込メモリ、揮発性メモリ)１４及びＥＥＰＲＯＭ(Electrically Erasable Programmable Read Only Memory：電気的に消去可能なPROM(プログラマブルロム))などのＮＶＭ((Nonvolatile memory:不揮発性メモリ)１５を有して構成される。
【００１６】
通信部１２は、制御部によって制御され、当該接触式ＩＣカード(以下、ＩＣカードと称す。)１０と、ＩＣカードリーダ・ライタ(端末)２０との間の通信を行う。
【００１７】
図２は、ＩＣカード１０を構成するＮＶＭ１５の構成で、システム領域１５ａ及びユーザデータ領域１５ｂを有して構成される。
【００１８】
システム領域１５ａは、主にＩＣカード用コマンドに関する情報を登録する領域として使用される。一方、ユーザデータ領域１５ｂは、ＩＣカード１０のアプリケーションのためのファイル階層構造を保持する領域として使用される。
【００１９】
図３は、ＩＣカードのＮＶＭ１５内ユーザデータ領域１５ｂに設定されたファイル階層構造を説明する図である。このファイル構造は、ISO/IEC 7816-4に規定されており、ＤＦ(Dedicated File:専用ファイル)の下にＥＦ(Elementary File:基礎ファイル)が存在するようになっており、Windows（Ｒ）のファイルシステムのように、フォルダの下にファイルが存在するのと同様の構造をしている。フォルダの下にフォルダが作れるのと同じようにＤＦの下にもＤＦをつくることができるため、ファイル構造はツリー状に広がり階層を深くすることができる。このツリーの最上位に存在するＤＦはＭＦ(Master File:主ファイル)と称される。図３は、このようなファイル構造を示している。図示した例では、ＤＦファイルとしてはＤＦ1、ＤＦ2、・・・・が存在できる。図は、この中のＤＦ1を図示している。
【００２０】
従ってＤＦ１の下には、ＥＦ１−１、ＥＦ１−２及びＥＦ１−３が存在し、図示していないＤＦ２の下にＥＦ２−1、ＥＦ２−２・・・が存在する場合があることを示す。本実施例では、ＤＦ1の下に３つのアプリケーションデータファイルとしてＥＦ１−１、ＥＦ１−２、ＥＦ１−３が存在する場合を示す。
【００２１】
ＥＦには識別子としてShort ＥＦ−ＩＤが設定されており、図示したＥＦ１−１では、Short ＥＦ−ＩＤ(短縮ＥＦ−ＩＤと称する場合もあるが同義)が２進数の(００００１)ｂが設定されており、同様に他のＥＦ１−２、ＥＦ１−３も設定される。なお、上記「ｂ」は２進数(binary:２進数)表記であることを示す。
【００２２】
ＮＶＭ１５のシステム領域１５ａには、本実施例に係る複数のコマンドが実行順に並べられたコマンド群として登録されている。以下図４〜図７を参照してその方法を説明する。
【００２３】
図４は、ISO/IEC 7816-3によって規定されるコマンドフォーマットを示す。このコマンドは、ＣＬＡ（Class Bite：クラスバイト）、ＩＮＳ（Instruction bite：インストラクションバイト）、Ｐ１（Parameter bite 1：パラメータバイト１）、Ｐ２（Parameter bite 2：パラメータバイト２）からなる４バイトのヘッダと、Ｌｃ（Data（コマンドデータ）の長さを示す）、Data（コマンドデータ）、Ｌｅ（応答データで予想される最大のデータ長）からなるボデーで構成される。ただし、Ｌｃ、Data及びＬｅはオプション扱いである。
【００２４】
ＩＣカード内のデータを読み出すコマンドとしてISO/IEC 7816-4ではREAD RECORDコマンドが定義され、図示した例は、３個のREAD RECORDコマンドが定義された場合を示す。READ RECORDコマンドにおけるＰ１（Parameter bite 1）、Ｐ２（Parameter bite 2）はパラメータバイトであり、READ RECORDコマンドを実行する際は、事前にこのパラメータバイトＰ１、Ｐ２を設定しておく必要がある。
【００２５】
本実施例では、このパラメータバイトＰ１、Ｐ２をＩＣカードリーダ・ライタ（端末）２０などＩＣカード１０の外部から指定する。従って、この外部から指定されたコマンドを実行する以前は、特定の値が指定されておらず、初期値として（Ｐ１、Ｐ２）＝（ＦＦ、ＦＦ）が指定されている。
【００２６】
また、上述した３個のREAD RECORD コマンドからなるコマンド群を一括指定する識別子として（００、０２）が付与される。以下、図５で詳細に説明する。
【００２７】
図５は、登録コマンド群一括実行コマンドのコマンドフォーマットである。このコマンドは、ＩＣカード内に登録された登録コマンド群を指定し、当該指定された登録コマンド群を構成する複数コマンドを最初に登録されたコマンドから順番に実行するコマンドであり、いわゆるマクロコマンドである。以下その構成を詳細に説明する。
【００２８】
このコマンドフォーマットはISO/IEC 7816-4によって定められ、ＣＬＡ（Class Bite）、ＩＮＳ（Instruction bite）、Ｐ１（Parameter bite 1）、Ｐ２（Parameter bite 2）、Ｌｃ、Date（コマンドデータ）、Ｌｅによって構成される。
【００２９】
ＣＬＡ、ＩＮＳによって「登録コマンド群一括実行コマンド」を使用することを指定することができる。
【００３０】
Ｐ１、Ｐ２によって実行しようとする登録コマンド群の識別子を指定する。実施例では、（Ｐ１、Ｐ２）＝（００、０２）とすることにより、識別子（００、０２）の登録コマンド群を指定する。
【００３１】
Data（コマンドデータ）は、登録コマンド群を構成するコマンドに必要なデータを指定する。実施例では、図４に示す登録コマンド群に登録されているREAD RECORDコマンドＡ、READ RECORDコマンドＢ及びREAD RECORDコマンドＣを構成するそれぞれのパラメータＰ１、Ｐ２を指定するために使用される。図５に示すData（コマンドデータ）は１byte固定長領域Tagと１byte固定長領域Length、可変長領域Valueの連続によって構成される。
【００３２】
Tagは、ISO/IEC 7816-4 BER-TLV Data Objectで固定され、直後のValueを意味づけるための値である。特に実施例では、登録コマンド内のどのコマンドのどのＰ１、Ｐ２を指定するかの意味づけをする。
【００３３】
Lengthは、直後のValueの長さを示す。Valueには、登録コマンドを構成するコマンドのＰ１、Ｐ２で指定すべき値が指定される。
【００３４】
実施例では、このData領域には、（C102010C C2020214 C302031C）が指定される。実施例では、このTagをＣｘとしている。ISO/IEC 7816-4で規定されているBER-TLV Data Objectでは、Tag Ｃｘは、ISO/IEC 7816では定義されていないPrivate classであり、Primitive TLV Data ObjectとしてValueは一種類のデータによって構成される。実施例のＣｘの‘ｘ’はコマンド群の上からｘ番目のコマンドＰ１、Ｐ２を指定することを示す。図５は、上述したTag、Length、Valueと上記Data領域内のデータの関係を示している。以下、詳細に説明する。
【００３５】
Ｃ１０２０１０Ｃ：識別子（００、０２）で指定される登録コマンド群を構成する最初のコマンドのＰ１、Ｐ２を指定する。
【００３６】
Ｃ１：最初のコマンド（READ RECORDコマンドＡ）を指定するTag
０２：Value領域の長さ２byte
０１：READ RECORDコマンドＡのＰ１の値（Ｐ１＝０１）
０Ｃ：READ RECORDコマンドＡのＰ２の値（Ｐ２＝０Ｃ）
【００３７】
Ｃ２０２０２１４：識別子（００、０２）で指定される登録コマンド群を構成する２番目のコマンドのＰ１、Ｐ２を指定する。
【００３８】
Ｃ２：２番目のコマンド（READ RECORDコマンドＢ）を指定するTag
０２：Value領域の長さ２byte
０２：READ RECORDコマンドＢのＰ１の値（Ｐ１＝０２）
１４：READ RECORDコマンドＢのＰ２の値（Ｐ２＝１４）
【００３９】
Ｃ３０２０３１Ｃ：識別子（００、０２）で指定される登録コマンド群を構成する３番目のコマンドのＰ１、Ｐ２を指定する。
【００４０】
Ｃ３：３番目のコマンド（READ RECORDコマンドＣ）を指定するTag
０２：Value領域の長さ２byte
０３：READ RECORDコマンドＣのＰ１の値（Ｐ１＝０３）
１Ｃ：READ RECORDコマンドＣのＰ２の値（Ｐ２＝１Ｃ）
【００４１】
図６は、パラメータＰ１、Ｐ２指定後のREAD RECORDコマンドフォーマットを示す。図５で説明した「登録コマンド群一括実行コマンド」によって登録コマンド群を構成するREAD RECORDコマンドＡ、READ RECORDコマンドＢ、READ RECORDコマンドＣの各パラメータＰ１、Ｐ２が指定される。以下、パラメータＰ１、Ｐ２を説明する。
【００４２】
パラメータＰ２の(ｂ３、ｂ２、ｂ１)が(１、０、０)ｂの場合はパラメータＰ１で指定した値をレコード番号として使用する。レコード番号とは、レコードデータを持つＥＦにおける、各レコードデータを識別するための値である。つまり、Ｐ１、Ｐ２を指定することにより、各READ RECORDコマンドは、ＥＦの中のレコードデータを指定することができる。また、パラメータＰ２のｂ８〜ｂ４は上述したshort ＥＦ−ＩＤ(短縮ＥＦ−ＩＤ)を示す。なお、このREAD RECORDコマンドには、Ｌｃ及びDataは不要である。Ｌｅは、ＤＦによる処理全体で要求されるデータの長さが指定されるが、ここでは、Ｌｅを（００）と指定する。Ｌｅを（００）とすることにより、READ RECORDコマンドが読み出そうとするレコード全体の長さを指定したことになる。
【００４３】
以上の結果、「登録コマンド群一括実行コマンド」によるＰ１、Ｐ２の指定後におけるREAD RECORDコマンドＡ、READ RECORDコマンドＢ、READ RECORDコマンドＣは以下のように示される。  
READ RECORDコマンドＡ:（Ｐ１、Ｐ２）が(０１、０Ｃ)の場合に指定され、図３に示すＥＦ１−１で示すファイルが指定される。  
READ RECORDコマンドＢ:（Ｐ１、Ｐ２）が（０２、１４）の場合に指定され、図３に示すＥＦ１−２で示すファイルが指定される。  
READ RECORDコマンドＣ:（Ｐ１、Ｐ２）が（０３、１C）の場合に指定され、図３に示すＥＦ１−３で示すファイルが指定される。  
図７は、登録コマンド群一括実行コマンド処理を示すフローチャートである。
【００４４】
ＩＣカード１０は、端末２０からコマンドを受信する（Ｓ０１）。受信したコマンドが登録コマンド群一括実行コマンドか確認する（Ｓ０２、登録コマンド群確認手段）。この確認は、受信したコマンドのＣＬＡ及びＩＮＳによって指定される。この確認の結果、「登録コマンド群一括実行コマンド」でない場合には（Ｓ０２のＮｏ）、別コマンド判断処理に移行する（Ｓ０３）。
【００４５】
一方、受信したコマンドが「登録コマンド群一括実行コマンド」の場合（Ｓ０２のＹｅｓ）、当該コマンドのＰ１、Ｐ２で示す識別子を有するコマンド群は登録済みか確認する（Ｓ０４）。この確認の結果、当該コマンド群が登録されていない場合（Ｓ０４のＮｏ）、エラーステータス（エラーを示す識別子（Status byte））が出力される（Ｓ０５）。
【００４６】
一方、受信したコマンドが「登録コマンド群一括実行コマンド」の場合（Ｓ０４のＹｅｓ）、Ｐ１、Ｐ２で示す識別子（ここでは、００、０２）を有するコマンド群が実行される。本実施例では、３個のREAD RECORDコマンドを上から順番に実行する場合について説明する。
【００４７】
最初に、最初のコマンドを実行するために作業用カウンタｎに１をセットする（Ｓ０６）。
【００４８】
登録されている対象コマンド群の上からｎ番目のコマンドをＲＡＭに読み出す（Ｓ０７）。
【００４９】
読み出したＲＡＭ上のコマンドのパラメータ（Ｐ１、Ｐ２）を「登録コマンド群一括実行コマンド」のData領域（コマンドデータ領域）の最初の４バイトの中の最後の２バイトが示す値（０１、０Ｃ）に置き換える（Ｓ０８、パラメータ置換手段）。当該置き換えられたパラメータＰ１、Ｐ２の値に基づき、識別子（００、０２）で指定されるＥＦ１−１で示されるファイルのデータが読み出され、ＲＡＭ上の送信バッファに出力される（Ｓ０９、出力手段）。
【００５０】
次に、２番部のコマンドを実行するために作業用カウンタｎの値をインクルメント（ｎ←ｎ＋１）する（Ｓ１０）。ｎの値が対象コマンド群のコマンド数に達していない場合（Ｓ１１のＮｏ）、ステップＳ０７〜Ｓ０９を繰り返す。この結果、次のコマンドのパラメータ（Ｐ１、Ｐ２）の値が「登録コマンド群一括実行コマンド」のData領域の、次の４バイトの中の最後の２バイトが示す値（０２、１４）に置き換えられ、当該置き換えられたパラメータの値に基づき、識別子（００、０２）で指定されるＥＦ１−２で示されるファイルのデータが読み出され、ＲＡＭ上の送信バッファに追記される。
【００５１】
同様に、３番目のコマンドを実行するために作業用カウンタｎの値をインクルメント（ｎ←ｎ＋１）する（Ｓ１０）。ｎの値が対象コマンド群のコマンド数に達していない場合（Ｓ１１のＮｏ）、ステップＳ０７〜Ｓ１０を繰り返す。この結果、パラメータ（Ｐ１、Ｐ２）の値が（０３、１Ｃ）に置き換えられ、当該置き換えられたパラメータに基づき識別子（００、０２）で指定されるＥＦ１−３で示されるファイルのデータが読み出され、ＲＡＭ上の送信バッファに追記される（登録コマンド群一括実行手段）。
【００５２】
同様に、作業用カウンタｎの値をインクルメント（ｎ←ｎ＋１）する（Ｓ１０）。今回は、ｎの値（ｎ＝４）がコマンド群に登録されたコマンド数（ｎ＝３）を超えるため（Ｓ１１のＹｅｓ）、READ RECORDコマンドによるファイルの読み出し、書込み処理は終了し、当該ＲＡＭ上の送信バッファに書き込まれたファイルデータと状態指示子（Status byte）を出力して終了する。
【００５３】
なお、この様にして出力された送信バッファのデータは、所定のフォーマットに従いＩＣカード１０から端末２０に当該ＩＣカード１０の通信部１２から送信される。以下、図８を参照して詳細に説明する。
【００５４】
図８は、ＩＣカード１０から端末２０に送信する送信フォーマットを示す。上述した図７に示す送信バッファのデータは、図８に示すフォーマットに従って構成された後に当該ＩＣカード１０から端末２０に送信される。
【００５５】
送信されるデータは、ISO/IEC 7816-3で規定されているResponse ＡＰＤＵ(Application Protocol Data Unit)のフォーマットに従い、Dataと２byteのＳＷ（Status byte:ステータスバイト）又はＳＷ（Status byte:ステータスバイト）で構成される。
【００５６】
Dataは、１byte固定長領域Length(長さ)と可変長領域Valueによって構成される。
【００５７】
Valueには、それぞれ３個のREAD RECORDコマンド処理によりＥＦ１−１、ＥＦ１−２、ＥＦ１−３から読み出されたレコードデータ（Ｖ_Ａ、Ｖ_Ｂ、Ｖ_Ｃ）が保持されている。Valueの頭には各Valueの長さとしてLength（Ｌ_Ａ、Ｌ_Ｂ、Ｌ_Ｃ）が付加される。
【００５８】
ＳＷは、ＳＷ1、ＳＷ２により構成され、処理状態を示す。本実施例で、正常処理された場合には（ＳＷ１、ＳＷ２）＝（９０、００）となる。なお、（  ）内の数字は、上述したように１６進数で表示したものである。このようにして作成されたデータ（Data及びＳＷ）は、端末２０に送信される。
【００５９】
以上説明したように、本発明の実施例によれば、「登録コマンド群一括実行コマンド」のマクロを形成し、当該マクロをＩＣカードに送信することにより、ＩＣカード内に登録されたコマンド群を一括して処理することができるため、コマンドごとのレスポンスを省略することができるため、処理時間を短縮することができる。
【符号の説明】
【００６０】
１０  ＩＣカード
１１ａ  ＣＰＵ
１２  通信部（ＵＡＲＴ）
１３  ＲＯＭ
１４  ＲＡＭ
１５  ＮＶＭ
１５ａ  ＮＶＭのシステム領域
１５ｂ  ＮＶＭのユーザデータ領域
２０  ＩＣカードリーダ・ライタ
【図１】
2013190987.tif 000003
【図２】
2013190987.tif 000004
【図３】
2013190987.tif 000005
【図４】
2013190987.tif 000006
【図５】
2013190987.tif 000007
【図６】
2013190987.tif 000008
【図７】
2013190987.tif 000009
【図８】
2013190987.tif 000010