(57)【要約】【課題】複数処理の処理時間の短縮を図ることが可能な情報記憶媒体を提供すること。【解決手段】情報記憶媒体のカード本体に埋設されたモジュールは、コマンドを受信する受信手段と、前記コマンドに含まれる複数処理に対応した複数データに基づき、前記複数処理を実行する実行手段と、前記実行手段により実行された前記複数処理に対応した複数の出力データを含むレスポンスを送信する送信手段とを備える。【選択図】      図４
2010009467.tif 000002
【特許請求の範囲】
【請求項１】
モジュールが埋め込まれたカード本体により構成される情報記憶媒体であって、
前記モジュールは、
コマンドを受信する受信手段と、
前記コマンドに含まれる複数処理に対応した複数データに基づき、前記複数処理を実行する実行手段と、
前記実行手段により実行された前記複数処理に対応した複数の出力データを含むレスポンスを送信する送信手段と、
を備えたことを特徴とする情報記憶媒体。
【請求項２】
前記コマンドは、複数処理を示す複数処理識別データを含み、
前記実行手段は、前記複数処理識別データに基づき前記コマンドによる複数処理を認識し、前記コマンドに含まれる前記複数データに基づき前記複数処理を実行する、
ことを特徴とする請求項１に記載の情報記憶媒体。
【請求項３】
前記コマンドは、データ部を含み、
前記データ部は、前記複数処理に対応した前記複数データの夫々を格納するための複数個のデータユニットを含み、
各データユニットは、前記複数データのうちの一つのデータの種類を示す識別情報を格納する識別情報部、前記一つのデータのレングス情報を格納したレングス部、前記一つのデータのバリューを格納したバリュー部を含み、
前記実行手段は、各データユニットに含まれた各データに対応した前記複数処理を実行する、
ことを特徴とする請求項１に記載の情報記憶媒体。
【請求項４】
前記コマンドは、データ部を含み、
前記データ部は、前記複数処理を示す複数処理識別データを格納した先頭データユニットと、前記複数処理に対応した前記複数データの夫々を格納するための複数個の後続データユニットとを含み、
前記先頭データユニットは、複数処理を示す複数処理識別データの種類を示す識別情報を格納する識別情報部、前記複数処理識別データのレングス情報を格納したレングス部、前記複数処理識別データのバリューを格納したバリュー部を含み、
各後続データユニットは、前記複数データのうちの一つのデータの種類を示す識別情報を格納する識別情報部、前記一つのデータのレングス情報を格納したレングス部、前記一つのデータのバリューを格納したバリュー部を含み、
前記実行手段は、前記先頭データユニットに含まれた前記複数処理識別データに基づき前記コマンドによる複数処理を認識し、各後続データユニットに含まれた各データに基づき複数処理を実行する、
ことを特徴とする請求項１に記載の情報記憶媒体。
【請求項５】
情報記憶媒体に対してコマンドを送信し、この情報記憶媒体からのレスポンスを受信する媒体処理装置と、
前記媒体処理装置からの前記コマンドを受信し、前記コマンドに含まれる複数処理に対応した複数データに基づき前記複数処理を実行し、実行された前記複数処理に対応した複数の出力データを含むレスポンスを前記媒体処理装置に対して送信するためのモジュールが埋め込まれたカード本体により構成される情報記憶媒体と、
を備えた情報処理システム。
【請求項６】
コマンドを受信し、
前記受信したコマンドに含まれる複数処理に対応した複数データに基づき前記複数処理を実行し、
前記実行した前記複数処理に対応した複数の出力データを含むレスポンスを前記媒体処理装置に対して送信する、
ことを特徴とするコマンド処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、不揮発性のデータメモリおよびＣＰＵなどの制御素子を有するＩＣ（集積回路）チップを内蔵するＩＣカードと称される情報記憶媒体に関する。さらに、本発明は、このような情報記憶媒体に対してデータを記録したりこの情報記憶媒体に記憶されたデータを読み出したりするリーダライタと称される媒体処理装置により構成される情報処理システムに関する。さらに、本発明は、上記した媒体処理装置から送信されるコマンドに基づくコマンド処理方法に関する。
【背景技術】
【０００２】
近年、安全性に優れるＩＣカード（接触式及び非接触式）の普及が目覚しい。このようなＩＣカードは、電力供給が断たれてもデータを保持する事が可能な不揮発性メモリ、リーダライタと通信可能な通信Ｉ／Ｆ、各種動作を実行するＣＰＵなどの制御素子、ＣＰＵの動作プログラム等を記憶するＲＯＭ、及びデータを一時的に記憶するＲＡＭを有する。
【０００３】
ＩＣカードは、クレジットカード、定期券、その他の商取引の決済に使われるだけでなく、社員証、会員証、保険証などのＩＤカードとしても様々な分野で使われるようになっている。これは、従来の磁気カードに比べ、ＩＣカードは、ＣＰＵ、ＲＯＭ、ＲＡＭ、不揮発性メモリなどを有するＩＣを備えることにより、様々な機能が実現可能となったこと、さらには偽造が難しいためセキュリティの面でも大きく向上したことが要因である。
【０００４】
ＩＣカードは、媒体処理装置（リーダライタ）から送信されるコマンドに基づき動作する。例えば、ＩＣカードは、媒体処理装置から送信されるコマンドを受信すると、受信コマンドに基づく処理を実行し、レスポンスデータを返信する。
【０００５】
さらに、ＩＣカードを多目的に利用可能とするために、複数のアプリケーションで運用可能なＩＣカードに関する技術が開示されている（特許文献１参照）。この特許文献１には、一つの処理コマンドを複数のアプリケーションで実行する技術が開示されている。
【特許文献１】特開２００４−１６４２６１
【発明の開示】
【発明が解決しようとする課題】
【０００６】
クレジット決済などに代表される、ＩＣカードを使用した取引処理はアプリケーション選択、データ読出し、及びデータ更新など複数のコマンドを組み合わせることで実現される。複数のコマンドに分割することにより、取引処理の柔軟性が向上する。例えば、ＩＣカードの情報確認の際にはデータ読出しのみを実行し、ＩＣカードによる商品購入処理の際にはアプリケーション選択、データ読出し、データ更新を順次実行する。
【０００７】
しかしながら、複数のコマンドに分割することにより、処理時間が長くなる傾向にある。
【０００８】
上記した特許文献１には、一つの処理コマンドを複数のアプリケーションで実行する技術が開示されているものの、やはり一つの処理コマンドでは一つの処理しか実行できず、複数の処理を実行させる必要がある場合には、処理時間が長くなってしまう。
【０００９】
本発明の目的は、複数処理の処理時間の短縮を図ることが可能な情報記憶媒体、情報処理システム、及びコマンド処理方法を提供することにある。
【課題を解決するための手段】
【００１０】
この発明の一実施形態に係る情報記憶媒体は、モジュールが埋め込まれたカード本体により構成される情報記憶媒体であって、前記モジュールは、コマンドを受信する受信手段と、前記コマンドに含まれる複数処理に対応した複数データに基づき、前記複数処理を実行する実行手段と、前記実行手段により実行された前記複数処理に対応した複数の出力データを含むレスポンスを送信する送信手段とを備えている。
【００１１】
この発明の一実施形態に係る情報処理システムは、情報記憶媒体に対してコマンドを送信し、この情報記憶媒体からのレスポンスを受信する媒体処理装置と、前記媒体処理装置からの前記コマンドを受信し、前記コマンドに含まれる複数処理に対応した複数データに基づき前記複数処理を実行し、実行された前記複数処理に対応した複数の出力データを含むレスポンスを前記媒体処理装置に対して送信するためのモジュールが埋め込まれたカード本体により構成される情報記憶媒体とを備える。
【００１２】
この発明の一実施形態に係るコマンド処理方法は、コマンドを受信し、前記受信したコマンドに含まれる複数処理に対応した複数データに基づき前記複数処理を実行し、前記実行した前記複数処理に対応した複数の出力データを含むレスポンスを前記媒体処理装置に対して送信する。
【発明の効果】
【００１３】
本発明によれば、複数処理の処理時間の短縮を図ることが可能な情報記憶媒体、情報処理システム、及びコマンド処理方法を提供できる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照し、本発明の実施形態について説明する。
【００１５】
図１は、本発明の一実施形態に係る情報処理システムの概略構成を示す図である。
【００１６】
情報処理システムは、ＩＣカード１（情報記憶媒体）及び端末２により構成される。端末２は、カードリーダ・ライタ１２、主制御部１３、キーボード１４、ＣＲＴ１５、プリンタ１６を備えている。
【００１７】
主制御部１３には、カードリーダ・ライタ１２、キーボード１４、ＣＲＴ１５、プリンタ１６が接続されている。主制御部１３は、カードリーダ・ライタ１２を介して、ＩＣカード１に対してデータを記録したり、ＩＣカード１に記憶されたデータを読み出したりする。
【００１８】
例えば、図１に示す情報処理システムを、クレジットカードなどの決済システムに適用した場合、つまり、ＩＣカード１がクレジットカードとして機能する場合、端末２はPOS端末やATMに相当する。ＩＣカード使用者（カード所持者）は、キーボード１４を使用して、暗証番号等を入力する。なお、キーボード１４でＩＣカード使用者（カード所持者）により入力される暗証番号を以降は外部入力PIN（Personal Identification Number）と称する。また、ＩＣカード１の内部に保存され、外部入力PINと一致・不一致の検証処理を行うためのデータを内部PINと称する。
【００１９】
また、ＩＣカード１はクレジットカードとして機能するだけでなく、例えばＥＴＣの料金決済カード（ＥＴＣカード）として機能することもできる。つまり、１枚のＩＣカード１は、複数のアプリケーションで運用可能なＩＣカードである。
【００２０】
図２は、図１に示すＩＣカード１の概略構成を示す図である。図１に示すように、ＩＣカード１は、制御素子１０１、データメモリ１０２、ワーキングメモリ１０３、プログラムメモリ１０４、及び通信部１０５を備えている。制御素子１０１は、制御部として機能し、例えばＣＰＵである。データメモリ１０２は、記憶内容が消去可能な不揮発性のメモリであり、例えばEEPROMにより構成される。例えばデータメモリ１０２には、ツリー状に構成された複数ファイルが格納される。例えば、MF(Master File)、MFに従属する複数のDF(Dedicated File)、DFに従属する複数のEF(Element File)により構成される複数ファイルが格納される。例えば、一つのDFが一つのアプリケーションに対応し、あるEFに内部PINが格納され、また別のEFにはユーザの生年月日などの情報が格納される。ワーキングメモリ１０３は、制御素子１０１により処理されるデータ及び処理されたデータを一時的に保持するためのメモリであり、例えばRAMにより構成される。通信部１０５は、カードリーダ・ライタ１２と通信し、カードリーダ・ライタ１２から送信されるコマンドを受信したり、この受信コマンドに対するレスポンスを返信したりする。
【００２１】
また、制御素子１０１、データメモリ１０２、ワーキングメモリ１０３、プログラム、メモリ１０４は１つのＩＣチップ（あるいは複数のＩＣチップ）１００で構成されている。さらに、ＩＣチップ１００と通信部１０５が一体的にＩＣカード１の本体内に埋設されている。
【００２２】
例えば、ＩＣカード使用者（カード所持者）より入力される外部入力PINは、つまり、キーボード１４を介して入力された外部入力PINは、カードリーダ・ライタ１２からＩＣカード１へ送信される。ＩＣカード１は、カードリーダ・ライタ１２から送信される外部入力PINを通信部１０５を介して受信し、ワーキングメモリ１０２に一時的に保持する。ＩＣカード１（制御素子１０１）は、ワーキングメモリ１０２に一時的に保持された外部入力PINとデータメモリ１０２に保持されている内部PINとを照合し、両者の一致・不一致を検証する。
【００２３】
その後、ＩＣカード１（制御素子１０１）は、検証処理結果を通信部１０５を介してカードリーダ・ライタ１２へ送信する。主制御部１３は、カードリーダ・ライタ１２により受信された検証処理結果をＣＲＴ１５に表示させる。ICカード使用者（カード所持者）は、ＣＲＴ１５の表示内容を参照し、検証処理結果を確認する。
【００２４】
図３は、複数の処理に対応した複数コマンドのデータ構造の一例を示すとともに、各コマンドに対するレスポンスのデータ構造一例を図である。それに対して、図４は、複数の処理に対応した一つの一括処理コマンドのデータ構造の一例を示すとともに、この一括処理コマンドに対するレスポンスのデータ構造の一例を示す図である。
【００２５】
まず、図３を参照して、複数の処理に対応した複数コマンドによるデータ処理について説明する。カードリーダ・ライタ１２は、コマンド（コマンドデータ列）をＩＣカード１へ送信する。ＩＣカード１の通信部１０５はコマンドを受信し、制御素子１０１は受信したコマンドのデータ部に格納されたデータに基づく処理を実行し、通信部１０５は処理結果に応じたレスポンス（レスポンスデータ列）をカードリーダ・ライタ１２へ返信する。レスポンスデータ列は、コマンドが正常処理をされた場合に出力されるデータ部（DATA）と処理結果（正常処理／異常処理）を通知するステータスワード（SW1、SW2）で構成される。
【００２６】
図３に示す４つのコマンドにより、例えば、（１）SELECT（アプリケーション選択）→（２）VERIFY（PIN照合）→（３）READ RECORD（データ読み出し）→（４）UPDATE RECORD（データ更新）の順序で複数の処理が実行される。つまり、SELECTコマンドによりアプリケーションが選択されレスポンスが返信され、VERIFYコマンドによりPINが照合されレスポンスが返信され、READ RECORDコマンドによりデータが読み出されレスポンスが返信され、UPDATE RECORDコマンドによりデータが更新されレスポンスが返信される。
【００２７】
これに対して、図４に示す一括処理コマンドにより、上記した（１）SELECT〜（４）UPDATE RECORDの複数処理を一括して実行することができる。図５は、一括処理コマンドに対応した処理の流れを示すフローチャートである。
【００２８】
図４に示すように、一括処理コマンドはデータ部を含み、このデータ部は、複数処理（例えば、SELECT、VERIFY、READ RECORD、UPDATE RECORD）に対応した複数データ（DF名、PINデータ、更新データ）を含む。さらに、一括処理コマンドは、複数処理を示す複数処理識別データ（P1 = FFh）を含む。
【００２９】
ＩＣカード１の通信部は、カードリーダ・ライタ２から送信されたコマンドを受信する（Ｆ５０１）。ＩＣカード１の制御素子１０１は、受信コマンドがSELECTコマンドか否かを確認する（Ｆ５０２）。
【００３０】
制御素子１０１が、SELECTコマンドで無いと判断した場合は（Ｆ５０２、ＮＯ）、その他のコマンド処理へ移行する（Ｆ５０３）。制御素子１０１が、SELECTコマンドであると判断した場合は（Ｆ５０２、ＹＥＳ）、受信コマンドにより一括処理が指定されているか否か判断する（Ｆ５０４）。例えば、ＩＣカード１の制御素子１０１は、一括処理コマンド中のP1を参照し、P1のデータに基づき一括処理が指定されているか否か判断する。
【００３１】
制御素子１０１が、受信コマンドにより一括処理が指定されていないと判断すると（Ｆ５０４、ＮＯ）、通常のSELECTコマンド処理へ移行する（Ｆ５０５）。制御素子１０１が、受信コマンドにより一括処理が指定されていると判断すると（Ｆ５０４、ＹＥＳ）、受信コマンドのデータ部に入力された外部入力PINとデータメモリ１０２に保持されている内部PINとを照合し、両者の一致・不一致を検証する。
【００３２】
制御素子１０１による検証により、両者が不一致となった場合は（Ｆ５０７、ＮＯ）、制御素子１０１は、送信レスポンスデータに対して、結果不一致を示すステータスワードを設定し（Ｆ５０８）、Ｆ５１１の処理へ移行する。両者が一致した場合は（Ｆ５０７、ＹＥＳ）、制御素子１０１は、受信コマンドのデータ部に入力された更新データでＩＣカード１内のデータの更新処理を行う（Ｆ５０９）。
【００３３】
さらに、制御素子１０１は、送信レスポンスデータに対して、ＤＦ関連情報及び読出しデータを設定し、さらに送信レスポンスデータに対して正常終了したことを示すステータスワードを設定する（Ｆ５１０）。つまり、送信レスポンスデータは、実行された複数処理に対応した複数の出力データを含む。通信部１０５は、送信レスポンスデータをカードリーダ・ライタ１２へ送信し（Ｆ５１１）、コマンド処理を終了する。
【００３４】
以上により、図３に示すような複数コマンドで実現されていた複数処理が、図４に示す一つの一括処理コマンドで実現可能となる。これにより、例えば、複数コマンドで実現される取引処理のうち頻繁に実行される取引処理に対応した一括処理コマンドを用意することにより、コマンド実行回数および処理時間を削減することができる。結果的に、複数処理の処理時間の短縮を図ることができる。
【００３５】
ここで、一括処理コマンドの変形例１、変形例２について説明する。
【００３６】
図６は、一括処理コマンドの変形例１を示す図である。図６に示すように、一括処理コマンドのデータ部は、複数処理（例えば、SELECT、VERIFY、READ RECORD、UPDATE RECORD）に対応した複数データ（DF名、PINデータ、更新データ）の夫々を格納するための複数個のデータユニット（複数個のＴＬＶデータ構造）を含む。
【００３７】
各データユニットは、複数処理に対応した複数データのうちの一つのデータの種類を示す識別情報を格納する識別情報部（Tag）、一つのデータのレングス情報を格納したレングス部（Length）、一つのデータのバリューを格納したバリュー部（Value）を含む。制御素子１０１は、各データユニットに含まれた各データに対応した複数処理を実行する。
【００３８】
図７は、一括処理コマンドの変形例２を示す図である。図７に示すように、一括処理コマンドのデータ部のデータ部は、複数処理を示す複数処理識別データを格納した先頭データユニット（一つのＴＬＶデータ構造）と、複数処理に対応した複数データの夫々を格納するための複数個の後続データユニット（複数個のＴＬＶデータ構造）とを含む。
【００３９】
先頭データユニットは、複数処理を示す複数処理識別データの種類を示す識別情報を格納する識別情報部(Tag)、前記複数処理識別データのレングス情報を格納したレングス部（Length）、複数処理識別データのバリュー（Value）を格納したバリュー部を含む。各後続データユニットは、複数データのうちの一つのデータの種類を示す識別情報を格納する識別情報部、一つのデータのレングス情報を格納したレングス部、一つのデータのバリューを格納したバリュー部を含む。制御素子１０１は、先頭データユニットに含まれた複数処理識別データに基づきコマンドによる複数処理を認識し、各後続データユニットに含まれた各データに基づき複数処理を実行する。
【００４０】
上記したＴＬＶデータ構造の採用により、可変長データのサポートが可能となる。つまり、ＴＬＶデータ構造はレングス情報を含むため、ＴＬＶデータ構造に含まれるバリューのデータ長を任意に設定できる。
【００４１】
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【００４２】
【図１】本発明の一実施形態に係る情報処理システムの概略構成を示す図である。
【図２】図１に示すＩＣカードの概略構成を示す図である。
【図３】複数の処理に対応した複数コマンドのデータ構造の一例を示すとともに、各コマンドに対するレスポンスのデータ構造一例を図である。
【図４】複数の処理に対応した一つの一括処理コマンドのデータ構造の一例を示すとともに、この一括処理コマンドに対するレスポンスのデータ構造の一例を示す図である。
【図５】一括処理コマンドに対応した処理の流れを示すフローチャートである。
【図６】一括処理コマンドの変形例１を示す図である。
【図７】一括処理コマンドの変形例２を示す図である。
【符号の説明】
【００４３】
１…ＩＣカード、２…端末、１２…カードリーダ・ライタ、１３…主制御部、１４…キーボード、１５…ＣＲＴ、１６…プリンタ、１０１…制御素子、１０２…データメモリ、１０３…ワーキングメモリ、１０４…プログラムメモリ、１０５…通信部
【図１】
2010009467.tif 000003
【図２】
2010009467.tif 000004
【図３】
2010009467.tif 000005
【図４】
2010009467.tif 000006
【図５】
2010009467.tif 000007
【図６】
2010009467.tif 000008
【図７】
2010009467.tif 000009