(57)【要約】【課題】複数のＩＣカードに対して同時に検査・発行処理を行う際に、ＩＣカードでの異常状態の発生を検出し、ＩＣカードに対する回復を制御する制御システムを提供すること。【解決手段】検査・発行の実行状態監視部が、異常発生を検出した際にこの異常状態を識別可能な識別子を用いてＩＣカードの個体識別番号を一時的に更新するＩＣカードと、ポーリングコマンドを利用してＩＣカードの異常状態を検出し、特定のＩＣカードに対して異常回復制御を行うリーダ／ライタを備える制御システム。【選択図】図５
2013015941.tif 000002
【特許請求の範囲】
【請求項１】
近接通信電子媒体と前記近接通信電子媒体の内部の不揮発性記憶領域に格納された情報を読み書きするリーダ／ライタ装置により構成されるシステムにおいて、
前記近接通信電子媒体は、
当該近接通信電子媒体の個体識別番号を含む、内部処理に必要な情報を記憶する記憶部と、
前記リーダ／ライタ装置から受信する命令を内部処理し、前記記憶部に記憶されている前記個体識別番号を含む応答を作成して出力する処理部と、
前記処理部による内部処理結果が異常である場合、前記内部処理結果の異常状態を一意に識別可能な識別子を用いて、前記記憶部に記憶されている前記個体識別番号を一時的に更新する異常制御部を備え、
前記リーダ／ライタ装置は、
前記近接通信電子媒体に送信する命令を作成して出力する命令処理部と、
前記近接通信電子媒体から受信する応答を内部処理する応答処理部と、
前記命令処理部または前記応答処理部の内部処理に必要な情報を保存する情報記憶部と
前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を参照することにより、前記近接通信電子媒体の異常状態を検出する異常回復制御部を備えることを特徴とする近接通信電子媒体の制御システム。
【請求項２】
前記近接通信電子媒体の前記異常制御部は、前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を参照することにより、前記近接通信電子媒体の異常状態を検出し、検出した異常状態に対する異常回復を制御することを特徴とする請求項１記載の制御システム。
【請求項３】
前記近接通信電子媒体の前記異常制御部は、前記処理部による内部処理結果が、異常から正常に変化したことを検出した場合、前記記憶部に記憶されている前記個体識別番号を、初期値に戻すことを特徴とする請求項１記載の制御システム。
【請求項４】
前記近接通信電子媒体の前記異常制御部は、前記処理部による内部処理結果が正常から異常に変化したことを検出した場合、前記記憶部に記憶されている前記個体識別番号を、前記記憶部の退避領域に記憶した後、前記内部処理結果の異常状態を一意に識別可能な識別子を用いて、前記記憶部に記憶されている前記個体識別番号を一時的に更新し、
前記処理部による内部処理結果が異常から正常に変化したことを検出した場合、前記記憶部に記憶されている前記個体識別番号を、前記記憶部の退避領域に記憶した前記個体識別番号に戻すことを特徴とする請求項１記載の制御システム。
【請求項５】
前記リーダ／ライタ装置の前記異常回復制御部は、前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を参照することにより、前記近接通信電子媒体の異常状態を検出し、前記情報記憶部に検出した異常状態を記憶し、検出した異常状態に対する異常回復のための命令を選択し、
前記命令処理部は、前記異常回復制御部が選択した前記命令を生成して出力することを特徴とする請求項１から４記載の制御システム。
【請求項６】
前記リーダ／ライタ装置の前記異常回復制御部は、複数の前記近接通信電子媒体の状態が同じ異常であることを検出した場合、検出した異常状態に対する異常回復のための命令を選択し、前記選択した命令の出力先として、前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を指定し、
前記命令処理部は、前記異常回復制御部が選択した前記命令を生成して出力することで、複数の前記近接通信電子媒体に同時に前記命令を出力することを特徴とする請求項５記載の制御システム。
【請求項７】
近接通信電子媒体の内部の不揮発性記憶領域に格納された情報を読み書きするリーダ／ライタ装置であって、
前記近接通信電子媒体に送信する命令を作成して出力する命令処理部と、
前記近接通信電子媒体から受信する応答を内部処理する応答処理部と、
前記命令処理部または前記応答処理部の内部処理に必要な情報を保存する情報記憶部と
前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を参照することにより、前記近接通信電子媒体の異常状態を検出する異常回復制御部を備えることを特徴とするリーダ／ライタ装置。
【請求項８】
前記異常回復制御部は、前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を参照することにより、前記近接通信電子媒体の異常状態を検出し、前記情報記憶部に検出した異常状態を記憶し、検出した異常状態に対する異常回復のための命令を選択し、
前記命令処理部は、前記異常回復制御部が選択した前記命令を生成して出力することを特徴とする請求項７記載のリーダ／ライタ装置。
【請求項９】
前記異常回復制御部は、複数の前記近接通信電子媒体の状態が同じ異常であることを検出した場合、検出した異常状態に対する異常回復のための命令を選択し、前記選択した命令の出力先として、前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を指定し、
前記命令処理部は、前記異常回復制御部が選択した前記命令を生成して出力することで、複数の前記近接通信電子媒体に同時に前記命令を出力することを特徴とする請求項８記載のリーダ／ライタ装置。
【請求項１０】
前記異常回復制御部は、検出した異常状態に対して異常回復が可能かどうかを判定し、異常回復が可能な場合のみ、異常回復のための命令を選択し、
前記命令処理部は、異常回復が可能な前記近接通信電子媒体に対してのみ、異常回復のための命令を生成して出力することを特徴とする請求項８から９記載のリーダ／ライタ装置。
【請求項１１】
前記異常回復制御部は、前記近接通信電子媒体の異常状態と、他の近接通信電子媒体の正常状態とを検出した場合、前記情報記憶部に、前記近接通信電子媒体の異常状態を個体数とともに記憶し、前記近接通信電子媒体に対する異常を回復するための命令と、前記他の近接通信電子媒体に対する次の命令とを、並行して、作成して出力することを特徴とする請求項１０記載のリーダ／ライタ装置。
【請求項１２】
近接通信電子媒体と前記近接通信電子媒体の内部の不揮発性記憶領域に格納された情報を読み書きするリーダ／ライタ装置により構成されるシステムにおいて、前記近接通信電子媒体は、
当該近接通信電子媒体の個体識別番号を含む、内部処理に必要な情報を記憶する記憶部と、
前記リーダ／ライタ装置から受信する命令を内部処理し、前記記憶部に記憶されている前記個体識別番号を含む応答を作成して出力する処理部と、
前記処理部による内部処理結果が異常である場合、前記内部処理結果の異常状態を一意に識別可能な識別子を用いて、前記記憶部に記憶されている前記個体識別番号を一時的に更新する異常制御部を備えることを特徴とする近接通信電子媒体。
【請求項１３】
前記異常制御部は、前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を参照することにより、前記近接通信電子媒体の異常状態を検出し、検出した異常状態に対する異常回復を制御することを特徴とする請求項１２記載の近接通信電子媒体。
【請求項１４】
前記異常制御部は、前記処理部による内部処理結果が、異常から正常に変化したことを検出した場合、前記記憶部に記憶されている前記個体識別番号を、初期値に戻すことを特徴とする請求項１２記載の近接通信電子媒体。
【請求項１５】
前記近接通信電子媒体の前記異常制御部は、前記処理部による内部処理結果が正常から異常に変化したことを検出した場合、前記記憶部に記憶されている前記個体識別番号を、前記記憶部の退避領域に記憶した後、前記内部処理結果の異常状態を一意に識別可能な識別子を用いて、前記記憶部に記憶されている前記個体識別番号を一時的に更新し、
前記処理部による内部処理結果が異常から正常に変化したことを検出した場合、前記記憶部に記憶されている前記個体識別番号を、前記記憶部の退避領域に記憶した前記個体識別番号に戻すことを特徴とする請求項１２記載の近接通信電子媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、近接通信電子媒体の検査・発行処理を制御するシステムにおいて、特に、複数の近接通信電子媒体に対して、同時に検査・発行処理を行い、異常発生時の回復を制御する制御システムに関する。
【背景技術】
【０００２】
近接通信を行う電子媒体として、例えば、非接触ＩＣカードが広く一般に知られている。非接触ＩＣカードは、内部の不揮発性記憶領域に電子化された情報を記憶する。以下、ＩＣカードは、非接触ＩＣカード（近接通信電子媒体）を意味する。記憶される情報は、一般的に公開される情報に限らず、ＩＣカードの利用目的に応じた個人情報や金融情報等の非公開や保護が必要な情報も含まれる。ＩＣカードに記憶された情報の読み出しまたは書き込みを行う際には、リーダ／ライタ装置を利用する。
【０００３】
リーダ／ライタ装置は、電磁波によるＲＦ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ）フィールドを発生させてＩＣカードと近接通信を行う。
【０００４】
リーダ／ライタ装置は、ポーリングというコマンドを繰り返し送信している。リーダ／ライタ装置に近づいたＩＣカードは、リーダ／ライタが発生するＲＦフィールドから電力供給を受けることで起動して初期化処理を行い、ポーリングコマンドを受信してコマンドに対する内部処理を開始する。ＩＣカードは、ポーリングコマンドに対する内部処理として、ＩＣカード自身を識別するための情報をパラメータに含むレスポンスを生成して、リーダ／ライタ装置に送信する。ここで、ＩＣカード自身を識別するための情報とは、例えばＩＣカードの製造番号がある。
【０００５】
リーダ／ライタ装置は、ＩＣカードからのレスポンスを受信することで、ＩＣカードの存在を検出することができる。なおかつ、リーダライタ装置は、レスポンスに含まれるＩＣカードの製造番号を読み取ることにより、存在を検出したＩＣカードの特定が可能となる。リーダ／ライタ装置は、これ以降のコマンド‐レスポンス型のデータ通信において、特定したＩＣカードの製造番号を含むコマンドを生成して送信する。また、ＩＣカードは、コマンドのパラメータに自身の製造番号を含むコマンドだけを受信し、コマンドに対する内部処理を行う。これにより、リーダ／ライタ装置は、通信相手を特定のＩＣカードだけに限定したデータ通信が可能となる。
【０００６】
リーダ／ライタ装置は、ＲＦフィールド内に複数のＩＣカードが存在し、この複数のＩＣカードからのレスポンスが衝突した場合、レスポンスを正しく受信できない。そこで、ポーリングコマンドには、レスポンスが衝突する可能性を低減する仕組みが導入されることが多い。例えば、レスポンスの衝突対策にタイムスロット方式が用いられる場合、いくつか存在するＩＣカードのそれぞれが、複数のうちの１つのタイムスロットをランダムに選択して、このタイムスロットに収まるようにレスポンスを送信する。各ＩＣカードが、タイムスロットをランダムに選択することで、他のＩＣカードのレスポンスと衝突する可能性を低くする。
【０００７】
ＩＣカードの存在を正しく検出できたリーダ／ライタ装置は、特定のＩＣカード毎にコマンド‐レスポンス型のデータ送受信を繰り返し、ＩＣカード内部の情報の読み出しと書き込みを制御する。この制御をどれだけ効率良く実施できるかは、リーダ／ライタの性能と制御手順に依存する。リーダ／ライタ装置は、ＩＣカード１枚ずつを順番に制御していくことでも良いが、ＩＣカードのコマンドに対する内部処理に要する時間を考えれば待ち時間が長く発生する分だけこれは効率が悪い。リーダ／ライタ装置は、この待ち時間において、他のＩＣカードの制御を実行することにより、複数のＩＣカードの制御を効率良く実施することが可能となる。
【０００８】
ＩＣカードの内部の不揮発性記憶領域に情報を記録してＩＣカードを利用可能とするためには、事前にＩＣカードの検査・発行という工程が必要である。このＩＣカードの検査・発行という工程では、不揮発性記憶領域へのテスト書き込み、演算回路のテスト実行、または情報を記憶する不揮発性記憶領域のサイズを規定してその領域のデータ初期化等が実施される。このＩＣカードの検査・発行工程においても、リーダ／ライタ装置が、ＩＣカードに対していくつかの検査・発行を実行するためのコマンドを順番に１つずつ送信することで、ＩＣカードの発行・検査実施を進める。
【０００９】
しかし、リーダ／ライタ装置が、検査・発行コマンドをＩＣカード１枚ずつに送信して処理していたのでは、ＩＣカード製造時の検査・発行工程のコストが大きくなってしまう。
【００１０】
従来の技術としては、複数のＩＣカードに一度にコマンドを送信することで、大量のＩＣカードの検査・発行の処理時間を短縮するものがあった（特許文献１参照）。前記特許文献１には、発行システムが、ＩＣカードからの応答の有無にかかわらずに、発行処理に必要な複数のコマンドを複数のＩＣカードに対して順次送信することが記載されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００５−２７５４５７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、前記従来の構成では、検査・発行に必要なコマンドを順次実行していく途中で、ＩＣカードの内部処理エラー(検査・発行失敗等の異常発生)を検出できず、回復可能な異常も無視されてしまうという課題を有していた。
【００１３】
本発明は、前記従来の構成の課題を解決するもので、複数のＩＣカードに対して同時に検査・発行処理を行う際に、ＩＣカードでの異常状態の発生を検出し、ＩＣカードに対する回復を制御する制御システムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、本発明の制御システムは、近接通信電子媒体と前記近接通信電子媒体の内部の不揮発性記憶領域に格納された情報を読み書きするリーダ／ライタ装置により構成されるシステムにおいて、前記近接通信電子媒体は、当該近接通信電子媒体の個体識別番号を含む、内部処理に必要な情報を記憶する記憶部と、前記リーダ／ライタ装置から受信する命令を内部処理し、前記記憶部に記憶されている前記個体識別番号を含む応答を作成して出力する処理部と、前記処理部による内部処理結果が異常である場合、前記内部処理結果の異常状態を一意に識別可能な識別子を用いて、前記記憶部に記憶されている前記個体識別番号を一時的に更新する異常制御部を備え、前記リーダ／ライタ装置は、前記近接通信電子媒体に送信する命令を作成して出力する命令処理部と、前記近接通信電子媒体から受信する応答を内部処理する応答処理部と、前記命令処理部または前記応答処理部の内部処理に必要な情報を保存する情報記憶部と前記応答処理部が受け取った応答に含まれる前記近接通信電子媒体の個体識別番号を参照することにより、前記近接通信電子媒体の異常状態を検出する異常回復制御部を備えることを特徴とする。
【００１５】
本構成によって、複数の近接通信電子媒体に対して同時に検査・発行処理を行う際に、近接通信電子媒体での異常状態発生を検出し、この異常状態が発生した近接通信電子媒体に対する回復を制御することができる。
【発明の効果】
【００１６】
本発明の制御システムによれば、複数の近接通信電子媒体に対して同時に検査・発行処理を行う際に、近接通信電子媒体の異常状態発生を検出し、この異常状態が発生した近接通信電子媒体に対する回復を制御することができる。これにより、異常が発生した近接通信電子媒体を、他の正常状態の近接通信電子媒体と同じ状態になるように、早期に回復する制御を行い、従来に比べて効率的な検査・発行の実施を可能とする。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施の形態１におけるＩＣカードの発行・検査に関する全体構成を示す図
【図２】本発明の実施の形態１におけるＩＣカードの構成の一例を示すブロック図
【図３】本発明の実施の形態１における検査・発行異常制御部２０９の制御の一例を示すフローチャート
【図４】本発明の実施の形態１における異常状態識別子表の一例を示す図
【図５】本発明の実施の形態１におけるリーダ／ライタ装置の構成の一例を示すブロック図
【図６】本発明の実施の形態１におけるレスポンス処理部５０４と異常検出部５０８の制御の一例を示すフローチャート
【図７】本発明の実施の形態１における異常回復制御部５０７の制御の一例を示すフローチャート
【図８】本発明の実施の形態１における記憶部５０５の異常状態記憶領域５０６で保持する異常状態管理表の一例を示す図
【図９】本発明の実施の形態１における異常回復制御部５０７で保持する異常状態回復コマンド表の一例を示す図
【図１０】本発明の実施の形態１における、複数のＩＣカード１００に対して同時に検査・発行を実施する工程での、検査・発行開始から異常検出までの一例を示すシーケンス図
【図１１】本発明の実施の形態１における、複数のＩＣカード１００に対して同時に検査・発行を実施する工程での、異常検出から異常回復による検査・発行処理の再開までの一例を示すシーケンス図
【発明を実施するための形態】
【００１８】
以下本発明の実施の形態について、図面を参照しながら説明する。
【００１９】
（実施の形態１）
本発明の実施の形態１においては、近接通信電子媒体の典型例であるＩＣカードに対する検査・発行工程での実施内容を説明する。本実施の形態では、１台のリーダ／ライタ装置が複数のＩＣカードを同時に検査・発行する場合を主な対象とする。本実施の形態のリーダ／ライタ装置は、異常が発生したＩＣカードの枚数とその異常内容を検出することが可能である。さらに、本実施の形態のリーダ／ライタ装置は、異常を検出した特定のＩＣカードに対して、その異常を回復するための処理を適宜実施することを特徴とする。また、本実施の形態のリーダ／ライタ装置は、ＩＣカードの検査・発行が正常に実行される制御手順と、異常回復が実行される制御手順とを必要に応じて切り替えて実施すること、または並行して実施することを特徴とする。
【００２０】
図１は、ＩＣカード１００の発行・検査に関する全体構成を示す図である。リーダ／ライタ装置１０１は、電磁波によるＲＦ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ）フィールドを出力する。このＲＦフィールドの内側に存在する複数のＩＣカード１００は、電磁波を通してリーダ／ライタ装置１０１と通信することができる。ＩＣカード１００は、リーダ／ライタ装置１０１が送信したコマンドを受信する。次に、ＩＣカード１００は、コマンドの内容に応じた内部処理を実施する。その後、ＩＣカード１００は、内部の処理結果を含むレスポンスを作成してリーダ／ライタ装置１０１に送信する。リーダ／ライタ装置１０１は、受け取ったレスポンスの内容を判定して内部処理を行い、次に送信するコマンドを作成してＩＣカード１００に送信する。このように、ＩＣカード１００とリーダ／ライタ装置１０１は互いにデータ通信を行う。
【００２１】
リーダ／ライタ装置１０１がＩＣカード１００と通信を開始するために、リーダ／ライタ装置１０１は、まず始めにＩＣカード１００の存在を検出する必要がある。このため、リーダ／ライタ装置１０１は、ポーリングコマンドを繰り返し送信して、ＩＣカード１００の存在を検出する。ＩＣカード１００がリーダ／ライタ装置１０１のＲＦフィールド内に入ると、ＩＣカード１００は、ポーリングコマンドを受信する。この後、ＩＣカード１００は、自身の製造番号を含むレスポンスを生成して、これをリーダ／ライタ装置１０１に送信する。なお、ＩＣカード１００が送信するレスポンスに含む自身の製造番号は、ＩＣカード１００を個別に識別するために利用される他の番号または識別子であってもよい。以上により、レスポンスを受信したリーダ／ライタ装置１０１は、ＩＣカードの存在を検出することができる。
【００２２】
リーダ／ライタ装置１０１が特定のＩＣカード１００と通信するためには、送信先を指定して、コマンドを生成する必要がある。この送信先の指定には、ＩＣカード１００の製造番号を使用する。なお、製造番号は、ＩＣカード１００を個別に識別するために利用される他の番号または識別子であってもよい。リーダ／ライタ装置１０１は、送信先のＩＣカード１００の製造番号を含むコマンドを生成して送信する。ＩＣカード１００は、コマンドに設定された製造番号と、自身の製造番号とが一致するかどうかを判定する。ＩＣカード１００は、一致した場合のみ、そのコマンドの内容に応じた処理を行う。
【００２３】
リーダ／ライタ装置１０１は、複数のＩＣカード１００から同時に送信されたレスポンスを、正しく受信することができないという問題がある。これを、一般的にはレスポンスの衝突と呼ぶ。特に、リーダ／ライタ装置１０１が送信したポーリングコマンドのレスポンスが衝突すると、ＩＣカード１００の存在を正しく検出できない。そこで、ＩＣカード１００は、このポーリングコマンドに対するレスポンスの衝突を低減する仕組みを備える。例えば、ＩＣカード１００は、タイムスロット方式を利用することで対策する。なお、ＩＣカード１００は、他の対策によりレスポンスの衝突を低減するとしてもよい。ここでのタイムスロット方式とは、あらかじめ分割されたＮ個のタイムスロット（＃０〜＃Ｎ−１）からＩＣカード１００がランダムに１つのタイムスロットを選択して、レスポンスを送信するというものである。これにより、複数のＩＣカードのレスポンスが同じタイムタイムスロットを選択しない限り、レスポンスの衝突を回避することができる。
【００２４】
図２は、本発明の実施の形態１におけるＩＣカード１００の構成の一例を示すブロック図である。
【００２５】
ＩＣカード２００は、アンテナ部２０１、パケット送受信部２０２、コマンド・レスポンス処理部２０３、記憶部２０４、検査・発行異常制御部２０９を備えている。
【００２６】
アンテナ部２０１は、リーダ／ライタ装置１０１が発生させるＲＦフィールドを捕捉する機能を有する。データ受信時には、アンテナ部２０１は、電磁波の変化を検出してデータに変換し、これをパケット送受信部２０２に渡す。データ送信時には、アンテナ部２０１は、パケット送受信部２０２から受け取ったデータに基づいて、電磁波の変化を発生させる。
【００２７】
パケット送受信部２０２は、アンテナ部２０１を利用してパケット送受信の制御を行う機能を有する。データ受信時には、パケット送受信部２０２は、アンテナ部２０１から受け取ったデータに対して、フォーマットの確認と誤り検出を実施し、正しいパケットデータか否かを確認する。パケット送受信部２０２は、正しいパケットデータであることが確認できれば、コマンド・レスポンス処理部２０３に、コマンドパケットデータとして渡す。データ送信時には、パケット送受信部２０２は、コマンド・レスポンス処理部２０３から受け取ったレスポンスパケットデータを、所定のフォーマットに変換して、アンテナ部２０１に渡す。
【００２８】
コマンド・レスポンス処理部２０３は、コマンドパケットデータを受け取り、リーダ／ライタ装置１０１からの処理命令に応じた内部処理を行い、内部処理の結果をレスポンスパケットデータとして応答する機能を有する。コマンド・レスポンス処理部２０３は、リーダ／ライタ装置１０１からＩＣカード２００に対する処理命令を指定するコマンドを、コマンドパケットデータとして、パケット送受信部２０２から受け取る。次に、コマンド・レスポンス処理部２０３は、コマンドの内容を解釈して、これに応じた内部処理を実施する。さらに、コマンド・レスポンス処理部２０３は、内部処理の結果と処理命令に従ったデータを格納したレスポンスを作成して、レスポンスパケットデータとして、パケット送受信部２０２に通知する。コマンド・レスポンス処理部２０３の内部処理においては、記憶部２０４に対してデータの読み出しと書き込みを行う。
【００２９】
また、コマンド・レスポンス処理部２０３は、リーダ／ライタ装置１０１からの処理命令が検査・発行に関しており、内部処理を実施した結果を、検査・発行異常制御部２０９に対して通知する機能を有する。コマンド・レスポンス処理部２０３は、内部処理結果が異常である場合に、検査・発行異常制御部２０９に対して異常内容を通知する。なお、この異常内容を通知する機能は、検査・発行に関する処理命令に限らないとしてもよい。なお、検査・発行異常制御部２０９は、コマンド・レスポンス処理部２０３に対して、コマンドの内容を解釈してこれに応じた内部処理を実施した結果に異常が発生していないかどうかを定期的に確認するとしてもよい。
【００３０】
記憶部２０４は、不揮発性記憶領域を備え、この不揮発性記憶領域に、システム情報記憶領域２０５、ユーザ情報記憶領域２０６を備えている。システム情報記憶領域２０５、ユーザ情報記憶領域２０６は、コマンド・レスポンス処理部２０３の内部処理に必要なデータを記憶し、必要に応じてデータの読み出しと書き込みを行う機能を有する。また、記憶部２０４は、製造番号記憶領域２０７、一時記憶領域２０８を備え、検査・発行異常制御部２０９の制御により、製造番号の更新を行う機能を有する。なお、製造番号記憶領域２０７は、システム情報記憶領域２０５に含まれるとしてもよい。
【００３１】
システム情報記憶領域２０５は、ＩＣカード２００のシステムを識別するための情報、ユーザ情報記憶領域２０６に関する情報を格納している。ユーザ情報記憶領域２０６に関する情報とは、ユーザ情報記憶領域２０６のデータ構造を示すための情報である。また、ユーザ情報記憶領域２０６に関する情報とは、ユーザ情報記憶領域２０６へのアクセス制御に利用する暗号鍵とその暗号鍵バージョンの情報、ユーザ情報記憶領域２０６に記憶されるデータの改ざん検出情報などである。
【００３２】
ユーザ情報記憶領域２０６は、ユーザの個人情報や金融情報に関する情報、ユーザ情報記憶領域に格納されているデータの読み出しと書き込みの履歴に関する情報を格納している。また、ユーザ情報記憶領域２０６は、ＩＣカード２００を利用したサービスを提供する事業者が書き込むサービスに関する情報、等を格納している。
【００３３】
製造番号記憶領域２０７は、ＩＣカード２００の製造番号を格納している。なお、この製造番号は、ＩＣカード２００を個別に識別するために利用される他の番号または識別子であってもよい。
【００３４】
一時記憶領域２０８は、例えば、製造番号記憶領域２０７の値を更新する場合に、更新前の値を一時的に退避するために利用する。なお、ここは、システム情報記憶領域２０５、ユーザ情報記憶領域２０６、の値を更新する場合に、更新前の値を一時的に退避するために利用するとしてもよい。
【００３５】
検査・発行異常制御部２０９は、コマンド処理結果監視部２１０と製造番号更新部２１１を備え、コマンド・レスポンス処理部２０３による内部処理結果が異常であることを受け取った場合、異常状態を制御する機能を有する。コマンド処理結果監視部２１０は、コマンド・レスポンス処理部２０３の内部処理結果が、「正常から異常に変化したこと」と「異常から正常に変化したこと」を、監視する。コマンド処理結果監視部２１０が「正常から異常に変化したこと」を検出したとき、製造番号更新部２１１は、製造番号記憶領域２０７の値を更新する。具体的には、製造番号記憶領域２０７の値は、異常状態を一意に判別可能な識別子に更新される。また、製造番号更新部２１１は、製造番号記憶領域２０７の値を更新する前に、一時記憶領域２０８に更新前の値を退避するとしてもよい。コマンド処理結果監視部２１０が「異常から正常に変化したこと」を検出したとき、製造番号更新部２１１は、製造番号記憶領域２０７の値を更新する。具体的には、製造番号記憶領域２０７の値は、初期値としてあらかじめ定義された値に更新される。また、製造番号更新部２１１は、一時記憶領域２０８に退避しておいた更新前の値に更新してもよい。また、製造番号更新部２１１は、検査・発行工程で全てのＩＣカードに対して使用する、共通の規定値に更新してもよい。
【００３６】
図３は、本発明の実施の形態１における検査・発行異常制御部２０９の制御の一例を示すフローチャートである。
【００３７】
まず、検査・発行異常制御部２０９は、コマンド・レスポンス処理部２０３から、内部処理の結果を取得する（Ｓ３００）。コマンド・レスポンス処理部２０３が検査・発行異常制御部２０９に対して内部処理の結果を出力するとしてもよい。また、検査・発行異常制御部２０９が、コマンド・レスポンス処理部２０３の内部処理の結果を、定期的に、確認してもよい。
【００３８】
この後、検査・発行異常制御部２０９は、処理結果が「成功終了」であるかどうかを、処理結果一覧表を参照することで判定する（Ｓ３０１）。
【００３９】
処理結果が「成功終了」ではなかった場合（Ｓ３０１がＮｏ）、図４において説明する異常状態識別子表を参照し、異常状態に対応した識別子を取得する（Ｓ３０２）。次に、検査・発行異常制御部２０９は、記憶部２０４に対して、製造番号記憶領域２０７の値を、一時記憶領域２０８にコピーする（Ｓ３０３）。そして、検査・発行異常制御部２０９は、記憶部２０４に対して、製造番号記憶領域２０７の値を、Ｓ３０２で取得した異常状態識別子で更新する（Ｓ３０４）。なお、検査・発行異常制御部２０９は、製造番号記憶領域２０７の値の一部分だけをＳ３０２で取得した異常状態識別子で更新するとしてもよい。または、検査・発行異常制御部２０９は、製造番号記憶領域２０７の中に事前に確保されている異常状態識別子設定領域に対して、Ｓ３０２で取得した異常状態識別子を書き込むとしてもよい。または、検査・発行異常制御部２０９は、製造番号記憶領域２０７の中に事前に確保されている状態判定用フラグ設定領域に対して、異常終了を示す値を書き込むとしてもよい。
【００４０】
処理結果が「成功終了」であった場合（Ｓ３０１がＹｅｓ）、検査・発行異常制御部２０９は、製造番号記憶領域２０７の値を、一時記憶領域２０８の値で更新する（Ｓ３０５）。なお、一時記憶領域２０８に値が何も設定されていない場合は、何もしないとしてもよい。また、一時記憶領域２０８に値が何も設定されていない場合は、規定値を用いて製造番号記憶領域２０７の値を更新するとしてもよい。そして、検査・発行異常制御部２０９は、一時記憶領域２０８の値を削除する（Ｓ３０６）。
【００４１】
図４は、図３のステップＳ３０２において参照する異常状態識別子表の一例を示す図である。
【００４２】
異常状態識別子表は、コマンド・レスポンス処理部２０３で起こりうる異常状態と、その異常状態を識別可能な異常状態識別子から構成される。例えば、検査・発行異常制御部２０９が取得した処理結果が異常状態「シーケンスエラー」であった場合、異常状態識別子表を参照することで、異常状態識別子「８００００１０１」を取得する。
【００４３】
図５は、本発明の実施の形態１におけるリーダ／ライタ装置１０１の構成の一例を示すブロック図である。
【００４４】
リーダ／ライタ装置５００は、アンテナ部５０１、パケット送受信部５０２、コマンド処理部５０３、レスポンス処理部５０４、記憶部５０５、異常回復制御部５０７を備えている。
【００４５】
アンテナ部５０１は、ＲＦフィールドを発生させる機能を有する。リーダ／ライタ装置５００は、このＲＦフィールドにより、ＩＣカード１００に電源を供給する。
【００４６】
パケット送受信部５０２は、アンテナ部５０１を通じてコマンド（命令）のデータを送信、またはレスポンス（応答）のデータを受信する機能を有する。データ送信時には、パケット送受信部５０２は、コマンド処理部５０３から受け取ったコマンドパケットデータを所定のフォーマットに変換して、アンテナ部５０１に渡す。データ受信時には、パケット送受信部５０２は、アンテナ部５０１から受け取ったデータに対して、フォーマットの確認と誤り検出を実施し、正しいパケットデータか否かを確認する。パケット送受信部５０２は、正しいパケットデータであることが確認できれば、レスポンス処理部５０４に、コマンドパケットデータとして渡す。
【００４７】
コマンド処理部５０３は、記憶部５０５からコマンド作成に必要な情報を受け取り、コマンドを作成して、パケット送受信部５０２に渡す機能を有する。
【００４８】
レスポンス処理部５０４は、パケット送受信部５０２からレスポンスパケットを受け取り、さらに記憶部５０５からレスポンスの判定に必要なデータを取得してレスポンスを解釈する機能を有する。
【００４９】
記憶部５０５は、異常状態記憶領域５０６を備え、コマンド処理部５０３またはレスポンス処理部５０４から受け取る要求に対して、必要なデータを返す機能を有する。異常状態記憶領域５０６は、異常回復制御部５０７によって、読み出しと書き込みを実施される領域であり、ＩＣカード１００の異常状態に関する情報を管理する。
【００５０】
異常回復制御部５０７は、異常検出部５０８と異常回復部５０９を備え、受け取ったレスポンスパケットデータからＩＣカード１００の異常状態を検出し、異常状態に関連する情報を記憶し、異常回復に必要なコマンドの送信を要求する機能を有する。異常検出部５０８は、レスポンス処理部５０４からレスポンスパケットデータを受け取り、ＩＣカード１００の異常状態を検出し、異常状態が異常回復可能なものか否かを判定する。異常回復部５０９は、コマンド処理部５０３に対して異常回復に必要なコマンドの送信を要求する。
【００５１】
図６は、本発明の実施の形態１におけるレスポンス処理部５０４と異常検出部５０８の、制御の一例を示すフローチャートである。
【００５２】
まず、レスポンス処理部５０４は、検査・発行を実施するコマンドの送信より一定時間が経過したことを確認する。これにより、前のコマンドを受信して処理を開始した複数のＩＣカード１００が返すレスポンスと、これ以降で実施する異常回復の制御に関わるコマンドのレスポンスが衝突して、レスポンスの受信に失敗することを防止する。
【００５３】
次に、レスポンス処理部５０４は、コマンド処理部５０３に、ポーリングコマンドの作成を指示し、コマンド処理部５０３は、パケット送受信部５０２を介してポーリングコマンドを複数のＩＣカード１００に対して送信する。しばらく待つと、リーダ／ライタ装置５００は、複数のＩＣカード１００からのレスポンスを受信する（Ｓ６００）。
【００５４】
以降の処理は、リーダ／ライタ装置５００が受信したレスポンスの数だけ繰り返し実行する（Ｓ６０１からＳ６０６）。
【００５５】
リーダ／ライタ装置５００のレスポンス処理部５０４は、受信したＩＣカードからのレスポンスを、異常検出部５０８に通知し、異常検出部５０８は、レスポンスに「異常状態識別子」を含むものがあるかどうかを判定する（Ｓ６０２）。
【００５６】
「異常状態識別子」が含まれている場合（Ｓ６０２がＹｅｓ）、異常検出部５０８は、記憶部５０５が有する異常状態記憶領域５０６に格納されている異常状態管理表に、ステップＳ６０２で判定した異常状態識別子を設定する（Ｓ６０３）。この異常状態管理表については、図８で詳細を説明する。なお、異常状態管理表は、異常状態識別子を表す製造番号と共に、同じ異常状態識別子を含むレスポンスを受信した個数と、ＩＣカードの異常状態を保持する。さらに、異常検出部５０８は、異常状態が回復可能なものであるかどうかを、異常状態回復コマンド表をもとに判定する（Ｓ６０４）。この異常状態回復コマンド表については、図９で詳細を説明する。異常状態が回復可能なものである場合（Ｓ６０４がＹｅｓ）、異常検出部５０８は、レスポンス処理部５０４に、異常回復可能を通知し、レスポンス処理部５０４は、異常回復制御部５０７に対して、異常回復の開始を要求する（Ｓ６０５）。異常状態が回復不可能なものである場合（Ｓ５０４がＮｏ）、異常検出部５０８は、レスポンス処理部５０４に、異常回復不可能を通知し、レスポンス処理部５０４は、次のレスポンスに対する処理を、繰り返す。処理対象の次のレスポンスがない場合、レスポンス処理部５０４は、処理を終了する。
【００５７】
図７は、本発明の実施の形態１における異常回復制御部５０７の異常回復部５０９が、異常回復のための制御を行う一例を示すフローチャートである。
【００５８】
異常回復制御部５０７の異常回復部５０９は、レスポンス処理部５０４から異常回復の開始の要求を受け、処理を開始する。異常回復部５０９は、記憶部５０５の異常状態記憶領域５０６から、異常状態管理表を取得する（Ｓ７００）。
【００５９】
以降の処理は、異常状態管理表に登録されている異常状態識別子の数だけ繰り返し実行する（Ｓ７０１からＳ７０５）。
【００６０】
異常回復部５０９は、異常状態が「回復待ち」の状態にある異常状態識別子の有無を確認する（Ｓ７０２）。
【００６１】
異常状態が「回復待ち」の状態にある異常状態識別子がある場合（Ｓ７０１がＹｅｓ）、異常回復部５０９は、異常状態回復コマンド表を参照して異常回復に利用するコマンドを決定する（Ｓ７０３）。異常回復部５０９は、コマンド処理部５０３に、異常状態識別子を含むＳ７０３で決定したコマンドの作成を指示し、コマンド処理部５０３は、パケット送受信部５０２を介して、作成したコマンドをＩＣカード１００に送信する（Ｓ７０４）。
【００６２】
異常状態が「回復待ち」の状態にある異常状態識別子がない場合（Ｓ７０１がＮｏ）、異常回復部５０９は、次の異常状態識別子に対する処理を、繰り返す。処理対象の次の異常状態識別子がない場合、異常回復部５０９は、処理を終了する。
【００６３】
図８は、本発明の実施の形態１における記憶部５０５の異常状態記憶領域５０６で保持する異常状態管理表の一例を示す図である。
【００６４】
異常状態管理表は、異常状態識別子と、個数と、回復制御状態を対応付けて管理している。異常状態管理表の異常状態識別子は、ＩＣカード１００から送信されたレスポンスに含まれる異常状態識別子である。異常状態管理表の個数は、異常状態識別子を１度のポーリングコマンドのレスポンスで受信した個数である。異常状態管理表の回復制御状態は、異常状態識別子に対応するＩＣカード１００の回復制御状態である。回復制御状態は、「回復待ち」、「回復不可」、「回復中」の３つの状態を持つ。
【００６５】
リーダ／ライタ装置１０１が送信したポーリングコマンドに対して、異常状態識別子「８００００Ｆ０１」を含むレスポンスを受信した場合について、具体的に説明する。異常回復制御部５０７は、異常状態管理表に同じ異常状態識別子があるかどうかを検索する。ここで、同じ異常状態識別子「８００００Ｆ０１」が無かった場合、異常回復制御部５０７は、個数を「１」、制御状態を「回復待ち」として、異常状態管理表に追加登録する。
【００６６】
次に、異常回復制御部５０７は、異常状態回復コマンド表を参照して異常回復に利用するコマンドを決定し、このコマンドの生成と送信をコマンド処理部５０３に通知することで、制御状態を「回復中」に変更する。
【００６７】
この後、リーダ／ライタ装置１０１が送信したポーリングコマンドに対して、異常状態識別子「８００００Ｆ０１」を含むレスポンスを受信しなかった場合、異常状態識別子「８００００Ｆ０１」のＩＣカード１００は回復が完了したとみなす。異常回復制御部５０７は、異常状態識別子「８００００Ｆ０１」を異常状態管理表から削除する。
【００６８】
図９は、本発明の実施の形態１における異常回復制御部５０７で保持する異常状態回復コマンド表の一例を示す図である。異常状態回復コマンド表は、異常状態識別子と、利用する回復コマンドから構成される。なお、利用する回復コマンドに複数の回復コマンドが記載されているとしてもよい。例えば、異常回復制御部５０７は、異常状態回復コマンド表を参照することで、異常状態識別子「８００００Ｆ０１」のＩＣカード１００に対しては、コマンドＢを送信することで異常状態の回復を実施することが可能ということがわかる。
【００６９】
図１０は、本発明の実施の形態１における、複数のＩＣカード１００に対して同時に検査・発行を実施する工程での、検査・発行開始から異常検出までの一例を示すシーケンスを示す。
【００７０】
１つのリーダ／ライタ装置１０１が、３つのＩＣカード１００（Ａ）、（Ｂ）、（Ｃ）を同時に制御する場合を例にあげて説明する。ここで、３つのＩＣカード１００（Ａ）、（Ｂ）、（Ｃ）の製造番号は、全て初期値として０番が割り当てられていると仮定する。
【００７１】
まず、リーダ／ライタ装置１０１は、検査・発行工程の手順に従って検査・発行コマンド（１）を生成して送信する。このとき、検査・発行コマンド（１）のパラメータに含まれる送信先のＩＣカード１００を指定するための製造番号は、０番を設定しておく。これにより、リーダ／ライタ装置１０１は、１度のコマンド送信で同時に３つのＩＣカード１００（Ａ）、（Ｂ）、（Ｃ）の制御が可能となる。
【００７２】
検査・発行コマンド（１）を受信したＩＣカード１００（Ａ）、（Ｂ）、（Ｃ）は、それぞれコマンドの内容に応じた内部処理を開始する。ここで、ＩＣカード１００（Ｃ）において、内部処理途中で異常が発生したとする。本発明のＩＣカード１００（Ｃ）は、検出した異常を一意に判別可能な識別子を用いて製造番号を一時的に更新した上で、リーダ／ライタ装置１０１に異常終了を返す。内部処理を成功終了したＩＣカード１００（Ａ）、（Ｂ）は、リーダ／ライタ装置１０１に成功終了を返す。
【００７３】
リーダ／ライタ装置１０１は、先ほど送信した検査・発行コマンド（１）のレスポンスの受信は行わない。これは、リーダ／ライタ装置１０１では、レスポンスが衝突して受信に失敗したのか、ＩＣカード１００において異常が発生してレスポンスの無応答になったのか、判別がつかないためである。そこで、リーダ／ライタ装置１０１は、検査・発行コマンド（１）の送信から一定時間経過後、ポーリングコマンドを送信する。ポーリングコマンドを受信した３つのＩＣカード１００（Ａ）、（Ｂ）、（Ｃ）は、それぞれがレスポンスを送信するタイムスロットをランダムに選択した後に、レスポンスを送信する。レスポンスの衝突低減の仕組みが組み込まれたポーリングコマンドを利用してＩＣカード１００のコマンド処理結果を受信することが、本発明の１つの特徴である。ここで、ポーリングコマンドのレスポンスにはＩＣカード１００の製造番号が含まれており、リーダ／ライタ装置１０１はこの製造番号を確認する。これにより、リーダ／ライタ装置１０１は、ＩＣカード（Ｃ）において先の検査・発行コマンド（１）処理時に異常が発生したことを検出できる。なお、リーダ／ライタ装置１０１が受信したレスポンスの数が、検査・発行工程を同時に実施しているＩＣカード１００の枚数に満たない場合、タイムスロットの数を増やして再度ポーリングコマンドを送信するとしてもよい。これにより、さらにレスポンスが衝突する確率が低減され、複数のＩＣカード１００の全てからレスポンスを漏らすことなく受信することが可能となる。
【００７４】
図１１は、図１０に引き続いて本発明の実施の形態１における、複数のＩＣカード１００に対して同時に検査・発行を実施する工程での、異常検出から異常回復による検査・発行処理の再開までの一例を示すシーケンスを示すものである。
【００７５】
リーダ／ライタ装置１０１がＩＣカード１００（Ｃ）の異常発生を検出した場合、リーダ／ライタ装置１０１は、異常を一意に判別可能な識別子より、対応する異常回復コマンドを送信する。このとき、異常回復コマンドのパラメータに含まれる送信先のＩＣカード１００を指定するための製造番号は、ＩＣカード１００（Ｃ）のポーリングレスポンスに含まれていた異常を一意に判別可能な識別子を設定する。これにより、リーダ／ライタ装置１０１が送信する異常回復コマンドは、ＩＣカード１００（Ａ）とＩＣカード１００（Ｂ）には受信されず、ＩＣカード１００（Ｃ）のみが受信する。なお、複数のＩＣカード１００の内部処理において同じ異常が発生した場合、異常を一意に判別可能な識別子は同じ値となり、同じ値で製造番号が更新される。これにより、同じ異常が発生したＩＣカード１００に対しては、リーダ／ライタ装置１０１は、１つの異常回復コマンド送信により異常回復制御が可能となる。
【００７６】
異常回復コマンドを受信したＩＣカード１００（Ｃ）は、コマンドに応じた内部処理を開始する。ここで異常回復処理に成功した場合、ＩＣカード１００（Ｃ）は、製造番号を初期値の０番に更新して成功終了を返す。
【００７７】
リーダ／ライタ装置１０１は、ＩＣカード１００（Ｃ）からの成功終了を受信することで、ＩＣカード１００（Ｃ）の異常回復の成功を検出する。これにより、３つのＩＣカード１００（Ａ）、（Ｂ）、（Ｃ）の検査・発行工程の実施状態がそろったことになる。よって、リーダ／ライタ装置１０１は、検査・発行コマンド（２）の送信により、複数のＩＣカード１００を同時に検査・発行実施することが可能と判断して、検査・発行コマンド（２）を送信する。
【００７８】
このように、異常が発生したＩＣカード１００（Ｃ）を早期に異常回復させることで、検査・発行処理を複数のＩＣカード１００に対して一括で実施可能となり、検査・発行工程の実施効率化が実現できる。
【００７９】
なお、先の例では、３つのＩＣカード１００（Ａ）、（Ｂ）、（Ｃ）の検査・発行工程の実施状態がそろうまで、ＩＣカード１００（Ａ）、（Ｂ）は待機状態となっている。リーダ／ライタ装置１０１は、ＩＣカード１００（Ａ）、（Ｂ）に対する検査・発行コマンド（２）の送信と、ＩＣカード１００（Ｃ）に対する異常回復コマンド送信を、並行して制御するとしてもよい。これにより、検査・発行工程の実施効率を、更に向上することが可能となる。
【００８０】
以上により、複数の近接通信電子媒体に対して同時に検査・発行処理を行う際に、近接通信電子媒体での異常状態発生を検出し、この異常状態が発生した近接通信電子媒体に対する回復を制御することができる。これにより、異常が発生した近接通信電子媒体を、他の正常状態の近接通信電子媒体と同じ状態になるように、早期に回復する制御を行うことができ、従来に比べて効率的な検査・発行の実施を可能とする。
【産業上の利用可能性】
【００８１】
本発明にかかる近接通信電子媒体、リーダ／ライタ装置及び制御システムは、発行・検査を実施する工程において、異常発生時に早期に回復制御する機能を有し、複数の近接通信電子媒体に対して同時に検査・発行処理を行うシステムにおいて有効である。
【符号の説明】
【００８２】
１００，２００    ＩＣカード
１０１，５００    リーダ／ライタ装置
２０１    アンテナ部
２０２    パケット送受信部
２０３    コマンド・レスポンス処理部
２０４    記憶部
２０５    システム情報記憶領域
２０６    ユーザ情報記憶領域
２０７    製造番号記憶領域
２０８    一時記憶領域
２０９    検査・発行異常制御部
２１０    コマンド処理結果監視部
２１１    製造番号更新部
５０１    アンテナ部
５０２    パケット送受信部
５０３    コマンド処理部
５０４    レスポンス処理部
５０５    記憶部
５０６    異常状態記憶領域
５０７    異常回復制御部
５０８    異常検出部
５０９    異常回復部
【図１】
2013015941.tif 000003
【図２】
2013015941.tif 000004
【図３】
2013015941.tif 000005
【図４】
2013015941.tif 000006
【図５】
2013015941.tif 000007
【図６】
2013015941.tif 000008
【図７】
2013015941.tif 000009
【図８】
2013015941.tif 000010
【図９】
2013015941.tif 000011
【図１０】
2013015941.tif 000012
【図１１】
2013015941.tif 000013