コンテンツサーバ、コンテンツ受信装置、属性鍵発行サーバ、ユーザ鍵発行サーバ、アクセス制御システム、コンテンツ配信プログラムおよびコンテンツ受信プログラム
【課題】ユーザの属性に基づいたアクセス制御システムを用いて、放送や通信による安全なコンテンツ配信サービスを提供する。
【解決手段】コンテンツサーバ4は、コンテンツ鍵Mを暗号化し、この暗号化コンテンツ鍵E(M)と暗号化コンテンツE(C)とを結合し、そのヘッダにアクセスポリシーAを追加して配信する。配信されたヘッダ付き暗号化コンテンツHE(C)を受信するコンテンツ受信装置5のうち、アクセスポリシーAを満たすユーザが利用するもののみコンテンツ鍵Mを復号してコンテンツCを再生する。コンテンツサーバ4は、コンテンツ鍵の暗号化に際して、ステップS52にて、アクセスポリシーAのj番目のconjunctionについて、属性公開鍵PKiを基に暗号化した4つの要素として、式(18)に示すEj、式(19)に示すE´j、式(20)に示すE´´j、式(21)に示すE´´´jを生成する。
【解決手段】コンテンツサーバ4は、コンテンツ鍵Mを暗号化し、この暗号化コンテンツ鍵E(M)と暗号化コンテンツE(C)とを結合し、そのヘッダにアクセスポリシーAを追加して配信する。配信されたヘッダ付き暗号化コンテンツHE(C)を受信するコンテンツ受信装置5のうち、アクセスポリシーAを満たすユーザが利用するもののみコンテンツ鍵Mを復号してコンテンツCを再生する。コンテンツサーバ4は、コンテンツ鍵の暗号化に際して、ステップS52にて、アクセスポリシーAのj番目のconjunctionについて、属性公開鍵PKiを基に暗号化した4つの要素として、式(18)に示すEj、式(19)に示すE´j、式(20)に示すE´´j、式(21)に示すE´´´jを生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、放送波もしくはインターネット、専用IP回線等のネットワークを利用したコンテンツ配信における、ユーザの属性を用いたアクセス制御技術に関する。
【背景技術】
【0002】
デジタル放送の普及やネットワークの高速化および大容量化に伴い、放送コンテンツを放送波もしくはインターネット、専用IP回線等のネットワークを用いて配信するサービスが実現している。このようなサービスにおいて、暗号化されたコンテンツを特定のユーザのみが復号し視聴することができる、といったアクセス制御を行う場合、サービスプロバイダにおいて、復号を許可するユーザを予め指定してコンテンツの暗号化を行うのが一般的である。復号を許可するユーザの一例として、サービスプロバイダが、当該サービスプロバイダの会員資格を有するユーザのみコンテンツの復号を許可する場合、会員資格を有するユーザを直接指定してコンテンツを暗号化することになる。そのため、ユーザに会員資格の変更(入会、退会など)があった場合に、サービスプロバイダは、その都度ユーザを指定してコンテンツを暗号化しなければならない、という問題がある。
【0003】
このような問題点を解決する手段として、サイファーテキストポリシー−属性ベース暗号(Ciphertext-Policy Attribute-Based Encryption)が知られている(非特許文献1参照)。これは、公開鍵暗号方式であって、送信者は、メッセージの暗号化を行う際、受信者の満たすべき属性(居住地、性別、年齢、会員種別など)の条件を記したアクセスポリシーに基づいて暗号化を行う。そして、当該アクセスポリシーを満たす属性を有する受信者のみ、その属性に対応する秘密鍵である属性秘密鍵を用いて復号可能となる。
【0004】
属性ベース暗号を用いると、サービスプロバイダはアクセス制御を行う際、個々のユーザを直接指定する必要はないため、サービスプロバイダの負荷を軽減できる。例えば、前記した復号を許可するユーザの一例として、サービスプロバイダが、当該サービスプロバイダの会員資格を有するユーザのみコンテンツの復号を許可する場合、サービスプロバイダがコンテンツの暗号化の際に指定するのは「会員資格を有するユーザ」というアクセスポリシーのみであり、会員資格を有するユーザを直接指定して暗号化を行う必要がない。そのため、ユーザに会員資格の変更(入会、退会など)があった場合においても、コンテンツを再度暗号化する必要がない。
【0005】
属性ベース暗号では、ユーザは属性管理機関(Attribute Authority:AA)に対し、ある属性を有していることを証明し、その属性に対応する属性秘密鍵を発行してもらう。非特許文献1に開示された方式では、1つのAAが全ての属性情報を管理しなければならないため、管理コストが大きくなるという問題がある。
【0006】
このような問題点を解決する手段として、複数のAAが存在可能な属性ベース暗号(Multi-Authority Attribute-Based Encryption)が知られている(非特許文献2および非特許文献3参照)。これらの方式によれば、1つのAAが管理する属性情報を少なくすることができるため、AAの管理コストを削減できる。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】J. Bethencourt, A. Sahai and B. Waters, “Ciphertext-Policy Attribute-Based Encryption,” Proc. of the 2007 IEEE Symposium on Security and Privacy, pp. 321-334, 2007.
【非特許文献2】M. Chase, “Multi-Authority Attribute Based Encryption,” Proc. of TCC’07, Lecture Notes in Computer Science 4392, pp. 515-534, Springer-Verlag, 2007.
【非特許文献3】S. Muller, S. Katzenbeisserand C. Eckert, “Distributed Attribute-Based Encryption,” Proc. of ICISC’08, Lecture Notes in Computer Science 5461, pp. 20-36, Springer-Verlag, 2009.
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来、複数のAAが存在可能な属性ベース暗号においては、ユーザの結託攻撃という問題を防止するために、各AAを束ねる中央機関として、ユーザ管理を行う機関(Central Authority:CA)を別途設置している。ここで、結託攻撃とは、単独ではアクセスポリシーを満たさない複数のユーザが結託し、互いの属性秘密鍵を共有することにより、コンテンツの復号が可能になってしまうというものである。
【0009】
しかしながら、非特許文献2、3に記載の従来技術では、ユーザの結託攻撃を防止するために設置した中央機関であるCAが、マスター鍵を保有しているため、原理的に、システム上の全ての暗号文を復号できる。そのため、信頼性の低いCAが存在した場合に、システム内の暗号文の秘匿性を保てずに安全性が低くなるという問題があった。
【0010】
具体的には、非特許文献2,3に記載の方法では、CAのサーバは、システム公開鍵PKとマスター鍵MKとユーザ識別子uとを入力して、ユーザ鍵として、ユーザ公開鍵およびユーザ秘密鍵を生成する。
【0011】
例えば、非特許文献3に記載の方法では、CAのサーバは、システムの初期化において、Gを素数位数pの双線形群とし、ペアリングをe:G×G→GTとすると共に、生成元g∈G、およびP∈G、y∈Zpをランダムに選び、式(101)で示すシステム公開鍵PKおよびマスター鍵MK=gyを出力する。
【0012】
【数1】
【0013】
また、CAのサーバは、ユーザuに対してZp(0からp−1までの整数の集合)からランダムに選択した乱数mkuを用いて、式(102)に示すユーザ公開鍵PKuと、式(103)に示すユーザ秘密鍵SKuとを生成する。
【0014】
【数2】
【0015】
そして、AAのうち、a番目のAA(=AAa)のサーバは、システム公開鍵PKと識別子aとを入力として、有限のハッシュ関数族から、ハッシュ関数Hxa:{0,1}*→Zpを一様ランダムに選択し、AAaの秘密鍵をSKa=xaとする。AAaが属性iを管理している場合、AAaのサーバは、システム公開鍵PKと属性iと秘密鍵SKaとを入力として、式(104)に示す属性iの属性公開鍵PKiを出力する。また、ユーザuが属性iを有している場合、AAaのサーバは、システム公開鍵PKと属性iと秘密鍵SKaとユーザ識別子uとユーザ公開鍵PKuとを入力として、式(105)に示すuの属性秘密鍵SKiを出力する。
【0016】
【数3】
【0017】
また、サービスプロバイダのサーバは、システム公開鍵PKとメッセージMとアクセスポリシーAと複数の属性公開鍵PKiとを入力として、アクセスポリシーAの要素j(1≦j≦n)に対し、乱数Rj∈Zpをランダムに選び、暗号文CT=<CT1,…,CTn>を出力する。ここで、CTjは、式(106)で表される。
【0018】
【数4】
【0019】
そして、復号側のユーザ端末は、システム公開鍵PKと暗号文CTとアクセスポリシーAとユーザ秘密鍵SKuと複数の属性秘密鍵SKi,uとを入力として、式(107)により、メッセージMを復号することができる。
【0020】
【数5】
【0021】
ここで、下記の式(108)に示すajの表記を導入すると、前記した式(106)中のEj、E´´jは、それぞれ式(109)、式(110)で表されることとなる。
【0022】
【数6】
【0023】
前記式(109)は、ペアリングの双線形性を用いて式(111)のような式変形を行うことにより、マスター鍵MK=gyと関係付けられていることが分かる。なお、ここで、式(110)の関係を用いた。
そして、式(111)の最左辺と、最右辺との関係から、メッセージMは式(112)で表される。つまり、マスター鍵MK=gyを持っているCAは、このシステムの全ての暗号文を復号してメッセージMを解読できる。
【0024】
【数7】
【0025】
本発明は、以上のような問題点に鑑みてなされたものであり、ユーザの属性に基づいたアクセス制御システムを用いて、放送や通信による安全なコンテンツ配信サービスを提供する技術を提供することを課題とする。
【課題を解決するための手段】
【0026】
前記課題を解決するために、本発明の請求項1に記載のコンテンツサーバは、ユーザ鍵としてのユーザ公開鍵およびユーザ秘密鍵とシステム公開鍵とを発行するユーザ鍵発行サーバと、属性毎の属性公開鍵および当該属性に対応したユーザ毎の属性秘密鍵を発行する複数の属性鍵発行サーバと、コンテンツを配信するコンテンツサーバと、ユーザによって使用され前記コンテンツを受信するコンテンツ受信装置とを備え、前記コンテンツにアクセスできる条件としてユーザの属性を用いて前記コンテンツを提供する側にて予め作成されたアクセスポリシーに基づいて前記コンテンツへのアクセスを制御するアクセス制御システムにおける前記コンテンツサーバであって、コンテンツ暗号化手段と、ポリシー入力手段と、コンテンツ鍵暗号化手段と、コンテンツ結合手段と、コンテンツ配信手段と、を備えることとした。
【0027】
かかる構成によれば、コンテンツサーバは、コンテンツ暗号化手段によって、入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成する。そして、コンテンツサーバは、ポリシー入力手段によって、前記アクセスポリシーを入力する。そして、コンテンツサーバは、コンテンツ鍵暗号化手段によって、入力された前記コンテンツ鍵を暗号化して暗号化コンテンツ鍵を生成する。そして、コンテンツサーバは、コンテンツ結合手段によって、前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成する。そして、コンテンツサーバは、コンテンツ配信手段によって、前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信する。
【0028】
そして、かかる構成によれば、コンテンツサーバは、前記コンテンツ鍵暗号化手段によって、前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された下記の式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について下記の式(22)に示す部分暗号文CTjを生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、下記の式(23)に示す暗号文CTを生成する。したがって、コンテンツサーバは、システム内の全ての暗号文を復号するマスター鍵そのものが不要になるようなアルゴリズムの暗号方式でコンテンツを配信することができる。これにより、当該アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはない。よって、ユーザの属性に基づいたアクセス制御システムを用いて、放送や通信による安全なコンテンツ配信サービスを提供することができる。
【0029】
また、本発明の請求項2に記載のコンテンツ受信装置は、請求項1に記載のコンテンツサーバを備えるアクセス制御システムにおいて前記コンテンツサーバが配信する前記コンテンツを受信する前記コンテンツ受信装置であって、属性秘密鍵記憶手段と、ユーザ秘密鍵記憶手段と、コンテンツ受信手段と、コンテンツ分離手段と、判定手段と、コンテンツ鍵復号手段と、コンテンツ再生手段と、を備えることとした。
【0030】
かかる構成によれば、コンテンツ受信装置は、当該コンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を属性秘密鍵記憶手段に記憶すると共に、前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵をユーザ秘密鍵記憶手段に記憶しておく。そして、コンテンツ受信装置は、コンテンツ受信手段によって、前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信する。そして、コンテンツ受信装置は、コンテンツ分離手段によって、前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である前記式(23)に示す暗号文CTと、を分離する。そして、コンテンツ受信装置は、判定手段によって、前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する。そして、コンテンツ受信装置は、コンテンツ鍵復号手段によって、前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する下記の式(17)に示す属性秘密鍵SKi,U,と、下記の式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、下記の式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号する。そして、コンテンツ受信装置は、コンテンツ再生手段によって、前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生する。
【0031】
また、本発明の請求項3に記載の属性鍵発行サーバは、請求項1に記載のコンテンツサーバまたは請求項2に記載のコンテンツ受信装置を備えるアクセス制御システムにおいて、属性管理機関に設置され、前記コンテンツサーバまたは前記コンテンツ受信装置で用いる前記属性鍵を発行する前記属性鍵発行サーバであって、属性管理機関秘密鍵生成手段と、属性公開鍵生成手段と、属性秘密鍵生成手段と、を備えることとした。
【0032】
かかる構成によれば、属性鍵発行サーバは、例えば属性管理機関を新規に設置する際に、属性管理機関秘密鍵生成手段によって、当該属性管理機関を識別する属性管理機関識別子aおよび前記システム公開鍵を用いて当該属性管理機関に固有の属性管理機関秘密鍵SKaを生成する。そして、属性鍵発行サーバは、属性公開鍵生成手段によって、前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性を含むリクエストとを用いて、下記の式(14)に示す属性毎の前記属性公開鍵PKiを生成する。そして、属性鍵発行サーバは、属性秘密鍵生成手段によって、前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性、ユーザ識別子Uおよび前記ユーザ公開鍵を含むリクエストとを用いて、下記の式(17)に示す当該属性のユーザ毎の前記属性秘密鍵を生成する。したがって、当該アクセス制御システムでは、任意の数の属性管理機関が属性秘密鍵を発行することができ、ユーザの属性に基づいてコンテンツの暗号化および復号を行うことができる。また、このアクセス制御システムは、任意の数の属性管理機関が属性秘密鍵を発行できるため、各々の属性管理機関は管理コストを削減できる。
【0033】
また、本発明の請求項4に記載のユーザ鍵発行サーバは、請求項1に記載のコンテンツサーバ、請求項2に記載のコンテンツ受信装置、または請求項3に記載の属性鍵発行サーバを備えるアクセス制御システムにおいて、ユーザ管理機関に設置され、前記コンテンツサーバ、前記コンテンツ受信装置、または前記属性鍵発行サーバで用いる前記システム公開鍵を生成する前記ユーザ鍵発行サーバであって、システム公開鍵生成手段と、ユーザ鍵生成手段と、を備えることとした。
【0034】
かかる構成によれば、ユーザ鍵発行サーバは、システムの初期化を行う際に、システム公開鍵生成手段によって、素数位数pの双線形群Gと、双線形写像e:G×G→GTと、Gからランダムに選択された下記の式(5)で示す生成元とを用いて、下記の式(6)に示す前記システム公開鍵PKを生成する。そして、ユーザ鍵発行サーバは、ユーザ鍵生成手段によって、当該アクセス制御システムのユーザを識別するユーザ識別子Uと、前記システム公開鍵PKとを用いて、下記の式(9)に示すユーザ毎に異なる鍵として発行する前記ユーザ公開鍵PKUおよび前記ユーザ秘密鍵SKUを生成する。また、このアクセス制御システムでは、ユーザ管理機関は、ユーザを管理するだけなので、アクセス制御システムに、新たな属性管理機関を設置する際に、ユーザ管理機関は、鍵を再発行する必要はないので、新たな属性管理機関を設置する際に鍵を再発行するようなシステムに比べて利便性がよく、新たな属性管理機関を容易に設置することができる。
【0035】
また、本発明の請求項5に記載のアクセス制御システムは、請求項1に記載のコンテンツサーバと、請求項2に記載のコンテンツ受信装置と、請求項3に記載の属性鍵発行サーバと、請求項4に記載のユーザ鍵発行サーバと、を備えることとした。
【0036】
かかる構成によれば、アクセス制御システムにおいて、コンテンツサーバは、属性鍵発行サーバで生成された属性公開鍵と、ユーザ鍵発行サーバで生成されたシステム公開鍵とを用いて、コンテンツ鍵をアクセスポリシーの要素毎に暗号化し、ヘッダ付き暗号化コンテンツを生成して配信する。また、コンテンツ受信装置は、属性鍵発行サーバで生成された属性秘密鍵と、ユーザ鍵発行サーバで生成されたシステム公開鍵とを予め取得して記憶しておき、コンテンツサーバからヘッダ付き暗号化コンテンツを受信する。そして、コンテンツ受信装置は、アクセスポリシーに当該コンテンツ受信装置のユーザの満たすべき属性が含まれる場合にはコンテンツ鍵を復号してコンテンツを再生し、一方、アクセスポリシーに当該コンテンツ受信装置のユーザの満たすべき属性が含まれていない場合にはコンテンツ鍵を復号することはしない。また、コンテンツサーバは、システム内の全ての暗号文を復号するマスター鍵そのものが不要になるようなアルゴリズムの暗号方式でコンテンツを配信することができる。これにより、当該アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはない。したがって、コンテンツ配信側で予め作成されたアクセスポリシーによって、ユーザの属性に基づいた安全なコンテンツ配信サービスを提供することができる。
【0037】
また、本発明の請求項6に記載のコンテンツ配信プログラムは、請求項1に記載のコンテンツサーバであるコンピュータを、コンテンツ暗号化手段、ポリシー入力手段、コンテンツ鍵暗号化手段、コンテンツ結合手段、コンテンツ配信手段、として機能させることとした。
【0038】
かかる構成によれば、コンテンツ配信プログラムは、コンテンツ暗号化手段によって、入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成する。そして、コンテンツ配信プログラムは、ポリシー入力手段によって、前記アクセスポリシーを入力する。そして、コンテンツ配信プログラムは、コンテンツ鍵暗号化手段によって、前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された下記の式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について下記の式(22)に示す部分暗号文を生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、下記の式(23)に示す暗号文CTを生成する。そして、コンテンツ配信プログラムは、コンテンツ結合手段によって、前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成する。そして、コンテンツ配信プログラムは、コンテンツ配信手段によって、前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信する。
【0039】
また、本発明の請求項7に記載のコンテンツ受信プログラムは、請求項1に記載のコンテンツサーバが配信する前記コンテンツを受信するコンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を記憶した属性秘密鍵記憶手段と、前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵を記憶したユーザ秘密鍵記憶手段とを備えた請求項2に記載のコンテンツ受信装置であるコンピュータを、コンテンツ受信手段、コンテンツ分離手段、判定手段、コンテンツ鍵復号手段、コンテンツ再生手段、として機能させることとした。
【0040】
かかる構成によれば、コンテンツ受信プログラムは、コンテンツ受信手段によって、前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信する。そして、コンテンツ受信プログラムは、コンテンツ分離手段によって、前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である下記の式(23)に示す暗号文CTと、を分離する。そして、コンテンツ受信プログラムは、判定手段によって、前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する。そして、コンテンツ受信プログラムは、コンテンツ鍵復号手段によって、前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する下記の式(17)に示す属性秘密鍵SKi,U,と、下記の式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、下記の式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号する。そして、コンテンツ受信プログラムは、コンテンツ再生手段によって、前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生する。
【発明の効果】
【0041】
請求項1に記載の発明によれば、コンテンツサーバは、システム内の全ての暗号文を復号するマスター鍵そのものが不要になるようなアルゴリズムの暗号方式でコンテンツを配信することができる。そのため、当該アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはない。したがって、コンテンツサーバは、当該アクセス制御システム内にて放送や通信による安全なコンテンツ配信サービスを提供することができる。
また、請求項6に記載の発明によれば、コンテンツ配信プログラムをインストールしたコンピュータは請求項1と同様の効果を奏することができる。
【0042】
請求項2に記載の発明によれば、コンテンツ受信装置は、コンテンツ配信側で予め作成されたアクセスポリシーを満たす場合に、受信したコンテンツを再生することができる。
また、請求項7に記載の発明によれば、コンテンツ受信プログラムをインストールしたコンピュータは請求項2と同様の効果を奏することができる。
【0043】
請求項3に記載の発明によれば、属性鍵発行サーバは、当該アクセス制御システムにおいて任意の数だけ容易に設置することができる。
請求項4に記載の発明によれば、ユーザ鍵発行サーバは、ユーザ鍵を発行すると共にシステムの初期化を行うことができる。
請求項5に記載の発明によれば、アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはないので、ユーザの属性に基づいたアクセス制御システムを用いて、放送や通信による安全なコンテンツ配信サービスを提供することができる。
【図面の簡単な説明】
【0044】
【図1】本発明の実施形態に係るアクセス制御システムを模式的に示す構成図である。
【図2】本発明の実施形態に係るユーザ鍵発行サーバの構成を模式的に示すブロック図である。
【図3】本発明の実施形態に係る属性鍵発行サーバの構成を模式的に示すブロック図である。
【図4】本発明の実施形態に係るコンテンツサーバの構成を模式的に示すブロック図である。
【図5】本発明の実施形態に係るコンテンツ受信装置の構成を模式的に示すブロック図である。
【図6】本発明の実施形態に係るユーザ鍵発行サーバにおけるシステム初期化のアルゴリズムを示すフローチャートである。
【図7】本発明の実施形態に係るユーザ鍵発行サーバにおけるユーザ鍵発行のアルゴリズムを示すフローチャートである。
【図8】本発明の実施形態に係る属性鍵発行サーバにおける属性管理機関初期化のアルゴリズムを示すフローチャートである。
【図9】本発明の実施形態に係る属性鍵発行サーバにおける属性公開鍵発行のアルゴリズムを示すフローチャートである。
【図10】本発明の実施形態に係る属性鍵発行サーバにおける属性秘密鍵発行のアルゴリズムを示すフローチャートである。
【図11】本発明の実施形態に係るコンテンツサーバにおける暗号化のアルゴリズムを示すフローチャートである。
【図12】本発明の実施形態に係るコンテンツ受信装置における復号のアルゴリズムを示すフローチャートである。
【図13】本発明の実施形態に係るユーザ鍵発行サーバの動作を示すシーケンス図である。
【図14】本発明の実施形態に係る属性鍵発行サーバの動作を示すシーケンス図である。
【図15】本発明の実施形態に係るコンテンツサーバの動作を示すシーケンス図である。
【図16】本発明の実施形態に係るコンテンツ受信装置の動作を示すシーケンス図である。
【図17】本発明の実施形態に係るコンテンツ受信装置のユーザの属性の具体例を示す図である。
【発明を実施するための形態】
【0045】
以下、本発明を実施するための形態について図面を参照して詳細に説明する。
[アクセス制御システムの概要]
図1に示すように、アクセス制御システム1は、ユーザの属性を条件としたアクセスポリシーに基づいてコンテンツへのアクセスを制御するシステムであり、ユーザ鍵発行サーバ2と、複数の属性鍵発行サーバ3と、コンテンツサーバ4と、コンテンツ受信装置5とを備えている。ここで、アクセスポリシーは、ユーザがコンテンツにアクセスできる条件であり、コンテンツを提供する側にて予め定められる。
【0046】
ユーザ鍵発行サーバ2は、ユーザ鍵を発行するものであり、ユーザ管理機関(Central Authority:CA)に設置されている。
属性鍵発行サーバ3は、属性鍵を発行するものであり、属性管理機関(Attribute Authority:AA)に設置されている。図1では、複数の属性管理機関(AA1〜AAn)にそれぞれ1つずつの属性鍵発行サーバ3が設置されていることとした。
コンテンツサーバ4は、コンテンツを配信するものであり、サービスプロバイダ(例えば放送局)に設置されている。
コンテンツ受信装置5は、有線または無線のネットワークNまたは放送波Wによりコンテンツを受信するものであり、ユーザによって利用される。コンテンツ受信装置5は、例えば、パーソナルコンピュータや携帯端末、あるいはテレビジョン受信機等からなる。
【0047】
ユーザ鍵発行サーバ2、属性鍵発行サーバ3、コンテンツサーバ4、およびコンテンツ受信装置5は、インターネットあるいは専用IP回線等の外部のネットワークNに接続されている。なお、コンテンツサーバ4とコンテンツ受信装置5とは放送波Wによって接続されていてもよい。以下では、コンテンツ受信装置5は、ネットワークNからコンテンツを受信するものとして説明する。
【0048】
[アクセス制御システムの各装置の構成]
各装置は、CPU(Central Processing Unit)等の演算装置と、メモリやハードディスク等の記憶装置と、外部との間で各種情報の送受信を行うインタフェース装置とを備えている。
<ユーザ鍵発行サーバ>
図2に示すように、ユーザ鍵発行サーバ2は、システム初期化装置21と、ユーザ鍵発行装置22とを備えている。
【0049】
(システム初期化装置)
システム初期化装置21は、コンテンツサーバ4、コンテンツ受信装置5、または属性鍵発行サーバ3で用いるシステム公開鍵PKを生成するものであり、システム公開鍵生成部211と、システム公開鍵管理部212とを備えている。
【0050】
システム公開鍵生成部(システム公開鍵生成手段)211は、システムの初期化を行う際に、システム公開鍵PKを生成するものである。生成されたシステム公開鍵PKは、システム公開鍵管理部212に保存される。システムの初期化のアルゴリズム、すなわち、システム公開鍵PKの生成アルゴリズムの例については後記する。
【0051】
システム公開鍵管理部212は、システム公開鍵PKを記憶して管理するものであり、例えば、RAM(Random Access Memory)やROM(Read Only Memory)等のメモリやハードディスク等の記憶装置と、記憶装置に対してリード/ライト動作をする処理装置と、外部のネットワークNを介して情報を送受信する通信装置とを備えている。このシステム公開鍵管理部212にて管理されたシステム公開鍵PKは、外部のネットワークN経由で誰でもアクセス可能な情報である。
【0052】
(ユーザ鍵発行装置)
ユーザ鍵発行装置22は、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを発行するものであり、ユーザ鍵リクエスト受信部221と、ユーザ鍵生成部222と、ユーザ鍵管理部223とを備えている。なお、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを特に区別しない場合にはまとめてユーザ鍵と呼称する。
【0053】
ユーザ鍵リクエスト受信部221は、ユーザからのリクエスト(ユーザ識別子U)を受信するものである。ユーザからのリクエストは、コンテンツ受信装置5から、ユーザ鍵発行サーバ2にオンラインで送信されるリクエストでもよいし、ユーザから郵送等のオフラインの方法でCAに届けられた情報をCA内にてユーザ鍵リクエスト受信部221に直接入力したリクエストでもよいし、あるいは、CA内の他の端末に一旦入力したリクエストを間接的にユーザ鍵リクエスト受信部221で受信したものであってもよい。
【0054】
ユーザ鍵生成部(ユーザ鍵生成手段)222は、当該アクセス制御システム1のユーザを識別するユーザ識別子Uと、システム公開鍵PKとを用いて、ユーザ毎に異なる鍵として発行するユーザ公開鍵PKUおよびユーザ秘密鍵SKUを生成するものである。
ユーザ鍵生成部222は、ユーザ鍵リクエスト受信部221にて受信したリクエストに応じて当該ユーザのユーザ公開鍵PKUおよびユーザ秘密鍵SKUを生成し、ユーザ鍵管理部223に保存する。ユーザ鍵の生成アルゴリズムの例については、後記するユーザ鍵の発行のアルゴリズムの中で説明する。
【0055】
ユーザ鍵管理部223は、ユーザ鍵を記憶して管理するものであり、例えば、記憶装置と、処理装置と、送受信装置とを備えている。このユーザ鍵管理部223の処理装置は、リクエストのあったユーザに対し、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを送信する。ここで、ユーザ秘密鍵SKUは、秘匿化すべき情報なので、通信によって送出する場合には、暗号化する必要がある。この場合には、セキュアな通信手段として、例えば、TLS(Transport Layer Security)等を用いて受信装置(またはコンテンツ復号化装置)を認証した後に秘匿化されたユーザ秘密鍵SKUを送出する。
【0056】
<属性鍵発行サーバ>
図3に示すように、属性鍵発行サーバ3は、コンテンツサーバ4またはコンテンツ受信装置5で用いる属性鍵を発行するものであり、属性管理機関初期化装置31と、属性公開鍵発行装置32と、属性秘密鍵発行装置33と、システム公開鍵記憶部34と、ユーザ管理情報記憶部35とを備えている。属性鍵は、属性公開鍵と属性秘密鍵との総称である。
【0057】
(属性管理機関初期化装置)
属性管理機関初期化装置31は、例えば、属性管理機関(AAi)を新規に設置する際に、属性鍵発行サーバ3を初期化するために動作するものであり、属性管理機関秘密鍵生成部311と、属性管理機関秘密鍵記憶部312とを備えている。
【0058】
属性管理機関秘密鍵生成部(属性管理機関秘密鍵生成手段)311は、例えば、属性管理機関(AAi)を新規に設置する際に、当該属性管理機関を識別する属性管理機関識別子aおよびシステム公開鍵PKを用いて当該AAに固有の属性管理機関秘密鍵SKaを生成するものである。生成された属性管理機関秘密鍵SKaは、属性管理機関秘密鍵記憶部312に保存される。なお、属性管理機関秘密鍵SKaの生成アルゴリズムについては、後記する属性管理機関の初期化のアルゴリズムの例の中で説明する。
属性管理機関秘密鍵記憶部312は、属性管理機関秘密鍵SKaを記憶するものであって、例えば、一般的なメモリから構成される。
【0059】
(属性公開鍵発行装置)
属性公開鍵発行装置32は、ユーザから取得した属性鍵のリクエストに応じて属性i毎の属性公開鍵PKiを発行するものであり、属性公開鍵リクエスト受信部321と、属性公開鍵生成部322と、属性公開鍵管理部323とを備えている。
【0060】
属性公開鍵リクエスト受信部321は、ユーザからのリクエスト(属性iを含むリクエスト)を受信するものである。ユーザからのリクエストは、コンテンツ受信装置5から、属性鍵発行サーバ3にオンラインで送信されるリクエストでもよいし、ユーザから郵送等のオフラインの方法でAAに届けられた情報をAA内にて属性公開鍵リクエスト受信部321に直接入力したリクエストでもよいし、あるいは、AA内の他の端末に一旦入力したリクエストを間接的に属性公開鍵リクエスト受信部321で受信したものでもよい。
【0061】
本実施形態では、この属性公開鍵リクエスト受信部321は、受信したリクエストに含まれる属性iを当該AAにて管理しているか否かを判別し、管理している場合に、受信したリクエストを属性公開鍵生成部322に出力する。例えば、当該AAにてユーザの属性として、居住地「東京都」を管理する場合、属性公開鍵リクエスト受信部321は、受信したリクエストに含まれる居住地が「東京都」であるか否かを判別する。したがって、リクエストに含まれる居住地が例えば「東京都」である場合には、「東京都」に居住するユーザに共通した属性公開鍵を発行することとなる。なお、この例においてリクエストに含まれる居住地が例えば「千葉県」である場合には、例えば、鍵を発行できない旨を返信する。
【0062】
属性公開鍵生成部(属性公開鍵生成手段)322は、システム公開鍵PKと、属性管理機関秘密鍵SKaと、ユーザから取得した属性iを含むリクエストとを用いて、属性i毎の属性公開鍵PKiを生成するものである。
属性公開鍵生成部322は、属性公開鍵リクエスト受信部321にてユーザからのリクエスト(属性i)を受信した後、当該属性iに対応する属性公開鍵PKiを生成し、属性公開鍵管理部323に保存する。属性公開鍵PKiの生成アルゴリズムについては、後記する属性公開鍵PKiの発行アルゴリズムの例の中で説明する。
【0063】
属性公開鍵管理部323は、属性公開鍵PKiを記憶して管理するものであり、例えば、記憶装置と、処理装置と、送受信装置とを備えている。このユーザ鍵管理部223の処理装置は、リクエストのあったユーザに対し、属性公開鍵PKiを送信する。なお、属性公開鍵PKiは外部のネットワークN経由で誰でもアクセス可能な情報である。そのため、属性公開鍵PKiはユーザからのリクエストに応じて毎回生成する必要はない。すなわち、当該AAが管理する全ての属性iに対応する属性公開鍵PKiを予め生成し、属性公開鍵管理部323に保存するようにしてもよい。
【0064】
例えば、AAにてユーザの属性として、居住地が都道府県単位で管理されている場合、居住地の属性だけで47個の属性公開鍵を予め生成して保存しておいてもよい。また、例えば、AAにてユーザの年齢の属性が未成年か否かで管理されている場合、年齢の属性だけで2個の属性公開鍵を予め生成して保存しておいてもよい。ここで、例えば、第1のAA(AA1)にて居住地の属性を管理し、第2のAA(AA2)にて年齢の属性を管理している場合、サービスプロバイダは、AA1から居住地の属性に関する属性公開鍵を取得し、かつ、AA2から年齢の属性に関する属性公開鍵を取得すれば、例えば、東京都在住の成人向けのコンテンツを配信することができる。なお、1つのAAにて、居住地の属性と、年齢の属性といった、複数種類の属性を管理してもよいことはもちろんであり、その場合には、サービスプロバイダは、1つのAAから居住地の属性に関する属性公開鍵と、年齢の属性に関する属性公開鍵とを取得すれば、例えば、東京都在住の成人向けのコンテンツを配信することができる。
【0065】
(属性秘密鍵発行装置)
属性秘密鍵発行装置33は、ユーザから取得した属性鍵のリクエストに応じて属性iに対応したユーザ毎の属性秘密鍵SKi,Uを発行するものであり、属性秘密鍵リクエスト受信部331と、属性秘密鍵生成部332と、属性秘密鍵管理部333とを備えている。
【0066】
属性秘密鍵リクエスト受信部331は、ユーザからのリクエスト(ユーザ識別子U、ユーザ公開鍵PKU、属性i)を受信する。この属性秘密鍵リクエスト受信部331で受信するユーザからのリクエストは、ユーザ識別子Uおよびユーザ公開鍵PKUが含まれる点が異なるだけで、前記した属性公開鍵リクエスト受信部321と同様なものである。
本実施形態では、この属性秘密鍵リクエスト受信部331は、受信したリクエストに含まれる属性iを当該AAにて管理しているか否かを判別し、管理している場合に、さらに、ユーザ管理情報記憶部35に記憶されたユーザ管理情報を参照して、リクエストを送ったユーザが当該属性iを有しているか否かを判別し、ユーザがこの属性iを有している場合(正当なユーザの場合)、リクエストを属性秘密鍵生成部332に出力する。
【0067】
属性秘密鍵生成部(属性秘密鍵生成手段)332は、システム公開鍵PKと、属性管理機関秘密鍵SKaと、ユーザから取得した属性iを含むリクエストとを用いて、当該属性iのユーザ毎の属性秘密鍵SKi,Uを生成するものである。このリクエストには、属性iの他にユーザ識別子Uおよびユーザ公開鍵PKUを含む。
属性秘密鍵生成部332は、ユーザからのリクエストを受信した後、当該属性iおよび当該ユーザに対応して属性秘密鍵SKi,Uを生成し、属性秘密鍵管理部333に保存する。なお、属性秘密鍵SKi,Uの生成アルゴリズムについては、後記する属性秘密鍵SKi,Uの発行アルゴリズムの中で説明する。
【0068】
属性秘密鍵管理部333は、属性秘密鍵SKi,Uを記憶して管理するものであり、例えば、記憶装置と、処理装置と、送受信装置とを備えている。この属性秘密鍵管理部333の処理装置は、リクエストのあったユーザに対し、セキュアな通信手段を用いて属性秘密鍵SKi,Uを送信する。ここで、セキュアな通信手段については、前記したユーザ鍵管理部223と同様なので説明を省略する。なお、属性秘密鍵管理部333は、リクエストのあったユーザに対し、属性秘密鍵SKi,Uを属性公開鍵PKiと共に同時に送信するようにしてもよい。
【0069】
システム公開鍵記憶部34は、システム公開鍵PKを記憶するものであって、例えば、一般的なメモリから構成される。
ユーザ管理情報記憶部35は、ユーザ管理情報を記憶するものであって、例えば、一般的なメモリやハードディスクから構成される。
ユーザ管理情報は、予めAAにて管理しているユーザ情報であって、例えば、ユーザを識別するユーザ識別子Uと、住所、性別といったユーザの属性iとを含んでいる。
【0070】
<コンテンツサーバ>
図4に示すように、コンテンツサーバ4は、サービスプロバイダで予め作成されたアクセスポリシーにより特定の属性を有したユーザにだけコンテンツを配信するものであり、コンテンツ暗号化装置41と、コンテンツ配信装置42とを備えている。
(コンテンツ暗号化装置)
コンテンツ暗号化装置41は、アクセスポリシーにより特定の属性を有したユーザに配信するためのコンテンツを暗号化するものであって、コンテンツ入力部411と、コンテンツ鍵生成部412と、コンテンツ暗号化部413と、コンテンツ記憶部414とを備えている。
【0071】
コンテンツ入力部411は、コンテンツCを入力するものである。コンテンツCは、映像、音声等のマルチメディアのコンテンツである。コンテンツの符号化方式は特に限定されない。入力されたコンテンツCは、コンテンツ鍵生成部412を介して、コンテンツ暗号化部413に送られる。
コンテンツ鍵生成部412は、コンテンツCが入力されると、当該コンテンツCを暗号化するためのコンテンツ鍵Mを生成する。コンテンツ鍵生成部412は、ランダムに発生させた乱数を用いた演算により、コンテンツ鍵Mを生成する。
【0072】
コンテンツ暗号化部(コンテンツ暗号化手段)413は、入力されたコンテンツCをコンテンツ鍵Mによって暗号化することで、暗号化コンテンツE(C)を生成するものである。なお、コンテンツCの暗号化は、一般に、高速処理が可能な共通鍵暗号方式が用いられる。ここで、共通鍵暗号方式の暗号アルゴリズムとしては、例えばDES(Data Encryption Standard)やAES(Advanced Encryption Standard)などを用いてもよい。
コンテンツ記憶部414は、生成された暗号化コンテンツE(C)およびコンテンツ鍵Mを記憶するものであり、例えば、一般的なハードディスク等から構成される。
【0073】
(コンテンツ配信装置)
コンテンツ配信装置42は、アクセスポリシーによって特定の属性を有したユーザに対して暗号化コンテンツを配信するものであって、公開鍵記憶部421と、ポリシー入力部422と、コンテンツ鍵暗号化部423と、コンテンツ結合部424と、コンテンツ配信部425とを備えている。
【0074】
公開鍵記憶部421は、コンテンツサーバ4にて予め取得した属性公開鍵PKiやシステム公開鍵PKを記憶するものであって、例えば、一般的なメモリから構成される。
コンテンツサーバ4は、リクエストに応じて属性鍵発行サーバ3から取得した各属性に対して発行された複数の属性公開鍵PKiを、公開鍵記憶部421に記憶している。例えば、AAにてユーザの居住地の属性が都道府県単位で管理されていて、サービスプロバイダがユーザ属性として全国の居住地を必要とする場合、居住地の属性だけで47個の属性公開鍵を予め取得して記憶しておく。
【0075】
ポリシー入力部(ポリシー入力手段)422は、アクセスポリシーを入力するものである。このポリシー入力部422は、ユーザの属性の論理積でまとめられた要素間の論理和で表現した加法標準形で示される条件としてサービスプロバイダにて予め作成されたアクセスポリシーAを入力する。暗号化の際に用いるアクセスポリシーAの構造の一例を式(1)に示す。
【0076】
【数8】
【0077】
ここで、加法標準形(選言標準形ともいう)は、Disjunctive Normal Form(DNF)と呼ばれ、式(1)の右辺に示すように、複数の属性iをAND記号「∧」で結合した要素(以下、conjunctionという)を、conjunction毎にOR記号「∨」で結合した論理式で構成される。
【0078】
ここで、式(2)で示すS1は、1番目のconjunctionに出現する属性iの集合を示し、コンテンツ配信対象とするユーザの属性が、1番目のconjunctionを条件として満たすように決定される。属性の集合S1は、例えば、{東京都、男性、成人}のように表すことができる。
【0079】
また、式(3)で示すS2は、2番目のconjunctionに出現する属性iの集合を示し、コンテンツ配信対象とするユーザの属性が、2番目のconjunctionを条件として満たすように決定される。属性の集合S2は、例えば、{千葉県、成人}のように表すことができる。属性の集合S1={東京都、男性、成人}とのORをとると、東京都在住の成人男性と、千葉県在住の成人とを、それぞれ対象としたコンテンツを配信することができる。
【0080】
ここで、conjunctionの個数は、2個に限定されるものではなく、任意である。以下では、Sjと表記した場合、j番目のconjunctionに出現する属性iの集合を示すこととする。なお、アクセスポリシーAの構造の具体例については、後記するコンテンツ受信装置のユーザの属性の具体例にて説明する。
【0081】
コンテンツ鍵暗号化部(コンテンツ鍵暗号化手段)423は、入力されたコンテンツ鍵を暗号化して暗号化コンテンツ鍵を生成するものである。このコンテンツ鍵暗号化部423は、コンテンツ記憶部414に記憶されたコンテンツ鍵Mが入力されると共に、入力されたコンテンツ鍵Mを、ポリシー入力部422により入力されたアクセスポリシーAに含まれるconjunction(要素)毎に、当該conjunctionに含まれる各属性に対して発行された属性公開鍵PKiとシステム公開鍵PKとを用いて暗号化して暗号化コンテンツ鍵E(M)を生成する。コンテンツ鍵Mの暗号化アルゴリズムの例については後記する。
【0082】
コンテンツ結合部(コンテンツ結合手段)424は、コンテンツ鍵暗号化部423で生成した暗号化コンテンツ鍵E(M)とコンテンツ暗号化部413が生成した暗号化コンテンツE(C)とを結合してヘッダにアクセスポリシーAを追加することで、ヘッダ付き暗号化コンテンツHE(C)を生成するものである。
【0083】
このコンテンツ結合部424は、コンテンツ記憶部414に記憶された暗号化コンテンツE(C)に、暗号化コンテンツ鍵E(M)を結合してアクセスポリシーAを付加するので、ヘッダのみ平文である。そのため、この結合されたアクセスポリシーAを受信するコンテンツ受信装置5においては、当該コンテンツ受信装置5のユーザが、アクセスポリシーAを満たすか否かを迅速に判定することができる。なお、アクセスポリシーAの改ざんを検知するために、コンテンツサーバ4にて保護情報として公知の著作権保護方式の改ざん検知用情報をさらに付加し、コンテンツ受信装置5にて改ざん検知用情報を改ざんの判定に用いることとしてもよい。
【0084】
コンテンツ配信部(コンテンツ配信手段)425は、ヘッダ付き暗号化コンテンツHE(C)をコンテンツ受信装置5に配信するものである。なお、コンテンツCの配信形態については、ユーザのリクエストに応じてコンテンツCを配信するビデオオンデマンド(VoD)でもよいし、IP放送のようなマルチキャスト配信でもよいものとする。
【0085】
<コンテンツ受信装置>
図5に示すように、コンテンツ受信装置5は、コンテンツサーバが配信するヘッダ付き暗号化コンテンツHE(C)を受信するものであり、公開鍵記憶部51と、属性秘密鍵記憶部52と、ユーザ秘密鍵記憶部53と、コンテンツ受信部54と、コンテンツ分離部55と、復号判定部56と、コンテンツ鍵復号部57と、コンテンツ再生部58とを備えている。
【0086】
公開鍵記憶部51は、属性公開鍵PKiやシステム公開鍵PKを記憶するものであって、例えば、一般的なメモリから構成される。コンテンツ受信装置5は、リクエストに応じて属性鍵発行サーバ3から取得した各属性に対して発行された複数の属性公開鍵PKiを、公開鍵記憶部51に記憶している。例えば、コンテンツ受信装置5を利用するユーザが、コンテンツを受信するために、居住地と性別の2つの属性iを必要とする場合、2つの属性公開鍵を予め取得して記憶しておく。
【0087】
属性秘密鍵記憶部(属性秘密鍵記憶手段)52は、属性鍵発行サーバ3にてリクエストにより当該コンテンツ受信装置5のユーザの満たすべき属性iに対応して発行された属性秘密鍵SKi,Uを記憶したものであって、例えば、一般的なメモリから構成される。属性秘密鍵SKi,Uは、属性公開鍵PKiと同じ数だけ取得される。属性秘密鍵記憶部52に記憶された属性秘密鍵SKi,Uは、復号判定部56と、コンテンツ鍵復号部57とに出力される。
【0088】
この属性秘密鍵記憶部52は、内部に記録した情報が外部より読取不可能に構成された耐タンパー性を備えたモジュールであることが好ましい。例えば、コンテンツ受信装置5がテレビジョン受信機で構成される場合、属性秘密鍵記憶部52は、ICカード等によって構成されたセキュリティモジュールであってもよい。なお、属性秘密鍵記憶部52は、属性秘密鍵SKi,Uと共に属性公開鍵PKiを記憶するようにしてもよい。
【0089】
ユーザ秘密鍵記憶部(ユーザ秘密鍵記憶手段)53は、ユーザ鍵発行サーバ2により発行されたユーザ秘密鍵SKUを記憶したものであって、例えば、一般的なメモリから構成される。ユーザ秘密鍵記憶部53は、ユーザ秘密鍵SKUと共にユーザ公開鍵PKUを記憶するようにしてもよい。このユーザ秘密鍵記憶部53は、内部に記録した情報が外部より読取不可能に構成されたセキュリティモジュールであってもよい。
【0090】
コンテンツ受信部(コンテンツ受信手段)54は、コンテンツサーバ4からヘッダ付き暗号化コンテンツHE(C)を受信するものである。受信したヘッダ付き暗号化コンテンツHE(C)は、コンテンツ分離部55に出力される。
【0091】
コンテンツ分離部(コンテンツ分離手段)55は、コンテンツ受信部54が受信したヘッダ付き暗号化コンテンツHE(C)から、アクセスポリシーAと、暗号化コンテンツ鍵E(M)と、暗号化コンテンツE(C)とを分離するものである。ここで分離されたアクセスポリシーAは、復号判定部56に出力される。また、分離された暗号化コンテンツ鍵E(M)は、コンテンツ鍵復号部57に出力される。さらに、暗号化コンテンツE(C)は、コンテンツ再生部58に出力される。
【0092】
復号判定部(判定手段)56は、属性秘密鍵記憶部52に記憶された属性秘密鍵SKi,Uに基づいて、分離されたアクセスポリシーAに、当該コンテンツ受信装置5のユーザの満たすべき属性iの論理積でまとめられたconjunction(要素)が含まれるか否かを判定するものである。これにより、復号判定部56は、属性秘密鍵記憶部52に保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たしているかどうかをチェックする。復号判定部56は、保存されている属性秘密鍵SKi,UがアクセスポリシーAを満たしていると判定した場合、アクセスポリシーAのうちの満たしているj番目のconjunctionに含まれる各属性の情報をコンテンツ鍵復号部57に出力する。なお、アクセスポリシーAの構造におけるユーザの属性の具体例については後記する。
【0093】
コンテンツ鍵復号部(コンテンツ鍵復号手段)57は、アクセスポリシーAに当該コンテンツ受信装置5のユーザの満たすべき属性iが含まれる場合、ユーザ秘密鍵SKUと属性秘密鍵SKi,Uとシステム公開鍵PKとを用いて、暗号化コンテンツ鍵E(M)を復号するものである。このコンテンツ鍵復号部57は、属性秘密鍵記憶部52に保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たしている場合、当該属性秘密鍵SKi,Uおよびユーザ秘密鍵記憶部53に保存されているユーザ秘密鍵SKUを用いて、暗号化コンテンツ鍵E(M)を復号する。復号されたコンテンツ鍵Mは、コンテンツ再生部58に出力される。
【0094】
コンテンツ再生部(コンテンツ再生手段)58は、コンテンツ分離部55で分離した暗号化コンテンツE(C)を、コンテンツ鍵復号部57で復号したコンテンツ鍵Mによって復号することで、コンテンツを再生するものである。再生されたコンテンツCは図示しない出力部に出力される。
【0095】
[アクセス制御システムにおける処理のアルゴリズム]
<システムの初期化のアルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてユーザ鍵発行サーバ2が実行するシステム初期化のアルゴリズムについて図6を参照(適宜図2参照)して説明する。すなわち、システムの初期化を行う際に、システム公開鍵PKを生成するアルゴリズムの例について説明する。
【0096】
まず、ユーザ鍵発行サーバ2内のシステム公開鍵生成部211において、鍵長などのセキュリティパラメータを基に、素数位数pの双線形群Gを選択する(ステップS1)。ここで、「Gが双線形群である」とは、G上の群演算が効率的に求められ、群GTおよび効率的に計算可能な式(4)で示す双線形写像(ペアリング)eが存在するような群のことをいう。そして、システム公開鍵生成部211は、式(4)で示す双線形写像(ペアリング)eを選択する(ステップS2)。
【0097】
【数9】
【0098】
そして、システム公開鍵生成部211は、式(5)で示す生成元を選択する(ステップS3)。そして、システム公開鍵生成部211は、式(6)で示すシステム公開鍵PKを生成し(ステップS4)、システム公開鍵管理部212に保存する(ステップS5)。
【0099】
【数10】
【0100】
<ユーザ鍵の発行のアルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてユーザ鍵発行サーバ2が実行するユーザ鍵の発行のアルゴリズムについて図7を参照(適宜図2参照)して説明する。
ユーザ鍵発行サーバ2内のユーザ鍵生成部222において、ユーザ識別子Uを基に、乱数uをZp(0からp−1までの整数の集合)からランダムに選択する(ステップS11)。そして、ユーザ鍵生成部222は、式(7)に示すように、選択した乱数uを用いてユーザ識別子Uに対応するユーザ公開鍵PKUを生成する(ステップS12)。式(7)において、g1,hは、式(6)で示すシステム公開鍵PK中の生成元である。
【0101】
【数11】
【0102】
また、ユーザ鍵生成部222は、式(8)に示すように、選択した乱数uを用いてユーザ識別子Uに対応するユーザ秘密鍵SKUを生成する(ステップS13)。式(8)において、gは、式(6)で示すシステム公開鍵PK中の生成元である。
【0103】
【数12】
【0104】
そして、ユーザ鍵生成部222は、式(7)のユーザ公開鍵PKUと、式(8)のユーザ秘密鍵SKUとを要素とする式(9)に示すユーザ鍵<PKU,SKU>を当該ユーザに発行する(ステップS14)。
【0105】
【数13】
【0106】
<属性管理機関の初期化のアルゴリズム>
本発明の実施形態に係るアクセス制御システム1において属性鍵発行サーバ3が実行するAAの初期化のアルゴリズムについて図8を参照(適宜図3参照)して説明する。
属性鍵発行サーバ3の属性管理機関秘密鍵生成部311において、有限のハッシュ関数族から、式(10)に示すようにハッシュ関数Hxaを一様ランダムに選択する(ステップS21)。式(10)において、{0,1}*は任意の長さのビット列の集合を示している。また、Zpは、0からp−1までの整数の集合を示す。pは素数位数を示す。
【0107】
【数14】
【0108】
そして、属性管理機関秘密鍵生成部311は、式(11)に示すように、属性管理機関識別子がaである属性管理機関秘密鍵SKaを属性管理機関秘密鍵記憶部312に保存する(ステップS22)。式(11)において、xaは、式(10)に示すハッシュ関数のインデックスであり、xのサフィックスのaは、属性管理機関識別子である。
【0109】
【数15】
【0110】
<属性公開鍵PKiの発行アルゴリズム>
本発明の実施形態に係るアクセス制御システム1において属性鍵発行サーバ3が実行する属性公開鍵PKiの発行のアルゴリズムについて図9を参照(適宜図3参照)して説明する。なお、発行される属性公開鍵PKiは、2要素からなる。
【0111】
属性鍵発行サーバ3において、属性公開鍵リクエスト受信部321に、ユーザからのリクエスト(属性i)を入力する(ステップS31)。そして、属性公開鍵リクエスト受信部321において、ユーザからのリクエストに含まれる属性iを管理しているか否かを判別する(ステップS32)。リクエストに含まれる属性iを管理している場合(ステップS32:Yes)、属性公開鍵生成部322は、対応する属性公開鍵について式(12)に示す第1要素PK´i(PKプライムi)を生成する(ステップS33)と共に、式(13)に示す第2要素PK´´i(PKダブルプライムi)を生成する(ステップS34)。式(12)および式(13)において、g,hは、式(6)で示すシステム公開鍵PK中の生成元である。また、HSKa(i)は、gまたはhのべき乗を示す指数であって、式(10)のハッシュ関数における属性iのハッシュ値を示す。
【0112】
【数16】
【0113】
そして、属性公開鍵生成部322は、式(14)に示すように、第1要素と第2要素とを含む属性公開鍵PKiを生成する(ステップS35)。
【0114】
【数17】
【0115】
一方、前記ステップS32において、リクエストに含まれる属性iを管理していない場合(ステップS32:No)、属性公開鍵リクエスト受信部321は、「NULL」を出力する(ステップS36)。
【0116】
<属性秘密鍵SKi,Uの発行アルゴリズム>
本発明の実施形態に係るアクセス制御システム1において属性鍵発行サーバ3が実行する属性秘密鍵SKi,Uの発行のアルゴリズムについて図10を参照(適宜図3参照)して説明する。なお、発行される属性秘密鍵SKi,Uは、2要素からなる。
【0117】
まず、属性鍵発行サーバ3は、属性秘密鍵リクエスト受信部331に、ユーザからのリクエスト(属性i)を入力する(ステップS41)。そして、属性秘密鍵リクエスト受信部331は、ユーザからのリクエストに含まれる属性iを管理しているか否かを判別する(ステップS42)。属性iを管理していない場合(ステップS42:No)、属性秘密鍵リクエスト受信部331は、「NULL」を出力し(ステップS49)、処理を終了する。一方、属性iを管理している場合(ステップS42:Yes)、属性秘密鍵リクエスト受信部331において、ユーザからのリクエストに含まれる属性i、ユーザ識別子U、ユーザ公開鍵PKUを入力として(ステップS43)、ユーザ識別子Uで示されるユーザ(以下、単にユーザUという)が当該属性iを有しているか否かを判別する(ステップS44)。ここで、属性秘密鍵リクエスト受信部331は、ユーザ管理情報記憶部35に記憶されたユーザ管理情報を参照して、リクエストを送ったユーザが属性iを有しているか否かを判別する。
【0118】
前記ステップS44において、ユーザUが当該属性iを有している場合(ステップS44:Yes)、属性秘密鍵生成部332は、まず、乱数Ri,UをZp(0からp−1までの整数の集合)からランダムに生成する(ステップS45)。
そして、属性秘密鍵生成部332は、生成した乱数Ri,Uを用いて、対応する属性秘密鍵について式(15)に示す第1要素SK´iを生成する(ステップS46)と共に、式(16)に示す第2要素SK´´iを生成する(ステップS47)。式(15)および式(16)において、hバー,gは、式(6)で示すシステム公開鍵PK中の生成元である。また、HSKa(i)は、PKUのべき乗を示す指数である。
【0119】
【数18】
【0120】
そして、属性秘密鍵生成部332は、式(17)に示すように、第1要素と第2要素とを含む属性秘密鍵SKi,Uを生成する(ステップS48)。
【0121】
【数19】
【0122】
一方、前記ステップS44において、ユーザUが当該属性iを有していない場合(ステップS44:No)、属性秘密鍵リクエスト受信部331は、「NULL」を出力する(ステップS36)。つまり、属性鍵発行サーバ3がユーザからのリクエストに含まれる属性iを管理している場合であって、ユーザUが当該属性iを有していることが確認できた場合のみ、属性秘密鍵生成部332は、属性秘密鍵SKi,Uを生成してユーザに発行し、それ以外の場合は「NULL」を出力する。
【0123】
<コンテンツ鍵の暗号化アルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてコンテンツサーバ4が実行するコンテンツ鍵Mの暗号化のアルゴリズムについて図11を参照(適宜図4参照)して説明する。
【0124】
コンテンツサーバ4のコンテンツ鍵暗号化部423は、コンテンツ鍵Mを暗号化する際に、アクセスポリシーAのconjunction毎に暗号化を行う。まず、コンテンツ鍵暗号化部423は、アクセスポリシーAを基に、アクセスポリシーAのj番目のconjunctionに対応する乱数rjをZp(0からp−1までの整数の集合)からランダムに生成する(ステップS51)。
【0125】
そして、コンテンツ鍵暗号化部423は、アクセスポリシーAのj番目のconjunctionについて、属性公開鍵PKiを基に暗号化した4つの要素として、式(18)に示すEj、式(19)に示すE´j、式(20)に示すE´´j、式(21)に示すE´´´j(Eトリプルプライムj)を生成する(ステップS52)。式(18)〜式(21)においてe、g,g1,hバーは、式(6)で示すシステム公開鍵PKに含まれている。なお、属性公開鍵PKiは、前記した式(14)にて転開される。
【0126】
【数20】
【0127】
そして、コンテンツ鍵暗号化部423は、式(22)に示すように、アクセスポリシーAのj番目のconjunctionについて、式(18)〜式(21)に示す4つの要素を集約した部分暗号文を生成する(ステップS53)。
【0128】
【数21】
【0129】
そして、コンテンツ鍵暗号化部423は、前記したステップS51〜S53の手順を、アクセスポリシーAの全てのconjunctionに対して行い、各部分暗号文CT1〜CTn(nはアクセスポリシーAのconjunctionの総数)を生成し、式(23)に示すように、これらを要素として、暗号化する対象のメッセージであるコンテンツ鍵Mの暗号文CTを生成する(ステップS54)。
【0130】
【数22】
【0131】
なお、式(23)に示すコンテンツ鍵Mの暗号文CT、すなわち、暗号化コンテンツ鍵E(M)は、その後、暗号化コンテンツE(C)と結合されてヘッダにアクセスポリシーAを追加されたヘッダ付き暗号化コンテンツHE(C)としてユーザに配信される。
【0132】
<暗号化コンテンツ鍵の復号アルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてコンテンツ受信装置5が実行する暗号化コンテンツ鍵の復号のアルゴリズムについて図12を参照(適宜図5参照)して説明する。まず、ユーザのコンテンツ受信装置5は、復号判定部56において、受信したヘッダ付き暗号化コンテンツHE(C)から分離されたアクセスポリシーAを入力として(ステップS61)、当該ユーザUの属性iが、受信した暗号文に含まれるアクセスポリシーAを満たしているかどうかチェックする(ステップS62)。ユーザUの属性iがアクセスポリシーAを満たす場合(ステップS62:Yes)、例えば当該ユーザUの属性iがアクセスポリシーAのj番目のconjunctionを満たしているものとすると、復号判定部56は、アクセスポリシーAの総数n個のconjunctionの中から、アクセスポリシーAを満たすj番目のconjunctionを選ぶ(ステップS63)。
【0133】
そして、コンテンツ受信装置5は、コンテンツ鍵復号部57において、選んだj番目のconjunctionについて、当該conjunctionに含まれる属性iに対応する属性秘密鍵SKi,Uとユーザ秘密鍵SKUとを用いて式(24)に示す復号の演算を実行する(ステップS64)。
【0134】
【数23】
【0135】
式(24)においてeは、式(6)で示すシステム公開鍵PKに含まれている。なお、SKi,Uプライム、および、SKi,Uダブルプライムは、式(17)にて転開される。
【0136】
コンテンツ鍵復号部57は、式(24)に示す復号の演算結果として、コンテンツ鍵Mの暗号文CTに含まれていたメッセージとして、コンテンツ鍵Mを出力する(ステップS65)。一方、前記ステップS62において、ユーザUの属性iがアクセスポリシーAを満たさない場合(ステップS62:No)、復号処理を行わずに、「NULL」を出力する(ステップS66)。
【0137】
[アクセス制御システムの動作]
<ユーザ鍵発行サーバの動作>
次に、ユーザ鍵発行サーバ2の動作について図13を参照(適宜図2参照)して説明する。ユーザ鍵発行サーバ2は、初期化の際に、システム初期化装置21において、システム公開鍵生成部211によって、システム公開鍵PKを生成する(ステップS201)。生成されたシステム公開鍵PKは、システム公開鍵管理部212に記憶される(ステップS202)。システム公開鍵管理部212は、システム公開鍵PKを公開する(ステップS203)。すなわち、誰でも外部のネットワークN経由でシステム公開鍵PKにアクセス可能となる。これにより、ユーザ鍵発行サーバ2の初期化は終了する。
【0138】
そして、ユーザ鍵発行サーバ2は、ユーザ鍵発行装置22のユーザ鍵リクエスト受信部221によって、ユーザからのリクエストを受信すると、ユーザ鍵生成部222によって、システム公開鍵PKとリクエストに含まれるユーザ識別子Uとを用いて、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを生成する(ステップS211)。生成されたユーザ公開鍵PKUおよびユーザ秘密鍵SKUは、ユーザ鍵管理部223に記憶される(ステップS212)。そして、ユーザ鍵管理部223は、リクエストのあったユーザに対し、ユーザ公開鍵PKUを発行すると共に、セキュアな通信手段を用いてユーザ秘密鍵SKUを発行する(ステップS213)。
【0139】
<属性鍵発行サーバの動作>
次に、属性鍵発行サーバ3の動作について図14を参照(適宜図3参照)して説明する。属性鍵発行サーバ3は、属性管理機関(AAi)を新規に設置する初期化の際に、ユーザ鍵発行サーバ2が公開したシステム公開鍵PKにアクセスして、システム公開鍵PKを取得し、システム公開鍵記憶部34に記憶する(ステップS301)。
属性鍵発行サーバ3は、属性管理機関初期化装置31において、属性管理機関秘密鍵生成部311によって、属性管理機関秘密鍵SKaを生成し、属性管理機関秘密鍵記憶部312に記憶する(ステップS302)。これにより、属性鍵発行サーバ3の初期化は終了する。
【0140】
そして、属性鍵発行サーバ3は、属性公開鍵発行装置32の属性公開鍵リクエスト受信部321によって、ユーザからのリクエストを受信すると(ステップS311)、属性公開鍵生成部322によって、システム公開鍵PKと、属性管理機関秘密鍵SKaと、リクエストに含まれる属性iとを用いて、属性公開鍵PKiを生成する(ステップS312)。なお、ここでのユーザは、コンテンツ受信装置5を利用するユーザだけではなく、コンテンツサーバ4を利用するサービスプロバイダも意味する。生成された属性公開鍵PKiは、属性公開鍵管理部323に記憶される(ステップS313)。そして、属性公開鍵管理部323は、属性公開鍵PKiを公開する(ステップS314)。すなわち、誰でも外部のネットワークN経由で属性公開鍵PKiにアクセス可能となる。なお、属性公開鍵管理部323は、リクエストのあったユーザに対し、属性公開鍵PKiを発行する。
【0141】
そして、属性鍵発行サーバ3は、属性秘密鍵発行装置33の属性公開鍵リクエスト受信部321によって、ユーザからのリクエストを受信すると、属性秘密鍵生成部332によって、システム公開鍵PKと、属性管理機関秘密鍵SKaと、リクエストにそれぞれ含まれる属性i,ユーザ識別子U,ユーザ公開鍵PKUとを用いて、属性秘密鍵SKi,Uを生成する(ステップS315)。なお、ここでのユーザは、コンテンツ受信装置5を利用するユーザを意味する。生成された属性秘密鍵SKi,Uは、属性秘密鍵管理部333に記憶される(ステップS316)。そして、属性秘密鍵管理部333は、リクエストのあったユーザに対し、セキュアな通信手段を用いて属性秘密鍵SKi,Uを発行する(ステップS317)。なお、属性秘密鍵管理部333は、属性秘密鍵SKi,Uのリクエストのあったユーザに対し、セキュアな通信手段を用いて属性秘密鍵SKi,Uおよび属性公開鍵PKiを同時に発行してもよい。
【0142】
<コンテンツサーバの動作>
次に、コンテンツサーバ4の動作について図15を参照(適宜図4参照)して説明する。コンテンツサーバ4は、初期化の際に、ユーザ鍵発行サーバ2が公開したシステム公開鍵PKにアクセスして、システム公開鍵PKを取得し、公開鍵記憶部421に記憶する(ステップS401)。また、コンテンツサーバ4は、属性鍵発行サーバ3にリクエストを送って属性公開鍵PKiを取得し、公開鍵記憶部421に記憶する(ステップS402)。これにより、コンテンツサーバ4の初期化は終了する。ただし、本実施形態は、この方法に限定されるものではない。すなわち、コンテンツサーバ4が、初期化の際に予め全ての属性iに対応するPKiを入手しなくても、暗号化する毎に入手すればよい。それは、サービスプロバイダで暗号化コンテンツを暗号化する際には、まず、ポリシーを決定し、それから該当する属性公開鍵PKiを入手するのが通常だからである。なお、ここでは、一例として、初期化の際に、コンテンツサーバ4が、予め全ての属性iに対応するPKiを入手するものとして説明する。
【0143】
コンテンツサーバ4は、コンテンツ暗号化装置41において、次のステップS411〜S414の処理を実行する。まず、コンテンツ暗号化装置41は、コンテンツ入力部411によって、コンテンツCを入力する(ステップS411)。そして、コンテンツ暗号化装置41は、コンテンツ鍵生成部412によって、コンテンツ鍵Mを生成する(ステップS412)。そして、コンテンツ暗号化装置41は、コンテンツ暗号化部413によって、コンテンツCをコンテンツ鍵Mによって暗号化することで、暗号化コンテンツE(C)を生成する(ステップS413)。生成された暗号化コンテンツE(C)およびコンテンツ鍵Mは、コンテンツ記憶部414に蓄積される(ステップS414)。
【0144】
コンテンツサーバ4は、コンテンツ配信装置42において、次のステップS421〜S424の処理を実行する。まず、コンテンツ配信装置42は、ポリシー入力部422によって、復号を許可するユーザの属性iに関するアクセスポリシーAを入力する(ステップS421)。そして、コンテンツ配信装置42は、コンテンツ鍵暗号化部423によって、アクセスポリシーAに対応する属性公開鍵PKi、およびアクセスポリシーAを用いて、コンテンツ記憶部414に保存されているコンテンツ鍵Mを暗号化する(ステップS422)。そして、コンテンツ配信装置42は、コンテンツ結合部424は、暗号化コンテンツ鍵E(M)と、コンテンツ記憶部414に保存されている暗号化コンテンツE(C)とを結合し、ヘッダにアクセスポリシーAを追加することで、ヘッダ付き暗号化コンテンツHE(C)を生成する。(ステップS423)。そして、コンテンツ配信装置42は、コンテンツ配信部425bによって、ユーザのコンテンツ受信装置5に対しヘッダ付き暗号化コンテンツHE(C)を配信する(ステップS424)。
【0145】
<コンテンツ受信装置の動作>
次に、コンテンツ受信装置5の動作について図16を参照(適宜図5参照)して説明する。コンテンツ受信装置5は、初期化の際に、ユーザ鍵発行サーバ2が公開したシステム公開鍵PKにアクセスして、システム公開鍵PKを取得し、公開鍵記憶部51に記憶する(ステップS501)。また、コンテンツ受信装置5は、リクエストによりユーザ鍵発行サーバ2が発行したユーザ鍵(ユーザ公開鍵PKUおよびユーザ秘密鍵SKU)を取得し、ユーザ鍵をユーザ秘密鍵記憶部53に記憶する(ステップS502)。また、コンテンツ受信装置5は、属性鍵を要求するリクエストを属性鍵発行サーバ3に送る(ステップS503)。コンテンツ受信装置5は、リクエストにより公開された属性公開鍵PKiを取得し、公開鍵記憶部51に記憶する(ステップS504)。また、コンテンツ受信装置5は、リクエストにより発行された属性秘密鍵SKi,Uを取得し、属性秘密鍵記憶部52に記憶する(ステップS505)。なお、属性公開鍵PKiを属性秘密鍵SKi,Uと共に取得し、属性秘密鍵記憶部52に記憶するようにしてもよい。これにより、コンテンツ受信装置5の初期化は終了する。
【0146】
コンテンツ受信装置5は、コンテンツ受信部54において、コンテンツサーバ4から配信されたヘッダ付き暗号化コンテンツHE(C)を受信すると、コンテンツ分離部55において、ヘッダ部分に記載のアクセスポリシーAおよび暗号化コンテンツ鍵E(M)を抽出する(ステップS511)。
【0147】
そして、コンテンツ受信装置5は、復号判定部56によって、属性秘密鍵記憶部52に保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たしているか否かを判定する(ステップS512)。すなわち、アクセスポリシーAに、当該コンテンツ受信装置5のユーザの満たすべき属性iの論理積の要素が含まれるか否かを判定する。
【0148】
保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たす場合(ステップS512:Yes)、コンテンツ受信装置5は、コンテンツ鍵復号部57によって、当該属性秘密鍵SKi,Uおよびユーザ秘密鍵記憶部53に保存されているユーザ秘密鍵SKUを用いて、ヘッダ付き暗号化コンテンツHE(C)から分離した暗号化コンテンツ鍵E(M)を復号し、コンテンツ鍵Mを得る(ステップS513)。
コンテンツ受信装置5は、復号したコンテンツ鍵Mを用いて、ヘッダ付き暗号化コンテンツHE(C)から分離した暗号化コンテンツE(C)を復号し、コンテンツCを再生する(ステップS514)。
【0149】
前記ステップS512において、属性秘密鍵記憶部52に保存されている、属性秘密鍵SKi,Uが当該アクセスポリシーAを満たさない場合(ステップS512:No、コンテンツ受信装置5は、コンテンツを再生することなく処理を終了する。
【0150】
[ユーザの属性の具体例]
次に、本発明の実施形態に係るコンテンツ受信装置のユーザの属性の具体例について図17を参照(適宜図1参照)して説明する。図1に示すアクセス制御システム1において、例えば、AAの属性鍵発行サーバ3にて、ユーザの居住地の属性が都道府県単位で管理されているものとする。そして、ユーザ鍵発行サーバ2、属性鍵発行サーバ3、コンテンツサーバ4、およびコンテンツ受信装置5にて、それぞれ初期化が行われて、それぞれが必要な鍵を取得して保存しているものとする。
【0151】
この前提において、図17に示すように、あるコンテンツを配信する1つのコンテンツサーバ4と、ネットワークNに接続された5台のコンテンツ受信装置5(5a,5b,5c,5d,5e)とを想定して、具体例を説明する。ここでは、サービスプロバイダにて、四国在住の女性のユーザのみコンテンツCの視聴を許可する場合を想定する。
サービスプロバイダのコンテンツサーバ4に入力されるアクセスポリシーAは、居住地の属性と性別の属性とを用いて、式(25)のように記述される。
【0152】
A=(香川県∧女性)∨(徳島県∧女性)∨(愛媛県∧女性)∨(高知県∧女性)
… 式(25)
【0153】
コンテンツ受信装置5aのユーザUaは、例えば香川県に居住する女性であるものとする。ここでは、図17に示すように、このユーザUaにおいて、居住地の属性と性別の属性とを、属性i1=「香川県」、属性i2=「女性」と表記することとする。
また、コンテンツ受信装置5bのユーザUbは、属性i3=「徳島県」、属性i4=「女性」であるものとする。
また、コンテンツ受信装置5cのユーザUcは、属性i5=「愛媛県」、属性i6=「女性」であるものとする。
また、コンテンツ受信装置5dのユーザUdは、属性i7=「高知県」、属性i8=「女性」であるものとする。
また、コンテンツ受信装置5eのユーザUeは、属性i9=「香川県」、属性i10=「男性」であるものとする。
【0154】
図17に示すコンテンツサーバ4は、予め取得したシステム公開鍵PKおよび属性公開鍵PKiと、生成したコンテンツ鍵とを保有している。また、コンテンツ受信装置5aは、システム公開鍵PKと、ユーザUaのユーザ鍵=<ユーザ公開鍵PKU,ユーザ秘密鍵SKU>と、属性公開鍵PKiと、ユーザUaの属性秘密鍵SKi,Uとを保有している。なお、図示を省略するが、他のコンテンツ受信装置5b〜5eにも同様にユーザに対応した各鍵が記憶されているものとする。
【0155】
前記した式(25)のアクセスポリシーAは、式(26)のように書き換えられる。
また、アクセスポリシーAのj=1〜4番目のconjunctionに出現する属性iの集合は、それぞれ式(27)、式(28)、式(29)、式(30)で表される。
【0156】
【数24】
【0157】
コンテンツ受信装置5aは、受信した暗号文から、式(26)に示すアクセスポリシーAを分離する。ここで、ユーザUaの属性i1,i2は、式(26)に示すアクセスポリシーAのj=1番目のconjunctionを満たしている。したがって、コンテンツ受信装置5aは、アクセスポリシーAのj=1番目のconjunctionを選び、属性i1に対応する属性秘密鍵SKi1,Uと、属性i2に対応する属性秘密鍵SKi2,Uと、ユーザ秘密鍵SKUaとを用いて前記した式(24)に示す復号の演算を実行する。
【0158】
また、コンテンツ受信装置5bは、アクセスポリシーAのj=2番目のconjunctionを選び、属性i3に対応する属性秘密鍵SKi3,Uと、属性i4に対応する属性秘密鍵SKi4,Uと、ユーザ秘密鍵SKUbとを用いて前記した式(24)に示す復号の演算を実行する。
同様に、コンテンツ受信装置5cは、アクセスポリシーAのj=3番目のconjunctionを選び、コンテンツ受信装置5dは、アクセスポリシーAのj=4番目のconjunctionを選び、復号によりコンテンツ鍵Mを得る。
一方、コンテンツ受信装置5eを利用するユーザUeの属性i9,i10の組み合わせは、式(26)に示すアクセスポリシーAを満たさない。したがって、コンテンツ受信装置5eは、アクセスポリシーAにしたがって、暗号文の復号を行わない。
これにより、四国在住の女性のユーザのみコンテンツCを視聴できることとなる。
【0159】
本実施形態に係るアクセス制御システム1は、放送波Wもしくはインターネット、専用IP回線等のネットワークNを利用したコンテンツ配信サービスにおいて、サービスプロバイダが、コンテンツの復号を許可するユーザを限定して暗号化コンテンツを配信したい場合に、個々のユーザを直接指定することなく、ユーザの満たすべき属性iの条件を記述したアクセスポリシーAに基づいてコンテンツの暗号化を行うことができる。
【0160】
これにより、サービスプロバイダがコンテンツ配信サービスを行う際のアクセス制御を容易に実現できる。例えば、「居住地」をユーザの属性iとして用いることにより、特定の地域に住む視聴者のみを対象としたコンテンツ配信サービスを実現できる。また、例えば、「年齢」をユーザの属性iとして用いることにより、年齢制限を設けたコンテンツ配信サービスを実現できる。さらに、例えば、「会員種別」をユーザの属性iとして用いることにより、会員限定のプレミアムコンテンツ配信サービスを実現できる。このように、ユーザの属性iに応じたきめ細かなコンテンツ配信サービスを提供できる。
【0161】
また、本実施形態に係るアクセス制御システム1は、任意の数のAAによる属性秘密鍵SKi,Uの発行が可能であるため、各々のAAの管理コストを削減できると共に、新たなAAの設置も容易となる。
【0162】
さらに、実施形態に係るアクセス制御システム1は、単独で暗号文を復号できる機関が存在しないため、従来よりも安全なアクセス制御システム1を構築でき、サービスプロバイダが提供するコンテンツ配信サービスをユーザが安心して利用できる。
【0163】
以上、実施形態に基づいて本発明を説明したが、本発明はこれに限定されるものではない。例えば、コンテンツ受信装置5は、ネットワークNからコンテンツを受信するものとしたが、放送事業者の放送局に設けたコンテンツサーバ4から送信された放送波Wによりコンテンツを受信するものとしてもよい。この場合には、コンテンツ受信装置5は、例えば、デジタル放送を受信するチューナを備え、CAS(Conditional Access System)カードにユーザ秘密鍵SKUや属性秘密鍵SKi,Uを記録してもよい。
【0164】
また、本実施形態では、ユーザ鍵発行サーバ2のユーザ鍵管理部223と、属性鍵発行サーバ3の属性秘密鍵管理部333とは、セキュアな通信手段を用いることとしたが、ユーザ鍵や属性秘密鍵をオフライン(例えば郵送等)にてユーザに発行するようにしてもよい。
【0165】
また、例えば、コンテンツサーバ4は、一般的なコンピュータを、前記した各手段として機能させるプログラム(コンテンツ配信プログラム)により動作させることで実現することができる。コンテンツ受信装置5は、一般的なコンピュータを、前記した各手段として機能させるプログラム(コンテンツ受信プログラム)により動作させることで実現することができる。これらコンテンツ配信プログラムやコンテンツ受信プログラムは、通信回線を介して配布することも可能であるし、DVDやCD−ROM等の記録媒体に書き込んで配布することも可能である。
【0166】
一般に、デジタル放送受信機は、デジタル放送で送られてくるデータをダウンロードして自動的に受信機のソフトウェアプログラムを更新させる機能があるので、デジタル放送受信機が前記コンテンツ受信プログラムを取り込んだ場合、このアクセス制御システム1のコンテンツ受信装置5として機能させることができる。
【符号の説明】
【0167】
1 アクセス制御システム
2 ユーザ鍵発行サーバ
21 システム初期化装置
211 システム公開鍵生成部(システム公開鍵生成手段)
212 システム公開鍵管理部
22 ユーザ鍵発行装置
221 ユーザ鍵リクエスト受信部
222 ユーザ鍵生成部(ユーザ鍵生成手段)
223 ユーザ鍵管理部
3 属性鍵発行サーバ
31 属性管理機関初期化装置
311 属性管理機関秘密鍵生成部(属性管理機関秘密鍵生成手段)
312 属性管理機関秘密鍵記憶部
32 属性公開鍵発行装置
321 属性公開鍵リクエスト受信部
322 属性公開鍵生成部(属性公開鍵生成手段)
323 属性公開鍵管理部
33 属性秘密鍵発行装置
331 属性秘密鍵リクエスト受信部
332 属性秘密鍵生成部(属性秘密鍵生成手段)
333 属性秘密鍵管理部
34 システム公開鍵記憶部
35 ユーザ管理情報記憶部
4 コンテンツサーバ
41 コンテンツ暗号化装置
411 コンテンツ入力部
412 コンテンツ鍵生成部
413 コンテンツ暗号化部(コンテンツ暗号化手段)
414 コンテンツ記憶部
42 コンテンツ配信装置
421 公開鍵記憶部
422 ポリシー入力部(ポリシー入力手段)
423 コンテンツ鍵暗号化部(コンテンツ鍵暗号化手段)
424 コンテンツ結合部(コンテンツ結合手段)
425 コンテンツ配信部(コンテンツ配信手段)
5 コンテンツ受信装置
51 公開鍵記憶部
52 属性秘密鍵記憶部(属性秘密鍵記憶手段)
53 ユーザ秘密鍵記憶部(ユーザ秘密鍵記憶手段)
54 コンテンツ受信部(コンテンツ受信手段)
55 コンテンツ分離部(コンテンツ分離手段)
56 復号判定部(判定手段)
57 コンテンツ鍵復号部(コンテンツ鍵復号手段)
58 コンテンツ再生部(コンテンツ再生手段)
N ネットワーク
【技術分野】
【0001】
本発明は、放送波もしくはインターネット、専用IP回線等のネットワークを利用したコンテンツ配信における、ユーザの属性を用いたアクセス制御技術に関する。
【背景技術】
【0002】
デジタル放送の普及やネットワークの高速化および大容量化に伴い、放送コンテンツを放送波もしくはインターネット、専用IP回線等のネットワークを用いて配信するサービスが実現している。このようなサービスにおいて、暗号化されたコンテンツを特定のユーザのみが復号し視聴することができる、といったアクセス制御を行う場合、サービスプロバイダにおいて、復号を許可するユーザを予め指定してコンテンツの暗号化を行うのが一般的である。復号を許可するユーザの一例として、サービスプロバイダが、当該サービスプロバイダの会員資格を有するユーザのみコンテンツの復号を許可する場合、会員資格を有するユーザを直接指定してコンテンツを暗号化することになる。そのため、ユーザに会員資格の変更(入会、退会など)があった場合に、サービスプロバイダは、その都度ユーザを指定してコンテンツを暗号化しなければならない、という問題がある。
【0003】
このような問題点を解決する手段として、サイファーテキストポリシー−属性ベース暗号(Ciphertext-Policy Attribute-Based Encryption)が知られている(非特許文献1参照)。これは、公開鍵暗号方式であって、送信者は、メッセージの暗号化を行う際、受信者の満たすべき属性(居住地、性別、年齢、会員種別など)の条件を記したアクセスポリシーに基づいて暗号化を行う。そして、当該アクセスポリシーを満たす属性を有する受信者のみ、その属性に対応する秘密鍵である属性秘密鍵を用いて復号可能となる。
【0004】
属性ベース暗号を用いると、サービスプロバイダはアクセス制御を行う際、個々のユーザを直接指定する必要はないため、サービスプロバイダの負荷を軽減できる。例えば、前記した復号を許可するユーザの一例として、サービスプロバイダが、当該サービスプロバイダの会員資格を有するユーザのみコンテンツの復号を許可する場合、サービスプロバイダがコンテンツの暗号化の際に指定するのは「会員資格を有するユーザ」というアクセスポリシーのみであり、会員資格を有するユーザを直接指定して暗号化を行う必要がない。そのため、ユーザに会員資格の変更(入会、退会など)があった場合においても、コンテンツを再度暗号化する必要がない。
【0005】
属性ベース暗号では、ユーザは属性管理機関(Attribute Authority:AA)に対し、ある属性を有していることを証明し、その属性に対応する属性秘密鍵を発行してもらう。非特許文献1に開示された方式では、1つのAAが全ての属性情報を管理しなければならないため、管理コストが大きくなるという問題がある。
【0006】
このような問題点を解決する手段として、複数のAAが存在可能な属性ベース暗号(Multi-Authority Attribute-Based Encryption)が知られている(非特許文献2および非特許文献3参照)。これらの方式によれば、1つのAAが管理する属性情報を少なくすることができるため、AAの管理コストを削減できる。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】J. Bethencourt, A. Sahai and B. Waters, “Ciphertext-Policy Attribute-Based Encryption,” Proc. of the 2007 IEEE Symposium on Security and Privacy, pp. 321-334, 2007.
【非特許文献2】M. Chase, “Multi-Authority Attribute Based Encryption,” Proc. of TCC’07, Lecture Notes in Computer Science 4392, pp. 515-534, Springer-Verlag, 2007.
【非特許文献3】S. Muller, S. Katzenbeisserand C. Eckert, “Distributed Attribute-Based Encryption,” Proc. of ICISC’08, Lecture Notes in Computer Science 5461, pp. 20-36, Springer-Verlag, 2009.
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来、複数のAAが存在可能な属性ベース暗号においては、ユーザの結託攻撃という問題を防止するために、各AAを束ねる中央機関として、ユーザ管理を行う機関(Central Authority:CA)を別途設置している。ここで、結託攻撃とは、単独ではアクセスポリシーを満たさない複数のユーザが結託し、互いの属性秘密鍵を共有することにより、コンテンツの復号が可能になってしまうというものである。
【0009】
しかしながら、非特許文献2、3に記載の従来技術では、ユーザの結託攻撃を防止するために設置した中央機関であるCAが、マスター鍵を保有しているため、原理的に、システム上の全ての暗号文を復号できる。そのため、信頼性の低いCAが存在した場合に、システム内の暗号文の秘匿性を保てずに安全性が低くなるという問題があった。
【0010】
具体的には、非特許文献2,3に記載の方法では、CAのサーバは、システム公開鍵PKとマスター鍵MKとユーザ識別子uとを入力して、ユーザ鍵として、ユーザ公開鍵およびユーザ秘密鍵を生成する。
【0011】
例えば、非特許文献3に記載の方法では、CAのサーバは、システムの初期化において、Gを素数位数pの双線形群とし、ペアリングをe:G×G→GTとすると共に、生成元g∈G、およびP∈G、y∈Zpをランダムに選び、式(101)で示すシステム公開鍵PKおよびマスター鍵MK=gyを出力する。
【0012】
【数1】
【0013】
また、CAのサーバは、ユーザuに対してZp(0からp−1までの整数の集合)からランダムに選択した乱数mkuを用いて、式(102)に示すユーザ公開鍵PKuと、式(103)に示すユーザ秘密鍵SKuとを生成する。
【0014】
【数2】
【0015】
そして、AAのうち、a番目のAA(=AAa)のサーバは、システム公開鍵PKと識別子aとを入力として、有限のハッシュ関数族から、ハッシュ関数Hxa:{0,1}*→Zpを一様ランダムに選択し、AAaの秘密鍵をSKa=xaとする。AAaが属性iを管理している場合、AAaのサーバは、システム公開鍵PKと属性iと秘密鍵SKaとを入力として、式(104)に示す属性iの属性公開鍵PKiを出力する。また、ユーザuが属性iを有している場合、AAaのサーバは、システム公開鍵PKと属性iと秘密鍵SKaとユーザ識別子uとユーザ公開鍵PKuとを入力として、式(105)に示すuの属性秘密鍵SKiを出力する。
【0016】
【数3】
【0017】
また、サービスプロバイダのサーバは、システム公開鍵PKとメッセージMとアクセスポリシーAと複数の属性公開鍵PKiとを入力として、アクセスポリシーAの要素j(1≦j≦n)に対し、乱数Rj∈Zpをランダムに選び、暗号文CT=<CT1,…,CTn>を出力する。ここで、CTjは、式(106)で表される。
【0018】
【数4】
【0019】
そして、復号側のユーザ端末は、システム公開鍵PKと暗号文CTとアクセスポリシーAとユーザ秘密鍵SKuと複数の属性秘密鍵SKi,uとを入力として、式(107)により、メッセージMを復号することができる。
【0020】
【数5】
【0021】
ここで、下記の式(108)に示すajの表記を導入すると、前記した式(106)中のEj、E´´jは、それぞれ式(109)、式(110)で表されることとなる。
【0022】
【数6】
【0023】
前記式(109)は、ペアリングの双線形性を用いて式(111)のような式変形を行うことにより、マスター鍵MK=gyと関係付けられていることが分かる。なお、ここで、式(110)の関係を用いた。
そして、式(111)の最左辺と、最右辺との関係から、メッセージMは式(112)で表される。つまり、マスター鍵MK=gyを持っているCAは、このシステムの全ての暗号文を復号してメッセージMを解読できる。
【0024】
【数7】
【0025】
本発明は、以上のような問題点に鑑みてなされたものであり、ユーザの属性に基づいたアクセス制御システムを用いて、放送や通信による安全なコンテンツ配信サービスを提供する技術を提供することを課題とする。
【課題を解決するための手段】
【0026】
前記課題を解決するために、本発明の請求項1に記載のコンテンツサーバは、ユーザ鍵としてのユーザ公開鍵およびユーザ秘密鍵とシステム公開鍵とを発行するユーザ鍵発行サーバと、属性毎の属性公開鍵および当該属性に対応したユーザ毎の属性秘密鍵を発行する複数の属性鍵発行サーバと、コンテンツを配信するコンテンツサーバと、ユーザによって使用され前記コンテンツを受信するコンテンツ受信装置とを備え、前記コンテンツにアクセスできる条件としてユーザの属性を用いて前記コンテンツを提供する側にて予め作成されたアクセスポリシーに基づいて前記コンテンツへのアクセスを制御するアクセス制御システムにおける前記コンテンツサーバであって、コンテンツ暗号化手段と、ポリシー入力手段と、コンテンツ鍵暗号化手段と、コンテンツ結合手段と、コンテンツ配信手段と、を備えることとした。
【0027】
かかる構成によれば、コンテンツサーバは、コンテンツ暗号化手段によって、入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成する。そして、コンテンツサーバは、ポリシー入力手段によって、前記アクセスポリシーを入力する。そして、コンテンツサーバは、コンテンツ鍵暗号化手段によって、入力された前記コンテンツ鍵を暗号化して暗号化コンテンツ鍵を生成する。そして、コンテンツサーバは、コンテンツ結合手段によって、前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成する。そして、コンテンツサーバは、コンテンツ配信手段によって、前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信する。
【0028】
そして、かかる構成によれば、コンテンツサーバは、前記コンテンツ鍵暗号化手段によって、前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された下記の式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について下記の式(22)に示す部分暗号文CTjを生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、下記の式(23)に示す暗号文CTを生成する。したがって、コンテンツサーバは、システム内の全ての暗号文を復号するマスター鍵そのものが不要になるようなアルゴリズムの暗号方式でコンテンツを配信することができる。これにより、当該アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはない。よって、ユーザの属性に基づいたアクセス制御システムを用いて、放送や通信による安全なコンテンツ配信サービスを提供することができる。
【0029】
また、本発明の請求項2に記載のコンテンツ受信装置は、請求項1に記載のコンテンツサーバを備えるアクセス制御システムにおいて前記コンテンツサーバが配信する前記コンテンツを受信する前記コンテンツ受信装置であって、属性秘密鍵記憶手段と、ユーザ秘密鍵記憶手段と、コンテンツ受信手段と、コンテンツ分離手段と、判定手段と、コンテンツ鍵復号手段と、コンテンツ再生手段と、を備えることとした。
【0030】
かかる構成によれば、コンテンツ受信装置は、当該コンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を属性秘密鍵記憶手段に記憶すると共に、前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵をユーザ秘密鍵記憶手段に記憶しておく。そして、コンテンツ受信装置は、コンテンツ受信手段によって、前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信する。そして、コンテンツ受信装置は、コンテンツ分離手段によって、前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である前記式(23)に示す暗号文CTと、を分離する。そして、コンテンツ受信装置は、判定手段によって、前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する。そして、コンテンツ受信装置は、コンテンツ鍵復号手段によって、前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する下記の式(17)に示す属性秘密鍵SKi,U,と、下記の式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、下記の式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号する。そして、コンテンツ受信装置は、コンテンツ再生手段によって、前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生する。
【0031】
また、本発明の請求項3に記載の属性鍵発行サーバは、請求項1に記載のコンテンツサーバまたは請求項2に記載のコンテンツ受信装置を備えるアクセス制御システムにおいて、属性管理機関に設置され、前記コンテンツサーバまたは前記コンテンツ受信装置で用いる前記属性鍵を発行する前記属性鍵発行サーバであって、属性管理機関秘密鍵生成手段と、属性公開鍵生成手段と、属性秘密鍵生成手段と、を備えることとした。
【0032】
かかる構成によれば、属性鍵発行サーバは、例えば属性管理機関を新規に設置する際に、属性管理機関秘密鍵生成手段によって、当該属性管理機関を識別する属性管理機関識別子aおよび前記システム公開鍵を用いて当該属性管理機関に固有の属性管理機関秘密鍵SKaを生成する。そして、属性鍵発行サーバは、属性公開鍵生成手段によって、前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性を含むリクエストとを用いて、下記の式(14)に示す属性毎の前記属性公開鍵PKiを生成する。そして、属性鍵発行サーバは、属性秘密鍵生成手段によって、前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性、ユーザ識別子Uおよび前記ユーザ公開鍵を含むリクエストとを用いて、下記の式(17)に示す当該属性のユーザ毎の前記属性秘密鍵を生成する。したがって、当該アクセス制御システムでは、任意の数の属性管理機関が属性秘密鍵を発行することができ、ユーザの属性に基づいてコンテンツの暗号化および復号を行うことができる。また、このアクセス制御システムは、任意の数の属性管理機関が属性秘密鍵を発行できるため、各々の属性管理機関は管理コストを削減できる。
【0033】
また、本発明の請求項4に記載のユーザ鍵発行サーバは、請求項1に記載のコンテンツサーバ、請求項2に記載のコンテンツ受信装置、または請求項3に記載の属性鍵発行サーバを備えるアクセス制御システムにおいて、ユーザ管理機関に設置され、前記コンテンツサーバ、前記コンテンツ受信装置、または前記属性鍵発行サーバで用いる前記システム公開鍵を生成する前記ユーザ鍵発行サーバであって、システム公開鍵生成手段と、ユーザ鍵生成手段と、を備えることとした。
【0034】
かかる構成によれば、ユーザ鍵発行サーバは、システムの初期化を行う際に、システム公開鍵生成手段によって、素数位数pの双線形群Gと、双線形写像e:G×G→GTと、Gからランダムに選択された下記の式(5)で示す生成元とを用いて、下記の式(6)に示す前記システム公開鍵PKを生成する。そして、ユーザ鍵発行サーバは、ユーザ鍵生成手段によって、当該アクセス制御システムのユーザを識別するユーザ識別子Uと、前記システム公開鍵PKとを用いて、下記の式(9)に示すユーザ毎に異なる鍵として発行する前記ユーザ公開鍵PKUおよび前記ユーザ秘密鍵SKUを生成する。また、このアクセス制御システムでは、ユーザ管理機関は、ユーザを管理するだけなので、アクセス制御システムに、新たな属性管理機関を設置する際に、ユーザ管理機関は、鍵を再発行する必要はないので、新たな属性管理機関を設置する際に鍵を再発行するようなシステムに比べて利便性がよく、新たな属性管理機関を容易に設置することができる。
【0035】
また、本発明の請求項5に記載のアクセス制御システムは、請求項1に記載のコンテンツサーバと、請求項2に記載のコンテンツ受信装置と、請求項3に記載の属性鍵発行サーバと、請求項4に記載のユーザ鍵発行サーバと、を備えることとした。
【0036】
かかる構成によれば、アクセス制御システムにおいて、コンテンツサーバは、属性鍵発行サーバで生成された属性公開鍵と、ユーザ鍵発行サーバで生成されたシステム公開鍵とを用いて、コンテンツ鍵をアクセスポリシーの要素毎に暗号化し、ヘッダ付き暗号化コンテンツを生成して配信する。また、コンテンツ受信装置は、属性鍵発行サーバで生成された属性秘密鍵と、ユーザ鍵発行サーバで生成されたシステム公開鍵とを予め取得して記憶しておき、コンテンツサーバからヘッダ付き暗号化コンテンツを受信する。そして、コンテンツ受信装置は、アクセスポリシーに当該コンテンツ受信装置のユーザの満たすべき属性が含まれる場合にはコンテンツ鍵を復号してコンテンツを再生し、一方、アクセスポリシーに当該コンテンツ受信装置のユーザの満たすべき属性が含まれていない場合にはコンテンツ鍵を復号することはしない。また、コンテンツサーバは、システム内の全ての暗号文を復号するマスター鍵そのものが不要になるようなアルゴリズムの暗号方式でコンテンツを配信することができる。これにより、当該アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはない。したがって、コンテンツ配信側で予め作成されたアクセスポリシーによって、ユーザの属性に基づいた安全なコンテンツ配信サービスを提供することができる。
【0037】
また、本発明の請求項6に記載のコンテンツ配信プログラムは、請求項1に記載のコンテンツサーバであるコンピュータを、コンテンツ暗号化手段、ポリシー入力手段、コンテンツ鍵暗号化手段、コンテンツ結合手段、コンテンツ配信手段、として機能させることとした。
【0038】
かかる構成によれば、コンテンツ配信プログラムは、コンテンツ暗号化手段によって、入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成する。そして、コンテンツ配信プログラムは、ポリシー入力手段によって、前記アクセスポリシーを入力する。そして、コンテンツ配信プログラムは、コンテンツ鍵暗号化手段によって、前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された下記の式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について下記の式(22)に示す部分暗号文を生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、下記の式(23)に示す暗号文CTを生成する。そして、コンテンツ配信プログラムは、コンテンツ結合手段によって、前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成する。そして、コンテンツ配信プログラムは、コンテンツ配信手段によって、前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信する。
【0039】
また、本発明の請求項7に記載のコンテンツ受信プログラムは、請求項1に記載のコンテンツサーバが配信する前記コンテンツを受信するコンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を記憶した属性秘密鍵記憶手段と、前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵を記憶したユーザ秘密鍵記憶手段とを備えた請求項2に記載のコンテンツ受信装置であるコンピュータを、コンテンツ受信手段、コンテンツ分離手段、判定手段、コンテンツ鍵復号手段、コンテンツ再生手段、として機能させることとした。
【0040】
かかる構成によれば、コンテンツ受信プログラムは、コンテンツ受信手段によって、前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信する。そして、コンテンツ受信プログラムは、コンテンツ分離手段によって、前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である下記の式(23)に示す暗号文CTと、を分離する。そして、コンテンツ受信プログラムは、判定手段によって、前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する。そして、コンテンツ受信プログラムは、コンテンツ鍵復号手段によって、前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する下記の式(17)に示す属性秘密鍵SKi,U,と、下記の式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、下記の式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号する。そして、コンテンツ受信プログラムは、コンテンツ再生手段によって、前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生する。
【発明の効果】
【0041】
請求項1に記載の発明によれば、コンテンツサーバは、システム内の全ての暗号文を復号するマスター鍵そのものが不要になるようなアルゴリズムの暗号方式でコンテンツを配信することができる。そのため、当該アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはない。したがって、コンテンツサーバは、当該アクセス制御システム内にて放送や通信による安全なコンテンツ配信サービスを提供することができる。
また、請求項6に記載の発明によれば、コンテンツ配信プログラムをインストールしたコンピュータは請求項1と同様の効果を奏することができる。
【0042】
請求項2に記載の発明によれば、コンテンツ受信装置は、コンテンツ配信側で予め作成されたアクセスポリシーを満たす場合に、受信したコンテンツを再生することができる。
また、請求項7に記載の発明によれば、コンテンツ受信プログラムをインストールしたコンピュータは請求項2と同様の効果を奏することができる。
【0043】
請求項3に記載の発明によれば、属性鍵発行サーバは、当該アクセス制御システムにおいて任意の数だけ容易に設置することができる。
請求項4に記載の発明によれば、ユーザ鍵発行サーバは、ユーザ鍵を発行すると共にシステムの初期化を行うことができる。
請求項5に記載の発明によれば、アクセス制御システムには、システム内の全ての暗号文を単独で復号できる機関が存在することはないので、ユーザの属性に基づいたアクセス制御システムを用いて、放送や通信による安全なコンテンツ配信サービスを提供することができる。
【図面の簡単な説明】
【0044】
【図1】本発明の実施形態に係るアクセス制御システムを模式的に示す構成図である。
【図2】本発明の実施形態に係るユーザ鍵発行サーバの構成を模式的に示すブロック図である。
【図3】本発明の実施形態に係る属性鍵発行サーバの構成を模式的に示すブロック図である。
【図4】本発明の実施形態に係るコンテンツサーバの構成を模式的に示すブロック図である。
【図5】本発明の実施形態に係るコンテンツ受信装置の構成を模式的に示すブロック図である。
【図6】本発明の実施形態に係るユーザ鍵発行サーバにおけるシステム初期化のアルゴリズムを示すフローチャートである。
【図7】本発明の実施形態に係るユーザ鍵発行サーバにおけるユーザ鍵発行のアルゴリズムを示すフローチャートである。
【図8】本発明の実施形態に係る属性鍵発行サーバにおける属性管理機関初期化のアルゴリズムを示すフローチャートである。
【図9】本発明の実施形態に係る属性鍵発行サーバにおける属性公開鍵発行のアルゴリズムを示すフローチャートである。
【図10】本発明の実施形態に係る属性鍵発行サーバにおける属性秘密鍵発行のアルゴリズムを示すフローチャートである。
【図11】本発明の実施形態に係るコンテンツサーバにおける暗号化のアルゴリズムを示すフローチャートである。
【図12】本発明の実施形態に係るコンテンツ受信装置における復号のアルゴリズムを示すフローチャートである。
【図13】本発明の実施形態に係るユーザ鍵発行サーバの動作を示すシーケンス図である。
【図14】本発明の実施形態に係る属性鍵発行サーバの動作を示すシーケンス図である。
【図15】本発明の実施形態に係るコンテンツサーバの動作を示すシーケンス図である。
【図16】本発明の実施形態に係るコンテンツ受信装置の動作を示すシーケンス図である。
【図17】本発明の実施形態に係るコンテンツ受信装置のユーザの属性の具体例を示す図である。
【発明を実施するための形態】
【0045】
以下、本発明を実施するための形態について図面を参照して詳細に説明する。
[アクセス制御システムの概要]
図1に示すように、アクセス制御システム1は、ユーザの属性を条件としたアクセスポリシーに基づいてコンテンツへのアクセスを制御するシステムであり、ユーザ鍵発行サーバ2と、複数の属性鍵発行サーバ3と、コンテンツサーバ4と、コンテンツ受信装置5とを備えている。ここで、アクセスポリシーは、ユーザがコンテンツにアクセスできる条件であり、コンテンツを提供する側にて予め定められる。
【0046】
ユーザ鍵発行サーバ2は、ユーザ鍵を発行するものであり、ユーザ管理機関(Central Authority:CA)に設置されている。
属性鍵発行サーバ3は、属性鍵を発行するものであり、属性管理機関(Attribute Authority:AA)に設置されている。図1では、複数の属性管理機関(AA1〜AAn)にそれぞれ1つずつの属性鍵発行サーバ3が設置されていることとした。
コンテンツサーバ4は、コンテンツを配信するものであり、サービスプロバイダ(例えば放送局)に設置されている。
コンテンツ受信装置5は、有線または無線のネットワークNまたは放送波Wによりコンテンツを受信するものであり、ユーザによって利用される。コンテンツ受信装置5は、例えば、パーソナルコンピュータや携帯端末、あるいはテレビジョン受信機等からなる。
【0047】
ユーザ鍵発行サーバ2、属性鍵発行サーバ3、コンテンツサーバ4、およびコンテンツ受信装置5は、インターネットあるいは専用IP回線等の外部のネットワークNに接続されている。なお、コンテンツサーバ4とコンテンツ受信装置5とは放送波Wによって接続されていてもよい。以下では、コンテンツ受信装置5は、ネットワークNからコンテンツを受信するものとして説明する。
【0048】
[アクセス制御システムの各装置の構成]
各装置は、CPU(Central Processing Unit)等の演算装置と、メモリやハードディスク等の記憶装置と、外部との間で各種情報の送受信を行うインタフェース装置とを備えている。
<ユーザ鍵発行サーバ>
図2に示すように、ユーザ鍵発行サーバ2は、システム初期化装置21と、ユーザ鍵発行装置22とを備えている。
【0049】
(システム初期化装置)
システム初期化装置21は、コンテンツサーバ4、コンテンツ受信装置5、または属性鍵発行サーバ3で用いるシステム公開鍵PKを生成するものであり、システム公開鍵生成部211と、システム公開鍵管理部212とを備えている。
【0050】
システム公開鍵生成部(システム公開鍵生成手段)211は、システムの初期化を行う際に、システム公開鍵PKを生成するものである。生成されたシステム公開鍵PKは、システム公開鍵管理部212に保存される。システムの初期化のアルゴリズム、すなわち、システム公開鍵PKの生成アルゴリズムの例については後記する。
【0051】
システム公開鍵管理部212は、システム公開鍵PKを記憶して管理するものであり、例えば、RAM(Random Access Memory)やROM(Read Only Memory)等のメモリやハードディスク等の記憶装置と、記憶装置に対してリード/ライト動作をする処理装置と、外部のネットワークNを介して情報を送受信する通信装置とを備えている。このシステム公開鍵管理部212にて管理されたシステム公開鍵PKは、外部のネットワークN経由で誰でもアクセス可能な情報である。
【0052】
(ユーザ鍵発行装置)
ユーザ鍵発行装置22は、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを発行するものであり、ユーザ鍵リクエスト受信部221と、ユーザ鍵生成部222と、ユーザ鍵管理部223とを備えている。なお、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを特に区別しない場合にはまとめてユーザ鍵と呼称する。
【0053】
ユーザ鍵リクエスト受信部221は、ユーザからのリクエスト(ユーザ識別子U)を受信するものである。ユーザからのリクエストは、コンテンツ受信装置5から、ユーザ鍵発行サーバ2にオンラインで送信されるリクエストでもよいし、ユーザから郵送等のオフラインの方法でCAに届けられた情報をCA内にてユーザ鍵リクエスト受信部221に直接入力したリクエストでもよいし、あるいは、CA内の他の端末に一旦入力したリクエストを間接的にユーザ鍵リクエスト受信部221で受信したものであってもよい。
【0054】
ユーザ鍵生成部(ユーザ鍵生成手段)222は、当該アクセス制御システム1のユーザを識別するユーザ識別子Uと、システム公開鍵PKとを用いて、ユーザ毎に異なる鍵として発行するユーザ公開鍵PKUおよびユーザ秘密鍵SKUを生成するものである。
ユーザ鍵生成部222は、ユーザ鍵リクエスト受信部221にて受信したリクエストに応じて当該ユーザのユーザ公開鍵PKUおよびユーザ秘密鍵SKUを生成し、ユーザ鍵管理部223に保存する。ユーザ鍵の生成アルゴリズムの例については、後記するユーザ鍵の発行のアルゴリズムの中で説明する。
【0055】
ユーザ鍵管理部223は、ユーザ鍵を記憶して管理するものであり、例えば、記憶装置と、処理装置と、送受信装置とを備えている。このユーザ鍵管理部223の処理装置は、リクエストのあったユーザに対し、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを送信する。ここで、ユーザ秘密鍵SKUは、秘匿化すべき情報なので、通信によって送出する場合には、暗号化する必要がある。この場合には、セキュアな通信手段として、例えば、TLS(Transport Layer Security)等を用いて受信装置(またはコンテンツ復号化装置)を認証した後に秘匿化されたユーザ秘密鍵SKUを送出する。
【0056】
<属性鍵発行サーバ>
図3に示すように、属性鍵発行サーバ3は、コンテンツサーバ4またはコンテンツ受信装置5で用いる属性鍵を発行するものであり、属性管理機関初期化装置31と、属性公開鍵発行装置32と、属性秘密鍵発行装置33と、システム公開鍵記憶部34と、ユーザ管理情報記憶部35とを備えている。属性鍵は、属性公開鍵と属性秘密鍵との総称である。
【0057】
(属性管理機関初期化装置)
属性管理機関初期化装置31は、例えば、属性管理機関(AAi)を新規に設置する際に、属性鍵発行サーバ3を初期化するために動作するものであり、属性管理機関秘密鍵生成部311と、属性管理機関秘密鍵記憶部312とを備えている。
【0058】
属性管理機関秘密鍵生成部(属性管理機関秘密鍵生成手段)311は、例えば、属性管理機関(AAi)を新規に設置する際に、当該属性管理機関を識別する属性管理機関識別子aおよびシステム公開鍵PKを用いて当該AAに固有の属性管理機関秘密鍵SKaを生成するものである。生成された属性管理機関秘密鍵SKaは、属性管理機関秘密鍵記憶部312に保存される。なお、属性管理機関秘密鍵SKaの生成アルゴリズムについては、後記する属性管理機関の初期化のアルゴリズムの例の中で説明する。
属性管理機関秘密鍵記憶部312は、属性管理機関秘密鍵SKaを記憶するものであって、例えば、一般的なメモリから構成される。
【0059】
(属性公開鍵発行装置)
属性公開鍵発行装置32は、ユーザから取得した属性鍵のリクエストに応じて属性i毎の属性公開鍵PKiを発行するものであり、属性公開鍵リクエスト受信部321と、属性公開鍵生成部322と、属性公開鍵管理部323とを備えている。
【0060】
属性公開鍵リクエスト受信部321は、ユーザからのリクエスト(属性iを含むリクエスト)を受信するものである。ユーザからのリクエストは、コンテンツ受信装置5から、属性鍵発行サーバ3にオンラインで送信されるリクエストでもよいし、ユーザから郵送等のオフラインの方法でAAに届けられた情報をAA内にて属性公開鍵リクエスト受信部321に直接入力したリクエストでもよいし、あるいは、AA内の他の端末に一旦入力したリクエストを間接的に属性公開鍵リクエスト受信部321で受信したものでもよい。
【0061】
本実施形態では、この属性公開鍵リクエスト受信部321は、受信したリクエストに含まれる属性iを当該AAにて管理しているか否かを判別し、管理している場合に、受信したリクエストを属性公開鍵生成部322に出力する。例えば、当該AAにてユーザの属性として、居住地「東京都」を管理する場合、属性公開鍵リクエスト受信部321は、受信したリクエストに含まれる居住地が「東京都」であるか否かを判別する。したがって、リクエストに含まれる居住地が例えば「東京都」である場合には、「東京都」に居住するユーザに共通した属性公開鍵を発行することとなる。なお、この例においてリクエストに含まれる居住地が例えば「千葉県」である場合には、例えば、鍵を発行できない旨を返信する。
【0062】
属性公開鍵生成部(属性公開鍵生成手段)322は、システム公開鍵PKと、属性管理機関秘密鍵SKaと、ユーザから取得した属性iを含むリクエストとを用いて、属性i毎の属性公開鍵PKiを生成するものである。
属性公開鍵生成部322は、属性公開鍵リクエスト受信部321にてユーザからのリクエスト(属性i)を受信した後、当該属性iに対応する属性公開鍵PKiを生成し、属性公開鍵管理部323に保存する。属性公開鍵PKiの生成アルゴリズムについては、後記する属性公開鍵PKiの発行アルゴリズムの例の中で説明する。
【0063】
属性公開鍵管理部323は、属性公開鍵PKiを記憶して管理するものであり、例えば、記憶装置と、処理装置と、送受信装置とを備えている。このユーザ鍵管理部223の処理装置は、リクエストのあったユーザに対し、属性公開鍵PKiを送信する。なお、属性公開鍵PKiは外部のネットワークN経由で誰でもアクセス可能な情報である。そのため、属性公開鍵PKiはユーザからのリクエストに応じて毎回生成する必要はない。すなわち、当該AAが管理する全ての属性iに対応する属性公開鍵PKiを予め生成し、属性公開鍵管理部323に保存するようにしてもよい。
【0064】
例えば、AAにてユーザの属性として、居住地が都道府県単位で管理されている場合、居住地の属性だけで47個の属性公開鍵を予め生成して保存しておいてもよい。また、例えば、AAにてユーザの年齢の属性が未成年か否かで管理されている場合、年齢の属性だけで2個の属性公開鍵を予め生成して保存しておいてもよい。ここで、例えば、第1のAA(AA1)にて居住地の属性を管理し、第2のAA(AA2)にて年齢の属性を管理している場合、サービスプロバイダは、AA1から居住地の属性に関する属性公開鍵を取得し、かつ、AA2から年齢の属性に関する属性公開鍵を取得すれば、例えば、東京都在住の成人向けのコンテンツを配信することができる。なお、1つのAAにて、居住地の属性と、年齢の属性といった、複数種類の属性を管理してもよいことはもちろんであり、その場合には、サービスプロバイダは、1つのAAから居住地の属性に関する属性公開鍵と、年齢の属性に関する属性公開鍵とを取得すれば、例えば、東京都在住の成人向けのコンテンツを配信することができる。
【0065】
(属性秘密鍵発行装置)
属性秘密鍵発行装置33は、ユーザから取得した属性鍵のリクエストに応じて属性iに対応したユーザ毎の属性秘密鍵SKi,Uを発行するものであり、属性秘密鍵リクエスト受信部331と、属性秘密鍵生成部332と、属性秘密鍵管理部333とを備えている。
【0066】
属性秘密鍵リクエスト受信部331は、ユーザからのリクエスト(ユーザ識別子U、ユーザ公開鍵PKU、属性i)を受信する。この属性秘密鍵リクエスト受信部331で受信するユーザからのリクエストは、ユーザ識別子Uおよびユーザ公開鍵PKUが含まれる点が異なるだけで、前記した属性公開鍵リクエスト受信部321と同様なものである。
本実施形態では、この属性秘密鍵リクエスト受信部331は、受信したリクエストに含まれる属性iを当該AAにて管理しているか否かを判別し、管理している場合に、さらに、ユーザ管理情報記憶部35に記憶されたユーザ管理情報を参照して、リクエストを送ったユーザが当該属性iを有しているか否かを判別し、ユーザがこの属性iを有している場合(正当なユーザの場合)、リクエストを属性秘密鍵生成部332に出力する。
【0067】
属性秘密鍵生成部(属性秘密鍵生成手段)332は、システム公開鍵PKと、属性管理機関秘密鍵SKaと、ユーザから取得した属性iを含むリクエストとを用いて、当該属性iのユーザ毎の属性秘密鍵SKi,Uを生成するものである。このリクエストには、属性iの他にユーザ識別子Uおよびユーザ公開鍵PKUを含む。
属性秘密鍵生成部332は、ユーザからのリクエストを受信した後、当該属性iおよび当該ユーザに対応して属性秘密鍵SKi,Uを生成し、属性秘密鍵管理部333に保存する。なお、属性秘密鍵SKi,Uの生成アルゴリズムについては、後記する属性秘密鍵SKi,Uの発行アルゴリズムの中で説明する。
【0068】
属性秘密鍵管理部333は、属性秘密鍵SKi,Uを記憶して管理するものであり、例えば、記憶装置と、処理装置と、送受信装置とを備えている。この属性秘密鍵管理部333の処理装置は、リクエストのあったユーザに対し、セキュアな通信手段を用いて属性秘密鍵SKi,Uを送信する。ここで、セキュアな通信手段については、前記したユーザ鍵管理部223と同様なので説明を省略する。なお、属性秘密鍵管理部333は、リクエストのあったユーザに対し、属性秘密鍵SKi,Uを属性公開鍵PKiと共に同時に送信するようにしてもよい。
【0069】
システム公開鍵記憶部34は、システム公開鍵PKを記憶するものであって、例えば、一般的なメモリから構成される。
ユーザ管理情報記憶部35は、ユーザ管理情報を記憶するものであって、例えば、一般的なメモリやハードディスクから構成される。
ユーザ管理情報は、予めAAにて管理しているユーザ情報であって、例えば、ユーザを識別するユーザ識別子Uと、住所、性別といったユーザの属性iとを含んでいる。
【0070】
<コンテンツサーバ>
図4に示すように、コンテンツサーバ4は、サービスプロバイダで予め作成されたアクセスポリシーにより特定の属性を有したユーザにだけコンテンツを配信するものであり、コンテンツ暗号化装置41と、コンテンツ配信装置42とを備えている。
(コンテンツ暗号化装置)
コンテンツ暗号化装置41は、アクセスポリシーにより特定の属性を有したユーザに配信するためのコンテンツを暗号化するものであって、コンテンツ入力部411と、コンテンツ鍵生成部412と、コンテンツ暗号化部413と、コンテンツ記憶部414とを備えている。
【0071】
コンテンツ入力部411は、コンテンツCを入力するものである。コンテンツCは、映像、音声等のマルチメディアのコンテンツである。コンテンツの符号化方式は特に限定されない。入力されたコンテンツCは、コンテンツ鍵生成部412を介して、コンテンツ暗号化部413に送られる。
コンテンツ鍵生成部412は、コンテンツCが入力されると、当該コンテンツCを暗号化するためのコンテンツ鍵Mを生成する。コンテンツ鍵生成部412は、ランダムに発生させた乱数を用いた演算により、コンテンツ鍵Mを生成する。
【0072】
コンテンツ暗号化部(コンテンツ暗号化手段)413は、入力されたコンテンツCをコンテンツ鍵Mによって暗号化することで、暗号化コンテンツE(C)を生成するものである。なお、コンテンツCの暗号化は、一般に、高速処理が可能な共通鍵暗号方式が用いられる。ここで、共通鍵暗号方式の暗号アルゴリズムとしては、例えばDES(Data Encryption Standard)やAES(Advanced Encryption Standard)などを用いてもよい。
コンテンツ記憶部414は、生成された暗号化コンテンツE(C)およびコンテンツ鍵Mを記憶するものであり、例えば、一般的なハードディスク等から構成される。
【0073】
(コンテンツ配信装置)
コンテンツ配信装置42は、アクセスポリシーによって特定の属性を有したユーザに対して暗号化コンテンツを配信するものであって、公開鍵記憶部421と、ポリシー入力部422と、コンテンツ鍵暗号化部423と、コンテンツ結合部424と、コンテンツ配信部425とを備えている。
【0074】
公開鍵記憶部421は、コンテンツサーバ4にて予め取得した属性公開鍵PKiやシステム公開鍵PKを記憶するものであって、例えば、一般的なメモリから構成される。
コンテンツサーバ4は、リクエストに応じて属性鍵発行サーバ3から取得した各属性に対して発行された複数の属性公開鍵PKiを、公開鍵記憶部421に記憶している。例えば、AAにてユーザの居住地の属性が都道府県単位で管理されていて、サービスプロバイダがユーザ属性として全国の居住地を必要とする場合、居住地の属性だけで47個の属性公開鍵を予め取得して記憶しておく。
【0075】
ポリシー入力部(ポリシー入力手段)422は、アクセスポリシーを入力するものである。このポリシー入力部422は、ユーザの属性の論理積でまとめられた要素間の論理和で表現した加法標準形で示される条件としてサービスプロバイダにて予め作成されたアクセスポリシーAを入力する。暗号化の際に用いるアクセスポリシーAの構造の一例を式(1)に示す。
【0076】
【数8】
【0077】
ここで、加法標準形(選言標準形ともいう)は、Disjunctive Normal Form(DNF)と呼ばれ、式(1)の右辺に示すように、複数の属性iをAND記号「∧」で結合した要素(以下、conjunctionという)を、conjunction毎にOR記号「∨」で結合した論理式で構成される。
【0078】
ここで、式(2)で示すS1は、1番目のconjunctionに出現する属性iの集合を示し、コンテンツ配信対象とするユーザの属性が、1番目のconjunctionを条件として満たすように決定される。属性の集合S1は、例えば、{東京都、男性、成人}のように表すことができる。
【0079】
また、式(3)で示すS2は、2番目のconjunctionに出現する属性iの集合を示し、コンテンツ配信対象とするユーザの属性が、2番目のconjunctionを条件として満たすように決定される。属性の集合S2は、例えば、{千葉県、成人}のように表すことができる。属性の集合S1={東京都、男性、成人}とのORをとると、東京都在住の成人男性と、千葉県在住の成人とを、それぞれ対象としたコンテンツを配信することができる。
【0080】
ここで、conjunctionの個数は、2個に限定されるものではなく、任意である。以下では、Sjと表記した場合、j番目のconjunctionに出現する属性iの集合を示すこととする。なお、アクセスポリシーAの構造の具体例については、後記するコンテンツ受信装置のユーザの属性の具体例にて説明する。
【0081】
コンテンツ鍵暗号化部(コンテンツ鍵暗号化手段)423は、入力されたコンテンツ鍵を暗号化して暗号化コンテンツ鍵を生成するものである。このコンテンツ鍵暗号化部423は、コンテンツ記憶部414に記憶されたコンテンツ鍵Mが入力されると共に、入力されたコンテンツ鍵Mを、ポリシー入力部422により入力されたアクセスポリシーAに含まれるconjunction(要素)毎に、当該conjunctionに含まれる各属性に対して発行された属性公開鍵PKiとシステム公開鍵PKとを用いて暗号化して暗号化コンテンツ鍵E(M)を生成する。コンテンツ鍵Mの暗号化アルゴリズムの例については後記する。
【0082】
コンテンツ結合部(コンテンツ結合手段)424は、コンテンツ鍵暗号化部423で生成した暗号化コンテンツ鍵E(M)とコンテンツ暗号化部413が生成した暗号化コンテンツE(C)とを結合してヘッダにアクセスポリシーAを追加することで、ヘッダ付き暗号化コンテンツHE(C)を生成するものである。
【0083】
このコンテンツ結合部424は、コンテンツ記憶部414に記憶された暗号化コンテンツE(C)に、暗号化コンテンツ鍵E(M)を結合してアクセスポリシーAを付加するので、ヘッダのみ平文である。そのため、この結合されたアクセスポリシーAを受信するコンテンツ受信装置5においては、当該コンテンツ受信装置5のユーザが、アクセスポリシーAを満たすか否かを迅速に判定することができる。なお、アクセスポリシーAの改ざんを検知するために、コンテンツサーバ4にて保護情報として公知の著作権保護方式の改ざん検知用情報をさらに付加し、コンテンツ受信装置5にて改ざん検知用情報を改ざんの判定に用いることとしてもよい。
【0084】
コンテンツ配信部(コンテンツ配信手段)425は、ヘッダ付き暗号化コンテンツHE(C)をコンテンツ受信装置5に配信するものである。なお、コンテンツCの配信形態については、ユーザのリクエストに応じてコンテンツCを配信するビデオオンデマンド(VoD)でもよいし、IP放送のようなマルチキャスト配信でもよいものとする。
【0085】
<コンテンツ受信装置>
図5に示すように、コンテンツ受信装置5は、コンテンツサーバが配信するヘッダ付き暗号化コンテンツHE(C)を受信するものであり、公開鍵記憶部51と、属性秘密鍵記憶部52と、ユーザ秘密鍵記憶部53と、コンテンツ受信部54と、コンテンツ分離部55と、復号判定部56と、コンテンツ鍵復号部57と、コンテンツ再生部58とを備えている。
【0086】
公開鍵記憶部51は、属性公開鍵PKiやシステム公開鍵PKを記憶するものであって、例えば、一般的なメモリから構成される。コンテンツ受信装置5は、リクエストに応じて属性鍵発行サーバ3から取得した各属性に対して発行された複数の属性公開鍵PKiを、公開鍵記憶部51に記憶している。例えば、コンテンツ受信装置5を利用するユーザが、コンテンツを受信するために、居住地と性別の2つの属性iを必要とする場合、2つの属性公開鍵を予め取得して記憶しておく。
【0087】
属性秘密鍵記憶部(属性秘密鍵記憶手段)52は、属性鍵発行サーバ3にてリクエストにより当該コンテンツ受信装置5のユーザの満たすべき属性iに対応して発行された属性秘密鍵SKi,Uを記憶したものであって、例えば、一般的なメモリから構成される。属性秘密鍵SKi,Uは、属性公開鍵PKiと同じ数だけ取得される。属性秘密鍵記憶部52に記憶された属性秘密鍵SKi,Uは、復号判定部56と、コンテンツ鍵復号部57とに出力される。
【0088】
この属性秘密鍵記憶部52は、内部に記録した情報が外部より読取不可能に構成された耐タンパー性を備えたモジュールであることが好ましい。例えば、コンテンツ受信装置5がテレビジョン受信機で構成される場合、属性秘密鍵記憶部52は、ICカード等によって構成されたセキュリティモジュールであってもよい。なお、属性秘密鍵記憶部52は、属性秘密鍵SKi,Uと共に属性公開鍵PKiを記憶するようにしてもよい。
【0089】
ユーザ秘密鍵記憶部(ユーザ秘密鍵記憶手段)53は、ユーザ鍵発行サーバ2により発行されたユーザ秘密鍵SKUを記憶したものであって、例えば、一般的なメモリから構成される。ユーザ秘密鍵記憶部53は、ユーザ秘密鍵SKUと共にユーザ公開鍵PKUを記憶するようにしてもよい。このユーザ秘密鍵記憶部53は、内部に記録した情報が外部より読取不可能に構成されたセキュリティモジュールであってもよい。
【0090】
コンテンツ受信部(コンテンツ受信手段)54は、コンテンツサーバ4からヘッダ付き暗号化コンテンツHE(C)を受信するものである。受信したヘッダ付き暗号化コンテンツHE(C)は、コンテンツ分離部55に出力される。
【0091】
コンテンツ分離部(コンテンツ分離手段)55は、コンテンツ受信部54が受信したヘッダ付き暗号化コンテンツHE(C)から、アクセスポリシーAと、暗号化コンテンツ鍵E(M)と、暗号化コンテンツE(C)とを分離するものである。ここで分離されたアクセスポリシーAは、復号判定部56に出力される。また、分離された暗号化コンテンツ鍵E(M)は、コンテンツ鍵復号部57に出力される。さらに、暗号化コンテンツE(C)は、コンテンツ再生部58に出力される。
【0092】
復号判定部(判定手段)56は、属性秘密鍵記憶部52に記憶された属性秘密鍵SKi,Uに基づいて、分離されたアクセスポリシーAに、当該コンテンツ受信装置5のユーザの満たすべき属性iの論理積でまとめられたconjunction(要素)が含まれるか否かを判定するものである。これにより、復号判定部56は、属性秘密鍵記憶部52に保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たしているかどうかをチェックする。復号判定部56は、保存されている属性秘密鍵SKi,UがアクセスポリシーAを満たしていると判定した場合、アクセスポリシーAのうちの満たしているj番目のconjunctionに含まれる各属性の情報をコンテンツ鍵復号部57に出力する。なお、アクセスポリシーAの構造におけるユーザの属性の具体例については後記する。
【0093】
コンテンツ鍵復号部(コンテンツ鍵復号手段)57は、アクセスポリシーAに当該コンテンツ受信装置5のユーザの満たすべき属性iが含まれる場合、ユーザ秘密鍵SKUと属性秘密鍵SKi,Uとシステム公開鍵PKとを用いて、暗号化コンテンツ鍵E(M)を復号するものである。このコンテンツ鍵復号部57は、属性秘密鍵記憶部52に保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たしている場合、当該属性秘密鍵SKi,Uおよびユーザ秘密鍵記憶部53に保存されているユーザ秘密鍵SKUを用いて、暗号化コンテンツ鍵E(M)を復号する。復号されたコンテンツ鍵Mは、コンテンツ再生部58に出力される。
【0094】
コンテンツ再生部(コンテンツ再生手段)58は、コンテンツ分離部55で分離した暗号化コンテンツE(C)を、コンテンツ鍵復号部57で復号したコンテンツ鍵Mによって復号することで、コンテンツを再生するものである。再生されたコンテンツCは図示しない出力部に出力される。
【0095】
[アクセス制御システムにおける処理のアルゴリズム]
<システムの初期化のアルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてユーザ鍵発行サーバ2が実行するシステム初期化のアルゴリズムについて図6を参照(適宜図2参照)して説明する。すなわち、システムの初期化を行う際に、システム公開鍵PKを生成するアルゴリズムの例について説明する。
【0096】
まず、ユーザ鍵発行サーバ2内のシステム公開鍵生成部211において、鍵長などのセキュリティパラメータを基に、素数位数pの双線形群Gを選択する(ステップS1)。ここで、「Gが双線形群である」とは、G上の群演算が効率的に求められ、群GTおよび効率的に計算可能な式(4)で示す双線形写像(ペアリング)eが存在するような群のことをいう。そして、システム公開鍵生成部211は、式(4)で示す双線形写像(ペアリング)eを選択する(ステップS2)。
【0097】
【数9】
【0098】
そして、システム公開鍵生成部211は、式(5)で示す生成元を選択する(ステップS3)。そして、システム公開鍵生成部211は、式(6)で示すシステム公開鍵PKを生成し(ステップS4)、システム公開鍵管理部212に保存する(ステップS5)。
【0099】
【数10】
【0100】
<ユーザ鍵の発行のアルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてユーザ鍵発行サーバ2が実行するユーザ鍵の発行のアルゴリズムについて図7を参照(適宜図2参照)して説明する。
ユーザ鍵発行サーバ2内のユーザ鍵生成部222において、ユーザ識別子Uを基に、乱数uをZp(0からp−1までの整数の集合)からランダムに選択する(ステップS11)。そして、ユーザ鍵生成部222は、式(7)に示すように、選択した乱数uを用いてユーザ識別子Uに対応するユーザ公開鍵PKUを生成する(ステップS12)。式(7)において、g1,hは、式(6)で示すシステム公開鍵PK中の生成元である。
【0101】
【数11】
【0102】
また、ユーザ鍵生成部222は、式(8)に示すように、選択した乱数uを用いてユーザ識別子Uに対応するユーザ秘密鍵SKUを生成する(ステップS13)。式(8)において、gは、式(6)で示すシステム公開鍵PK中の生成元である。
【0103】
【数12】
【0104】
そして、ユーザ鍵生成部222は、式(7)のユーザ公開鍵PKUと、式(8)のユーザ秘密鍵SKUとを要素とする式(9)に示すユーザ鍵<PKU,SKU>を当該ユーザに発行する(ステップS14)。
【0105】
【数13】
【0106】
<属性管理機関の初期化のアルゴリズム>
本発明の実施形態に係るアクセス制御システム1において属性鍵発行サーバ3が実行するAAの初期化のアルゴリズムについて図8を参照(適宜図3参照)して説明する。
属性鍵発行サーバ3の属性管理機関秘密鍵生成部311において、有限のハッシュ関数族から、式(10)に示すようにハッシュ関数Hxaを一様ランダムに選択する(ステップS21)。式(10)において、{0,1}*は任意の長さのビット列の集合を示している。また、Zpは、0からp−1までの整数の集合を示す。pは素数位数を示す。
【0107】
【数14】
【0108】
そして、属性管理機関秘密鍵生成部311は、式(11)に示すように、属性管理機関識別子がaである属性管理機関秘密鍵SKaを属性管理機関秘密鍵記憶部312に保存する(ステップS22)。式(11)において、xaは、式(10)に示すハッシュ関数のインデックスであり、xのサフィックスのaは、属性管理機関識別子である。
【0109】
【数15】
【0110】
<属性公開鍵PKiの発行アルゴリズム>
本発明の実施形態に係るアクセス制御システム1において属性鍵発行サーバ3が実行する属性公開鍵PKiの発行のアルゴリズムについて図9を参照(適宜図3参照)して説明する。なお、発行される属性公開鍵PKiは、2要素からなる。
【0111】
属性鍵発行サーバ3において、属性公開鍵リクエスト受信部321に、ユーザからのリクエスト(属性i)を入力する(ステップS31)。そして、属性公開鍵リクエスト受信部321において、ユーザからのリクエストに含まれる属性iを管理しているか否かを判別する(ステップS32)。リクエストに含まれる属性iを管理している場合(ステップS32:Yes)、属性公開鍵生成部322は、対応する属性公開鍵について式(12)に示す第1要素PK´i(PKプライムi)を生成する(ステップS33)と共に、式(13)に示す第2要素PK´´i(PKダブルプライムi)を生成する(ステップS34)。式(12)および式(13)において、g,hは、式(6)で示すシステム公開鍵PK中の生成元である。また、HSKa(i)は、gまたはhのべき乗を示す指数であって、式(10)のハッシュ関数における属性iのハッシュ値を示す。
【0112】
【数16】
【0113】
そして、属性公開鍵生成部322は、式(14)に示すように、第1要素と第2要素とを含む属性公開鍵PKiを生成する(ステップS35)。
【0114】
【数17】
【0115】
一方、前記ステップS32において、リクエストに含まれる属性iを管理していない場合(ステップS32:No)、属性公開鍵リクエスト受信部321は、「NULL」を出力する(ステップS36)。
【0116】
<属性秘密鍵SKi,Uの発行アルゴリズム>
本発明の実施形態に係るアクセス制御システム1において属性鍵発行サーバ3が実行する属性秘密鍵SKi,Uの発行のアルゴリズムについて図10を参照(適宜図3参照)して説明する。なお、発行される属性秘密鍵SKi,Uは、2要素からなる。
【0117】
まず、属性鍵発行サーバ3は、属性秘密鍵リクエスト受信部331に、ユーザからのリクエスト(属性i)を入力する(ステップS41)。そして、属性秘密鍵リクエスト受信部331は、ユーザからのリクエストに含まれる属性iを管理しているか否かを判別する(ステップS42)。属性iを管理していない場合(ステップS42:No)、属性秘密鍵リクエスト受信部331は、「NULL」を出力し(ステップS49)、処理を終了する。一方、属性iを管理している場合(ステップS42:Yes)、属性秘密鍵リクエスト受信部331において、ユーザからのリクエストに含まれる属性i、ユーザ識別子U、ユーザ公開鍵PKUを入力として(ステップS43)、ユーザ識別子Uで示されるユーザ(以下、単にユーザUという)が当該属性iを有しているか否かを判別する(ステップS44)。ここで、属性秘密鍵リクエスト受信部331は、ユーザ管理情報記憶部35に記憶されたユーザ管理情報を参照して、リクエストを送ったユーザが属性iを有しているか否かを判別する。
【0118】
前記ステップS44において、ユーザUが当該属性iを有している場合(ステップS44:Yes)、属性秘密鍵生成部332は、まず、乱数Ri,UをZp(0からp−1までの整数の集合)からランダムに生成する(ステップS45)。
そして、属性秘密鍵生成部332は、生成した乱数Ri,Uを用いて、対応する属性秘密鍵について式(15)に示す第1要素SK´iを生成する(ステップS46)と共に、式(16)に示す第2要素SK´´iを生成する(ステップS47)。式(15)および式(16)において、hバー,gは、式(6)で示すシステム公開鍵PK中の生成元である。また、HSKa(i)は、PKUのべき乗を示す指数である。
【0119】
【数18】
【0120】
そして、属性秘密鍵生成部332は、式(17)に示すように、第1要素と第2要素とを含む属性秘密鍵SKi,Uを生成する(ステップS48)。
【0121】
【数19】
【0122】
一方、前記ステップS44において、ユーザUが当該属性iを有していない場合(ステップS44:No)、属性秘密鍵リクエスト受信部331は、「NULL」を出力する(ステップS36)。つまり、属性鍵発行サーバ3がユーザからのリクエストに含まれる属性iを管理している場合であって、ユーザUが当該属性iを有していることが確認できた場合のみ、属性秘密鍵生成部332は、属性秘密鍵SKi,Uを生成してユーザに発行し、それ以外の場合は「NULL」を出力する。
【0123】
<コンテンツ鍵の暗号化アルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてコンテンツサーバ4が実行するコンテンツ鍵Mの暗号化のアルゴリズムについて図11を参照(適宜図4参照)して説明する。
【0124】
コンテンツサーバ4のコンテンツ鍵暗号化部423は、コンテンツ鍵Mを暗号化する際に、アクセスポリシーAのconjunction毎に暗号化を行う。まず、コンテンツ鍵暗号化部423は、アクセスポリシーAを基に、アクセスポリシーAのj番目のconjunctionに対応する乱数rjをZp(0からp−1までの整数の集合)からランダムに生成する(ステップS51)。
【0125】
そして、コンテンツ鍵暗号化部423は、アクセスポリシーAのj番目のconjunctionについて、属性公開鍵PKiを基に暗号化した4つの要素として、式(18)に示すEj、式(19)に示すE´j、式(20)に示すE´´j、式(21)に示すE´´´j(Eトリプルプライムj)を生成する(ステップS52)。式(18)〜式(21)においてe、g,g1,hバーは、式(6)で示すシステム公開鍵PKに含まれている。なお、属性公開鍵PKiは、前記した式(14)にて転開される。
【0126】
【数20】
【0127】
そして、コンテンツ鍵暗号化部423は、式(22)に示すように、アクセスポリシーAのj番目のconjunctionについて、式(18)〜式(21)に示す4つの要素を集約した部分暗号文を生成する(ステップS53)。
【0128】
【数21】
【0129】
そして、コンテンツ鍵暗号化部423は、前記したステップS51〜S53の手順を、アクセスポリシーAの全てのconjunctionに対して行い、各部分暗号文CT1〜CTn(nはアクセスポリシーAのconjunctionの総数)を生成し、式(23)に示すように、これらを要素として、暗号化する対象のメッセージであるコンテンツ鍵Mの暗号文CTを生成する(ステップS54)。
【0130】
【数22】
【0131】
なお、式(23)に示すコンテンツ鍵Mの暗号文CT、すなわち、暗号化コンテンツ鍵E(M)は、その後、暗号化コンテンツE(C)と結合されてヘッダにアクセスポリシーAを追加されたヘッダ付き暗号化コンテンツHE(C)としてユーザに配信される。
【0132】
<暗号化コンテンツ鍵の復号アルゴリズム>
本発明の実施形態に係るアクセス制御システム1においてコンテンツ受信装置5が実行する暗号化コンテンツ鍵の復号のアルゴリズムについて図12を参照(適宜図5参照)して説明する。まず、ユーザのコンテンツ受信装置5は、復号判定部56において、受信したヘッダ付き暗号化コンテンツHE(C)から分離されたアクセスポリシーAを入力として(ステップS61)、当該ユーザUの属性iが、受信した暗号文に含まれるアクセスポリシーAを満たしているかどうかチェックする(ステップS62)。ユーザUの属性iがアクセスポリシーAを満たす場合(ステップS62:Yes)、例えば当該ユーザUの属性iがアクセスポリシーAのj番目のconjunctionを満たしているものとすると、復号判定部56は、アクセスポリシーAの総数n個のconjunctionの中から、アクセスポリシーAを満たすj番目のconjunctionを選ぶ(ステップS63)。
【0133】
そして、コンテンツ受信装置5は、コンテンツ鍵復号部57において、選んだj番目のconjunctionについて、当該conjunctionに含まれる属性iに対応する属性秘密鍵SKi,Uとユーザ秘密鍵SKUとを用いて式(24)に示す復号の演算を実行する(ステップS64)。
【0134】
【数23】
【0135】
式(24)においてeは、式(6)で示すシステム公開鍵PKに含まれている。なお、SKi,Uプライム、および、SKi,Uダブルプライムは、式(17)にて転開される。
【0136】
コンテンツ鍵復号部57は、式(24)に示す復号の演算結果として、コンテンツ鍵Mの暗号文CTに含まれていたメッセージとして、コンテンツ鍵Mを出力する(ステップS65)。一方、前記ステップS62において、ユーザUの属性iがアクセスポリシーAを満たさない場合(ステップS62:No)、復号処理を行わずに、「NULL」を出力する(ステップS66)。
【0137】
[アクセス制御システムの動作]
<ユーザ鍵発行サーバの動作>
次に、ユーザ鍵発行サーバ2の動作について図13を参照(適宜図2参照)して説明する。ユーザ鍵発行サーバ2は、初期化の際に、システム初期化装置21において、システム公開鍵生成部211によって、システム公開鍵PKを生成する(ステップS201)。生成されたシステム公開鍵PKは、システム公開鍵管理部212に記憶される(ステップS202)。システム公開鍵管理部212は、システム公開鍵PKを公開する(ステップS203)。すなわち、誰でも外部のネットワークN経由でシステム公開鍵PKにアクセス可能となる。これにより、ユーザ鍵発行サーバ2の初期化は終了する。
【0138】
そして、ユーザ鍵発行サーバ2は、ユーザ鍵発行装置22のユーザ鍵リクエスト受信部221によって、ユーザからのリクエストを受信すると、ユーザ鍵生成部222によって、システム公開鍵PKとリクエストに含まれるユーザ識別子Uとを用いて、ユーザ公開鍵PKUおよびユーザ秘密鍵SKUを生成する(ステップS211)。生成されたユーザ公開鍵PKUおよびユーザ秘密鍵SKUは、ユーザ鍵管理部223に記憶される(ステップS212)。そして、ユーザ鍵管理部223は、リクエストのあったユーザに対し、ユーザ公開鍵PKUを発行すると共に、セキュアな通信手段を用いてユーザ秘密鍵SKUを発行する(ステップS213)。
【0139】
<属性鍵発行サーバの動作>
次に、属性鍵発行サーバ3の動作について図14を参照(適宜図3参照)して説明する。属性鍵発行サーバ3は、属性管理機関(AAi)を新規に設置する初期化の際に、ユーザ鍵発行サーバ2が公開したシステム公開鍵PKにアクセスして、システム公開鍵PKを取得し、システム公開鍵記憶部34に記憶する(ステップS301)。
属性鍵発行サーバ3は、属性管理機関初期化装置31において、属性管理機関秘密鍵生成部311によって、属性管理機関秘密鍵SKaを生成し、属性管理機関秘密鍵記憶部312に記憶する(ステップS302)。これにより、属性鍵発行サーバ3の初期化は終了する。
【0140】
そして、属性鍵発行サーバ3は、属性公開鍵発行装置32の属性公開鍵リクエスト受信部321によって、ユーザからのリクエストを受信すると(ステップS311)、属性公開鍵生成部322によって、システム公開鍵PKと、属性管理機関秘密鍵SKaと、リクエストに含まれる属性iとを用いて、属性公開鍵PKiを生成する(ステップS312)。なお、ここでのユーザは、コンテンツ受信装置5を利用するユーザだけではなく、コンテンツサーバ4を利用するサービスプロバイダも意味する。生成された属性公開鍵PKiは、属性公開鍵管理部323に記憶される(ステップS313)。そして、属性公開鍵管理部323は、属性公開鍵PKiを公開する(ステップS314)。すなわち、誰でも外部のネットワークN経由で属性公開鍵PKiにアクセス可能となる。なお、属性公開鍵管理部323は、リクエストのあったユーザに対し、属性公開鍵PKiを発行する。
【0141】
そして、属性鍵発行サーバ3は、属性秘密鍵発行装置33の属性公開鍵リクエスト受信部321によって、ユーザからのリクエストを受信すると、属性秘密鍵生成部332によって、システム公開鍵PKと、属性管理機関秘密鍵SKaと、リクエストにそれぞれ含まれる属性i,ユーザ識別子U,ユーザ公開鍵PKUとを用いて、属性秘密鍵SKi,Uを生成する(ステップS315)。なお、ここでのユーザは、コンテンツ受信装置5を利用するユーザを意味する。生成された属性秘密鍵SKi,Uは、属性秘密鍵管理部333に記憶される(ステップS316)。そして、属性秘密鍵管理部333は、リクエストのあったユーザに対し、セキュアな通信手段を用いて属性秘密鍵SKi,Uを発行する(ステップS317)。なお、属性秘密鍵管理部333は、属性秘密鍵SKi,Uのリクエストのあったユーザに対し、セキュアな通信手段を用いて属性秘密鍵SKi,Uおよび属性公開鍵PKiを同時に発行してもよい。
【0142】
<コンテンツサーバの動作>
次に、コンテンツサーバ4の動作について図15を参照(適宜図4参照)して説明する。コンテンツサーバ4は、初期化の際に、ユーザ鍵発行サーバ2が公開したシステム公開鍵PKにアクセスして、システム公開鍵PKを取得し、公開鍵記憶部421に記憶する(ステップS401)。また、コンテンツサーバ4は、属性鍵発行サーバ3にリクエストを送って属性公開鍵PKiを取得し、公開鍵記憶部421に記憶する(ステップS402)。これにより、コンテンツサーバ4の初期化は終了する。ただし、本実施形態は、この方法に限定されるものではない。すなわち、コンテンツサーバ4が、初期化の際に予め全ての属性iに対応するPKiを入手しなくても、暗号化する毎に入手すればよい。それは、サービスプロバイダで暗号化コンテンツを暗号化する際には、まず、ポリシーを決定し、それから該当する属性公開鍵PKiを入手するのが通常だからである。なお、ここでは、一例として、初期化の際に、コンテンツサーバ4が、予め全ての属性iに対応するPKiを入手するものとして説明する。
【0143】
コンテンツサーバ4は、コンテンツ暗号化装置41において、次のステップS411〜S414の処理を実行する。まず、コンテンツ暗号化装置41は、コンテンツ入力部411によって、コンテンツCを入力する(ステップS411)。そして、コンテンツ暗号化装置41は、コンテンツ鍵生成部412によって、コンテンツ鍵Mを生成する(ステップS412)。そして、コンテンツ暗号化装置41は、コンテンツ暗号化部413によって、コンテンツCをコンテンツ鍵Mによって暗号化することで、暗号化コンテンツE(C)を生成する(ステップS413)。生成された暗号化コンテンツE(C)およびコンテンツ鍵Mは、コンテンツ記憶部414に蓄積される(ステップS414)。
【0144】
コンテンツサーバ4は、コンテンツ配信装置42において、次のステップS421〜S424の処理を実行する。まず、コンテンツ配信装置42は、ポリシー入力部422によって、復号を許可するユーザの属性iに関するアクセスポリシーAを入力する(ステップS421)。そして、コンテンツ配信装置42は、コンテンツ鍵暗号化部423によって、アクセスポリシーAに対応する属性公開鍵PKi、およびアクセスポリシーAを用いて、コンテンツ記憶部414に保存されているコンテンツ鍵Mを暗号化する(ステップS422)。そして、コンテンツ配信装置42は、コンテンツ結合部424は、暗号化コンテンツ鍵E(M)と、コンテンツ記憶部414に保存されている暗号化コンテンツE(C)とを結合し、ヘッダにアクセスポリシーAを追加することで、ヘッダ付き暗号化コンテンツHE(C)を生成する。(ステップS423)。そして、コンテンツ配信装置42は、コンテンツ配信部425bによって、ユーザのコンテンツ受信装置5に対しヘッダ付き暗号化コンテンツHE(C)を配信する(ステップS424)。
【0145】
<コンテンツ受信装置の動作>
次に、コンテンツ受信装置5の動作について図16を参照(適宜図5参照)して説明する。コンテンツ受信装置5は、初期化の際に、ユーザ鍵発行サーバ2が公開したシステム公開鍵PKにアクセスして、システム公開鍵PKを取得し、公開鍵記憶部51に記憶する(ステップS501)。また、コンテンツ受信装置5は、リクエストによりユーザ鍵発行サーバ2が発行したユーザ鍵(ユーザ公開鍵PKUおよびユーザ秘密鍵SKU)を取得し、ユーザ鍵をユーザ秘密鍵記憶部53に記憶する(ステップS502)。また、コンテンツ受信装置5は、属性鍵を要求するリクエストを属性鍵発行サーバ3に送る(ステップS503)。コンテンツ受信装置5は、リクエストにより公開された属性公開鍵PKiを取得し、公開鍵記憶部51に記憶する(ステップS504)。また、コンテンツ受信装置5は、リクエストにより発行された属性秘密鍵SKi,Uを取得し、属性秘密鍵記憶部52に記憶する(ステップS505)。なお、属性公開鍵PKiを属性秘密鍵SKi,Uと共に取得し、属性秘密鍵記憶部52に記憶するようにしてもよい。これにより、コンテンツ受信装置5の初期化は終了する。
【0146】
コンテンツ受信装置5は、コンテンツ受信部54において、コンテンツサーバ4から配信されたヘッダ付き暗号化コンテンツHE(C)を受信すると、コンテンツ分離部55において、ヘッダ部分に記載のアクセスポリシーAおよび暗号化コンテンツ鍵E(M)を抽出する(ステップS511)。
【0147】
そして、コンテンツ受信装置5は、復号判定部56によって、属性秘密鍵記憶部52に保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たしているか否かを判定する(ステップS512)。すなわち、アクセスポリシーAに、当該コンテンツ受信装置5のユーザの満たすべき属性iの論理積の要素が含まれるか否かを判定する。
【0148】
保存されている属性秘密鍵SKi,Uが当該アクセスポリシーAを満たす場合(ステップS512:Yes)、コンテンツ受信装置5は、コンテンツ鍵復号部57によって、当該属性秘密鍵SKi,Uおよびユーザ秘密鍵記憶部53に保存されているユーザ秘密鍵SKUを用いて、ヘッダ付き暗号化コンテンツHE(C)から分離した暗号化コンテンツ鍵E(M)を復号し、コンテンツ鍵Mを得る(ステップS513)。
コンテンツ受信装置5は、復号したコンテンツ鍵Mを用いて、ヘッダ付き暗号化コンテンツHE(C)から分離した暗号化コンテンツE(C)を復号し、コンテンツCを再生する(ステップS514)。
【0149】
前記ステップS512において、属性秘密鍵記憶部52に保存されている、属性秘密鍵SKi,Uが当該アクセスポリシーAを満たさない場合(ステップS512:No、コンテンツ受信装置5は、コンテンツを再生することなく処理を終了する。
【0150】
[ユーザの属性の具体例]
次に、本発明の実施形態に係るコンテンツ受信装置のユーザの属性の具体例について図17を参照(適宜図1参照)して説明する。図1に示すアクセス制御システム1において、例えば、AAの属性鍵発行サーバ3にて、ユーザの居住地の属性が都道府県単位で管理されているものとする。そして、ユーザ鍵発行サーバ2、属性鍵発行サーバ3、コンテンツサーバ4、およびコンテンツ受信装置5にて、それぞれ初期化が行われて、それぞれが必要な鍵を取得して保存しているものとする。
【0151】
この前提において、図17に示すように、あるコンテンツを配信する1つのコンテンツサーバ4と、ネットワークNに接続された5台のコンテンツ受信装置5(5a,5b,5c,5d,5e)とを想定して、具体例を説明する。ここでは、サービスプロバイダにて、四国在住の女性のユーザのみコンテンツCの視聴を許可する場合を想定する。
サービスプロバイダのコンテンツサーバ4に入力されるアクセスポリシーAは、居住地の属性と性別の属性とを用いて、式(25)のように記述される。
【0152】
A=(香川県∧女性)∨(徳島県∧女性)∨(愛媛県∧女性)∨(高知県∧女性)
… 式(25)
【0153】
コンテンツ受信装置5aのユーザUaは、例えば香川県に居住する女性であるものとする。ここでは、図17に示すように、このユーザUaにおいて、居住地の属性と性別の属性とを、属性i1=「香川県」、属性i2=「女性」と表記することとする。
また、コンテンツ受信装置5bのユーザUbは、属性i3=「徳島県」、属性i4=「女性」であるものとする。
また、コンテンツ受信装置5cのユーザUcは、属性i5=「愛媛県」、属性i6=「女性」であるものとする。
また、コンテンツ受信装置5dのユーザUdは、属性i7=「高知県」、属性i8=「女性」であるものとする。
また、コンテンツ受信装置5eのユーザUeは、属性i9=「香川県」、属性i10=「男性」であるものとする。
【0154】
図17に示すコンテンツサーバ4は、予め取得したシステム公開鍵PKおよび属性公開鍵PKiと、生成したコンテンツ鍵とを保有している。また、コンテンツ受信装置5aは、システム公開鍵PKと、ユーザUaのユーザ鍵=<ユーザ公開鍵PKU,ユーザ秘密鍵SKU>と、属性公開鍵PKiと、ユーザUaの属性秘密鍵SKi,Uとを保有している。なお、図示を省略するが、他のコンテンツ受信装置5b〜5eにも同様にユーザに対応した各鍵が記憶されているものとする。
【0155】
前記した式(25)のアクセスポリシーAは、式(26)のように書き換えられる。
また、アクセスポリシーAのj=1〜4番目のconjunctionに出現する属性iの集合は、それぞれ式(27)、式(28)、式(29)、式(30)で表される。
【0156】
【数24】
【0157】
コンテンツ受信装置5aは、受信した暗号文から、式(26)に示すアクセスポリシーAを分離する。ここで、ユーザUaの属性i1,i2は、式(26)に示すアクセスポリシーAのj=1番目のconjunctionを満たしている。したがって、コンテンツ受信装置5aは、アクセスポリシーAのj=1番目のconjunctionを選び、属性i1に対応する属性秘密鍵SKi1,Uと、属性i2に対応する属性秘密鍵SKi2,Uと、ユーザ秘密鍵SKUaとを用いて前記した式(24)に示す復号の演算を実行する。
【0158】
また、コンテンツ受信装置5bは、アクセスポリシーAのj=2番目のconjunctionを選び、属性i3に対応する属性秘密鍵SKi3,Uと、属性i4に対応する属性秘密鍵SKi4,Uと、ユーザ秘密鍵SKUbとを用いて前記した式(24)に示す復号の演算を実行する。
同様に、コンテンツ受信装置5cは、アクセスポリシーAのj=3番目のconjunctionを選び、コンテンツ受信装置5dは、アクセスポリシーAのj=4番目のconjunctionを選び、復号によりコンテンツ鍵Mを得る。
一方、コンテンツ受信装置5eを利用するユーザUeの属性i9,i10の組み合わせは、式(26)に示すアクセスポリシーAを満たさない。したがって、コンテンツ受信装置5eは、アクセスポリシーAにしたがって、暗号文の復号を行わない。
これにより、四国在住の女性のユーザのみコンテンツCを視聴できることとなる。
【0159】
本実施形態に係るアクセス制御システム1は、放送波Wもしくはインターネット、専用IP回線等のネットワークNを利用したコンテンツ配信サービスにおいて、サービスプロバイダが、コンテンツの復号を許可するユーザを限定して暗号化コンテンツを配信したい場合に、個々のユーザを直接指定することなく、ユーザの満たすべき属性iの条件を記述したアクセスポリシーAに基づいてコンテンツの暗号化を行うことができる。
【0160】
これにより、サービスプロバイダがコンテンツ配信サービスを行う際のアクセス制御を容易に実現できる。例えば、「居住地」をユーザの属性iとして用いることにより、特定の地域に住む視聴者のみを対象としたコンテンツ配信サービスを実現できる。また、例えば、「年齢」をユーザの属性iとして用いることにより、年齢制限を設けたコンテンツ配信サービスを実現できる。さらに、例えば、「会員種別」をユーザの属性iとして用いることにより、会員限定のプレミアムコンテンツ配信サービスを実現できる。このように、ユーザの属性iに応じたきめ細かなコンテンツ配信サービスを提供できる。
【0161】
また、本実施形態に係るアクセス制御システム1は、任意の数のAAによる属性秘密鍵SKi,Uの発行が可能であるため、各々のAAの管理コストを削減できると共に、新たなAAの設置も容易となる。
【0162】
さらに、実施形態に係るアクセス制御システム1は、単独で暗号文を復号できる機関が存在しないため、従来よりも安全なアクセス制御システム1を構築でき、サービスプロバイダが提供するコンテンツ配信サービスをユーザが安心して利用できる。
【0163】
以上、実施形態に基づいて本発明を説明したが、本発明はこれに限定されるものではない。例えば、コンテンツ受信装置5は、ネットワークNからコンテンツを受信するものとしたが、放送事業者の放送局に設けたコンテンツサーバ4から送信された放送波Wによりコンテンツを受信するものとしてもよい。この場合には、コンテンツ受信装置5は、例えば、デジタル放送を受信するチューナを備え、CAS(Conditional Access System)カードにユーザ秘密鍵SKUや属性秘密鍵SKi,Uを記録してもよい。
【0164】
また、本実施形態では、ユーザ鍵発行サーバ2のユーザ鍵管理部223と、属性鍵発行サーバ3の属性秘密鍵管理部333とは、セキュアな通信手段を用いることとしたが、ユーザ鍵や属性秘密鍵をオフライン(例えば郵送等)にてユーザに発行するようにしてもよい。
【0165】
また、例えば、コンテンツサーバ4は、一般的なコンピュータを、前記した各手段として機能させるプログラム(コンテンツ配信プログラム)により動作させることで実現することができる。コンテンツ受信装置5は、一般的なコンピュータを、前記した各手段として機能させるプログラム(コンテンツ受信プログラム)により動作させることで実現することができる。これらコンテンツ配信プログラムやコンテンツ受信プログラムは、通信回線を介して配布することも可能であるし、DVDやCD−ROM等の記録媒体に書き込んで配布することも可能である。
【0166】
一般に、デジタル放送受信機は、デジタル放送で送られてくるデータをダウンロードして自動的に受信機のソフトウェアプログラムを更新させる機能があるので、デジタル放送受信機が前記コンテンツ受信プログラムを取り込んだ場合、このアクセス制御システム1のコンテンツ受信装置5として機能させることができる。
【符号の説明】
【0167】
1 アクセス制御システム
2 ユーザ鍵発行サーバ
21 システム初期化装置
211 システム公開鍵生成部(システム公開鍵生成手段)
212 システム公開鍵管理部
22 ユーザ鍵発行装置
221 ユーザ鍵リクエスト受信部
222 ユーザ鍵生成部(ユーザ鍵生成手段)
223 ユーザ鍵管理部
3 属性鍵発行サーバ
31 属性管理機関初期化装置
311 属性管理機関秘密鍵生成部(属性管理機関秘密鍵生成手段)
312 属性管理機関秘密鍵記憶部
32 属性公開鍵発行装置
321 属性公開鍵リクエスト受信部
322 属性公開鍵生成部(属性公開鍵生成手段)
323 属性公開鍵管理部
33 属性秘密鍵発行装置
331 属性秘密鍵リクエスト受信部
332 属性秘密鍵生成部(属性秘密鍵生成手段)
333 属性秘密鍵管理部
34 システム公開鍵記憶部
35 ユーザ管理情報記憶部
4 コンテンツサーバ
41 コンテンツ暗号化装置
411 コンテンツ入力部
412 コンテンツ鍵生成部
413 コンテンツ暗号化部(コンテンツ暗号化手段)
414 コンテンツ記憶部
42 コンテンツ配信装置
421 公開鍵記憶部
422 ポリシー入力部(ポリシー入力手段)
423 コンテンツ鍵暗号化部(コンテンツ鍵暗号化手段)
424 コンテンツ結合部(コンテンツ結合手段)
425 コンテンツ配信部(コンテンツ配信手段)
5 コンテンツ受信装置
51 公開鍵記憶部
52 属性秘密鍵記憶部(属性秘密鍵記憶手段)
53 ユーザ秘密鍵記憶部(ユーザ秘密鍵記憶手段)
54 コンテンツ受信部(コンテンツ受信手段)
55 コンテンツ分離部(コンテンツ分離手段)
56 復号判定部(判定手段)
57 コンテンツ鍵復号部(コンテンツ鍵復号手段)
58 コンテンツ再生部(コンテンツ再生手段)
N ネットワーク
【特許請求の範囲】
【請求項1】
ユーザ鍵としてのユーザ公開鍵およびユーザ秘密鍵とシステム公開鍵とを発行するユーザ鍵発行サーバと、属性毎の属性公開鍵および当該属性に対応したユーザ毎の属性秘密鍵を発行する複数の属性鍵発行サーバと、コンテンツを配信するコンテンツサーバと、ユーザによって使用され前記コンテンツを受信するコンテンツ受信装置とを備え、前記コンテンツにアクセスできる条件としてユーザの属性を用いて前記コンテンツを提供する側にて予め作成されたアクセスポリシーに基づいて前記コンテンツへのアクセスを制御するアクセス制御システムにおける前記コンテンツサーバであって、
入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成するコンテンツ暗号化手段と、
前記アクセスポリシーを入力するポリシー入力手段と、
入力された前記コンテンツ鍵を暗号化して暗号化コンテンツ鍵を生成するコンテンツ鍵暗号化手段と、
前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成するコンテンツ結合手段と、
前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信するコンテンツ配信手段と、を備え、
前記コンテンツ鍵暗号化手段は、
前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された下記の式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について下記の式(22)に示す部分暗号文CTjを生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、下記の式(23)に示す暗号文CTを生成することを特徴とするコンテンツサーバ。
【数1】
【請求項2】
請求項1に記載のコンテンツサーバを備えるアクセス制御システムにおいて前記コンテンツサーバが配信する前記コンテンツを受信する前記コンテンツ受信装置であって、
当該コンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を記憶した属性秘密鍵記憶手段と、
前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵を記憶したユーザ秘密鍵記憶手段と、
前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信するコンテンツ受信手段と、
前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である前記式(23)に示す暗号文CTと、を分離するコンテンツ分離手段と、
前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する判定手段と、
前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する下記の式(17)に示す属性秘密鍵SKi,U,と、下記の式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、下記の式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号するコンテンツ鍵復号手段と、
前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生するコンテンツ再生手段と、
を備えることを特徴とするコンテンツ受信装置。
【数2】
【請求項3】
請求項1に記載のコンテンツサーバまたは請求項2に記載のコンテンツ受信装置を備えるアクセス制御システムにおいて、属性管理機関に設置され、前記コンテンツサーバまたは前記コンテンツ受信装置で用いる前記属性鍵を発行する前記属性鍵発行サーバであって、
当該属性管理機関を識別する属性管理機関識別子aおよび前記システム公開鍵を用いて当該属性管理機関に固有の属性管理機関秘密鍵SKaを生成する属性管理機関秘密鍵生成手段と、
前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性を含むリクエストとを用いて、前記式(14)に示す属性毎の前記属性公開鍵PKiを生成する属性公開鍵生成手段と、
前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性、ユーザ識別子Uおよび前記ユーザ公開鍵を含むリクエストとを用いて、下記の式(17)に示す当該属性のユーザ毎の前記属性秘密鍵を生成する属性秘密鍵生成手段と、
を備えることを特徴とする属性鍵発行サーバ。
【数3】
【請求項4】
請求項1に記載のコンテンツサーバ、請求項2に記載のコンテンツ受信装置または請求項3に記載の属性鍵発行サーバを備えるアクセス制御システムにおいて、ユーザ管理機関に設置され、前記コンテンツサーバ、前記コンテンツ受信装置、または前記属性鍵発行サーバで用いる前記システム公開鍵を生成する前記ユーザ鍵発行サーバであって、
素数位数pの双線形群Gと、双線形写像e:G×G→GTと、Gからランダムに選択された下記の式(5)で示す生成元とを用いて、下記の式(6)に示す前記システム公開鍵PKを生成するシステム公開鍵生成手段と、
当該アクセス制御システムのユーザを識別するユーザ識別子Uと、前記システム公開鍵PKとを用いて、下記の式(9)に示すユーザ毎に異なる鍵として発行する前記ユーザ公開鍵PKUおよび前記ユーザ秘密鍵SKUを生成するユーザ鍵生成手段(222)と、
を備えることを特徴とするユーザ鍵発行サーバ。
【数4】
【請求項5】
請求項1に記載のコンテンツサーバと、請求項2に記載のコンテンツ受信装置と、請求項3に記載の属性鍵発行サーバと、請求項4に記載のユーザ鍵発行サーバと、を備えることを特徴とするアクセス制御システム。
【請求項6】
請求項1に記載のコンテンツサーバであるコンピュータを、
入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成するコンテンツ暗号化手段、
前記アクセスポリシーを入力するポリシー入力手段、
前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された前記式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について前記式(22)に示す部分暗号文を生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、前記式(23)に示す暗号文CTを生成するコンテンツ鍵暗号化手段、
前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成するコンテンツ結合手段、
前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信するコンテンツ配信手段
として機能させるためのコンテンツ配信プログラム。
【請求項7】
請求項1に記載のコンテンツサーバが配信する前記コンテンツを受信するコンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を記憶した属性秘密鍵記憶手段と、前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵を記憶したユーザ秘密鍵記憶手段とを備えた請求項2に記載のコンテンツ受信装置であるコンピュータを、
前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信するコンテンツ受信手段、
前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である前記式(23)に示す暗号文CTと、を分離するコンテンツ分離手段、
前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する判定手段、
前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する前記式(17)に示す属性秘密鍵SKi,U,と、前記式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、前記式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号するコンテンツ鍵復号手段、
前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生するコンテンツ再生手段、
として機能させるためのコンテンツ受信プログラム。
【請求項1】
ユーザ鍵としてのユーザ公開鍵およびユーザ秘密鍵とシステム公開鍵とを発行するユーザ鍵発行サーバと、属性毎の属性公開鍵および当該属性に対応したユーザ毎の属性秘密鍵を発行する複数の属性鍵発行サーバと、コンテンツを配信するコンテンツサーバと、ユーザによって使用され前記コンテンツを受信するコンテンツ受信装置とを備え、前記コンテンツにアクセスできる条件としてユーザの属性を用いて前記コンテンツを提供する側にて予め作成されたアクセスポリシーに基づいて前記コンテンツへのアクセスを制御するアクセス制御システムにおける前記コンテンツサーバであって、
入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成するコンテンツ暗号化手段と、
前記アクセスポリシーを入力するポリシー入力手段と、
入力された前記コンテンツ鍵を暗号化して暗号化コンテンツ鍵を生成するコンテンツ鍵暗号化手段と、
前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成するコンテンツ結合手段と、
前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信するコンテンツ配信手段と、を備え、
前記コンテンツ鍵暗号化手段は、
前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された下記の式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について下記の式(22)に示す部分暗号文CTjを生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、下記の式(23)に示す暗号文CTを生成することを特徴とするコンテンツサーバ。
【数1】
【請求項2】
請求項1に記載のコンテンツサーバを備えるアクセス制御システムにおいて前記コンテンツサーバが配信する前記コンテンツを受信する前記コンテンツ受信装置であって、
当該コンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を記憶した属性秘密鍵記憶手段と、
前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵を記憶したユーザ秘密鍵記憶手段と、
前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信するコンテンツ受信手段と、
前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である前記式(23)に示す暗号文CTと、を分離するコンテンツ分離手段と、
前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する判定手段と、
前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する下記の式(17)に示す属性秘密鍵SKi,U,と、下記の式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、下記の式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号するコンテンツ鍵復号手段と、
前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生するコンテンツ再生手段と、
を備えることを特徴とするコンテンツ受信装置。
【数2】
【請求項3】
請求項1に記載のコンテンツサーバまたは請求項2に記載のコンテンツ受信装置を備えるアクセス制御システムにおいて、属性管理機関に設置され、前記コンテンツサーバまたは前記コンテンツ受信装置で用いる前記属性鍵を発行する前記属性鍵発行サーバであって、
当該属性管理機関を識別する属性管理機関識別子aおよび前記システム公開鍵を用いて当該属性管理機関に固有の属性管理機関秘密鍵SKaを生成する属性管理機関秘密鍵生成手段と、
前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性を含むリクエストとを用いて、前記式(14)に示す属性毎の前記属性公開鍵PKiを生成する属性公開鍵生成手段と、
前記システム公開鍵と、前記属性管理機関秘密鍵SKaと、前記ユーザから取得した属性、ユーザ識別子Uおよび前記ユーザ公開鍵を含むリクエストとを用いて、下記の式(17)に示す当該属性のユーザ毎の前記属性秘密鍵を生成する属性秘密鍵生成手段と、
を備えることを特徴とする属性鍵発行サーバ。
【数3】
【請求項4】
請求項1に記載のコンテンツサーバ、請求項2に記載のコンテンツ受信装置または請求項3に記載の属性鍵発行サーバを備えるアクセス制御システムにおいて、ユーザ管理機関に設置され、前記コンテンツサーバ、前記コンテンツ受信装置、または前記属性鍵発行サーバで用いる前記システム公開鍵を生成する前記ユーザ鍵発行サーバであって、
素数位数pの双線形群Gと、双線形写像e:G×G→GTと、Gからランダムに選択された下記の式(5)で示す生成元とを用いて、下記の式(6)に示す前記システム公開鍵PKを生成するシステム公開鍵生成手段と、
当該アクセス制御システムのユーザを識別するユーザ識別子Uと、前記システム公開鍵PKとを用いて、下記の式(9)に示すユーザ毎に異なる鍵として発行する前記ユーザ公開鍵PKUおよび前記ユーザ秘密鍵SKUを生成するユーザ鍵生成手段(222)と、
を備えることを特徴とするユーザ鍵発行サーバ。
【数4】
【請求項5】
請求項1に記載のコンテンツサーバと、請求項2に記載のコンテンツ受信装置と、請求項3に記載の属性鍵発行サーバと、請求項4に記載のユーザ鍵発行サーバと、を備えることを特徴とするアクセス制御システム。
【請求項6】
請求項1に記載のコンテンツサーバであるコンピュータを、
入力された前記コンテンツを共通鍵であるコンテンツ鍵によって暗号化することで、暗号化コンテンツを生成するコンテンツ暗号化手段、
前記アクセスポリシーを入力するポリシー入力手段、
前記アクセスポリシーの要素数をnとしたときに、前記システム公開鍵と、入力された前記アクセスポリシーに含まれるj番目の要素に含まれる属性iに対して発行された前記式(14)に示す前記属性公開鍵PKiとを用いて、入力された前記コンテンツ鍵Mを前記アクセスポリシーに含まれる前記要素毎に暗号化し、当該j番目の要素について前記式(22)に示す部分暗号文を生成し、前記アクセスポリシーの全ての要素から求めた各部分暗号文CT1〜CTnを生成し、前記暗号化コンテンツ鍵として、前記式(23)に示す暗号文CTを生成するコンテンツ鍵暗号化手段、
前記コンテンツ鍵暗号化手段で生成した前記暗号化コンテンツ鍵と前記コンテンツ暗号化手段が生成した前記暗号化コンテンツとを結合してヘッダに前記アクセスポリシーを追加することで、ヘッダ付き暗号化コンテンツを生成するコンテンツ結合手段、
前記ヘッダ付き暗号化コンテンツを前記コンテンツ受信装置に配信するコンテンツ配信手段
として機能させるためのコンテンツ配信プログラム。
【請求項7】
請求項1に記載のコンテンツサーバが配信する前記コンテンツを受信するコンテンツ受信装置のユーザの満たすべき属性に対応して前記属性鍵発行サーバにて発行された前記属性秘密鍵を記憶した属性秘密鍵記憶手段と、前記ユーザ鍵発行サーバにより発行された前記ユーザ秘密鍵を記憶したユーザ秘密鍵記憶手段とを備えた請求項2に記載のコンテンツ受信装置であるコンピュータを、
前記コンテンツサーバから前記ヘッダ付き暗号化コンテンツを受信するコンテンツ受信手段、
前記コンテンツ受信手段が受信した前記ヘッダ付き暗号化コンテンツから、前記アクセスポリシーと、前記暗号化コンテンツと、前記暗号化コンテンツ鍵である前記式(23)に示す暗号文CTと、を分離するコンテンツ分離手段、
前記属性秘密鍵に基づいて、前記アクセスポリシーの要素に、当該コンテンツ受信装置のユーザの満たすべき属性が含まれるか否かを判定し、含まれる場合、当該j番目の要素を選択する判定手段、
前記アクセスポリシーのj番目の要素が選択された場合、当該要素に含まれる属性iに対応する前記式(17)に示す属性秘密鍵SKi,U,と、前記式(9)に示すユーザ秘密鍵SKUと前記システム公開鍵とを用いて、前記式(24)に示す復号の演算を実行し、前記暗号化コンテンツ鍵を復号するコンテンツ鍵復号手段、
前記コンテンツ分離手段で分離した前記暗号化コンテンツを、前記コンテンツ鍵復号手段で復号した前記コンテンツ鍵によって復号することで、前記コンテンツを再生するコンテンツ再生手段、
として機能させるためのコンテンツ受信プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2012−39244(P2012−39244A)
【公開日】平成24年2月23日(2012.2.23)
【国際特許分類】
【出願番号】特願2010−175481(P2010−175481)
【出願日】平成22年8月4日(2010.8.4)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り (1)社団法人電子情報通信学会から2010年6月24日に発行された刊行物「電子情報通信学会技術研究報告」において発表 (2)社団法人電子情報通信学会が2010年7月1日〜2日に開催した「情報セキュリティ研究会」において2010年7月2日に文書をもって発表
【出願人】(000004352)日本放送協会 (2,206)
【Fターム(参考)】
【公開日】平成24年2月23日(2012.2.23)
【国際特許分類】
【出願日】平成22年8月4日(2010.8.4)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り (1)社団法人電子情報通信学会から2010年6月24日に発行された刊行物「電子情報通信学会技術研究報告」において発表 (2)社団法人電子情報通信学会が2010年7月1日〜2日に開催した「情報セキュリティ研究会」において2010年7月2日に文書をもって発表
【出願人】(000004352)日本放送協会 (2,206)
【Fターム(参考)】
[ Back to top ]