(57)【特許請求の範囲】
【請求項１】
ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、前記リーダ／ライタと接続可能な認証制御装置とを備える認証システムであって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置は、
前記識別子を送信する識別子送信部と、
前記リーダ／ライタに前記ＩＣチップへのデータ書き込み指示をする書き込み指示部と、
を備え、
前記リーダ／ライタは、
前記識別子送信部により送信された前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部により検証された前記識別子および前記識別子の検証結果を保持する検証結果保持部と、
前記書き込み指示部の指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、正当性を有するとして前記検証結果保持部に保持された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、認証システム。
【請求項２】
前記認証制御装置に備わる前記識別子送信部は、
前記識別子とともに署名データを送信し、
前記リーダ／ライタに備わる前記識別子検証部は、
予め前記リーダ／ライタに記憶されている公開鍵を用いて前記署名データを検証することを特徴とする、請求項１に記載の認証システム。
【請求項３】
前記リーダ／ライタには、複数の暗号化された識別子と、前記暗号化された識別子に対応する複数の共通鍵とが記憶されており、
前記認証制御装置に備わる前記識別子送信部は、前記リーダ／ライタに記憶された前記暗号化された識別子と前記共通鍵の記憶位置の情報とを送信し、
前記リーダ／ライタに備わる前記識別子検証部は、前記識別子送信部に送信された前記記憶位置の情報に基づいて、記憶された前記共通鍵を用いて前記暗号化された識別子を復号することを特徴とする、請求項１に記載の認証システム。
【請求項４】
前記リーダ／ライタは、
前記データ格納領域にデータが格納された後に、前記検証結果保持部に保持された前記識別子および前記識別子の検証結果を削除する検証結果削除部をさらに備えることを特徴とする、請求項１に記載の認証システム。
【請求項５】
前記ＩＣチップに記憶されている前記複数のデータ格納領域は、前記データ格納領域の各々へのアクセス情報が設定された１の論理アクセス子に関連付けられており、
前記論理アクセス子には、前記論理アクセス子に関連付けられた前記複数のデータ格納領域にアクセスするための鍵情報が含まれていることを特徴とする、請求項１に記載の認証システム。
【請求項６】
前記認証制御装置に備わる前記識別子送信部は、前記認証制御装置と前記リーダ／ライタとの相互認証がなされた後に前記識別子を送信することを特徴とする、請求項１に記載の認証システム。
【請求項７】
ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、前記リーダ／ライタと接続可能な認証制御装置とを用いて実現された認証方法であって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置が、
前記識別子を送信するステップと、
前記リーダ／ライタが、
前記送信された前記識別子の正当性を検証するステップと、
前記検証された前記識別子および前記識別子の検証結果を保持するステップと、
前記認証制御装置が、
前記リーダ／ライタに前記ＩＣチップへのデータ書き込みを指示するステップと、
前記リーダ／ライタが、
前記認証制御装置からのデータ書き込み指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込むステップと、
前記読み込まれた識別子格納領域のなかから、正当性を有するとして保持された前記識別子に対応する前記データ格納領域を特定するステップと、
前記特定されたデータ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するステップと、
を含むことを特徴とする、認証方法。
【請求項８】
ＩＣチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ／ライタであって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部により検証された前記識別子および前記識別子の検証結果を保持する検証結果保持部と、
前記認証制御装置の書き込み指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、正当性を有するとして前記検証結果保持部に保持された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、リーダ／ライタ。
【請求項９】
コンピュータを、
ＩＣチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ／ライタであって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部により検証された前記識別子および前記識別子の検証結果を保持する検証結果保持部と、
前記認証制御装置の書き込み指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、正当性を有するとして前記検証結果保持部に保持された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えるリーダ／ライタとして機能させるための、プログラム。
【請求項１０】
ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、前記リーダ／ライタと接続可能な認証制御装置とを備える認証システムであって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置は、
前記識別子を送信する識別子送信部と、
前記リーダ／ライタに前記ＩＣチップへのデータ書き込みを指示する書き込み指示部と、
を備え、
前記リーダ／ライタは、
署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部と、
前記識別子送信部により送信された前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第１の領域に格納する識別子格納部と、
前記書き込み指示部の指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、認証システム。
【請求項１１】
前記認証制御装置に備わる前記識別子送信部は、
前記識別子とともに署名データを送信し、
前記リーダ／ライタに備わる前記識別子検証部は、
予め前記リーダ／ライタに記憶されている公開鍵を用いて前記署名データを検証することを特徴とする、請求項１０に記載の認証システム。
【請求項１２】
前記認証制御装置に備わる前記識別子送信部は、
暗号化された前記識別子を送信し、
前記リーダ／ライタに備わる前記識別子検証部は、
予め前記リーダ／ライタに記憶されている共通鍵を用いて前記暗号化された識別子を復号することを特徴とする、請求項１０に記載の認証システム。
【請求項１３】
前記ＩＣチップに記憶されている前記複数のデータ格納領域は、前記データ格納領域の各々へのアクセス情報が設定された１の論理アクセス子に関連付けられており、
前記論理アクセス子には、前記論理アクセス子に関連付けられた前記複数のデータ格納領域にアクセスするための鍵情報が含まれていることを特徴とする、請求項１０に記載の認証システム。
【請求項１４】
ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、前記リーダ／ライタと接続可能な認証制御装置とを用いて実現された認証方法であって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記リーダ／ライタは、
署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部を有し、
前記認証制御装置が、
前記識別子を送信する識別子送信するステップと、
前記リーダ／ライタが、
前記識別子送信部により送信された前記識別子の正当性を検証するステップと、
前記識別子の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第１の領域に格納するステップと、
前記認証制御装置が、
前記リーダ／ライタに前記ＩＣチップへのデータ書き込みを指示するステップと、
前記リーダ／ライタが、
前記認証制御装置からのデータ書き込み指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込むステップと、
前記読み込まれた識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定するステップと、
前記特定されたデータ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するステップと、
を含むことを特徴とする、認証方法。
【請求項１５】
ＩＣチップを搭載した情報処理端末と非接触式に通信し、前記認証制御装置と接続可能なリーダ／ライタであって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部と、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第１の領域に格納する識別子格納部と、
前記認証制御装置の書き込み指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、リーダ／ライタ。
【請求項１６】
コンピュータを、
ＩＣチップを搭載した情報処理端末と非接触式に通信し、前記認証制御装置と接続可能なリーダ／ライタであって、
前記ＩＣチップには、複数のデータ格納領域と前記複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部と、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第１の領域に格納する識別子格納部と、
前記認証制御装置の書き込み指示に応じて、前記ＩＣチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えるリーダ／ライタとして機能させるための、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証システム、認証方法、リーダ／ライタおよびプログラムに関し、特に、複数のデータ格納領域の各々にアクセス制限をすることが可能な認証システム、認証方法、リーダ／ライタおよびプログラムに関する。
【背景技術】
【０００２】
近年、携帯電話などの携帯端末装置に非接触通信可能なＩＣチップが搭載され、リーダ／ライタと非接触式に通信を行って、外部装置との間でデータの送受信をすることが行われている。特に最近は、電子マネーやプリペイドカードの代わりとしてだけでなく、電子チケットやクーポン、ドアロックのキーなどとしてもＩＣチップを搭載した携帯端末装置が利用されている。チケットやクーポン等としてＩＣチップを搭載した携帯端末装置を利用する場合には、チケット発行サーバが、チケットの発行とともに電子署名を生成する。そして、チケットを利用する際に、電子署名を用いてチケットの正当性を検証することが可能となる。
【０００３】
しかし、当該チケットが交通機関の乗車券であった場合には、チケット情報に電子署名を施すと改札処理に時間を要するという問題があった。そこで、ＩＣチップのメモリ領域に電子署名が施されたチケット情報を記憶する第１の領域と電子署名が施されていない第２の記憶領域とを備えて、第１の記憶領域は携帯端末装置のアクセスを可能にし、第２の記憶領域はチケット発行サーバのみアクセス可能とすることにより、セキュリティを保持したまま利便性を向上させる技術が開示されている（例えば、特許文献１）。
【０００４】
上記第２の記憶領域は、チケット発行サーバ等の管理サーバのみがアクセス可能となるため、第２の記憶領域にアクセスするためのアクセス情報を用いて実データを格納するデータ格納領域にアクセスするメモリ構成となっている。アクセス情報にはアクセスキーやアクセス方法などが設定されており、当該アクセス情報に複数のデータ格納領域が関連付けられている。管理サーバは、当該アクセス情報を用いてデータ格納領域にアクセスして、チケットの発行情報を格納したり、データの更新を行ったりする。
【０００５】
【特許文献１】特開２００５−１４９０３８号公報
【特許文献１】特開２００５−３３０７７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、管理サーバだけでなく、携帯端末装置と非接触通信を行うリーダ／ライタからデータの更新等を行う場合には、アクセス情報に関連付けられたすべてのデータ格納領域にアクセスすることが可能となってしまうという問題があった。データ格納領域には、異なる事業者により発行されたチケット等が格納されている。したがって、アクセス情報に含まれるアクセスキーを保有したリーダ／ライタを使用すると、アクセス情報に関連付けられたすべてのデータ格納領域に変更が可能となってしまい、他事業者が提供するデータが改ざんされてしまうという問題があった。
【０００７】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、１のアクセス情報に関連付けられた複数のデータ格納領域の各々にアクセス制限をすることが可能な認証システム、認証方法、リーダ／ライタおよびプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある観点によれば、ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、リーダ／ライタと接続可能な認証制御装置とを備える認証システムが提供される。上記ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。
【０００９】
上記認証制御装置は、識別子を送信する識別子送信部と、リーダ／ライタにＩＣチップへのデータ書き込み指示をする書き込み指示部と、を備える。上記リーダ／ライタは、識別子送信部により送信された識別子の正当性を検証する識別子検証部と、識別子検証部により検証された識別子および識別子の検証結果を保持する検証結果保持部と、書き込み指示部の指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、正当性を有するとして検証結果保持部に保持された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【００１０】
かかる構成によれば、認証制御装置が識別子を送信し、リーダ／ライタが当該識別子の正当性を検証して、当該識別子と検証結果とを保持する。リーダ／ライタは、認証制御装置からのデータ書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込み、識別子格納領域のなかから、リーダ／ライタに保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納する。
【００１１】
これにより、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御が可能となるとともに、正当な識別子であった場合にデータ格納領域のデータを更新可能とするため、データの改ざんを防止することができる。
【００１２】
また、認証制御装置に備わる識別子送信部は、識別子とともに署名データを送信し、リーダ／ライタに備わる識別子検証部は、予めリーダ／ライタに記憶されている公開鍵を用いて署名データを検証するようにしてもよい。かかる構成によれば、識別子とともに送信された署名データを、公開鍵を用いて検証して、識別子が正当であるか否かの判断をすることができる。これにより、識別子が正当であった場合にのみ識別子に対応するデータ格納領域のデータを更新可能とすることができるため、データの改ざんを防止することができる。
【００１３】
また、リーダ／ライタには、複数の暗号化された識別子と、暗号化された識別子に対応する複数の共通鍵とが記憶されており、認証制御装置に備わる識別子送信部は、リーダ／ライタに記憶された暗号化された識別子と共通鍵の記憶位置の情報とを送信し、リーダ／ライタに備わる識別子検証部は、識別子送信部に送信された記憶位置の情報に基づいて、記憶された共通鍵を用いて暗号化された識別子を復号するようにしてもよい。かかる構成によれば、認証制御装置に指定された暗号化された識別子を指定された共通鍵で復号して、正しく復号できたか否かにより、識別子の正当性を判断することが可能となる。すなわち、暗号化された識別子が正しく復号された場合に識別子に対応するデータ格納領域にデータを書き込みすることが可能となるため、データの改ざんを防止することができる。
【００１４】
また、リーダ／ライタは、データ格納領域にデータが格納された後に、検証結果保持部に保持された識別子および識別子の検証結果を削除する検証結果削除部をさらに備えてもよい。かかる構成によれば、格納された識別子と識別子の検証結果とを削除して、データの改ざんを防止するとともに、セキュリティを向上することができる。検証結果削除部による識別子と検証結果を削除するタイミングは、認証制御装置とリーダ／ライタとの相互認証が切断された場合や、リーダ／ライタの電源が切断された場合であってもよい。また、ＩＣチップに１回または数回データの書き込みをした後に削除するようにしてもよい。
【００１５】
また、ＩＣチップに記憶されている複数のデータ格納領域は、データ格納領域の各々へのアクセス情報が設定された１の論理アクセス子に関連付けられており、論理アクセス子には、論理アクセス子に関連付けられた複数のデータ格納領域にアクセスするための鍵情報が含まれていてもよい。論理アクセス子に複数のデータ格納領域が関連付けられており、データ格納領域にアクセスするための鍵情報をリーダ／ライタが有している場合においても、データ格納領域単位でのアクセスが可能となる。
【００１６】
認証制御装置に備わる識別子送信部は、認証制御装置とリーダ／ライタとの相互認証がなされた後に識別子を送信するようにしてもよい。かかる構成により、認証制御装置とリーダ／ライタとの相互認証が行われた後に識別子が送信されるため、よりセキュリティを向上してデータの改ざんを防止することができる。
【００１７】
上記課題を解決するために、本発明の別の観点によれば、ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、リーダ／ライタと接続可能な認証制御装置とを用いて実現された認証方法が提供される。ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。上記認証方法は、認証制御装置が、識別子を送信するステップと、リーダ／ライタが、送信された識別子の正当性を検証するステップと、検証された識別子および識別子の検証結果を保持するステップと、認証制御装置が、リーダ／ライタにＩＣチップへのデータ書き込みを指示するステップと、リーダ／ライタが、認証制御装置からのデータ書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込むステップと、読み込まれた識別子格納領域のなかから、正当性を有するとして保持された識別子に対応するデータ格納領域を特定するステップと、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するステップと、を含む。
【００１８】
上記課題を解決するために、本発明の別の観点によれば、ＩＣチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ／ライタが提供される。上記ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。上記リーダ／ライタは、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部により検証された識別子および識別子の検証結果を保持する検証結果保持部と、認証制御装置の書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、正当性を有するとして検証結果保持部に保持された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【００１９】
上記課題を解決するために、本発明の別の観点によれば、コンピュータを、ＩＣチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ／ライタであって、ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部により検証された識別子および識別子の検証結果を保持する検証結果保持部と、認証制御装置の書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、正当性を有するとして検証結果保持部に保持された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備えるリーダ／ライタとして機能させるための、プログラムが提供される。
【００２０】
上記課題を解決するために、本発明の別の観点によれば、ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、リーダ／ライタと接続可能な認証制御装置とを備える認証システムが提供される。上記ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。認証制御装置は、識別子を送信する識別子送信部と、リーダ／ライタにＩＣチップへのデータ書き込みを指示する書き込み指示部と、を備える。上記リーダ／ライタは、署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部と、識別子送信部により送信された識別子の正当性を検証する識別子検証部と、識別子検証部の検証の結果、識別子が正当であった場合に識別子を記憶部の第１の領域に格納する識別子格納部と、書き込み指示部の指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【００２１】
かかる構成によれば、リーダ／ライタには、事前に正当性が証明された識別子が格納され、リーダ／ライタは、認証制御装置からの書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込み、識別子格納領域のなかから、リーダ／ライタに保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納する。
【００２２】
これにより、認証制御装置がリーダ／ライタを介してＩＣチップのデータの書き換えを行う際には、識別子の正当性を検証することなく、識別子に対応するデータ格納領域にデータの書き換えを行うことができる。また、データ格納領域の各々が識別子により識別され、正当性が証明された識別子に対応するデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御をすることが可能となる。リーダ／ライタが、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなる。
【００２３】
また、認証制御装置に備わる識別子送信部は、識別子とともに署名データを送信し、リーダ／ライタに備わる識別子検証部は、予めリーダ／ライタに記憶されている公開鍵を用いて署名データを検証するようにしてもよい。
【００２４】
また、認証制御装置に備わる識別子送信部は、暗号化された識別子を送信し、リーダ／ライタに備わる識別子検証部は、予めリーダ／ライタに記憶されている共通鍵を用いて暗号化された識別子を復号するようにしてもよい。
【００２５】
また、ＩＣチップに記憶されている複数のデータ格納領域は、データ格納領域の各々へのアクセス情報が設定された１の論理アクセス子に関連付けられており、論理アクセス子には、論理アクセス子に関連付けられた複数のデータ格納領域にアクセスするための鍵情報が含まれていてもよい。
【００２６】
上記課題を解決するために、本発明の別の観点によれば、ＩＣチップを搭載した情報処理端末と非接触式に通信可能なリーダ／ライタと、リーダ／ライタと接続可能な認証制御装置とを用いて実現された認証方法が提供される。ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されている。また、リーダ／ライタは、署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部を有している。上記認証方法は、認証制御装置が、識別子を送信する識別子送信するステップと、リーダ／ライタが、識別子送信部により送信された識別子の正当性を検証するステップと、識別子の検証の結果、識別子が正当であった場合に識別子を記憶部の第１の領域に格納するステップと、認証制御装置が、リーダ／ライタにＩＣチップへのデータ書き込みを指示するステップと、リーダ／ライタが、認証制御装置からのデータ書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込むステップと、読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定するステップと、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するステップと、を含む。
【００２７】
上記課題を解決するために、本発明の別の観点によれば、ＩＣチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ／ライタが提供される。  ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されている。上記リーダ／ライタは、署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部と、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部の検証の結果、識別子が正当であった場合に識別子を記憶部の第１の領域に格納する識別子格納部と、認証制御装置の書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【００２８】
上記課題を解決するために、本発明の別の観点によれば、コンピュータを、ＩＣチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ／ライタであって、ＩＣチップには、複数のデータ格納領域と複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、署名検証の検証結果が正しいデータを登録可能な第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを含む記憶部と、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部の検証の結果、識別子が正当であった場合に識別子を記憶部の第１の領域に格納する識別子格納部と、認証制御装置の書き込み指示に応じて、ＩＣチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備えるリーダ／ライタとして機能させるための、プログラムが提供される。
【発明の効果】
【００２９】
以上説明したように本発明によれば、１のアクセス情報に関連付けられた複数のデータ格納領域の各々にアクセス制限をすることができる。
【発明を実施するための最良の形態】
【００３０】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００３１】
（第１の実施形態）
まず、本発明の第１の実施形態にかかる認証システムの概要について説明する。図１は、本実施形態にかかる認証システム１０の構成例を示した説明図である。図１に示したように、認証システム１０は、認証制御装置１００と、リーダ／ライタ２００と、情報処理端末３００などを含んで構成される。
【００３２】
認証制御装置１００は、リーダ／ライタ２００を介して情報処理端末３００に搭載されたＩＣチップにデータの更新要求を送信する。認証制御装置１００としては、例えばＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等を例示できる。認証制御装置１００とリーダ／ライタ２００とは、一体の装置として構成されていてもよいし、認証制御装置１００とリーダ／ライタ２００とが別体の装置として構成され、ケーブルで接続されていてもよい。また、認証制御装置１００は、独立してデータの更新要求等を通知するようにしてもよいし、インターネット等のネットワークを介してサーバ装置等に接続され、サーバ装置等の要求に応じてデータの更新要求等をするようにしてもよい。
【００３３】
リーダ／ライタ２００は、情報処理端末３００のＩＣチップとの間で非接触式に無線通信を行って、認証制御装置１００からのデータの更新要求等に応じてＩＣチップのデータの更新等をする機能を有する。また、ＩＣチップへのアクセス情報を有しており、認証制御装置１００の指示のもと、当該アクセス情報を用いてＩＣチップにアクセスすることができる。
【００３４】
情報処理端末３００は、ＩＣチップを搭載した携帯端末である。以下では情報処理端末３００の一例として、ＩＣチップを搭載した携帯電話を本発明の情報処理端末に適用して説明するがかかる例に限定されない。情報処理端末３００は、携帯電話、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、携帯用ゲーム機器、時計などであってもよい。
【００３５】
情報処理端末３００に搭載されるＩＣチップは、非接触通信可能であり、認証制御装置１００とリーダ／ライタ２００を介して接続され、認証制御装置１００からのデータの更新要求を受信したり、データの更新を行ったりする。ＩＣチップは、主に、１０ｃｍ程度の狭い範囲内のみにおいて非接触式に通信を行うことができる、１３．５６ＭＨｚのＲＦ搬送波周波数と１００〜４００Ｋｂｐｓの通信速度を有する近距離無線規格（ＮＦＣ：Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）に沿って行われる。情報処理端末３００は、ＩＣチップを内蔵していてもよいし、ＩＣチップ搭載のＩＣカードを挿入可能なカードスロットを備え、カードスロットに挿入されたＩＣカードとリーダ／ライタ２００との間で無線通信が行われるようにしてもよい。
【００３６】
ＩＣチップには、複数のデータ格納領域と、複数のデータ格納領域へのアクセス情報（以下、論理アクセス子ともいう。）とが関連付けられて記憶されている。また、複数のデータ格納領域の各々と、複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。従来、論理アクセス子のみを用いてデータ格納領域にアクセスするようにしていた。論理アクセス子には、データ格納領域にアクセスするためのアクセスキーやアクセス方法等が含まれている。したがって、論理アクセス子に含まれるアクセスキーを有していれば、論理アクセス子に関連付けられたすべてのデータ格納領域にアクセスすることが可能となる。
【００３７】
しかし、データ格納領域に異なる事業者により発行されたチケットが格納されている場合には、１つのアクセスキーを有していれば複数のデータ格納領域にアクセスすることが可能となり、他事業者が提供するデータが改ざんされてしまうという問題があった。例えば、ＩＣチップに格納されたデータをチケット発行サーバ等の管理サーバのみだけでなく、リーダ／ライタ２００においても更新する場合には、リーダ／ライタ２００にアクセスキーを保有する必要がある。この場合、アクセスキーを保有したリーダライタを使用すると、アクセス情報に関連付けられたすべてのデータ格納領域の変更が可能となってしまう。
【００３８】
そこで、本実施形態においては、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とを関連付けて格納することにより、データ格納領域毎にアクセス制限をすることを可能とした。また、当該識別子の正当性の検証を行うことにより、データ格納領域単位でのアクセス制限の下におけるデータの改ざんを防止することが可能となる。
【００３９】
以上、認証システム１０の概要を説明した。次に、本実施形態にかかる認証システム１０の認証制御装置１００、リーダ／ライタ２００の詳細な構成を説明する。
【００４０】
図２は、認証制御装置１００、リーダ／ライタ２００の機能構成を示すブロック図である。図２に示したように、認証制御装置１００は、記憶部１０２、識別子送信部１０４、書き込み指示部１０６などを備える。識別子送信部１０４は、情報処理端末３００に搭載されたＩＣチップ３５０のデータ格納領域の各々を識別する識別子をリーダ／ライタ２００に送信する機能を有する。
【００４１】
ここで、図３Ａおよび図３Ｂを参照して、ＩＣチップ３５０のデータ格納領域および各データ格納領域を識別する識別子について説明する。図３Ａに示したように、チケット等の実データが格納される複数のデータ格納領域３５２は、論理アクセス子Ａに関連付けられている。論理アクセス子とは、データ格納領域へのアクセス方法（Ｒｅａｄ−Ｏｎｌｙ、Ｒｅａｄ−Ｗｒｉｔｅなど）やアクセス権限（アクセスキー）などが設定されたメモリ領域であり、一つの論理アクセス子に複数のデータ格納領域を関連付けることができる。
【００４２】
上記したように、従来は、論理アクセス子を介してデータ格納領域にアクセスしていた。例えば、論理アクセス子Ａに含まれるアクセスキーを保有していれば、論理アクセス子Ａに関連付けられたデータ格納領域０〜７のすべてにアクセスすることが可能であった。本実施形態においては、図３Ｂに示したように、データ格納領域０〜７の各々を識別する識別子３６１とデータ格納領域の位置情報を示すデータ格納領域のインデックス３６２を関連付けて、データ格納領域毎にアクセスを制御することを可能としている。
【００４３】
図２に戻り、上記したように、識別子送信部１０４は、ＩＣチップ３５０の各データ格納領域を識別する識別子を送信する。認証制御装置１００は、予め、外部の識別子発行サーバと接続して、識別子発行サーバから発行されたＩＣチップ３５０に書き込み可能なデータ格納領域の識別子を発行してもらい、当該識別子を記憶部１０２に記憶しておくようにしておいてもよい。ここで、認証制御装置１００が保有している識別子が、識別子発行サーバから発行された正当な識別子であることを証明することにより、データ格納領域単位でのアクセス制御下でのデータの改ざんを防ぐことが可能となる。
【００４４】
識別子の正当性を証明する方法として、署名データが付された識別子を発行し、署名データと識別子を対にして認証制御装置１００に保有する方法を例示することができる。具体的には、記憶部１０２に識別子と当該識別子の正当性を証明するための署名データとを記憶する。識別子送信部１０４は、ＩＣチップ３５０にデータを格納するために、データ格納領域の識別子と署名データとをリーダ／ライタ２００に送信する。また、認証制御装置１００とリーダ／ライタ２００とが接続する際に、相互認証を行う場合には、相互認証を行う際に識別子および署名データをリーダ／ライタ２００に送信するようにしてもよい。
【００４５】
書き込み指示部１０６は、リーダ／ライタ２００にＩＣチップへのデータ書き込みを指示する機能を有する。例えば、ｗｒｉｔｅコマンド等の所定のデータ書き込みコマンドをリーダ／ライタ２００に送信することにより書き込みを指示するようにしてもよい。当該書き込み指示は、識別子送信部１０４により識別子および署名データの送信が行われた後に行われる。
【００４６】
以上、認証制御装置１００の機能構成について説明した。次に、リーダ／ライタ２００の機能構成について説明する。図２に示したように、リーダ／ライタ２００は、識別子受信部２０２、識別子検証部２０４、検証結果保持部２０６、読み込み部２０８、特定部２１０、データ格納部２１２、検証結果削除部２１４、記憶部２１６などを備える。識別子受信部２０２は、認証制御装置１００の識別子送信部１０４から送信された識別子と署名データを受信する機能を有する。識別子受信部２０２は、受信した識別子と署名データを識別子検証部に提供する。
【００４７】
識別子検証部２０４は、識別子受信部２０２により送信された識別子の正当性を検証する機能を有する。上記したように、識別子とともに署名データが送信される場合には、送信された署名データを用いて識別子の正当性を検証するようにしてもよい。この場合、記憶部２１６に予め署名データを検証するための公開鍵を記憶しておく。識別子検証部２０４は、記憶部２１６に記憶された公開鍵を取得して、当該公開鍵を用いて識別子とともに送信された署名データの検証を行うことにより、識別子の正当性を検証することが可能となる。識別子検証部２０４は、検証した識別子と検証結果とを検証結果保持部２０６に提供する。
【００４８】
検証結果保持部２０６は、識別子検証部２０４により検証された識別子と検証結果とを保持する機能を有する。検証結果保持部２０６は、検証された識別子と検証結果とを記憶部２１６に記憶するようにしてもよい。また、検証結果保持部２０６は検証された識別子と検証結果とを特定部２１０に提供する。このとき、検証結果が正当である場合に識別子を保持して、当該識別子のみを特定部２１０に提供するようにしてもよい。
【００４９】
読み込み部２０８は、認証制御装置１００の書き込み指示部１０６によりデータの書き込み指示に応じて、ＩＣチップ３５０に記憶された識別子格納領域を読み込む機能を有する。上記したように、ＩＣチップ３５０は、論理アクセス子に関連付けられたデータ格納領域を有している。論理アクセス子が複数ある場合には、各々の論理アクセス子に複数のデータ格納領域が関連付けられることとなる。また、ＩＣチップ３５０は、各データ格納領域が識別子により識別され、当該識別子と各データ格納領域の位置情報を示すデータ格納領域とが関連付けられた識別子格納領域を有している。読み込み部２０８は、当該識別子格納領域を読み込み、特定部２１０に提供する。
【００５０】
特定部２１０は、読み込み部２０８に読み込まれた識別子格納領域のなかから、検証結果保持部２０６に保持された識別子に対応するデータ格納領域を特定する機能を有する。上記したように、読み込み部２０８により読み込まれた識別子格納領域には、識別子とデータ格納領域の位置情報とが関連付けられている。したがって、検証結果保持部２０６から提供された識別子に関連付けられたデータ格納領域の位置情報を取得することにより、データを書き込み可能なデータ格納領域を特定することできることとなる。特定部２１０は、特定したデータ格納領域の位置情報をデータ格納部２１２に提供する。
【００５１】
データ格納部２１２は、特定部２１０に提供されたデータ格納領域の位置情報に基づいて、認証制御装置１００から書き込み指示されたデータを該当するデータ格納領域に書き込む機能を有する。このように、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセス可能とすることにより、データ格納領域単位でのアクセス制御をすることが可能となる。また、論理アクセス子に複数のデータ格納領域が関連付けられ、リーダ／ライタ２００が、論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域のすべてにアクセスして書き換えることによるデータの改ざんを防止することが可能となる。
【００５２】
検証結果削除部２１４は、データ格納部２１２によりＩＣチップ３５０にデータが格納された場合に、記憶部２１６に保持している識別子と検証結果とを削除して初期化する機能を有する。検証結果削除部２１４による識別子と検証結果の削除は、例えば、リーダ／ライタ２００の電源が切断された場合や、認証制御装置１００との接続が切断された場合に行うようにしてもよい。また、所定期間毎に削除するようにしてもよいし、ＩＣチップ３５０に１回または数回書き込みした後に削除するようにしてもよい。
【００５３】
以上、リーダ／ライタ２００の機能構成について説明した。次に、図４を参照して、認証システム１０における認証方法について説明する。図４は、認証システム１０における認証方法を示すタイミングチャートである。
【００５４】
図４に示したように、認証制御装置１００は、リーダ／ライタ２００に相互認証コマンドを送信する（Ｓ１０２）。ステップＳ１０２において、識別子および署名データが送信される。認証制御装置１００は、複数の識別子および各々の識別子に対応した署名データを送信するようにしてもよい。ステップＳ１０２において、認証制御装置１００から相互認証コマンドが送信されると、認証制御装置１００とリーダ／ライタ２００との相互認証がなされる（Ｓ１０４）。
【００５５】
ステップＳ１０４において相互認証がなされた後に、リーダ／ライタ２００は、ステップＳ１０２において送信された署名データの検証を行う。上記したように、署名データの検証は、記憶部２１６に記憶された公開鍵を用いて行われる。正しく署名データの検証が行われた場合には、認証制御装置１００から送信された識別子が正当なものであると判断される。すなわち、認証制御装置２００がサービス事業者の装置であった場合、識別子の正当性を検証することにより、ＩＣチップ３５０にデータを書き込みしようとするサービス事業者が識別子に対応するデータ格納領域にアクセス可能な事業者であることを証明することができることとなる。
【００５６】
そして、ステップＳ１０６で検証された検証結果と、識別子とを保存する（Ｓ１０８）。検証結果は、識別子に対応付けて保存し、正しく検証できたか否かが保存される。識別子の正当性を検証することにより、データ格納領域単位でのアクセス制御が可能となるだけでなく、識別子が正当である場合に、ＩＣチップ３５０のデータを更新可能とし、正当ではない場合にＩＣチップ３５０のデータを更新不可能とするように、データの改ざんを防ぐことも可能となる。リーダ／ライタ２００は、識別子の検証を行い、該検証の結果を保存したことを認証制御装置１００に通知する（Ｓ１１０）。
【００５７】
そして、認証制御装置１００は、リーダ／ライタ（Ｒ／Ｗ）２００とＩＣチップ３５０との間の相互認証を行うようリーダ／ライタ２００に指示する（Ｓ１１２）。ステップＳ１１２において、ＩＣチップ３５０との相互認証を指示されたリーダ／ライタ２００は、認証コマンド等の所定のコマンドを送信することにより、ＩＣチップ３５０との間で相互認証を行う（Ｓ１１４）。ステップＳ１１４において正しく相互認証が行われたことが、リーダ／ライタ２００を介して認証制御装置１００に通知される（Ｓ１１６、Ｓ１１８）。
【００５８】
ステップＳ１１８において、リーダ／ライタ２００とＩＣチップ３５０との間で正しく認証が行われたことが通知されると、認証制御装置１００は、ＩＣチップ３５０にデータを書き込むための所定の書き込みコマンドをリーダ／ライタ２００に送信する（Ｓ１２０）。ステップＳ１２０において認証制御装置１００から書き込みコマンドを送信されたリーダ／ライタ２００は、ＩＣチップ３５０から識別子格納領域を読み込む（Ｓ１２２、Ｓ１２４）。
【００５９】
上記したように、複数のデータ格納領域は論理アクセス子に関連付けられており、リーダ／ライタ２００は、論理アクセス子に含まれるアクセスキーを有しており、論理アクセス子に関連付けられた複数のデータ格納領域にアクセス可能となってしまう。本実施形態においては、論理アクセス子を介してアクセス可能な複数のデータ格納領域を識別する識別子が格納された識別子格納領域を読み込み、認証制御装置１００から送信された識別子が正当であった場合に、識別子に対応するデータ格納領域にアクセス可能とすることとしている。
【００６０】
ステップＳ１２４において読み込まれたＩＣチップ３５０の識別子格納領域のなかから、ステップＳ１０８において保存された識別子に対応するデータ格納領域を特定する（Ｓ１２６）。ステップＳ１２６において特定されたデータ格納領域に対して、データの書き込みや書き換えを行う（Ｓ１２８、Ｓ１３０）。そして、リーダ／ライタ２００は、正しくデータの書き換えが行われたことと認証制御装置１００に通知する（Ｓ１３２）。
【００６１】
その後、認証制御装置１００とリーダ／ライタ２００との相互認証切断イベント等があった場合（Ｓ１３４）に、保存された識別子と検証結果の初期化を行う（Ｓ１３６）。ステップＳ１３６における識別子と検証結果の初期化とは、ステップＳ１０８において保存された識別子と検証結果とを削除することをいう。上記したように、ステップＳ１３６における識別子と検証結果を削除するタイミングは、ステップＳ１３４の相互認証切断イベントだけでなく、リーダ／ライタ２００の電源切断であってもよい。また、所定期間毎に初期化するようにしてもよいし、ＩＣチップ３５０に１回または数回データの書き込みをした後に削除するようにしてもよい。
【００６２】
以上、認証システム１０における認証方法について説明した。以上、第１実施形態にかかる認証システム１０について説明した。認証システム１０によれば、認証制御装置１００が識別子と署名データとをリーダ／ライタ２００に送信し、リーダ／ライタ２００が署名データの検証を行って、識別子の正当性を検証して当該識別子および検証結果を保持する。リーダ／ライタ２００は、認証制御装置１００からのデータ書き込み指示に応じて、ＩＣチップ３５０に記憶された識別子格納領域を読み込み、識別子格納領域のなかから保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置１００に書き込み指示されたデータを格納する。
【００６３】
これにより、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御が可能となるとともに、リーダ／ライタ２００が、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなり、セキュリティが向上する。
【００６４】
第１実施形態では、識別子とともに署名データを送信して、署名データを用いて識別子の正当性を検証することとしていたが、かかる例に限定されず、共通鍵暗号方式を利用することもできる。共通鍵暗号方式を利用する場合には、認証制御装置１００から暗号化された識別子をリーダ／ライタに送信し、予めリーダ／ライタに記憶された共通鍵で復号化を行うことにより本実施形態を実現することができる。また、識別子を暗号化して、リーダ／ライタ２００に予め記憶させて、暗号化された識別子が正しく復号化された場合にのみ、データの書き込みをすることにより、第１実施形態と同様にデータ格納領域単位でのアクセス制限をすることが可能となる。第２実施形態では、暗号化された識別子がリーダ／ライタ２００に記憶され、当該識別子を復号化して、識別子に対応するデータ格納領域にデータを書き込む場合を例示して説明する。
【００６５】
（第２の実施形態）
まず、本発明の第２の実施形態にかかる認証システムの概要について説明する。本実施形態にかかる認証システム１０′は、認証制御装置１００′とリーダ／ライタ２００′と情報処理端末３００のＩＣチップ３５０などを備える。認証システム１０′の構成例は、第１の実施形態とほぼ同様であるため、詳細な説明は省略する。第１実施形態では、署名データを用いて識別子の正当性検証を行っていたが、本実施形態においては、共通鍵を用いて暗号化された識別子を復号することにより、識別子の正当性を検証する。認証システム１０′のリーダ／ライタ２００′には、暗号化された識別子と共通鍵とが記憶されることとなる。記憶された共通鍵が漏えいした場合には、署名データを用いて検証を行う場合に比べて、セキュリティに対する影響が大きいこととなる。
【００６６】
暗号化された識別子と識別子を復号するための鍵をリーダ／ライタに記憶する本実施形態において、第１実施形態と同様に公開鍵方式を利用することも可能である。しかしながら、公開鍵方式を利用して暗号化された識別子を復号する場合には、共通鍵方式で復号する場合に比べて処理速度が遅くなってしまう。本実施形態では、共通鍵方式を利用して暗号化された識別子を復号する場合を例示して説明する。
【００６７】
本実施形態にかかる認証システム１０′の認証制御装置１００′およびリーダ／ライタ２００′の機能構成は、第１実施形態の認証制御装置１００およびリーダ／ライタ２００とほぼ同様のため、詳細な説明は省略する。本実施形態では、上記したように、予め、リーダ／ライタ２００′に共通鍵と暗号化された識別子が格納されている。図５を参照して、リーダ／ライタ２００′の記憶部２１６′について説明する。図５は、リーダ／ライタ２００′の記憶部２１６′の記憶内容を説明する説明図である。
【００６８】
図５に示したように、記憶部２１６′の耐タンパ領域２２１内に、鍵格納テーブル２２２を有している。鍵格納テーブル２２２には、論理アクセス子の鍵２２３と、共通鍵２２４と、暗号化された識別子２２５が格納されている。論理アクセス子の鍵２２３は、第１実施形態と同様に、ＩＣチップ３５０の複数のデータ格納領域にアクセス可能なアクセスキーである。共通鍵２２４は、認証制御装置１００′とリーダ／ライタ２００′との間で事前に用意された鍵ペアである。当該鍵ペアは、チケット等を発行するサービス事業者ごとに作成され、各耐タンパ領域に格納される。したがって、耐タンパ領域０（２２１）に格納される共通鍵Ａ（２２４）と、耐タンパ領域１５（２２６）に格納される共通鍵Ｂ（２２８）とは異なる共通鍵である。また、耐タンパ領域０（２２１）の識別子２２５は共通鍵Ａ（２２４）で暗号化されており、耐タンパ領域１５（２２６）の識別子２２９は共通鍵Ｂ（２２４）で暗号化されて、それぞれの耐タンパ領域に格納される。
【００６９】
例えば、共通鍵２２４及び識別子２２５を、識別子を管理する識別子発行管理事業者が用意して、各サービス事業者によって共通鍵２２４を許可なく変更したり、識別子２２５を作成したりすることができないようにしてもよい。この場合、予め鍵格納テーブル２２２に格納される鍵を識別子発行（管理）事業者のみが知る鍵に登録した後に、サービス事業者がリーダ／ライタ２００′を利用可能とする。
【００７０】
また、鍵格納テーブル２２２の内容を変更するために、旧鍵、新鍵、耐タンパ領域の管理鍵の情報が格納されているパッケージを適用するようにしてもよい。パッケージに含まれる旧鍵と鍵格納テーブル２２２の旧鍵が一致していない場合には、鍵格納テーブル２２２の内容を変更することができないようにする。鍵格納テーブル２２２の鍵を変更するためには、識別子発行（管理）事業者がサービス事業者の鍵変更依頼を受けて、サービス事業者に鍵変更パッケージを渡す。これにより、サービス事業者独自の鍵では鍵格納テーブル２２２の鍵を変更することができないこととなり、セキュリティレベルを上げることが可能となる。
【００７１】
上記したように、共通鍵２２４が漏えいするとセキュリティ上問題があるため、共通鍵２２４および暗号化された識別子２２５はリーダ／ライタ２００′の耐タンパ領域に格納しておく必要がある。公開鍵暗号方式により本実施形態を実行する場合には、論理アクセス子とともに、公開鍵と識別子と署名データとをリーダ／ライタ２００′に格納する。このとき、少なくとも署名データを耐タンパ領域に格納する必要がある。これにより他事業者に署名データが漏えいしてなりすましが起こる危険性を低減することができる。
【００７２】
次に、図６を参照して、認証システム１０′の認証方法について説明する。図６は、認証システム１０′の認証方法について説明する。図６は、認証システム１０′における認証方法を示すタイミングチャートである。
【００７３】
図６に示したように、認証制御装置１００′は、リーダ／ライタ２００′に相互認証コマンドを送信する（Ｓ１４２）。ステップＳ１４２において、共通鍵のレコード番号および識別子のレコード番号が送信される。上記したように、旧鍵、新鍵、耐タンパ領域の管理鍵の情報が格納されているパッケージ等を利用することにより、チケット等を発行するサービス事業者は、許可なく共通鍵を変更することができないこととしている。また、リーダ／ライタ２００′内で共通鍵が記憶されたレコード番号を固定とすることにより、認証制御装置１００′からは識別子のレコード番号のみを送信して、サービス事業者により共通鍵が変更されるリスクを低減するようにしてもよい。ステップＳ１４２において、認証制御措置１００′から相互認証コマンドが送信されると、認証制御装置１００′とリーダ／ライタ２００′との相互認証がなされる（Ｓ１４４）。
【００７４】
ステップＳ１４４において相互認証がなされた後に、リーダ／ライタ２００′は、ステップＳ１４２において送信された共通鍵のレコード番号に対応する共通鍵によって、送信された識別子のレコード番号に対応する暗号化された識別子を復号化する（Ｓ１４６）。上記したように、ステップＳ１４６において暗号化された識別子は、各耐タンパ領域に格納されている共通鍵で暗号化されている。公開鍵暗号方式の場合には、署名検証を行う。ステップＳ１４６において、暗号化された識別子が正しく復号された場合には、識別子が正当なものであると判断されることとなる。すなわち、認証制御装置２００′がサービス事業者の装置であった場合、暗号化された識別子と当該識別子を復号するための共通鍵のレコード番号を正しく指定したことが証明され、サービス事業者が識別子に対応するデータ格納領域にアクセス可能な事業者であることを証明することができることとなる。
【００７５】
そして、ステップＳ１４６において復号された識別子と、識別子が正しく復号された否か等の検証結果を保存する（Ｓ１４８）。識別子の正当性を検証することにより、データ格納領域単位でのアクセス制御が可能となるだけでなく、識別子が正当である場合に、ＩＣチップ３５０のデータを更新可能とし、正当ではない場合にＩＣチップ３５０のデータを更新不可能とするように、データの改ざんを防ぐことも可能となる。リーダ／ライタ２００′は、識別子の検証を行い、該検証の結果を保存したことを認証制御装置１００′に通知する（Ｓ１５０）。
【００７６】
そして、認証制御装置１００′は、リーダ／ライタ（Ｒ／Ｗ）２００′とＩＣチップ３５０との間の相互認証を行うようリーダ／ライタ２００′に指示する（Ｓ１５２）。ステップＳ１５２において、ＩＣチップ３５０との相互認証を指示されたリーダ／ライタ２００′は、認証コマンド等の所定のコマンドを送信することにより、ＩＣチップ３５０との間で相互認証を行う（Ｓ１５４）。ステップＳ１５４において正しく相互認証が行われたことが、リーダ／ライタ２００′を介して認証制御装置１００′に通知される（Ｓ１５６、Ｓ１５８）。
【００７７】
ステップＳ１５８において、リーダ／ライタ２００′とＩＣチップ３５０との間で正しく認証が行われたことが通知されると、認証制御装置１００′は、ＩＣチップ３５０にデータを書き込むための所定の書き込みコマンドをリーダ／ライタ２００′に送信する（Ｓ１６０）。ステップＳ１６０において認証制御装置１００′から書き込みコマンドを送信されたリーダ／ライタ２００′は、ＩＣチップ３５０から識別子格納領域を読み込む（Ｓ１６２、Ｓ１６４）。
【００７８】
上記したように、複数のデータ格納領域は論理アクセス子に関連付けられており、リーダ／ライタ２００′は、論理アクセス子に含まれるアクセスキーを有しており、論理アクセス子に関連付けられた複数のデータ格納領域にアクセス可能となってしまう。本実施形態においては、論理アクセス子を介してアクセス可能な複数のデータ格納領域を識別する識別子が格納された識別子格納領域を読み込み、認証制御装置１００′から送信された識別子が正しく復号された場合に、識別子に対応するデータ格納領域にアクセス可能とすることとしている。
【００７９】
ステップＳ１６４において読み込まれたＩＣチップ３５０の識別子格納領域のなかから、ステップＳ１４８において保存された識別子に対応するデータ格納領域を特定する（Ｓ１６６）。ステップＳ１６６において特定されたデータ格納領域に対して、データの書き込みや書き換えを行う（Ｓ１６８、Ｓ１７０）。そして、リーダ／ライタ２００′は、正しくデータの書き換えが行われたことと認証制御装置１００′に通知する（Ｓ１７２）。
【００８０】
その後、認証制御装置１００′とリーダ／ライタ２００′との相互認証切断イベント等があった場合（Ｓ１７４）に、保存された識別子と検証結果の初期化を行う（Ｓ１７６）。ステップＳ１７６における識別子と検証結果の初期化とは、ステップＳ１４８において保存された識別子と検証結果とを削除することをいう。上記したように、ステップＳ１７６における識別子と検証結果を削除するタイミングは、ステップＳ１７４の相互認証切断イベントだけでなく、リーダ／ライタ２００′の電源切断であってもよい。また、所定期間毎に初期化するようにしてもよいし、ＩＣチップ３５０に１回または数回書き込みした後に削除するようにしてもよい。
【００８１】
以上、認証システム１０′における認証方法について説明した。以上、第２実施形態にかかる認証システム１０′について説明した。認証システム１０′によれば、リーダ／ライタ２００′に予め共通鍵と暗号化された識別子が格納されており、認証制御装置１００′が共通鍵と識別子のレコード番号をリーダ／ライタ２００′に送信し、リーダ／ライタ２００′が暗号化された識別子を復号化することにより識別子の正当性を検証して、当該識別子および検証結果を保持する。リーダ／ライタ２００′は、認証制御装置１００′からのデータ書き込み指示に応じて、ＩＣチップ３５０に記憶された識別子格納領域を読み込み、識別子格納領域のなかから保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置１００′に書き込み指示されたデータを格納する。
【００８２】
これにより、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御をすることを可能とする。リーダ／ライタ２００′が、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなり、セキュリティが向上する。
【００８３】
（第３実施形態）
次に、本発明の第３の実施形態にかかる認証システム１５の概要について説明する。本実施形態にかかる認証システム１５は、認証制御装置１５０、リーダ／ライタ２５０、情報処理端末３００のＩＣチップ３５０などを備える。認証システム１５の構成例は、第１実施形態にかかる認証システム１０の構成例とほぼ同様であるため、詳細な説明を省略する。本実施形態においては、リーダ／ライタ２５０に格納される識別子が予め検証され、正当性が証明された識別子のみが格納されている点で第１、第２実施形態と大きく異なっている。本実施形態においては、正当性が証明された識別子のみがリーダ／ライタ２００に格納されている。よって、認証制御装置１５０が、リーダ／ライタ２５０を介してＩＣチップ３５０にデータの書き込みを行う際に、識別子の検証を行うことなくＩＣチップ３５０のデータ格納領域にアクセスできるため、書き込みの処理速度を速めることができる。
【００８４】
図７を参照して、本実施形態にかかる認証システム１５の認証制御装置１５０、リーダ／ライタ２５０の機能構成を説明する。図７は、本実施形態にかかる認証システム１５の認証制御装置１５０、リーダ／ライタ２５０の機能構成を示すブロック図である。本実施形態においては、第１実施形態と異なる機能構成について主に説明する。
【００８５】
図７に示したように、認証制御装置１５０は、記憶部１５２、識別子送信部１５４、書き込み指示部１５６などを備える。認証制御装置１５０は、第１実施形態の認証制御装置１５０とほぼ同様の機能構成である。ただし、認証制御装置１５０が、予め識別子と署名データをリーダ／ライタ２５０に送信する点で第１実施形態と異なっている。第１実施形態では、認証制御装置１００から識別子と署名データがリーダ／ライタに送信された後に、リーダ／ライタ２００にデータの書き込み指示がなされていたが、本実施形態においては、識別子と署名データの送信は、データの書き込み指示とは別に予め実行される。
【００８６】
リーダ／ライタ２５０は、識別子受信部２５２と、識別子検証部２５４と、識別子格納部２５６と、読み込み部２５８と、特定部２６０と、データ格納部２６２と、記憶部２６４などを備える。本実施形態においては、第１実施形態と同様に、識別子検証部２５４が、認証制御装置１５０から送信された署名データを記憶された公開鍵を用いて検証し、識別子の正当性を検証する。そして、識別子格納部１５６は、識別子検証部２５４による検証の結果、識別子が正当であった場合に、識別子を記憶部２６４に格納する。本実施形態においては、署名データを用いて識別子の正当性を検証する方法について例示したが、かかる例に限定されず、第２実施形態と同様に、暗号化された識別子を共通鍵により復号して、識別子の正当性を検証してもよい。
【００８７】
記憶部２６４は、署名検証の検証結果が正しいデータを登録する第１の領域と、署名検証の検証結果に関わらずデータを登録可能な第２の領域とを有する。第１の領域は、例えば耐タンパ領域としてもよい。正当性が証明された識別子を耐タンパ領域に格納することにより、後に行われるＩＣチップ３５０へのデータ書き込み処理の際にセキュリティを確保して、データ格納領域単位でのアクセス制御をすることが可能となる。
【００８８】
図８は、リーダ／ライタ２５０の記憶部２６４の記憶内容について説明する説明図である。図８に示したように、記憶部２６４には、複数の耐タンパ領域２７１を有し、各耐タンパ領域２７１内に、鍵格納テーブル２７２と識別子格納テーブル２７４を有している。鍵格納テーブル２７２には、論理アクセス子の鍵２７３が格納され、識別子格納テーブル２７４には正当性が証明された識別子２７５が格納されている。このように、本実施形態においては、論理アクセス子の鍵と識別子とが別の領域に格納される。通常、耐タンパ領域の論理アクセス子の鍵を所有しているサービス事業者は、自由にレコードに登録するアクセスキーを変更することができる。論理アクセス子の鍵と同じ領域に識別子を格納した場合、サービス事業者によって登録された識別子も変更可能となってしまう。そこで、署名検証がなされていない場合は登録することができない領域を作り、該領域に識別子を格納する。これにより、耐タンパ領域の鍵を所有しているサービス事業者は、識別子格納テーブルの値を参照したり使用したりすることはできるが、署名検証することなく識別子を変更することはできないこととなり、サービス事業者によって識別子が変更されるリスクを低減している。
【００８９】
また、識別子をリーダ／ライタに格納する際には、専用の登録ツールを使用するようにしてもよい。例えば、専用の登録ツールを使用して、リーダ／ライタ２５０に識別子と署名データが送信されて、リーダ／ライタ２５０内で識別子の署名検証が行われ、識別子の正当性が署名された場合のみリーダ／ライタに格納できるようにしてもよい。
【００９０】
図７に戻り、読み込み部２５８、特定部２６０、データ格納部２６２については、第１実施形態にかかる読み込み部２０８、特定部２１０、データ格納部２１２と同様の機能を有するため、詳細な説明は省略する。本実施形態においては、正当性が証明された識別子のみが記憶部２６４に格納されているため、記憶部２６４に格納された識別子を削除する必要はない。
【００９１】
以上、本実施形態にかかる認証制御装置１５０およびリーダ／ライタ２５０の機能構成について説明した。次に、図９を参照して、認証システム１５における認証方法について説明する。図９は、認証システム１５における認証方法を示すタイミングチャートである。
【００９２】
図９に示したように、認証制御装置１５０は、リーダ／ライタ２５０に識別子と署名データを送信する（Ｓ２０２）。ステップＳ２０２において識別子と署名データを送信されたリーダ／ライタ２５０は、公開鍵を用いて署名データを検証して、識別子が正当であるか否かを判断する（Ｓ２０４）。ステップＳ２０４において、署名データの検証の結果、識別子が正当であると判断された場合に、識別子を記憶部２６４に格納する（Ｓ２０６）。上記したように、ステップＳ２０２〜ステップＳ２０６は、認証制御装置１５０が、リーダ／ライタ２５０を介してＩＣチップ３５０にデータの書き込みを行う以前に予めなされる必要がある。
【００９３】
リーダ／ライタ２５０の記憶部に安全に識別子を格納するために、識別子を格納するための登録ツールを利用してもよい。例えば、識別子が外部接続された識別子発行サーバにより発行される場合には、識別子の登録や変更を行うためのパッケージを用いて登録するようにしてもよい。パッケージには、識別子を記憶している領域にアクセス可能なアクセスキーや変更前の旧識別子、変更後の新識別子および署名データが含まれる。認証制御装置１５０は、パッケージおよびパッケージに含まれる識別子をリーダ／ライタ２５０の記憶部２６４に格納するための登録ツールを用いて、署名データを検証して正当性が証明された識別子を記憶部２６４に格納する。これにより、識別子を安全かつ確実に検証してリーダ／ライタ２５０に格納することができるため、セキュリティの向上を図ることができる。
【００９４】
上記したように、ステップＳ２０２〜Ｓ２０６までの処理が予め行われた後に、認証制御装置１５０は、リーダ／ライタ２５０を介してＩＣチップ３５０にデータの書き込みを行う。認証制御装置１５０は、リーダ／ライタ２５０に相互認証コマンドを送信して、認証制御装置１５０とリーダ／ライタ２５０との間で相互認証がなされる（Ｓ２０８）。
【００９５】
ステップＳ２０８において相互認証がなされた後に、認証制御装置１５０は、リーダ／ライタ２５０とＩＣチップ３５０との間の相互認証を行うようリーダ／ライタ２５０に指示する（Ｓ２１０）。ステップＳ２１０において、ＩＣチップ３５０との相互認証を指示されたリーダ／ライタ２５０は、認証コマンド等の所定のコマンドを送信することにより、ＩＣチップ３５０との間で相互認証を行う（Ｓ２１２）。ステップＳ２１２において正しく相互認証が行われたことが、リーダ／ライタ２５０を介して認証制御装置１５０に通知される（Ｓ２１４、Ｓ２１６）。
【００９６】
ステップＳ２１６において、リーダ／ライタ２５０とＩＣチップ３５０との間で正しく認証が行われたことが通知されると、認証制御装置１５０は、ＩＣチップ３５０にデータを書き込むための所定の書き込みコマンドをリーダ／ライタ２５０に送信する（Ｓ２１８）。ステップＳ２１８において認証制御装置１５０から書き込みコマンドを送信されたリーダ／ライタ２５０は、ＩＣチップ３５０から識別子格納領域を読み込む（Ｓ２２０、Ｓ２２２）。
【００９７】
そして、リーダ／ライタ２５０の記憶部２６４の識別子格納テーブルに格納された識別子を参照する（Ｓ２２４）。ステップＳ２２２において読み込まれたＩＣチップ３５０の識別子格納領域のなかから、ステップＳ２２４において参照した識別子に対応するデータ格納領域を特定する（Ｓ２２５）。ステップＳ２２５において特定されたデータ格納領域に対して、データの書き込みや書き換えを行う（Ｓ２２６、Ｓ２２８）。そして、リーダ／ライタ２５０は、正しくデータの書き換えが行われたことを認証制御装置１５０に通知する（Ｓ２３０）。
【００９８】
以上、認証システム１５における認証方法について説明した。以上、第３実施形態にかかる認証システム１５について説明した。認証システム１５によれば、リーダ／ライタ２５０には、事前に正当性が証明された識別子が格納される。したがって、認証制御装置１５０がリーダ／ライタ２５０を介してＩＣチップ３５０のデータの書き換えを行う際には、識別子の正当性を検証することなく、識別子に対応するデータ格納領域にデータの書き換えを行うことができる。
【００９９】
本実施形態においても、第１、第２実施形態と同様に、データ格納領域の各々が識別子により識別され、正当性が証明された識別子に対応するデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御をすることが可能となる。リーダ／ライタ２５０が、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなり、セキュリティが向上する。
【０１００】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【０１０１】
【図１】本発明の第１の実施形態にかかる認証システムの構成例を示した説明図である。
【図２】同実施形態にかかる認証制御装置、リーダ／ライタの機能構成を示すブロック図である。
【図３Ａ】同実施形態にかかるＩＣチップのデータ格納領域および各データ格納領域を識別する識別子について説明する説明図である。
【図３Ｂ】同実施形態にかかるＩＣチップのデータ格納領域および各データ格納領域を識別する識別子について説明する説明図である。
【図４】同実施形態にかかる認証方法を示すタイミングチャートである。
【図５】本発明の第２の実施形態にかかるリーダ／ライタの記憶部の記憶内容を説明する説明図である。
【図６】同実施形態にかかる認証方法を示すタイミングチャートである。
【図７】本発明の第３の実施形態にかかる認証制御装置、リーダ／ライタの機能構成を示すブロック図である。
【図８】同実施形態にかかるリーダ／ライタの記憶部の記憶内容を説明する説明図である。
【図９】同実施形態にかかる認証方法を示すタイミングチャートである。
【符号の説明】
【０１０２】
１００、１００′、１５０    認証制御装置
１０４    識別子送信部
１０６    書き込み指示部
２００、２００′、２５０    リーダ／ライタ
２０４    識別子検証部
２０６    検証結果保持部
２０８    読み込み部
２１０    特定部
２１２    データ格納部
２１４    検証結果削除部
３００    情報処理端末
３５０    ＩＣチップ
【図１】
0005133743.tif 000002
【図２】
0005133743.tif 000003
【図３Ａ】
0005133743.tif 000004
【図３Ｂ】
0005133743.tif 000005
【図４】
0005133743.tif 000006
【図５】
0005133743.tif 000007
【図６】
0005133743.tif 000008
【図７】
0005133743.tif 000009
【図８】
0005133743.tif 000010
【図９】
0005133743.tif 000011