アクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノード
【課題】
サービス要求ノードとサービス提供ノードとが一対多の関係である場合であっても、認可証明書の取得に係る処理を簡易にすることが可能なアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードを提供する。
【解決手段】
サービス要求ノード10が、証明書発行サーバによって発行された認可情報及びノード認証子を複数のサービス提供ノード宛てに送信し、サービスを利用する場合に、複数のサービス提供ノード30のいずれか宛てにノード認証子を送信する通信部11を備え、サービス提供ノード30が、サービス要求ノード10から受信したノード認証子に対応する認可情報に基づいて、サービス要求ノード10にサービスを提供するか否かを判定する認可証明書検証部33を備える。
サービス要求ノードとサービス提供ノードとが一対多の関係である場合であっても、認可証明書の取得に係る処理を簡易にすることが可能なアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードを提供する。
【解決手段】
サービス要求ノード10が、証明書発行サーバによって発行された認可情報及びノード認証子を複数のサービス提供ノード宛てに送信し、サービスを利用する場合に、複数のサービス提供ノード30のいずれか宛てにノード認証子を送信する通信部11を備え、サービス提供ノード30が、サービス要求ノード10から受信したノード認証子に対応する認可情報に基づいて、サービス要求ノード10にサービスを提供するか否かを判定する認可証明書検証部33を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サービスの利用が許可されたことを証明する認可証明書を用いて、サービスの利用を制限するアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードに関する。
【背景技術】
【0002】
従来、サービスの利用を要求するノード(以下、サービス要求ノード)と、サービスの利用が許可されたことを証明する認可証明書を発行する認可証明書発行部を有する証明書発行サーバと、サービスを提供するノード(以下、サービス提供ノード)とを含む分散型ネットワークでは、以下のような分散認証方式や分散アクセス制御方式が適用されていた(例えば、非特許文献1)。
【0003】
具体的には、サービス要求ノードは、上述した認可証明書発行部へのアクセスが認証されたことを証明する認証証明書を証明書発行サーバに要求する。また、サービス要求ノードは、新たな送信情報であることを保障するために、サービス要求ノードを識別するノード識別子及び現在時刻に基づいてノード認証子を生成する。
【0004】
続いて、サービス要求ノードは、所望のサービス名、ノード認証子及び認証証明書を証明書発行サーバの認可証明書発行部に送信して、上述した認可証明書を証明書発行サーバの認可証明書発行部から取得する。
【0005】
また、サービス要求ノードは、上述したノード認証子及び認可証明書を一のサービス提供ノードに送信して、所望のサービスの提供を一のサービス提供ノードから受ける。
【0006】
なお、上述した各過程では、各ノード間で送受信される情報は、一時利用鍵や共有秘密鍵などを用いて、必要に応じて暗号化されている。
【0007】
このように、従来の分散認証方式や分散アクセス制御方式では、サービス要求ノードとサービス提供ノードとが一対一の関係であることを前提として、分散認証や分散アクセス制御が行われていた。
【非特許文献1】“The Network Authentication Protocol”、[online]、[平成18年1月13日検索]、インターネット<URL:http://web.mit.edu/kerberos/www/>
【発明の開示】
【発明が解決しようとする課題】
【0008】
一方、サービス提供ノードとして機能するノードは、家電やPCなどに限られるものではなく、各種センサー、家具、壁、食器及び洋服などがサービス提供ノードとして機能することが想定される。このような場合には、サービス要求ノードとサービス提供ノードとは、一対一の関係ではなくて、一対多の関係となることが想定される。
【0009】
しかしながら、サービス要求ノードとサービス提供ノードとが一対多の関係である場合には、サービス要求ノードは、複数のサービス提供ノードからサービスの提供を受ける際に、複数のサービス提供ノードのそれぞれに対応する認可証明書を取得しなければならないため、認可証明書の取得に係る処理が煩雑であった。また、サービス要求ノードは、複数のサービス提供ノードのそれぞれに対応する認可証明書を管理しなければならないため、認可証明書の管理が煩雑であった。さらに、サービス要求ノードは、複数のサービス提供ノードのそれぞれに認可証明書を送信しなければならないため、認可証明書の送信に係る通信コストが増大してしまう。
【0010】
そこで、本発明は、上述した課題を解決するためになされたものであり、サービス要求ノードとサービス提供ノードとが一対多の関係である場合であっても、認可証明書の取得に係る処理及び認可証明書の管理を簡易にするとともに、認可証明書の送信に係る通信コストを抑制することが可能なアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の第1の特徴は、サービスの利用を要求するサービス要求ノード(サービス要求ノード10)と、前記サービスの利用が許可されたことを示す認可情報(認可情報(Tc:s)又は認可証明書({Tc:s}Ks)を生成する証明書発行サーバ(証明書発行サーバ20)と、前記サービスを提供する複数のサービス提供ノード(サービス提供ノード30)とを含むアクセス制御システム(アクセス制御システム100)において、前記サービス要求ノードが、前記証明書発行サーバによって生成された前記認可情報及び前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子を前記複数のサービス提供ノード宛てに送信する認可情報送信部(通信部11)と、前記サービスの利用を要求する場合に、前記複数のサービス提供ノードのいずれか宛てに前記ノード認証子を送信するノード認証子送信部(通信部11)とを備え、前記サービス提供ノードが、前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部(認可証明書検証部33)を備えることを要旨とする。
【0012】
かかる特徴によれば、認可情報送信部が、ノード認証子及び認可情報を複数のサービス提供ノード宛てに送信する。
【0013】
すなわち、認可情報が複数のサービス提供ノードに共通する情報であるため、複数のサービス提供ノードのそれぞれに対応する認可情報をサービス要求ノードが取得する必要がなくなり、認可情報の取得に係る処理を簡易にすることができる。また、複数のサービス提供ノードのそれぞれに対応する認可情報をサービス要求ノードが管理する必要がなくなり、認可情報の管理に係る処理を簡易にすることができる。
【0014】
さらに、複数のサービス提供ノードのそれぞれが認可情報を保持することにより、サービス要求ノードが所望のサービスの提供を受ける際に、認可情報を改めて送信する必要がなくなり、認可情報の送信に係る通信コストを抑制することができる。
【0015】
本発明の第2の特徴は、本発明の第1の特徴において、前記サービス提供ノードが、前記サービス要求ノードの前記認可情報送信部から受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部(認可証明書保持部34)と、前記サービス要求ノードの前記認可情報送信部から受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部(認可証明書保持判定部36)とをさらに備えることを要旨とする。
【0016】
本発明の第3の特徴は、本発明の第2の特徴において、前記サービス提供ノードが、前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部(通信部31)をさらに備えることを要旨とする。
【0017】
本発明の第4の特徴は、本発明の第2の特徴において、前記サービス提供ノードが、前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部(通信部31)をさらに備えることを要旨とする。
【0018】
本発明の第5の特徴は、サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバ(証明書発行サーバ20)と、前記サービスを提供する複数のサービス提供ノード(サービス提供ノード30)とを含むアクセス制御システム(アクセス制御システム100)で用いられ、前記サービスの利用を要求するサービス要求ノード(サービス要求ノード10)が、前記証明書発行サーバによって生成された前記認可情報及び前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子を前記複数のサービス提供ノード宛てに送信する認可情報送信部(通信部11)と、前記サービスの利用を要求する場合に、前記複数のサービス提供ノードのいずれか宛てに前記ノード認証子を送信するノード認証子送信部(通信部11)とを備えることを要旨とする。
【0019】
本発明の第6の特徴は、サービスの利用を要求するサービス要求ノード(サービス要求ノード10)と、前記サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバ(証明書発行サーバ20)とを含むアクセス制御システム(アクセス制御システム100)で用いられ、前記サービスを提供するサービス提供ノード(サービス提供ノード30)が、前記証明書発行サーバによって生成された前記認可情報及び前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子を前記サービス要求ノードから受信する認可情報受信部(通信部31)と、前記サービス要求ノードから受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部(認可証明書保持部34)と、前記サービス要求ノードから受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部(認可証明書保持判定部36)と、前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部(認可証明書検証部33)とを備えることを要旨とする。
【0020】
本発明の第7の特徴は、本発明の第6の特徴において、サービス提供ノードが、前記サービス要求ノードから前記サービスの利用を要求された際に前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部(通信部31)をさらに備えることを要旨とする。
【0021】
本発明の第8の特徴は、本発明の第6の特徴において、サービス提供ノードが、前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部(通信部31)をさらに備えることを要旨とする。
【発明の効果】
【0022】
本発明によれば、サービス要求ノードとサービス提供ノードとが一対多の関係である場合であっても、認可証明書の取得に係る処理及び認可証明書の管理を簡易にするとともに、認可証明書の送信に係る通信コストを抑制することが可能なアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードを提供することができる。
【発明を実施するための最良の形態】
【0023】
[第1実施形態]
(アクセス制御システムの構成)
以下において、本発明の第1実施形態に係るアクセス制御システムの構成について、図面を参照しながら説明する。図1は、本発明の第1実施形態に係るアクセス制御システム100を示す図である。
【0024】
図1に示すように、アクセス制御システム100は、サービス要求ノード10と、証明書発行サーバ20と、複数のサービス提供ノード30(サービス提供ノード30a〜サービス提供ノード30c)とを有する。
【0025】
サービス要求ノード10は、サービスの利用を要求するノードである。具体的には、サービス要求ノード10は、証明書発行サーバ20によって発行された認可証明書をサービス提供ノード30に提示することによって、所望のサービスの提供を受ける。なお、サービス要求ノード10の詳細については後述する(図2を参照)。
【0026】
証明書発行サーバ20は、サービスの利用が許可されたことを証明する認可証明書を発行する。なお、証明書発行サーバ20の詳細については後述する(図3を参照)。
【0027】
サービス提供ノード30は、サービス要求ノード10にサービスを提供するノードである。例えば、サービス提供ノード30は、通信機能を有する家電やPCなどであり、通信機能を有するICチップなどを備える各種センサー、家具、壁、食器及び洋服などであってもよい。なお、サービス提供ノード30の詳細については後述する(図4を参照)。
【0028】
(サービス要求ノードの構成)
以下において、本発明の第1実施形態に係るサービス要求ノードの構成について、図面を参照しながら説明する。図2は、本発明の第1実施形態に係るサービス要求ノード10を示すブロック図である。
【0029】
図2に示すように、サービス要求ノード10は、通信部11と、鍵管理部12と、証明書検証部13と、認証子保持部14とを有する。
【0030】
通信部11は、サービス要求ノード10と証明書発行サーバ20との間の通信を行う。具体的には、通信部11は、サービス要求ノード10を識別するノード識別子(c)、後述する証明書発行サーバ20の認可証明書発行部24を識別する認可証明書発行部識別子(tgs)、暗号化済ノード認証子({Ac}kc:tgs)、認証証明書({Tc:tgs}Ktgs)、所望のサービス名(s)を証明書発行サーバ20に送信する。一方、通信部11は、暗号化済一時利用鍵({Kc:tgs}Kc)、認証証明書({Tc:tgs}Ktgs)、暗号化済一時利用鍵({Kc:s}Kc:tgs)、認可証明書({Tc:s}Ks)を証明書発行サーバ20から受信する。
【0031】
また、通信部11は、サービス要求ノード10とサービス提供ノード30との間の通信を行う。具体的には、通信部11は、暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する。例えば、通信部11は、暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)をブロードキャストで送信する。また、通信部11は、ノード認証子(Ac)及び所望のサービス名(s)を複数のサービス提供ノード30のいずれか宛てに送信する。
【0032】
鍵管理部12は、後述する証明書発行サーバ20の認証証明書発行部23とサービス要求ノード10との間で共有される共有秘密鍵(Kc)を保持する。
【0033】
また、鍵管理部12は、サービス要求ノード10とサービス提供ノード30との間で一時的に利用される一次利用鍵(Kc:s)を保持する。具体的には、鍵管理部12は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:tgs}Kc)を共有秘密鍵(Kc)で復号し、一時利用鍵(Kc:tgs)を取得する。次いで、鍵管理部12は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:s}Kc:tgs)を一時利用鍵(Kc:tgs)で復号して一時利用鍵(Kc:s)を取得し、取得された一時利用鍵(Kc:s)を保持する。
【0034】
証明書検証部13は、証明書発行サーバ20から受信した認可証明書({Tc:s}Ks)の正当性を検証する。具体的には、証明書検証部13は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:tgs}Kc)を共有秘密鍵(Kc)で復号し、一時利用鍵(Kc:tgs)を取得する。次いで、証明書検証部13は、一時利用鍵(Kc:tgs)に含まれる認可証明書発行部識別子(tgs)と、認可証明書({Tc:s}Ks)の発行を要求した認可証明書発行部24の認可証明書発行部識別子(tgs)とが一致するか否かを検証する。また、証明書検証部13は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:s}Kc:tgs)を一時利用鍵(Kc:tgs)で復号し、一時利用鍵(Kc:s)を取得する。次いで、証明書検証部13は、一時利用鍵(Kc:s)に含まれるサービス名(s)と所望のサービス名(s)と一致するか否かを検証する。
【0035】
認証子保持部14は、暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する際に必要となるノード認証子(Ac)を保持する。具体的には、認証子保持部14は、サービス要求ノード10を識別するノード識別子及び現在時刻によってノード認証子(Ac)を生成し、生成されたノード認証子(Ac)を保持する。
【0036】
(証明書発行サーバの構成)
以下において、本発明の第1実施形態に係る証明書発行サーバの構成について、図面を参照しながら説明する。図3は、本発明の第1実施形態に係る証明書発行サーバ20を示すブロック図である。
【0037】
図3に示すように、証明書発行サーバ20は、通信部21と、鍵管理部22と、認証証明書発行部23と、認可証明書発行部24とを有する。
【0038】
通信部21は、証明書発行サーバ20とサービス要求ノード10との間の通信を行う。具体的には、通信部21は、暗号化済一時利用鍵({Kc:tgs}Kc)、認証証明書({Tc:tgs}Ktgs)、暗号化済一時利用鍵({Kc:s}Kc:tgs)、認可証明書({Tc:s}Ks)をサービス要求ノード10に送信する。一方、通信部21は、サービス要求ノード10を識別するノード識別子(c)、認可証明書発行部24を識別する認可証明書発行部識別子(tgs)、暗号化済ノード認証子({Ac}kc:tgs)、認証証明書({Tc:tgs}Ktgs)、所望のサービス名(s)をサービス要求ノード10から受信する。
【0039】
鍵管理部22は、認証証明書発行部23とサービス要求ノード10との間で共有される共有秘密鍵(Kc)を保持する。また、鍵管理部22は、認証証明書発行部23と認可証明書発行部24との間で共有される共有秘密鍵(Ktgs)を保持する。
【0040】
さらに、鍵管理部22は、認可証明書発行部24とサービス提供ノード30との間で共有される共有秘密鍵(Ks)を保持する。また、鍵管理部22は、認可証明書発行部24とサービス要求ノード10との間で一時的に利用される一時利用鍵(Kc:tgs)を生成し、生成された一時利用鍵(Kc:tgs)を保持する。
【0041】
認証証明書発行部23は、サービス要求ノード10が認可証明書発行部24へアクセスすることが許可されたことを証明する認証証明書({Tc:tgs}Ktgs)を発行する。具体的には、認証証明書発行部23は、サービス要求ノード10が認可証明書発行部24へアクセスすることを許可する認証情報(Tc:tgs)を生成し、生成された認証情報(Tc:tgs)を共有秘密鍵(Ktgs)で暗号化して、認証証明書({Tc:tgs}Ktgs)を取得する。
【0042】
認可証明書発行部24は、所望のサービスの利用が認可されたことを証明する認可証明書({Tc:s}Ks)を発行する。具体的には、認可証明書発行部24は、所望のサービスの利用を認可する認可情報(Tc:s)を生成し、生成された認可情報(Tc:s)を共有秘密鍵(Ks)で暗号化して、認可証明書({Tc:s}Ks)を取得する。
【0043】
(サービス提供ノードの構成)
以下において、本発明の第1実施形態に係るサービス提供ノードの構成について、図面を参照しながら説明する。図4は、本発明の第1実施形態に係るサービス提供ノード30を示すブロック図である。
【0044】
図4に示すように、サービス提供ノード30は、通信部31と、鍵管理部32と、認可証明書検証部33と、認可証明書保持部34と、サービス提供部35とを有する。
【0045】
通信部31は、サービス提供ノード30とサービス要求ノード10との間の通信を行う。具体的には、通信部31は、ブロードキャストで送信された暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)を受信する。また、通信部31は、ノード認証子(Ac)及び所望のサービス名(s)を受信する。
【0046】
鍵管理部32は、サービス提供ノード30と証明書発行サーバ20の認可証明書発行部24との間で共有される共有秘密鍵(Ks)を保持する。また、鍵管理部32は、サービス要求ノード10とサービス提供ノード30との間で一時的に利用される一時利用鍵(Kc:s)を保持する。
【0047】
認可証明書検証部33は、認可証明書保持部34に保持されている認可証明書({Tc:s}Ks)の正当性を検証することによって、所望のサービスをサービス要求ノード10に提供するか否かを判定する。具体的には、認可証明書検証部33は、サービス要求ノード10から受信した暗号化済ノード認証子({Ac}Kc:s)を一時利用鍵(Kc:s)で復号して、ノード認証子(Ac)を取得する。次いで、認可証明書検証部33は、取得されたノード認証子(Ac)と一致するノード認証子(Ac)が認可証明書保持部34に保持されているか否かを検証する。また、認可証明書検証部33は、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を共有秘密鍵(Ks)で復号して、認可情報(Tc:s)を取得する。次いで、認可証明書検証部33は、取得された認可情報(Tc:s)と一致する認可情報(Tc:s)が、取得されたノード認証子(Ac)に対応付けられて認可証明書保持部34に保持されているか否かを検証する。
【0048】
認可証明書保持部34は、ノード認証子(Ac)と認可証明書({Tc:s}Ks)とを対応付けて保持する。具体的には、認可証明書保持部34は、サービス要求ノード10から受信した暗号化済ノード認証子({Ac}Kc:tgs)を一時利用鍵(Kc:tgs)で復号化してノード認証子(Ac)を取得し、ノード認証子(Ac)と認可証明書({Tc:s}Ks)とを対応付けて保持する。
【0049】
なお、認可証明書保持部34は、認可証明書({Tc:s}Ks)を共有秘密鍵(Ks)で復号して認可情報(Tc:s)をさらに取得し、ノード認証子(Ac)と認可情報(Tc:s)とを対応付けて保持していてもよい。
【0050】
サービス提供部35は、認可証明書検証部33によって認可証明書({Tc:s}Ks)が正当であることが検証された場合には、サービス要求ノード10から要求された所望のサービスをサービス要求ノード10に提供する。
【0051】
(アクセス制御システムの動作)
以下において、本発明の第1実施形態に係るアクセス制御システムの動作について、図面を参照しながら説明する。図5は、本発明の第1実施形態に係るアクセス制御システム100の動作を示すシーケンス図である。
【0052】
図5に示すように、ステップ10において、サービス要求ノード10は、サービス要求ノード10を識別するノード識別子(c)及び証明書発行サーバ20の認可証明書発行部24を識別する認可証明書発行部識別子(tgs)を、証明書発行サーバ20の認証証明書発行部23に送信する。
【0053】
ステップ11において、証明書発行サーバ20の認証証明書発行部23は、サービス要求ノード10と認可証明書発行部24との間で一時的に利用される一時利用鍵(Kc:tgs)を、サービス要求ノード10と認証証明書発行部23との間で共有される共有秘密鍵(Kc)で暗号化する。
【0054】
また、認証証明書発行部23は、サービス要求ノード10が認可証明書発行部24にアクセスすることを認可する認証情報(Tc:tgs)を、認証証明書発行部23と認可証明書発行部24との間で共有される共有秘密鍵(Ktgs)で暗号化して、認可証明書発行部24にアクセスすることが認可されたことを証明する認証証明書({Tc:tgs}Ktgs)を生成する。
【0055】
さらに、認証証明書発行部23は、暗号化済一時利用鍵({Kc:tgs}Kc)及び認証証明書({Tc:tgs}Ktgs)をサービス要求ノード10に送信する。
【0056】
ステップ12において、サービス要求ノード10は、サービス要求ノード10を識別するノード識別子及び現在時刻を用いてノード認証子(Ac)を生成する。また、サービス要求ノード10は、暗号化済一時利用鍵({Kc:tgs}Kc)を共有秘密鍵(Kc)で復号して、一時利用鍵(Kc:tgs)を取得する。さらに、サービス要求ノード10は、ノード認証子(Ac)を一時利用鍵(Kc:tgs)で暗号化する。
【0057】
また、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:tgs)、認証証明書({Tc:tgs}Ktgs)、及び、所望のサービス名(s)を、証明書発行サーバ20の認可証明書発行部24に送信する。
【0058】
ステップ13において、証明書発行サーバ20の認可証明書発行部24は、サービス要求ノード10とサービス提供ノード30との間で一時的に利用される一時利用鍵(kc:s)を、サービス要求ノード10と認可証明書発行部24との間で一時的に利用される一時利用鍵(Kc:tgs)で暗号化する。
【0059】
また、認可証明書発行部24は、サービス要求ノード10が所望のサービスを利用することを許可する認可情報(Tc:s)を、認可証明書発行部24とサービス提供ノード30との間で共有される共有秘密鍵(Ks)で暗号化して、所望のサービスの利用が認可されたことを証明する認可証明書({Tc:s}Ks)を取得する。
【0060】
さらに、認可証明書発行部24は、暗号化済一時利用鍵({Kc:s}Kc:tgs)及び認可証明書({Tc:s}Ks)をサービス要求ノード10に送信する。
【0061】
ステップ14において、サービス要求ノード10は、暗号化済一時利用鍵({Kc:s}Kc:tgs)を一時利用鍵(Kc:tgs)で復号して、一時利用鍵(Kc:s)を取得する。また、サービス要求ノード10は、ノード認証子(Ac)を一時利用鍵(Kc:s)で暗号化する。
【0062】
さらに、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)をブロードキャストで送信する。すなわち、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する。
【0063】
なお、各サービス提供ノード30は、暗号化済ノード認証子({Ac}Kc:s)を一時利用鍵(Kc:s)で復号して、ノード認証子(Ac)を取得する。同様に、各サービス提供ノード30は、認可証明書({Tc:s}Ks)を共有秘密鍵(Ks)で復号して、認可情報(Tc:s)を取得する。また、各サービス提供ノード30は、ノード認証子(Ac)と認可情報(Tc:s)とを対応付けて記憶する。
【0064】
ステップ15において、サービス要求ノード10は、所望のサービスの提供を受けるために、ノード認証子(Ac)及び所望のサービス名(s)をサービス提供ノード30aに送信する。すなわち、サービス要求ノード10は、ノード認証子(Ac)及び所望のサービス名(s)を複数のサービス提供ノード30のいずれか宛てに送信する。
【0065】
ステップ16において、サービス提供ノード30aは、ノード認証子(Ac)に対応する認可情報(Tc:s)が認可証明書保持部34に保持されているか否かに応じて、所望のサービスをサービス要求ノード10に提供するか否かを判定する。
【0066】
具体的には、サービス提供ノード30aは、ノード認証子(Ac)に対応する認可情報(Tc:s)が認可証明書保持部34に保持されている場合には、所望のサービスをサービス要求ノード10に提供する。一方、サービス提供ノード30aは、ノード認証子(Ac)に対応する認可情報(Tc:s)が認可証明書保持部34に保持されていない場合には、所望のサービスの利用が不許可であることをサービス要求ノード10に通知する。
【0067】
(サービス要求ノードの動作)
以下において、本発明の第1実施形態に係るサービス要求ノードの動作について、図面を参照しながら説明する。図6は、本発明の第1実施形態に係るサービス要求ノード10の動作を示すフロー図である。
【0068】
図6に示すように、ステップ20において、サービス要求ノード10は、所望のサービスの要求が初回であるか否かを判定する。また、サービス要求ノード10は、所望のサービスの要求が初回である場合には、ステップ21の処理に移り、所望のサービスの要求が初回でない場合には、ステップ23の処理に移る。
【0069】
ステップ21において、サービス要求ノード10は、上述したステップ10〜ステップ13の手順に従って、認可証明書({Tc:s}Ks)を取得する。
【0070】
ステップ22において、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)をブロードキャストで送信する。
【0071】
ステップ23において、サービス要求ノード10は、所望のサービスの提供を受けるために、所望のサービス名(s)及びノード認証子(Ac)を、複数のサービス提供ノード30のいずれかに送信する。
【0072】
ステップ24において、サービス要求ノード10は、他のサービス提供ノード30にサービスの提供を要求するか否か判定する。また、サービス要求ノード10は、他のサービス提供ノード30にサービスの提供を要求する場合には、ステップ23の処理に戻り、他のサービス提供ノード30にサービスの提供を要求しない場合には、一連の処理を終了する。
【0073】
(サービス提供ノードの動作)
以下において、本発明の第1実施形態に係るサービス提供ノードの動作について、図面を参照しながら説明する。図7は、本発明の第1実施形態に係るサービス提供ノード30の動作を示すフロー図である。なお、図7は、所望のサービスの提供をサービス要求ノード10から要求された場合におけるサービス提供ノード30の処理を示している。
【0074】
図7に示すように、ステップ30において、サービス提供ノード30は、所望のサービス(s)名及びノード認証子(Ac)をサービス要求ノード10から受信する。
【0075】
ステップ31において、サービス提供ノード30は、サービス要求ノード10から受信したノード認証子(Ac)に対応する認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されているか否かを判定する。また、サービス提供ノード30は、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されている場合には、ステップ32の処理に移り、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合には、ステップ35の処理に移る。
【0076】
ステップ32において、サービス提供ノード30は、認可証明書保持部34に保持されている認可証明書({Tc:s}Ks)を検証する。
【0077】
ステップ33において、サービス提供ノード30は、認可証明書({Tc:s}Ks)が正当であるか否かを判定し、認可証明書({Tc:s}Ks)が正当である場合には、サービス要求ノード10から受信した所望のサービスの利用が許可されているか否かを判定する。また、サービス提供ノード30は、所望のサービスの利用が許可されている場合には、ステップ34の処理に移り、所望のサービスの利用が許可されていない場合には、ステップ35の処理に移る。
【0078】
ステップ34において、サービス提供ノード30は、所望のサービスをサービス要求ノード10に提供する。
【0079】
ステップ35において、サービス提供ノード30は、所望のサービスの利用が不許可であることをサービス要求ノード10に通知する。
【0080】
(作用及び効果)
本発明の第1実施形態に係るアクセス制御システム100によれば、サービス要求ノード10が、暗号化済ノード認証子(Ac)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する。
【0081】
すなわち、認可証明書({Tc:s}Ks)が複数のサービス提供ノード30に共通する証明書であるため、複数のサービス提供ノード30のそれぞれに対応する認可証明書をサービス要求ノード10が取得する必要がなくなり、認可証明書の取得に係る処理を簡易にすることができる。また、複数のサービス提供ノード30のそれぞれに対応する認可証明書をサービス要求ノード10が管理する必要がなくなり、認可証明書の管理に係る処理を簡易にすることができる。
【0082】
さらに、複数のサービス提供ノード30のそれぞれが認可証明書({Tc:s}Ks)を保持することにより、サービス要求ノード10が所望のサービスの提供を受ける際に、認可証明書({Tc:s}Ks)を改めて送信する必要がなくなり、認可証明書の送信に係る通信コストを抑制することができる。
【0083】
[第2実施形態]
以下において、本発明の第2実施形態について、図面を参照しながら説明する。なお、以下においては、上述した第1実施形態と第2実施形態との差異について主として説明する。
【0084】
具体的には、上述した第1実施形態では、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を全てのサービス提供ノード30が保持するが、第2実施形態では、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を保持するか否かを各サービス提供ノード30が判定する。
【0085】
また、第2実施形態では、サービス提供ノード30は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際に、受信したノード認証子(Ac)に対応する認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合に、周囲に配置された他のサービス提供ノード30に対して認可証明書({Tc:s}Ks)を要求する。
【0086】
(サービス提供ノードの構成)
以下において、本発明の第2実施形態に係るサービス提供ノードの構成について、図面を参照しながら説明する。図8は、本発明の第2実施形態に係るサービス提供ノード30を示すブロック図である。
【0087】
図8に示すように、サービス提供ノード30は、図4に示した構成に加えて、認可証明書保持判定部36を有する。
【0088】
認可証明書保持判定部36は、サービス要求ノード10から暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信した場合に、暗号化済ノード認証子({Ac}Kc:s)と認可証明書({Tc:s}Ks)とを対応付けて保持するか否かを所定の基準に従って判定する。
【0089】
なお、所定の基準とは、(1)認可証明書保持部34の空き容量が所定の閾値以上であるか否か、(2)認可証明書({Tc:s}Ks)を保持する要求をサービス要求ノード10から受けているか否か、(3)認可証明書({Tc:s}Ks)を保持するようにサービス提供ノード30が設定されているか否か、(4)ランダムな確率で認可証明書({Tc:s}Ks)を保持するか否か、(5)周囲に配置された他のサービス提供ノード30の存在確率が所定の閾値以下であるか否かなどである。
【0090】
また、上述した通信部31は、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。例えば、通信部31は、認証許可書探索通知をブロードキャストで送信する。
【0091】
(サービス提供ノードの動作)
以下において、本発明の第2実施形態に係るサービス提供ノードの動作について、図面を参照しながら説明する。図9は、本発明の第2実施形態に係るサービス提供ノード30の動作を示すフロー図である。なお、図9は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信した際におけるサービス提供ノード30の動作を示している。
【0092】
図9に示すように、ステップ40において、サービス提供ノード30は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信する。
【0093】
ステップ41において、サービス提供ノード30は、認可証明書({Tc:s}Ks)を保持するか否かを所定の基準に従って判定する。また、サービス提供ノード30は、認可証明書({Tc:s}Ks)を保持する場合には、ステップ42の処理に移り、認可証明書({Tc:s}Ks)を保持しない場合には、ステップ43の処理に移る。
【0094】
ステップ42において、サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に格納する。
【0095】
ステップ43において、サービス提供ノード30は、認可証明書({Tc:s}Ks)を破棄する。
【0096】
以下において、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作について、図面を参照しながら説明する。図10は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作を示すフロー図である。
【0097】
なお、図10では、上述した図7と同様の処理に対して同様の符号を付している。具体的には、図10では、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていないと判定された場合に、ステップ36及びステップ37が加えられている。
【0098】
図10に示すように、ステップ36において、サービス提供ノード30は、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。
【0099】
ステップ37において、サービス提供ノード30は、周囲に配置された他のサービス提供ノード30から認可証明書({Tc:s}Ks)を取得できたか否かを判定する。また、サービス提供ノード30は、認可証明書({Tc:s}Ks)を取得できた場合には、ステップ33の処理に移り、認可証明書({Tc:s}Ks)を取得できなかった場合には、ステップ35の処理に移る。
【0100】
(作用及び効果)
本発明の第2実施形態に係るアクセス制御システム100によれば、サービス提供ノード30は、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を保持するか否かを判定する。従って、認可証明書({Tc:s}Ks)の保持に必要なサービス提供ノード30の負荷を軽減することができる。
【0101】
また、サービス提供ノード30は、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。従って、サービス提供ノード30は、認可証明書({Tc:s}Ks)を保持しないと判定した場合であっても、周囲に配置された他のサービス提供ノード30から認可証明書({Tc:s}Ks)を取得することができる。
【0102】
[第3実施形態]
以下において、本発明の第3実施形態について、図面を参照しながら説明する。なお、以下においては、上述した第2実施形態と第3実施形態との差異について主として説明する。
【0103】
具体的には、上述した第2実施形態では、サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に保持するのみであるが、第3実施形態では、
サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に保持した後に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。
【0104】
また、サービス提供ノード30は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際に、受信したノード認証子(Ac)に対応する認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合に、認可証明書保持通知を送信した他のサービス提供ノード30に対して認可証明書({Tc:s}Ks)を要求する。
【0105】
(サービス提供ノードの構成)
以下において、本発明の第3実施形態に係るサービス提供ノードの構成について、図面を参照しながら説明する。図11は、本発明の第3実施形態に係るサービス提供ノード30を示すブロック図である。
【0106】
図11に示すように、サービス提供ノード30は、図8に示した構成に加えて、認可証明書保持ノード管理部37を有する。
【0107】
認可証明書保持ノード管理部37は、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を他のサービス提供ノード30から受信した場合に、認可証明書保持通知を送信した他のサービス提供ノード30を識別する識別子などを管理する。
【0108】
また、上述した通信部31は、認可証明書保持ノード管理部37によって管理されている識別子に対応する他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。
【0109】
さらに、上述した通信部31は、認可証明書({Tc:s}Ks)を認可証明書保持部34に保持した後に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。例えば、通信部31は、認可証明書保持通知をブロードキャストで送信する。
【0110】
(サービス提供ノードの動作)
以下において、本発明の第3実施形態に係るサービス提供ノードの動作について、図面を参照しながら説明する。図12は、本発明の第3実施形態に係るサービス提供ノード30の動作を示すフロー図である。なお、図12は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信した際におけるサービス提供ノード30の動作を示している。
【0111】
また、図12では、上述した図9と同様の処理に対して同様の符号を付している。具体的には、図12では、認可証明書({Tc:s}Ks)を格納する処理(ステップ42)の後に、ステップ44の処理が加えられている。
【0112】
図12に示すように、ステップ44において、サービス提供ノード30は、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。
【0113】
以下において、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作について、図面を参照しながら説明する。図13は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作を示すフロー図である。
【0114】
なお、図13では、上述した図10と同様の処理に対して同様の符号を付している。具体的には、図13では、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていないと判定された場合に、ステップ38が加えられており、ステップ36に代えてステップ36aが加えられている。
【0115】
図13に示すように、ステップ38において、サービス提供ノード30は、認可証明書保持通知を他のサービス提供ノード30から受信しているか否かを判定する。また、サービス提供ノード30は、認可証明書保持通知を受信している場合には、ステップ36aの処理に移り、認可証明書保持通知を受信していない場合には、ステップ35の処理に移る。
【0116】
ステップ36aにおいて、サービス提供ノード30は、認可証明書保持ノード管理部37を参照することによって、認可証明書保持通知を送信した他のサービス提供ノード30を特定し、特定された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。
【0117】
(作用及び効果)
本発明の第3実施形態に係るアクセス制御システム100によれば、サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に格納した場合に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。従って、認可証明書({Tc:s}Ks)を保持していないサービス提供ノード30は、認可証明書({Tc:s}Ks)を保持する他のサービス提供ノード30を容易に特定することができ、認可証明書({Tc:s}Ks)を効率的に取得することができる。
【0118】
[その他の実施形態]
上述した第1実施形態〜第3実施形態では、認証情報や認可情報などの情報は、各種暗号鍵で暗号化されているが、暗号化の方法は、上述した方法に限定されるものではない。また、認証情報や認可情報などの情報は、暗号化されずに送受信されてもよい。
【0119】
上述した第1実施形態〜第3実施形態では、サービス要求ノード10は、認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する際にブロードキャストで送信するが、これに限定されるものではなく、マルチキャストで送信してもよい。
【図面の簡単な説明】
【0120】
【図1】本発明の第1実施形態に係るアクセス制御システムを示す図である。
【図2】本発明の第1実施形態に係るサービス要求ノード10を示すブロック図である。
【図3】本発明の第1実施形態に係る証明書発行サーバ20を示すブロック図である。
【図4】本発明の第1実施形態に係るサービス提供ノード30を示すブロック図である。
【図5】本発明の第1実施形態に係るアクセス制御システム100の動作を示すシーケンス図である。
【図6】本発明の第1実施形態に係るサービス要求ノード10の動作を示すフロー図である。
【図7】本発明の第1実施形態に係るサービス提供ノード30の動作を示すフロー図である。
【図8】本発明の第2実施形態に係るサービス提供ノード30を示すブロック図である。
【図9】本発明の第2実施形態に係るサービス提供ノード30の動作を示すフロー図である(その1)。
【図10】本発明の第2実施形態に係るサービス提供ノード30の動作を示すフロー図である(その2)。
【図11】本発明の第3実施形態に係るサービス提供ノード30を示すブロック図である。
【図12】本発明の第3実施形態に係るサービス提供ノード30の動作を示すフロー図である(その1)。
【図13】本発明の第3実施形態に係るサービス提供ノード30の動作を示すフロー図である(その2)。
【符号の説明】
【0121】
10・・・サービス要求ノード、11・・・通信部、12・・・鍵管理部、13・・・証明書検証部、14・・・認証子保持部、20・・・証明書発行サーバ、21・・・通信部、22・・・鍵管理部、23・・・認証証明書発行部、24・・・認可証明書発行部、30・・・サービス提供ノード、31・・・通信部、32・・・鍵管理部、33・・・認可証明書検証部、34・・・認可証明書保持部、35・・・サービス提供部、36・・・認可証明書保持判定部、37・・・認可証明書保持ノード管理部、100・・・アクセス制御システム
【技術分野】
【0001】
本発明は、サービスの利用が許可されたことを証明する認可証明書を用いて、サービスの利用を制限するアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードに関する。
【背景技術】
【0002】
従来、サービスの利用を要求するノード(以下、サービス要求ノード)と、サービスの利用が許可されたことを証明する認可証明書を発行する認可証明書発行部を有する証明書発行サーバと、サービスを提供するノード(以下、サービス提供ノード)とを含む分散型ネットワークでは、以下のような分散認証方式や分散アクセス制御方式が適用されていた(例えば、非特許文献1)。
【0003】
具体的には、サービス要求ノードは、上述した認可証明書発行部へのアクセスが認証されたことを証明する認証証明書を証明書発行サーバに要求する。また、サービス要求ノードは、新たな送信情報であることを保障するために、サービス要求ノードを識別するノード識別子及び現在時刻に基づいてノード認証子を生成する。
【0004】
続いて、サービス要求ノードは、所望のサービス名、ノード認証子及び認証証明書を証明書発行サーバの認可証明書発行部に送信して、上述した認可証明書を証明書発行サーバの認可証明書発行部から取得する。
【0005】
また、サービス要求ノードは、上述したノード認証子及び認可証明書を一のサービス提供ノードに送信して、所望のサービスの提供を一のサービス提供ノードから受ける。
【0006】
なお、上述した各過程では、各ノード間で送受信される情報は、一時利用鍵や共有秘密鍵などを用いて、必要に応じて暗号化されている。
【0007】
このように、従来の分散認証方式や分散アクセス制御方式では、サービス要求ノードとサービス提供ノードとが一対一の関係であることを前提として、分散認証や分散アクセス制御が行われていた。
【非特許文献1】“The Network Authentication Protocol”、[online]、[平成18年1月13日検索]、インターネット<URL:http://web.mit.edu/kerberos/www/>
【発明の開示】
【発明が解決しようとする課題】
【0008】
一方、サービス提供ノードとして機能するノードは、家電やPCなどに限られるものではなく、各種センサー、家具、壁、食器及び洋服などがサービス提供ノードとして機能することが想定される。このような場合には、サービス要求ノードとサービス提供ノードとは、一対一の関係ではなくて、一対多の関係となることが想定される。
【0009】
しかしながら、サービス要求ノードとサービス提供ノードとが一対多の関係である場合には、サービス要求ノードは、複数のサービス提供ノードからサービスの提供を受ける際に、複数のサービス提供ノードのそれぞれに対応する認可証明書を取得しなければならないため、認可証明書の取得に係る処理が煩雑であった。また、サービス要求ノードは、複数のサービス提供ノードのそれぞれに対応する認可証明書を管理しなければならないため、認可証明書の管理が煩雑であった。さらに、サービス要求ノードは、複数のサービス提供ノードのそれぞれに認可証明書を送信しなければならないため、認可証明書の送信に係る通信コストが増大してしまう。
【0010】
そこで、本発明は、上述した課題を解決するためになされたものであり、サービス要求ノードとサービス提供ノードとが一対多の関係である場合であっても、認可証明書の取得に係る処理及び認可証明書の管理を簡易にするとともに、認可証明書の送信に係る通信コストを抑制することが可能なアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の第1の特徴は、サービスの利用を要求するサービス要求ノード(サービス要求ノード10)と、前記サービスの利用が許可されたことを示す認可情報(認可情報(Tc:s)又は認可証明書({Tc:s}Ks)を生成する証明書発行サーバ(証明書発行サーバ20)と、前記サービスを提供する複数のサービス提供ノード(サービス提供ノード30)とを含むアクセス制御システム(アクセス制御システム100)において、前記サービス要求ノードが、前記証明書発行サーバによって生成された前記認可情報及び前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子を前記複数のサービス提供ノード宛てに送信する認可情報送信部(通信部11)と、前記サービスの利用を要求する場合に、前記複数のサービス提供ノードのいずれか宛てに前記ノード認証子を送信するノード認証子送信部(通信部11)とを備え、前記サービス提供ノードが、前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部(認可証明書検証部33)を備えることを要旨とする。
【0012】
かかる特徴によれば、認可情報送信部が、ノード認証子及び認可情報を複数のサービス提供ノード宛てに送信する。
【0013】
すなわち、認可情報が複数のサービス提供ノードに共通する情報であるため、複数のサービス提供ノードのそれぞれに対応する認可情報をサービス要求ノードが取得する必要がなくなり、認可情報の取得に係る処理を簡易にすることができる。また、複数のサービス提供ノードのそれぞれに対応する認可情報をサービス要求ノードが管理する必要がなくなり、認可情報の管理に係る処理を簡易にすることができる。
【0014】
さらに、複数のサービス提供ノードのそれぞれが認可情報を保持することにより、サービス要求ノードが所望のサービスの提供を受ける際に、認可情報を改めて送信する必要がなくなり、認可情報の送信に係る通信コストを抑制することができる。
【0015】
本発明の第2の特徴は、本発明の第1の特徴において、前記サービス提供ノードが、前記サービス要求ノードの前記認可情報送信部から受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部(認可証明書保持部34)と、前記サービス要求ノードの前記認可情報送信部から受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部(認可証明書保持判定部36)とをさらに備えることを要旨とする。
【0016】
本発明の第3の特徴は、本発明の第2の特徴において、前記サービス提供ノードが、前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部(通信部31)をさらに備えることを要旨とする。
【0017】
本発明の第4の特徴は、本発明の第2の特徴において、前記サービス提供ノードが、前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部(通信部31)をさらに備えることを要旨とする。
【0018】
本発明の第5の特徴は、サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバ(証明書発行サーバ20)と、前記サービスを提供する複数のサービス提供ノード(サービス提供ノード30)とを含むアクセス制御システム(アクセス制御システム100)で用いられ、前記サービスの利用を要求するサービス要求ノード(サービス要求ノード10)が、前記証明書発行サーバによって生成された前記認可情報及び前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子を前記複数のサービス提供ノード宛てに送信する認可情報送信部(通信部11)と、前記サービスの利用を要求する場合に、前記複数のサービス提供ノードのいずれか宛てに前記ノード認証子を送信するノード認証子送信部(通信部11)とを備えることを要旨とする。
【0019】
本発明の第6の特徴は、サービスの利用を要求するサービス要求ノード(サービス要求ノード10)と、前記サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバ(証明書発行サーバ20)とを含むアクセス制御システム(アクセス制御システム100)で用いられ、前記サービスを提供するサービス提供ノード(サービス提供ノード30)が、前記証明書発行サーバによって生成された前記認可情報及び前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子を前記サービス要求ノードから受信する認可情報受信部(通信部31)と、前記サービス要求ノードから受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部(認可証明書保持部34)と、前記サービス要求ノードから受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部(認可証明書保持判定部36)と、前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部(認可証明書検証部33)とを備えることを要旨とする。
【0020】
本発明の第7の特徴は、本発明の第6の特徴において、サービス提供ノードが、前記サービス要求ノードから前記サービスの利用を要求された際に前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部(通信部31)をさらに備えることを要旨とする。
【0021】
本発明の第8の特徴は、本発明の第6の特徴において、サービス提供ノードが、前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部(通信部31)をさらに備えることを要旨とする。
【発明の効果】
【0022】
本発明によれば、サービス要求ノードとサービス提供ノードとが一対多の関係である場合であっても、認可証明書の取得に係る処理及び認可証明書の管理を簡易にするとともに、認可証明書の送信に係る通信コストを抑制することが可能なアクセス制御システム、このアクセス制御システムに用いて好適なサービス要求ノード及びサービス提供ノードを提供することができる。
【発明を実施するための最良の形態】
【0023】
[第1実施形態]
(アクセス制御システムの構成)
以下において、本発明の第1実施形態に係るアクセス制御システムの構成について、図面を参照しながら説明する。図1は、本発明の第1実施形態に係るアクセス制御システム100を示す図である。
【0024】
図1に示すように、アクセス制御システム100は、サービス要求ノード10と、証明書発行サーバ20と、複数のサービス提供ノード30(サービス提供ノード30a〜サービス提供ノード30c)とを有する。
【0025】
サービス要求ノード10は、サービスの利用を要求するノードである。具体的には、サービス要求ノード10は、証明書発行サーバ20によって発行された認可証明書をサービス提供ノード30に提示することによって、所望のサービスの提供を受ける。なお、サービス要求ノード10の詳細については後述する(図2を参照)。
【0026】
証明書発行サーバ20は、サービスの利用が許可されたことを証明する認可証明書を発行する。なお、証明書発行サーバ20の詳細については後述する(図3を参照)。
【0027】
サービス提供ノード30は、サービス要求ノード10にサービスを提供するノードである。例えば、サービス提供ノード30は、通信機能を有する家電やPCなどであり、通信機能を有するICチップなどを備える各種センサー、家具、壁、食器及び洋服などであってもよい。なお、サービス提供ノード30の詳細については後述する(図4を参照)。
【0028】
(サービス要求ノードの構成)
以下において、本発明の第1実施形態に係るサービス要求ノードの構成について、図面を参照しながら説明する。図2は、本発明の第1実施形態に係るサービス要求ノード10を示すブロック図である。
【0029】
図2に示すように、サービス要求ノード10は、通信部11と、鍵管理部12と、証明書検証部13と、認証子保持部14とを有する。
【0030】
通信部11は、サービス要求ノード10と証明書発行サーバ20との間の通信を行う。具体的には、通信部11は、サービス要求ノード10を識別するノード識別子(c)、後述する証明書発行サーバ20の認可証明書発行部24を識別する認可証明書発行部識別子(tgs)、暗号化済ノード認証子({Ac}kc:tgs)、認証証明書({Tc:tgs}Ktgs)、所望のサービス名(s)を証明書発行サーバ20に送信する。一方、通信部11は、暗号化済一時利用鍵({Kc:tgs}Kc)、認証証明書({Tc:tgs}Ktgs)、暗号化済一時利用鍵({Kc:s}Kc:tgs)、認可証明書({Tc:s}Ks)を証明書発行サーバ20から受信する。
【0031】
また、通信部11は、サービス要求ノード10とサービス提供ノード30との間の通信を行う。具体的には、通信部11は、暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する。例えば、通信部11は、暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)をブロードキャストで送信する。また、通信部11は、ノード認証子(Ac)及び所望のサービス名(s)を複数のサービス提供ノード30のいずれか宛てに送信する。
【0032】
鍵管理部12は、後述する証明書発行サーバ20の認証証明書発行部23とサービス要求ノード10との間で共有される共有秘密鍵(Kc)を保持する。
【0033】
また、鍵管理部12は、サービス要求ノード10とサービス提供ノード30との間で一時的に利用される一次利用鍵(Kc:s)を保持する。具体的には、鍵管理部12は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:tgs}Kc)を共有秘密鍵(Kc)で復号し、一時利用鍵(Kc:tgs)を取得する。次いで、鍵管理部12は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:s}Kc:tgs)を一時利用鍵(Kc:tgs)で復号して一時利用鍵(Kc:s)を取得し、取得された一時利用鍵(Kc:s)を保持する。
【0034】
証明書検証部13は、証明書発行サーバ20から受信した認可証明書({Tc:s}Ks)の正当性を検証する。具体的には、証明書検証部13は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:tgs}Kc)を共有秘密鍵(Kc)で復号し、一時利用鍵(Kc:tgs)を取得する。次いで、証明書検証部13は、一時利用鍵(Kc:tgs)に含まれる認可証明書発行部識別子(tgs)と、認可証明書({Tc:s}Ks)の発行を要求した認可証明書発行部24の認可証明書発行部識別子(tgs)とが一致するか否かを検証する。また、証明書検証部13は、証明書発行サーバ20から受信した暗号化済一時利用鍵({Kc:s}Kc:tgs)を一時利用鍵(Kc:tgs)で復号し、一時利用鍵(Kc:s)を取得する。次いで、証明書検証部13は、一時利用鍵(Kc:s)に含まれるサービス名(s)と所望のサービス名(s)と一致するか否かを検証する。
【0035】
認証子保持部14は、暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する際に必要となるノード認証子(Ac)を保持する。具体的には、認証子保持部14は、サービス要求ノード10を識別するノード識別子及び現在時刻によってノード認証子(Ac)を生成し、生成されたノード認証子(Ac)を保持する。
【0036】
(証明書発行サーバの構成)
以下において、本発明の第1実施形態に係る証明書発行サーバの構成について、図面を参照しながら説明する。図3は、本発明の第1実施形態に係る証明書発行サーバ20を示すブロック図である。
【0037】
図3に示すように、証明書発行サーバ20は、通信部21と、鍵管理部22と、認証証明書発行部23と、認可証明書発行部24とを有する。
【0038】
通信部21は、証明書発行サーバ20とサービス要求ノード10との間の通信を行う。具体的には、通信部21は、暗号化済一時利用鍵({Kc:tgs}Kc)、認証証明書({Tc:tgs}Ktgs)、暗号化済一時利用鍵({Kc:s}Kc:tgs)、認可証明書({Tc:s}Ks)をサービス要求ノード10に送信する。一方、通信部21は、サービス要求ノード10を識別するノード識別子(c)、認可証明書発行部24を識別する認可証明書発行部識別子(tgs)、暗号化済ノード認証子({Ac}kc:tgs)、認証証明書({Tc:tgs}Ktgs)、所望のサービス名(s)をサービス要求ノード10から受信する。
【0039】
鍵管理部22は、認証証明書発行部23とサービス要求ノード10との間で共有される共有秘密鍵(Kc)を保持する。また、鍵管理部22は、認証証明書発行部23と認可証明書発行部24との間で共有される共有秘密鍵(Ktgs)を保持する。
【0040】
さらに、鍵管理部22は、認可証明書発行部24とサービス提供ノード30との間で共有される共有秘密鍵(Ks)を保持する。また、鍵管理部22は、認可証明書発行部24とサービス要求ノード10との間で一時的に利用される一時利用鍵(Kc:tgs)を生成し、生成された一時利用鍵(Kc:tgs)を保持する。
【0041】
認証証明書発行部23は、サービス要求ノード10が認可証明書発行部24へアクセスすることが許可されたことを証明する認証証明書({Tc:tgs}Ktgs)を発行する。具体的には、認証証明書発行部23は、サービス要求ノード10が認可証明書発行部24へアクセスすることを許可する認証情報(Tc:tgs)を生成し、生成された認証情報(Tc:tgs)を共有秘密鍵(Ktgs)で暗号化して、認証証明書({Tc:tgs}Ktgs)を取得する。
【0042】
認可証明書発行部24は、所望のサービスの利用が認可されたことを証明する認可証明書({Tc:s}Ks)を発行する。具体的には、認可証明書発行部24は、所望のサービスの利用を認可する認可情報(Tc:s)を生成し、生成された認可情報(Tc:s)を共有秘密鍵(Ks)で暗号化して、認可証明書({Tc:s}Ks)を取得する。
【0043】
(サービス提供ノードの構成)
以下において、本発明の第1実施形態に係るサービス提供ノードの構成について、図面を参照しながら説明する。図4は、本発明の第1実施形態に係るサービス提供ノード30を示すブロック図である。
【0044】
図4に示すように、サービス提供ノード30は、通信部31と、鍵管理部32と、認可証明書検証部33と、認可証明書保持部34と、サービス提供部35とを有する。
【0045】
通信部31は、サービス提供ノード30とサービス要求ノード10との間の通信を行う。具体的には、通信部31は、ブロードキャストで送信された暗号化済ノード認証子({Ac}kc:s)及び認可証明書({Tc:s}Ks)を受信する。また、通信部31は、ノード認証子(Ac)及び所望のサービス名(s)を受信する。
【0046】
鍵管理部32は、サービス提供ノード30と証明書発行サーバ20の認可証明書発行部24との間で共有される共有秘密鍵(Ks)を保持する。また、鍵管理部32は、サービス要求ノード10とサービス提供ノード30との間で一時的に利用される一時利用鍵(Kc:s)を保持する。
【0047】
認可証明書検証部33は、認可証明書保持部34に保持されている認可証明書({Tc:s}Ks)の正当性を検証することによって、所望のサービスをサービス要求ノード10に提供するか否かを判定する。具体的には、認可証明書検証部33は、サービス要求ノード10から受信した暗号化済ノード認証子({Ac}Kc:s)を一時利用鍵(Kc:s)で復号して、ノード認証子(Ac)を取得する。次いで、認可証明書検証部33は、取得されたノード認証子(Ac)と一致するノード認証子(Ac)が認可証明書保持部34に保持されているか否かを検証する。また、認可証明書検証部33は、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を共有秘密鍵(Ks)で復号して、認可情報(Tc:s)を取得する。次いで、認可証明書検証部33は、取得された認可情報(Tc:s)と一致する認可情報(Tc:s)が、取得されたノード認証子(Ac)に対応付けられて認可証明書保持部34に保持されているか否かを検証する。
【0048】
認可証明書保持部34は、ノード認証子(Ac)と認可証明書({Tc:s}Ks)とを対応付けて保持する。具体的には、認可証明書保持部34は、サービス要求ノード10から受信した暗号化済ノード認証子({Ac}Kc:tgs)を一時利用鍵(Kc:tgs)で復号化してノード認証子(Ac)を取得し、ノード認証子(Ac)と認可証明書({Tc:s}Ks)とを対応付けて保持する。
【0049】
なお、認可証明書保持部34は、認可証明書({Tc:s}Ks)を共有秘密鍵(Ks)で復号して認可情報(Tc:s)をさらに取得し、ノード認証子(Ac)と認可情報(Tc:s)とを対応付けて保持していてもよい。
【0050】
サービス提供部35は、認可証明書検証部33によって認可証明書({Tc:s}Ks)が正当であることが検証された場合には、サービス要求ノード10から要求された所望のサービスをサービス要求ノード10に提供する。
【0051】
(アクセス制御システムの動作)
以下において、本発明の第1実施形態に係るアクセス制御システムの動作について、図面を参照しながら説明する。図5は、本発明の第1実施形態に係るアクセス制御システム100の動作を示すシーケンス図である。
【0052】
図5に示すように、ステップ10において、サービス要求ノード10は、サービス要求ノード10を識別するノード識別子(c)及び証明書発行サーバ20の認可証明書発行部24を識別する認可証明書発行部識別子(tgs)を、証明書発行サーバ20の認証証明書発行部23に送信する。
【0053】
ステップ11において、証明書発行サーバ20の認証証明書発行部23は、サービス要求ノード10と認可証明書発行部24との間で一時的に利用される一時利用鍵(Kc:tgs)を、サービス要求ノード10と認証証明書発行部23との間で共有される共有秘密鍵(Kc)で暗号化する。
【0054】
また、認証証明書発行部23は、サービス要求ノード10が認可証明書発行部24にアクセスすることを認可する認証情報(Tc:tgs)を、認証証明書発行部23と認可証明書発行部24との間で共有される共有秘密鍵(Ktgs)で暗号化して、認可証明書発行部24にアクセスすることが認可されたことを証明する認証証明書({Tc:tgs}Ktgs)を生成する。
【0055】
さらに、認証証明書発行部23は、暗号化済一時利用鍵({Kc:tgs}Kc)及び認証証明書({Tc:tgs}Ktgs)をサービス要求ノード10に送信する。
【0056】
ステップ12において、サービス要求ノード10は、サービス要求ノード10を識別するノード識別子及び現在時刻を用いてノード認証子(Ac)を生成する。また、サービス要求ノード10は、暗号化済一時利用鍵({Kc:tgs}Kc)を共有秘密鍵(Kc)で復号して、一時利用鍵(Kc:tgs)を取得する。さらに、サービス要求ノード10は、ノード認証子(Ac)を一時利用鍵(Kc:tgs)で暗号化する。
【0057】
また、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:tgs)、認証証明書({Tc:tgs}Ktgs)、及び、所望のサービス名(s)を、証明書発行サーバ20の認可証明書発行部24に送信する。
【0058】
ステップ13において、証明書発行サーバ20の認可証明書発行部24は、サービス要求ノード10とサービス提供ノード30との間で一時的に利用される一時利用鍵(kc:s)を、サービス要求ノード10と認可証明書発行部24との間で一時的に利用される一時利用鍵(Kc:tgs)で暗号化する。
【0059】
また、認可証明書発行部24は、サービス要求ノード10が所望のサービスを利用することを許可する認可情報(Tc:s)を、認可証明書発行部24とサービス提供ノード30との間で共有される共有秘密鍵(Ks)で暗号化して、所望のサービスの利用が認可されたことを証明する認可証明書({Tc:s}Ks)を取得する。
【0060】
さらに、認可証明書発行部24は、暗号化済一時利用鍵({Kc:s}Kc:tgs)及び認可証明書({Tc:s}Ks)をサービス要求ノード10に送信する。
【0061】
ステップ14において、サービス要求ノード10は、暗号化済一時利用鍵({Kc:s}Kc:tgs)を一時利用鍵(Kc:tgs)で復号して、一時利用鍵(Kc:s)を取得する。また、サービス要求ノード10は、ノード認証子(Ac)を一時利用鍵(Kc:s)で暗号化する。
【0062】
さらに、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)をブロードキャストで送信する。すなわち、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する。
【0063】
なお、各サービス提供ノード30は、暗号化済ノード認証子({Ac}Kc:s)を一時利用鍵(Kc:s)で復号して、ノード認証子(Ac)を取得する。同様に、各サービス提供ノード30は、認可証明書({Tc:s}Ks)を共有秘密鍵(Ks)で復号して、認可情報(Tc:s)を取得する。また、各サービス提供ノード30は、ノード認証子(Ac)と認可情報(Tc:s)とを対応付けて記憶する。
【0064】
ステップ15において、サービス要求ノード10は、所望のサービスの提供を受けるために、ノード認証子(Ac)及び所望のサービス名(s)をサービス提供ノード30aに送信する。すなわち、サービス要求ノード10は、ノード認証子(Ac)及び所望のサービス名(s)を複数のサービス提供ノード30のいずれか宛てに送信する。
【0065】
ステップ16において、サービス提供ノード30aは、ノード認証子(Ac)に対応する認可情報(Tc:s)が認可証明書保持部34に保持されているか否かに応じて、所望のサービスをサービス要求ノード10に提供するか否かを判定する。
【0066】
具体的には、サービス提供ノード30aは、ノード認証子(Ac)に対応する認可情報(Tc:s)が認可証明書保持部34に保持されている場合には、所望のサービスをサービス要求ノード10に提供する。一方、サービス提供ノード30aは、ノード認証子(Ac)に対応する認可情報(Tc:s)が認可証明書保持部34に保持されていない場合には、所望のサービスの利用が不許可であることをサービス要求ノード10に通知する。
【0067】
(サービス要求ノードの動作)
以下において、本発明の第1実施形態に係るサービス要求ノードの動作について、図面を参照しながら説明する。図6は、本発明の第1実施形態に係るサービス要求ノード10の動作を示すフロー図である。
【0068】
図6に示すように、ステップ20において、サービス要求ノード10は、所望のサービスの要求が初回であるか否かを判定する。また、サービス要求ノード10は、所望のサービスの要求が初回である場合には、ステップ21の処理に移り、所望のサービスの要求が初回でない場合には、ステップ23の処理に移る。
【0069】
ステップ21において、サービス要求ノード10は、上述したステップ10〜ステップ13の手順に従って、認可証明書({Tc:s}Ks)を取得する。
【0070】
ステップ22において、サービス要求ノード10は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)をブロードキャストで送信する。
【0071】
ステップ23において、サービス要求ノード10は、所望のサービスの提供を受けるために、所望のサービス名(s)及びノード認証子(Ac)を、複数のサービス提供ノード30のいずれかに送信する。
【0072】
ステップ24において、サービス要求ノード10は、他のサービス提供ノード30にサービスの提供を要求するか否か判定する。また、サービス要求ノード10は、他のサービス提供ノード30にサービスの提供を要求する場合には、ステップ23の処理に戻り、他のサービス提供ノード30にサービスの提供を要求しない場合には、一連の処理を終了する。
【0073】
(サービス提供ノードの動作)
以下において、本発明の第1実施形態に係るサービス提供ノードの動作について、図面を参照しながら説明する。図7は、本発明の第1実施形態に係るサービス提供ノード30の動作を示すフロー図である。なお、図7は、所望のサービスの提供をサービス要求ノード10から要求された場合におけるサービス提供ノード30の処理を示している。
【0074】
図7に示すように、ステップ30において、サービス提供ノード30は、所望のサービス(s)名及びノード認証子(Ac)をサービス要求ノード10から受信する。
【0075】
ステップ31において、サービス提供ノード30は、サービス要求ノード10から受信したノード認証子(Ac)に対応する認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されているか否かを判定する。また、サービス提供ノード30は、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されている場合には、ステップ32の処理に移り、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合には、ステップ35の処理に移る。
【0076】
ステップ32において、サービス提供ノード30は、認可証明書保持部34に保持されている認可証明書({Tc:s}Ks)を検証する。
【0077】
ステップ33において、サービス提供ノード30は、認可証明書({Tc:s}Ks)が正当であるか否かを判定し、認可証明書({Tc:s}Ks)が正当である場合には、サービス要求ノード10から受信した所望のサービスの利用が許可されているか否かを判定する。また、サービス提供ノード30は、所望のサービスの利用が許可されている場合には、ステップ34の処理に移り、所望のサービスの利用が許可されていない場合には、ステップ35の処理に移る。
【0078】
ステップ34において、サービス提供ノード30は、所望のサービスをサービス要求ノード10に提供する。
【0079】
ステップ35において、サービス提供ノード30は、所望のサービスの利用が不許可であることをサービス要求ノード10に通知する。
【0080】
(作用及び効果)
本発明の第1実施形態に係るアクセス制御システム100によれば、サービス要求ノード10が、暗号化済ノード認証子(Ac)及び認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する。
【0081】
すなわち、認可証明書({Tc:s}Ks)が複数のサービス提供ノード30に共通する証明書であるため、複数のサービス提供ノード30のそれぞれに対応する認可証明書をサービス要求ノード10が取得する必要がなくなり、認可証明書の取得に係る処理を簡易にすることができる。また、複数のサービス提供ノード30のそれぞれに対応する認可証明書をサービス要求ノード10が管理する必要がなくなり、認可証明書の管理に係る処理を簡易にすることができる。
【0082】
さらに、複数のサービス提供ノード30のそれぞれが認可証明書({Tc:s}Ks)を保持することにより、サービス要求ノード10が所望のサービスの提供を受ける際に、認可証明書({Tc:s}Ks)を改めて送信する必要がなくなり、認可証明書の送信に係る通信コストを抑制することができる。
【0083】
[第2実施形態]
以下において、本発明の第2実施形態について、図面を参照しながら説明する。なお、以下においては、上述した第1実施形態と第2実施形態との差異について主として説明する。
【0084】
具体的には、上述した第1実施形態では、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を全てのサービス提供ノード30が保持するが、第2実施形態では、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を保持するか否かを各サービス提供ノード30が判定する。
【0085】
また、第2実施形態では、サービス提供ノード30は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際に、受信したノード認証子(Ac)に対応する認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合に、周囲に配置された他のサービス提供ノード30に対して認可証明書({Tc:s}Ks)を要求する。
【0086】
(サービス提供ノードの構成)
以下において、本発明の第2実施形態に係るサービス提供ノードの構成について、図面を参照しながら説明する。図8は、本発明の第2実施形態に係るサービス提供ノード30を示すブロック図である。
【0087】
図8に示すように、サービス提供ノード30は、図4に示した構成に加えて、認可証明書保持判定部36を有する。
【0088】
認可証明書保持判定部36は、サービス要求ノード10から暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信した場合に、暗号化済ノード認証子({Ac}Kc:s)と認可証明書({Tc:s}Ks)とを対応付けて保持するか否かを所定の基準に従って判定する。
【0089】
なお、所定の基準とは、(1)認可証明書保持部34の空き容量が所定の閾値以上であるか否か、(2)認可証明書({Tc:s}Ks)を保持する要求をサービス要求ノード10から受けているか否か、(3)認可証明書({Tc:s}Ks)を保持するようにサービス提供ノード30が設定されているか否か、(4)ランダムな確率で認可証明書({Tc:s}Ks)を保持するか否か、(5)周囲に配置された他のサービス提供ノード30の存在確率が所定の閾値以下であるか否かなどである。
【0090】
また、上述した通信部31は、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。例えば、通信部31は、認証許可書探索通知をブロードキャストで送信する。
【0091】
(サービス提供ノードの動作)
以下において、本発明の第2実施形態に係るサービス提供ノードの動作について、図面を参照しながら説明する。図9は、本発明の第2実施形態に係るサービス提供ノード30の動作を示すフロー図である。なお、図9は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信した際におけるサービス提供ノード30の動作を示している。
【0092】
図9に示すように、ステップ40において、サービス提供ノード30は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信する。
【0093】
ステップ41において、サービス提供ノード30は、認可証明書({Tc:s}Ks)を保持するか否かを所定の基準に従って判定する。また、サービス提供ノード30は、認可証明書({Tc:s}Ks)を保持する場合には、ステップ42の処理に移り、認可証明書({Tc:s}Ks)を保持しない場合には、ステップ43の処理に移る。
【0094】
ステップ42において、サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に格納する。
【0095】
ステップ43において、サービス提供ノード30は、認可証明書({Tc:s}Ks)を破棄する。
【0096】
以下において、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作について、図面を参照しながら説明する。図10は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作を示すフロー図である。
【0097】
なお、図10では、上述した図7と同様の処理に対して同様の符号を付している。具体的には、図10では、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていないと判定された場合に、ステップ36及びステップ37が加えられている。
【0098】
図10に示すように、ステップ36において、サービス提供ノード30は、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。
【0099】
ステップ37において、サービス提供ノード30は、周囲に配置された他のサービス提供ノード30から認可証明書({Tc:s}Ks)を取得できたか否かを判定する。また、サービス提供ノード30は、認可証明書({Tc:s}Ks)を取得できた場合には、ステップ33の処理に移り、認可証明書({Tc:s}Ks)を取得できなかった場合には、ステップ35の処理に移る。
【0100】
(作用及び効果)
本発明の第2実施形態に係るアクセス制御システム100によれば、サービス提供ノード30は、サービス要求ノード10から受信した認可証明書({Tc:s}Ks)を保持するか否かを判定する。従って、認可証明書({Tc:s}Ks)の保持に必要なサービス提供ノード30の負荷を軽減することができる。
【0101】
また、サービス提供ノード30は、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。従って、サービス提供ノード30は、認可証明書({Tc:s}Ks)を保持しないと判定した場合であっても、周囲に配置された他のサービス提供ノード30から認可証明書({Tc:s}Ks)を取得することができる。
【0102】
[第3実施形態]
以下において、本発明の第3実施形態について、図面を参照しながら説明する。なお、以下においては、上述した第2実施形態と第3実施形態との差異について主として説明する。
【0103】
具体的には、上述した第2実施形態では、サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に保持するのみであるが、第3実施形態では、
サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に保持した後に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。
【0104】
また、サービス提供ノード30は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際に、受信したノード認証子(Ac)に対応する認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていない場合に、認可証明書保持通知を送信した他のサービス提供ノード30に対して認可証明書({Tc:s}Ks)を要求する。
【0105】
(サービス提供ノードの構成)
以下において、本発明の第3実施形態に係るサービス提供ノードの構成について、図面を参照しながら説明する。図11は、本発明の第3実施形態に係るサービス提供ノード30を示すブロック図である。
【0106】
図11に示すように、サービス提供ノード30は、図8に示した構成に加えて、認可証明書保持ノード管理部37を有する。
【0107】
認可証明書保持ノード管理部37は、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を他のサービス提供ノード30から受信した場合に、認可証明書保持通知を送信した他のサービス提供ノード30を識別する識別子などを管理する。
【0108】
また、上述した通信部31は、認可証明書保持ノード管理部37によって管理されている識別子に対応する他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。
【0109】
さらに、上述した通信部31は、認可証明書({Tc:s}Ks)を認可証明書保持部34に保持した後に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。例えば、通信部31は、認可証明書保持通知をブロードキャストで送信する。
【0110】
(サービス提供ノードの動作)
以下において、本発明の第3実施形態に係るサービス提供ノードの動作について、図面を参照しながら説明する。図12は、本発明の第3実施形態に係るサービス提供ノード30の動作を示すフロー図である。なお、図12は、暗号化済ノード認証子({Ac}Kc:s)及び認可証明書({Tc:s}Ks)を受信した際におけるサービス提供ノード30の動作を示している。
【0111】
また、図12では、上述した図9と同様の処理に対して同様の符号を付している。具体的には、図12では、認可証明書({Tc:s}Ks)を格納する処理(ステップ42)の後に、ステップ44の処理が加えられている。
【0112】
図12に示すように、ステップ44において、サービス提供ノード30は、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。
【0113】
以下において、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作について、図面を参照しながら説明する。図13は、サービスの提供要求としてノード認証子(Ac)をサービス要求ノード10から受信した際におけるサービス提供ノード30の動作を示すフロー図である。
【0114】
なお、図13では、上述した図10と同様の処理に対して同様の符号を付している。具体的には、図13では、認可証明書({Tc:s}Ks)が認可証明書保持部34に保持されていないと判定された場合に、ステップ38が加えられており、ステップ36に代えてステップ36aが加えられている。
【0115】
図13に示すように、ステップ38において、サービス提供ノード30は、認可証明書保持通知を他のサービス提供ノード30から受信しているか否かを判定する。また、サービス提供ノード30は、認可証明書保持通知を受信している場合には、ステップ36aの処理に移り、認可証明書保持通知を受信していない場合には、ステップ35の処理に移る。
【0116】
ステップ36aにおいて、サービス提供ノード30は、認可証明書保持ノード管理部37を参照することによって、認可証明書保持通知を送信した他のサービス提供ノード30を特定し、特定された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を要求する認証許可書探索通知を送信する。
【0117】
(作用及び効果)
本発明の第3実施形態に係るアクセス制御システム100によれば、サービス提供ノード30は、認可証明書({Tc:s}Ks)を認可証明書保持部34に格納した場合に、周囲に配置された他のサービス提供ノード30に対して、認可証明書({Tc:s}Ks)を保持したことを示す認可証明書保持通知を送信する。従って、認可証明書({Tc:s}Ks)を保持していないサービス提供ノード30は、認可証明書({Tc:s}Ks)を保持する他のサービス提供ノード30を容易に特定することができ、認可証明書({Tc:s}Ks)を効率的に取得することができる。
【0118】
[その他の実施形態]
上述した第1実施形態〜第3実施形態では、認証情報や認可情報などの情報は、各種暗号鍵で暗号化されているが、暗号化の方法は、上述した方法に限定されるものではない。また、認証情報や認可情報などの情報は、暗号化されずに送受信されてもよい。
【0119】
上述した第1実施形態〜第3実施形態では、サービス要求ノード10は、認可証明書({Tc:s}Ks)を複数のサービス提供ノード30宛てに送信する際にブロードキャストで送信するが、これに限定されるものではなく、マルチキャストで送信してもよい。
【図面の簡単な説明】
【0120】
【図1】本発明の第1実施形態に係るアクセス制御システムを示す図である。
【図2】本発明の第1実施形態に係るサービス要求ノード10を示すブロック図である。
【図3】本発明の第1実施形態に係る証明書発行サーバ20を示すブロック図である。
【図4】本発明の第1実施形態に係るサービス提供ノード30を示すブロック図である。
【図5】本発明の第1実施形態に係るアクセス制御システム100の動作を示すシーケンス図である。
【図6】本発明の第1実施形態に係るサービス要求ノード10の動作を示すフロー図である。
【図7】本発明の第1実施形態に係るサービス提供ノード30の動作を示すフロー図である。
【図8】本発明の第2実施形態に係るサービス提供ノード30を示すブロック図である。
【図9】本発明の第2実施形態に係るサービス提供ノード30の動作を示すフロー図である(その1)。
【図10】本発明の第2実施形態に係るサービス提供ノード30の動作を示すフロー図である(その2)。
【図11】本発明の第3実施形態に係るサービス提供ノード30を示すブロック図である。
【図12】本発明の第3実施形態に係るサービス提供ノード30の動作を示すフロー図である(その1)。
【図13】本発明の第3実施形態に係るサービス提供ノード30の動作を示すフロー図である(その2)。
【符号の説明】
【0121】
10・・・サービス要求ノード、11・・・通信部、12・・・鍵管理部、13・・・証明書検証部、14・・・認証子保持部、20・・・証明書発行サーバ、21・・・通信部、22・・・鍵管理部、23・・・認証証明書発行部、24・・・認可証明書発行部、30・・・サービス提供ノード、31・・・通信部、32・・・鍵管理部、33・・・認可証明書検証部、34・・・認可証明書保持部、35・・・サービス提供部、36・・・認可証明書保持判定部、37・・・認可証明書保持ノード管理部、100・・・アクセス制御システム
【特許請求の範囲】
【請求項1】
サービスの利用を要求するサービス要求ノードと、前記サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバと、前記サービスを提供する複数のサービス提供ノードとを含むアクセス制御システムであって、
前記サービス要求ノードは、
前記証明書発行サーバによって生成された前記認可情報と、前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子とを前記複数のサービス提供ノード宛てに送信する認可情報送信部と、
前記サービスの利用を要求する場合に、前記サービス提供ノードに前記ノード認証子を送信するノード認証子送信部とを備え、
前記サービス提供ノードは、
前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部を備えることを特徴とするアクセス制御システム。
【請求項2】
前記サービス提供ノードは、
前記サービス要求ノードの前記認可情報送信部から受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部と、
前記サービス要求ノードの前記認可情報送信部から受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部とをさらに備えることを特徴とする請求項1に記載のアクセス制御システム。
【請求項3】
前記サービス提供ノードは、前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部をさらに備えることを特徴とする請求項2に記載のアクセス制御システム。
【請求項4】
前記サービス提供ノードは、前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部をさらに備えることを特徴とする請求項2に記載のアクセス制御システム。
【請求項5】
サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバと、前記サービスを提供する複数のサービス提供ノードとを含むアクセス制御システムで用いられ、前記サービスの利用を要求するサービス要求ノードであって、
前記証明書発行サーバによって生成された前記認可情報と、前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子とを前記複数のサービス提供ノード宛てに送信する認可情報送信部と、
前記サービスの利用を要求する場合に、前記サービス提供ノードに前記ノード認証子を送信するノード認証子送信部とを備えることを特徴とするサービス要求ノード。
【請求項6】
サービスの利用を要求するサービス要求ノードと、前記サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバとを含むアクセス制御システムで用いられ、前記サービスを提供するサービス提供ノードであって、
前記証明書発行サーバによって生成された前記認可情報と、前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子とを前記サービス要求ノードから受信する認可情報受信部と、
前記サービス要求ノードから受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部と、
前記サービス要求ノードから受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部と、
前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部とを備えることを特徴とするサービス提供ノード。
【請求項7】
前記サービス要求ノードから前記サービスの利用を要求された際に前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部をさらに備えることを特徴とする請求項6に記載のサービス提供ノード。
【請求項8】
前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部をさらに備えることを特徴とする請求項6に記載のサービス提供ノード。
【請求項1】
サービスの利用を要求するサービス要求ノードと、前記サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバと、前記サービスを提供する複数のサービス提供ノードとを含むアクセス制御システムであって、
前記サービス要求ノードは、
前記証明書発行サーバによって生成された前記認可情報と、前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子とを前記複数のサービス提供ノード宛てに送信する認可情報送信部と、
前記サービスの利用を要求する場合に、前記サービス提供ノードに前記ノード認証子を送信するノード認証子送信部とを備え、
前記サービス提供ノードは、
前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部を備えることを特徴とするアクセス制御システム。
【請求項2】
前記サービス提供ノードは、
前記サービス要求ノードの前記認可情報送信部から受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部と、
前記サービス要求ノードの前記認可情報送信部から受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部とをさらに備えることを特徴とする請求項1に記載のアクセス制御システム。
【請求項3】
前記サービス提供ノードは、前記サービス要求ノードの前記ノード認証子送信部から受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部をさらに備えることを特徴とする請求項2に記載のアクセス制御システム。
【請求項4】
前記サービス提供ノードは、前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部をさらに備えることを特徴とする請求項2に記載のアクセス制御システム。
【請求項5】
サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバと、前記サービスを提供する複数のサービス提供ノードとを含むアクセス制御システムで用いられ、前記サービスの利用を要求するサービス要求ノードであって、
前記証明書発行サーバによって生成された前記認可情報と、前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子とを前記複数のサービス提供ノード宛てに送信する認可情報送信部と、
前記サービスの利用を要求する場合に、前記サービス提供ノードに前記ノード認証子を送信するノード認証子送信部とを備えることを特徴とするサービス要求ノード。
【請求項6】
サービスの利用を要求するサービス要求ノードと、前記サービスの利用が許可されたことを示す認可情報を生成する証明書発行サーバとを含むアクセス制御システムで用いられ、前記サービスを提供するサービス提供ノードであって、
前記証明書発行サーバによって生成された前記認可情報と、前記サービス要求ノードを識別するノード識別子を少なくとも含むノード認証子とを前記サービス要求ノードから受信する認可情報受信部と、
前記サービス要求ノードから受信した前記ノード認証子と前記認可情報とを対応付けて保持する認可情報保持部と、
前記サービス要求ノードから受信した前記認可情報を前記認可情報保持部に保持するか否かを判定する認可情報保持判定部と、
前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報に基づいて、前記サービス要求ノードに前記サービスを提供するか否かを判定するサービス提供判定部とを備えることを特徴とするサービス提供ノード。
【請求項7】
前記サービス要求ノードから前記サービスの利用を要求された際に前記サービス要求ノードから受信した前記ノード認証子に対応する前記認可情報が前記認可情報保持部に保持されていない場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を要求する認可情報要求部をさらに備えることを特徴とする請求項6に記載のサービス提供ノード。
【請求項8】
前記認可情報を前記認可情報保持部に保持すると前記認可情報保持判定部が判定した場合に、他のサービス提供ノードに対して、前記ノード認証子に対応する前記認可情報を保持していることを通知する認可情報保持通知部をさらに備えることを特徴とする請求項6に記載のサービス提供ノード。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2007−334674(P2007−334674A)
【公開日】平成19年12月27日(2007.12.27)
【国際特許分類】
【出願番号】特願2006−166448(P2006−166448)
【出願日】平成18年6月15日(2006.6.15)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
【公開日】平成19年12月27日(2007.12.27)
【国際特許分類】
【出願日】平成18年6月15日(2006.6.15)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
[ Back to top ]