(57)【特許請求の範囲】
【請求項１】
特定のサービスがＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれか含む領域情報を、前記ＩＣ媒体から取得する取得手段と、
前記取得手段により取得された前記領域情報が、前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれを含むかに基づいて、前記ＩＣ媒体が正当であるか否かを判定する判定手段と、
を有する情報処理装置。
【請求項２】
前記判定手段は、前記取得手段により取得された前記領域情報が前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報を含む場合、前記ＩＣ媒体が正当であると判定し、前記領域情報が前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報を含む場合、前記ＩＣ媒体が正当ではないと判定する請求項１記載の情報処理装置。
【請求項３】
前記領域情報は、前記特定のサービスの鍵情報を含み、
前記判定手段は、前記取得手段により取得された前記領域情報が前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と前記特定のサービスの鍵情報とを含み、前記特定のサービスの鍵情報の特定の位置のビット情報が示すバージョンが特定のバージョンである場合、前記ＩＣ媒体が正当であると判定し、前記領域情報が前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と前記特定のサービスの鍵情報とを含み、前記特定のサービスの鍵情報の前記ビット情報が示すバージョンが前記特定のバージョンでない場合、前記ＩＣ媒体が正当ではないと判定する請求項１記載の情報処理装置。
【請求項４】
前記判定手段は、前記取得手段により取得された前記領域情報が前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報を含む場合、前記ＩＣ媒体が正当でないと判定し、前記領域情報が前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報を含む場合、前記ＩＣ媒体が正当であると判定する請求項１記載の情報処理装置。
【請求項５】
前記領域情報は、前記ＩＣ媒体との相互認証無しに読出し可能な前記ＩＣ媒体の領域に記録されている読出可能情報と、前記読出可能情報の読出しができなかったことを示す情報と、のいずれかを含み、
前記判定手段は、前記取得手段により取得された前記領域情報が前記読出可能情報を含む場合に、前記ＩＣ媒体が正当であると判定し、前記領域情報が前記読出可能情報の読出しができなかったことを示す情報を含む場合に、前記ＩＣ媒体が正当ではないと判定する、
請求項１記載の情報処理装置。
【請求項６】
前記領域情報は、前記ＩＣ媒体との相互認証無しに読出し可能な前記ＩＣ媒体の領域に記録されている複数の読出可能情報を含み、
前記判定手段は、前記取得手段により取得された前記領域情報に含まれる前記複数の読出可能情報同士に整合性がある場合に、前記ＩＣ媒体が正当であると判定し、前記領域情報に含まれる前記複数の読出可能情報同士に整合性がない場合に、前記ＩＣ媒体が正当でないと判定する請求項１記載の情報処理装置。
【請求項７】
ＩＣ媒体と、情報処理装置と、を含み、
前記情報処理装置は、
特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれか含む領域情報を、前記ＩＣ媒体から取得する取得手段と、
前記取得手段により取得された前記領域情報が、前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれかを含むかに基づいて、前記ＩＣ媒体が正当であるか否かを判定する判定手段と、
を有するシステム。
【請求項８】
情報処理装置が実行する情報処理方法であって、
特定のサービスがＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれか含む領域情報を、前記ＩＣ媒体から取得する取得ステップと、
前記取得ステップで取得された前記領域情報が、前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれかを含むかに基づいて、前記ＩＣ媒体が正当であるか否かを判定する判定ステップと、
を含む情報処理方法。
【請求項９】
ＩＣ媒体と、情報処理装置と、を含むシステムが実行する情報処理方法であって、
特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれか含む領域情報を、前記ＩＣ媒体から取得する取得ステップと、
前記取得ステップで取得された前記領域情報が、前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれを含むかに基づいて、前記ＩＣ媒体が正当であるか否かを判定する判定ステップと、
を含む情報処理方法。
【請求項１０】
コンピュータを、請求項１乃至６何れか１項記載の情報処理装置の各手段として、機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、読書装置、システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
ＩＣカード等のＩＣ媒体を認証する方法には、ＩＣ媒体の製造識別情報を利用する方法がある。製造識別情報とは、ＩＣ媒体毎に製造の際に、ＩＣ媒体毎に一意となるように決定される識別情報である。ＩＣ媒体の認証を行う読書装置は、ＩＣ媒体から製造識別情報を、暗号化されていない平文の情報として簡単に取得することができる。そのため、ＩＣ媒体の製造識別情報を利用する認証方法は、簡単に利用できるという利点があるが、製造識別情報の偽装も容易であるため、セキュリティに問題があった。
この問題に対しての解決方法として、読書装置とＩＣ媒体間で、相互認証により、暗号化通信でやり取りされるサービス識別情報を、利用する方法がある。また、特許文献１には、製造識別情報を暗号化しＩＣカードに書込むことで、正当性を確認する方法が開示されている。また、特許文献２には、同様に署名検証データをＩＣカードに書き込む方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１５５５２５号公報
【特許文献２】特開２００４−０４６７５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来技術では、認証に利用される情報を暗号化・復号化するための暗号鍵や署名鍵を読書装置に保管する必要があるため、鍵の流出防止対策が必要となり、読書装置が高価になる。また、鍵の発行管理や鍵の更新等の処理も必要となり、システム全体としても高価となる。また、既存の発行済みのＩＣ媒体に製造識別情報を暗号化しＩＣカードに書込み、認証する場合、認証に必要な情報をＩＣ媒体に追記する必要があり、ＩＣ媒体に対して書き込み可能な領域を割り当てる必要もあり、ＩＣ媒体の発行手続きが煩雑になる。
そこで、本発明は、より安価で、より容易に、よりセキュアなＩＣ媒体の認証を行うことを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明の情報処理装置は、特定のサービスがＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれか含む領域情報を、前記ＩＣ媒体から取得する取得手段と、前記取得手段により取得された前記領域情報が、前記特定のサービスが前記ＩＣ媒体に記録されていることを示す情報と、前記特定のサービスが前記ＩＣ媒体に記録されていないことを示す情報と、のいずれを含むかに基づいて、前記ＩＣ媒体が正当であるか否かを判定する判定手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、より安価で、より容易に、よりセキュアなＩＣ媒体の認証を行うことができる。
【図面の簡単な説明】
【０００７】
【図１】図１は、認証システムのシステム構成の一例を示す図である。
【図２】図２は、読書装置のハードウェア構成の一例を示す図である。
【図３】図３は、認証システムの処理の一例を示すシーケンス図である。
【図４】図４は、読書装置の処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
＜実施形態１＞
図１は、認証システムのシステム構成の一例を示す図である。
認証システムは、ＩＣ媒体１００、読書装置１０１、管理サーバ１０２を含む。読書装置１０１と管理サーバ１０２とは、ネットワーク１０３を介して相互に接続されている。
ＩＣ媒体１００は、演算装置、読み書き可能なメモリを含むＩＣカード等の媒体である。ＩＣ媒体１００には、例えば、ＩＣカード、携帯電話、スマートフォン、スマートウォッチがある。読書装置１０１は、ＩＣ媒体１００と無線で通信し、情報のやり取りを行い、ＩＣ媒体１００の認証を行い、認証した後で、ＩＣ媒体と管理サーバ１０２との間の情報のやり取りを仲介する情報処理装置である。管理サーバ１０２は、読書装置１０１を介して、ＩＣ媒体の製造識別情報の照合を行う情報処理装置である。本実施形態では、管理サーバ１０２は、単一のコンピュータ等の情報処理装置であるとするが、複数の情報処理装置を含む情報処理システムであってもよい。ネットワーク１０３は、ＬＡＮ、ＷＡＮ、インターネット等のネットワークである。
本実施形態では、読書装置１０１は、ＩＣ媒体１００から製造識別情報を取得する。そして、読書装置１０１は、ＩＣ媒体１００に対して、取得した製造識別情報を伴って、設定された情報の取得要求を送信する。読書装置１０１は、送信した取得要求に応じたＩＣ媒体１００からの応答信号に基づいて、ＩＣ媒体１００が正当なものであるかどうかを判定する。読書装置１０１は、ＩＣ媒体１００が正当なものであると判定した場合、ＩＣ媒体１００から取得した製造識別情報を正当なものとして決定する。
【０００９】
図２（ａ）は、読書装置１０１のハードウェア構成の一例を示す図である。
読書装置１０１は、ＣＰＵ２０１、主記憶装置２０２、補助記憶装置２０３、ＩＣ媒体通信部２０４、ネットワークＩ／Ｆ２０５を含む。ＣＰＵ２０１、主記憶装置２０２、補助記憶装置２０３、ＩＣ媒体通信部２０４、ネットワークＩ／Ｆ２０５は、システムバス２０６を介して、相互に接続されている。
ＣＰＵ２０１は、読書装置１０１の処理を制御する中央演算装置である。主記憶装置２０２は、ＣＰＵ２０１のワークエリアやデータの一時記録領域として機能する記憶装置である。補助記憶装置２０３は、本実施形態の処理をＣＰＵ２０１に実行させるためのプログラム、各種設定ファイル、各種設定情報、各種閾値情報、各種プログラム等を記録する。
ＩＣ媒体通信部２０４は、ＩＣ媒体１００との無線通信に利用される通信部であり、アンテナ等で構成される。ＣＰＵ２０１は、ＩＣ媒体通信部２０４を介して、ＩＣ媒体１００からの情報を受信したり、ＩＣ媒体１００に対して情報を送信したりする。ネットワークＩ／Ｆ２０５は、管理サーバ１０２等の外部の装置やシステムとのネットワーク１０３を介した接続に利用されるインターフェースである。
ＣＰＵ２０１が、補助記憶装置２０３等に記録されたプログラムに基づき処理を実行することで、読書装置１０１の機能、図３のシーケンス図における読書装置１０１の処理及び図４で後述するフローチャートの処理等が実現される。
【００１０】
管理サーバ１０２が単一の情報処理装置である場合、管理サーバ１０２のハードウェア構成は、図２（ａ）と同様のものであるとする。その場合、管理サーバ１０２のＣＰＵが、管理サーバ１０２の補助記憶装置等に記録されたプログラムに基づき処理を実行することで、管理サーバ１０２の機能、及び処理が実現される。
また、管理サーバ１０２が複数の情報処理装置を含む情報処理システムである場合、管理サーバ１０２に含まれる情報処理装置それぞれのハードウェア構成は、図２（ａ）と同様のものであるとする。その場合、管理サーバ１０２に含まれる情報処理装置それぞれのＣＰＵが、管理サーバ１０２に含まれるそれぞれの情報処理装置の補助記憶装置等に記録されたプログラムに基づき、連携して処理を実行することで、管理サーバ１０２の機能、及び図３にシーケンス図における管理サーバ１０２の処理等が実現される。
【００１１】
図２（ｂ）は、ＩＣ媒体１００のハードウェア構成の一例を示す図である。
ＩＣ媒体１００は、ＣＰＵ２１１、メモリ２１２、通信部２１３を含む。ＣＰＵ２１１、メモリ２１２、通信部２１３は、システムバス２１４を介して相互に接続されている。
ＣＰＵ２１１は、ＩＣ媒体１００の処理を制御する中央演算装置である。メモリ２１２は、製造識別情報、各種サービスの情報、各種設定情報、各種プログラム等が記録され、ＩＣ媒体１００の記録領域として機能する記憶装置である。サービスとは、ＩＣ媒体の内部のメモリに記録されているデータのまとまりであり、コンピュータにおけるファイルに相当する。通信部２１３は、ＩＣ媒体通信部２０４との無線通信に利用される通信部であり、アンテナ等で構成される。
ＣＰＵ２１１が、メモリ２１２等に記録されたプログラムに基づき処理を実行することで、ＩＣ媒体１００の機能、及び図３のシーケンス図におけるＩＣ媒体１００の処理等が実現される。
【００１２】
図３は、認証システムの処理の一例を示すシーケンス図である。図３を用いて、イベント会場への入場管理を例に、本実施形態の認証システムの処理の一例について説明する。
ＩＣ媒体１００のユーザは、予めイベントの参加権利を購入している。それにより、管理サーバ１０２は、予めＩＣ媒体１００の製造識別情報を、イベントの参加権利者の情報として保持している。認証システムは、ＩＣ媒体１００の製造識別情報を、イベントの電子チケットとして扱うことで、イベント会場の入場管理を行うこととなる。イベント会場の入り口には、読書装置１０１と読書装置１０１からの指示により開閉が可能な電動扉が設置されている。
ＣＳ３０１において、ＣＰＵ２０１は、媒体捕捉コマンドを送信する。媒体捕捉コマンドとは、通信可能な範囲に存在するＩＣ媒体に対して製造識別情報を要求するためのコマンドである。ＩＣ媒体１００のユーザがＩＣ媒体１００をＩＣ媒体通信部２０４にかざすことで、ＣＰＵ２１１は、読書装置１０１から送信された媒体捕捉コマンドを受信する。
ＣＳ３０２において、ＣＰＵ２１１は、読書装置１０１に対して、ＩＣ媒体１００の製造識別情報を平文（暗号化されていない情報）として送信する。ＣＰＵ２０１は、ＩＣ媒体１００から送信されたＩＣ媒体１００の製造識別情報を受信する。
【００１３】
ＣＳ３０３において、ＣＰＵ２０１は、ＣＳ３０２で受信したＩＣ媒体１００の製造識別情報と、設定されたサービスがＩＣ媒体１００内に存在するか否かを示す情報の要求信号と、をＩＣ媒体１００に送信する。ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の識別情報と一致するかどうか判定する。ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の識別情報と一致すると判定した場合、読書装置１０１から受信した要求信号に応じたサービスがメモリ２１２に記録されているか否かを判定する。
ＣＳ３０４において、ＣＰＵ２１１は、ＣＳ３０３で読書装置１０１から受信した要求信号に応じた設定されたサービスがメモリ２１２に記録されていると判定した場合、以下の処理を行う。即ち、ＣＰＵ２１１は、設定されたサービスがＩＣ媒体１００内に存在することを示す情報を、ＣＳ３０３で受信した要求信号に対する応答信号として読書装置１０１に送信する。また、ＣＰＵ２１１は、ＣＳ３０３で読書装置１０１から受信した要求信号に応じた設定されたサービスがメモリ２１２に記録されていないと判定した場合、以下の処理を行う。即ち、ＣＰＵ２１１は、設定されたサービスがＩＣ媒体１００内に存在しない旨の情報を、ＣＳ３０３で受信した要求信号に対する応答信号として、読書装置１０１に送信する。ＣＰＵ２０１は、ＩＣ媒体１００から応答信号を受信する。
ＣＳ３０５において、ＣＰＵ２０１は、ＣＳ３０４で受信した応答信号に基づいて、ＩＣ媒体１００が正当であるか否かを判定する。ＣＰＵ２０１は、受信した応答信号がＩＣ媒体１００内に設定されたサービスが存在することを示す情報である場合、ＩＣ媒体１００を正当であると判定する。ＣＰＵ２０１は、受信した応答信号がＩＣ媒体１００内に設定されたサービスが存在しないことを示す情報である場合、ＩＣ媒体１００を正当でないと判定する。ＣＰＵ２０１は、ＩＣ媒体１００を正当であると判定した場合、ＣＳ３０１で受信したＩＣ媒体１００の製造識別情報を正当なものであると決定する。
【００１４】
ＣＳ３０６において、ＣＰＵ２０１は、ＣＳ３０５で正当なものであると決定したＩＣ媒体１００の製造識別情報を管理サーバ１０２に送信する。
ＣＳ３０７において、管理サーバ１０２は、予め記録していたイベントの参加権利の購入者のＩＣ媒体の製造識別情報の一覧情報から、ＣＳ３０６で送信されたＩＣ媒体１００の製造識別情報を照合する。管理サーバ１０２は、ＩＣ媒体１００の製造識別情報を照合できた場合、ＩＣ媒体１００のユーザがイベントの参加権利を購入していると判定する。管理サーバ１０２は、ＩＣ媒体１００の製造識別情報を照合できなかった場合、ＩＣ媒体１００のユーザがイベントの参加権利を購入していないと判定する。
ＣＳ３０８において、管理サーバ１０２は、ＣＳ３０７の処理の結果を示す情報を読書装置１０１に送信する。
ＣＳ３０９において、ＣＰＵ２０１は、ＣＳ３０８で送信された情報が、ＩＣ媒体１００の製造識別情報が、イベントの参加権利を購入しているユーザのＩＣ媒体の識別情報であることを示す情報である場合、以下の処理を行う。即ち、ＣＰＵ２０１は、読書装置１０１に接続されている電動扉を開き、ＩＣ媒体１００のユーザを、イベント会場に入場させる。
図３の例では、本実施形態の認証システムがイベント会場への入場管理に利用される例を説明した。しかし、本実施形態の認証システムは、劇場への入場管理、スポーツ観戦における入場管理、学校での教室への入退室管理等にも利用することができる。
【００１５】
図４は、本実施形態における読書装置１０１の処理の一例を示すフローチャートである。
Ｓ４０１において、ＣＰＵ２０１は、ＩＣ媒体１００の捕捉処理を行う。より具体的には、ＣＰＵ２０１は、以下の処理を行う。ＣＰＵ２０１は、ＩＣ媒体通信部２０４を介して、媒体捕捉コマンドをＩＣ媒体１００に送信する。ＩＣ媒体１００が読書装置１０１と通信可能な範囲に存在する場合、ＣＰＵ２１１は、通信部２１３を介して、送信された媒体捕捉コマンドを受信し、受信した媒体捕捉コマンドに対する応答としてＩＣ媒体１００の製造識別情報を読書装置１０１に送信する。そして、ＣＰＵ２０１は、ＩＣ媒体１００から、ＩＣ媒体１００の製造識別情報を受信する。
例えば、補助記憶装置２０３とメモリ２１２とは、媒体捕捉コマンド等の読書装置１０１とＩＣ媒体１００とがやり取りする可能性のあるコマンドの情報を記録する。ＣＰＵ２０１は、例えば、媒体捕捉コマンドの情報を、補助記憶装置２０３から取得し、取得した媒体捕捉コマンドをＩＣ媒体１００に送信する。そして、ＣＰＵ２１１は、受信した媒体捕捉コマンドを、メモリ２１２に記録されているコマンドの情報と比較することで、受信したコマンドが、媒体捕捉コマンドであることを把握する。
また、ＣＰＵ２１１は、受信した媒体捕捉コマンドに対する応答としてＩＣ媒体１００の製造識別情報以外にも、ＩＣ媒体１００に関する情報等を読書装置１０１に送信することとしてもよい。そうすることで、ＣＰＵ２０１は、情報のやり取りの相手がどのようなＩＣ媒体であるかを把握することができる。
従来のＩＣカード等のＩＣ媒体では、識別情報の認証が成功した場合、ＩＣ媒体は、更に、ＩＣ媒体の発行処理毎に発行者により一意に決定される発行識別情報を、暗号化して、読書装置に送信する。その後、ＩＣ媒体と読書装置とは、発行識別情報に基づいて、情報のやり取りを行うことになる。
【００１６】
Ｓ４０２において、ＣＰＵ２０１は、Ｓ４０１でＩＣ媒体１００を捕捉できたか否かを判定する。ＣＰＵ２０１は、Ｓ４０１で送信した媒体捕捉コマンドの応答として、ＩＣ媒体１００からＩＣ媒体１００の製造識別情報を受信した場合、Ｓ４０１でＩＣ媒体１００を捕捉できたと判定し、Ｓ４０３の処理に進む。
また、ＣＰＵ２０１は、Ｓ４０１で送信した媒体捕捉コマンドの応答として、ＩＣ媒体１００からＩＣ媒体１００の製造識別情報を受信していない場合、Ｓ４０１でＩＣ媒体１００を捕捉できていないと判定し、Ｓ４０１の処理に進む。
【００１７】
Ｓ４０３において、ＣＰＵ２０１は、ＩＣ媒体１００の領域情報の要求信号を、ＩＣ媒体１００に送信し、ＩＣ媒体１００から応答信号として、ＩＣ媒体１００の領域情報を取得する。ＩＣ媒体の領域情報とは、ＩＣ媒体内のサービスの情報や、ＩＣ媒体内のサービスについての属性情報等のＩＣ媒体内に記録されているデータに関する情報のことである。サービスの属性情報とは、サービスに関する特性を示す情報であり、例えば、メモリ２１２内におけるＩＣ媒体１００内におけるサービスの有無に関する情報、サービスの鍵情報等がある。
本実施形態では、ＣＰＵ２０１は、ＩＣ媒体１００の領域情報の要求信号として、設定されたサービスがＩＣ媒体１００に記録されているか否かを示す情報の要求信号を、ＩＣ媒体１００に送信する。ＣＰＵ２０１は、Ｓ４０１でＩＣ媒体１００から受信した製造識別情報と併せて、設定されたサービスがＩＣ媒体１００に記録されているか否かを示す情報の要求信号を、ＩＣ媒体１００に送信する。例えば、ＣＰＵ２０１は、設定されたサービスの情報を含む要求信号をＩＣ媒体に送信する。これにより、ＣＰＵ２１１は、どのサービスの有無についての情報が要求されているのか把握することができる。
【００１８】
ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の製造識別情報と一致し、読書装置１０１から受信した要求信号に応じた情報がＩＣ媒体１００内に存在する場合、要求された情報を領域情報として読書装置１０１に送信する。また、ＣＰＵ２１１は、要求信号に応じた情報がＩＣ媒体１００内に存在しない場合、要求された情報がＩＣ媒体１００内に存在しない旨を示す情報を領域情報として読書装置１０１に送信する。ＣＰＵ２１１は、要求された情報がＩＣ媒体１００内に存在しない旨を示す情報として、例えば、予め設定されたビット列の情報を読書装置に送信する。また、ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の製造識別情報と一致しない場合、製造識別情報が一致しない旨を示す情報を、読書装置１０１に送信する。
本実施形態では、ＣＰＵ２１１は、以下の処理を行う。即ち、ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の製造識別情報と一致するか否かを判定する。そして、ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の製造識別情報と一致すると判定すると、読書装置１０１から受信した要求信号が示す設定されたサービスを、メモリ２１２内に記録しているサービスの中から検索する。ＣＰＵ２１１は、設定されたサービスをメモリ２１２内に記録しているサービスの中から検索できた場合、設定されたサービスがＩＣ媒体１００内に存在することを示す情報を、領域情報として、検索できたサービスの情報を読書装置１０１に送信する。例えば、ＣＰＵ２１１は、設定されたサービスがＩＣ媒体１００内に存在することを示す情報として、検索できたサービスの識別情報を読書装置に送信する。また、ＣＰＵ２１１は、設定されたサービスをメモリ２１２内に記録しているサービスの中から検索できなかった場合、設定されたサービスがＩＣ媒体１００内に存在しないことを示す情報を領域情報として、読書装置１０１に送信する。ＣＰＵ２０１は、ＩＣ媒体１００から領域情報を取得する。
【００１９】
Ｓ４０４において、ＣＰＵ２０１は、Ｓ４０３でＩＣ媒体１００から取得した領域情報に基づいて、ＩＣ媒体１００が正当であるか否かを判定する。本実施形態では、Ｓ４０３で取得された領域情報は、設定されたサービスがＩＣ媒体１００内に存在するか否かを示すサービスの属性情報である。ＩＣ媒体が正当であるとは、ＩＣ媒体内の情報が不正に改竄されていないことを示す。
例えば、ＩＣ媒体１００が正当でないＩＣ媒体である場合、ＩＣ媒体１００は、正当なＩＣ媒体ならば内部のメモリに記録しているはずの特定のサービスを、メモリ２１２に記録していないと考えられる。そのため、ＣＰＵ２０１は、Ｓ４０３で、ＩＣ媒体１００が正当でないＩＣ媒体である場合、領域情報として、設定されたサービスがＩＣ媒体１００内に存在しないことを示す情報をＩＣ媒体１００から取得することになる。逆に、ＣＰＵ２０１は、Ｓ４０３で、ＩＣ媒体１００が正当なＩＣ媒体である場合、領域情報として、設定されたサービスがＩＣ媒体１００内に存在することを示す情報をＩＣ媒体１００から取得することになる。
ＣＰＵ２０１は、Ｓ４０３で取得した領域情報が、設定されたサービスがＩＣ媒体１００内に存在することを示す情報である場合、ＩＣ媒体１００を正当なものと判定し、Ｓ４０５の処理に進む。ＣＰＵ２０１は、Ｓ４０３で取得した領域情報が、設定されたサービスがＩＣ媒体１００内に存在しないことを示す情報である場合、ＩＣ媒体１００を正当なものではないと判定し、Ｓ４０６の処理に進む。
【００２０】
Ｓ４０５において、ＣＰＵ２０１は、ＩＣ媒体１００が正当なものであるとして、ＩＣ媒体１００のＳ４０１で取得したＩＣ媒体１００の製造識別情報が正当なものであると決定する。ＩＣ媒体の製造識別情報が正当であるとは、その製造識別情報が改竄されていないことを示す。そして、ＣＰＵ２０１は、その後に、ＩＣ媒体１００、管理サーバ１０２等と連携し、目的に合わせた処理を行うことになる。
Ｓ４０６において、ＣＰＵ２０１は、ＩＣ媒体１００が正当なものでないとして、Ｓ４０１で取得したＩＣ媒体１００の製造識別情報が正当でないものと決定し、ＩＣ媒体１００との通信を、中止する。
【００２１】
本実施形態では、ＣＰＵ２０１は、Ｓ４０３で、ＩＣ媒体１００から領域情報として、ＩＣ媒体１００内に設定されたサービスが存在するか否かを示す情報を取得する。そして、Ｓ４０４で、ＣＰＵ２０１は、ＩＣ媒体１００から取得した領域情報が設定されたサービスがＩＣ媒体１００内に存在することを示す情報である場合、ＩＣ媒体１００を正当であると判定する。また、ＣＰＵ２０１は、ＩＣ媒体１００から取得した領域情報が設定されたサービスがＩＣ媒体１００内に存在しないことを示す情報である場合、ＩＣ媒体１００を正当でないと判定することとした。
しかし、ＣＰＵ２０１は、Ｓ４０３、Ｓ４０４で、以下のような処理を行うこととしてもよい。即ち、Ｓ４０３で、ＣＰＵ２０１は、領域情報の要求信号として、設定されたサービスがＩＣ媒体１００内に存在するか否かを示す情報と設定されたサービスの鍵情報との要求信号を、ＩＣ媒体１００に送信する。ＣＰＵ２１１は、読書装置１０１から要求信号を受信すると、設定されたサービスがメモリ２１２内に記録されているか否かを判定する。そして、ＣＰＵ２１１は、設定されたサービスがメモリ２１２内に記録されていると判定した場合、設定されたサービスがＩＣ媒体１００内に存在する旨の情報とそのサービスの鍵情報とを、領域情報として、読書装置１０１に送信する。それにより、ＣＰＵ２０１は、領域情報として、設定されたサービスが存在する旨の情報とそのサービスの鍵情報とを取得する。また、ＣＰＵ２１１は、設定されたサービスがメモリ２１２内に記録されていないと判定した場合、設定されたサービスがＩＣ媒体１００内に存在しない旨の情報を、領域情報として、読書装置１０１に送信する。それにより、ＣＰＵ２０１は、領域情報として、設定されたサービスが存在しない旨の情報を取得する。
【００２２】
ＣＰＵ２０１は、設定されたサービスがＩＣ媒体１００内に存在する旨の情報を取得した場合、Ｓ４０４で以下の処理を行う。ＣＰＵ２０１は、Ｓ４０３で取得した設定されたサービスの鍵情報に基づいて、ＩＣ媒体１００が正当であるか否かを判定する。
ＣＰＵ２０１は、Ｓ４０３で取得したサービスの鍵情報が設定されたバージョンの鍵情報である場合、ＩＣ媒体１００が正当であると判定し、Ｓ４０５の処理に進む。ＣＰＵ２０１は、例えば、Ｓ４０３で取得したサービスの鍵情報の特定の位置のビット情報を取得することで、鍵のバージョン情報を取得する。設定されたバージョンの情報は、設定ファイル等の形式で、補助記憶装置２０３等に記録されている。ＣＰＵ２０１は、読書装置１０１の入力部を介したユーザの操作に基づいて、設定ファイルの背ってされた鍵のバージョンの情報を更新することができる。ＣＰＵ２０１は、Ｓ４０３で取得したサービスの鍵情報が設定されたバージョンの鍵情報でない場合、ＩＣ媒体１００が正当でないと判定し、Ｓ４０６の処理に進む。また、ＣＰＵ２０１は、Ｓ４０３で設定されたサービス存在しない旨の情報を取得した場合も、ＩＣ媒体１００が正当でないと判定し、Ｓ４０６の処理に進む。
以上の処理により、例えば、正当でないＩＣ媒体が正当なＩＣ媒体が記録しているはずのサービスを保持している場合でも、ＣＰＵ２０１は、サービスの鍵のバージョンが設定されているものと異なれば、ＩＣ媒体の製造識別情報を正当でないと判定する。それにより、ＣＰＵ２０１は、正当でないＩＣ媒体を誤って認証する可能性を軽減できる。
【００２３】
また、本実施形態では、ＣＰＵ２０１は、Ｓ４０３で、ＩＣ媒体１００に対して、領域情報として、正当なＩＣ媒体ならば記録しているはずのサービスがＩＣ媒体内に存在するか否かについての情報を要求することとした。しかし、例えば、不正なＩＣ媒体が記録している可能性のあるサービスのうち、正当なＩＣ媒体が記録しえないサービスが特定できる場合、ＣＰＵ２０１は、Ｓ４０３、Ｓ４０４で以下のような処理を行うこととしてもよい。
即ち、Ｓ４０３で、ＣＰＵ２０１は、領域情報として、正当でないＩＣ媒体が記録している可能性があり正当なＩＣ媒体が記録しえないサービスである設定されたサービスがＩＣ媒体１００内に存在するか否かを示す情報の要求信号を、ＩＣ媒体１００に送信する。ＣＰＵ２１１は、読書装置１０１から要求信号を受信すると、設定されたサービスがメモリ２１２内に記録されているか否か判定する。ＣＰＵ２１１は、読書装置１０１から受信した要求信号が示す設定されたサービスを、メモリ２１２に記録されたサービスの中から検索し、検索できた場合、設定されたサービスがＩＣ媒体１００内に存在すると判定する。また、ＣＰＵ２１１は、読書装置１０１から受信した要求信号が示す設定されたサービスを、メモリ２１２に記録されたサービスの中から検索し、検索できなかった場合、設定されたサービスがＩＣ媒体１００内に存在しないと判定する。
【００２４】
そして、ＣＰＵ２１１は、設定されたサービスがメモリ２１２内に記録されていると判定した場合、領域情報として、設定されたサービスがＩＣ媒体１００内に存在する旨の情報を、読書装置１０１に送信する。それにより、ＣＰＵ２０１は、領域情報として、設定されたサービスがＩＣ媒体１００内に存在する旨の情報を取得する。また、ＣＰＵ２１１は、設定されたサービスがメモリ２１２内に記録されていないと判定した場合、領域情報として、設定されたサービスがＩＣ媒体１００内に存在しない旨の情報を、読書装置１０１に送信する。それにより、ＣＰＵ２０１は、領域情報として、設定されたサービスがＩＣ媒体１００内に存在しない旨の情報を取得する。
Ｓ４０３で、ＣＰＵ２０１は、領域情報として、設定されたサービスが存在する旨の情報を取得した場合、Ｓ４０４で以下の処理を行う。即ち、ＣＰＵ２０１は、ＩＣ媒体１００が正当でないと判定し、Ｓ４０６の処理に進む。また、Ｓ４０３で、ＣＰＵ２０１は、領域情報として、設定されたサービスが存在しない旨の情報を取得した場合、Ｓ４０４で以下の処理を行う。即ち、ＣＰＵ２０１は、ＩＣ媒体１００が正当であると判定し、Ｓ４０５の処理に進む。
以上の処理により、ＣＰＵ２０１は、例えば、特定のサービスを記録している正当でないＩＣ媒体について、誤って認証する可能性を軽減できる。
【００２５】
以上、本実施形態の処理により、認証システムは、領域情報の要求に対してＩＣ媒体１００から取得した領域情報に基づいて、ＩＣ媒体１００の正当性を判定し、ＩＣ媒体１００が正当であると判定した場合、ＩＣ媒体の製造識別情報を正当なものとして決定する。これにより、認証システムは、正当でないＩＣ媒体の製造識別情報を誤って正当なものとして取り扱う可能性を軽減し、セキュアなＩＣ媒体の認証処理を実現できる。また、認証システムは、ＩＣ媒体１００の認証に暗号化した情報を利用しないため、暗号化に利用される鍵を記録、管理することができる高価な読書装置の導入の必要がないため、費用を削減できる。また、認証システムは、既存のＩＣ媒体に対して何らかの書き込み可能領域の割り当て処理等を行う必要もないため、導入の手間を軽減でき、交通系システムで利用されるＩＣ媒体のように新たな領域を割り当てできないＩＣ媒体にも対応できる。そのため、認証システムは、より安価で、より容易に、よりセキュアなＩＣ媒体の認証を行うことができる。
例えば、イベント会場等の入退場管理に、従来の暗号化した情報を利用する認証システムを導入する場合、導入者は、セキュアな認証処理を実現できるが、高価な読書装置の設置が必要なため、費用がかさむ。また、認証システムの導入者は、観客の端末に対して書き込み可能領域の割り当て等を行う手間をかける必要もある。
対して、イベント会場等の入退場管理に、本実施形態の認証システムを導入する場合、導入者は、セキュアな認証処理を実現できるうえに、安価な読書装置を設置すればよいため、費用がかさまない。また、導入者は、観客の端末に対して書き込み可能領域の割り当て等を行う手間をかける必要もないこととなる。
【００２６】
＜実施形態２＞
実施形態１では、読書装置１０１は、ＩＣ媒体１００から、設定されたサービスがＩＣ媒体１００内に存在するか否かを示す情報を、領域情報として取得することとした。しかし、本実施形態では、読書装置１０１は、ＩＣ媒体１００から、ＩＣ媒体の内部メモリ内の相互認証無しに読取可能な領域に記録されているサービスを、領域情報として取得することとする。ＩＣ媒体の内部メモリ内の相互認証無しに読取可能な領域に記録されているサービスは、読出可能情報の一例である。
本実施形態の処理の主体は、実施形態１と同様に認証システムであるとする。また、本実施形態の認証システムのシステム構成、認証システムのシステム構成要素のハードウェア構成及び機能は、実施形態１と同様であるとする。
以下では、本実施形態の処理のうち、実施形態１と異なる部分について説明する。
本実施形態の読書装置１０１の処理は、実施形態１と同様に図４のフローチャートに示される処理であるが、Ｓ４０３、Ｓ４０４の処理が実施形態１の場合と異なっている。
【００２７】
Ｓ４０３において、ＣＰＵ２０１は、領域情報の要求信号として、設定されたサービスの要求信号をＩＣ媒体１００に送信する。ＣＰＵ２０１は、Ｓ４０１でＩＣ媒体１００から受信した製造識別情報と併せて、設定されたサービスの要求信号を、ＩＣ媒体１００に送信する。ＣＰＵ２０１は、例えば、設定されたサービスの識別情報を含む要求信号をＩＣ媒体１００に送信することで、設定されたサービスをＩＣ媒体１００に要求する。
ＩＣ媒体１００のメモリ２１２内のサービスには、相互認証後に取得できる鍵を用いて読取可能になるものと、相互認証の必要なく鍵がなくても読取可能なものがある。ＣＰＵ２０１は、予め設定された相互認証の必要なく読取可能なサービスの要求信号をＩＣ媒体１００に送信することになる。
サービスと、アクセス情報との対応関係を示すデータは、補助記憶装置２０３等に、設定ファイル等の形式で、記録されているものとする。ＣＰＵ２０１は、読書装置１０１の入力部を介したユーザの操作に基づいて、設定ファイルの内容を更新することができる。ＣＰＵ２０１は、例えば、補助記憶装置２０３等に記録されたサービスとアクセス情報との対応関係を示すデータに基づいて、読み込みのアクセスが可能なサービスのうち、アクセスに相互認証を要しないサービスを決定するものとする。そして、Ｓ４０３で、ＣＰＵ２０１は、決定したサービスの要求信号をＩＣ媒体１００に送信するものとしてもよい。また、Ｓ４０３で、ＣＰＵ２０１は、読書装置１０１の入力部を介したユーザの操作に基づいて決定したサービスの要求信号をＩＣ媒体１００に送信するものとしてもよい。
【００２８】
ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の製造識別情報と一致する場合、設定されたサービスがメモリ２１２に記録されているか否かを判定する。ＣＰＵ２１１は、メモリ２１２に記録されているサービスの中からＣＰＵ２１１は、設定されたサービスがあるかどうか照合することで、設定されたサービスがメモリ２１２に記録されているか否かを判定する。ＣＰＵ２１１は、設定されたサービスがメモリ２１２に記録されていると判定した場合、更に、メモリ２１２に記録されていると判定したサービスが相互認証なしに読み込みアクセス可能なサービスであるか否かを判定する。ＣＰＵ２１１は、メモリ２１２に記録されていると判定したサービスが相互認証なしに読取可能なサービスであると判定した場合、領域情報として、設定されたサービスを、読書装置１０１に送信する。ＣＰＵ２０１は、ＩＣ媒体１００から、領域情報として設定されたサービスを取得する。ＣＰＵ２１１は、メモリ２１２に記録されていると判定したサービスが相互認証なしに読み込みアクセス可能なサービスではないと判定した場合、領域情報として、設定されたサービスが読み取りできないことを示す情報を読書装置１０１に送信する。ＣＰＵ２０１は、ＩＣ媒体１００から、領域情報として設定されたサービスが読み取りできないことを示す情報を取得する。ＣＰＵ２１１は、設定されたサービスがメモリ２１２に記録されていないと判定した場合、領域情報として、設定されたサービスが存在しない旨を示す情報を、読書装置１０１に送信する。ＣＰＵ２０１は、ＩＣ媒体１００から、領域情報として設定されたサービスが存在しない旨を示す情報を取得する。
また、ＣＰＵ２１１は、読書装置１０１から受信した製造識別情報がＩＣ媒体１００の製造識別情報と一致しない場合、領域情報として、製造識別情報が一致しない旨を示す情報を、読書装置１０１に送信する。ＣＰＵ２０１は、ＩＣ媒体１００から、領域情報として製造識別情報が一致しない旨を示す情報を受信する。
【００２９】
Ｓ４０４において、ＣＰＵ２０１は、Ｓ４０３でＩＣ媒体１００から取得した領域情報に基づいて、ＩＣ媒体１００が正当であるか否かを判定する。本実施形態では、Ｓ４０３で取得される領域情報は、設定されたサービス、又は設定されたサービスがメモリ２１２内に存在しない旨の情報である。
実施形態１で上述したように、ＩＣ媒体１００が正当でないＩＣ媒体である場合、ＩＣ媒体１００は、正当なＩＣ媒体ならば内部のメモリに記録しているはずの特定のサービスを、メモリ２１２に記録していないと考えられる。そのため、ＣＰＵ２０１は、Ｓ４０３で、ＩＣ媒体１００が正当でないＩＣ媒体である場合、設定されたサービスがＩＣ媒体１００内に存在しないことを示す情報を取得することになる。逆に、ＣＰＵ２０１は、Ｓ４０３で、ＩＣ媒体１００が正当なＩＣ媒体である場合、設定されたサービスを取得することになる。
ＣＰＵ２０１は、Ｓ４０３で取得した領域情報が、設定されたサービスの情報である場合、ＩＣ媒体１００を正当なものと判定し、Ｓ４０５の処理に進む。ＣＰＵ２０１は、Ｓ４０３で取得した領域情報が、設定されたサービスがＩＣ媒体１００内に存在しないことを示す情報である場合、ＩＣ媒体１００を正当なものではないと判定し、Ｓ４０６の処理に進む。
以上、本実施形態の処理により、実施形態１と同様に、認証システムは、より安価で、より容易に、よりセキュアなＩＣ媒体の認証を行うことができる。
【００３０】
また、ＣＰＵ２０１は、Ｓ４０３で、領域情報として設定されたサービスの情報そのものを取得することができるので、次のような処理を行うこととしてもよい。即ち、ＣＰＵ２０１は、Ｓ４０３で、領域情報として互いに関連のある２以上の設定されたサービスの要求信号を、ＩＣ媒体１００に送信し、ＩＣ媒体１００から互いに関連のある２以上の設定されたサービスを取得することとしてもよい。そして、ＣＰＵ２０１は、Ｓ４０４で、ＩＣ媒体１００から領域情報として取得した２以上のサービス同士に整合性があるか否かを判定する。ＣＰＵ２０１は、ＩＣ媒体１００から送信された２以上のサービス同士に整合性があると判定した場合、ＩＣ媒体１００が正当であると判定し、Ｓ４０５の処理に進む。また、ＣＰＵ２０１は、ＩＣ媒体１００から送信された関連のある２以上のサービス同士に整合性がないと判定した場合、ＩＣ媒体１００が正当でないと判定し、Ｓ４０６の処理に進む。
例えば、ＩＣ媒体１００がプリペイドカードとして利用される場合、ＣＰＵ２０１は、Ｓ４０３で、残高情報と利用履歴の最終金額情報との要求信号をＩＣ媒体１００に送信する。ＩＣ媒体１００は、領域情報として、メモリ２１２内に記録されている残高情報と、利用履歴の最終金額情報と、を読書装置１０１に送信する。それにより、ＣＰＵ２０１は、領域情報として、残高情報と利用履歴の最終金額情報とを取得する。
【００３１】
残高情報は、プリペイドカードであるＩＣ媒体１００に残っている残金の額を示す情報であり、相互認証無しに読み取り可能な情報であるとする。利用履歴の最終金額情報は、ＩＣ媒体１００が最後に利用された際の残高を示す履歴情報であり、相互認証無しに読み取り可能な情報であるとする。通常、プリペイドカードであるＩＣ媒体内の残高情報と利用履歴の最終金額情報とは、同じ額を示し、整合性が取れていることとなる。しかし、正当でないＩＣ媒体の場合、例えば、残高情報が不正に操作されることが考えられる。そのため、残高情報に示されている金額が、利用履歴の最終金額情報よりも多くなっており、整合性が取れていないというような場合がありうる。
そこで、Ｓ４０４で、ＣＰＵ２０１は、Ｓ４０３で取得した残高情報と、利用履歴の最終金額情報と、が同じ額を示し、整合性がとれているか否かを判定する。ＣＰＵ２０１は、Ｓ４０３で取得した残高情報と、利用履歴の最終金額情報と、が同じ額を示し、整合性がとれていると判定した場合、ＩＣ媒体１００が正当であるとして、Ｓ４０５の処理に進む。また、ＣＰＵ２０１は、Ｓ４０３で取得した残高情報と、利用履歴の最終金額情報と、が違う額を示し、整合性がとれていないと判定した場合、ＩＣ媒体１００が正当でないとして、Ｓ４０６の処理に進む。このＳ４０４の処理は、読出可能情報同士の整合性の判定処理の一例である。
以上の処理により、認証システムは、内部メモリ内のサービスの情報が不正に操作されている正当でないＩＣ媒体を誤って認証する可能性を軽減できる。
【００３２】
＜その他の実施形態＞
実施形態１、２では、ＣＰＵ２０１は、実施形態１、２で上述したＩＣ媒体の製造識別情報の正当性判定方法の何れか１つの方法を実行することとした。しかし、ＣＰＵ２０１は、実施形態１、２で上述した方法のうち、複数の方法を組み合わせて実行することとしてもよい。また、ＣＰＵ２０１は、実行する複数の方法の実行順序を、ＩＣ媒体の製造識別情報の正当性判定処理毎に変更することとしてもよい。また、ＣＰＵ２０１は、実行する方法を実行するタイミングを、ＩＣ媒体の製造識別情報の正当性判定処理毎に変更することとしてもよい。
また、実施形態１、２では、ＣＰＵ２０１は、実施形態１、２で上述したＩＣ媒体の製造識別情報の正当性判定方法を１度だけ実行することとした。しかし、ＣＰＵ２０１は、実施形態１、２で上述した製造識別情報の正当性判定方法を任意の回数、実行することとしてもよい。また、ＣＰＵ２０１は、実施形態１、２で上述した製造識別情報の正当性判定方法のうち、複数の製造識別情報の正当性判定方法を任意の回数、実行することとしてもよい。ＣＰＵ２０１は、実施形態２で上述した製造識別情報の正当性判定方法の何れかを複数回、実行する場合、１回毎にＳ４０３でＩＣ媒体１００に読み出すよう要求する領域、領域の数、等を変更することとしてもよい。
以上の処理により、ＣＰＵ２０１は、よりセキュアなＩＣ媒体の認証処理が実現でき、また、オウム返しによる不正を防止することができる。
【００３３】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
例えば、上述した認証システムの機能構成の一部又は全てをハードウェアとして読書装置１０１に実装してもよい。
【符号の説明】
【００３４】
１００  ＩＣ媒体、１０１  読書装置、２０１  ＣＰＵ
【図１】
0006706052.tif 000002
【図２】
0006706052.tif 000003
【図３】
0006706052.tif 000004
【図４】
0006706052.tif 000005