情報処理装置、認証方法、プログラム、および情報処理システム
【課題】リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することが可能な情報処理装置、認証方法、プログラム、および情報処理システムを提供する。
【解決手段】搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置であって、リーダ/ライタ機能搭載装置と通信を行う通信部と、固有のコントローラ秘密鍵と、認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と、リーダ/ライタ機能搭載装置に対して認証情報を要求し、要求に応じて送信された第1の認証情報と、鍵情報記憶部に記憶されたコントローラ秘密鍵および認証対象公開鍵とに基づいて、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するリーダ/ライタ機能制御部とを備える情報処理装置が提供される。
【解決手段】搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置であって、リーダ/ライタ機能搭載装置と通信を行う通信部と、固有のコントローラ秘密鍵と、認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と、リーダ/ライタ機能搭載装置に対して認証情報を要求し、要求に応じて送信された第1の認証情報と、鍵情報記憶部に記憶されたコントローラ秘密鍵および認証対象公開鍵とに基づいて、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するリーダ/ライタ機能制御部とを備える情報処理装置が提供される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、認証方法、プログラム、および情報処理システムに関する。
【背景技術】
【0002】
近年、非接触式IC(Integrated Circuit)カードや、非接触式ICチップを搭載した携帯電話など、リーダ/ライタ(または、リーダ/ライタ機能を有する情報処理装置)と非接触式に通信可能なICチップ搭載装置が普及している。リーダ/ライタとICチップ搭載装置とは、例えば13.56MHzなど特定の周波数の磁界を搬送波として用いることにより通信を行う。具体的には、リーダ/ライタが搬送波信号をのせた搬送波を送信し、搬送波をアンテナで受信したICチップ搭載装置が備えるICチップが負荷変調によって受信した搬送波信号に対する応答信号を返信することによって、リーダ/ライタとICチップ搭載装置とは通信を行うことができる。
【0003】
上記のようなリーダ/ライタと非接触式に通信可能なICチップ搭載装置は、耐タンパ性を有するICチップを備えることにより、例えば、電子マネーなどデータの改竄が問題となるデータの送受信や更新を安全に行うことができる。したがって、上記のようなリーダ/ライタと非接触式に通信可能な非接触式ICチップを搭載したICチップ搭載装置を利用した様々なサービスの提供が社会的に広がっている。そして、サービスの提供の広がりに伴い、非接触式ICチップを搭載した携帯電話などのICチップ搭載装置の普及がさらに進んでいる。
【0004】
リーダ/ライタとICチップ搭載装置との間における通信は上記のように安全に行うことができる。しかしながら、リーダ/ライタとICチップ搭載装置との間における通信は、例えば、ユーザがリーダ/ライタに対してICチップ搭載装置をかざすだけで通信が行われてしまう。したがって、ICチップ搭載装置は、例えば、PIN(Personal Identification Number)と呼ばれる番号(いわゆる、暗証番号)が入力されることによりICチップ内に記憶された電子マネーなどの使用を可能とすることによって、ICチップ搭載装置のユーザ以外の第三者による不正使用を防止している。
【0005】
このような中、例えば、ICチップを搭載した装置(ICチップ搭載装置)の使用を認証により制限する技術が開発されている。ユーザ認証のための補助装置を別途設けることにより、ユーザによるPIN入力を不要とする技術としては、例えば、特許文献1が挙げられる。また、セキュリティ端末装置(ICチップ搭載装置)の流通過程において、複数回の認証を行うことによって、セキュリティ端末装置(ICチップ搭載装置)にセキュリティ情報を安全に設定する技術としては、例えば、特許文献2が挙げられる。
【0006】
【特許文献1】特開2002−117378号公報
【特許文献2】特開2006−72565号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
携帯電話などのICチップ搭載装置は、年々多機能、高機能化が進んでおり、例えば、ICチップ搭載装置の中には、リーダ/ライタの機能(すなわち、搬送波を主体的に送信する機能。以下「リーダ/ライタ機能」という。)を備えるものも登場している。リーダ/ライタ機能がICチップ搭載装置に搭載されることによって、例えば、ユーザは、店頭の商品に付けられたICタグの情報を読み取り、その商品が何時どこで作られたものなのかを知ることができるなど、ユーザに様々な利便性を提供することができる。
【0008】
また、市場に広く普及している携帯電話などのICチップ搭載装置に搭載されたICチップには、例えば、搬送波を用いた近距離無線通信のシステム構成を簡易化するなどの理由により、所定のコマンド仕様に従ったコマンドに応じて記憶された情報を自由に読み書きすることが可能な記憶領域が設定されている。従来のリーダ/ライタはサービス提供場所に設置され、ユーザがICチップ搭載装置を自主的にリーダ/ライタにかざすことによって、リーダ/ライタとICチップ搭載装置との間で通信が行われる。したがって、リーダ/ライタが上記のような比較的自由な読み書きを行ったとしても、リーダ/ライタとICチップ搭載装置との間の通信は、「ICチップ搭載装置をリーダ/ライタにかざす」というユーザの自主的な行為に依存するため、大きな問題にはならなかった。しかしながら、リーダ/ライタ機能が携帯電話などのICチップ搭載装置に搭載されることによって、例えば、悪意のある第三者が、他者のICチップ搭載装置のICチップに記憶された情報(例えば、電子マネーの残高の情報など)を読み出したり、あるいは、ICチップにコンピュータウイルス(computer virus)などの悪意のある情報を書き込むなど、悪意をもった使用が想定される。
【0009】
上記のように、携帯電話などのICチップ搭載装置にリーダ/ライタ機能が搭載されることによって、ユーザは利便性を得るだけでなく、様々な危険に晒されることにもなりかねない。しかしながら、ICチップ搭載装置の使用を認証により制限する従来の技術は、リーダ/ライタから送信される搬送波を受信する側の装置における当該装置の利用を制限する技術であり、搬送波を主体的に送信するリーダ/ライタ機能を備えた装置における当該機能の利用を制限することについては、何らの考慮もなされていない。したがって、ICチップ搭載装置の使用を認証により制限する従来の技術を適用したとしても、ICチップ搭載装置における搬送波を主体的に送信するリーダ/ライタ機能の使用を制限できるとは限られない。よって、ICチップ搭載装置の使用を認証により制限する従来の技術を用いたとしても、上記のような悪意をもつ第三者による悪意をもった使用を防止することができるとは、限らない。
【0010】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することが可能な、新規かつ改良された情報処理装置、認証方法、プログラム、および情報処理システムを提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するために、本発明の第1の観点によれば、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置であって、上記リーダ/ライタ機能搭載装置と通信を行う通信部と、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と、上記リーダ/ライタ機能搭載装置に対して認証情報を要求し、上記要求に応じて上記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて、上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するリーダ/ライタ機能制御部とを備える情報処理装置が提供される。
【0012】
上記情報処理装置は、通信部と、鍵情報記憶部と、リーダ/ライタ機能制御部とを備えることができる。通信部は、リーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信を行うことができる。ここで、情報処理装置とリーダ/ライタ機能搭載装置とは、例えば、ネットワークを介して、または、搬送波を用いた近距離無線通信により通信を行うことができるが、上記に限られない。鍵情報記憶部は、情報処理装置固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象(リーダ/ライタ機能搭載装置)ごとに固有の認証対象公開鍵とを記憶することができる。リーダ/ライタ機能制御部は、認証対象となるリーダ/ライタ機能搭載装置に対して認証するために用いることが可能な認証情報を要求することができる。また、リーダ/ライタ機能制御部は、当該要求に応じて認証対象から送信された第1の認証情報と、鍵情報記憶部に記憶されたコントローラ秘密鍵および認証対象公開鍵とに基づいて、認証対象であるリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を、認証対象ごとに認証することができる。かかる構成により、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0013】
また、上記リーダ/ライタ機能制御部は、上記認証の結果が正常である場合には、上記第1の認証情報、上記コントローラ秘密鍵および上記認証対象公開鍵に基づいて、上記リーダ/ライタ機能搭載装置に相互認証をさせるための第2の認証情報を送信してもよい。
【0014】
かかる構成により、例えば、悪意のある者が使用する装置による情報処理装置のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【0015】
また、上記鍵情報記憶部は、上記リーダ/ライタ機能搭載装置との通信を暗号化するためのリーダ/ライタ機能共通鍵をさらに記憶し、上記リーダ/ライタ機能制御部は、上記リーダ/ライタ機能共通鍵を用いて上記第2の認証情報を暗号化して送信してもよい。
【0016】
かかる構成により、よりセキュア(secure)にリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0017】
また、上記認証の結果が正常である場合において、認証が正常に行われたリーダ/ライタ機能搭載装置を示す認証済装置情報を記録する認証済情報記録部をさらに備えてもよい。
【0018】
かかる構成により、リーダ/ライタ機能が使用可能な状態のリーダ/ライタ機能搭載装置、すなわち、リーダ/ライタ機能が稼動しているリーダ/ライタ機能搭載装置を把握することができる。また、かかる構成により、リーダ/ライタ機能を使用可能なリーダ/ライタ機能搭載装置を一元管理することもできる。
【0019】
また、上記リーダ/ライタ機能制御部における認証をリーダ/ライタ機能搭載装置ごとに制限する認証禁止装置情報を記憶する記憶部と、上記認証禁止装置情報に基づいて、上記認証情報を要求するリーダ/ライタ機能搭載装置が認証対象であるかを判定する認証対象判定部とをさらに備え、上記リーダ/ライタ機能制御部は、上記認証対象判定部の判定結果に応じて認証情報の要求を行ってもよい。
【0020】
かかる構成により、リーダ/ライタ機能の使用が制限された(例えば、禁止された)リーダ/ライタ機能搭載装置を認証対象から除外し、ネガティブチェックを行うことができる。
【0021】
また、上記情報処理装置はサーバであってもよい。
【0022】
かかる構成により、1以上のリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を、リーダ/ライタ機能搭載装置ごとに一元管理することができる。
【0023】
また、上記情報処理装置は携帯型通信装置であってもよい。
【0024】
かかる構成により、情報処理装置を可搬することができる。
【0025】
また、上記目的を達成するために、本発明の第2の観点によれば、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置における認証方法であって、リーダ/ライタ機能搭載装置に対して認証情報を要求するステップと、上記要求するステップにおける要求に応じて上記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップと、上記受信するステップにおいて受信された上記認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて、上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップとを有する認証方法が提供される。
【0026】
かかる方法を用いることにより、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0027】
また、上記目的を達成するために、本発明の第3の観点によれば、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置に用いることが可能なプログラムであって、リーダ/ライタ機能搭載装置に対して認証情報を要求するステップ、上記要求するステップにおける要求に応じて上記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップ、上記受信するステップにおいて受信された上記認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて、上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップをコンピュータに実行させるためのプログラムが提供される。
【0028】
かかるプログラムにより、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0029】
また、上記目的を達成するために、本発明の第4の観点によれば、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と、上記リーダ/ライタ機能搭載装置と通信可能な情報処理装置とを有する情報処理システムであって、上記情報処理装置は、上記リーダ/ライタ機能搭載装置と通信を行う通信部と、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と、上記リーダ/ライタ機能搭載装置に対して認証情報を要求し、上記要求に応じて上記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証し、認証結果に応じて第2の認証情報を送信するリーダ/ライタ機能制御部とを備え、上記リーダ/ライタ機能搭載装置は、搬送波を送信可能な搬送波送信部と、上記情報処理装置と通信を行う通信部と、固有のリーダ/ライタ機能秘密鍵と、上記情報処理装置に対応するコントローラ公開鍵とを記憶する記憶部と、上記情報処理装置から送信される上記要求、上記リーダ/ライタ機能秘密鍵および上記コントローラ公開鍵に基づく上記第1の認証情報を生成して送信する認証情報生成部と、上記情報処理装置から送信される上記第2の認証情報と上記リーダ/ライタ機能秘密鍵および上記コントローラ公開鍵とに基づいて上記情報処理装置を認証し、認証結果に応じて上記搬送波送信部における搬送波の送信を可能とさせる機能制御部とを備える情報処理システムが提供される。
【0030】
かかる構成により、情報処理装置とリーダ/ライタ機能搭載装置との間で相互認証を行うことができ、当該相互認証の結果に基づいてリーダ/ライタ機能搭載装置のリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。また、かかる構成により、例えば、悪意のある者が使用する装置による情報処理装置のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【発明の効果】
【0031】
本発明によれば、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【発明を実施するための最良の形態】
【0032】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0033】
(本発明の実施形態が対象とする問題の一例)
本発明の実施形態に係る情報処理システムについて説明する前に、まず、本発明の実施形態に係る情報処理システムが対象とする問題の一例について説明する。
【0034】
図1は、本発明の実施形態に係る情報処理システムが対象とする問題の一例を説明するための説明図である。
【0035】
[第1の例]
図1(a)は、ユーザが電子マネーを用いた購買サービスを受ける場合を示す説明図である。図1(a)に示すように、店頭などサービス提供場所に設定されたリーダ/ライタ10(リーダ/ライタ機能搭載装置)に対して、ユーザがICチップを搭載した携帯電話12をかざすことにより、ユーザは、電子マネーを用いた購買サービスを受けることができる。これは、リーダ/ライタ10(リーダ/ライタ機能搭載装置)と携帯電話12とが、例えば13.56MHzなど所定周波数の磁界(以下、「搬送波」という。)を用いて通信を行うことができるためである。より具体的には、リーダ/ライタ10(リーダ/ライタ機能搭載装置)が搬送波信号をのせた搬送波を送信し、搬送波をアンテナで受信した携帯電話12が備えるICチップが負荷変調によって受信した搬送波信号に対する応答信号を返信することによって、リーダ/ライタ10と携帯電話12とは通信を行うことができる。
【0036】
ここで、図1(a)の場合には、ユーザは、電子マネーを用いた購買サービスを受けるために、携帯電話12を自主的にリーダ/ライタ10へかざしている。つまり、図1(a)の場合には、ユーザは、通信の具体的な内容までは把握できないものの、リーダ/ライタ10と携帯電話12との間の通信を行うか否かを制御することができる。したがって、図1(a)の場合には、携帯電話12のユーザに不測の不利益が生じる可能性は小さい。
【0037】
[第2の例]
図1(b)は、リーダ/ライタ機能を備えた携帯電話20(リーダ/ライタ機能搭載装置)とICチップを搭載した携帯電話12との間の搬送波を用いた通信を示す説明図である。図1(b)に示すように携帯電話12のユーザがかざす行為を行わない場合であっても、リーダ/ライタ機能を備えた携帯電話20から発せられた搬送波を受信すると、携帯電話12は、受信された搬送波に応じた処理(例えば、データの読み出し処理や書き込み処理など)を行い、携帯電話20へ応答してしまう。ここで、搬送波はユーザの目に見えないため、携帯電話12のユーザは、携帯電話20と携帯電話12との間の通信の具体的な内容だけでなく、通信が行われた事実さえ知る余地はない。つまり、図1(b)の場合には、ユーザは、通信の具体的な内容を把握できないだけでなく、リーダ/ライタ機能を備えた携帯電話20(リーダ/ライタ機能搭載装置)と携帯電話12との間の通信を行うか否かを制御することもできない。
【0038】
したがって、図1(b)の場合において、悪意をもつ第三者がリーダ/ライタ機能を備えた携帯電話20(リーダ/ライタ機能搭載装置)を悪意をもって使用したときには、例えば、携帯電話22のICチップに記憶された情報(例えば、電子マネーの残高の情報など)が勝手に読み出されたり、あるいは、ICチップにコンピュータウイルスなどの悪意のある情報が書き込まれるなど、携帯電話22のユーザに不測の不利益が生じることが起こりうる。
【0039】
本発明の実施形態に係る情報処理システムでは、図1(b)の場合を問題として捉え、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制限させることにより、その解決を図る。なお、本発明の実施形態に係る情報処理システムは、図1(b)の場合においてリーダ/ライタ機能の使用を制限させることに限られず、例えば、図1(a)に示すリーダ/ライタ10におけるリーダ/ライタ機能の使用を制限することもできることは、言うまでもない。
【0040】
(本発明の実施形態に係る解決アプローチ)
本発明の実施形態に係る情報処理システムは、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制限するための情報処理装置を有することにより、上記のような問題の解決を図る。ここで、本発明の実施形態に係る情報処理システムにおける上記のような問題を解決するためのアプローチとしては、例えば、以下の〔1〕〜〔4〕の方法が挙げられる。
【0041】
〔1〕第1の解決アプローチ
図2は、本発明の実施形態に係る情報処理システムにおける第1の解決アプローチを説明するための説明図である。図2では、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制限するための情報処理装置をリーダ/ライタ機能制御装置として示し、リーダ/ライタ機能制御装置が、リーダ/ライタ機能搭載装置における非接触ICチップ搭載装置が備えるICチップへのアクセスをどのように制御するかを示している。図2におけるリーダ/ライタ機能制御装置とリーダ/ライタ機能搭載装置とは、例えば、有線/無線で通信を行うことができ、また、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置とは、例えば、搬送波を用いて通信を行うことができるが、上記に限られない。
【0042】
リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置に対して、非接触ICチップ搭載装置へアクセスするためのアクセスコマンドを発行する(S10)。ステップS10におけるアクセスコマンドを受信したリーダ/ライタ機能搭載装置は、当該アクセスコマンドに応じて、非接触ICチップ搭載装置のICチップへアクセスする。そして、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信が開始される。
【0043】
図2に示す第1の解決アプローチを用いることにより、リーダ/ライタ機能搭載装置はリーダ/ライタ機能制御装置からのアクセスコマンドがなければ非接触ICチップ搭載装置のICチップへとアクセスすることができなくなる。したがって、リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御することができるので、上述した問題の解決を図ることができる。
【0044】
〔2〕第2の解決アプローチ
図3は、本発明の実施形態に係る情報処理システムにおける第2の解決アプローチを説明するための説明図である。図3では、図2と同様に、情報処理装置をリーダ/ライタ機能制御装置として示し、リーダ/ライタ機能制御装置が、リーダ/ライタ機能搭載装置における非接触ICチップ搭載装置が備えるICチップへのアクセスをどのように制御するかを示している。また、図3におけるリーダ/ライタ機能制御装置と非接触ICチップ搭載装置とは、例えば、電波を用いて無線で通信を行うことができる。また、リーダ/ライタ機能搭載装置とは、例えば、有線/無線で通信を行うことができ、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置とは、例えば、搬送波を用いて通信を行うことができるが、上記に限られない。
【0045】
リーダ/ライタ機能制御装置は、非接触ICチップとの間で、例えば、公開鍵を用いた相互認証を行う(S20)。ステップS20における相互認証の方法としては、例えば、ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission) 9798−3において規格化されている方法が挙げられるが、上記に限られない。
【0046】
リーダ/ライタ機能制御装置は、ステップS20における認証において得られた暗号鍵を用いてアクセスコマンドを暗号化し、リーダ/ライタ機能搭載装置に対して、非接触ICチップ搭載装置へアクセスするための暗号化されたアクセスコマンドを発行する(S22)。ステップS22におけるアクセスコマンドを受信したリーダ/ライタ機能搭載装置は、当該アクセスコマンドに応じて、非接触ICチップ搭載装置のICチップへアクセスする。そして、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信が開始される。
【0047】
図3に示す第2の解決アプローチを用いた場合も、図2に示す第1の解決アプローチと同様に、リーダ/ライタ機能搭載装置はリーダ/ライタ機能制御装置からのアクセスコマンドがなければ非接触ICチップ搭載装置のICチップへとアクセスすることができなくなる。したがって、リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御することができるので、上述した問題の解決を図ることができる。
【0048】
〔3〕第3の解決アプローチ
図4は、本発明の実施形態に係る情報処理システムにおける第3の解決アプローチを説明するための説明図である。図4では、図2と同様に、情報処理装置をリーダ/ライタ機能制御装置として示し、リーダ/ライタ機能制御装置が、リーダ/ライタ機能搭載装置における非接触ICチップ搭載装置が備えるICチップへのアクセスをどのように制御するかを示している。また、図4における各装置間の通信は、図2の場合と同様に行うことができる。
【0049】
リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置との間で、例えば、公開鍵を用いた相互認証を行う(S30)。また、リーダ/ライタ機能搭載装置は、非接触ICチップ搭載装置との間で、例えば、公開鍵を用いた相互認証を行う(S32)。
【0050】
ステップS32において相互認証が行われると、リーダ/ライタ機能搭載装置は、リーダ/ライタ機能制御装置に処理結果を送信する(S34)。
【0051】
ステップS34において送信された処理結果を受信したリーダ/ライタ機能制御装置は、ステップS30における認証において得られた暗号鍵を用いてアクセスコマンドを暗号化し、リーダ/ライタ機能搭載装置に対して、非接触ICチップ搭載装置へアクセスするための暗号化されたアクセスコマンドを発行する(S34)。ステップS34におけるアクセスコマンドを受信したリーダ/ライタ機能搭載装置は、、当該アクセスコマンドに応じて、ステップS32における認証において得られた暗号鍵を用いて非接触ICチップ搭載装置のICチップへアクセスする。そして、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信が開始される。
【0052】
図4に示す第3の解決アプローチを用いた場合も、図2に示す第1の解決アプローチと同様に、リーダ/ライタ機能搭載装置はリーダ/ライタ機能制御装置からのアクセスコマンドがなければ非接触ICチップ搭載装置のICチップへとアクセスすることができなくなる。したがって、リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御することができるので、上述した問題の解決を図ることができる。
【0053】
〔4〕第4の解決アプローチ
上述した第1〜第3の解決アプローチを用いることによって、情報処理装置(図2〜4に示すリーダ/ライタ機能制御装置)は、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信を制御することができる。しかしながら、例えば、第1の解決アプローチでは通信の暗号化が行われていないために、通信内容が第三者に漏れたり、データの改竄が行われる可能性が否定できない。また、例えば、第2、第3の解決アプローチにおける相互認証は、複数のリーダ/ライタ機能搭載装置、複数の非接触ICチップ搭載装置で共通の鍵を用いることから、個々の装置を個別に認証することができない。そこで、本発明の実施形態に係る情報処理システムでは、第4の解決アプローチとして、個々のリーダ/ライタ機能搭載装置をそれぞれ個別に認証することにより、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御する。
【0054】
以下に、上記第4の解決アプローチを用いた本発明の実施形態に係る情報処理システムについて説明する。
【0055】
(第1の実施形態)
図5は、本発明の第1の実施形態に係る情報処理システムを示すブロック図である。第1の実施形態に係る情報処理システムは、情報処理装置100と、リーダ/ライタ機能搭載装置200、300、…とを有し、情報処理装置100とリーダ/ライタ機能搭載装置200、300、…とは、ネットワーク350で通信可能に接続される。ここで、ネットワーク350としては、例えば、LAN(Local Area Network)やWAN(Wide Area Network)など有線ネットワーク、MIMO(Multiple-Input Multiple-Output)を用いたWLAN(Wireless Local Area Network)などの無線ネットワーク、あるいは、TCP/IP(Transmission Control Protocol/Internet Protocol)などの通信プロトコルを用いたインターネット(Internet)などが挙げられるが、上記に限られない。また、情報処理装置100とリーダ/ライタ機能搭載装置200、300、…とは、基地局(図示せず)を介して接続されてもよい。
【0056】
[情報処理装置100]
情報処理装置100は、通信部102と、リーダ/ライタ機能制御部104と、鍵情報記憶部106と、記憶部108と、認証済情報記録部110と、認証対象判定部112とを備えることができる。
【0057】
また、情報処理装置100は、MPU(Micro Processing Unit)などで構成され、制御用プログラムなどを用いて様々な演算処理を行い情報処理装置100全体を制御する制御部(図示せず)、制御部(図示せず)が使用するプログラムや演算パラメータなどの制御用データが記録されたROM(Read Only Memory;図示せず)、制御部(図示せず)により実行されるプログラムなどを一次記憶するRAM(Random Access Memory;図示せず)、ユーザが操作可能な操作部(図示せず)、表示部(図示せず)などを備えてもよい。情報処理装置100は、例えば、データの伝送路としてのバス(bus)で各構成要素間を接続することができる。
【0058】
ここで、操作部(図示せず)としては、例えば、キーボードやマウスなどの操作入力デバイスや、ボタン、方向キー、ジョグダイヤルなどの回転型セレクター、あるいは、これらの組み合わせなどが挙げられるが、上記に限られない。また、表示部(図示せず)としては、例えば、LCD(Liquid Crystal Display;液晶ディスプレイ)、有機ELディスプレイ(organic ElectroLuminescence display;または、OLEDディスプレイ(Organic Light Emitting Diode display)とも呼ばれる。)などが挙げられるが、上記に限られない。なお、操作部(図示せず)と表示部(図示せず)とは、例えば、タッチスクリーン(touch screen)で構成された一体の部とすることもできる。
【0059】
また、情報処理装置100は、例えば、制御部(図示せず)、認証済情報記録部110、および認証対象判定部112がそれぞれ別体のMPUなどを備える構成とすることができるが、かかる構成に限られない。例えば、情報処理装置100は、制御部(図示せず)、認証済情報記録部110、および認証対象判定部112を、MPUなどで構成された一体の部とすることもできる。また、情報処理装置100は、例えば、リーダ/ライタ機能制御部104、認証済情報記録部110、および認証対象判定部112を一体の部とすることもできる。
【0060】
通信部102は、ネットワーク350を介してリーダ/ライタ機能搭載装置200、300、…と通信を行うための部であり、ネットワーク350との接続形態に応じたインタフェースを有することができる。
【0061】
リーダ/ライタ機能制御部104は、リーダ/ライタ機能搭載装置ごとに、各リーダ/ライタ機能搭載装置が備えるリーダ/ライタ機能の使用を認証する。より具体的には、リーダ/ライタ機能制御部104は、例えば、リーダ/ライタ機能搭載装置から認証の要求があった場合、以下の(A)〜(C)の手順によって、リーダ/ライタ機能搭載装置が備えるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに認証する。なお、以下では、認証を行う対象となるリーダ/ライタ機能搭載装置を、「認証対象」と呼ぶ場合もある。
【0062】
(A)認証対象(認証を行うリーダ/ライタ機能搭載装置)に対して認証情報を要求する(以下、認証対象に要求する認証情報を「第1の認証情報」という。)
(B)認証対象から取得した第1認証情報とコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて認証を行う
(C)認証結果に応じて、認証が正常な場合には、相互認証のための認証情報を認証対象に送信する(以下、認証対象に送信する認証情報を「第2の認証情報」という。)
【0063】
ここで、上記(B)において認証に用いるコントローラ秘密鍵は、情報処理装置100固有の暗号鍵であり、また、認証対象公開鍵は、認証対象となるリーダ/ライタ機能搭載装置ごとに固有の暗号鍵である。リーダ/ライタ機能制御部104は、認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵を用いることによって、リーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能搭載装置が備えるリーダ/ライタ機能の使用を認証することができる。なお、本発明の実施形態に係る第1の認証情報、第2の認証情報の具体例、および認証方法については、後述する。
【0064】
また、リーダ/ライタ機能制御部104は、認証に用いるコントローラ秘密鍵や認証対象公開鍵、あるいは、認証対象との通信の暗号化に用いるリーダ/ライタ機能共通鍵などの各種暗号鍵情報を記憶する鍵情報記憶部106を、内部に備えることができる。リーダ/ライタ機能制御部104が内部に備える鍵情報記憶部106から各種鍵情報を適宜読み出して使用することにより、例えば、鍵情報の漏洩を防止することができる。なお、本発明の第1の実施形態に係るリーダ/ライタ機能制御部104が、鍵情報記憶部106を内部に備える構成に限られないことは、言うまでもない。また、第1の情報処理システムは、例えば、さらに鍵情報を記憶する鍵情報記憶装置を有し、情報処理装置100が、当該鍵情報記憶装置から鍵情報を取得することもできる。
【0065】
さらに、リーダ/ライタ機能制御部104は、耐タンパ性を有するICチップで構成することもできるが、上記に限られない。
【0066】
〔リーダ/ライタ機能制御部104のハードウェア構成例〕
ここで、リーダ/ライタ機能制御部104のハードウェア構成例を示す。図6は、本発明の第1の実施形態に係る情報処理装置100におけるリーダ/ライタ機能制御部104のハードウェア構成の一例を示す説明図である。
【0067】
図6を参照すると、リーダ/ライタ機能制御部104は、例えば、MPU150と、ROM152と、RAM154と、不揮発性メモリ156と、UART(Universal Asynchronous Receiver Transmitter)158とを備えることができ、また各構成要素はチップ内部バス160で接続される。また、リーダ/ライタ機能制御部104は、UART158を介して情報処理装置100のバス162と接続される。図6では、例えば、不揮発性メモリ156が鍵情報記憶部106に対応することができるが、上記に限られないことは、言うまでもない。
【0068】
MPU150は、UART158を介して認証対象へ第1の認証情報を要求する(通信部に要求を送信させる)。また、MPU150は、UART158を介して認証対象から送信された第1の認証情報と、不揮発性メモリ156から読み出したコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて、認証を行うことができる。
【0069】
ROM192は、MPU191が使用するプログラムや演算パラメータなどの制御用データを記憶することができ、またRAM193は、MPU191により実行されるプログラムなどを一次記憶することができる。
【0070】
また、不揮発性メモリ156は、リーダ/ライタ機能制御部104が内部に備える記憶部である。不揮発性メモリ156としては、例えば、EEPROM(Electronically Erasable and Programmable Read Only Memory)、フラッシュメモリ(flash memory)、MRAM(Magnetoresistive Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、PRAM(Phase change Random Access Memory)などが挙げられるが、上記に限られない。
【0071】
リーダ/ライタ機能制御部104は、図6に示すようなハードウェア構成により上述した機能を実現することができる。なお、本発明の実施形態に係るリーダ/ライタ機能制御部104のハードウェア構成が図3に限られないことは、言うまでもない。また、リーダ/ライタ機能制御部104は、図3の構成を集積回路(IC)で実現してもよい。
【0072】
また、リーダ/ライタ機能制御部104は、認証対象からの認証の要求があった場合に認証を行う構成に限られず、例えば、後述する認証対象判定部112における判定の結果に応じて、認証対象の認証を行うか否かを切り替えることもできる。
【0073】
再度図5を参照して、情報処理装置100の構成要素について説明する。鍵情報記憶部106は、コントローラ秘密鍵や、認証対象ごとに固有の認証対象公開鍵、あるいは、認証対象との通信の暗号化に用いるリーダ/ライタ機能共通鍵などの各種暗号鍵情報を記憶することができる。ここで、図5では、鍵情報記憶部106に、リーダ/ライタ機能共通鍵120、コントローラ秘密鍵122、リーダ/ライタ機能搭載装置200に対応する認証対象公開鍵A124、リーダ/ライタ機能搭載装置300に対応する認証対象公開鍵B126、…が記憶されている例を示している。
【0074】
ここで、コントローラ秘密鍵は、例えば、リーダ/ライタ機能制御部104が生成して鍵情報記憶部106に記憶することができるが、上記に限られない。また、認証対象ごとに固有の認証対象公開鍵や、認証対象との通信の暗号化に用いるリーダ/ライタ機能共通鍵は、セキュアに鍵情報記憶部106に記憶することができれば、記憶の方法は限られない。
【0075】
記憶部108は、情報処理装置100が備える記憶手段であり、例えば、認証済情報記録部110が生成する認証が完了した認証対象の情報が記録された認証済装置情報や、認証対象判定部112が認証対象を判定するために用いることが可能な認証禁止装置情報などの各種情報を記憶することができる。なお、図5では、1の認証済装置情報130と1の認証禁止装置情報132とが記憶部108に記憶されている例を示しているが、上記に限られず、認証対象ごとに認証済装置情報、認証禁止装置情報を記憶することができる。また、上記認証禁止装置情報は、例えば、操作部(図示せず)を用いたユーザ入力に応じて制御部(図示せず)が生成し記録することができるが、上記に限られない。例えば、上記認証禁止装置情報は、外部装置(図示せず)から送信され、通信部102を介して記憶部108に記憶することもできる。
【0076】
また、記憶部108としては、例えば、ハードディスク(Hard Disk)などの磁気記録媒体や、EEPROM、フラッシュメモリなどの不揮発性メモリ(nonvolatile memory)が挙げられるが、上記に限られない。なお、図5では、鍵情報記憶部106と記憶部108とが別体として示されているが、本発明の実施形態に係る情報処理装置100は、例えば、鍵情報記憶部106と記憶部108とを一体の部として備えることもできる。
【0077】
認証済情報記録部110は、リーダ/ライタ機能制御部104においてリーダ/ライタ機能が正常に認証されると、すなわち、認証処理が正常に完了すると、認証を行った認証対象に対応する認証済装置情報を記録する。ここで、認証済装置情報とは、認証対象のリーダ/ライタ機能搭載装置がリーダ/ライタ機能の使用を正常に認証された認証対象であるかを情報処理装置100側で特定することが可能な情報である。認証済装置情報としては、例えば、認証対象のMACアドレス(Media Access Control address)などが挙げられるが、上記に限られず、個々の認証対象を識別可能な認証対象ごとに固有の情報であればよい。
【0078】
認証対象判定部112は、記憶部108に記憶された認証禁止装置情報に基づいて、認証を行う認証対象が認証を行う対象であるかを判定し、判定の結果をリーダ/ライタ機能制御部104に伝達する。リーダ/ライタ機能制御部104は、認証対象判定部112から伝達された判定の結果に応じて認証処理を実行する。
【0079】
例えば、認証対象判定部112が認証対象について認証を行う対象ではないと判定した場合、すなわち、認証対象を示す認証禁止装置情報が記憶部108に記憶されていた場合には、リーダ/ライタ機能制御部104は、認証対象のリーダ/ライタ機能の使用に係る認証処理を行わない。また、認証対象判定部112が認証対象について認証を行う対象であると判定した場合、すなわち、認証対象を示す認証禁止装置情報が記憶部108に記憶されていない場合には、リーダ/ライタ機能制御部104は、認証対象のリーダ/ライタ機能の使用に係る認証処理を行う。したがって、情報処理装置100は、認証対象におけるリーダ/ライタ機能の使用を認証禁止装置情報を用いることによって、フレキシブルに制御することができる。
【0080】
情報処理装置100は、例えば図5に示す構成によって、リーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を制御することができる。
【0081】
[リーダ/ライタ機能搭載装置]
次に、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置について説明する。以下では、リーダ/ライタ機能搭載装置200を例に挙げて説明するが、リーダ/ライタ機能搭載装置300、…も同様の構成をとることができるので、リーダ/ライタ機能搭載装置300、…については説明を省略する。また、以下では、リーダ/ライタ機能搭載装置200がICチップを備え、当該ICチップがリーダ/ライタ機能を有する構成を例に挙げて説明するが、本発明の実施形態に係るリーダ/ライタ機能搭載装置は、かかる構成に限られない。例えば、本発明の実施形態に係るリーダ/ライタ機能搭載装置は、リーダ/ライタ機能を、ICチップとは別体の部により実現することもできる。
【0082】
リーダ/ライタ機能搭載装置200は、チップ外通信部202と、ICチップ204とを備えることができる。
【0083】
また、リーダ/ライタ機能搭載装置200は、MPUなどで構成され、制御用プログラムなどを用いて様々な演算処理を行いリーダ/ライタ機能搭載装置200全体を制御する制御部(図示せず)や、制御部(図示せず)が使用するプログラムや演算パラメータなどの制御用データが記録されたROM、制御部(図示せず)により実行されるプログラムなどを一次記憶するRAM、ユーザが操作可能な操作部(図示せず)、表示部(図示せず)、リーダ/ライタ機能搭載装置200の各構成要素に電力を供給するための内部電源(図示せず)などを備えてもよい。リーダ/ライタ機能搭載装置200は、例えば、データの伝送路としてのバスで各構成要素間を接続することができる。
【0084】
ここで、操作部(図示せず)としては、例えば、ボタン、方向キー、ジョグダイヤルなどの回転型セレクター、あるいは、これらの組み合わせなどが挙げられるが、上記に限られない。また、表示部(図示せず)としては、例えば、LCD、有機ELディスプレイなどが挙げられるが、上記に限られない。なお、操作部(図示せず)と表示部(図示せず)とは、例えば、タッチスクリーンで構成された一体の部とすることもできる。
【0085】
チップ外通信部202は、ネットワーク350を介して情報処理装置100と通信を行うための部であり、ネットワーク350との接続形態に応じたインタフェースを有することができる。
【0086】
ICチップ204は、例えば、13.56MHzなど所定の周波数の搬送波を用いた近距離無線通信に係る様々な部を集積回路にて実現したものであり、耐タンパ性を有することができる。ICチップ204は、リーダ/ライタ機能を有する外部装置(例えば、図1(a)に示すリーダ/ライタ10など。以下、「外部装置」という。)から送信される各種命令やデータ、または、チップ外通信部202を介して受信された情報処理装置100からの各種命令(例えば、制御部(図示せず)により伝達される。)など、ICチップ204の外部からの命令などに応じて様々なデータ処理を行うことができる。
【0087】
〔ICチップ204〕
ICチップ204は、チップ内通信部206と、搬送波送信部208と、内部メモリ210と、認証情報生成部212と、機能制御部214とを備えることができる。
【0088】
また、ICチップ204は、MPUなどで構成されICチップ204全体を制御し、また、所定の演算処理やコマンド生成などを実行するチップ内制御部(図示せず)や、チップ内通信部206が受信した搬送波からハイレベル(High)とローレベル(Low)との2値化されたデータ信号を取り出す(復調する)データ受信部(図示せず)、チップ内通信部206が受信した搬送波に基づいてチップ内制御部(図示せず)などを駆動させるための駆動電圧を出力するチップ内電源部(図示せず)、矩形のクロック信号を生成するクロック生成部(図示せず)、チップ内制御部(図示せず)が使用する管理用データ、プログラムなどが記憶されるROM、ICチップ204外の構成要素との間のインタフェースとしての役割を果たすUARTなどを備えることもできる。
【0089】
チップ内通信部206は、例えば、送受信アンテナとしての所定のインダクタンスをもつコイルと、所定の静電容量をもつキャパシタとからなる共振回路を有し、外部装置から送信される搬送波を受信することができる。また、チップ内通信部206は、例えば、負荷変調回路を備えて負荷変調を行い外部装置からみたリーダ/ライタ機能搭載装置200のインピーダンスを変化させることにより、搬送波を介して外部装置と通信を行うことができる。なお、図5では、チップ内通信部206がICチップ204の内部に備えられる構成を示しているが、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置の構成は、上記に限られない。例えば、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置は、送受信アンテナをICチップ204の外部に備えることもできるし、送受信アンテナとICチップとを一体のパッケージとして備えることもできる。
【0090】
搬送波送信部208は、チップ内通信部206が備える共振回路(送受信アンテナ)から搬送波信号をのせた搬送波を送信する。リーダ/ライタ機能搭載装置200は、搬送波送信部208を備えることにより、リーダ/ライタ機能、すなわち、搬送波を主体的に送信する機能を有することができる。ここで、搬送波送信部208は、例えば、ASK変調(Amplitude Shift Keying)を行う変調回路、変調回路の出力を増幅する増幅回路を備えることができるが、本発明の実施形態に係る搬送波送信部208の構成は、上記に限られない。
【0091】
また、搬送波送信部208は、後述する機能制御部214によって搬送波の送信が制御される。したがって、リーダ/ライタ機能搭載装置200は、機能制御部214により搬送波の送信が制御されることによって、リーダ/ライタ機能の使用を制限することができる。
【0092】
内部メモリ210は、ICチップ204内に備わる記憶部であり、耐タンパ性を有することができる。内部メモリ210には、例えば、リーダ/ライタ機能搭載装置200が有する機能を実現するためのアプリケーション(図示せず)や、リーダ/ライタ機能搭載装置200が備えるICチップを用いてサービスを受けるためのデータ(サービスデータ;図示せず)、ICチップ204が対応するサービスを表すコード(例えば、サービスコード、システムコードなど;図示せず)などを記憶することができる。
【0093】
また、内部メモリ210には、リーダ/ライタ機能搭載装置200に固有のリーダ/ライタ機能秘密鍵や、情報処理装置100に対応するコントローラ公開鍵、情報処理装置100との通信の暗号化に用いるリーダ/ライタ機能共通鍵などの各種暗号鍵情報を記憶することができる。さらに、内部メモリ210は、後述する機能制御部214により生成されたリーダ/ライタ機能相互認証済情報を記憶することもできる。ここで、図5では、内部メモリ210に、リーダ/ライタ機能共通鍵120、リーダ/ライタ機能秘密鍵220、コントローラ公開鍵222、およびリーダ/ライタ機能相互認証済情報224が記憶されている例を示している。
【0094】
また、内部メモリ210としては、例えば、EEPROM、フラッシュメモリ、MRAM、FeRAM、PRAMなどの不揮発性メモリが挙げられるが、上記に限られない。
【0095】
〔A〕内部メモリ210におけるメモリフォーマットの例
ここで、内部メモリ210におけるメモリフォーマットの例を示す。図7は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200の内部メモリ210におけるメモリフォーマットの一例を示す説明図である。ここで、図7は、リーダ/ライタ機能共通鍵、リーダ/ライタ機能秘密鍵およびコントローラ公開鍵を記憶するメモリフォーマットの一例を示している。
【0096】
本発明の実施形態に係る内部メモリ210は、例えば、図7に示すような階層構造によって、リーダ/ライタ機能共通鍵、リーダ/ライタ機能秘密鍵およびコントローラ公開鍵を記憶することができる。ここで、図7の“エリア1000”は、リーダ/ライタ機能の管理用領域である。“サービス1008”は、リーダ/ライタ機能秘密鍵格納用サービスを示しており、リーダ/ライタ機能共通鍵としての「Krw」、リーダ/ライタ機能秘密鍵としての「sKrw」が記憶される。また、“サービス100B”は、コントローラ公開鍵格納用サービスを示しており、コントローラ公開鍵としての「pKcnt」が記憶されている。
【0097】
〔B〕内部メモリ210への「Krw」、「sKrw」および「pKcnt」の登録方法
次に、上記「Krw」、「sKrw」および「pKcnt」の内部メモリ210への登録方法についてそれぞれ説明する。なお、以下では、発行用リーダ/ライタ(図示せず)が上記「Krw」、「sKrw」および「pKcnt」をリーダ/ライタ機能搭載装置200に記憶させる例を示すが、本発明の実施形態はかかる構成に限られない。例えば、情報処理装置100が上記発行用リーダ/ライタの役目を果たすこともできる。また、発行用リーダ/ライタとリーダ/ライタ機能搭載装置200との間の通信は、例えば、搬送波を用いた近距離無線通信により行うことができる。したがって、リーダ/ライタ機能搭載装置200は、セキュアに上記「Krw」、「sKrw」および「pKcnt」を記憶することができる。
【0098】
〔B−1〕リーダ/ライタ機能共通鍵「Krw」の登録方法
図8は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200へのリーダ/ライタ機能共通鍵の登録方法の一例を示す説明図である。
【0099】
発行用リーダ/ライタは、リーダ/ライタ機能搭載装置200が備えるICチップ204に対して、サービス1008登録(Krw指定)命令を送信する(S100)。
【0100】
ステップS100における命令を受信したICチップ204は、当該命令に基づいて、エリア1000内にサービス1008を作成してリーダ/ライタ機能共通鍵「Krw」を書き込む(S102)。そして、ICチップ204は、発行用リーダ/ライタへ処理結果を送信する(S104)。ここで、ステップS104における処理結果は、例えば、処理が正常に完了したか否かを示す1ビット(bit)のデータ(例えば「0」が処理失敗、「1」が処理完了)とすることができるが、上記に限られない。また、ステップS104において送信された処理結果が、処理が正常に完了していないことを示している場合、発行用リーダ/ライタは、例えば、再度ステップS100からの処理を行うことができる。
【0101】
リーダ/ライタ機能搭載装置200の内部メモリ210には、例えば、図8に示す方法によってリーダ/ライタ機能共通鍵「Krw」が登録される。
【0102】
〔B−2〕リーダ/ライタ機能秘密鍵「sKrw」の登録方法
図9は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200へのリーダ/ライタ機能秘密鍵の登録方法の一例を示す説明図である。
【0103】
発行用リーダ/ライタは、例えば図8に示す方法により登録されたサービス1008についてICチップ204との間で相互認証を行う(S200)。ステップS200における相互認証が成立すると、発行用リーダ/ライタはセッションを暗号化するためのセッション暗号鍵を送信し(S202)、ICチップ204はその受領報告を返信する(S204)。上記により、発行用リーダ/ライタとICチップ204との間の通信路を暗号化することが可能となる。
【0104】
発行用リーダ/ライタは、通信路を暗号化してリーダ/ライタ機能秘密鍵「sKrw」の書き込み命令を送信する(S206)。そして、ステップS206における命令を受信したICチップ204は、当該命令に基づいて、リーダ/ライタ機能秘密鍵「sKrw」を書き込み(S208)、図8のステップS104と同様に、処理結果を送信する(S210)。
【0105】
リーダ/ライタ機能搭載装置200の内部メモリ210には、例えば、図9に示す方法によって、セキュアに(通信路を暗号化して)リーダ/ライタ機能秘密鍵「sKrw」が登録される。
【0106】
〔B−3〕コントローラ公開鍵「pKcnt」の登録方法
図10は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200へのコントローラ公開鍵の登録方法の一例を示す説明図である。
【0107】
発行用リーダ/ライタは、ICチップ204に対して、コントローラ公開鍵「pKcnt」の書き込み命令を送信する(S300)。ここで、図10では、コントローラ公開鍵「pKcnt」は、公開鍵であることからコントローラ公開鍵「pKcnt」を送信する通信路を暗号化していないが、当該通信路を暗号化してもよいことは、言うまでもない。
【0108】
ステップS300における命令を受信したICチップ204は、当該命令に基づいて、コントローラ公開鍵「pKcnt」を書き込む(S302)。そして、ICチップ204は、図8のステップS104と同様に、発行用リーダ/ライタへ処理結果を送信する(S304)。
【0109】
リーダ/ライタ機能搭載装置200の内部メモリ210には、例えば、図10に示す方法によってコントローラ公開鍵「pKcnt」が登録される。
【0110】
リーダ/ライタ機能搭載装置200は、例えば、図8〜図10において示した方法を用いることにより、図7に示すようなメモリフォーマットでリーダ/ライタ機能共通鍵、リーダ/ライタ機能秘密鍵およびコントローラ公開鍵を記憶することができる。なお、本発明の第1の実施形態に係る内部メモリ210のメモリフォーマット、および内部メモリ210への各種鍵情報の登録方法が、上記に限られないことは、言うまでもない。
【0111】
再度図5を参照してリーダ/ライタ機能搭載装置200の構成要素について説明する。認証情報生成部212は、情報処理装置100から送信された第1の認証情報の要求に応じて第1の認証情報を生成し、チップ外通信部202を介して情報処理装置100へ第1の認証情報を送信する。ここで、認証情報生成部212は、情報処理装置100から送信された第1の認証情報の要求、リーダ/ライタ機能秘密鍵222およびコントローラ公開鍵224を用いて第1の認証情報を生成することができる。第1の認証情報の具体例については、後述する。
【0112】
機能制御部214は、情報処理装置100から送信される第2の認証情報、リーダ/ライタ機能秘密鍵222およびコントローラ公開鍵224に基づいて、情報処理装置100を認証する(すなわち、相互認証を行う)。第2の認証情報の具体例については、後述する。
【0113】
機能制御部214は、相互認証が正常に完了すると、リーダ/ライタ機能を有効とするためのリーダ/ライタ機能相互認証済情報を生成し、内部メモリ210に記録する。ここで、リーダ/ライタ機能相互認証済情報には、例えば、情報処理装置100からの命令(例えば、第2の認証情報と共に送信される。)に応じて、有効期限や有効回数など一定の制限が設けられてもよい。機能制御部214が、例えば、一定の制限が設けられたリーダ/ライタ機能相互認証済情報を生成することにより、一度相互認証が正常に行われれば、リーダ/ライタ機能搭載装置200においてリーダ/ライタ機能が無制限に使用可能となることを防ぎ、例えば、図1(b)において説明したような悪意のある者の悪意を持ったリーダ/ライタ機能の使用を防止することができる。
【0114】
また、機能制御部214は、内部メモリ210に記憶されたリーダ/ライタ機能相互認証済情報に基づいて、搬送波送信部208の搬送波の送信、すなわち、リーダ/ライタ機能搭載装置200のリーダ/ライタ機能の使用を制御する。ここで、機能制御部214における制御としては、例えば、以下の(1)、(2)が挙げられる。
【0115】
(1)内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されていない場合
内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されていない場合には、機能制御部214は、搬送波送信部208における搬送波の送信を許可しない。したがって、リーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用は制限されるので、例えば、図1(b)において説明したような悪意のある者の悪意を持ったリーダ/ライタ機能の使用を防止することができる。
【0116】
(2)内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されている場合
内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されている場合には、機能制御部214は、内部メモリ210からリーダ/ライタ機能相互認証済情報を読み出す。
【0117】
(2−1)リーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されていない場合
内部メモリ210から読み出したリーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されていない場合には、機能制御部214は、搬送波送信部208における搬送波の送信を許可する。したがって、ユーザは、リーダ/ライタ機能を用いることによる様々な利便性を享受することができる。
【0118】
(2−2)リーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されている場合
内部メモリ210から読み出したリーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されている場合には、機能制御部214は、当該条件を満たしているかを判定する。判定の結果、条件を満たしている場合には、機能制御部214は搬送波送信部208における搬送波の送信を許可し、また、条件を満たしていない場合には、機能制御部214は搬送波送信部208における搬送波の送信を許可しない。
【0119】
機能制御部214は、例えば、上記(1)、(2)に示すように、内部メモリ210に記憶されたリーダ/ライタ機能相互認証済情報に基づいて、搬送波送信部208の搬送波の送信を制御することができる。
【0120】
〔ICチップ204のハードウェア構成例〕
ここで、ICチップ204のハードウェア構成例を示す。図11は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200におけるICチップ204のハードウェア構成の一例を示す説明図である。
【0121】
図11を参照すると、ICチップ204は、例えば、無線通信アンテナ250と、搬送波送信回路252と、MPU254と、ROM256と、RAM258と、不揮発性メモリ260と、UART262とを備えることができ、また各構成要素はチップ内部バス264で接続される。また、ICチップ204は、UART262を介してリーダ/ライタ機能搭載装置側(ICチップ外)のバス266と接続される。図11では、例えば、無線通信アンテナ250が図5のチップ内通信部206に対応し、搬送波送信回路252が図5の搬送波送信部208、MPU254が図5の認証情報生成部212および機能制御部214、不揮発性メモリ260が図5の内部メモリ210にそれぞれ対応することができる。
【0122】
情報処理装置100から送信されてチップ外通信部202が受信した第1の認証情報の要求は、UART262を介してMPU262に伝達される。また、MPU262は、UART262を介して、生成した第1の認証情報をバス266へ伝達することができる。したがって、リーダ/ライタ機能搭載装置200は、ネットワーク350を介して情報処理装置100と通信を行い、相互認証を行うことができる。
【0123】
また、ROM256は、MPU254が使用するプログラムや演算パラメータなどの制御用データを記憶することができ、またRAM258は、MPU254により実行されるプログラムなどを一次記憶することができる。なお、本発明の実施形態に係るICチップ204のハードウェア構成が図11に限られないことは、言うまでもない。
【0124】
本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200は、例えば、図5に示す構成により、情報処理装置100の認証結果、すなわち第2の認証情報に基づいて、リーダ/ライタ機能の使用を制御することができる。
【0125】
[認証方法]
次に、本発明の第1の実施形態に係る情報処理システムに係る認証方法について説明する。図12は、本発明の第1の実施形態に係る情報処理装置100における認証方法の一例を示す流れ図である。
【0126】
情報処理装置100は、リーダ/ライタ機能搭載装置すなわち認証対象から送信されるリーダ/ライタ機能の使用のための認証要求が検出されたか否かを判定する(S400)。ステップS400において認証要求が検出されない場合には、検出されるまで処理を進めない。
【0127】
ステップS400において認証要求が検出された場合には、情報処理装置100は、認証対象が認証が禁止された(すなわち、リーダ/ライタ機能の使用が禁止された)認証禁止装置か否かを判定する(S402)。ここで、ステップS402における判定は、例えば、認証要求に含まれる認証対象を特定する情報と、認証禁止装置情報とに基づいて行うことができる。ステップS402の判定が行われることによって、情報処理装置100は、リーダ/ライタ機能の使用が禁止されたリーダ/ライタ機能搭載装置を認証対象から除外することができ、いわゆるネガティブチェックを行うことができる。
【0128】
ステップS402において認証対象が認証禁止装置であると判定された場合には、情報処理装置100は、認証対象に対する認証処理を行わない(S410)。また、このとき、情報処理装置100は、認証対象に対して認証が禁止されている旨の通知を行ってもよい。
【0129】
ステップS402において認証対象が認証禁止装置ではないと判定された場合には、情報処理装置100は、認証対象に対する認証処理を行う(S404)。
【0130】
<認証処理>
ここで、本発明の第1の実施形態に係る情報処理システムにおける認証処理の一例を示す。図13は、本発明の第1の実施形態に係る情報処理システムにおける認証処理の一例を示すシーケンス図である。なお、以下では、情報処理装置100とリーダ/ライタ機能搭載装置200との間の認証処理を例に挙げて説明する。また、図13では、情報処理装置100が備えるリーダ/ライタ機能制御部104と、リーダ/ライタ機能搭載装置200が備えるICチップ204とがそれぞれ処理を行う例を示しているが、説明の便宜上、情報処理装置100およびリーダ/ライタ機能搭載装置200が処理を行うものとして説明する。
【0131】
情報処理装置100は、乱数発生処理を行い、乱数Raを発生させ(S500)、リーダ/ライタ機能搭載装置200へ送信する(S502)。ここで、ステップS502において送信された乱数Raは、上述した第1の認証情報の要求に該当する。なお、情報処理装置100は、例えば、乱数発生回路を備え、当該乱数発生回路を用いて乱数を発生させることができるが、上記に限られない。例えば、情報処理装置100は、リーダ/ライタ機能制御部104が乱数発生用のプログラムを実行することによって乱数を発生させることもできる。
【0132】
ステップS502において乱数Raを受信すると、リーダ/ライタ機能搭載装置200は、乱数発生処理を行い、乱数Rbを発生させる(S504)。なお、リーダ/ライタ機能搭載装置200は、乱数をハードウェアで発生させてもよいし、ソフトウェアで発生されることもできる。
【0133】
リーダ/ライタ機能搭載装置200は、ステップS502において受信した乱数Raと、ステップS504において発生させた乱数Rbを結合させ、当該結合結果をコントローラ公開鍵「pKcnt」で暗号化する(S506)。ここで、ステップS506で暗号化された値は、「Enc{PKcnt(Ra|Rb)}」(以下、「値A」という。)と表すことができる。
【0134】
また、リーダ/ライタ機能搭載装置200は、ステップS502において受信した乱数Raと、ステップS504において発生させた乱数Rbを結合させたもののハッシュ値に対して、リーダ/ライタ機能秘密鍵「sKrw」で署名する(S508)。ここで、ステップS508で署名された値は、「sign−rw(Ra|Rb)」(以下、「値B」という。)と表すことができる。
【0135】
リーダ/ライタ機能搭載装置200は、ステップS506で暗号化した「値A」と、ステップS508で署名した「値B」を結合し、情報処理装置100へ送信する(S510)。ここで、ステップS510で送信された「Enc{PKcnt(Ra|Rb)}|sign−rw(Ra|Rb)」(以下、「値A|値B」という。)は、上述した第1の認証情報に該当する。
【0136】
ステップS510においてリーダ/ライタ機能搭載装置200から送信された「値A|値B」(第1の認証情報)を受信した情報処理装置100は、コントローラ秘密鍵を用いて「値A」を復号し、復号後のデータに乱数Raが含まれていることを確認する(S512;第1の認証処理)。そして、情報処理装置100は、ステップS512において復号して得られたデータのハッシュ値を算出する(S514)。
【0137】
また、情報処理装置100は、リーダ/ライタ機能搭載装置200に対応する認証対象公開鍵を用いて「値B」を復号し、得られた結果がステップS514で算出したハッシュ値と同一であることを確認する(S516;第2の認証処理)。
【0138】
情報処理装置100は、ステップS512〜S516が正常に行われた場合に、リーダ/ライタ機能搭載装置200をリーダ/ライタ機能を使用することができる正当な装置であると認定することができる。なお、ステップS512〜S516が正常に行われなかった場合には、情報処理装置100は、認証対象に対して認証が失敗した旨の通知を行ってもよい。
【0139】
ステップS512〜S516が正常に行われた場合、情報処理装置100は、リーダ/ライタ機能搭載装置200がステップS504で発生させた乱数Rb、情報処理装置100がステップS500で発生させた乱数Raの順に結合させる。そして、結合させた値を、リーダ/ライタ機能搭載装置200に対応する認証対象公開鍵で暗号化する(S518)。ここで、ステップS512で暗号化された値は、「Enc{PKrw(Rb|Ra)}」(以下、「値C」という。)と表すことができる。
【0140】
また、情報処理装置100は、乱数Rb、乱数Raの順に結合したもののハッシュ値に対して、コントローラ秘密鍵で署名する(S520)。ここで、ステップS514で署名された値は、「sign−cnt(Rb|Ra)」(以下、「値D」という。)と表すことができる。
【0141】
情報処理装置100は、ステップS518で暗号化した「値C」と、ステップS520で署名した「値D」を結合し、リーダ/ライタ機能搭載装置200へ送信する(S522)。ここで、ステップS522で送信された「Enc{PKrw(Rb|Ra)}|sign−cnt(Rb|Ra)」(以下、「値C|値D」という。)は、上述した第2の認証情報に該当する。
【0142】
ステップS522において情報処理装置100から送信された「値C|値D」(第2の認証情報)を受信したリーダ/ライタ機能搭載装置200は、リーダ/ライタ機能秘密鍵「sKrw」を用いて「値C」を復号し、復号後のデータに乱数Rbが含まれていることを確認する(S524;第3の認証処理)。そして、リーダ/ライタ機能搭載装置200は、ステップS524において復号して得られたデータのハッシュ値を算出する(S526)。
【0143】
また、リーダ/ライタ機能搭載装置200は、情報処理装置100に対応するコントローラ公開鍵「pKcnt」を用いて「値D」を復号し、得られた結果がステップS526で算出したハッシュ値と同一であることを確認する(S528;第4の認証処理)。
【0144】
リーダ/ライタ機能搭載装置200は、ステップS524〜S528が正常に行われた場合に、情報処理装置100をリーダ/ライタ機能を認証可能な正当な装置であると認定することができる。ステップS524〜S528に示すように、リーダ/ライタ機能搭載装置200側でも情報処理装置100に対する認証が行われることにより(すなわち、相互認証が行われることにより)、本発明の第1の実施形態に係る情報処理システムは、リーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用をより厳密に制御することができる。
【0145】
ステップS524〜S528が正常に行われた場合、リーダ/ライタ機能搭載装置200は、リーダ/ライタ機能相互認証済情報を生成し、記録する(S530)。そして、リーダ/ライタ機能搭載装置200は、情報処理装置100へ完了報告を送信する(S532)。ここで、ステップS530において生成されるリーダ/ライタ機能相互認証済情報の形式としては、例えば、フラグ形式や、公開暗号鍵を用いた証明書の形式などが挙げられるが、上記に限られない。リーダ/ライタ機能相互認証済情報が、例えば、フラグの形式をとることにより、短時間でリーダ/ライタ機能相互認証済情報を用いた処理を行うことができる。また、リーダ/ライタ機能相互認証済情報が、例えば、証明書の形式をとることにより、より信頼度の高い処理を行うことができる。
【0146】
本発明の第1の実施形態に係る情報処理システムは、例えば図13に示す処理によって、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能を使用させるための認証を、リーダ/ライタ機能搭載装置ごとに行うことができる。なお、本発明の第1の実施形態に係る情報処理システムにおける認証処理が、図13に示す例に限られないことは、言うまでもない。
【0147】
<認証処理の他の例>
また、上記では、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能を使用させるための認証処理について示したが、本発明の第1の実施形態に係る認証処理は、上記に限られない。例えば、本発明の第1の実施形態に係る情報処理システムは、図13に示す処理と同様に公開鍵を用いた相互認証を行うことによって、情報処理装置100が、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに停止させることもできる。
【0148】
情報処理装置100は、例えば、リーダ/ライタ機能搭載装置が認証禁止装置情報に対応する装置である場合において、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を停止させるための認証処理を行うことができる。上記の場合、たとえ、リーダ/ライタ機能搭載装置のリーダ/ライタ機能が有効となっていたとしても、情報処理装置100は、リーダ/ライタ機能の使用を停止させることができる。したがって、情報処理装置100は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0149】
再度図12を参照して、情報処理装置100における認証方法の一例について説明する。情報処理装置100は、認証対象から完了報告が送信されたかを判定する(S406)。ステップS406において完了報告が送信されていないと判定された場合、すなわち、完了報告が検出されない場合には、情報処理装置100は、ステップS404の認証処理を再度行う。なお、図12では図示していないが、例えば、ステップS404の処理開始から所定の時間経過しても認証対象から完了報告が送信されない場合や、ステップS404の処理を所定の回数繰り返した場合には、処理を終了させることもできる。
【0150】
また、ステップS406において完了報告が送信されたと判定された場合には、情報処理装置100は、認証を行った認証対象に対応する認証済装置情報を記録する(S408)。
【0151】
情報処理装置100は、例えば図12、図13に示す認証方法を用いることによって、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに認証し、当該リーダ/ライタ機能の使用を制御することができる。
【0152】
以上のように、本発明の第1の実施形態に係る情報処理システムは、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を当該装置ごとに認証するための情報処理装置100を有する。情報処理装置100は、情報処理装置100固有のコントローラ秘密鍵と、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置ごとにそれぞれ対応する認証対象公開鍵とを記憶することができる。そして、情報処理装置100は、例えば、(A)認証を行うリーダ/ライタ機能搭載装置に対して第1の認証情報を要求する、(B)認証を行うリーダ/ライタ機能搭載装置から取得した第1認証情報とコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて認証を行う、という一連の処理により、認証を行うリーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を認証することができる。したがって、第1の実施形態に係る情報処理装置100は、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0153】
また、情報処理装置100は、上記(A)、(B)の処理に加え、さらに(C)認証結果に応じて認証が正常な場合には相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信する、ことができる。情報処理装置100が第2の認証情報をリーダ/ライタ機能搭載装置へ送信することにより、リーダ/ライタ機能搭載装置は情報処理装置100を認証することができる。つまり、第1の実施形態に係る情報処理システムでは情報処理装置100とリーダ/ライタ機能搭載装置との間で相互認証が行われ、リーダ/ライタ機能搭載装置のリーダ/ライタ機能は、相互認証の結果に基づいて使用が制限される。したがって、情報処理装置100は、相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信することにより、例えば、悪意のある者が使用する装置による情報処理装置100のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【0154】
また、情報処理装置100は、認証が正常に行われたリーダ/ライタ機能搭載装置ごとにそれぞれに対応する認証済装置情報を記憶することができる。したがって、情報処理装置100は、記憶された認証済装置情報に基づいて、リーダ/ライタ機能が使用可能な状態のリーダ/ライタ機能搭載装置、すなわち、リーダ/ライタ機能が稼動しているリーダ/ライタ機能搭載装置を把握することができる。さらに、情報処理装置100は、ネットワーク350を介して、複数のリーダ/ライタ機能搭載装置200、300、…をそれぞれ認証することができるので、リーダ/ライタ機能を使用可能なリーダ/ライタ機能搭載装置を一元管理することができる。
【0155】
さらに、情報処理装置100は、認証が禁止されたリーダ/ライタ機能搭載装置を規定する認証禁止装置情報を記憶することができる。情報処理装置100は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置が認証の対象であるかを判定し、当該判定の結果に基づいて、リーダ/ライタ機能を使用させるための認証処理を行うことができる。したがって、情報処理装置100は、リーダ/ライタ機能の使用が禁止されたリーダ/ライタ機能搭載装置を認証対象から除外することができるので、いわゆるネガティブチェックを行うことができる。また、情報処理装置100は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置のリーダ/ライタ機能を停止させるための認証処理を行うこともできる。
【0156】
以上、本発明の第1の実施形態に係る情報処理システムを構成する構成要素として、情報処理装置100を挙げて説明したが、本発明の第1の実施形態は、係る形態に限られず、例えば、PC(Personal Computer)やサーバ(Server)などのコンピュータなどに適用することができる。
【0157】
また、本発明の第1の実施形態に係る情報処理システムを構成する構成要素として、リーダ/ライタ機能搭載装置200、300、…を挙げて説明したが、本発明の第1の実施形態は、係る形態に限られず、例えば、店頭などサービスの提供場所に設置されたリーダ/ライタ、リーダ/ライタ機能を備えた携帯電話などの携帯型通信装置、リーダ/ライタ機能を備えたICカード、リーダ/ライタ機能を備えたPCなどのコンピュータ、交通機関の自動改札機、入館や入室などに用いられるセキュリティ装置などに適用することができる。
【0158】
(第1の実施形態に係るプログラム)
第1の実施形態に係る情報処理装置100をコンピュータとして機能させるためのプログラムによって、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0159】
(第2の実施形態)
上記では、第1の実施形態に係る情報処理システムとして、情報処理装置100がネットワーク350を介してリーダ/ライタ機能搭載装置200、300、…それぞれと通信を行い、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限する構成を示した。しかしながら、本発明の実施形態に係る情報処理システムは、ネットワークを介して情報処理装置とリーダ/ライタ機能搭載装置とが通信を行う構成に限られない。そこで、次に、情報処理装置とリーダ/ライタ機能搭載装置とが、搬送波を用いて通信を行う第2の実施形態に係る情報処理システムについて説明する。
【0160】
図14は、本発明の第2の実施形態に係る情報処理システムを示すブロック図である。図14を参照すると、第2の実施形態に係る情報処理システムは、情報処理装置400と、リーダ/ライタ機能搭載装置200とを有する。ここで、図14に示すリーダ/ライタ機能搭載装置200は、図5に示す第1の実施形態に係るリーダ/ライタ機能搭載装置200と同様の構成を有することができる。
【0161】
[情報処理装置400]
情報処理装置400は、通信部102と、リーダ/ライタ機能制御部402と、鍵情報記憶部106と、記憶部108と、認証済情報記録部110と、認証対象判定部112とを備えることができる。ここで、情報処理装置400は、図5に示す第1の実施形態に係る情報処理装置100と基本的に同様の構成を有することができるが、リーダ/ライタ機能搭載装置200との通信手段が情報処理装置100と異なる。すなわち、第1の実施形態に係る情報処理装置100がネットワーク350を介してリーダ/ライタ機能搭載装置200と通信を行う構成であったのに対して、情報処理装置400は、搬送波を用いた近距離無線通信によってリーダ/ライタ機能搭載装置200と通信を行う。
【0162】
より具体的には、情報処理装置400は、例えば13.56MHzの搬送波を主体的に送信するリーダ/ライタ機能を備え、例えば、図1(b)に示す携帯電話20のように、リーダ/ライタ機能の使用を認証するリーダ/ライタ機能搭載装置200(例えば、図1(b)では携帯電話22に対応する。)に搬送波を送信することによって、リーダ/ライタ機能搭載装置200と通信を行うことができる。
【0163】
〔第1の認証パターン〕
情報処理装置400は、例えば、認証要求を送信する旨の送信命令をリーダ/ライタ機能搭載装置200へ送信することによって、リーダ/ライタ機能搭載装置200に認証要求の送信を行わせる。上記送信命令に応じて認証要求がリーダ/ライタ機能搭載装置200から送信されると、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、例えば、上述した図12、図13に示す認証方法を用いてリーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、有効な状態であるリーダ/ライタ機能搭載装置200のリーダ/ライタ機能を、無効な状態にさせることもできる。
【0164】
〔第2の認証パターン〕
上記では、第1の認証パターンとして、情報処理装置400がリーダ/ライタ機能搭載装置200に対して認証要求を送信する旨の送信命令を送信するパターンを例に挙げた。しかしながら、本発明の第2の実施形態に係る情報処理システムにおける認証パターンは、上記に限られない。例えば、リーダ/ライタ機能が有効な状態のリーダ/ライタ機能搭載装置200が、搬送波を用いて情報処理装置400に対して認証要求を送信することによって、情報処理装置400とリーダ/ライタ機能搭載装置200との通信が開始されてもよい。
【0165】
上記の場合であっても、情報処理装置400は、例えば上述した図12、図13に示す認証方法を用いてリーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。また、上記の場合、情報処理装置400は、有効な状態であるリーダ/ライタ機能搭載装置200のリーダ/ライタ機能を、無効な状態に制限することもできる。
【0166】
上記第1、第2の認証パターンで示したように、情報処理装置400とリーダ/ライタ機能搭載装置200とは、搬送波を用いた近距離無線通信によって通信を行い、当該通信により情報処理装置400は、リーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用を制限することができる。
【0167】
情報処理装置400は、リーダ/ライタ機能搭載装置200と搬送波を用いた近距離無線通信を行うために、例えば、リーダ/ライタ機能制御部402が通信機能を有することができる(すなわち、リーダ/ライタ機能制御部402が通信部の役目も果たすことができる。)。ここで、リーダ/ライタ機能制御部402は、例えば、図11に示すようなハードウェア構成を有するICチップで実現することができるが、上記に限られない。なお、本発明の第2の実施形態に係る情報処理装置は、リーダ/ライタ機能制御部402が搬送波を用いた近距離無線通信を行う機能を有する構成に限られず、例えば、通信部が、搬送波を用いた近距離無線通信を行う機能を有していてもよいことは、言うまでもない。
【0168】
情報処理装置400は、例えば図14に示す構成によって、第1の実施形態に係る情報処理装置100と同様に、リーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を制御することができる。
【0169】
以上のように、本発明の第2の実施形態に係る情報処理システムは、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を当該装置ごとに認証するための情報処理装置400を有する。情報処理装置400は、第1の実施形態に係る情報処理装置100と基本的に同様の構成、機能を有し、リーダ/ライタ機能搭載装置と搬送波を用いた近距離無線通信で通信を行うことができる。また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、情報処理装置400固有のコントローラ秘密鍵と、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置ごとにそれぞれ対応する認証対象公開鍵とを記憶することができる。そして、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、例えば、(A)認証を行うリーダ/ライタ機能搭載装置に対して第1の認証情報を要求する、(B)認証を行うリーダ/ライタ機能搭載装置から取得した第1認証情報とコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて認証を行う、という一連の処理により、認証を行うリーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を認証することができる。したがって、第2の実施形態に係る情報処理装置400は、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0170】
また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、上記(A)、(B)の処理に加え、さらに(C)認証結果に応じて認証が正常な場合には相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信する、ことができる。情報処理装置400が第2の認証情報をリーダ/ライタ機能搭載装置へ送信することにより、リーダ/ライタ機能搭載装置は情報処理装置400を認証することができる。つまり、第2の実施形態に係る情報処理システムでは、第1の実施形態に係る情報処理システムと同様に、情報処理装置400とリーダ/ライタ機能搭載装置との間で相互認証が行われ、リーダ/ライタ機能搭載装置のリーダ/ライタ機能は、相互認証の結果に基づいて使用が制限される。したがって、情報処理装置400は、相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信することにより、例えば、悪意のある者が使用する装置による情報処理装置400のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【0171】
また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、認証が正常に行われたリーダ/ライタ機能搭載装置ごとにそれぞれに対応する認証済装置情報を記憶することができる。したがって、情報処理装置400は、記憶された認証済装置情報に基づいて、リーダ/ライタ機能が使用可能な状態のリーダ/ライタ機能搭載装置、すなわち、リーダ/ライタ機能が稼動しているリーダ/ライタ機能搭載装置を把握することができる。
【0172】
さらに、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、認証が禁止されたリーダ/ライタ機能搭載装置を規定する認証禁止装置情報を記憶することができる。情報処理装置400は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置が認証の対象であるかを判定し、当該判定の結果に基づいて、リーダ/ライタ機能を使用させるための認証処理を行うことができる。したがって、情報処理装置400は、リーダ/ライタ機能の使用が禁止されたリーダ/ライタ機能搭載装置を認証対象から除外することができる。また、情報処理装置400は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置のリーダ/ライタ機能を停止させるための認証処理を行うこともできる。
【0173】
以上、本発明の第2の実施形態に係る情報処理システムを構成する構成要素として、情報処理装置400を挙げて説明したが、本発明の第2の実施形態は、係る形態に限られず、例えば、リーダ/ライタ機能を備えた携帯電話などの携帯型通信装置、リーダ/ライタ機能を備えたUMPC(Ultra Mobile Personal Computer)などのコンピュータなどに適用することができる。
【0174】
(第2の実施形態に係るプログラム)
第2の実施形態に係る情報処理装置400をコンピュータとして機能させるためのプログラムによって、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0175】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【0176】
例えば、本発明の実施形態に係る情報処理システムにおける認証処理の一例として、図13に示すような公開鍵相互認証を挙げて説明したが、本発明の実施形態に係る認証処理は、図13に示す例に限られない。例えば、本発明の実施形態に係る情報処理システムに係る認証処理では、様々な暗号アルゴリズムや鍵長、相互認証の方法などを適用することができる。
【0177】
上述した構成は、本発明の実施形態の一例を示すものであり、当然に、本発明の技術的範囲に属するものである。
【図面の簡単な説明】
【0178】
【図1】本発明の実施形態に係る情報処理システムが対象とする問題の一例を説明するための説明図である。
【図2】本発明の実施形態に係る情報処理システムにおける第1の解決アプローチを説明するための説明図である。
【図3】本発明の実施形態に係る情報処理システムにおける第2の解決アプローチを説明するための説明図である。
【図4】本発明の実施形態に係る情報処理システムにおける第3の解決アプローチを説明するための説明図である。
【図5】本発明の第1の実施形態に係る情報処理システムを示すブロック図である。
【図6】本発明の第1の実施形態に係る情報処理装置におけるリーダ/ライタ機能制御部のハードウェア構成の一例を示す説明図である。
【図7】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置の内部メモリにおけるメモリフォーマットの一例を示す説明図である。
【図8】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置へのリーダ/ライタ機能共通鍵の登録方法の一例を示す説明図である。
【図9】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置へのリーダ/ライタ機能秘密鍵の登録方法の一例を示す説明図である。
【図10】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置へのコントローラ公開鍵の登録方法の一例を示す説明図である。
【図11】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置におけるICチップのハードウェア構成の一例を示す説明図である。
【図12】本発明の第1の実施形態に係る情報処理システムにおける認証方法の一例を示す流れ図である。
【図13】本発明の第1の実施形態に係る情報処理システムにおける認証処理の一例を示すシーケンス図である。
【図14】本発明の第2の実施形態に係る情報処理システムを示すブロック図である。
【符号の説明】
【0179】
100、400 情報処理装置
102 通信部
104、402 リーダ/ライタ機能制御部
106 鍵情報記憶部
108 記憶部
110 認証済情報記録部
112 認証対象判定部
200、300 リーダ/ライタ機能搭載装置
202 チップ外通信部
204 ICチップ
206 チップ内通信部
208 搬送波送信部
210 内部メモリ
212 認証情報生成部
214 機能制御部
【技術分野】
【0001】
本発明は、情報処理装置、認証方法、プログラム、および情報処理システムに関する。
【背景技術】
【0002】
近年、非接触式IC(Integrated Circuit)カードや、非接触式ICチップを搭載した携帯電話など、リーダ/ライタ(または、リーダ/ライタ機能を有する情報処理装置)と非接触式に通信可能なICチップ搭載装置が普及している。リーダ/ライタとICチップ搭載装置とは、例えば13.56MHzなど特定の周波数の磁界を搬送波として用いることにより通信を行う。具体的には、リーダ/ライタが搬送波信号をのせた搬送波を送信し、搬送波をアンテナで受信したICチップ搭載装置が備えるICチップが負荷変調によって受信した搬送波信号に対する応答信号を返信することによって、リーダ/ライタとICチップ搭載装置とは通信を行うことができる。
【0003】
上記のようなリーダ/ライタと非接触式に通信可能なICチップ搭載装置は、耐タンパ性を有するICチップを備えることにより、例えば、電子マネーなどデータの改竄が問題となるデータの送受信や更新を安全に行うことができる。したがって、上記のようなリーダ/ライタと非接触式に通信可能な非接触式ICチップを搭載したICチップ搭載装置を利用した様々なサービスの提供が社会的に広がっている。そして、サービスの提供の広がりに伴い、非接触式ICチップを搭載した携帯電話などのICチップ搭載装置の普及がさらに進んでいる。
【0004】
リーダ/ライタとICチップ搭載装置との間における通信は上記のように安全に行うことができる。しかしながら、リーダ/ライタとICチップ搭載装置との間における通信は、例えば、ユーザがリーダ/ライタに対してICチップ搭載装置をかざすだけで通信が行われてしまう。したがって、ICチップ搭載装置は、例えば、PIN(Personal Identification Number)と呼ばれる番号(いわゆる、暗証番号)が入力されることによりICチップ内に記憶された電子マネーなどの使用を可能とすることによって、ICチップ搭載装置のユーザ以外の第三者による不正使用を防止している。
【0005】
このような中、例えば、ICチップを搭載した装置(ICチップ搭載装置)の使用を認証により制限する技術が開発されている。ユーザ認証のための補助装置を別途設けることにより、ユーザによるPIN入力を不要とする技術としては、例えば、特許文献1が挙げられる。また、セキュリティ端末装置(ICチップ搭載装置)の流通過程において、複数回の認証を行うことによって、セキュリティ端末装置(ICチップ搭載装置)にセキュリティ情報を安全に設定する技術としては、例えば、特許文献2が挙げられる。
【0006】
【特許文献1】特開2002−117378号公報
【特許文献2】特開2006−72565号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
携帯電話などのICチップ搭載装置は、年々多機能、高機能化が進んでおり、例えば、ICチップ搭載装置の中には、リーダ/ライタの機能(すなわち、搬送波を主体的に送信する機能。以下「リーダ/ライタ機能」という。)を備えるものも登場している。リーダ/ライタ機能がICチップ搭載装置に搭載されることによって、例えば、ユーザは、店頭の商品に付けられたICタグの情報を読み取り、その商品が何時どこで作られたものなのかを知ることができるなど、ユーザに様々な利便性を提供することができる。
【0008】
また、市場に広く普及している携帯電話などのICチップ搭載装置に搭載されたICチップには、例えば、搬送波を用いた近距離無線通信のシステム構成を簡易化するなどの理由により、所定のコマンド仕様に従ったコマンドに応じて記憶された情報を自由に読み書きすることが可能な記憶領域が設定されている。従来のリーダ/ライタはサービス提供場所に設置され、ユーザがICチップ搭載装置を自主的にリーダ/ライタにかざすことによって、リーダ/ライタとICチップ搭載装置との間で通信が行われる。したがって、リーダ/ライタが上記のような比較的自由な読み書きを行ったとしても、リーダ/ライタとICチップ搭載装置との間の通信は、「ICチップ搭載装置をリーダ/ライタにかざす」というユーザの自主的な行為に依存するため、大きな問題にはならなかった。しかしながら、リーダ/ライタ機能が携帯電話などのICチップ搭載装置に搭載されることによって、例えば、悪意のある第三者が、他者のICチップ搭載装置のICチップに記憶された情報(例えば、電子マネーの残高の情報など)を読み出したり、あるいは、ICチップにコンピュータウイルス(computer virus)などの悪意のある情報を書き込むなど、悪意をもった使用が想定される。
【0009】
上記のように、携帯電話などのICチップ搭載装置にリーダ/ライタ機能が搭載されることによって、ユーザは利便性を得るだけでなく、様々な危険に晒されることにもなりかねない。しかしながら、ICチップ搭載装置の使用を認証により制限する従来の技術は、リーダ/ライタから送信される搬送波を受信する側の装置における当該装置の利用を制限する技術であり、搬送波を主体的に送信するリーダ/ライタ機能を備えた装置における当該機能の利用を制限することについては、何らの考慮もなされていない。したがって、ICチップ搭載装置の使用を認証により制限する従来の技術を適用したとしても、ICチップ搭載装置における搬送波を主体的に送信するリーダ/ライタ機能の使用を制限できるとは限られない。よって、ICチップ搭載装置の使用を認証により制限する従来の技術を用いたとしても、上記のような悪意をもつ第三者による悪意をもった使用を防止することができるとは、限らない。
【0010】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することが可能な、新規かつ改良された情報処理装置、認証方法、プログラム、および情報処理システムを提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するために、本発明の第1の観点によれば、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置であって、上記リーダ/ライタ機能搭載装置と通信を行う通信部と、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と、上記リーダ/ライタ機能搭載装置に対して認証情報を要求し、上記要求に応じて上記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて、上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するリーダ/ライタ機能制御部とを備える情報処理装置が提供される。
【0012】
上記情報処理装置は、通信部と、鍵情報記憶部と、リーダ/ライタ機能制御部とを備えることができる。通信部は、リーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信を行うことができる。ここで、情報処理装置とリーダ/ライタ機能搭載装置とは、例えば、ネットワークを介して、または、搬送波を用いた近距離無線通信により通信を行うことができるが、上記に限られない。鍵情報記憶部は、情報処理装置固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象(リーダ/ライタ機能搭載装置)ごとに固有の認証対象公開鍵とを記憶することができる。リーダ/ライタ機能制御部は、認証対象となるリーダ/ライタ機能搭載装置に対して認証するために用いることが可能な認証情報を要求することができる。また、リーダ/ライタ機能制御部は、当該要求に応じて認証対象から送信された第1の認証情報と、鍵情報記憶部に記憶されたコントローラ秘密鍵および認証対象公開鍵とに基づいて、認証対象であるリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を、認証対象ごとに認証することができる。かかる構成により、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0013】
また、上記リーダ/ライタ機能制御部は、上記認証の結果が正常である場合には、上記第1の認証情報、上記コントローラ秘密鍵および上記認証対象公開鍵に基づいて、上記リーダ/ライタ機能搭載装置に相互認証をさせるための第2の認証情報を送信してもよい。
【0014】
かかる構成により、例えば、悪意のある者が使用する装置による情報処理装置のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【0015】
また、上記鍵情報記憶部は、上記リーダ/ライタ機能搭載装置との通信を暗号化するためのリーダ/ライタ機能共通鍵をさらに記憶し、上記リーダ/ライタ機能制御部は、上記リーダ/ライタ機能共通鍵を用いて上記第2の認証情報を暗号化して送信してもよい。
【0016】
かかる構成により、よりセキュア(secure)にリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0017】
また、上記認証の結果が正常である場合において、認証が正常に行われたリーダ/ライタ機能搭載装置を示す認証済装置情報を記録する認証済情報記録部をさらに備えてもよい。
【0018】
かかる構成により、リーダ/ライタ機能が使用可能な状態のリーダ/ライタ機能搭載装置、すなわち、リーダ/ライタ機能が稼動しているリーダ/ライタ機能搭載装置を把握することができる。また、かかる構成により、リーダ/ライタ機能を使用可能なリーダ/ライタ機能搭載装置を一元管理することもできる。
【0019】
また、上記リーダ/ライタ機能制御部における認証をリーダ/ライタ機能搭載装置ごとに制限する認証禁止装置情報を記憶する記憶部と、上記認証禁止装置情報に基づいて、上記認証情報を要求するリーダ/ライタ機能搭載装置が認証対象であるかを判定する認証対象判定部とをさらに備え、上記リーダ/ライタ機能制御部は、上記認証対象判定部の判定結果に応じて認証情報の要求を行ってもよい。
【0020】
かかる構成により、リーダ/ライタ機能の使用が制限された(例えば、禁止された)リーダ/ライタ機能搭載装置を認証対象から除外し、ネガティブチェックを行うことができる。
【0021】
また、上記情報処理装置はサーバであってもよい。
【0022】
かかる構成により、1以上のリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を、リーダ/ライタ機能搭載装置ごとに一元管理することができる。
【0023】
また、上記情報処理装置は携帯型通信装置であってもよい。
【0024】
かかる構成により、情報処理装置を可搬することができる。
【0025】
また、上記目的を達成するために、本発明の第2の観点によれば、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置における認証方法であって、リーダ/ライタ機能搭載装置に対して認証情報を要求するステップと、上記要求するステップにおける要求に応じて上記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップと、上記受信するステップにおいて受信された上記認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて、上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップとを有する認証方法が提供される。
【0026】
かかる方法を用いることにより、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0027】
また、上記目的を達成するために、本発明の第3の観点によれば、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置に用いることが可能なプログラムであって、リーダ/ライタ機能搭載装置に対して認証情報を要求するステップ、上記要求するステップにおける要求に応じて上記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップ、上記受信するステップにおいて受信された上記認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて、上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップをコンピュータに実行させるためのプログラムが提供される。
【0028】
かかるプログラムにより、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0029】
また、上記目的を達成するために、本発明の第4の観点によれば、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と、上記リーダ/ライタ機能搭載装置と通信可能な情報処理装置とを有する情報処理システムであって、上記情報処理装置は、上記リーダ/ライタ機能搭載装置と通信を行う通信部と、固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と、上記リーダ/ライタ機能搭載装置に対して認証情報を要求し、上記要求に応じて上記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、上記鍵情報記憶部に記憶された上記コントローラ秘密鍵および上記認証対象公開鍵とに基づいて上記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証し、認証結果に応じて第2の認証情報を送信するリーダ/ライタ機能制御部とを備え、上記リーダ/ライタ機能搭載装置は、搬送波を送信可能な搬送波送信部と、上記情報処理装置と通信を行う通信部と、固有のリーダ/ライタ機能秘密鍵と、上記情報処理装置に対応するコントローラ公開鍵とを記憶する記憶部と、上記情報処理装置から送信される上記要求、上記リーダ/ライタ機能秘密鍵および上記コントローラ公開鍵に基づく上記第1の認証情報を生成して送信する認証情報生成部と、上記情報処理装置から送信される上記第2の認証情報と上記リーダ/ライタ機能秘密鍵および上記コントローラ公開鍵とに基づいて上記情報処理装置を認証し、認証結果に応じて上記搬送波送信部における搬送波の送信を可能とさせる機能制御部とを備える情報処理システムが提供される。
【0030】
かかる構成により、情報処理装置とリーダ/ライタ機能搭載装置との間で相互認証を行うことができ、当該相互認証の結果に基づいてリーダ/ライタ機能搭載装置のリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。また、かかる構成により、例えば、悪意のある者が使用する装置による情報処理装置のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【発明の効果】
【0031】
本発明によれば、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【発明を実施するための最良の形態】
【0032】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0033】
(本発明の実施形態が対象とする問題の一例)
本発明の実施形態に係る情報処理システムについて説明する前に、まず、本発明の実施形態に係る情報処理システムが対象とする問題の一例について説明する。
【0034】
図1は、本発明の実施形態に係る情報処理システムが対象とする問題の一例を説明するための説明図である。
【0035】
[第1の例]
図1(a)は、ユーザが電子マネーを用いた購買サービスを受ける場合を示す説明図である。図1(a)に示すように、店頭などサービス提供場所に設定されたリーダ/ライタ10(リーダ/ライタ機能搭載装置)に対して、ユーザがICチップを搭載した携帯電話12をかざすことにより、ユーザは、電子マネーを用いた購買サービスを受けることができる。これは、リーダ/ライタ10(リーダ/ライタ機能搭載装置)と携帯電話12とが、例えば13.56MHzなど所定周波数の磁界(以下、「搬送波」という。)を用いて通信を行うことができるためである。より具体的には、リーダ/ライタ10(リーダ/ライタ機能搭載装置)が搬送波信号をのせた搬送波を送信し、搬送波をアンテナで受信した携帯電話12が備えるICチップが負荷変調によって受信した搬送波信号に対する応答信号を返信することによって、リーダ/ライタ10と携帯電話12とは通信を行うことができる。
【0036】
ここで、図1(a)の場合には、ユーザは、電子マネーを用いた購買サービスを受けるために、携帯電話12を自主的にリーダ/ライタ10へかざしている。つまり、図1(a)の場合には、ユーザは、通信の具体的な内容までは把握できないものの、リーダ/ライタ10と携帯電話12との間の通信を行うか否かを制御することができる。したがって、図1(a)の場合には、携帯電話12のユーザに不測の不利益が生じる可能性は小さい。
【0037】
[第2の例]
図1(b)は、リーダ/ライタ機能を備えた携帯電話20(リーダ/ライタ機能搭載装置)とICチップを搭載した携帯電話12との間の搬送波を用いた通信を示す説明図である。図1(b)に示すように携帯電話12のユーザがかざす行為を行わない場合であっても、リーダ/ライタ機能を備えた携帯電話20から発せられた搬送波を受信すると、携帯電話12は、受信された搬送波に応じた処理(例えば、データの読み出し処理や書き込み処理など)を行い、携帯電話20へ応答してしまう。ここで、搬送波はユーザの目に見えないため、携帯電話12のユーザは、携帯電話20と携帯電話12との間の通信の具体的な内容だけでなく、通信が行われた事実さえ知る余地はない。つまり、図1(b)の場合には、ユーザは、通信の具体的な内容を把握できないだけでなく、リーダ/ライタ機能を備えた携帯電話20(リーダ/ライタ機能搭載装置)と携帯電話12との間の通信を行うか否かを制御することもできない。
【0038】
したがって、図1(b)の場合において、悪意をもつ第三者がリーダ/ライタ機能を備えた携帯電話20(リーダ/ライタ機能搭載装置)を悪意をもって使用したときには、例えば、携帯電話22のICチップに記憶された情報(例えば、電子マネーの残高の情報など)が勝手に読み出されたり、あるいは、ICチップにコンピュータウイルスなどの悪意のある情報が書き込まれるなど、携帯電話22のユーザに不測の不利益が生じることが起こりうる。
【0039】
本発明の実施形態に係る情報処理システムでは、図1(b)の場合を問題として捉え、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制限させることにより、その解決を図る。なお、本発明の実施形態に係る情報処理システムは、図1(b)の場合においてリーダ/ライタ機能の使用を制限させることに限られず、例えば、図1(a)に示すリーダ/ライタ10におけるリーダ/ライタ機能の使用を制限することもできることは、言うまでもない。
【0040】
(本発明の実施形態に係る解決アプローチ)
本発明の実施形態に係る情報処理システムは、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制限するための情報処理装置を有することにより、上記のような問題の解決を図る。ここで、本発明の実施形態に係る情報処理システムにおける上記のような問題を解決するためのアプローチとしては、例えば、以下の〔1〕〜〔4〕の方法が挙げられる。
【0041】
〔1〕第1の解決アプローチ
図2は、本発明の実施形態に係る情報処理システムにおける第1の解決アプローチを説明するための説明図である。図2では、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制限するための情報処理装置をリーダ/ライタ機能制御装置として示し、リーダ/ライタ機能制御装置が、リーダ/ライタ機能搭載装置における非接触ICチップ搭載装置が備えるICチップへのアクセスをどのように制御するかを示している。図2におけるリーダ/ライタ機能制御装置とリーダ/ライタ機能搭載装置とは、例えば、有線/無線で通信を行うことができ、また、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置とは、例えば、搬送波を用いて通信を行うことができるが、上記に限られない。
【0042】
リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置に対して、非接触ICチップ搭載装置へアクセスするためのアクセスコマンドを発行する(S10)。ステップS10におけるアクセスコマンドを受信したリーダ/ライタ機能搭載装置は、当該アクセスコマンドに応じて、非接触ICチップ搭載装置のICチップへアクセスする。そして、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信が開始される。
【0043】
図2に示す第1の解決アプローチを用いることにより、リーダ/ライタ機能搭載装置はリーダ/ライタ機能制御装置からのアクセスコマンドがなければ非接触ICチップ搭載装置のICチップへとアクセスすることができなくなる。したがって、リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御することができるので、上述した問題の解決を図ることができる。
【0044】
〔2〕第2の解決アプローチ
図3は、本発明の実施形態に係る情報処理システムにおける第2の解決アプローチを説明するための説明図である。図3では、図2と同様に、情報処理装置をリーダ/ライタ機能制御装置として示し、リーダ/ライタ機能制御装置が、リーダ/ライタ機能搭載装置における非接触ICチップ搭載装置が備えるICチップへのアクセスをどのように制御するかを示している。また、図3におけるリーダ/ライタ機能制御装置と非接触ICチップ搭載装置とは、例えば、電波を用いて無線で通信を行うことができる。また、リーダ/ライタ機能搭載装置とは、例えば、有線/無線で通信を行うことができ、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置とは、例えば、搬送波を用いて通信を行うことができるが、上記に限られない。
【0045】
リーダ/ライタ機能制御装置は、非接触ICチップとの間で、例えば、公開鍵を用いた相互認証を行う(S20)。ステップS20における相互認証の方法としては、例えば、ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission) 9798−3において規格化されている方法が挙げられるが、上記に限られない。
【0046】
リーダ/ライタ機能制御装置は、ステップS20における認証において得られた暗号鍵を用いてアクセスコマンドを暗号化し、リーダ/ライタ機能搭載装置に対して、非接触ICチップ搭載装置へアクセスするための暗号化されたアクセスコマンドを発行する(S22)。ステップS22におけるアクセスコマンドを受信したリーダ/ライタ機能搭載装置は、当該アクセスコマンドに応じて、非接触ICチップ搭載装置のICチップへアクセスする。そして、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信が開始される。
【0047】
図3に示す第2の解決アプローチを用いた場合も、図2に示す第1の解決アプローチと同様に、リーダ/ライタ機能搭載装置はリーダ/ライタ機能制御装置からのアクセスコマンドがなければ非接触ICチップ搭載装置のICチップへとアクセスすることができなくなる。したがって、リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御することができるので、上述した問題の解決を図ることができる。
【0048】
〔3〕第3の解決アプローチ
図4は、本発明の実施形態に係る情報処理システムにおける第3の解決アプローチを説明するための説明図である。図4では、図2と同様に、情報処理装置をリーダ/ライタ機能制御装置として示し、リーダ/ライタ機能制御装置が、リーダ/ライタ機能搭載装置における非接触ICチップ搭載装置が備えるICチップへのアクセスをどのように制御するかを示している。また、図4における各装置間の通信は、図2の場合と同様に行うことができる。
【0049】
リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置との間で、例えば、公開鍵を用いた相互認証を行う(S30)。また、リーダ/ライタ機能搭載装置は、非接触ICチップ搭載装置との間で、例えば、公開鍵を用いた相互認証を行う(S32)。
【0050】
ステップS32において相互認証が行われると、リーダ/ライタ機能搭載装置は、リーダ/ライタ機能制御装置に処理結果を送信する(S34)。
【0051】
ステップS34において送信された処理結果を受信したリーダ/ライタ機能制御装置は、ステップS30における認証において得られた暗号鍵を用いてアクセスコマンドを暗号化し、リーダ/ライタ機能搭載装置に対して、非接触ICチップ搭載装置へアクセスするための暗号化されたアクセスコマンドを発行する(S34)。ステップS34におけるアクセスコマンドを受信したリーダ/ライタ機能搭載装置は、、当該アクセスコマンドに応じて、ステップS32における認証において得られた暗号鍵を用いて非接触ICチップ搭載装置のICチップへアクセスする。そして、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信が開始される。
【0052】
図4に示す第3の解決アプローチを用いた場合も、図2に示す第1の解決アプローチと同様に、リーダ/ライタ機能搭載装置はリーダ/ライタ機能制御装置からのアクセスコマンドがなければ非接触ICチップ搭載装置のICチップへとアクセスすることができなくなる。したがって、リーダ/ライタ機能制御装置は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御することができるので、上述した問題の解決を図ることができる。
【0053】
〔4〕第4の解決アプローチ
上述した第1〜第3の解決アプローチを用いることによって、情報処理装置(図2〜4に示すリーダ/ライタ機能制御装置)は、リーダ/ライタ機能搭載装置と非接触ICチップ搭載装置との間の通信を制御することができる。しかしながら、例えば、第1の解決アプローチでは通信の暗号化が行われていないために、通信内容が第三者に漏れたり、データの改竄が行われる可能性が否定できない。また、例えば、第2、第3の解決アプローチにおける相互認証は、複数のリーダ/ライタ機能搭載装置、複数の非接触ICチップ搭載装置で共通の鍵を用いることから、個々の装置を個別に認証することができない。そこで、本発明の実施形態に係る情報処理システムでは、第4の解決アプローチとして、個々のリーダ/ライタ機能搭載装置をそれぞれ個別に認証することにより、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を制御する。
【0054】
以下に、上記第4の解決アプローチを用いた本発明の実施形態に係る情報処理システムについて説明する。
【0055】
(第1の実施形態)
図5は、本発明の第1の実施形態に係る情報処理システムを示すブロック図である。第1の実施形態に係る情報処理システムは、情報処理装置100と、リーダ/ライタ機能搭載装置200、300、…とを有し、情報処理装置100とリーダ/ライタ機能搭載装置200、300、…とは、ネットワーク350で通信可能に接続される。ここで、ネットワーク350としては、例えば、LAN(Local Area Network)やWAN(Wide Area Network)など有線ネットワーク、MIMO(Multiple-Input Multiple-Output)を用いたWLAN(Wireless Local Area Network)などの無線ネットワーク、あるいは、TCP/IP(Transmission Control Protocol/Internet Protocol)などの通信プロトコルを用いたインターネット(Internet)などが挙げられるが、上記に限られない。また、情報処理装置100とリーダ/ライタ機能搭載装置200、300、…とは、基地局(図示せず)を介して接続されてもよい。
【0056】
[情報処理装置100]
情報処理装置100は、通信部102と、リーダ/ライタ機能制御部104と、鍵情報記憶部106と、記憶部108と、認証済情報記録部110と、認証対象判定部112とを備えることができる。
【0057】
また、情報処理装置100は、MPU(Micro Processing Unit)などで構成され、制御用プログラムなどを用いて様々な演算処理を行い情報処理装置100全体を制御する制御部(図示せず)、制御部(図示せず)が使用するプログラムや演算パラメータなどの制御用データが記録されたROM(Read Only Memory;図示せず)、制御部(図示せず)により実行されるプログラムなどを一次記憶するRAM(Random Access Memory;図示せず)、ユーザが操作可能な操作部(図示せず)、表示部(図示せず)などを備えてもよい。情報処理装置100は、例えば、データの伝送路としてのバス(bus)で各構成要素間を接続することができる。
【0058】
ここで、操作部(図示せず)としては、例えば、キーボードやマウスなどの操作入力デバイスや、ボタン、方向キー、ジョグダイヤルなどの回転型セレクター、あるいは、これらの組み合わせなどが挙げられるが、上記に限られない。また、表示部(図示せず)としては、例えば、LCD(Liquid Crystal Display;液晶ディスプレイ)、有機ELディスプレイ(organic ElectroLuminescence display;または、OLEDディスプレイ(Organic Light Emitting Diode display)とも呼ばれる。)などが挙げられるが、上記に限られない。なお、操作部(図示せず)と表示部(図示せず)とは、例えば、タッチスクリーン(touch screen)で構成された一体の部とすることもできる。
【0059】
また、情報処理装置100は、例えば、制御部(図示せず)、認証済情報記録部110、および認証対象判定部112がそれぞれ別体のMPUなどを備える構成とすることができるが、かかる構成に限られない。例えば、情報処理装置100は、制御部(図示せず)、認証済情報記録部110、および認証対象判定部112を、MPUなどで構成された一体の部とすることもできる。また、情報処理装置100は、例えば、リーダ/ライタ機能制御部104、認証済情報記録部110、および認証対象判定部112を一体の部とすることもできる。
【0060】
通信部102は、ネットワーク350を介してリーダ/ライタ機能搭載装置200、300、…と通信を行うための部であり、ネットワーク350との接続形態に応じたインタフェースを有することができる。
【0061】
リーダ/ライタ機能制御部104は、リーダ/ライタ機能搭載装置ごとに、各リーダ/ライタ機能搭載装置が備えるリーダ/ライタ機能の使用を認証する。より具体的には、リーダ/ライタ機能制御部104は、例えば、リーダ/ライタ機能搭載装置から認証の要求があった場合、以下の(A)〜(C)の手順によって、リーダ/ライタ機能搭載装置が備えるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに認証する。なお、以下では、認証を行う対象となるリーダ/ライタ機能搭載装置を、「認証対象」と呼ぶ場合もある。
【0062】
(A)認証対象(認証を行うリーダ/ライタ機能搭載装置)に対して認証情報を要求する(以下、認証対象に要求する認証情報を「第1の認証情報」という。)
(B)認証対象から取得した第1認証情報とコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて認証を行う
(C)認証結果に応じて、認証が正常な場合には、相互認証のための認証情報を認証対象に送信する(以下、認証対象に送信する認証情報を「第2の認証情報」という。)
【0063】
ここで、上記(B)において認証に用いるコントローラ秘密鍵は、情報処理装置100固有の暗号鍵であり、また、認証対象公開鍵は、認証対象となるリーダ/ライタ機能搭載装置ごとに固有の暗号鍵である。リーダ/ライタ機能制御部104は、認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵を用いることによって、リーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能搭載装置が備えるリーダ/ライタ機能の使用を認証することができる。なお、本発明の実施形態に係る第1の認証情報、第2の認証情報の具体例、および認証方法については、後述する。
【0064】
また、リーダ/ライタ機能制御部104は、認証に用いるコントローラ秘密鍵や認証対象公開鍵、あるいは、認証対象との通信の暗号化に用いるリーダ/ライタ機能共通鍵などの各種暗号鍵情報を記憶する鍵情報記憶部106を、内部に備えることができる。リーダ/ライタ機能制御部104が内部に備える鍵情報記憶部106から各種鍵情報を適宜読み出して使用することにより、例えば、鍵情報の漏洩を防止することができる。なお、本発明の第1の実施形態に係るリーダ/ライタ機能制御部104が、鍵情報記憶部106を内部に備える構成に限られないことは、言うまでもない。また、第1の情報処理システムは、例えば、さらに鍵情報を記憶する鍵情報記憶装置を有し、情報処理装置100が、当該鍵情報記憶装置から鍵情報を取得することもできる。
【0065】
さらに、リーダ/ライタ機能制御部104は、耐タンパ性を有するICチップで構成することもできるが、上記に限られない。
【0066】
〔リーダ/ライタ機能制御部104のハードウェア構成例〕
ここで、リーダ/ライタ機能制御部104のハードウェア構成例を示す。図6は、本発明の第1の実施形態に係る情報処理装置100におけるリーダ/ライタ機能制御部104のハードウェア構成の一例を示す説明図である。
【0067】
図6を参照すると、リーダ/ライタ機能制御部104は、例えば、MPU150と、ROM152と、RAM154と、不揮発性メモリ156と、UART(Universal Asynchronous Receiver Transmitter)158とを備えることができ、また各構成要素はチップ内部バス160で接続される。また、リーダ/ライタ機能制御部104は、UART158を介して情報処理装置100のバス162と接続される。図6では、例えば、不揮発性メモリ156が鍵情報記憶部106に対応することができるが、上記に限られないことは、言うまでもない。
【0068】
MPU150は、UART158を介して認証対象へ第1の認証情報を要求する(通信部に要求を送信させる)。また、MPU150は、UART158を介して認証対象から送信された第1の認証情報と、不揮発性メモリ156から読み出したコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて、認証を行うことができる。
【0069】
ROM192は、MPU191が使用するプログラムや演算パラメータなどの制御用データを記憶することができ、またRAM193は、MPU191により実行されるプログラムなどを一次記憶することができる。
【0070】
また、不揮発性メモリ156は、リーダ/ライタ機能制御部104が内部に備える記憶部である。不揮発性メモリ156としては、例えば、EEPROM(Electronically Erasable and Programmable Read Only Memory)、フラッシュメモリ(flash memory)、MRAM(Magnetoresistive Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、PRAM(Phase change Random Access Memory)などが挙げられるが、上記に限られない。
【0071】
リーダ/ライタ機能制御部104は、図6に示すようなハードウェア構成により上述した機能を実現することができる。なお、本発明の実施形態に係るリーダ/ライタ機能制御部104のハードウェア構成が図3に限られないことは、言うまでもない。また、リーダ/ライタ機能制御部104は、図3の構成を集積回路(IC)で実現してもよい。
【0072】
また、リーダ/ライタ機能制御部104は、認証対象からの認証の要求があった場合に認証を行う構成に限られず、例えば、後述する認証対象判定部112における判定の結果に応じて、認証対象の認証を行うか否かを切り替えることもできる。
【0073】
再度図5を参照して、情報処理装置100の構成要素について説明する。鍵情報記憶部106は、コントローラ秘密鍵や、認証対象ごとに固有の認証対象公開鍵、あるいは、認証対象との通信の暗号化に用いるリーダ/ライタ機能共通鍵などの各種暗号鍵情報を記憶することができる。ここで、図5では、鍵情報記憶部106に、リーダ/ライタ機能共通鍵120、コントローラ秘密鍵122、リーダ/ライタ機能搭載装置200に対応する認証対象公開鍵A124、リーダ/ライタ機能搭載装置300に対応する認証対象公開鍵B126、…が記憶されている例を示している。
【0074】
ここで、コントローラ秘密鍵は、例えば、リーダ/ライタ機能制御部104が生成して鍵情報記憶部106に記憶することができるが、上記に限られない。また、認証対象ごとに固有の認証対象公開鍵や、認証対象との通信の暗号化に用いるリーダ/ライタ機能共通鍵は、セキュアに鍵情報記憶部106に記憶することができれば、記憶の方法は限られない。
【0075】
記憶部108は、情報処理装置100が備える記憶手段であり、例えば、認証済情報記録部110が生成する認証が完了した認証対象の情報が記録された認証済装置情報や、認証対象判定部112が認証対象を判定するために用いることが可能な認証禁止装置情報などの各種情報を記憶することができる。なお、図5では、1の認証済装置情報130と1の認証禁止装置情報132とが記憶部108に記憶されている例を示しているが、上記に限られず、認証対象ごとに認証済装置情報、認証禁止装置情報を記憶することができる。また、上記認証禁止装置情報は、例えば、操作部(図示せず)を用いたユーザ入力に応じて制御部(図示せず)が生成し記録することができるが、上記に限られない。例えば、上記認証禁止装置情報は、外部装置(図示せず)から送信され、通信部102を介して記憶部108に記憶することもできる。
【0076】
また、記憶部108としては、例えば、ハードディスク(Hard Disk)などの磁気記録媒体や、EEPROM、フラッシュメモリなどの不揮発性メモリ(nonvolatile memory)が挙げられるが、上記に限られない。なお、図5では、鍵情報記憶部106と記憶部108とが別体として示されているが、本発明の実施形態に係る情報処理装置100は、例えば、鍵情報記憶部106と記憶部108とを一体の部として備えることもできる。
【0077】
認証済情報記録部110は、リーダ/ライタ機能制御部104においてリーダ/ライタ機能が正常に認証されると、すなわち、認証処理が正常に完了すると、認証を行った認証対象に対応する認証済装置情報を記録する。ここで、認証済装置情報とは、認証対象のリーダ/ライタ機能搭載装置がリーダ/ライタ機能の使用を正常に認証された認証対象であるかを情報処理装置100側で特定することが可能な情報である。認証済装置情報としては、例えば、認証対象のMACアドレス(Media Access Control address)などが挙げられるが、上記に限られず、個々の認証対象を識別可能な認証対象ごとに固有の情報であればよい。
【0078】
認証対象判定部112は、記憶部108に記憶された認証禁止装置情報に基づいて、認証を行う認証対象が認証を行う対象であるかを判定し、判定の結果をリーダ/ライタ機能制御部104に伝達する。リーダ/ライタ機能制御部104は、認証対象判定部112から伝達された判定の結果に応じて認証処理を実行する。
【0079】
例えば、認証対象判定部112が認証対象について認証を行う対象ではないと判定した場合、すなわち、認証対象を示す認証禁止装置情報が記憶部108に記憶されていた場合には、リーダ/ライタ機能制御部104は、認証対象のリーダ/ライタ機能の使用に係る認証処理を行わない。また、認証対象判定部112が認証対象について認証を行う対象であると判定した場合、すなわち、認証対象を示す認証禁止装置情報が記憶部108に記憶されていない場合には、リーダ/ライタ機能制御部104は、認証対象のリーダ/ライタ機能の使用に係る認証処理を行う。したがって、情報処理装置100は、認証対象におけるリーダ/ライタ機能の使用を認証禁止装置情報を用いることによって、フレキシブルに制御することができる。
【0080】
情報処理装置100は、例えば図5に示す構成によって、リーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を制御することができる。
【0081】
[リーダ/ライタ機能搭載装置]
次に、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置について説明する。以下では、リーダ/ライタ機能搭載装置200を例に挙げて説明するが、リーダ/ライタ機能搭載装置300、…も同様の構成をとることができるので、リーダ/ライタ機能搭載装置300、…については説明を省略する。また、以下では、リーダ/ライタ機能搭載装置200がICチップを備え、当該ICチップがリーダ/ライタ機能を有する構成を例に挙げて説明するが、本発明の実施形態に係るリーダ/ライタ機能搭載装置は、かかる構成に限られない。例えば、本発明の実施形態に係るリーダ/ライタ機能搭載装置は、リーダ/ライタ機能を、ICチップとは別体の部により実現することもできる。
【0082】
リーダ/ライタ機能搭載装置200は、チップ外通信部202と、ICチップ204とを備えることができる。
【0083】
また、リーダ/ライタ機能搭載装置200は、MPUなどで構成され、制御用プログラムなどを用いて様々な演算処理を行いリーダ/ライタ機能搭載装置200全体を制御する制御部(図示せず)や、制御部(図示せず)が使用するプログラムや演算パラメータなどの制御用データが記録されたROM、制御部(図示せず)により実行されるプログラムなどを一次記憶するRAM、ユーザが操作可能な操作部(図示せず)、表示部(図示せず)、リーダ/ライタ機能搭載装置200の各構成要素に電力を供給するための内部電源(図示せず)などを備えてもよい。リーダ/ライタ機能搭載装置200は、例えば、データの伝送路としてのバスで各構成要素間を接続することができる。
【0084】
ここで、操作部(図示せず)としては、例えば、ボタン、方向キー、ジョグダイヤルなどの回転型セレクター、あるいは、これらの組み合わせなどが挙げられるが、上記に限られない。また、表示部(図示せず)としては、例えば、LCD、有機ELディスプレイなどが挙げられるが、上記に限られない。なお、操作部(図示せず)と表示部(図示せず)とは、例えば、タッチスクリーンで構成された一体の部とすることもできる。
【0085】
チップ外通信部202は、ネットワーク350を介して情報処理装置100と通信を行うための部であり、ネットワーク350との接続形態に応じたインタフェースを有することができる。
【0086】
ICチップ204は、例えば、13.56MHzなど所定の周波数の搬送波を用いた近距離無線通信に係る様々な部を集積回路にて実現したものであり、耐タンパ性を有することができる。ICチップ204は、リーダ/ライタ機能を有する外部装置(例えば、図1(a)に示すリーダ/ライタ10など。以下、「外部装置」という。)から送信される各種命令やデータ、または、チップ外通信部202を介して受信された情報処理装置100からの各種命令(例えば、制御部(図示せず)により伝達される。)など、ICチップ204の外部からの命令などに応じて様々なデータ処理を行うことができる。
【0087】
〔ICチップ204〕
ICチップ204は、チップ内通信部206と、搬送波送信部208と、内部メモリ210と、認証情報生成部212と、機能制御部214とを備えることができる。
【0088】
また、ICチップ204は、MPUなどで構成されICチップ204全体を制御し、また、所定の演算処理やコマンド生成などを実行するチップ内制御部(図示せず)や、チップ内通信部206が受信した搬送波からハイレベル(High)とローレベル(Low)との2値化されたデータ信号を取り出す(復調する)データ受信部(図示せず)、チップ内通信部206が受信した搬送波に基づいてチップ内制御部(図示せず)などを駆動させるための駆動電圧を出力するチップ内電源部(図示せず)、矩形のクロック信号を生成するクロック生成部(図示せず)、チップ内制御部(図示せず)が使用する管理用データ、プログラムなどが記憶されるROM、ICチップ204外の構成要素との間のインタフェースとしての役割を果たすUARTなどを備えることもできる。
【0089】
チップ内通信部206は、例えば、送受信アンテナとしての所定のインダクタンスをもつコイルと、所定の静電容量をもつキャパシタとからなる共振回路を有し、外部装置から送信される搬送波を受信することができる。また、チップ内通信部206は、例えば、負荷変調回路を備えて負荷変調を行い外部装置からみたリーダ/ライタ機能搭載装置200のインピーダンスを変化させることにより、搬送波を介して外部装置と通信を行うことができる。なお、図5では、チップ内通信部206がICチップ204の内部に備えられる構成を示しているが、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置の構成は、上記に限られない。例えば、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置は、送受信アンテナをICチップ204の外部に備えることもできるし、送受信アンテナとICチップとを一体のパッケージとして備えることもできる。
【0090】
搬送波送信部208は、チップ内通信部206が備える共振回路(送受信アンテナ)から搬送波信号をのせた搬送波を送信する。リーダ/ライタ機能搭載装置200は、搬送波送信部208を備えることにより、リーダ/ライタ機能、すなわち、搬送波を主体的に送信する機能を有することができる。ここで、搬送波送信部208は、例えば、ASK変調(Amplitude Shift Keying)を行う変調回路、変調回路の出力を増幅する増幅回路を備えることができるが、本発明の実施形態に係る搬送波送信部208の構成は、上記に限られない。
【0091】
また、搬送波送信部208は、後述する機能制御部214によって搬送波の送信が制御される。したがって、リーダ/ライタ機能搭載装置200は、機能制御部214により搬送波の送信が制御されることによって、リーダ/ライタ機能の使用を制限することができる。
【0092】
内部メモリ210は、ICチップ204内に備わる記憶部であり、耐タンパ性を有することができる。内部メモリ210には、例えば、リーダ/ライタ機能搭載装置200が有する機能を実現するためのアプリケーション(図示せず)や、リーダ/ライタ機能搭載装置200が備えるICチップを用いてサービスを受けるためのデータ(サービスデータ;図示せず)、ICチップ204が対応するサービスを表すコード(例えば、サービスコード、システムコードなど;図示せず)などを記憶することができる。
【0093】
また、内部メモリ210には、リーダ/ライタ機能搭載装置200に固有のリーダ/ライタ機能秘密鍵や、情報処理装置100に対応するコントローラ公開鍵、情報処理装置100との通信の暗号化に用いるリーダ/ライタ機能共通鍵などの各種暗号鍵情報を記憶することができる。さらに、内部メモリ210は、後述する機能制御部214により生成されたリーダ/ライタ機能相互認証済情報を記憶することもできる。ここで、図5では、内部メモリ210に、リーダ/ライタ機能共通鍵120、リーダ/ライタ機能秘密鍵220、コントローラ公開鍵222、およびリーダ/ライタ機能相互認証済情報224が記憶されている例を示している。
【0094】
また、内部メモリ210としては、例えば、EEPROM、フラッシュメモリ、MRAM、FeRAM、PRAMなどの不揮発性メモリが挙げられるが、上記に限られない。
【0095】
〔A〕内部メモリ210におけるメモリフォーマットの例
ここで、内部メモリ210におけるメモリフォーマットの例を示す。図7は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200の内部メモリ210におけるメモリフォーマットの一例を示す説明図である。ここで、図7は、リーダ/ライタ機能共通鍵、リーダ/ライタ機能秘密鍵およびコントローラ公開鍵を記憶するメモリフォーマットの一例を示している。
【0096】
本発明の実施形態に係る内部メモリ210は、例えば、図7に示すような階層構造によって、リーダ/ライタ機能共通鍵、リーダ/ライタ機能秘密鍵およびコントローラ公開鍵を記憶することができる。ここで、図7の“エリア1000”は、リーダ/ライタ機能の管理用領域である。“サービス1008”は、リーダ/ライタ機能秘密鍵格納用サービスを示しており、リーダ/ライタ機能共通鍵としての「Krw」、リーダ/ライタ機能秘密鍵としての「sKrw」が記憶される。また、“サービス100B”は、コントローラ公開鍵格納用サービスを示しており、コントローラ公開鍵としての「pKcnt」が記憶されている。
【0097】
〔B〕内部メモリ210への「Krw」、「sKrw」および「pKcnt」の登録方法
次に、上記「Krw」、「sKrw」および「pKcnt」の内部メモリ210への登録方法についてそれぞれ説明する。なお、以下では、発行用リーダ/ライタ(図示せず)が上記「Krw」、「sKrw」および「pKcnt」をリーダ/ライタ機能搭載装置200に記憶させる例を示すが、本発明の実施形態はかかる構成に限られない。例えば、情報処理装置100が上記発行用リーダ/ライタの役目を果たすこともできる。また、発行用リーダ/ライタとリーダ/ライタ機能搭載装置200との間の通信は、例えば、搬送波を用いた近距離無線通信により行うことができる。したがって、リーダ/ライタ機能搭載装置200は、セキュアに上記「Krw」、「sKrw」および「pKcnt」を記憶することができる。
【0098】
〔B−1〕リーダ/ライタ機能共通鍵「Krw」の登録方法
図8は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200へのリーダ/ライタ機能共通鍵の登録方法の一例を示す説明図である。
【0099】
発行用リーダ/ライタは、リーダ/ライタ機能搭載装置200が備えるICチップ204に対して、サービス1008登録(Krw指定)命令を送信する(S100)。
【0100】
ステップS100における命令を受信したICチップ204は、当該命令に基づいて、エリア1000内にサービス1008を作成してリーダ/ライタ機能共通鍵「Krw」を書き込む(S102)。そして、ICチップ204は、発行用リーダ/ライタへ処理結果を送信する(S104)。ここで、ステップS104における処理結果は、例えば、処理が正常に完了したか否かを示す1ビット(bit)のデータ(例えば「0」が処理失敗、「1」が処理完了)とすることができるが、上記に限られない。また、ステップS104において送信された処理結果が、処理が正常に完了していないことを示している場合、発行用リーダ/ライタは、例えば、再度ステップS100からの処理を行うことができる。
【0101】
リーダ/ライタ機能搭載装置200の内部メモリ210には、例えば、図8に示す方法によってリーダ/ライタ機能共通鍵「Krw」が登録される。
【0102】
〔B−2〕リーダ/ライタ機能秘密鍵「sKrw」の登録方法
図9は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200へのリーダ/ライタ機能秘密鍵の登録方法の一例を示す説明図である。
【0103】
発行用リーダ/ライタは、例えば図8に示す方法により登録されたサービス1008についてICチップ204との間で相互認証を行う(S200)。ステップS200における相互認証が成立すると、発行用リーダ/ライタはセッションを暗号化するためのセッション暗号鍵を送信し(S202)、ICチップ204はその受領報告を返信する(S204)。上記により、発行用リーダ/ライタとICチップ204との間の通信路を暗号化することが可能となる。
【0104】
発行用リーダ/ライタは、通信路を暗号化してリーダ/ライタ機能秘密鍵「sKrw」の書き込み命令を送信する(S206)。そして、ステップS206における命令を受信したICチップ204は、当該命令に基づいて、リーダ/ライタ機能秘密鍵「sKrw」を書き込み(S208)、図8のステップS104と同様に、処理結果を送信する(S210)。
【0105】
リーダ/ライタ機能搭載装置200の内部メモリ210には、例えば、図9に示す方法によって、セキュアに(通信路を暗号化して)リーダ/ライタ機能秘密鍵「sKrw」が登録される。
【0106】
〔B−3〕コントローラ公開鍵「pKcnt」の登録方法
図10は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200へのコントローラ公開鍵の登録方法の一例を示す説明図である。
【0107】
発行用リーダ/ライタは、ICチップ204に対して、コントローラ公開鍵「pKcnt」の書き込み命令を送信する(S300)。ここで、図10では、コントローラ公開鍵「pKcnt」は、公開鍵であることからコントローラ公開鍵「pKcnt」を送信する通信路を暗号化していないが、当該通信路を暗号化してもよいことは、言うまでもない。
【0108】
ステップS300における命令を受信したICチップ204は、当該命令に基づいて、コントローラ公開鍵「pKcnt」を書き込む(S302)。そして、ICチップ204は、図8のステップS104と同様に、発行用リーダ/ライタへ処理結果を送信する(S304)。
【0109】
リーダ/ライタ機能搭載装置200の内部メモリ210には、例えば、図10に示す方法によってコントローラ公開鍵「pKcnt」が登録される。
【0110】
リーダ/ライタ機能搭載装置200は、例えば、図8〜図10において示した方法を用いることにより、図7に示すようなメモリフォーマットでリーダ/ライタ機能共通鍵、リーダ/ライタ機能秘密鍵およびコントローラ公開鍵を記憶することができる。なお、本発明の第1の実施形態に係る内部メモリ210のメモリフォーマット、および内部メモリ210への各種鍵情報の登録方法が、上記に限られないことは、言うまでもない。
【0111】
再度図5を参照してリーダ/ライタ機能搭載装置200の構成要素について説明する。認証情報生成部212は、情報処理装置100から送信された第1の認証情報の要求に応じて第1の認証情報を生成し、チップ外通信部202を介して情報処理装置100へ第1の認証情報を送信する。ここで、認証情報生成部212は、情報処理装置100から送信された第1の認証情報の要求、リーダ/ライタ機能秘密鍵222およびコントローラ公開鍵224を用いて第1の認証情報を生成することができる。第1の認証情報の具体例については、後述する。
【0112】
機能制御部214は、情報処理装置100から送信される第2の認証情報、リーダ/ライタ機能秘密鍵222およびコントローラ公開鍵224に基づいて、情報処理装置100を認証する(すなわち、相互認証を行う)。第2の認証情報の具体例については、後述する。
【0113】
機能制御部214は、相互認証が正常に完了すると、リーダ/ライタ機能を有効とするためのリーダ/ライタ機能相互認証済情報を生成し、内部メモリ210に記録する。ここで、リーダ/ライタ機能相互認証済情報には、例えば、情報処理装置100からの命令(例えば、第2の認証情報と共に送信される。)に応じて、有効期限や有効回数など一定の制限が設けられてもよい。機能制御部214が、例えば、一定の制限が設けられたリーダ/ライタ機能相互認証済情報を生成することにより、一度相互認証が正常に行われれば、リーダ/ライタ機能搭載装置200においてリーダ/ライタ機能が無制限に使用可能となることを防ぎ、例えば、図1(b)において説明したような悪意のある者の悪意を持ったリーダ/ライタ機能の使用を防止することができる。
【0114】
また、機能制御部214は、内部メモリ210に記憶されたリーダ/ライタ機能相互認証済情報に基づいて、搬送波送信部208の搬送波の送信、すなわち、リーダ/ライタ機能搭載装置200のリーダ/ライタ機能の使用を制御する。ここで、機能制御部214における制御としては、例えば、以下の(1)、(2)が挙げられる。
【0115】
(1)内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されていない場合
内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されていない場合には、機能制御部214は、搬送波送信部208における搬送波の送信を許可しない。したがって、リーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用は制限されるので、例えば、図1(b)において説明したような悪意のある者の悪意を持ったリーダ/ライタ機能の使用を防止することができる。
【0116】
(2)内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されている場合
内部メモリ210にリーダ/ライタ機能相互認証済情報が記憶されている場合には、機能制御部214は、内部メモリ210からリーダ/ライタ機能相互認証済情報を読み出す。
【0117】
(2−1)リーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されていない場合
内部メモリ210から読み出したリーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されていない場合には、機能制御部214は、搬送波送信部208における搬送波の送信を許可する。したがって、ユーザは、リーダ/ライタ機能を用いることによる様々な利便性を享受することができる。
【0118】
(2−2)リーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されている場合
内部メモリ210から読み出したリーダ/ライタ機能相互認証済情報に有効期限/有効回数などの条件が設定されている場合には、機能制御部214は、当該条件を満たしているかを判定する。判定の結果、条件を満たしている場合には、機能制御部214は搬送波送信部208における搬送波の送信を許可し、また、条件を満たしていない場合には、機能制御部214は搬送波送信部208における搬送波の送信を許可しない。
【0119】
機能制御部214は、例えば、上記(1)、(2)に示すように、内部メモリ210に記憶されたリーダ/ライタ機能相互認証済情報に基づいて、搬送波送信部208の搬送波の送信を制御することができる。
【0120】
〔ICチップ204のハードウェア構成例〕
ここで、ICチップ204のハードウェア構成例を示す。図11は、本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200におけるICチップ204のハードウェア構成の一例を示す説明図である。
【0121】
図11を参照すると、ICチップ204は、例えば、無線通信アンテナ250と、搬送波送信回路252と、MPU254と、ROM256と、RAM258と、不揮発性メモリ260と、UART262とを備えることができ、また各構成要素はチップ内部バス264で接続される。また、ICチップ204は、UART262を介してリーダ/ライタ機能搭載装置側(ICチップ外)のバス266と接続される。図11では、例えば、無線通信アンテナ250が図5のチップ内通信部206に対応し、搬送波送信回路252が図5の搬送波送信部208、MPU254が図5の認証情報生成部212および機能制御部214、不揮発性メモリ260が図5の内部メモリ210にそれぞれ対応することができる。
【0122】
情報処理装置100から送信されてチップ外通信部202が受信した第1の認証情報の要求は、UART262を介してMPU262に伝達される。また、MPU262は、UART262を介して、生成した第1の認証情報をバス266へ伝達することができる。したがって、リーダ/ライタ機能搭載装置200は、ネットワーク350を介して情報処理装置100と通信を行い、相互認証を行うことができる。
【0123】
また、ROM256は、MPU254が使用するプログラムや演算パラメータなどの制御用データを記憶することができ、またRAM258は、MPU254により実行されるプログラムなどを一次記憶することができる。なお、本発明の実施形態に係るICチップ204のハードウェア構成が図11に限られないことは、言うまでもない。
【0124】
本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置200は、例えば、図5に示す構成により、情報処理装置100の認証結果、すなわち第2の認証情報に基づいて、リーダ/ライタ機能の使用を制御することができる。
【0125】
[認証方法]
次に、本発明の第1の実施形態に係る情報処理システムに係る認証方法について説明する。図12は、本発明の第1の実施形態に係る情報処理装置100における認証方法の一例を示す流れ図である。
【0126】
情報処理装置100は、リーダ/ライタ機能搭載装置すなわち認証対象から送信されるリーダ/ライタ機能の使用のための認証要求が検出されたか否かを判定する(S400)。ステップS400において認証要求が検出されない場合には、検出されるまで処理を進めない。
【0127】
ステップS400において認証要求が検出された場合には、情報処理装置100は、認証対象が認証が禁止された(すなわち、リーダ/ライタ機能の使用が禁止された)認証禁止装置か否かを判定する(S402)。ここで、ステップS402における判定は、例えば、認証要求に含まれる認証対象を特定する情報と、認証禁止装置情報とに基づいて行うことができる。ステップS402の判定が行われることによって、情報処理装置100は、リーダ/ライタ機能の使用が禁止されたリーダ/ライタ機能搭載装置を認証対象から除外することができ、いわゆるネガティブチェックを行うことができる。
【0128】
ステップS402において認証対象が認証禁止装置であると判定された場合には、情報処理装置100は、認証対象に対する認証処理を行わない(S410)。また、このとき、情報処理装置100は、認証対象に対して認証が禁止されている旨の通知を行ってもよい。
【0129】
ステップS402において認証対象が認証禁止装置ではないと判定された場合には、情報処理装置100は、認証対象に対する認証処理を行う(S404)。
【0130】
<認証処理>
ここで、本発明の第1の実施形態に係る情報処理システムにおける認証処理の一例を示す。図13は、本発明の第1の実施形態に係る情報処理システムにおける認証処理の一例を示すシーケンス図である。なお、以下では、情報処理装置100とリーダ/ライタ機能搭載装置200との間の認証処理を例に挙げて説明する。また、図13では、情報処理装置100が備えるリーダ/ライタ機能制御部104と、リーダ/ライタ機能搭載装置200が備えるICチップ204とがそれぞれ処理を行う例を示しているが、説明の便宜上、情報処理装置100およびリーダ/ライタ機能搭載装置200が処理を行うものとして説明する。
【0131】
情報処理装置100は、乱数発生処理を行い、乱数Raを発生させ(S500)、リーダ/ライタ機能搭載装置200へ送信する(S502)。ここで、ステップS502において送信された乱数Raは、上述した第1の認証情報の要求に該当する。なお、情報処理装置100は、例えば、乱数発生回路を備え、当該乱数発生回路を用いて乱数を発生させることができるが、上記に限られない。例えば、情報処理装置100は、リーダ/ライタ機能制御部104が乱数発生用のプログラムを実行することによって乱数を発生させることもできる。
【0132】
ステップS502において乱数Raを受信すると、リーダ/ライタ機能搭載装置200は、乱数発生処理を行い、乱数Rbを発生させる(S504)。なお、リーダ/ライタ機能搭載装置200は、乱数をハードウェアで発生させてもよいし、ソフトウェアで発生されることもできる。
【0133】
リーダ/ライタ機能搭載装置200は、ステップS502において受信した乱数Raと、ステップS504において発生させた乱数Rbを結合させ、当該結合結果をコントローラ公開鍵「pKcnt」で暗号化する(S506)。ここで、ステップS506で暗号化された値は、「Enc{PKcnt(Ra|Rb)}」(以下、「値A」という。)と表すことができる。
【0134】
また、リーダ/ライタ機能搭載装置200は、ステップS502において受信した乱数Raと、ステップS504において発生させた乱数Rbを結合させたもののハッシュ値に対して、リーダ/ライタ機能秘密鍵「sKrw」で署名する(S508)。ここで、ステップS508で署名された値は、「sign−rw(Ra|Rb)」(以下、「値B」という。)と表すことができる。
【0135】
リーダ/ライタ機能搭載装置200は、ステップS506で暗号化した「値A」と、ステップS508で署名した「値B」を結合し、情報処理装置100へ送信する(S510)。ここで、ステップS510で送信された「Enc{PKcnt(Ra|Rb)}|sign−rw(Ra|Rb)」(以下、「値A|値B」という。)は、上述した第1の認証情報に該当する。
【0136】
ステップS510においてリーダ/ライタ機能搭載装置200から送信された「値A|値B」(第1の認証情報)を受信した情報処理装置100は、コントローラ秘密鍵を用いて「値A」を復号し、復号後のデータに乱数Raが含まれていることを確認する(S512;第1の認証処理)。そして、情報処理装置100は、ステップS512において復号して得られたデータのハッシュ値を算出する(S514)。
【0137】
また、情報処理装置100は、リーダ/ライタ機能搭載装置200に対応する認証対象公開鍵を用いて「値B」を復号し、得られた結果がステップS514で算出したハッシュ値と同一であることを確認する(S516;第2の認証処理)。
【0138】
情報処理装置100は、ステップS512〜S516が正常に行われた場合に、リーダ/ライタ機能搭載装置200をリーダ/ライタ機能を使用することができる正当な装置であると認定することができる。なお、ステップS512〜S516が正常に行われなかった場合には、情報処理装置100は、認証対象に対して認証が失敗した旨の通知を行ってもよい。
【0139】
ステップS512〜S516が正常に行われた場合、情報処理装置100は、リーダ/ライタ機能搭載装置200がステップS504で発生させた乱数Rb、情報処理装置100がステップS500で発生させた乱数Raの順に結合させる。そして、結合させた値を、リーダ/ライタ機能搭載装置200に対応する認証対象公開鍵で暗号化する(S518)。ここで、ステップS512で暗号化された値は、「Enc{PKrw(Rb|Ra)}」(以下、「値C」という。)と表すことができる。
【0140】
また、情報処理装置100は、乱数Rb、乱数Raの順に結合したもののハッシュ値に対して、コントローラ秘密鍵で署名する(S520)。ここで、ステップS514で署名された値は、「sign−cnt(Rb|Ra)」(以下、「値D」という。)と表すことができる。
【0141】
情報処理装置100は、ステップS518で暗号化した「値C」と、ステップS520で署名した「値D」を結合し、リーダ/ライタ機能搭載装置200へ送信する(S522)。ここで、ステップS522で送信された「Enc{PKrw(Rb|Ra)}|sign−cnt(Rb|Ra)」(以下、「値C|値D」という。)は、上述した第2の認証情報に該当する。
【0142】
ステップS522において情報処理装置100から送信された「値C|値D」(第2の認証情報)を受信したリーダ/ライタ機能搭載装置200は、リーダ/ライタ機能秘密鍵「sKrw」を用いて「値C」を復号し、復号後のデータに乱数Rbが含まれていることを確認する(S524;第3の認証処理)。そして、リーダ/ライタ機能搭載装置200は、ステップS524において復号して得られたデータのハッシュ値を算出する(S526)。
【0143】
また、リーダ/ライタ機能搭載装置200は、情報処理装置100に対応するコントローラ公開鍵「pKcnt」を用いて「値D」を復号し、得られた結果がステップS526で算出したハッシュ値と同一であることを確認する(S528;第4の認証処理)。
【0144】
リーダ/ライタ機能搭載装置200は、ステップS524〜S528が正常に行われた場合に、情報処理装置100をリーダ/ライタ機能を認証可能な正当な装置であると認定することができる。ステップS524〜S528に示すように、リーダ/ライタ機能搭載装置200側でも情報処理装置100に対する認証が行われることにより(すなわち、相互認証が行われることにより)、本発明の第1の実施形態に係る情報処理システムは、リーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用をより厳密に制御することができる。
【0145】
ステップS524〜S528が正常に行われた場合、リーダ/ライタ機能搭載装置200は、リーダ/ライタ機能相互認証済情報を生成し、記録する(S530)。そして、リーダ/ライタ機能搭載装置200は、情報処理装置100へ完了報告を送信する(S532)。ここで、ステップS530において生成されるリーダ/ライタ機能相互認証済情報の形式としては、例えば、フラグ形式や、公開暗号鍵を用いた証明書の形式などが挙げられるが、上記に限られない。リーダ/ライタ機能相互認証済情報が、例えば、フラグの形式をとることにより、短時間でリーダ/ライタ機能相互認証済情報を用いた処理を行うことができる。また、リーダ/ライタ機能相互認証済情報が、例えば、証明書の形式をとることにより、より信頼度の高い処理を行うことができる。
【0146】
本発明の第1の実施形態に係る情報処理システムは、例えば図13に示す処理によって、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能を使用させるための認証を、リーダ/ライタ機能搭載装置ごとに行うことができる。なお、本発明の第1の実施形態に係る情報処理システムにおける認証処理が、図13に示す例に限られないことは、言うまでもない。
【0147】
<認証処理の他の例>
また、上記では、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能を使用させるための認証処理について示したが、本発明の第1の実施形態に係る認証処理は、上記に限られない。例えば、本発明の第1の実施形態に係る情報処理システムは、図13に示す処理と同様に公開鍵を用いた相互認証を行うことによって、情報処理装置100が、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに停止させることもできる。
【0148】
情報処理装置100は、例えば、リーダ/ライタ機能搭載装置が認証禁止装置情報に対応する装置である場合において、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を停止させるための認証処理を行うことができる。上記の場合、たとえ、リーダ/ライタ機能搭載装置のリーダ/ライタ機能が有効となっていたとしても、情報処理装置100は、リーダ/ライタ機能の使用を停止させることができる。したがって、情報処理装置100は、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0149】
再度図12を参照して、情報処理装置100における認証方法の一例について説明する。情報処理装置100は、認証対象から完了報告が送信されたかを判定する(S406)。ステップS406において完了報告が送信されていないと判定された場合、すなわち、完了報告が検出されない場合には、情報処理装置100は、ステップS404の認証処理を再度行う。なお、図12では図示していないが、例えば、ステップS404の処理開始から所定の時間経過しても認証対象から完了報告が送信されない場合や、ステップS404の処理を所定の回数繰り返した場合には、処理を終了させることもできる。
【0150】
また、ステップS406において完了報告が送信されたと判定された場合には、情報処理装置100は、認証を行った認証対象に対応する認証済装置情報を記録する(S408)。
【0151】
情報処理装置100は、例えば図12、図13に示す認証方法を用いることによって、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに認証し、当該リーダ/ライタ機能の使用を制御することができる。
【0152】
以上のように、本発明の第1の実施形態に係る情報処理システムは、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を当該装置ごとに認証するための情報処理装置100を有する。情報処理装置100は、情報処理装置100固有のコントローラ秘密鍵と、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置ごとにそれぞれ対応する認証対象公開鍵とを記憶することができる。そして、情報処理装置100は、例えば、(A)認証を行うリーダ/ライタ機能搭載装置に対して第1の認証情報を要求する、(B)認証を行うリーダ/ライタ機能搭載装置から取得した第1認証情報とコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて認証を行う、という一連の処理により、認証を行うリーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を認証することができる。したがって、第1の実施形態に係る情報処理装置100は、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0153】
また、情報処理装置100は、上記(A)、(B)の処理に加え、さらに(C)認証結果に応じて認証が正常な場合には相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信する、ことができる。情報処理装置100が第2の認証情報をリーダ/ライタ機能搭載装置へ送信することにより、リーダ/ライタ機能搭載装置は情報処理装置100を認証することができる。つまり、第1の実施形態に係る情報処理システムでは情報処理装置100とリーダ/ライタ機能搭載装置との間で相互認証が行われ、リーダ/ライタ機能搭載装置のリーダ/ライタ機能は、相互認証の結果に基づいて使用が制限される。したがって、情報処理装置100は、相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信することにより、例えば、悪意のある者が使用する装置による情報処理装置100のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【0154】
また、情報処理装置100は、認証が正常に行われたリーダ/ライタ機能搭載装置ごとにそれぞれに対応する認証済装置情報を記憶することができる。したがって、情報処理装置100は、記憶された認証済装置情報に基づいて、リーダ/ライタ機能が使用可能な状態のリーダ/ライタ機能搭載装置、すなわち、リーダ/ライタ機能が稼動しているリーダ/ライタ機能搭載装置を把握することができる。さらに、情報処理装置100は、ネットワーク350を介して、複数のリーダ/ライタ機能搭載装置200、300、…をそれぞれ認証することができるので、リーダ/ライタ機能を使用可能なリーダ/ライタ機能搭載装置を一元管理することができる。
【0155】
さらに、情報処理装置100は、認証が禁止されたリーダ/ライタ機能搭載装置を規定する認証禁止装置情報を記憶することができる。情報処理装置100は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置が認証の対象であるかを判定し、当該判定の結果に基づいて、リーダ/ライタ機能を使用させるための認証処理を行うことができる。したがって、情報処理装置100は、リーダ/ライタ機能の使用が禁止されたリーダ/ライタ機能搭載装置を認証対象から除外することができるので、いわゆるネガティブチェックを行うことができる。また、情報処理装置100は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置のリーダ/ライタ機能を停止させるための認証処理を行うこともできる。
【0156】
以上、本発明の第1の実施形態に係る情報処理システムを構成する構成要素として、情報処理装置100を挙げて説明したが、本発明の第1の実施形態は、係る形態に限られず、例えば、PC(Personal Computer)やサーバ(Server)などのコンピュータなどに適用することができる。
【0157】
また、本発明の第1の実施形態に係る情報処理システムを構成する構成要素として、リーダ/ライタ機能搭載装置200、300、…を挙げて説明したが、本発明の第1の実施形態は、係る形態に限られず、例えば、店頭などサービスの提供場所に設置されたリーダ/ライタ、リーダ/ライタ機能を備えた携帯電話などの携帯型通信装置、リーダ/ライタ機能を備えたICカード、リーダ/ライタ機能を備えたPCなどのコンピュータ、交通機関の自動改札機、入館や入室などに用いられるセキュリティ装置などに適用することができる。
【0158】
(第1の実施形態に係るプログラム)
第1の実施形態に係る情報処理装置100をコンピュータとして機能させるためのプログラムによって、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0159】
(第2の実施形態)
上記では、第1の実施形態に係る情報処理システムとして、情報処理装置100がネットワーク350を介してリーダ/ライタ機能搭載装置200、300、…それぞれと通信を行い、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限する構成を示した。しかしながら、本発明の実施形態に係る情報処理システムは、ネットワークを介して情報処理装置とリーダ/ライタ機能搭載装置とが通信を行う構成に限られない。そこで、次に、情報処理装置とリーダ/ライタ機能搭載装置とが、搬送波を用いて通信を行う第2の実施形態に係る情報処理システムについて説明する。
【0160】
図14は、本発明の第2の実施形態に係る情報処理システムを示すブロック図である。図14を参照すると、第2の実施形態に係る情報処理システムは、情報処理装置400と、リーダ/ライタ機能搭載装置200とを有する。ここで、図14に示すリーダ/ライタ機能搭載装置200は、図5に示す第1の実施形態に係るリーダ/ライタ機能搭載装置200と同様の構成を有することができる。
【0161】
[情報処理装置400]
情報処理装置400は、通信部102と、リーダ/ライタ機能制御部402と、鍵情報記憶部106と、記憶部108と、認証済情報記録部110と、認証対象判定部112とを備えることができる。ここで、情報処理装置400は、図5に示す第1の実施形態に係る情報処理装置100と基本的に同様の構成を有することができるが、リーダ/ライタ機能搭載装置200との通信手段が情報処理装置100と異なる。すなわち、第1の実施形態に係る情報処理装置100がネットワーク350を介してリーダ/ライタ機能搭載装置200と通信を行う構成であったのに対して、情報処理装置400は、搬送波を用いた近距離無線通信によってリーダ/ライタ機能搭載装置200と通信を行う。
【0162】
より具体的には、情報処理装置400は、例えば13.56MHzの搬送波を主体的に送信するリーダ/ライタ機能を備え、例えば、図1(b)に示す携帯電話20のように、リーダ/ライタ機能の使用を認証するリーダ/ライタ機能搭載装置200(例えば、図1(b)では携帯電話22に対応する。)に搬送波を送信することによって、リーダ/ライタ機能搭載装置200と通信を行うことができる。
【0163】
〔第1の認証パターン〕
情報処理装置400は、例えば、認証要求を送信する旨の送信命令をリーダ/ライタ機能搭載装置200へ送信することによって、リーダ/ライタ機能搭載装置200に認証要求の送信を行わせる。上記送信命令に応じて認証要求がリーダ/ライタ機能搭載装置200から送信されると、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、例えば、上述した図12、図13に示す認証方法を用いてリーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、有効な状態であるリーダ/ライタ機能搭載装置200のリーダ/ライタ機能を、無効な状態にさせることもできる。
【0164】
〔第2の認証パターン〕
上記では、第1の認証パターンとして、情報処理装置400がリーダ/ライタ機能搭載装置200に対して認証要求を送信する旨の送信命令を送信するパターンを例に挙げた。しかしながら、本発明の第2の実施形態に係る情報処理システムにおける認証パターンは、上記に限られない。例えば、リーダ/ライタ機能が有効な状態のリーダ/ライタ機能搭載装置200が、搬送波を用いて情報処理装置400に対して認証要求を送信することによって、情報処理装置400とリーダ/ライタ機能搭載装置200との通信が開始されてもよい。
【0165】
上記の場合であっても、情報処理装置400は、例えば上述した図12、図13に示す認証方法を用いてリーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。また、上記の場合、情報処理装置400は、有効な状態であるリーダ/ライタ機能搭載装置200のリーダ/ライタ機能を、無効な状態に制限することもできる。
【0166】
上記第1、第2の認証パターンで示したように、情報処理装置400とリーダ/ライタ機能搭載装置200とは、搬送波を用いた近距離無線通信によって通信を行い、当該通信により情報処理装置400は、リーダ/ライタ機能搭載装置200におけるリーダ/ライタ機能の使用を制限することができる。
【0167】
情報処理装置400は、リーダ/ライタ機能搭載装置200と搬送波を用いた近距離無線通信を行うために、例えば、リーダ/ライタ機能制御部402が通信機能を有することができる(すなわち、リーダ/ライタ機能制御部402が通信部の役目も果たすことができる。)。ここで、リーダ/ライタ機能制御部402は、例えば、図11に示すようなハードウェア構成を有するICチップで実現することができるが、上記に限られない。なお、本発明の第2の実施形態に係る情報処理装置は、リーダ/ライタ機能制御部402が搬送波を用いた近距離無線通信を行う機能を有する構成に限られず、例えば、通信部が、搬送波を用いた近距離無線通信を行う機能を有していてもよいことは、言うまでもない。
【0168】
情報処理装置400は、例えば図14に示す構成によって、第1の実施形態に係る情報処理装置100と同様に、リーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を制御することができる。
【0169】
以上のように、本発明の第2の実施形態に係る情報処理システムは、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を当該装置ごとに認証するための情報処理装置400を有する。情報処理装置400は、第1の実施形態に係る情報処理装置100と基本的に同様の構成、機能を有し、リーダ/ライタ機能搭載装置と搬送波を用いた近距離無線通信で通信を行うことができる。また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、情報処理装置400固有のコントローラ秘密鍵と、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置ごとにそれぞれ対応する認証対象公開鍵とを記憶することができる。そして、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、例えば、(A)認証を行うリーダ/ライタ機能搭載装置に対して第1の認証情報を要求する、(B)認証を行うリーダ/ライタ機能搭載装置から取得した第1認証情報とコントローラ秘密鍵および認証対象に対応する認証対象公開鍵とを用いて認証を行う、という一連の処理により、認証を行うリーダ/ライタ機能搭載装置ごとにリーダ/ライタ機能の使用を認証することができる。したがって、第2の実施形態に係る情報処理装置400は、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0170】
また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、上記(A)、(B)の処理に加え、さらに(C)認証結果に応じて認証が正常な場合には相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信する、ことができる。情報処理装置400が第2の認証情報をリーダ/ライタ機能搭載装置へ送信することにより、リーダ/ライタ機能搭載装置は情報処理装置400を認証することができる。つまり、第2の実施形態に係る情報処理システムでは、第1の実施形態に係る情報処理システムと同様に、情報処理装置400とリーダ/ライタ機能搭載装置との間で相互認証が行われ、リーダ/ライタ機能搭載装置のリーダ/ライタ機能は、相互認証の結果に基づいて使用が制限される。したがって、情報処理装置400は、相互認証のための第2の認証情報を認証を行うリーダ/ライタ機能搭載装置へ送信することにより、例えば、悪意のある者が使用する装置による情報処理装置400のなりすましを防止し、リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとにより厳密に制限することができる。
【0171】
また、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、認証が正常に行われたリーダ/ライタ機能搭載装置ごとにそれぞれに対応する認証済装置情報を記憶することができる。したがって、情報処理装置400は、記憶された認証済装置情報に基づいて、リーダ/ライタ機能が使用可能な状態のリーダ/ライタ機能搭載装置、すなわち、リーダ/ライタ機能が稼動しているリーダ/ライタ機能搭載装置を把握することができる。
【0172】
さらに、情報処理装置400は、第1の実施形態に係る情報処理装置100と同様に、認証が禁止されたリーダ/ライタ機能搭載装置を規定する認証禁止装置情報を記憶することができる。情報処理装置400は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置が認証の対象であるかを判定し、当該判定の結果に基づいて、リーダ/ライタ機能を使用させるための認証処理を行うことができる。したがって、情報処理装置400は、リーダ/ライタ機能の使用が禁止されたリーダ/ライタ機能搭載装置を認証対象から除外することができる。また、情報処理装置400は、認証禁止装置情報を用いることによって、認証対象のリーダ/ライタ機能搭載装置のリーダ/ライタ機能を停止させるための認証処理を行うこともできる。
【0173】
以上、本発明の第2の実施形態に係る情報処理システムを構成する構成要素として、情報処理装置400を挙げて説明したが、本発明の第2の実施形態は、係る形態に限られず、例えば、リーダ/ライタ機能を備えた携帯電話などの携帯型通信装置、リーダ/ライタ機能を備えたUMPC(Ultra Mobile Personal Computer)などのコンピュータなどに適用することができる。
【0174】
(第2の実施形態に係るプログラム)
第2の実施形態に係る情報処理装置400をコンピュータとして機能させるためのプログラムによって、リーダ/ライタ機能を備えたリーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用をリーダ/ライタ機能搭載装置ごとに制限することができる。
【0175】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【0176】
例えば、本発明の実施形態に係る情報処理システムにおける認証処理の一例として、図13に示すような公開鍵相互認証を挙げて説明したが、本発明の実施形態に係る認証処理は、図13に示す例に限られない。例えば、本発明の実施形態に係る情報処理システムに係る認証処理では、様々な暗号アルゴリズムや鍵長、相互認証の方法などを適用することができる。
【0177】
上述した構成は、本発明の実施形態の一例を示すものであり、当然に、本発明の技術的範囲に属するものである。
【図面の簡単な説明】
【0178】
【図1】本発明の実施形態に係る情報処理システムが対象とする問題の一例を説明するための説明図である。
【図2】本発明の実施形態に係る情報処理システムにおける第1の解決アプローチを説明するための説明図である。
【図3】本発明の実施形態に係る情報処理システムにおける第2の解決アプローチを説明するための説明図である。
【図4】本発明の実施形態に係る情報処理システムにおける第3の解決アプローチを説明するための説明図である。
【図5】本発明の第1の実施形態に係る情報処理システムを示すブロック図である。
【図6】本発明の第1の実施形態に係る情報処理装置におけるリーダ/ライタ機能制御部のハードウェア構成の一例を示す説明図である。
【図7】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置の内部メモリにおけるメモリフォーマットの一例を示す説明図である。
【図8】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置へのリーダ/ライタ機能共通鍵の登録方法の一例を示す説明図である。
【図9】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置へのリーダ/ライタ機能秘密鍵の登録方法の一例を示す説明図である。
【図10】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置へのコントローラ公開鍵の登録方法の一例を示す説明図である。
【図11】本発明の第1の実施形態に係るリーダ/ライタ機能搭載装置におけるICチップのハードウェア構成の一例を示す説明図である。
【図12】本発明の第1の実施形態に係る情報処理システムにおける認証方法の一例を示す流れ図である。
【図13】本発明の第1の実施形態に係る情報処理システムにおける認証処理の一例を示すシーケンス図である。
【図14】本発明の第2の実施形態に係る情報処理システムを示すブロック図である。
【符号の説明】
【0179】
100、400 情報処理装置
102 通信部
104、402 リーダ/ライタ機能制御部
106 鍵情報記憶部
108 記憶部
110 認証済情報記録部
112 認証対象判定部
200、300 リーダ/ライタ機能搭載装置
202 チップ外通信部
204 ICチップ
206 チップ内通信部
208 搬送波送信部
210 内部メモリ
212 認証情報生成部
214 機能制御部
【特許請求の範囲】
【請求項1】
搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置であって:
前記リーダ/ライタ機能搭載装置と通信を行う通信部と;
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と;
前記リーダ/ライタ機能搭載装置に対して認証情報を要求し、前記要求に応じて前記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて、前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するリーダ/ライタ機能制御部と;
を備えることを特徴とする、情報処理装置。
【請求項2】
前記リーダ/ライタ機能制御部は、前記認証の結果が正常である場合には、前記第1の認証情報、前記コントローラ秘密鍵および前記認証対象公開鍵に基づいて、前記リーダ/ライタ機能搭載装置に相互認証をさせるための第2の認証情報を送信することを特徴とする、請求項1に記載の情報処理装置。
【請求項3】
前記鍵情報記憶部は、前記リーダ/ライタ機能搭載装置との通信を暗号化するためのリーダ/ライタ機能共通鍵をさらに記憶し、
前記リーダ/ライタ機能制御部は、前記リーダ/ライタ機能共通鍵を用いて前記第2の認証情報を暗号化して送信することを特徴とする、請求項2に記載の情報処理装置。
【請求項4】
前記認証の結果が正常である場合において、認証が正常に行われたリーダ/ライタ機能搭載装置を示す認証済装置情報を記録する認証済情報記録部をさらに備えることを特徴とする、請求項1に記載の情報処理装置。
【請求項5】
前記リーダ/ライタ機能制御部における認証をリーダ/ライタ機能搭載装置ごとに制限する認証禁止装置情報を記憶する記憶部と;
前記認証禁止装置情報に基づいて、前記認証情報を要求するリーダ/ライタ機能搭載装置が認証対象であるかを判定する認証対象判定部とをさらに備え、
前記リーダ/ライタ機能制御部は、前記認証対象判定部の判定結果に応じて認証情報の要求を行うことを特徴とする、請求項1に記載の情報処理装置。
【請求項6】
前記情報処理装置はサーバであることを特徴とする、請求項1に記載の情報処理装置。
【請求項7】
前記情報処理装置は携帯型通信装置であることを特徴とする、請求項1に記載の情報処理装置。
【請求項8】
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置における認証方法であって:
リーダ/ライタ機能搭載装置に対して認証情報を要求するステップと;
前記要求するステップにおける要求に応じて前記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップと;
前記受信するステップにおいて受信された前記認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて、前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップと;
を有することを特徴とする、認証方法。
【請求項9】
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置に用いることが可能なプログラムであって:
リーダ/ライタ機能搭載装置に対して認証情報を要求するステップ;
前記要求するステップにおける要求に応じて前記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップ;
前記受信するステップにおいて受信された前記認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて、前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップ;
をコンピュータに実行させるためのプログラム。
【請求項10】
搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と、前記リーダ/ライタ機能搭載装置と通信可能な情報処理装置とを有する情報処理システムであって:
前記情報処理装置は、
前記リーダ/ライタ機能搭載装置と通信を行う通信部と;
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と;
前記リーダ/ライタ機能搭載装置に対して認証情報を要求し、前記要求に応じて前記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証し、認証結果に応じて第2の認証情報を送信するリーダ/ライタ機能制御部と;
を備え、
前記リーダ/ライタ機能搭載装置は、
搬送波を送信可能な搬送波送信部と;
前記情報処理装置と通信を行う通信部と;
固有のリーダ/ライタ機能秘密鍵と、前記情報処理装置に対応するコントローラ公開鍵とを記憶する記憶部と;
前記情報処理装置から送信される前記要求、前記リーダ/ライタ機能秘密鍵および前記コントローラ公開鍵に基づく前記第1の認証情報を生成して送信する認証情報生成部と;
前記情報処理装置から送信される前記第2の認証情報と前記リーダ/ライタ機能秘密鍵および前記コントローラ公開鍵とに基づいて前記情報処理装置を認証し、認証結果に応じて前記搬送波送信部における搬送波の送信を可能とさせる機能制御部と;
を備えることを特徴とする、情報処理システム。
【請求項1】
搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置であって:
前記リーダ/ライタ機能搭載装置と通信を行う通信部と;
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と;
前記リーダ/ライタ機能搭載装置に対して認証情報を要求し、前記要求に応じて前記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて、前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するリーダ/ライタ機能制御部と;
を備えることを特徴とする、情報処理装置。
【請求項2】
前記リーダ/ライタ機能制御部は、前記認証の結果が正常である場合には、前記第1の認証情報、前記コントローラ秘密鍵および前記認証対象公開鍵に基づいて、前記リーダ/ライタ機能搭載装置に相互認証をさせるための第2の認証情報を送信することを特徴とする、請求項1に記載の情報処理装置。
【請求項3】
前記鍵情報記憶部は、前記リーダ/ライタ機能搭載装置との通信を暗号化するためのリーダ/ライタ機能共通鍵をさらに記憶し、
前記リーダ/ライタ機能制御部は、前記リーダ/ライタ機能共通鍵を用いて前記第2の認証情報を暗号化して送信することを特徴とする、請求項2に記載の情報処理装置。
【請求項4】
前記認証の結果が正常である場合において、認証が正常に行われたリーダ/ライタ機能搭載装置を示す認証済装置情報を記録する認証済情報記録部をさらに備えることを特徴とする、請求項1に記載の情報処理装置。
【請求項5】
前記リーダ/ライタ機能制御部における認証をリーダ/ライタ機能搭載装置ごとに制限する認証禁止装置情報を記憶する記憶部と;
前記認証禁止装置情報に基づいて、前記認証情報を要求するリーダ/ライタ機能搭載装置が認証対象であるかを判定する認証対象判定部とをさらに備え、
前記リーダ/ライタ機能制御部は、前記認証対象判定部の判定結果に応じて認証情報の要求を行うことを特徴とする、請求項1に記載の情報処理装置。
【請求項6】
前記情報処理装置はサーバであることを特徴とする、請求項1に記載の情報処理装置。
【請求項7】
前記情報処理装置は携帯型通信装置であることを特徴とする、請求項1に記載の情報処理装置。
【請求項8】
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置における認証方法であって:
リーダ/ライタ機能搭載装置に対して認証情報を要求するステップと;
前記要求するステップにおける要求に応じて前記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップと;
前記受信するステップにおいて受信された前記認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて、前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップと;
を有することを特徴とする、認証方法。
【請求項9】
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部を備え、搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と通信可能な情報処理装置に用いることが可能なプログラムであって:
リーダ/ライタ機能搭載装置に対して認証情報を要求するステップ;
前記要求するステップにおける要求に応じて前記リーダ/ライタ機能搭載装置から送信された認証情報を受信するステップ;
前記受信するステップにおいて受信された前記認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて、前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証するステップ;
をコンピュータに実行させるためのプログラム。
【請求項10】
搬送波を送信するリーダ/ライタ機能を有するリーダ/ライタ機能搭載装置と、前記リーダ/ライタ機能搭載装置と通信可能な情報処理装置とを有する情報処理システムであって:
前記情報処理装置は、
前記リーダ/ライタ機能搭載装置と通信を行う通信部と;
固有のコントローラ秘密鍵と、リーダ/ライタ機能の使用を認証する認証対象となるリーダ/ライタ機能搭載装置ごとに固有の認証対象公開鍵とを記憶する鍵情報記憶部と;
前記リーダ/ライタ機能搭載装置に対して認証情報を要求し、前記要求に応じて前記リーダ/ライタ機能搭載装置から送信された第1の認証情報と、前記鍵情報記憶部に記憶された前記コントローラ秘密鍵および前記認証対象公開鍵とに基づいて前記リーダ/ライタ機能搭載装置におけるリーダ/ライタ機能の使用を認証し、認証結果に応じて第2の認証情報を送信するリーダ/ライタ機能制御部と;
を備え、
前記リーダ/ライタ機能搭載装置は、
搬送波を送信可能な搬送波送信部と;
前記情報処理装置と通信を行う通信部と;
固有のリーダ/ライタ機能秘密鍵と、前記情報処理装置に対応するコントローラ公開鍵とを記憶する記憶部と;
前記情報処理装置から送信される前記要求、前記リーダ/ライタ機能秘密鍵および前記コントローラ公開鍵に基づく前記第1の認証情報を生成して送信する認証情報生成部と;
前記情報処理装置から送信される前記第2の認証情報と前記リーダ/ライタ機能秘密鍵および前記コントローラ公開鍵とに基づいて前記情報処理装置を認証し、認証結果に応じて前記搬送波送信部における搬送波の送信を可能とさせる機能制御部と;
を備えることを特徴とする、情報処理システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2009−128930(P2009−128930A)
【公開日】平成21年6月11日(2009.6.11)
【国際特許分類】
【出願番号】特願2007−299717(P2007−299717)
【出願日】平成19年11月19日(2007.11.19)
【出願人】(504134520)フェリカネットワークス株式会社 (129)
【Fターム(参考)】
【公開日】平成21年6月11日(2009.6.11)
【国際特許分類】
【出願日】平成19年11月19日(2007.11.19)
【出願人】(504134520)フェリカネットワークス株式会社 (129)
【Fターム(参考)】
[ Back to top ]