説明

認証システム、認証方法、リーダ/ライタおよびプログラム

【課題】1のアクセス情報に関連付けられた複数のデータ格納領域の各々にアクセス制限をする。
【解決手段】認証制御装置100が識別子を送信する識別子送信部104と、リーダ/ライタにICチップへのデータ書き込み指示をする書き込み指示部106と、リーダ/ライタは、送信された識別子の正当性を検証する識別子検証部204と、検証された識別子および識別子の検証結果を保持する検証結果保持部206と、書き込み指示部の指示に応じて、ICチップに記憶された識別子格納領域を読み込む読み込み部208と、識別子格納領域のなかから、正当性を有するとして検証結果保持部に保持された識別子に対応するデータ格納領域を特定する特定部210と、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部212と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証システム、認証方法、リーダ/ライタおよびプログラムに関し、特に、複数のデータ格納領域の各々にアクセス制限をすることが可能な認証システム、認証方法、リーダ/ライタおよびプログラムに関する。
【背景技術】
【0002】
近年、携帯電話などの携帯端末装置に非接触通信可能なICチップが搭載され、リーダ/ライタと非接触式に通信を行って、外部装置との間でデータの送受信をすることが行われている。特に最近は、電子マネーやプリペイドカードの代わりとしてだけでなく、電子チケットやクーポン、ドアロックのキーなどとしてもICチップを搭載した携帯端末装置が利用されている。チケットやクーポン等としてICチップを搭載した携帯端末装置を利用する場合には、チケット発行サーバが、チケットの発行とともに電子署名を生成する。そして、チケットを利用する際に、電子署名を用いてチケットの正当性を検証することが可能となる。
【0003】
しかし、当該チケットが交通機関の乗車券であった場合には、チケット情報に電子署名を施すと改札処理に時間を要するという問題があった。そこで、ICチップのメモリ領域に電子署名が施されたチケット情報を記憶する第1の領域と電子署名が施されていない第2の記憶領域とを備えて、第1の記憶領域は携帯端末装置のアクセスを可能にし、第2の記憶領域はチケット発行サーバのみアクセス可能とすることにより、セキュリティを保持したまま利便性を向上させる技術が開示されている(例えば、特許文献1)。
【0004】
上記第2の記憶領域は、チケット発行サーバ等の管理サーバのみがアクセス可能となるため、第2の記憶領域にアクセスするためのアクセス情報を用いて実データを格納するデータ格納領域にアクセスするメモリ構成となっている。アクセス情報にはアクセスキーやアクセス方法などが設定されており、当該アクセス情報に複数のデータ格納領域が関連付けられている。管理サーバは、当該アクセス情報を用いてデータ格納領域にアクセスして、チケットの発行情報を格納したり、データの更新を行ったりする。
【0005】
【特許文献1】特開2005−149038号公報
【特許文献1】特開2005−330779号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかし、管理サーバだけでなく、携帯端末装置と非接触通信を行うリーダ/ライタからデータの更新等を行う場合には、アクセス情報に関連付けられたすべてのデータ格納領域にアクセスすることが可能となってしまうという問題があった。データ格納領域には、異なる事業者により発行されたチケット等が格納されている。したがって、アクセス情報に含まれるアクセスキーを保有したリーダ/ライタを使用すると、アクセス情報に関連付けられたすべてのデータ格納領域に変更が可能となってしまい、他事業者が提供するデータが改ざんされてしまうという問題があった。
【0007】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、1のアクセス情報に関連付けられた複数のデータ格納領域の各々にアクセス制限をすることが可能な認証システム、認証方法、リーダ/ライタおよびプログラムを提供することにある。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明のある観点によれば、ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、リーダ/ライタと接続可能な認証制御装置とを備える認証システムが提供される。上記ICチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。
【0009】
上記認証制御装置は、識別子を送信する識別子送信部と、リーダ/ライタにICチップへのデータ書き込み指示をする書き込み指示部と、を備える。上記リーダ/ライタは、識別子送信部により送信された識別子の正当性を検証する識別子検証部と、識別子検証部により検証された識別子および識別子の検証結果を保持する検証結果保持部と、書き込み指示部の指示に応じて、ICチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、正当性を有するとして検証結果保持部に保持された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【0010】
かかる構成によれば、認証制御装置が識別子を送信し、リーダ/ライタが当該識別子の正当性を検証して、当該識別子と検証結果とを保持する。リーダ/ライタは、認証制御装置からのデータ書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込み、識別子格納領域のなかから、リーダ/ライタに保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納する。
【0011】
これにより、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御が可能となるとともに、正当な識別子であった場合にデータ格納領域のデータを更新可能とするため、データの改ざんを防止することができる。
【0012】
また、認証制御装置に備わる識別子送信部は、識別子とともに署名データを送信し、リーダ/ライタに備わる識別子検証部は、予めリーダ/ライタに記憶されている公開鍵を用いて署名データを検証するようにしてもよい。かかる構成によれば、識別子とともに送信された署名データを、公開鍵を用いて検証して、識別子が正当であるか否かの判断をすることができる。これにより、識別子が正当であった場合にのみ識別子に対応するデータ格納領域のデータを更新可能とすることができるため、データの改ざんを防止することができる。
【0013】
また、リーダ/ライタには、複数の暗号化された識別子と、暗号化された識別子に対応する複数の共通鍵とが記憶されており、認証制御装置に備わる識別子送信部は、リーダ/ライタに記憶された暗号化された識別子と共通鍵の記憶位置の情報とを送信し、リーダ/ライタに備わる識別子検証部は、識別子送信部に送信された記憶位置の情報に基づいて、記憶された共通鍵を用いて暗号化された識別子を復号するようにしてもよい。かかる構成によれば、認証制御装置に指定された暗号化された識別子を指定された共通鍵で復号して、正しく復号できたか否かにより、識別子の正当性を判断することが可能となる。すなわち、暗号化された識別子が正しく復号された場合に識別子に対応するデータ格納領域にデータを書き込みすることが可能となるため、データの改ざんを防止することができる。
【0014】
また、リーダ/ライタは、データ格納領域にデータが格納された後に、検証結果保持部に保持された識別子および識別子の検証結果を削除する検証結果削除部をさらに備えてもよい。かかる構成によれば、格納された識別子と識別子の検証結果とを削除して、データの改ざんを防止するとともに、セキュリティを向上することができる。検証結果削除部による識別子と検証結果を削除するタイミングは、認証制御装置とリーダ/ライタとの相互認証が切断された場合や、リーダ/ライタの電源が切断された場合であってもよい。また、ICチップに1回または数回データの書き込みをした後に削除するようにしてもよい。
【0015】
また、ICチップに記憶されている複数のデータ格納領域は、データ格納領域の各々へのアクセス情報が設定された1の論理アクセス子に関連付けられており、論理アクセス子には、論理アクセス子に関連付けられた複数のデータ格納領域にアクセスするための鍵情報が含まれていてもよい。論理アクセス子に複数のデータ格納領域が関連付けられており、データ格納領域にアクセスするための鍵情報をリーダ/ライタが有している場合においても、データ格納領域単位でのアクセスが可能となる。
【0016】
認証制御装置に備わる識別子送信部は、認証制御装置とリーダ/ライタとの相互認証がなされた後に識別子を送信するようにしてもよい。かかる構成により、認証制御装置とリーダ/ライタとの相互認証が行われた後に識別子が送信されるため、よりセキュリティを向上してデータの改ざんを防止することができる。
【0017】
上記課題を解決するために、本発明の別の観点によれば、ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、リーダ/ライタと接続可能な認証制御装置とを用いて実現された認証方法が提供される。ICチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。上記認証方法は、認証制御装置が、識別子を送信するステップと、リーダ/ライタが、送信された識別子の正当性を検証するステップと、検証された識別子および識別子の検証結果を保持するステップと、認証制御装置が、リーダ/ライタにICチップへのデータ書き込みを指示するステップと、リーダ/ライタが、認証制御装置からのデータ書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込むステップと、読み込まれた識別子格納領域のなかから、正当性を有するとして保持された識別子に対応するデータ格納領域を特定するステップと、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するステップと、を含む。
【0018】
上記課題を解決するために、本発明の別の観点によれば、ICチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ/ライタが提供される。上記ICチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。上記リーダ/ライタは、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部により検証された識別子および識別子の検証結果を保持する検証結果保持部と、認証制御装置の書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、正当性を有するとして検証結果保持部に保持された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【0019】
上記課題を解決するために、本発明の別の観点によれば、コンピュータを、ICチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ/ライタであって、ICチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部により検証された識別子および識別子の検証結果を保持する検証結果保持部と、認証制御装置の書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、正当性を有するとして検証結果保持部に保持された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備えるリーダ/ライタとして機能させるための、プログラムが提供される。
【0020】
上記課題を解決するために、本発明の別の観点によれば、ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、リーダ/ライタと接続可能な認証制御装置とを備える認証システムが提供される。上記ICチップには、複数のデータ格納領域と複数のデータ格納領域へのアクセス情報とが関連付けられ、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。認証制御装置は、識別子を送信する識別子送信部と、リーダ/ライタにICチップへのデータ書き込みを指示する書き込み指示部と、を備える。上記リーダ/ライタは、署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部と、識別子送信部により送信された識別子の正当性を検証する識別子検証部と、識別子検証部の検証の結果、識別子が正当であった場合に識別子を記憶部の第1の領域に格納する識別子格納部と、書き込み指示部の指示に応じて、ICチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【0021】
かかる構成によれば、リーダ/ライタには、事前に正当性が証明された識別子が格納され、リーダ/ライタは、認証制御装置からの書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込み、識別子格納領域のなかから、リーダ/ライタに保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納する。
【0022】
これにより、認証制御装置がリーダ/ライタを介してICチップのデータの書き換えを行う際には、識別子の正当性を検証することなく、識別子に対応するデータ格納領域にデータの書き換えを行うことができる。また、データ格納領域の各々が識別子により識別され、正当性が証明された識別子に対応するデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御をすることが可能となる。リーダ/ライタが、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなる。
【0023】
また、認証制御装置に備わる識別子送信部は、識別子とともに署名データを送信し、リーダ/ライタに備わる識別子検証部は、予めリーダ/ライタに記憶されている公開鍵を用いて署名データを検証するようにしてもよい。
【0024】
また、認証制御装置に備わる識別子送信部は、暗号化された識別子を送信し、リーダ/ライタに備わる識別子検証部は、予めリーダ/ライタに記憶されている共通鍵を用いて暗号化された識別子を復号するようにしてもよい。
【0025】
また、ICチップに記憶されている複数のデータ格納領域は、データ格納領域の各々へのアクセス情報が設定された1の論理アクセス子に関連付けられており、論理アクセス子には、論理アクセス子に関連付けられた複数のデータ格納領域にアクセスするための鍵情報が含まれていてもよい。
【0026】
上記課題を解決するために、本発明の別の観点によれば、ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、リーダ/ライタと接続可能な認証制御装置とを用いて実現された認証方法が提供される。ICチップには、複数のデータ格納領域と複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されている。また、リーダ/ライタは、署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部を有している。上記認証方法は、認証制御装置が、識別子を送信する識別子送信するステップと、リーダ/ライタが、識別子送信部により送信された識別子の正当性を検証するステップと、識別子の検証の結果、識別子が正当であった場合に識別子を記憶部の第1の領域に格納するステップと、認証制御装置が、リーダ/ライタにICチップへのデータ書き込みを指示するステップと、リーダ/ライタが、認証制御装置からのデータ書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込むステップと、読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定するステップと、特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するステップと、を含む。
【0027】
上記課題を解決するために、本発明の別の観点によれば、ICチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ/ライタが提供される。 ICチップには、複数のデータ格納領域と複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されている。上記リーダ/ライタは、署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部と、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部の検証の結果、識別子が正当であった場合に識別子を記憶部の第1の領域に格納する識別子格納部と、認証制御装置の書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備える。
【0028】
上記課題を解決するために、本発明の別の観点によれば、コンピュータを、ICチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ/ライタであって、ICチップには、複数のデータ格納領域と複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部と、認証制御装置から送信される、識別子の正当性を検証する識別子検証部と、識別子検証部の検証の結果、識別子が正当であった場合に識別子を記憶部の第1の領域に格納する識別子格納部と、認証制御装置の書き込み指示に応じて、ICチップに記憶された識別子格納領域を読み込む読み込み部と、読み込み部により読み込まれた識別子格納領域のなかから、記憶部に記憶された識別子に対応するデータ格納領域を特定する特定部と、特定部により特定されたデータ格納領域に、認証制御装置に書き込み指示されたデータを格納するデータ格納部と、を備えるリーダ/ライタとして機能させるための、プログラムが提供される。
【発明の効果】
【0029】
以上説明したように本発明によれば、1のアクセス情報に関連付けられた複数のデータ格納領域の各々にアクセス制限をすることができる。
【発明を実施するための最良の形態】
【0030】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0031】
(第1の実施形態)
まず、本発明の第1の実施形態にかかる認証システムの概要について説明する。図1は、本実施形態にかかる認証システム10の構成例を示した説明図である。図1に示したように、認証システム10は、認証制御装置100と、リーダ/ライタ200と、情報処理端末300などを含んで構成される。
【0032】
認証制御装置100は、リーダ/ライタ200を介して情報処理端末300に搭載されたICチップにデータの更新要求を送信する。認証制御装置100としては、例えばPC(Personal Computer)等を例示できる。認証制御装置100とリーダ/ライタ200とは、一体の装置として構成されていてもよいし、認証制御装置100とリーダ/ライタ200とが別体の装置として構成され、ケーブルで接続されていてもよい。また、認証制御装置100は、独立してデータの更新要求等を通知するようにしてもよいし、インターネット等のネットワークを介してサーバ装置等に接続され、サーバ装置等の要求に応じてデータの更新要求等をするようにしてもよい。
【0033】
リーダ/ライタ200は、情報処理端末300のICチップとの間で非接触式に無線通信を行って、認証制御装置100からのデータの更新要求等に応じてICチップのデータの更新等をする機能を有する。また、ICチップへのアクセス情報を有しており、認証制御装置100の指示のもと、当該アクセス情報を用いてICチップにアクセスすることができる。
【0034】
情報処理端末300は、ICチップを搭載した携帯端末である。以下では情報処理端末300の一例として、ICチップを搭載した携帯電話を本発明の情報処理端末に適用して説明するがかかる例に限定されない。情報処理端末300は、携帯電話、PDA(Personal Digital Assistant)、携帯用ゲーム機器、時計などであってもよい。
【0035】
情報処理端末300に搭載されるICチップは、非接触通信可能であり、認証制御装置100とリーダ/ライタ200を介して接続され、認証制御装置100からのデータの更新要求を受信したり、データの更新を行ったりする。ICチップは、主に、10cm程度の狭い範囲内のみにおいて非接触式に通信を行うことができる、13.56MHzのRF搬送波周波数と100〜400Kbpsの通信速度を有する近距離無線規格(NFC:Near Field Communication)に沿って行われる。情報処理端末300は、ICチップを内蔵していてもよいし、ICチップ搭載のICカードを挿入可能なカードスロットを備え、カードスロットに挿入されたICカードとリーダ/ライタ200との間で無線通信が行われるようにしてもよい。
【0036】
ICチップには、複数のデータ格納領域と、複数のデータ格納領域へのアクセス情報(以下、論理アクセス子ともいう。)とが関連付けられて記憶されている。また、複数のデータ格納領域の各々と、複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されている。従来、論理アクセス子のみを用いてデータ格納領域にアクセスするようにしていた。論理アクセス子には、データ格納領域にアクセスするためのアクセスキーやアクセス方法等が含まれている。したがって、論理アクセス子に含まれるアクセスキーを有していれば、論理アクセス子に関連付けられたすべてのデータ格納領域にアクセスすることが可能となる。
【0037】
しかし、データ格納領域に異なる事業者により発行されたチケットが格納されている場合には、1つのアクセスキーを有していれば複数のデータ格納領域にアクセスすることが可能となり、他事業者が提供するデータが改ざんされてしまうという問題があった。例えば、ICチップに格納されたデータをチケット発行サーバ等の管理サーバのみだけでなく、リーダ/ライタ200においても更新する場合には、リーダ/ライタ200にアクセスキーを保有する必要がある。この場合、アクセスキーを保有したリーダライタを使用すると、アクセス情報に関連付けられたすべてのデータ格納領域の変更が可能となってしまう。
【0038】
そこで、本実施形態においては、複数のデータ格納領域の各々と複数のデータ格納領域の各々を識別する識別子とを関連付けて格納することにより、データ格納領域毎にアクセス制限をすることを可能とした。また、当該識別子の正当性の検証を行うことにより、データ格納領域単位でのアクセス制限の下におけるデータの改ざんを防止することが可能となる。
【0039】
以上、認証システム10の概要を説明した。次に、本実施形態にかかる認証システム10の認証制御装置100、リーダ/ライタ200の詳細な構成を説明する。
【0040】
図2は、認証制御装置100、リーダ/ライタ200の機能構成を示すブロック図である。図2に示したように、認証制御装置100は、記憶部102、識別子送信部104、書き込み指示部106などを備える。識別子送信部104は、情報処理端末300に搭載されたICチップ350のデータ格納領域の各々を識別する識別子をリーダ/ライタ200に送信する機能を有する。
【0041】
ここで、図3Aおよび図3Bを参照して、ICチップ350のデータ格納領域および各データ格納領域を識別する識別子について説明する。図3Aに示したように、チケット等の実データが格納される複数のデータ格納領域352は、論理アクセス子Aに関連付けられている。論理アクセス子とは、データ格納領域へのアクセス方法(Read−Only、Read−Writeなど)やアクセス権限(アクセスキー)などが設定されたメモリ領域であり、一つの論理アクセス子に複数のデータ格納領域を関連付けることができる。
【0042】
上記したように、従来は、論理アクセス子を介してデータ格納領域にアクセスしていた。例えば、論理アクセス子Aに含まれるアクセスキーを保有していれば、論理アクセス子Aに関連付けられたデータ格納領域0〜7のすべてにアクセスすることが可能であった。本実施形態においては、図3Bに示したように、データ格納領域0〜7の各々を識別する識別子361とデータ格納領域の位置情報を示すデータ格納領域のインデックス362を関連付けて、データ格納領域毎にアクセスを制御することを可能としている。
【0043】
図2に戻り、上記したように、識別子送信部104は、ICチップ350の各データ格納領域を識別する識別子を送信する。認証制御装置100は、予め、外部の識別子発行サーバと接続して、識別子発行サーバから発行されたICチップ350に書き込み可能なデータ格納領域の識別子を発行してもらい、当該識別子を記憶部102に記憶しておくようにしておいてもよい。ここで、認証制御装置100が保有している識別子が、識別子発行サーバから発行された正当な識別子であることを証明することにより、データ格納領域単位でのアクセス制御下でのデータの改ざんを防ぐことが可能となる。
【0044】
識別子の正当性を証明する方法として、署名データが付された識別子を発行し、署名データと識別子を対にして認証制御装置100に保有する方法を例示することができる。具体的には、記憶部102に識別子と当該識別子の正当性を証明するための署名データとを記憶する。識別子送信部104は、ICチップ350にデータを格納するために、データ格納領域の識別子と署名データとをリーダ/ライタ200に送信する。また、認証制御装置100とリーダ/ライタ200とが接続する際に、相互認証を行う場合には、相互認証を行う際に識別子および署名データをリーダ/ライタ200に送信するようにしてもよい。
【0045】
書き込み指示部106は、リーダ/ライタ200にICチップへのデータ書き込みを指示する機能を有する。例えば、writeコマンド等の所定のデータ書き込みコマンドをリーダ/ライタ200に送信することにより書き込みを指示するようにしてもよい。当該書き込み指示は、識別子送信部104により識別子および署名データの送信が行われた後に行われる。
【0046】
以上、認証制御装置100の機能構成について説明した。次に、リーダ/ライタ200の機能構成について説明する。図2に示したように、リーダ/ライタ200は、識別子受信部202、識別子検証部204、検証結果保持部206、読み込み部208、特定部210、データ格納部212、検証結果削除部214、記憶部216などを備える。識別子受信部202は、認証制御装置100の識別子送信部104から送信された識別子と署名データを受信する機能を有する。識別子受信部202は、受信した識別子と署名データを識別子検証部に提供する。
【0047】
識別子検証部204は、識別子受信部202により送信された識別子の正当性を検証する機能を有する。上記したように、識別子とともに署名データが送信される場合には、送信された署名データを用いて識別子の正当性を検証するようにしてもよい。この場合、記憶部216に予め署名データを検証するための公開鍵を記憶しておく。識別子検証部204は、記憶部216に記憶された公開鍵を取得して、当該公開鍵を用いて識別子とともに送信された署名データの検証を行うことにより、識別子の正当性を検証することが可能となる。識別子検証部204は、検証した識別子と検証結果とを検証結果保持部206に提供する。
【0048】
検証結果保持部206は、識別子検証部204により検証された識別子と検証結果とを保持する機能を有する。検証結果保持部206は、検証された識別子と検証結果とを記憶部216に記憶するようにしてもよい。また、検証結果保持部206は検証された識別子と検証結果とを特定部210に提供する。このとき、検証結果が正当である場合に識別子を保持して、当該識別子のみを特定部210に提供するようにしてもよい。
【0049】
読み込み部208は、認証制御装置100の書き込み指示部106によりデータの書き込み指示に応じて、ICチップ350に記憶された識別子格納領域を読み込む機能を有する。上記したように、ICチップ350は、論理アクセス子に関連付けられたデータ格納領域を有している。論理アクセス子が複数ある場合には、各々の論理アクセス子に複数のデータ格納領域が関連付けられることとなる。また、ICチップ350は、各データ格納領域が識別子により識別され、当該識別子と各データ格納領域の位置情報を示すデータ格納領域とが関連付けられた識別子格納領域を有している。読み込み部208は、当該識別子格納領域を読み込み、特定部210に提供する。
【0050】
特定部210は、読み込み部208に読み込まれた識別子格納領域のなかから、検証結果保持部206に保持された識別子に対応するデータ格納領域を特定する機能を有する。上記したように、読み込み部208により読み込まれた識別子格納領域には、識別子とデータ格納領域の位置情報とが関連付けられている。したがって、検証結果保持部206から提供された識別子に関連付けられたデータ格納領域の位置情報を取得することにより、データを書き込み可能なデータ格納領域を特定することできることとなる。特定部210は、特定したデータ格納領域の位置情報をデータ格納部212に提供する。
【0051】
データ格納部212は、特定部210に提供されたデータ格納領域の位置情報に基づいて、認証制御装置100から書き込み指示されたデータを該当するデータ格納領域に書き込む機能を有する。このように、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセス可能とすることにより、データ格納領域単位でのアクセス制御をすることが可能となる。また、論理アクセス子に複数のデータ格納領域が関連付けられ、リーダ/ライタ200が、論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域のすべてにアクセスして書き換えることによるデータの改ざんを防止することが可能となる。
【0052】
検証結果削除部214は、データ格納部212によりICチップ350にデータが格納された場合に、記憶部216に保持している識別子と検証結果とを削除して初期化する機能を有する。検証結果削除部214による識別子と検証結果の削除は、例えば、リーダ/ライタ200の電源が切断された場合や、認証制御装置100との接続が切断された場合に行うようにしてもよい。また、所定期間毎に削除するようにしてもよいし、ICチップ350に1回または数回書き込みした後に削除するようにしてもよい。
【0053】
以上、リーダ/ライタ200の機能構成について説明した。次に、図4を参照して、認証システム10における認証方法について説明する。図4は、認証システム10における認証方法を示すタイミングチャートである。
【0054】
図4に示したように、認証制御装置100は、リーダ/ライタ200に相互認証コマンドを送信する(S102)。ステップS102において、識別子および署名データが送信される。認証制御装置100は、複数の識別子および各々の識別子に対応した署名データを送信するようにしてもよい。ステップS102において、認証制御装置100から相互認証コマンドが送信されると、認証制御装置100とリーダ/ライタ200との相互認証がなされる(S104)。
【0055】
ステップS104において相互認証がなされた後に、リーダ/ライタ200は、ステップS102において送信された署名データの検証を行う。上記したように、署名データの検証は、記憶部216に記憶された公開鍵を用いて行われる。正しく署名データの検証が行われた場合には、認証制御装置100から送信された識別子が正当なものであると判断される。すなわち、認証制御装置200がサービス事業者の装置であった場合、識別子の正当性を検証することにより、ICチップ350にデータを書き込みしようとするサービス事業者が識別子に対応するデータ格納領域にアクセス可能な事業者であることを証明することができることとなる。
【0056】
そして、ステップS106で検証された検証結果と、識別子とを保存する(S108)。検証結果は、識別子に対応付けて保存し、正しく検証できたか否かが保存される。識別子の正当性を検証することにより、データ格納領域単位でのアクセス制御が可能となるだけでなく、識別子が正当である場合に、ICチップ350のデータを更新可能とし、正当ではない場合にICチップ350のデータを更新不可能とするように、データの改ざんを防ぐことも可能となる。リーダ/ライタ200は、識別子の検証を行い、該検証の結果を保存したことを認証制御装置100に通知する(S110)。
【0057】
そして、認証制御装置100は、リーダ/ライタ(R/W)200とICチップ350との間の相互認証を行うようリーダ/ライタ200に指示する(S112)。ステップS112において、ICチップ350との相互認証を指示されたリーダ/ライタ200は、認証コマンド等の所定のコマンドを送信することにより、ICチップ350との間で相互認証を行う(S114)。ステップS114において正しく相互認証が行われたことが、リーダ/ライタ200を介して認証制御装置100に通知される(S116、S118)。
【0058】
ステップS118において、リーダ/ライタ200とICチップ350との間で正しく認証が行われたことが通知されると、認証制御装置100は、ICチップ350にデータを書き込むための所定の書き込みコマンドをリーダ/ライタ200に送信する(S120)。ステップS120において認証制御装置100から書き込みコマンドを送信されたリーダ/ライタ200は、ICチップ350から識別子格納領域を読み込む(S122、S124)。
【0059】
上記したように、複数のデータ格納領域は論理アクセス子に関連付けられており、リーダ/ライタ200は、論理アクセス子に含まれるアクセスキーを有しており、論理アクセス子に関連付けられた複数のデータ格納領域にアクセス可能となってしまう。本実施形態においては、論理アクセス子を介してアクセス可能な複数のデータ格納領域を識別する識別子が格納された識別子格納領域を読み込み、認証制御装置100から送信された識別子が正当であった場合に、識別子に対応するデータ格納領域にアクセス可能とすることとしている。
【0060】
ステップS124において読み込まれたICチップ350の識別子格納領域のなかから、ステップS108において保存された識別子に対応するデータ格納領域を特定する(S126)。ステップS126において特定されたデータ格納領域に対して、データの書き込みや書き換えを行う(S128、S130)。そして、リーダ/ライタ200は、正しくデータの書き換えが行われたことと認証制御装置100に通知する(S132)。
【0061】
その後、認証制御装置100とリーダ/ライタ200との相互認証切断イベント等があった場合(S134)に、保存された識別子と検証結果の初期化を行う(S136)。ステップS136における識別子と検証結果の初期化とは、ステップS108において保存された識別子と検証結果とを削除することをいう。上記したように、ステップS136における識別子と検証結果を削除するタイミングは、ステップS134の相互認証切断イベントだけでなく、リーダ/ライタ200の電源切断であってもよい。また、所定期間毎に初期化するようにしてもよいし、ICチップ350に1回または数回データの書き込みをした後に削除するようにしてもよい。
【0062】
以上、認証システム10における認証方法について説明した。以上、第1実施形態にかかる認証システム10について説明した。認証システム10によれば、認証制御装置100が識別子と署名データとをリーダ/ライタ200に送信し、リーダ/ライタ200が署名データの検証を行って、識別子の正当性を検証して当該識別子および検証結果を保持する。リーダ/ライタ200は、認証制御装置100からのデータ書き込み指示に応じて、ICチップ350に記憶された識別子格納領域を読み込み、識別子格納領域のなかから保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置100に書き込み指示されたデータを格納する。
【0063】
これにより、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御が可能となるとともに、リーダ/ライタ200が、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなり、セキュリティが向上する。
【0064】
第1実施形態では、識別子とともに署名データを送信して、署名データを用いて識別子の正当性を検証することとしていたが、かかる例に限定されず、共通鍵暗号方式を利用することもできる。共通鍵暗号方式を利用する場合には、認証制御装置100から暗号化された識別子をリーダ/ライタに送信し、予めリーダ/ライタに記憶された共通鍵で復号化を行うことにより本実施形態を実現することができる。また、識別子を暗号化して、リーダ/ライタ200に予め記憶させて、暗号化された識別子が正しく復号化された場合にのみ、データの書き込みをすることにより、第1実施形態と同様にデータ格納領域単位でのアクセス制限をすることが可能となる。第2実施形態では、暗号化された識別子がリーダ/ライタ200に記憶され、当該識別子を復号化して、識別子に対応するデータ格納領域にデータを書き込む場合を例示して説明する。
【0065】
(第2の実施形態)
まず、本発明の第2の実施形態にかかる認証システムの概要について説明する。本実施形態にかかる認証システム10′は、認証制御装置100′とリーダ/ライタ200′と情報処理端末300のICチップ350などを備える。認証システム10′の構成例は、第1の実施形態とほぼ同様であるため、詳細な説明は省略する。第1実施形態では、署名データを用いて識別子の正当性検証を行っていたが、本実施形態においては、共通鍵を用いて暗号化された識別子を復号することにより、識別子の正当性を検証する。認証システム10′のリーダ/ライタ200′には、暗号化された識別子と共通鍵とが記憶されることとなる。記憶された共通鍵が漏えいした場合には、署名データを用いて検証を行う場合に比べて、セキュリティに対する影響が大きいこととなる。
【0066】
暗号化された識別子と識別子を復号するための鍵をリーダ/ライタに記憶する本実施形態において、第1実施形態と同様に公開鍵方式を利用することも可能である。しかしながら、公開鍵方式を利用して暗号化された識別子を復号する場合には、共通鍵方式で復号する場合に比べて処理速度が遅くなってしまう。本実施形態では、共通鍵方式を利用して暗号化された識別子を復号する場合を例示して説明する。
【0067】
本実施形態にかかる認証システム10′の認証制御装置100′およびリーダ/ライタ200′の機能構成は、第1実施形態の認証制御装置100およびリーダ/ライタ200とほぼ同様のため、詳細な説明は省略する。本実施形態では、上記したように、予め、リーダ/ライタ200′に共通鍵と暗号化された識別子が格納されている。図5を参照して、リーダ/ライタ200′の記憶部216′について説明する。図5は、リーダ/ライタ200′の記憶部216′の記憶内容を説明する説明図である。
【0068】
図5に示したように、記憶部216′の耐タンパ領域221内に、鍵格納テーブル222を有している。鍵格納テーブル222には、論理アクセス子の鍵223と、共通鍵224と、暗号化された識別子225が格納されている。論理アクセス子の鍵223は、第1実施形態と同様に、ICチップ350の複数のデータ格納領域にアクセス可能なアクセスキーである。共通鍵224は、認証制御装置100′とリーダ/ライタ200′との間で事前に用意された鍵ペアである。当該鍵ペアは、チケット等を発行するサービス事業者ごとに作成され、各耐タンパ領域に格納される。したがって、耐タンパ領域0(221)に格納される共通鍵A(224)と、耐タンパ領域15(226)に格納される共通鍵B(228)とは異なる共通鍵である。また、耐タンパ領域0(221)の識別子225は共通鍵A(224)で暗号化されており、耐タンパ領域15(226)の識別子229は共通鍵B(224)で暗号化されて、それぞれの耐タンパ領域に格納される。
【0069】
例えば、共通鍵224及び識別子225を、識別子を管理する識別子発行管理事業者が用意して、各サービス事業者によって共通鍵224を許可なく変更したり、識別子225を作成したりすることができないようにしてもよい。この場合、予め鍵格納テーブル222に格納される鍵を識別子発行(管理)事業者のみが知る鍵に登録した後に、サービス事業者がリーダ/ライタ200′を利用可能とする。
【0070】
また、鍵格納テーブル222の内容を変更するために、旧鍵、新鍵、耐タンパ領域の管理鍵の情報が格納されているパッケージを適用するようにしてもよい。パッケージに含まれる旧鍵と鍵格納テーブル222の旧鍵が一致していない場合には、鍵格納テーブル222の内容を変更することができないようにする。鍵格納テーブル222の鍵を変更するためには、識別子発行(管理)事業者がサービス事業者の鍵変更依頼を受けて、サービス事業者に鍵変更パッケージを渡す。これにより、サービス事業者独自の鍵では鍵格納テーブル222の鍵を変更することができないこととなり、セキュリティレベルを上げることが可能となる。
【0071】
上記したように、共通鍵224が漏えいするとセキュリティ上問題があるため、共通鍵224および暗号化された識別子225はリーダ/ライタ200′の耐タンパ領域に格納しておく必要がある。公開鍵暗号方式により本実施形態を実行する場合には、論理アクセス子とともに、公開鍵と識別子と署名データとをリーダ/ライタ200′に格納する。このとき、少なくとも署名データを耐タンパ領域に格納する必要がある。これにより他事業者に署名データが漏えいしてなりすましが起こる危険性を低減することができる。
【0072】
次に、図6を参照して、認証システム10′の認証方法について説明する。図6は、認証システム10′の認証方法について説明する。図6は、認証システム10′における認証方法を示すタイミングチャートである。
【0073】
図6に示したように、認証制御装置100′は、リーダ/ライタ200′に相互認証コマンドを送信する(S142)。ステップS142において、共通鍵のレコード番号および識別子のレコード番号が送信される。上記したように、旧鍵、新鍵、耐タンパ領域の管理鍵の情報が格納されているパッケージ等を利用することにより、チケット等を発行するサービス事業者は、許可なく共通鍵を変更することができないこととしている。また、リーダ/ライタ200′内で共通鍵が記憶されたレコード番号を固定とすることにより、認証制御装置100′からは識別子のレコード番号のみを送信して、サービス事業者により共通鍵が変更されるリスクを低減するようにしてもよい。ステップS142において、認証制御措置100′から相互認証コマンドが送信されると、認証制御装置100′とリーダ/ライタ200′との相互認証がなされる(S144)。
【0074】
ステップS144において相互認証がなされた後に、リーダ/ライタ200′は、ステップS142において送信された共通鍵のレコード番号に対応する共通鍵によって、送信された識別子のレコード番号に対応する暗号化された識別子を復号化する(S146)。上記したように、ステップS146において暗号化された識別子は、各耐タンパ領域に格納されている共通鍵で暗号化されている。公開鍵暗号方式の場合には、署名検証を行う。ステップS146において、暗号化された識別子が正しく復号された場合には、識別子が正当なものであると判断されることとなる。すなわち、認証制御装置200′がサービス事業者の装置であった場合、暗号化された識別子と当該識別子を復号するための共通鍵のレコード番号を正しく指定したことが証明され、サービス事業者が識別子に対応するデータ格納領域にアクセス可能な事業者であることを証明することができることとなる。
【0075】
そして、ステップS146において復号された識別子と、識別子が正しく復号された否か等の検証結果を保存する(S148)。識別子の正当性を検証することにより、データ格納領域単位でのアクセス制御が可能となるだけでなく、識別子が正当である場合に、ICチップ350のデータを更新可能とし、正当ではない場合にICチップ350のデータを更新不可能とするように、データの改ざんを防ぐことも可能となる。リーダ/ライタ200′は、識別子の検証を行い、該検証の結果を保存したことを認証制御装置100′に通知する(S150)。
【0076】
そして、認証制御装置100′は、リーダ/ライタ(R/W)200′とICチップ350との間の相互認証を行うようリーダ/ライタ200′に指示する(S152)。ステップS152において、ICチップ350との相互認証を指示されたリーダ/ライタ200′は、認証コマンド等の所定のコマンドを送信することにより、ICチップ350との間で相互認証を行う(S154)。ステップS154において正しく相互認証が行われたことが、リーダ/ライタ200′を介して認証制御装置100′に通知される(S156、S158)。
【0077】
ステップS158において、リーダ/ライタ200′とICチップ350との間で正しく認証が行われたことが通知されると、認証制御装置100′は、ICチップ350にデータを書き込むための所定の書き込みコマンドをリーダ/ライタ200′に送信する(S160)。ステップS160において認証制御装置100′から書き込みコマンドを送信されたリーダ/ライタ200′は、ICチップ350から識別子格納領域を読み込む(S162、S164)。
【0078】
上記したように、複数のデータ格納領域は論理アクセス子に関連付けられており、リーダ/ライタ200′は、論理アクセス子に含まれるアクセスキーを有しており、論理アクセス子に関連付けられた複数のデータ格納領域にアクセス可能となってしまう。本実施形態においては、論理アクセス子を介してアクセス可能な複数のデータ格納領域を識別する識別子が格納された識別子格納領域を読み込み、認証制御装置100′から送信された識別子が正しく復号された場合に、識別子に対応するデータ格納領域にアクセス可能とすることとしている。
【0079】
ステップS164において読み込まれたICチップ350の識別子格納領域のなかから、ステップS148において保存された識別子に対応するデータ格納領域を特定する(S166)。ステップS166において特定されたデータ格納領域に対して、データの書き込みや書き換えを行う(S168、S170)。そして、リーダ/ライタ200′は、正しくデータの書き換えが行われたことと認証制御装置100′に通知する(S172)。
【0080】
その後、認証制御装置100′とリーダ/ライタ200′との相互認証切断イベント等があった場合(S174)に、保存された識別子と検証結果の初期化を行う(S176)。ステップS176における識別子と検証結果の初期化とは、ステップS148において保存された識別子と検証結果とを削除することをいう。上記したように、ステップS176における識別子と検証結果を削除するタイミングは、ステップS174の相互認証切断イベントだけでなく、リーダ/ライタ200′の電源切断であってもよい。また、所定期間毎に初期化するようにしてもよいし、ICチップ350に1回または数回書き込みした後に削除するようにしてもよい。
【0081】
以上、認証システム10′における認証方法について説明した。以上、第2実施形態にかかる認証システム10′について説明した。認証システム10′によれば、リーダ/ライタ200′に予め共通鍵と暗号化された識別子が格納されており、認証制御装置100′が共通鍵と識別子のレコード番号をリーダ/ライタ200′に送信し、リーダ/ライタ200′が暗号化された識別子を復号化することにより識別子の正当性を検証して、当該識別子および検証結果を保持する。リーダ/ライタ200′は、認証制御装置100′からのデータ書き込み指示に応じて、ICチップ350に記憶された識別子格納領域を読み込み、識別子格納領域のなかから保持された識別子に対応するデータ格納領域を特定する。そして、特定されたデータ格納領域に、認証制御装置100′に書き込み指示されたデータを格納する。
【0082】
これにより、データ格納領域の各々が識別子により識別され、当該識別子の正当性が証明された場合のみデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御をすることを可能とする。リーダ/ライタ200′が、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなり、セキュリティが向上する。
【0083】
(第3実施形態)
次に、本発明の第3の実施形態にかかる認証システム15の概要について説明する。本実施形態にかかる認証システム15は、認証制御装置150、リーダ/ライタ250、情報処理端末300のICチップ350などを備える。認証システム15の構成例は、第1実施形態にかかる認証システム10の構成例とほぼ同様であるため、詳細な説明を省略する。本実施形態においては、リーダ/ライタ250に格納される識別子が予め検証され、正当性が証明された識別子のみが格納されている点で第1、第2実施形態と大きく異なっている。本実施形態においては、正当性が証明された識別子のみがリーダ/ライタ200に格納されている。よって、認証制御装置150が、リーダ/ライタ250を介してICチップ350にデータの書き込みを行う際に、識別子の検証を行うことなくICチップ350のデータ格納領域にアクセスできるため、書き込みの処理速度を速めることができる。
【0084】
図7を参照して、本実施形態にかかる認証システム15の認証制御装置150、リーダ/ライタ250の機能構成を説明する。図7は、本実施形態にかかる認証システム15の認証制御装置150、リーダ/ライタ250の機能構成を示すブロック図である。本実施形態においては、第1実施形態と異なる機能構成について主に説明する。
【0085】
図7に示したように、認証制御装置150は、記憶部152、識別子送信部154、書き込み指示部156などを備える。認証制御装置150は、第1実施形態の認証制御装置150とほぼ同様の機能構成である。ただし、認証制御装置150が、予め識別子と署名データをリーダ/ライタ250に送信する点で第1実施形態と異なっている。第1実施形態では、認証制御装置100から識別子と署名データがリーダ/ライタに送信された後に、リーダ/ライタ200にデータの書き込み指示がなされていたが、本実施形態においては、識別子と署名データの送信は、データの書き込み指示とは別に予め実行される。
【0086】
リーダ/ライタ250は、識別子受信部252と、識別子検証部254と、識別子格納部256と、読み込み部258と、特定部260と、データ格納部262と、記憶部264などを備える。本実施形態においては、第1実施形態と同様に、識別子検証部254が、認証制御装置150から送信された署名データを記憶された公開鍵を用いて検証し、識別子の正当性を検証する。そして、識別子格納部156は、識別子検証部254による検証の結果、識別子が正当であった場合に、識別子を記憶部264に格納する。本実施形態においては、署名データを用いて識別子の正当性を検証する方法について例示したが、かかる例に限定されず、第2実施形態と同様に、暗号化された識別子を共通鍵により復号して、識別子の正当性を検証してもよい。
【0087】
記憶部264は、署名検証の検証結果が正しいデータを登録する第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを有する。第1の領域は、例えば耐タンパ領域としてもよい。正当性が証明された識別子を耐タンパ領域に格納することにより、後に行われるICチップ350へのデータ書き込み処理の際にセキュリティを確保して、データ格納領域単位でのアクセス制御をすることが可能となる。
【0088】
図8は、リーダ/ライタ250の記憶部264の記憶内容について説明する説明図である。図8に示したように、記憶部264には、複数の耐タンパ領域271を有し、各耐タンパ領域271内に、鍵格納テーブル272と識別子格納テーブル274を有している。鍵格納テーブル272には、論理アクセス子の鍵273が格納され、識別子格納テーブル274には正当性が証明された識別子275が格納されている。このように、本実施形態においては、論理アクセス子の鍵と識別子とが別の領域に格納される。通常、耐タンパ領域の論理アクセス子の鍵を所有しているサービス事業者は、自由にレコードに登録するアクセスキーを変更することができる。論理アクセス子の鍵と同じ領域に識別子を格納した場合、サービス事業者によって登録された識別子も変更可能となってしまう。そこで、署名検証がなされていない場合は登録することができない領域を作り、該領域に識別子を格納する。これにより、耐タンパ領域の鍵を所有しているサービス事業者は、識別子格納テーブルの値を参照したり使用したりすることはできるが、署名検証することなく識別子を変更することはできないこととなり、サービス事業者によって識別子が変更されるリスクを低減している。
【0089】
また、識別子をリーダ/ライタに格納する際には、専用の登録ツールを使用するようにしてもよい。例えば、専用の登録ツールを使用して、リーダ/ライタ250に識別子と署名データが送信されて、リーダ/ライタ250内で識別子の署名検証が行われ、識別子の正当性が署名された場合のみリーダ/ライタに格納できるようにしてもよい。
【0090】
図7に戻り、読み込み部258、特定部260、データ格納部262については、第1実施形態にかかる読み込み部208、特定部210、データ格納部212と同様の機能を有するため、詳細な説明は省略する。本実施形態においては、正当性が証明された識別子のみが記憶部264に格納されているため、記憶部264に格納された識別子を削除する必要はない。
【0091】
以上、本実施形態にかかる認証制御装置150およびリーダ/ライタ250の機能構成について説明した。次に、図9を参照して、認証システム15における認証方法について説明する。図9は、認証システム15における認証方法を示すタイミングチャートである。
【0092】
図9に示したように、認証制御装置150は、リーダ/ライタ250に識別子と署名データを送信する(S202)。ステップS202において識別子と署名データを送信されたリーダ/ライタ250は、公開鍵を用いて署名データを検証して、識別子が正当であるか否かを判断する(S204)。ステップS204において、署名データの検証の結果、識別子が正当であると判断された場合に、識別子を記憶部264に格納する(S206)。上記したように、ステップS202〜ステップS206は、認証制御装置150が、リーダ/ライタ250を介してICチップ350にデータの書き込みを行う以前に予めなされる必要がある。
【0093】
リーダ/ライタ250の記憶部に安全に識別子を格納するために、識別子を格納するための登録ツールを利用してもよい。例えば、識別子が外部接続された識別子発行サーバにより発行される場合には、識別子の登録や変更を行うためのパッケージを用いて登録するようにしてもよい。パッケージには、識別子を記憶している領域にアクセス可能なアクセスキーや変更前の旧識別子、変更後の新識別子および署名データが含まれる。認証制御装置150は、パッケージおよびパッケージに含まれる識別子をリーダ/ライタ250の記憶部264に格納するための登録ツールを用いて、署名データを検証して正当性が証明された識別子を記憶部264に格納する。これにより、識別子を安全かつ確実に検証してリーダ/ライタ250に格納することができるため、セキュリティの向上を図ることができる。
【0094】
上記したように、ステップS202〜S206までの処理が予め行われた後に、認証制御装置150は、リーダ/ライタ250を介してICチップ350にデータの書き込みを行う。認証制御装置150は、リーダ/ライタ250に相互認証コマンドを送信して、認証制御装置150とリーダ/ライタ250との間で相互認証がなされる(S208)。
【0095】
ステップS208において相互認証がなされた後に、認証制御装置150は、リーダ/ライタ250とICチップ350との間の相互認証を行うようリーダ/ライタ250に指示する(S210)。ステップS210において、ICチップ350との相互認証を指示されたリーダ/ライタ250は、認証コマンド等の所定のコマンドを送信することにより、ICチップ350との間で相互認証を行う(S212)。ステップS212において正しく相互認証が行われたことが、リーダ/ライタ250を介して認証制御装置150に通知される(S214、S216)。
【0096】
ステップS216において、リーダ/ライタ250とICチップ350との間で正しく認証が行われたことが通知されると、認証制御装置150は、ICチップ350にデータを書き込むための所定の書き込みコマンドをリーダ/ライタ250に送信する(S218)。ステップS218において認証制御装置150から書き込みコマンドを送信されたリーダ/ライタ250は、ICチップ350から識別子格納領域を読み込む(S220、S222)。
【0097】
そして、リーダ/ライタ250の記憶部264の識別子格納テーブルに格納された識別子を参照する(S224)。ステップS222において読み込まれたICチップ350の識別子格納領域のなかから、ステップS224において参照した識別子に対応するデータ格納領域を特定する(S225)。ステップS225において特定されたデータ格納領域に対して、データの書き込みや書き換えを行う(S226、S228)。そして、リーダ/ライタ250は、正しくデータの書き換えが行われたことを認証制御装置150に通知する(S230)。
【0098】
以上、認証システム15における認証方法について説明した。以上、第3実施形態にかかる認証システム15について説明した。認証システム15によれば、リーダ/ライタ250には、事前に正当性が証明された識別子が格納される。したがって、認証制御装置150がリーダ/ライタ250を介してICチップ350のデータの書き換えを行う際には、識別子の正当性を検証することなく、識別子に対応するデータ格納領域にデータの書き換えを行うことができる。
【0099】
本実施形態においても、第1、第2実施形態と同様に、データ格納領域の各々が識別子により識別され、正当性が証明された識別子に対応するデータ格納領域にアクセスすることが可能となる。よって、データ格納領域単位でのアクセス制御をすることが可能となる。リーダ/ライタ250が、複数のデータ格納領域のアクセスを制御する論理アクセス子に含まれるアクセスキーを有している場合でも、データ格納領域毎にアクセス制限をすることができるため、データ格納領域のすべてにアクセスしてデータの改ざんをすることができなくなり、セキュリティが向上する。
【0100】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【0101】
【図1】本発明の第1の実施形態にかかる認証システムの構成例を示した説明図である。
【図2】同実施形態にかかる認証制御装置、リーダ/ライタの機能構成を示すブロック図である。
【図3A】同実施形態にかかるICチップのデータ格納領域および各データ格納領域を識別する識別子について説明する説明図である。
【図3B】同実施形態にかかるICチップのデータ格納領域および各データ格納領域を識別する識別子について説明する説明図である。
【図4】同実施形態にかかる認証方法を示すタイミングチャートである。
【図5】本発明の第2の実施形態にかかるリーダ/ライタの記憶部の記憶内容を説明する説明図である。
【図6】同実施形態にかかる認証方法を示すタイミングチャートである。
【図7】本発明の第3の実施形態にかかる認証制御装置、リーダ/ライタの機能構成を示すブロック図である。
【図8】同実施形態にかかるリーダ/ライタの記憶部の記憶内容を説明する説明図である。
【図9】同実施形態にかかる認証方法を示すタイミングチャートである。
【符号の説明】
【0102】
100、100′、150 認証制御装置
104 識別子送信部
106 書き込み指示部
200、200′、250 リーダ/ライタ
204 識別子検証部
206 検証結果保持部
208 読み込み部
210 特定部
212 データ格納部
214 検証結果削除部
300 情報処理端末
350 ICチップ

【特許請求の範囲】
【請求項1】
ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、前記リーダ/ライタと接続可能な認証制御装置とを備える認証システムであって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置は、
前記識別子を送信する識別子送信部と、
前記リーダ/ライタに前記ICチップへのデータ書き込み指示をする書き込み指示部と、
を備え、
前記リーダ/ライタは、
前記識別子送信部により送信された前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部により検証された前記識別子および前記識別子の検証結果を保持する検証結果保持部と、
前記書き込み指示部の指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、正当性を有するとして前記検証結果保持部に保持された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、認証システム。
【請求項2】
前記認証制御装置に備わる前記識別子送信部は、
前記識別子とともに署名データを送信し、
前記リーダ/ライタに備わる前記識別子検証部は、
予め前記リーダ/ライタに記憶されている公開鍵を用いて前記署名データを検証することを特徴とする、請求項1に記載の認証システム。
【請求項3】
前記リーダ/ライタには、複数の暗号化された識別子と、前記暗号化された識別子に対応する複数の共通鍵とが記憶されており、
前記認証制御装置に備わる前記識別子送信部は、前記リーダ/ライタに記憶された前記暗号化された識別子と前記共通鍵の記憶位置の情報とを送信し、
前記リーダ/ライタに備わる前記識別子検証部は、前記識別子送信部に送信された前記記憶位置の情報に基づいて、記憶された前記共通鍵を用いて前記暗号化された識別子を復号することを特徴とする、請求項1に記載の認証システム。
【請求項4】
前記リーダ/ライタは、
前記データ格納領域にデータが格納された後に、前記検証結果保持部に保持された前記識別子および前記識別子の検証結果を削除する検証結果削除部をさらに備えることを特徴とする、請求項1に記載の認証システム。
【請求項5】
前記ICチップに記憶されている前記複数のデータ格納領域は、前記データ格納領域の各々へのアクセス情報が設定された1の論理アクセス子に関連付けられており、
前記論理アクセス子には、前記論理アクセス子に関連付けられた前記複数のデータ格納領域にアクセスするための鍵情報が含まれていることを特徴とする、請求項1に記載の認証システム。
【請求項6】
前記認証制御装置に備わる前記識別子送信部は、前記認証制御装置と前記リーダ/ライタとの相互認証がなされた後に前記識別子を送信することを特徴とする、請求項1に記載の認証システム。
【請求項7】
ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、前記リーダ/ライタと接続可能な認証制御装置とを用いて実現された認証方法であって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置が、
前記識別子を送信するステップと、
前記リーダ/ライタが、
前記送信された前記識別子の正当性を検証するステップと、
前記検証された前記識別子および前記識別子の検証結果を保持するステップと、
前記認証制御装置が、
前記リーダ/ライタに前記ICチップへのデータ書き込みを指示するステップと、
前記リーダ/ライタが、
前記認証制御装置からのデータ書き込み指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込むステップと、
前記読み込まれた識別子格納領域のなかから、正当性を有するとして保持された前記識別子に対応する前記データ格納領域を特定するステップと、
前記特定されたデータ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するステップと、
を含むことを特徴とする、認証方法。
【請求項8】
ICチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ/ライタであって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部により検証された前記識別子および前記識別子の検証結果を保持する検証結果保持部と、
前記認証制御装置の書き込み指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、正当性を有するとして前記検証結果保持部に保持された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、リーダ/ライタ。
【請求項9】
コンピュータを、
ICチップを搭載した情報処理端末と非接触式に通信し、認証制御装置と接続可能なリーダ/ライタであって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部により検証された前記識別子および前記識別子の検証結果を保持する検証結果保持部と、
前記認証制御装置の書き込み指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、正当性を有するとして前記検証結果保持部に保持された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えるリーダ/ライタとして機能させるための、プログラム。
【請求項10】
ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、前記リーダ/ライタと接続可能な認証制御装置とを備える認証システムであって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域へのアクセス情報とが関連付けられ、前記複数のデータ格納領域の各々と前記複数のデータ格納領域の各々を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記認証制御装置は、
前記識別子を送信する識別子送信部と、
前記リーダ/ライタに前記ICチップへのデータ書き込みを指示する書き込み指示部と、
を備え、
前記リーダ/ライタは、
署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部と、
前記識別子送信部により送信された前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第1の領域に格納する識別子格納部と、
前記書き込み指示部の指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、認証システム。
【請求項11】
前記認証制御装置に備わる前記識別子送信部は、
前記識別子とともに署名データを送信し、
前記リーダ/ライタに備わる前記識別子検証部は、
予め前記リーダ/ライタに記憶されている公開鍵を用いて前記署名データを検証することを特徴とする、請求項10に記載の認証システム。
【請求項12】
前記認証制御装置に備わる前記識別子送信部は、
暗号化された前記識別子を送信し、
前記リーダ/ライタに備わる前記識別子検証部は、
予め前記リーダ/ライタに記憶されている共通鍵を用いて前記暗号化された識別子を復号することを特徴とする、請求項10に記載の認証システム。
【請求項13】
前記ICチップに記憶されている前記複数のデータ格納領域は、前記データ格納領域の各々へのアクセス情報が設定された1の論理アクセス子に関連付けられており、
前記論理アクセス子には、前記論理アクセス子に関連付けられた前記複数のデータ格納領域にアクセスするための鍵情報が含まれていることを特徴とする、請求項10に記載の認証システム。
【請求項14】
ICチップを搭載した情報処理端末と非接触式に通信可能なリーダ/ライタと、前記リーダ/ライタと接続可能な認証制御装置とを用いて実現された認証方法であって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
前記リーダ/ライタは、
署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部を有し、
前記認証制御装置が、
前記識別子を送信する識別子送信するステップと、
前記リーダ/ライタが、
前記識別子送信部により送信された前記識別子の正当性を検証するステップと、
前記識別子の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第1の領域に格納するステップと、
前記認証制御装置が、
前記リーダ/ライタに前記ICチップへのデータ書き込みを指示するステップと、
前記リーダ/ライタが、
前記認証制御装置からのデータ書き込み指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込むステップと、
前記読み込まれた識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定するステップと、
前記特定されたデータ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するステップと、
を含むことを特徴とする、認証方法。
【請求項15】
ICチップを搭載した情報処理端末と非接触式に通信し、前記認証制御装置と接続可能なリーダ/ライタであって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部と、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第1の領域に格納する識別子格納部と、
前記認証制御装置の書き込み指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えることを特徴とする、リーダ/ライタ。
【請求項16】
コンピュータを、
ICチップを搭載した情報処理端末と非接触式に通信し、前記認証制御装置と接続可能なリーダ/ライタであって、
前記ICチップには、複数のデータ格納領域と前記複数のデータ格納領域を識別する識別子とが関連付けられた識別子格納領域が記憶されており、
署名検証の検証結果が正しいデータを登録可能な第1の領域と、署名検証の検証結果に関わらずデータを登録可能な第2の領域とを含む記憶部と、
前記認証制御装置から送信される、前記識別子の正当性を検証する識別子検証部と、
前記識別子検証部の検証の結果、前記識別子が正当であった場合に前記識別子を前記記憶部の前記第1の領域に格納する識別子格納部と、
前記認証制御装置の書き込み指示に応じて、前記ICチップに記憶された前記識別子格納領域を読み込む読み込み部と、
前記読み込み部により読み込まれた前記識別子格納領域のなかから、前記記憶部に記憶された前記識別子に対応する前記データ格納領域を特定する特定部と、
前記特定部により特定された前記データ格納領域に、前記認証制御装置に書き込み指示されたデータを格納するデータ格納部と、
を備えるリーダ/ライタとして機能させるための、プログラム。



【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2009−223685(P2009−223685A)
【公開日】平成21年10月1日(2009.10.1)
【国際特許分類】
【出願番号】特願2008−68235(P2008−68235)
【出願日】平成20年3月17日(2008.3.17)
【出願人】(504134520)フェリカネットワークス株式会社 (129)
【Fターム(参考)】