(58)【調査した分野】(Int.Cl.,DB名)
前記制御手段は、第1のレスポンスに第2の識別情報と第2の長さ情報とを含む情報を含めて送信し、前記第1のレスポンスに対応して送信される第2の識別情報と第2の識別情報に対応する第2のデータを含む第3のコマンドを受信し、前記第3のコマンドに含まれる第2の識別情報に基づき、前記第3のコマンドに含まれる第2のデータを当該ICモジュールに設定する請求項1のICカード。
【発明を実施するための形態】
【0009】
以下、実施形態について図面を参照して説明する。
【0010】
図1は、実施形態に係るICカードシステムの概略構成を示すブロック図である。
図1に示すように、ICカードシステムは、端末1(発行装置)及びICカード2(携帯可能電子装置)により構成される。端末1は、制御部11、ディスプレイ12、キーボード13、リーダライタを備えている。端末1はICカード2と通信可能に構成されており、端末1はICカード2に対してデータを送信したり、ICカード2からのデータを受信したりする。例えば、端末1は、ICカード2に対して、発行コマンドを送信し、ICカードに対して発行処理を実行し、ICカードを発行状態とする。
【0011】
制御部11は、複数のアプリケーションを選択的に実行することができる。ディスプレイ12は、ICカード2との通信結果及び認証結果等を表示する。キーボード13は、制御部11に対して文字や数字等を入力する。リーダライタは、ICカード2と通信する。
【0012】
なお、ICカード2は、接触式のカード、非接触式のカード(無線カード)、及び非接触式と接触式の両者をサポートするコンビ型のカードのいずれであってもよい。
【0013】
図2は、実施形態に係るリーダライタの概略構成を示すブロック図である。
図2に示すように、リーダライタは、通信I/F142、CPU143、データメモリ(不揮発性メモリ)144、RAM145、ROM146を備えている。CPU143は、ICカード2に対してコマンド(命令)等の送信を制御したり、ICカード2からの応答を検出したり、ICカード2からの応答に基づきさらにICカード2に対してコマンド(命令)等の送信を制御したりする。
【0014】
図3は、実施形態に係るICカードの概略構成を示すブロック図である。
図3に示すように、ICカード2は、例えばプラスティックカード(基材)2aにより構成され、ICモジュール20(ICチップ)を備え、ICモジュール20は、通信I/F201、CPU204、データメモリ(EEPROM、FRAM、FLASH等の不揮発性メモリ)205、RAM206、ROM207を備えている。なお、携帯可能電子装置の一例として、上記したようなICカード2について説明するが、本実施形態はこれに限定されるものではない。例えば、携帯可能電子装置は、SIM形状のICカードであってもよい。
【0015】
RAM206は、ワーキングメモリとして機能する。ROM207は、CPU204により実行されるICカードプログラムを保持する。CPU204は、ROM207に記憶されたICカードプログラム等に基づき動作する。また、CPU204は、データメモリ205又はRAM206に記憶されたデータを読み出したり、データメモリ205又はRAM206に対してデータを書き込んだり、さらには、通信I/F201を介して受信したコマンド(端末1から送信されたコマンド)を解釈し実行したり、通信I/F201を介して端末1に対してコマンド実行結果の返信を制御したりする。
【0016】
例えば、データメモリ205は、主ファイル(Main File、MFと略記)、主ファイルに属する複数の専用ファイル(Dedicated File、DFと略記)、及び各専用ファイルに属する基礎ファイル(Elementary File、EFと略記)を記憶する。MFは、最上位に位置するDFであり、MFには1又は複数のDFが属し、また各DFには1又は複数のEFが属する。これらMF、DF、EFには、1又は複数のデータオブジェクトが格納される。データオブジェクトは、値領域の種別を示す種別情報(タグ値)、値領域のデータ長を示すデータ長情報(レングス)、及び値領域(バリュー)により構成される。
【0017】
次に、発行処理の概要について説明する。ICカード2のCPU204等が、本実施形態で説明する発行処理を実行(レスポンスの送信、現在の状態を発行状態から発行完了状態へ変更を実行)する。また、端末1の制御部11及びリーダライタ14等が、本実施形態で説明する発行処理を実行(コマンドの送信、データの検索等を実行)する。
【0018】
上記端末1のリーダライタ14は、ICカード2に対して、発行コマンド(例えば識別子=0xFFFFを含む)を送信し、発行処理を実行する。発行コマンドは、ICカードに個人情報や、内部制御用のデータを設定するために使用されるコマンドである。ICカード2は、この発行コマンドを受信し、例えば識別子=0xFFFFを検出すると、応答データを返信する仕組みを持つ。さらに、この応答データは、端末1を制御するデータであり、例えば、この応答データは、ICカード2のファイル構成を示す情報を含み、端末1は、応答データを受信すると、ICカード2のファイル構成を示す情報に基づき発行処理を実行する。つまり、端末1は、ICカード2のファイル構成に応じた設定に基づき発行処理を実行する。これにより、容易に、製品(ICカード)ごとのファイル構成に応じた発行を可能にすることができる。
【0019】
ここでは、ICカード2に個人情報や内部制御用等の発行に必要なデータを設定して発行を完了することを想定する。
図4は、相互認証及び発行処理の前半部分について端末1とICカード2との間のコマンドの送受信をまとめたフローチャートであり、
図5は、相互認証及び発行処理についてICカード2側を中心にまとめたフローチャートである。
【0020】
図4及び
図5に示すように、ICカード2と端末1はコマンド・レスポンスにより、情報を交換する。例えば、ICカード2が起動し(ST101)、ICカード端末1は、ICカード2に対して、相互認証用のコマンドC01を送信し、ICカード2は、相互認証用のコマンドC01を受信し(ST102)、端末1に対して、相互認証用データを送信する(ST103)。これに対応して、端末1は、ICカード2に対して、相互認証用のコマンドC02を送信し、ICカード2は、相互認証用のコマンドC02を受信し(ST104)、端末1に対して、相互認証結果を送信する(ST105)。これに対応して、端末1は、ICカード2に対して、発行コマンドC1を送信し、ICカード2は、発行コマンドC1を受信し(ST106)、端末1に対して、ICカードのファイル構成を示す情報を送信する(ST107)。
【0021】
上記のように、ICカード2と端末1は、お互いの正当性を相互認証用のコマンドC01、相互認証用のコマンドC02により確認した後(この方法は例えばEMV Card Personalization Specification v.1.1 2007 (クレジット業界標準の共通発行仕様)のように一般的に知られている方法を使用する。)、端末1が、ICカード2に対して、発行コマンドC1を送信するとICカード2は、端末1に対して、ファイル構成を示す情報を端末に送信する。
【0022】
例えば、ファイル構成を示す情報は、以降設定する一連のデータのTag(識別情報、「T」と略記)および長さ(レングス、「L」と略記)がまとまったデータ(例えば
図8)でもよいし、次に設定するデータのTagでもよい。端末1は、このファイル構成を示す情報に従い、以降に送信するデータの系統を変更する。
【0023】
例えば、ファイル構成を示す情報に従い、端末1は、発行コマンドC2−1を発行し、ICカード2は、発行コマンドC2−1を受信し(ST111)、発行コマンドC2−1で指定されるデータをカード内部に設定する(ST112)。続いて、端末1は、発行コマンドC2−2を発行し、ICカード2は、発行コマンドC2−2を受信し(ST113)、発行コマンドC2−2で指定されるデータをカード内部に設定する(ST114)。最後に、端末1は、最終の発行コマンドC2−nを発行し、ICカード2は、発行コマンドC2−nを受信し(ST115)、発行コマンドC2−nで指定されるデータをカード内部に設定し(ST116)、発行フェーズ(発行状態)から運用フェーズ(発行完了状態)に変更する(ST130)。
【0024】
或いは、ファイル構成を示す情報(第2の情報)に従い、端末1は、発行コマンドC3−1を発行し、ICカード2は、発行コマンドC3−1を受信し(ST121)、発行コマンドC3−1で指定されるデータをカード内部に設定する(ST122)。続いて、端末1は、発行コマンドC3−2を発行し、ICカード2は、発行コマンドC3−2を受信し(ST123)、発行コマンドC3−2で指定されるデータをカード内部に設定する(ST124)。最後に、端末1は、最終の発行コマンドC3−nを発行し、ICカード2は、発行コマンドC3−nを受信し(ST125)、発行コマンドC3−nで指定されるデータをカード内部に設定し(ST126)、発行フェーズ(発行状態)から運用フェーズ(発行完了状態)に変更する(ST130)。
【0025】
これにより、ファイル構成を示す情報をICカードに事前に設定(記憶)することにより、端末1は、製品(ICカード)ごとのファイル構成にしたがってデータの設定を行うことができる。
【0026】
例えばA社で、ICカード2に対してファイル構成を示す情報を設定し、端末1を管理運用するB社にICカード2を出荷する。B社においては端末1により受領したICカード2に対して発行処理を実行する。つまり、端末1は、ICカード2に対して、発行コマンドを送信すると、ICカード2からファイル構成を示す情報を受信することができるので、この情報に基づき自動的にファイル構成を確認し、ICカード2に応じたデータを設定することができる。これによりファイル構成が異なる製品(ICカード2)ごとに端末1側に独自の設定をする必要がなくなる。なお、端末1の制御部11は、ICカード2から送信されるファイル構成を示す情報を解析することができる。
【0027】
次に、
図6及び
図7を参照して、上記説明した発行処理についてより詳しく説明する。
【0028】
端末1は、ICカード2に対して、アプリケーションを選択するコマンドを送信し、ICカード2は、アプリケーションの選択に成功すると、端末1に対して、選択が成功したことを示すステータスワードSW1を返信する。これに対応して、端末1は、ICカード2に対して、相互認証用のコマンドC01を送信し、ICカード2は、端末1に対して、相互認証用データ及び成功したことを示すステータスワードSW2を送信する。これに対応して、端末1は、ICカード2に対して、相互認証用のコマンドC02を送信し、ICカード2は、端末1に対して、相互認証の結果を示すステータスワードSW3を送信する。
【0029】
例えば、端末1は、ICカード2に対して、
図9に示す形式で発行コマンドのデータ部にデータを設定し、発行コマンドC1(例えば識別子=0xFFFFを含む)を送信する。ICカード2は、発行コマンドC1を受信し、端末1に対して、
図8に示すファイルの内部構造を示す情報を含むレスポンス送信する。
【0030】
端末1は、ICカード2に対して、識別子ID1に対応するデータを
図9に示す形式で発行コマンドC2−1のデータ部に設定し、発行コマンドC2−1を送信する。ICカード2は、発行コマンドC2−1を受信し、端末1に対して、設定が成功したことを示すステータスワードSW4を返信する。
【0031】
端末1は、ICカード2に対して、識別子ID2に対応するデータを
図9に示す形式で発行コマンドC2−2のデータ部に設定し、発行コマンドC2−2を送信する。ICカード2は、発行コマンドC2−2を受信し、端末1に対して、設定が成功したことを示すステータスワードSW5を返信する。
【0032】
以上を繰り返し、端末1は、ICカード2に対して、識別子ID2に対応するデータを
図9に示す形式で発行コマンドC2−nのデータ部に設定し、発行コマンドC2−nを送信する。ICカード2は、発行コマンドC2−nを受信し、端末1に対して、設定が成功したことを示すステータスワードSW6を返信する。
【0033】
例えば、ICカード内部のファイル構成を示す情報は、以降に設定する一連のデータの識別子およびその識別子に対応するデータの長さが複数連結されたデータ(例えば
図8)でもよいし、次に設定するデータの識別子およびその識別子に対応するデータの長さ(例えば
図9)でもよい。
【0034】
図8のように設定する一連のデータの識別子およびその識別子に対応するデータの長さが複数連結されたデータが返信される場合について説明する。
【0035】
端末1は、
図9に示す形式で発行コマンドC1のデータ部にデータを設定し、ICカード2に対して、発行コマンドC1を送信する。その際データ部に設定される識別子は例えば0xFFFFとする。ICカード2は、
図7に示されるように発行コマンドのデータ部の識別子が0xFFFFであることを確認した後(ST201、YES)、ICカード2の内部のファイル構成を示すデータが設定されているEFを検索する(ST202)。対象のEFが存在する場合(ST203、YES)、そのEFに設定されている
図8に示される形式のデータと、成功を示すステータスワードSWを連結して端末1に送信する(ST205)。
【0036】
以降、端末1は、この
図8に示されるICカード2内部のファイル構成を示すデータに従い発行コマンドを送信する。端末1は、識別子1に対応するデータを
図9に示す形式で発行コマンドのデータ部に設定し、発行コマンドを送信する。
図7に示されるようにICカード2はこの識別子に対応するEFおよびその先頭からのオフセットを、
図10に従い検索し(ST211)、その情報に従いデータを対応するEFに設定する(ST212、YES)(ST214)。
【0037】
また次に端末1は、識別子2に対応するデータを
図9に示される形式で発行コマンドのデータ部に設定し発行コマンドを送信する。ICカード2は、この識別子に対応するEFおよびその先頭からのオフセットを、
図10に従い検索し(ST211)、その情報に従いデータを対応するEFに設定する(ST212、YES)、(ST214)。
【0038】
以降、端末1およびICカード2は上記の処理を繰り返し行い、最終的には識別子nに対応するデータを対応するEFの指定されるオフセットに設定する。
【0039】
この際に、
図7に示されるようにICカード2は、
図10に存在する識別子がすべて設定済みであることを確認し(ST215)、すべて設定済みだった場合(ST215、YES)、発行が完了したことを示す識別子と成功を示すステータスワードSWを連結し、端末に送信する(ST217)。
【0040】
端末1は、発行が完了したことを示す識別子を受け取った場合、発行を完了するために、最終の発行コマンドであることを示す発行コマンドをICカード2に送信する。
【0041】
ICカード2は最終の発行コマンドであることを示す発行コマンドを受信した場合、アプリケーションを発行状態から発行完了状態へ変更(更新)し、以降発行コマンドを受信した場合、エラーSWを返信する状態へ移行する。
【0042】
このようにしてICカード2に個人情報や内部制御用のデータを設定するために使用される発行コマンドに対して、返信させる、またその応答データに応じて端末1(発行機)が処理を変更する仕組みを提供する。
【0043】
これにより製品(ICカード2)ごとのICカード内部のファイル構成に応じた発行を可能にし、複数製品の識別が可能になり、ICカードの発行工程を効率化できる。
【0044】
図11は、実施形態に係るICカードシステムにおける端末側でのレスポンスに対応する処理を中心にまとめたフローチャートである。
【0045】
上記説明したように、端末1は、ICカード2に対して、
図9に示す形式で発行コマンドのデータ部にデータを設定し、発行コマンドC1(例えば識別子=0xFFFFを含む)を送信する。ICカード2は、発行コマンドC1を受信し、端末1に対して、
図8に示すファイルの内部構造を示す情報(例えばT1,L1,T2,L2,T3,L3…)を含むレスポンスを送信する。
【0046】
端末1は、ファイルの内部構造を示す情報(例えばT1,L1,T2,L2,T3,L3…)を含むレスポンスを受信し、ファイルの内部構成を示す情報に基づき
図12に示すデータベースを参照し、T1(識別情報)に対応するデータを検索し、T1,L1,Data1を含む発行コマンドをICカード2へ送信する。ICカード2は、T1,L1,Data1を含む発行コマンドを受け取り、
図10に示すテーブルを参照し、この発行コマンドに含まれるT1に基づき、この発行コマンドに含まれるData1を所定のEFへ設定し、正常を示すステータスワードSWを返信する。同様に、ファイルの内部構成を示す情報に基づき
図9に示すデータベースを参照し、T2に対応するデータを検索し、T2,L2,Data2を含む発行コマンドをICカード2へ送信する。ICカード2は、T2,L2,Data2を含む発行コマンドを受け取り、
図10に示すテーブルを参照し、この発行コマンドに含まれるT2に基づき、この発行コマンドに含まれるData2を所定のEFへ設定し、正常を示すステータスワードSWを返信する。
【0047】
なお、上記処理(発行処理)の手順は全てソフトウェアによって実行することが可能である。このため、上記処理の手順を実行するプログラム(及び
図12に示すデータベース)を格納したコンピュータ読み取り可能な記憶媒体を通じてこのプログラムを通常のコンピュータにインストールして実行するだけで、上記処理を容易に実現することができる。
【0048】
例えば、端末1は、上記プログラム(及びデータベース)をダウンロードし、ダウンロードしたプログラムを記憶し、プログラムのインストールを完了することができる。これにより、上記コンピュータに相当する端末1は、インストールされた上記プログラムに基づき、上記処理を容易に実現することができる。
【0049】
また、端末1は、コンピュータ読み取り可能な記憶媒体から上記プログラムを読み取り、読み取ったプログラムを記憶し、プログラムのインストールを完了することができる。
【0051】
(1)本実施形態のICカードは、外部から指示される命令を実行可能なICカードであって、受信したコマンドに応じてICカード内部のファイル構成を識別することができるデータをレスポンスデータとして返信することができる。
【0052】
(2)上記のICカード内部のファイル構成を識別することができるデータは、一連の識別子およびその識別子に対応するデータの長さが複数連結されたデータである。
【0053】
(3)上記のICカード内部のファイル構成を識別することができるデータは、直後に設定するデータの識別子および識別子に対応するデータの長さである。
【0055】
(
4)上記のICカードは、個人情報や、ICカードの内部制御用のデータを設定するための発行コマンドを受信した場合、設定が必要なデータが発行済みであることを確認し、その結果を特別の識別子をレスポンスデータとして返信できる。
【0056】
(
5)ICカード内部のファイル構成を識別することができるデータをレスポンスデータとして返信するためにICカードが受信するコマンドは、個人情報やICカードの内部制御用のデータを識別するための発行コマンドである。
【0057】
(
6)実施形態の端末は、外部から指示される命令を実行可能な端末であって、上記のICカード内部のファイル構成を識別することができるデータをレスポンスデータとして受信した場合、そのデータを解析し、対応する個人情報や、ICカードの内部制御用のデータを、それらを設定するための発行コマンドのデータ部に設定し、ICカードに送信することができる。
【0058】
以上により、本実施形態によれば、以下の現状を踏まえて、以下の作用効果を得ることができる。
【0059】
クレジットカードなどに使用されるICカードは高機能製品から低機能製品まで多種にわたり、高機能製品から低機能製品(例えば、暗号の一部機能をサポートしない)の複数製品を処理する発行機にはカード毎に機能(発行データ)を識別する仕様が今後要求される想定される。
【0060】
本実施形態によれば、各製品(各ICカード2)で必要となる発行データを発行機側(端末2側)で識別できるため、複数製品の識別が可能になり、ICカードの発行工程を効率化できる。
【0061】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
ICモジュール及び基材により構成されるICカードであって、
前記ICモジュールは、
ファイル構成を示す情報を記憶する記憶手段と、
第1のコマンドを受信し、前記第1のコマンドの受信に対応して前記ファイル構成を示す情報を含む第1のレスポンスを送信し、前記第1のレスポンスに対応して送信される第2のコマンドを受信し、前記ファイル構成を示す情報から検索される第1のデータを含む前記第2のコマンドの受信に対応して前記第1のデータを設定する制御手段と、
を備えるICカード。
[C2]
前記制御手段は、前記第1のデータを設定し、現在の状態を発行完了状態へ変更する[C1]のICカード。
[C3]
前記制御手段は、第1の識別情報と第1のレングスとを含む前記ファイル構成を示す情報を含む前記第1のレスポンスを送信し、前記第1の識別情報と前記第1の識別情報に基づき検索される前記第1のデータとを含む前記第2のコマンドを受信する[C1]乃至[C2]の何れか一つのICカード。
[C4]
前記制御手段は、前記第2のコマンドに含まれる前記第1の識別情報に基づき、前記第2のコマンドに含まれる前記第1のデータを設定する[C3]のICカード。
[C5]
前記制御手段は、第1の識別情報と第1のレングスと第2の識別情報と第2のレングスとを含む前記ファイル構成を示す情報を含む前記第1のレスポンスを送信し、前記第1の識別情報と前記第1の識別情報に基づき検索される前記第1のデータとを含む第2のコマンドを受信し、前記第2の識別情報と前記第2の識別情報に基づき検索される第2のデータとを含む第3のコマンドを受信する[C1]のICカード。
[C6]
前記制御手段は、前記第2のコマンドに含まれる前記第1の識別情報に基づき、前記第2のコマンドに含まれる前記第1のデータを設定し、前記第3のコマンドに含まれる前記第2の識別情報に基づき、前記第3のコマンドに含まれる前記第2のデータを設定する[C5]のICカード。
[C7]
前記制御手段は、前記第2のデータを設定し、現在の状態を発行完了状態へ変更する[C6]のICカード。
[C8]
第1のコマンドを受信し、
前記第1のコマンドの受信に対応して前記ファイル構成を示す情報を含む第1のレスポンスを送信し、
前記第1のレスポンスに対応して送信される第2のコマンドを受信し、
前記ファイル構成を示す情報から検索される第1のデータを含む前記第2のコマンドの受信に対応して前記第1のデータを設定する情報処理方法。
[C9]
第1のコマンドを送信する手順と、
前記第1のコマンドの送信に対応して前記ファイル構成を示す情報を含む第1のレスポンスを受信する手順と、
前記ファイル構成を示す情報に基づき第1のデータを検索する手順と、
前記第1のデータを含む第2のコマンドを送信する手順とをコンピュータに実行させるためのプログラムを記憶したコンピュータ読取可能な情報記憶媒体。
[C10]
第1のコマンドを送信する手順と、
前記第1のコマンドの送信に対応して前記ファイル構成を示す情報を含む第1のレスポンスを受信する手順と、
前記ファイル構成を示す情報に基づき第1のデータを検索する手順と、
前記第1のデータを含む第2のコマンドを送信する手順とをコンピュータに実行させるためのプログラム。