(57)【要約】  この発明は、結託攻撃に対し耐性を確保するとともに、各スケーラビリティの階層にそれぞれ対応した暗号鍵の鍵長を低減させる暗号鍵生成装置に関する。当該暗号鍵生成装置(400)において、入力手段(450)により取り込まれたマスター鍵(K2,2)は記録手段(470)に一旦記録される。マトリクス生成手段(462)は、鍵分割手段(461)がマスター鍵(K2,2)を分割することにより得られた分割鍵(ｅR2,ｅR1,ｅR3)ごとに鍵要素マトリクス(M1〜M3)を生成する。鍵要素マトリクス(M1〜M3)の各座標成分には、スケーラビリティ(L)の階層性が保持されるよう、一方向性ハッシュ関数を利用したハッシュ演算が繰り返されることにより順次得られた演算データが割り当てられる。鍵生成手段(463)は、鍵要素マトリクス(M1〜M3)に基づいてスケーラビリティ(R,L)の各階層に対応した部分鍵(K1,1〜K2,2)を生成する。これら部分鍵(K1,1〜K2,2)は、出力手段(480)により符号化手段(410)又は複合化手段(420)に出力される。
2010125654.tif 000002
【特許請求の範囲】
【請求項１】
複数種類（≧２）の階層的スケーラビリティを有するディジタルデータの配信サービスを提供する通信システムに適用され、該ディジタルデータに対する符号化及び復号化に利用される暗号鍵を生成するための暗号鍵生成装置であって、
前記複数種類のスケーラビリティから選択された第１及び第２スケーラビリティそれぞれにおいて、前記通信システムにおいて許可されているサービスレベルを満たす階層のうち最下位に位置する階層のデータ単位の符号化及び復号化に利用される暗号鍵を取り込むための入力手段と、
前記入力手段により取り込まれた暗号鍵を、マスター鍵として記録する記録手段と、
前記第１及び第２スケーラビリティのうち基準スケーラビリティとして設定された第１スケーラビリティの階層数で前記記録手段から読み出された前記マスター鍵を分割することにより、該第１スケーラビリティの各階層に対応した分割鍵を生成する鍵分割手段と、
前記第１及び第２スケーラビリティにおける階層値で座標表現された鍵要素マトリクスを前記第１スケーラビリティの階層ごとに生成するに当たり、前記鍵分割手段により生成された前記分割鍵のうち一の分割鍵に基づいて生成される鍵要素マトリクスについて、少なくとも、該一の分割鍵に対応する第１スケーラビリティにおける階層であって前記第２スケーラビリティにおける最下位階層から最上位階層のそれぞれ対応する座標成分に、一方向性ハッシュ関数を利用した該一の分割鍵のハッシュ演算を繰り返すことにより順次得られた演算データを割り当てるマトリクス生成手段と、
前記マトリクス生成手段により生成された前記鍵要素マトリクス間で座標一致している鍵要素を結合させることにより、前記第１及び第２スケーラビリティにおける階層それぞれのデータ単位に対応した部分鍵を生成する鍵生成手段と、そして、
前記鍵生成手段により生成された部分鍵を、前記ディジタルデータの符号化及び複合化の少なくともいずれかを行う装置へ出力する出力手段と、を備えた暗号鍵生成装置。
【請求項２】
前記鍵分割手段は、前記基準スケーラビリティとして、前記第1及び第２スケーラビリティのうち階層数の少ないスケーラビリティを選択することを特徴とする請求項１記載の暗号鍵生成装置。
【請求項３】
前記マトリクス生成手段は、前記分割鍵のうち一の分割鍵に基づいて生成される鍵要素マトリクスの成分情報として、該一の分割鍵に対応する第１スケーラビリティにおける階層よりも下位に位置する階層であって前記第２スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分に、該一の分割鍵の階層について順次得られた演算データと同一演算データを割り当てる一方、該一の分割鍵に対応する第１スケーラビリティにおける階層よりも上位に位置する階層であって前記第２スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分すべてに、該一の分割鍵に対応する階層の鍵要素のうち前記第２スケーラビリティの最上位階層の鍵要素について一方向性ハッシュ関数を利用したハッシュ演算により得られる演算データを割り当てることを特徴とする請求項１又は２記載の暗号鍵生成装置。
【請求項４】
前記マトリクス生成手段は、前記複数種類のスケーラビリティから選択可能な２種類のスケーラビリティの組み合わせ全てについて、該２種類のスケーラビリティにおける階層値で座標表現された部分鍵要素マトリクスを生成するとともに、前記複数種類のスケーラビリティにおける階層値の全組み合わせを示す階層テーブルであって、組み合わされた階層値により、前記複数種類のスケーラビリティにおける階層それぞれのデータ単位に対応した部分鍵を成分とする部分鍵マトリクスを座標表現する階層テーブルを生成し、
前記鍵生成手段は、前記階層テーブルにおける階層値の全組み合わせについて、一の組み合わせを構成している階層値のうち２つの階層値及びそのスケーラビリティの種類によって特定される、２種類のスケーラビリティの組み合わせ全てについて生成された前記部分鍵要素マトリクスそれぞれの成分を結合することにより、前記部分鍵マトリクスの成分である部分鍵を順次生成していくことを特徴とする請求項１〜３のいずれか一項記載の暗号鍵生成装置。
【請求項５】
複数種類（≧３）の階層的スケーラビリティを有するディジタルデータの配信サービスを提供する通信システムに適用され、該ディジタルデータに対する符号化及び復号化に利用される暗号鍵を生成するための暗号鍵生成装置であって、
前記複数種類のスケーラビリティそれぞれにおいて、前記通信システムにおいて許可されているサービスレベルを満たす階層のうち最下位に位置する階層のデータ単位の符号化及び復号化に利用される暗号鍵を取り込むための入力手段と、
前記入力手段により取り込まれた暗号鍵を、マスター鍵として記録する記録手段と、
前記複数種類のスケーラビリティから選択された第１及び第２基準スケーラビリティのうち第１基準スケーラビリティの階層数で前記記録手段から読み出された前記マスター鍵を分割することにより、該第１基準スケーラビリティの各階層に対応した分割鍵を生成する鍵分割手段と、
前記複数種類のスケーラビリティにおける階層値で座標表現された多次元鍵要素マトリクスを、前記複数種類のスケーラビリティのうち前記第１及び第２基準スケーラビリティを除く他のスケーラビリティそれぞれの各階層について、前記第１基準スケーラビリティの各階層に対応した一連の演算ごとに生成していくマトリクス生成手段であって、得られる多次元鍵要素マトリックスそれぞれにおいて、少なくとも、前記鍵分割手段により生成された前記分割鍵のうち一の分割鍵に対応する第１基準スケーラビリティにおける階層であって前記第２基準スケーラビリティにおける最下位階層から最上位階層のそれぞれ対応する座標成分に、一方向性ハッシュ関数を利用した該一の分割鍵のハッシュ演算を繰り返すことにより順次得られた演算データを割り当てていくマトリクス生成手段と、
前記他のスケーラビリティそれぞれの各階層について、前記第１基準スケーラビリティの各階層に対応した一連の演算ごとに前記マトリクス生成手段により生成された前記多次元鍵要素マトリックスそれぞれの、座標一致している成分同士を結合することにより、前記複数種類のスケーラビリティにおける階層それぞれのデータ単位に対応した部分鍵を生成する鍵生成手段と、そして、
前記鍵生成手段により生成された部分鍵を、前記ディジタルデータの符号化及び複合化の少なくともいずれかを行う装置へ出力する出力手段と、を備えた暗号鍵生成装置。
【請求項６】
前記マトリクス生成手段は、前記他のスケーラビリティそれぞれの各階層について、前記第１基準スケーラビリティの各階層に対応した一連の演算ごとに生成された前記多次元鍵要素マトリックスのそれぞれにおける成分情報として、対応する前記他のスケーラビリティ及び前記第１基準スケーラビリティそれぞれの階層よりも下位に位置する階層であって前記第２基準スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分に、該対応する第１基準スケーラビリティの階層に割り当てられた一の分割鍵を用いて順次得られた演算データと同一演算データを割り当てる一方、対応する前記他のスケーラビリティ及び前記第１基準スケーラビリティそれぞれの階層よりも上位に位置する階層であって前記第２基準スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分すべてに、該一の分割鍵に対応する階層の鍵要素のうち前記第２基準スケーラビリティの最上位階層の鍵要素について一方向性ハッシュ関数を利用したハッシュ演算により得られる演算データを割り当てることを特徴とする請求項５記載の暗号鍵生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数種類の階層的スケーラビリティを有するディジタルデータに対する符号化（暗号化）及び復号化（暗号解除）に利用される暗号鍵を生成する装置に関し、特に、各スケーラビリティにおける階層のデータ単位それぞれに対応した部分暗号鍵（以下、部分鍵という）を自動生成する装置に関するものである。
【背景技術】
【０００２】
近年、ネットワークを介した情報通信サービスの普及により、不特定多数の相手に対してデータ伝送を行うサービス、例えば、画像（動画像の一フレームデータを含む）などディジタルコンテンツの配信サービスも多くなっている。それに伴い、このようなネットワーク環境（通信システム）におけるディジタルデータの保護技術も、より高度な機能が求められている。【０００３】
一般に、符号化されたディジタル画像などは、符号化時に決定された品質（歪、解像度、色表現など）で復号される。しかしながら、通信路の多様化、通信端末の多様化、配信サービスの多様化などにより、符号化列の一部を復号することで符号化時に決定された品質とは異なる品質の画像を復号できること、すなわち、スケーラビリティが求められている。このスケーラビリティに対する要求を受け、例えば画像圧縮の国際標準であるJPEG2000（Joint Photographic Experts Group 2000）では、解像度等の尺度で、階層化されたスケーラビリティを提供している。また、このように品質の異なるデータを階層的に保護する保護技術では、スケーラビリティそれぞれについて各階層に位置するデータ単位ごとに、個別の部分鍵を用いて暗号化するのが一般的である。【０００４】
なお、このようなディジタルデータの保護技術として、例えば、特許文献１〜２や非特許文献１〜３が知られている。【０００５】
非特許文献１は、階層的スケーラビリティを有するディジタルデータに対し、一方向性ハッシュ関数を利用することで一つのマスター鍵から下位階層のデータ単位に対応する部分鍵を生成する技術が開示されている。また、非特許文献２には、非特許文献１の課題である、ストリーミングデータの順序に依存しない技術が開示されている。さらに、上記非特許文献３には、非特許文献１の課題である結託攻撃への耐性を向上させる技術が開示されている。【０００６】
なお、結託攻撃とは、スケーラビリティごとに異なる階層レベルに対応した複数種類の暗号鍵を複数のユーザ間で共有することで、予め許諾された品質よりも高い品質での画像再生を実現する行為をいう。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−３１２７４０号公報
【特許文献２】特開２００３−２０４３２１号公報
【非特許文献】
【０００８】
【非特許文献１】Y.Wu, D.Ma, and R.H.Deng, “Progressive protection of JPEG 2000 condestreams.” In Proc. IEEE ICIP, pp.3447-3450, 2004
【非特許文献２】M.Fuhiyoshi, S.Imaizumi, and H.Kiya, “Encryption of composite multimedia contents for access control,” IEICE Trans. Fundamentals, Vol. E90-A, No. 3, pp.590-596, March 2007
【非特許文献３】今泉祥子，藤吉正明，安部淑人，貴家仁志,“結託攻撃耐性を有するJPEG2000符号化画像の階層的暗号化方法”信学SIPシンポジウム，２００６
【発明の概要】
【発明が解決しようとする課題】
【０００９】
発明者らは、従来のデータ保護技術について詳細に検討した結果、以下のような課題を発見した。すなわち、品質の異なるディジタルデータを階層的に保護する場合、スケーラビリティの種類ごとに別々に暗号鍵（部分鍵）を管理するか、あるいは、スケーラビリティそれぞれについて各階層に位置するデータ単位ごとに個別の部分鍵を用いて暗号化（符号化）することになる。【００１０】
特に、データ単位で生成された個別の部分鍵を管理する場合、階層数が増えるに従って、管理対象となる鍵の数が増加するだけでなく、結託耐性を維持するため、十分な鍵長を確保しなければならず、各スケーラビリティにおける階層増加に伴って、総鍵長が著しく多くなってしまう。【００１１】
逆に、１つのマスター鍵から各データ単位に対応した部分鍵を生成していく場合、部分鍵の数だけマスター鍵を分割していく必要があるため、非特許文献３のように、部分鍵数が増加すると、それぞれ生成される部分鍵の長さが短くせざるを得ない。この場合、十分な結託耐性は保証され得なくなる。【００１２】
この発明は上述のような課題を解決するためになされたものであり、階層的スケーラビリティを有するディジタルデータへの結託攻撃に対し十分な耐性を確保できる暗号鍵を生成するとともに、各スケーラビリティの階層にそれぞれ対応した暗号鍵の鍵長を飛躍的に低減させるための構造を備えた暗号鍵生成装置を提供することを目的としている。
【課題を解決するための手段】
【００１３】
この発明に係る暗号鍵生成装置は、複数種類（≧２）の階層的スケーラビリティを有するディジタルデータの配信サービスを提供する通信システム（以下、配信システムという）に適用可能な装置であり、予め契約されたサービスレベルを満たす階層のうち最下位に位置する階層の部分鍵をマスター鍵として、該ディジタルデータに対する符号化及び復号化に利用される暗号鍵（スケーラビリティそれぞれにおいて、マスター鍵に対応する階層よりも上位に位置する階層それぞれに対応している部分鍵群）を生成する。具体的に当該暗号鍵生成装置が適用される配信システムには、画像圧縮の国際標準であるＪＰＥＧ２０００のパケット符号化列などのマルチメディアを使用する画像伝送システムやテレビ会議システムの他、ストリーミング配信サービスを提供する通信システムも含まれる。当該暗号鍵生成装置は、入力手段と、記録手段と、鍵分割手段と、マトリクス生成手段と、鍵生成手段と、出力手段を備え、配信用ディジタルデータの符号化及び複合化に利用される暗号鍵として、スケーラビリティそれぞれについて、マスター鍵から従属的により上位に位置する階層それぞれの部分鍵を生成していく。そのため、単一の符号化列における複数のスケーラビリティに対して同時にアクセス制御が可能になる。【００１４】
具体的に、この発明に係る暗号鍵生成装置において、入力手段は、予め設定された暗号鍵（部分鍵）を取り込み、記録手段は、この入力手段により取り込まれた暗号鍵をマスター鍵として一旦記録する。このマスター鍵は、スケーラビリティそれぞれについて、データ配信サービスを提供する通信システム（配信システム）において許可されているサービスレベルを満たす階層のうち最下位に位置する部分鍵である。また、鍵分割手段は、記録手段に記録されたマスター鍵から分割鍵を生成する。続いて当該暗号鍵生成装置は、最小処理単位として、選択された２種類のスケーラビリティそれぞれにおける階層のデータ単位に対応する部分鍵を生成する。すなわち、マトリクス生成手段は、鍵分割手段により生成された分割鍵それぞれに対応した鍵要素マトリクスを生成する。鍵生成手段は、マトリクス生成手段により生成された鍵要素マトリクスの成分結合による各階層に対応した部分鍵の生成を行う。さらに、出力手段は、上述の最小処理単位において鍵生成手段により生成された部分鍵を、ディジタルデータの符号化及び複合化の少なくともいずれかを行う装置、例えば符号化手段、複合化手段などへ出力する。鍵要素マトリクスは、一方のスケーラビリティの階層ごとに、それぞれの階層に対応した分割鍵に基づいて生成される。また、各鍵要素マトリクスは、２種類のスケーラビリティそれぞれの階層値（階層レベルに相当）により各成分座標が規定され、これにより、各マトリクス成分は、２種類のスケーラビリティにおける階層それぞれのデータ単位と座標対応している。なお、当該暗号鍵生成装置は、唯一管理されるマスター鍵から従属的により上位に位置する階層それぞれに対応した部分鍵を生成することを特徴としている。したがって、暗号解除の際も同様にマスター鍵から従属的に上位に位置する階層それぞれに対応した部分鍵が生成されるが、例えばマルチメディア配信サービスなどでは開示を許諾されたパケット群のうち最下位のパケットに対する復号鍵のみがユーザ（配信サービスの契約者）に配信される。このような場合、与えられた復号鍵自体が当該暗号鍵生成装置の記録手段に記録されるマスター鍵となり、このマスター鍵に対応した各スケーラビリティの階層がそれぞれ最下位階層である。【００１５】
記録手段に記録されるマスター鍵としては、符号化対象であるディジタルデータが有する複数種類のスケーラビリティから選択された第１及び第２スケーラビリティそれぞれにおいて、配信システムにおいて許可されているサービスレベルを満たす階層のうち最下位に位置する階層のデータ単位の符号化及び復号化に利用される暗号鍵が設定される。逆に、配信等により得た復号鍵をマスター鍵とする場合、当該マスター鍵に対応している各スケーラビリティの階層をそれぞれ最下位階層とする。このマスター鍵は、鍵分割手段により、第１及び第２スケーラビリティのうち基準スケーラビリティとして設定された第１スケーラビリティの階層数で分割され、該第１スケーラビリティの各階層に対応した分割鍵が生成される。【００１６】
マトリクス生成手段が分割鍵に基づいてそれぞれ生成する鍵要素マトリクスは、第１及び第２スケーラビリティにおける階層それぞれのデータ単位と座標対応している。なお、得られた分割鍵のうち一の分割鍵に基づいて生成される鍵要素マトリクスの生成では、少なくとも、該一の分割鍵に対応する第１スケーラビリティにおける階層であって第２スケーラビリティにおける最下位階層から最上位階層のそれぞれ対応する座標成分に、一方向性ハッシュ関数を利用した該一の分割鍵のハッシュ演算を繰り返すことにより順次得られた演算データが割り当てられる。これにより、第２スケーラビリティの階層性が維持される。【００１７】
続いて、鍵生成手段は、分割鍵ごとに生成された鍵要素マトリクス間で座標一致している鍵要素を結合させることにより、第１及び第２スケーラビリティにおける階層それぞれのデータ単位に対応した部分鍵を生成する。すなわち、鍵生成手段は、マスター鍵の階層を含む上位階層のデータ単位を符号化又は複合化するための部分鍵を、該データ単位ごとに生成する。この構成により、第１スケーラビリティの階層性も維持される。【００１８】
なお、この発明に係る暗号鍵生成装置において、鍵分割手段は、上述の基準スケーラビリティとして、第１及び第２スケーラビリティのうち階層数の少ないスケーラビリティを選択するのが好ましい。この場合、一部のスケーラビリティの階層数増加の影響を受けにくくなる。【００１９】
また、マトリクス生成手段は、分割鍵のうち一の分割鍵に基づいて生成される鍵要素マトリクスの成分情報として、該一の分割鍵に対応する第１スケーラビリティにおける階層よりも下位に位置する階層であって第２スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分に、該一の分割鍵の階層について順次得られた演算データと同一演算データを割り当てる。一方、マトリクス生成手段は、該一の分割鍵に対応する第１スケーラビリティにおける階層よりも上位に位置する階層であって第２スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分すべてに、該一の分割鍵に対応する階層の鍵要素のうち第２スケーラビリティの最上位階層の鍵要素について一方向性ハッシュ関数を利用したハッシュ演算により得られる演算データを割り当てる。【００２０】
以上のように、この発明に係る暗号鍵生成装置は、プログレッション順序に応じて複数の符号化列とマスター鍵を用意しなければならない従来の暗号鍵生成技術とは異なり、符号化列のプログレッション順序の制限は受けない。また、この発明に係る暗号鍵生成装置は、マスター鍵から従属的に各データ単位に対応した階層の暗号鍵（部分鍵）を生成し、単一の符号化列における複数のスケーラビリティに対して同時にアクセス制御を可能にする。これにより、符号化列及び管理する暗号鍵（マスター鍵）の情報量は飛躍的に低減され、ディジタルコンテンツや暗号鍵の管理、配信における安全性を効果的に向上させることが可能になる。【００２１】
さらに、この発明に係る暗号鍵生成装置は、符号化対象であるディジタルデータが３種類以上のスケーラビリティを有する場合、これら３種類以上のスケーラビリティから２種類のスケーラビリティを選択し、選択された２種類のスケーラビリティの組み合わせ全てについて、上述の最小処理単位（マトリクス生成手段及び鍵生成手段による鍵生成動作）を実行することにより、スケーラビリティそれぞれについて、マスター鍵の階層を含む上位階層それぞれのデータ単位に個々に対応した部分鍵（各部分鍵が対応するデータ単位の符号化及び複合化に利用される）が生成される。【００２２】
すなわち、マトリクス生成手段は、２種類のスケーラビリティの組み合わせ全てについて、組み合わせごとに部分鍵要素マトリクスを生成する。その際、マトリクス生成手段は、複数種類のスケーラビリティにおける階層値の全組み合わせを示す階層テーブルも生成する。この階層テーブルは、階層値の組み合わせにより、複数種類のスケーラビリティにおける階層値それぞれのデータ単位に対応した部分鍵を成分とする部分鍵マトリクスを座標表現している。また、この階層テーブルは、スケーラビリティの種類と階層値の対応関係を示しており、この関係からスケーラビリティの組み合わせ全てについて生成された部分鍵要素マトリクスの成分を特定することができる。【００２３】
そこで、鍵生成手段は、階層テーブルにおける階層値の全組み合わせについて、一の組み合わせを構成している階層値のうち２つの階層値及びそのスケーラビリティの種類によって特定される、２種類のスケーラビリティの組み合わせ全てについて生成された部分鍵要素マトリクスそれぞれの成分を結合していく。このように階層値の組み合わせごとに結合された要素は、そのまま部分鍵要素マトリクスの成分である。したがって、部分鍵要素マトリクスそれぞれから階層テーブルによってそれぞれ対応付けられた成分を鍵生成手段において結合していくことにより、複数種類のスケーラビリティにおける階層それぞれのデータ単位に対応した部分鍵が順次生成されることになる。なお、出力手段は、生成された部分鍵を、ディジタルデータの符号化及び複合化の少なくともいずれかを行う装置、例えば符号化手段又は複合化手段に出力する。【００２４】
３種類以上のスケーラビリティの階層的スケーラビリティを有するディジタルデータに対する符号化及び復号化に利用される暗号鍵の生成に関し、上述の暗号鍵生成装置により生成される暗号鍵よりもさらに結託攻撃への耐性を向上させることも可能である。【００２５】
具体的に入力手段は、３種類以上のスケーラビリティそれぞれにおいて、配信システムにおいて許可されたサービスレベルを満たす階層のうち最下位に位置する階層のデータ単位の符号化及び復号化に利用される暗号鍵を取り込み、記録手段は、入力手段により取り込まれた暗号鍵をマスター鍵として記録する（配信等により得た復号鍵をマスター鍵とする場合、当該マスター鍵に対応している各スケーラビリティの階層をそれぞれ最下位階層とする）。このとき、鍵分割手段は、３種類以上のスケーラビリティから第１及び第２基準スケーラビリティも選択する。第１基準スケーラビリティは、記録手段により記録されたマスター鍵から分割鍵を生成するためのスケーラビリティであり、鍵分割手段は、この第１基準スケーラビリティの階層数でマスター鍵を分割することにより、該第１基準スケーラビリティの各階層に対応した分割鍵を生成する。ここで、第２基準スケーラビリティは、上述のような一方向性ハッシュ関数を利用したハッシュ演算の演算方向を規定するためのスケーラビリティである。【００２６】
当該暗号鍵生成装置において、マトリクス生成手段は、３種類以上のスケーラビリティにおける階層値で座標表現された多次元鍵要素マトリクスを、これら３種類以上のスケーラビリティのうち第１及び第２基準スケーラビリティを除く他のスケーラビリティそれぞれの各階層について、該第１基準スケーラビリティの各階層に対応した一連の演算ごとに生成していく。そのため、スケーラビリティ数をＳで表し、各スケーラビリティの階層数ＮＫ（Ｋ＝１，２，３，…，ｉ−１，ｉ）を小さいほうから順にＮ１，Ｎ２，…、Ｎｉ−１，Ｎｉで表すと、以下の数式（１）で与えられる総パケット数に対して、当該マトリクス生成手段により生成される多次元鍵要素マトリックスの数は、以下の数式（２）になる。
【数１】
2010125654.tif 000003
【数２】
2010125654.tif 000004
【００２７】
具体的にマトリクス生成手段は、生成される多次元鍵要素マトリックスそれぞれにおける成分情報として、少なくとも、生成された分割鍵のうち一の分割鍵に対応する第１基準スケーラビリティにおける階層であって第２基準スケーラビリティにおける最下位階層から最上位階層のそれぞれ対応する座標成分に、一方向性ハッシュ関数を利用した該一の分割鍵のハッシュ演算を繰り返すことにより順次得られた演算データを割り当てる。これにより、得られる多次元鍵要素マトリックスにおいて、少なくとも第２基準スケーラビリティの階層性が維持される。【００２８】
続いて、鍵生成手段は、第１及び第２基準スケーラビリティを除く他のスケーラビリティそれぞれの各階層について、該第１基準スケーラビリティの各階層に対応した一連の演算ごとに生成された多次元鍵要素マトリックスそれぞれにおいて、座標一致している成分同士を結合することにより、複数種類のスケーラビリティにおける階層それぞれのデータ単位に対応した部分鍵を生成する。すなわち、得られた多次元鍵要素マトリックスは、第１及び第２基準スケーラビリティを除く他のスケーラビリティそれぞれの各階層について、該第１基準スケーラビリティの階層ごとに生成されるため、得られた多次元鍵要素マトリックスから最終的に生成される部分鍵マトリックスでは、該第１基準スケーラビリティの階層性も維持される。【００２９】
ここで、第１及び第２スケーラビリティを除く他のスケーラビリティそれぞれの各階層について、第１基準スケーラビリティの各階層に対応した一連の演算ごとに生成された多次元鍵要素マトリックスのそれぞれの成分情報として、対応する該他のスケーラビリティ及び第１基準スケーラビリティそれぞれの階層よりも下位に位置する階層であって第２基準スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分には、該対応する第１基準スケーラビリティの階層に割り当てられた一の分割鍵を用いて順次得られた演算データと同一演算データが割り当てられる。一方、対応する他のスケーラビリティ及び第１基準スケーラビリティそれぞれの階層よりも上位に位置する階層であって第２基準スケーラビリティの最下位階層から最上位階層それぞれに相当する座標成分すべてには、該一の分割鍵に対応する階層の鍵要素のうち第２基準スケーラビリティの最上位階層の鍵要素について一方向性ハッシュ関数を利用したハッシュ演算により得られる演算データが割り当てられる。【００３０】
出力手段は、上述の最小処理単位において鍵生成手段により生成された部分鍵を、ディジタルデータの符号化及び複合化の少なくともいずれかを行う装置、例えば符号化手段、複合化手段などへ出力する。【００３１】
なお、この発明に係る各実施例は、以下の詳細な説明及び添付図面によりさらに十分に理解可能となる。これら実施例は単に例示のために示されるものであって、この発明を限定するものと考えるべきではない。【００３２】
また、この発明のさらなる応用範囲は、以下の詳細な説明から明らかになる。しかしながら、詳細な説明及び特定の事例はこの発明の好適な実施例を示すものではあるが、例示のためにのみ示されているものであって、この発明の範囲における様々な変形および改良はこの詳細な説明から当業者には自明であることは明らかである。
【発明の効果】
【００３３】
上述のようにこの発明によれば、マスター鍵から一方向性ハッシュ関数を利用して従属的に上位に位置する階層の部分鍵が生成されていくため、スケーラビリティそれぞれの階層レベルで特定される一つのデータ単位に対応する部分鍵は、いずれかのスケーラビリティの階層が上位に位置するデータ単位に対応する部分鍵からは生成できない。したがって、結託攻撃を防ぐことが可能になる。また、アクセス制御対象となるスケーラビリティを２種類のスケーラビリティの組み合わせごとに部分鍵を生成していくため、生成される部分鍵の鍵長を低減させることが可能になる。
【図面の簡単な説明】
【００３４】
【図１】は、この発明に係る暗号鍵生成装置が適用されるディジタルデータの配信システムの概略構成を示す図である。
【図２】は、図１に示された配信システムの一部を構成する情報処理機器（配信用サーバ又はＰＣ）における各部の構成を示す図である。
【図３】は、図１に示された配信システムにおける配信対象となるディジタルデータであって、複数種類の階層的スケーラビリティを有するディジタルデータのデータ構造を説明するための概念図である。
【図４】は、プログレッシブ順序を説明するための概念図である。
【図５】は、２種類の３階層スケーラビリティを有するディジタルデータの各データ単位（ＪＰＥＧ２０００の各パッケージに相当）と、それに対応する部分鍵をマトリクス状に表現した図である。
【図６】は、この発明に係る暗号鍵生成装置が適用されたディジタルデータの配信システム（図１）におけるデータ配信動作を説明するための論理ブロック図である。
【図７】は、この発明に係る暗号鍵生成装置の構成を説明するための論理ブロック図である。
【図８】は、この発明に係る暗号鍵生成装置の第１実施例において実行される暗号鍵生成動作を説明するための概念図である。
【図９】は、第１実施例に係る暗号鍵生成装置のマトリクス生成手段による鍵要素マトリクスの生成を説明するための概念図である。
【図１０】は、この発明に係る暗号鍵生成装置の第２実施例において実行される暗号鍵生成動作を説明するための概念図である。
【図１１】は、第２実施例に係る暗号鍵生成装置のマトリクス生成手段による鍵要素マトリクスの生成を説明するための概念図である。
【図１２】は、この発明に係る暗号鍵生成装置の第３実施例が実行する暗号鍵生成動作を説明するための概念図である。
【図１３】は、第３実施例に係る暗号鍵生成装置のマトリクス生成手段による鍵要素マトリクスの生成を説明するための概念図である。
【図１４】は、この発明に係る暗号鍵生成装置の第４実施例が実行する暗号鍵生成動作として、３種類以上の階層的スケーラビリティを有するディジタルデータについての部分鍵の生成を説明するための概念図である。
【図１５】は、第４実施例に係る暗号鍵生成装置のマトリクス生成手段による階層テーブルの生成と、部分鍵要素マトリクス及び部分鍵マトリクスの座標対応関係を示す図である。
【図１６】は、第４実施例に係る暗号鍵生成装置のマトリクス生成手段によって生成される部分鍵要素マトリクス及び部分鍵マトリクスの要素間対応関係を説明するための図である。
【図１７】は、多次元部分鍵マトリックス及び多次元鍵要素マトリックスにおける各座標成分配置の立体表示の例として例として３次元マトリックスと、第４実施例が実行する暗号鍵生成動作を一般化した暗号鍵生成（図１４）における分割鍵の割り当て動作を説明するための図である。
【図１８】は、第４実施例が実行する暗号鍵生成動作を一般化した暗号鍵生成において、スケーラビリティＬ、Ｒの各階層に対応した鍵要素生成工程を立体表示された３次元マトリックスを用いて説明するための図である。
【図１９】は、第４実施例が実行する暗号鍵生成動作を一般化した暗号鍵生成において、スケーラビリティＲ、Ｃの各階層に対応した鍵要素生成工程を立体表示された３次元マトリックスを用いて説明するための図である。
【図２０】は、第４実施例が実行する暗号鍵生成動作を一般化した暗号鍵生成において、スケーラビリティＬ、Ｃの各階層に対応した鍵要素生成工程を立体表示された３次元マトリックスを用いて説明するための図である。
【図２１】は、この発明に係る暗号鍵生成装置の第５実施例が実行する暗号鍵生成動作において、マスター鍵から分割鍵を生成する鍵分割手段の動作の一例を説明するための図である。
【図２２】は、第５実施例に係る暗号鍵生成装置のマトリクス生成手段による多次元鍵要素マトリックスの生成工程を説明するための図である（基準スケーラビリティＬ、Ｒ以外の他のスケーラビリティＣの最下位階層に対応する多次元鍵要素マトリックス群の生成）。
【図２３】は、第５実施例に係る暗号鍵生成装置のマトリクス生成手段による多次元鍵要素マトリックスの生成工程を説明するための図である（基準スケーラビリティＬ、Ｒ以外の他のスケーラビリティＣの最下位階層よりも１階層だけ上位の階層に対応する多次元鍵要素マトリックス群の生成）。
【図２４】は、第５実施例に係る暗号鍵生成装置のマトリクス生成手段による多次元鍵要素マトリックスの生成工程を説明するための図である（基準スケーラビリティＬ、Ｒ以外の他のスケーラビリティＣの最上位階層に対応する多次元鍵要素マトリックス群の生成）。
【発明を実施するための形態】
【００３５】
以下、この発明に係る暗号鍵生成装置の各実施例を、図１〜図２４を参照しながら詳細に説明する。なお、図の説明において同一部位、同一要素には同一符号を付して重複する説明を省略する。
【００３６】
この発明に係る暗号鍵生成装置は、複数種類の階層的スケーラビリティを有するディジタルデータに対する符号化及び復号化に利用される暗号鍵を生成する。また、各実施例では、簡単のため、階層的スケーラビリティを有するディジタルデータの具体例として、画像圧縮の国際標準であるＪＰＥＧ２０００の各パケット符号列に対応する部分鍵生成動作について説明する。なお、ＪＰＥＧ２０００はスケーラビリティの種類に対して優先順位を与えることが可能である。符号化列においてこの順位は、データ単位であるパケットの構成順序(プログレッション順序)として表現される。このプログレッション順序を決定する要素としては、レイヤ（Ｌ）、解像度レベル（Ｒ）、コンポーネント（Ｃ）及びポジション（Ｐ）の４種類のスケーラビリティがある。
【００３７】
図１は、この発明に係る暗号鍵生成装置が適用されるディジタルデータの配信システムの概略構成を示す図である。図１に示された配信システムは、階層的スケーラビリティを有するディジタルデータの配信サービスを提供する、画像伝送システムや双方向テレビ会議システムの他、ストリーミング配信サービスを提供する通信システムを含む。また、この配信システムは、有線または無線のネットワーク３００と、このネットワーク３００にそれぞれ接続された例えばパーソナルコンピュータなどの複数の情報処理端末（以下、ＰＣという）２００と、配信用サーバ１００とを備え、ＰＣ２００と配信用サーバ１００は、ネットワーク３００を介して互いにディジタルデータを含むマルチメディアの双方向通信が可能な状態になっている。配信用サーバ１００は、外部記録装置として、配信サービス用に予め用意された複数種類のディジタルデータコンテンツが格納されたデータベース（以下、Ｄ／Ｂという）１１０を管理している。各ＰＣ２００と配信用サーバ１１０との間では、予めディジタルデータの配信サービスに関する契約が結ばれており、配信用サーバ１１０は、ＰＣ２００からの配信要求を受けると、予め契約されたサービスレベルに対応した画質のディジタルデータを配信する。
【００３８】
なお、上述のような配信システムの一部を構成する、配信用サーバ１００、ＰＣ２００などの情報処理機器の構成を図２示す。特に、図２において、領域（ａ）には、配信用サーバ１００又はＰＣ２００の構成が示され、領域（ｂ）には、配信用サーバ１００が管理するＤ／Ｂ１１０の論理構成が示されている。
【００３９】
すなわち、図２の領域（ａ）に示されたように、配信用サーバ１００又はＰＣ２００は、ネットワーク３００を介して他の情報処理機器とのデータ送受信を行うための入出力手段（以下、Ｉ／Ｏという）２１０と、種々の演算プログラム２３１を実行する演算部２２０と、該演算プログラムやデータが格納された記憶手段としてのメモリ２３０と、演算部２２０の制御に従って表示用データを生成する描画部２５０と、種々の周辺機器とのデータ授受を行うための入出力手段（以下、Ｉ／Ｏという）２４０を備える。なお、モニタ２５１には、描画部２５０が生成した表示用データが表示される。また、Ｉ／Ｏ２４０には、配信用サーバ１００が管理するＤ／Ｂ１１０などの外部記録装置２７０、入力手段としてのキーボード２６０、ポインティングデバイスが接続される。
【００４０】
配信用サーバ１００が管理する外部記録装置としてのＤ／Ｂ１１０には、予め契約情報テーブル１１０ａ、鍵管理テーブル１１０ｂ、配信用ディジタルデータ群１１０ｃが格納されている。なお、契約情報テーブル１１０ａには、ＰＣ２００の操作者であるユーザ（契約者）と、その契約内容を反映したサービスレベルが対応付けられている。鍵情報テーブル１１０ｂには、ユーザ（契約者）ごとに、Ｄ／Ｂ１１０に格納されたディジタルデータ（配信サービス用の種々のディジタルコンテンツ）と、これらディジタルコンテンツを符号化するための部分鍵（マスター鍵）が対応付けられている。
【００４１】
図３は、図１に示された配信システムにおける配信対象となるディジタルデータであって、複数種類の階層的スケーラビリティを有するディジタルデータのデータ構造を説明するための概念図である。また、図３には、例えばＪＰＥＧ２０００のスケーラビリティのうちアクセス制御対象となるスケーラビリティを、レイヤ（Ｌ）及び解像度レベル（Ｒ）のみに制限したときの（濃淡画像の場合）、ＪＰＥＧ２０００におけるパケット符号化列の復号パターンが示されている。具体的に、図３において、レイヤ（スケーラビリティＬ）の階層数ＮＬは３、解像度レベル（スケーラビリティＲ）の階層数ＮＲは３である。レイヤは、画質レイヤとも言われ、画像再生時におけるＳＮＲ（Signal/Noise Ratio）に対応した、ディジタル画像の算術符号化データを意味する。画質への影響が高い情報ほど高位のレイヤに含まれるため、上位レイヤのデータに対して下位レイヤのデータを追加していくことで段階的に再生画像の品質を向上させることができる。
【００４２】
この図３において、Ｐｉ，ｊ（ｉ＝０，…，ＮＬ−１；ｊ＝０，…，ＮＲ−１；ｉはスケーラビリティＬの階層番号；ｊはスケーラビリティＲの階層番号）は、画像情報をもつＪＰＥＧ２０００パケットを表す。ある品質のＪＰＥＧ２０００符号化画像をＱＬ，Ｒで表すと、ＱＬ，Ｒを得るためには図３の枠Ａで囲まれたパケットＰｉ，ｊ（ｉ＝０，…，Ｌ；ｊ＝０，…，Ｒ）すべてを復号する必要がある。ここで、画像が正常に再生されるためには、復号されるパケットＰｉ，ｊすべてが暗号解除されなくてはならない。したがって、アクセス制御において階層性を保持するため、パケットＰｉ，ｊは個別に暗号化される必要がある。
【００４３】
上述のようなＪＰＥＧ２０００において、プログレッション順序には、ＬＲＣＰ、ＲＬＣＰ、ＲＰＣＬ、ＰＣＲＬ、及びＣＰＲＬの５種類あり、それぞれ先頭の要素から順に優先される。図４は、図３に示されたＪＰＥＧ２０００パケット符号化列を復号する際の優先順位を示すプログレッシブ順序を説明するための概念図である。特に、図４において、領域（ａ）は、スケーラビリティＬ（レイヤ）が最優先されたＬＲＣＰプログレッション順序における復号順序であり、領域（ｂ）は、スケーラビリティＲ（解像度レベル）を最優先させたＲＬＣＰのプログレッション順序における復号順序である。
【００４４】
この発明に係る暗号鍵生成装置は、管理と配信にかかる安全性及び生成容易性の面から鍵長が低減され、かつ、結託攻撃に対して耐性を有する暗号鍵を生成する。上述のようなＪＰＥＧ２０００パケットそれぞれの暗号鍵を生成するに当たり、当該暗号鍵生成装置は、各パケットを、スケーラビリティそれぞれの階層レベルにより特定されるマトリクス成分として扱うため、ＪＰＥＧ２０００におけるプログレッション順序は問わない。一例として、図５の領域（ａ）は、スケーラビリティＬ（レイヤ）の階層レベルとスケーラビリティＲ（解像度レベル）の階層レベルによりマトリクス表現されたパケットＰＬ，Ｒ（Ｌ：０（最上位）、１、２（最下位）；Ｒ：０（最上位）、１、２（最下位））を示す。また、図５の領域（ｂ）は、図５の領域（ａ）のパケットＰＬ，Ｒに対応するマトリクス表現された部分鍵ＫＬ，Ｒ（Ｌ：０、１、２；Ｒ：０、１、２）を示す。
【００４５】
ここで、結託攻撃とは、２以上のユーザが暗号鍵を不正に共有することにより、正規に許諾された画質より高い画質での再生を可能とする攻撃をいう。具体的には、ＪＰＥＧ２０００符号化画像を例として、最上位レイヤ(レイヤ０)のみ開示を許諾されたユーザと最上位解像度レベル(解像度レベル０)のみ開示を許諾されたユーザとが結託することを考える。この場合、パケットＰｉ，ｊに対する暗号鍵をＫｉ，ｊとすると、一方のユーザは３つのパケッＰ０，ｊ（ｊ＝０，１，２）に対応する暗号鍵Ｋ０，ｊ（ｊ＝０，１，２）を、他方のユーザは３つのパケッＰｉ，０（ｉ＝０，１，２）に対応する暗号鍵Ｋｉ，０（ｉ＝０，１，２）を、それぞれ正規に許諾された鍵として得る。結託攻撃に対して耐性が十分でない場合、これらユーザが結託し、両者に許諾されていない暗号鍵Ｋ２，２、Ｋ２，１、Ｋ１，２、及びＫ１，１を不正に生成する可能性がある。この発明に係る暗号鍵生成装置におい実行される暗号鍵生成動作では、以下の各実施例において説明するように、あるパケットに対する暗号鍵（部分鍵）は、そのパケットより少なくとも一方のスケーラビリティにおいて上位にある階層のパケットからは生成されず、かつ、いずれのスケーラビリティにおいても同位又は下位に位置する階層のパケットからは生成可能となっている。そのため、この発明に係る暗号鍵生成装置により生成される暗号鍵は、結託攻撃に対して耐性を有する。
【００４６】
次に、図３に示されたディジタルデータの配信システムにおけるデータ配信動作を、図６を用いて説明する。なお、図６は、この発明に係る暗号鍵生成装置が適用されたディジタルデータの配信システム（図１）におけるデータ配信動作を説明するための論理ブロック図である。また、配信用サーバ１００、ＰＣ２００は、図２の領域（ａ）に示された構成を有する。
【００４７】
図６に示されたように、配信用サーバ１００からＰＣ２００へのデータ配信サービスは、ＰＣ２００から配信用サーバ１００に対して配信要求が行われることにより開始される。ＰＣ２００からの配信要求を受けると、まず、配信用サーバ１００では、要求解析が行われる。この要求解析では、配信要求を発信したユーザの認証手続き、配信すべきデータの特定、サービスレベルの特定などが行われる。
【００４８】
配信用サーバ１００において、要求解析が終了すると、Ｄ／Ｂ１００から配信要求されたデータが読み出されるとともに、該データに対応したマスター鍵（読み出されたデータを符号化するための暗号鍵を生成するための部分鍵）が読み出される。暗号鍵生成装置４００（この発明に係る暗号鍵生成装置）は、マスター鍵を入力し、マスター鍵を利用して符号化用の部分鍵（マスター鍵に対応した階層よりも上位に位置する上位階層それぞれ対応した部分鍵）を生成する。このように生成された部分鍵が暗号鍵生成装置４００から符号化手段４１０に出力される。一方、符号化手段４１０は、Ｄ／Ｂ１１０から読み出されたデータを入力し、該データを構成するパケットそれぞれについて、暗号鍵生成装置４００から出力された部分鍵のうち符号化すべきパケットに対応した部分鍵を利用して符号化していくことで、符号化データ（配信されるべきパケット群の符号化列）を生成する。そして、配信用サーバ１００は、符号化に利用された部分鍵を生成するためのマスター鍵とともに生成された符号化データを、ネットワーク３００を介してＰＣ２００（配信要求元）に配信する。なお、具体的なデータ符号化は、配信サーバ１００における制御部２２０（図２の領域（ａ））により実行される。すなわち、メモリ２３０に予め格納されたプログラム２３１を制御部２２０が実行することにより、該制御部２２０が符号化手段４１０として動作する。
【００４９】
ＰＣ２００では、ネットワーク３００を介して配信された符号化データ及びマスター鍵がＩ／Ｏ２１０により取り込まれ、一旦、メモリ２３０に格納される。ＰＣ２００における暗号鍵生成装置４００（この発明に係る暗号鍵生成装置）は、メモリ２３０に格納されたマスター鍵を入力し、このマスター鍵を利用して復号化用の部分鍵（マスター鍵に対応した階層よりも上位に位置する上位階層それぞれに対応した復号鍵）を生成する。また、暗号鍵生成装置４００は、生成されたこれら復号鍵を、復号化手段４２０へ出力する。復号化手段４２０は、メモリ２３０から読み出された符号化データを入力し、符号化されたパケットそれぞれについて、暗号鍵生成装置４００から出力された復号鍵のうち対応する復号鍵を利用して複合化していくことにより、複合化データを生成する。なお、具体的なデータ復号化は、ＰＣ２００における制御部２２０（図２の領域（ａ））により実行される。すなわち、メモリ２３０に予め格納されたプログラム２３１を制御部２２０が実行することにより、該制御部２２０が複合化手段４２０として動作する。
【００５０】
この発明に係る暗号鍵生成装置は、図１の配信システムに適用された場合、図６における暗号鍵生成装置４００に相当し、具体的には図７に示されたような構造を備える。なお、図７は、この発明に係る暗号鍵生成装置の構成を説明するための論理ブロック図である。
【００５１】
すなわち、暗号鍵生成装置４００は、図７に示されたように、マスター鍵を取り込むための入力手段４５０と、マスター鍵を利用して部分鍵を生成する演算手段４６０と、マスター鍵や演算手段４６０における演算結果を一時的に記録するための記録手段４７０と、生成された部分鍵のうち契約されたサービスレベルに一致している階層の部分鍵を、符号化手段４１０や復号化手段４２０へ出力するための出力手段４８０を備える。演算手段４６０は、鍵分割手段４６１、マトリクス生成手段４６１、鍵生成手段４６３により構成されている。
【００５２】
上述の論理構成を、図２の領域（ａ）に示されたハードウエア構成に当てはめると、Ｉ／Ｏ２１０が入力手段４５０及び出力手段４８０として機能する。メモリ２３０は記録手段４７０として機能する。制御部２２０は演算手段４６０として機能する。また、メモリ２３０に予め格納されたプログラム２３１を実行することにより、制御部２２０が、鍵分割手段４６１、マトリクス生成手段４６１、鍵生成手段４６３のそれぞれとして動作する。
【００５３】
（第１実施例）
以下、この発明に係る暗号鍵生成装置の第１実施例において実行される暗号鍵生成動作を説明する。なお、第１実施例に係る暗号鍵生成装置は、図７に示された構造を有し、より具体的には図２の領域（ａ）に示されたハードウエア構成により実現される。この第１実施例では、アクセス制御対象となるスケーラビリティをスケーラビリティＬ（レイヤ）とスケーラビリティＲ（解像度レベル）とし、スケーラビリティＬの階層数ＮＬを３、スケーラビリティＲの階層数ＮＲを３とする。このとき、スケーラビリティＬ、Ｒにおける各階層のパケットは、３×３のマトリクス成分Ｐｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２）として扱われる。なお、図８は、この発明に係る暗号鍵生成装置の第１実施例において実行される暗号鍵生成動作（図７に示された演算手段４６０の動作）を説明するための概念図である。また、図９は、第１実施例に係る暗号鍵生成装置のマトリクス生成手段４６２による鍵要素マトリクスの生成を説明するための概念図である。
【００５４】
マスター鍵は、入力手段４５０によりＤ／Ｂ１１０又はネットワーク３００を介して配信された部分鍵であり、一旦記録手段４７０に記録される。すなわち、マスター鍵は、記録手段４７０により予め管理されている最下位のパケットに対応する部分鍵であり、図８の例では、スケーラビリティＬ、Ｒいずれにおいても最下位に位置する階層のパケットＰ２，２に対応する暗号鍵Ｋ２，２である。このマスター鍵Ｋ２，２は、鍵分割手段４６１により、スケーラビリティＬの階層数ＮＬとスケーラビリティＲの階層数ＮＲのうち小さい値（＝ｍｉｎ（ＮＬ，ＮＲ））に分割される。
【００５５】
この第１実施例において、鍵分割手段４６１は、ＮＬ＝ＮＲ＝３であるためスケーラビリティＬ、Ｒのいずれが選択されてもよいが、一例として、スケーラビリティＲを基準スケーラビリティとして選択する。このとき、鍵分割手段４６１が、最小階層数３（スケーラビリティＲの階層数）でマスター鍵Ｋ２，２を分割することにより、分割鍵ｅＲ２、ｅＲ１、ｅＲ０が得られる。これら分割鍵ｅＲ２、ｅＲ１、ｅＲ０はスケーラビリティＲの各階層に対応したルート鍵（各マトリクス成分を生成するための鍵）であり、マトリクス生成手段４６２は、これらスケーラビリティＲの階層ごとに鍵要素マトリクスＭ１〜Ｍ３を生成する。
【００５６】
鍵要素マトリクスＭ１〜Ｍ３それぞれにおける各マトリクス成分は、対応するルート鍵である分割鍵ｅＲ２、ｅＲ１、ｅＲ０から、図９に示されたように、順次生成される。
【００５７】
まず、鍵要素マトリクスＭ１では、スケーラビリティＲの階層レベル２（最下位階層）に対応したマトリクスとして、（２，２）成分に分割鍵ｅＲ２が割り当てられる。なお、図中、マトリクス成分ｅの上側添え字Ｒ２は、当該鍵要素マトリクスＭ１に対応するスケーラビリティＲ（基準スケーラビリティ）の階層レベルを示し、下側添え字は、鍵要素マトリクスＭ１の成分座標を示す。以下、この第１実施例では、鍵要素マトリクスＭ１の成分をｅＲ２（ｉ，ｊ）（ｉ＝０，１，２；ｊ＝０，１，２）と表記する。
【００５８】
分割鍵ｅＲ２に対応するスケーラビリティＲにおける階層（階層レベル＝２）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ２（１，２）、ｅＲ２（０，２）には、一方向性ハッシュ関数Ｈ＊を利用した分割鍵ｅＲ２のハッシュ演算を繰り返すことにより順次得られた演算データが割り当てられる。すなわち、ｅＲ２（１，２）にはＨ＊（ｅＲ２（２，２））の演算データ、成分ｅＲ２（０，２）にはＨ＊２（ｅＲ２（２，２））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル２について、スケーラビリティＬの階層性が保持される。なお、この明細書では、一方向性ハッシュ関数Ｈ＊のｎ（ｎ＝２、３、…）回演算を、Ｈ＊ｎと表記する。
【００５９】
一方、鍵要素マトリクスＭ１において、スケーラビリティＲの階層レベル２よりも上位階層の成分ｅＲ２（ｉ，ｊ）（ｉ＝０，１，２；ｊ＝０，１）の全てには、成分ｅＲ２（０，２）をさらに一方向性ハッシュ関数Ｈ＊を利用してハッシュ演算することにより得られた演算データＨ＊（ｅＲ２（０，２））（＝Ｈ＊３（ｅＲ２（２，２）））が割り当てられる。このときの演算データは、スケーラビリティＬの階層数が−１（実際には存在しない）のパケットに対応する値である。
【００６０】
以上のように生成された鍵要素マトリクスＭ１は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，２（ｉ＝０，１，２）に対してアクセス制御を有効にしている。
【００６１】
鍵要素マトリクスＭ２では、スケーラビリティＲの階層レベル１に対応したマトリクスとして、（２，１）成分に分割鍵ｅＲ１が割り当てられる。以下、この第１実施例では、鍵要素マトリクスＭ２の成分をｅＲ１（ｉ，ｊ）（ｉ＝０，１，２；ｊ＝０，１，２）と表記する。
【００６２】
分割鍵ｅＲ１に対応するスケーラビリティＲにおける階層（階層レベル＝１）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ１（１，１）には、Ｈ＊（ｅＲ１（２，１））の演算データ、成分ｅＲ１（０，１）にはＨ＊２（ｅＲ１（２，１））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル１について、スケーラビリティＬの階層性が保持される。
【００６３】
一方、鍵要素マトリクスＭ２において、スケーラビリティＲの階層レベル１よりも上位階層の成分ｅＲ１（ｉ，０）（ｉ＝０，１，２）の全てには、成分ｅＲ１（０，１）をさらに一方向性ハッシュ関数Ｈ＊を利用してハッシュ演算することにより得られた演算データＨ＊（ｅＲ１（０，１））（＝Ｈ＊３（ｅＲ１（２，１）））が割り当てられる。このときの演算データは、スケーラビリティＬの階層数が−１（実際には存在しない）のパケットに対応する値である。
【００６４】
他方、鍵要素マトリクスＭ２において、スケーラビリティＲの階層レベル１よりも下位階層の成分ｅＲ１（ｉ，２）（ｉ＝０，１、２）には、いずれも成分ｅＲ１（ｉ，１）（ｉ＝０，１、２）と同じ値がそれぞれ割り当てられる。なお、成分ｅＲ１（ｉ，２）（ｉ＝０，１）には、一旦、成分ｅＲ１（２，１）の値がコピーされた成分ｅＲ１（２，２）に対して一方向性ハッシュ関数を利用したハッシュ演算を順次行うことにより得られる値が割り当てられても同義である。なお、図９等において、“ＣＰ”はコピーを意味する。
【００６５】
以上のように生成された鍵要素マトリクスＭ２は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，１（ｉ＝０，１，２）に対してアクセス制御を有効にしている。
【００６６】
同様に、鍵要素マトリクスＭ３では、スケーラビリティＲの階層レベル０（最上位階層）に対応したマトリクスとして、（２，０）成分に分割鍵ｅＲ０が割り当てられる。以下、この第１実施例では、鍵要素マトリクスＭ３の成分をｅＲ０（ｉ，ｊ）（ｉ＝０，１，２；ｊ＝０，１，２）と表記する。
【００６７】
分割鍵ｅＲ０に対応するスケーラビリティＲにおける階層（階層レベル＝０）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ０（１，０）には、Ｈ＊（ｅＲ０（２，０））の演算データ、成分ｅＲ０（０，０）にはＨ＊２（ｅＲ０（２，０））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル０について、スケーラビリティＬの階層性が保持される。
【００６８】
一方、鍵要素マトリクスＭ３において、スケーラビリティＲの階層レベル０よりも上位階層は存在しないため、成分ｅＲ０（０，０）に対する更なるハッシュ演算は行われない。
【００６９】
他方、鍵要素マトリクスＭ３において、スケーラビリティＲの階層レベル０よりも下位階層の成分ｅＲ０（ｉ，ｊ）（ｉ＝０，１、２；ｊ＝１、２）には、いずれにも成分ｅＲ０（ｉ，０）（ｉ＝０，１、２）と同じ値がそれぞれ割り当てられる。なお、成分ｅＲ０（ｉ，ｊ）（ｉ＝０，１、２；ｊ＝１，２）には、一旦、成分ｅＲ０（２，０）の値がコピーされた成分ｅＲ０（２，２）、ｅＲ０（２，１）それぞれに対して一方向性ハッシュ関数を利用したハッシュ演算を順次行うことにより得られる値が割り当てられても同義である。
【００７０】
この場合も、生成された鍵要素マトリクスＭ３は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，０（ｉ＝０，１，２）に対してアクセス制御を有効にしている。
【００７１】
続いて、鍵生成手段４６３が、上述のようにマトリクス生成手段４６２により生成された鍵要素マトリクスＭ１〜Ｍ３間で座標一致している成分を結合することにより、部分鍵マトリクスＭＰ１を生成する。すなわち、部分鍵マトリクスＭＰ１の各成分が、パケットＰｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２）それぞれに対応した部分鍵Ｋｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２）となる。このように、一方のスケーラビリティＲ（解像度レベル）の階層ごとに、他方のスケーラビリティＬ（レイヤ）の階層性を保持して部分鍵を生成することで、解像度レベルにおいてもレイヤにおいても階層性が保持される。なお、出力手段４８０は、以上のように鍵生成手段４６３により生成された部分鍵Ｋｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２）を符号化手段４１０に出力する。また、符号化手段４１０は、パケットＰｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２）それぞれを、対応した部分鍵Ｋｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２）により符号化する。このように、ネットワーク３００を介して配信されるべき符号化データとして、暗号化されたＪＰＥＧ２０００のパケット符号化列が、マスター鍵Ｋ２，２とともにＰＣ２００へ配信される。
【００７２】
（第２実施例）
次に、この発明に係る暗号鍵生成装置の第２実施例において実行される暗号鍵生成動作を説明する。なお、第２実施例に係る暗号鍵生成装置も、第２実施例と同様に、図７に示された構造を有し、より具体的には図２の領域（ａ）に示されたハードウエア構成により実現される。この第２実施例では、アクセス制御対象となるスケーラビリティをスケーラビリティＬ（レイヤ）とスケーラビリティＲ（解像度レベル）とし、スケーラビリティＬの階層数ＮＬを３、スケーラビリティＲの階層数ＮＲを２とする。このとき、スケーラビリティＬ、Ｒにおける各階層のパケットは、３×２のマトリクス成分Ｐｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１）として扱われる。なお、図１０は、この発明に係る暗号鍵生成装置の第２実施例において実行される暗号鍵生成動作（図７に示された演算手段４６０の動作）を説明するための概念図である。また、図１１は、第２実施例に係る暗号鍵生成装置のマトリクス生成手段４６２による鍵要素マトリクスの生成を説明するための概念図である。
【００７３】
マスター鍵は、入力手段４５０によりＤ／Ｂ１１０又はネットワーク３００を介して配信された部分鍵であり、一旦記録手段４７０に記録される。すなわち、マスター鍵は、記録手段４７０により予め管理されている最下位のパケットに対応する部分鍵であり、図１０の例では、スケーラビリティＬ、Ｒいずれにおいても最下位に位置する階層のパケットＰ２，１に対応する暗号鍵Ｋ２，１である。このマスター鍵Ｋ２，１は、鍵分割手段４６１により、スケーラビリティＬの階層数ＮＬとスケーラビリティＲの階層数ＮＲのうち小さい値（＝ｍｉｎ（ＮＬ，ＮＲ））に分割される。すなわち、鍵分割手段４６１が、スケーラビリティＲの階層数（最小階層数２）でマスター鍵Ｋ２，１を分割することにより、分割鍵ｅＲ１、ｅＲ０が得られる。これら分割鍵ｅＲ１、ｅＲ０はスケーラビリティＲの各階層に対応したルート鍵であり、マトリクス生成手段４６２は、これらスケーラビリティＲの階層ごとに鍵要素マトリクスＭ１、Ｍ２が生成される。
【００７４】
鍵要素マトリクスＭ１、Ｍ２それぞれにおける各マトリクス成分は、対応するルート鍵である分割鍵ｅＲ１、ｅＲ０から、図１１に示されたように、順次生成される。
【００７５】
まず、鍵要素マトリクスＭ１では、スケーラビリティＲの階層レベル１（最下位階層）に対応したマトリクスとして、（２，１）成分に分割鍵ｅＲ１が割り当てられる。なお、図中、マトリクス成分ｅの上側添え字Ｒ１は、当該鍵要素マトリクスＭ１に対応するスケーラビリティＲ（基準スケーラビリティ）の階層レベルを示し、下側添え字は、鍵要素マトリクスＭ１の成分座標を示す。以下、この第２実施例では、鍵要素マトリクスＭ１の成分をｅＲ１（ｉ，ｊ）（ｉ＝０，１，２；ｊ＝０，１）と表記する。
【００７６】
分割鍵ｅＲ１に対応するスケーラビリティＲにおける階層（階層レベル＝１）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ１（１，１）、ｅＲ２（０，１）には、一方向性ハッシュ関数Ｈ＊を利用した分割鍵ｅＲ１のハッシュ演算を繰り返すことにより順次得られた演算データを割り当てられる。すなわち、ｅＲ１（１，１）にはＨ＊（ｅＲ１（２，１））の演算データ、成分ｅＲ１（０，１）にはＨ＊２（ｅＲ１（２，１））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル１について、スケーラビリティＬの階層性が保持される。
【００７７】
一方、鍵要素マトリクスＭ１において、スケーラビリティＲの階層レベル１よりも上位階層の成分ｅＲ１（ｉ，０）（ｉ＝０，１，２）の全てには、成分ｅＲ１（０，１）をさらに一方向性ハッシュ関数Ｈ＊を利用してハッシュ演算することにより得られた演算データＨ＊（ｅＲ１（０，１））（＝Ｈ＊３（ｅＲ１（２，１）））が割り当てられる。このときの演算データは、スケーラビリティＬの階層数が−１（実際には存在しない）のパケットに対応する値である。
【００７８】
以上のように生成された鍵要素マトリクスＭ１は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，１（ｉ＝０，１，２）に対してアクセス制御を有効にしている。
【００７９】
鍵要素マトリクスＭ２では、スケーラビリティＲの階層レベル０（最上位階層）に対応したマトリクスとして、（２，０）成分に分割鍵ｅＲ０が割り当てられる。以下、この第２実施例では、鍵要素マトリクスＭ２の成分をｅＲ０（ｉ，ｊ）（ｉ＝０，１，２；ｊ＝０，１）と表記する。
【００８０】
分割鍵ｅＲ０に対応するスケーラビリティＲにおける階層（階層レベル＝０）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ０（１，０）には、Ｈ＊（ｅＲ０（２，０））の演算データ、成分ｅＲ０（０，０）にはＨ＊２（ｅＲ０（２，０））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル０について、スケーラビリティＬの階層性が保持される。
【００８１】
一方、鍵要素マトリクスＭ２において、スケーラビリティＲの階層レベル０よりも上位階層は存在しないため、成分ｅＲ０（０，０）に対する更なるハッシュ演算は行われない。
【００８２】
他方、鍵要素マトリクスＭ２において、スケーラビリティＲの階層レベル０よりも下位階層の成分ｅＲ０（ｉ，１）（ｉ＝０，１、２）には、いずれも成分ｅＲ０（ｉ，０）（ｉ＝０，１、２）と同じ値がそれぞれ割り当てられる。なお、成分ｅＲ０（ｉ，１）（ｉ＝０，１、２）には、一旦、成分ｅＲ０（２，０）の値がコピーされた成分ｅＲ０（２，１）に対して一方向性ハッシュ関数を利用したハッシュ演算を順次行うことにより得られる値が割り当てられても同義である。なお、図１１においてＣＰはコピー動作を示す。
【００８３】
この場合も、生成された鍵要素マトリクスＭ２は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，０（ｉ＝０，１，２）に対してアクセス制御を有効にしている。なお、図１１等において、“ＣＰ”はコピーを意味する。
【００８４】
続いて、鍵生成手段４６３が、上述のようにマトリクス生成手段４６２により生成された鍵要素マトリクスＭ１、Ｍ２間で座標一致している成分を結合することにより、部分鍵マトリクスＭＰ２を生成する。すなわち、部分鍵マトリクスＭＰ２の各成分が、パケットＰｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１）それぞれに対応した部分鍵Ｋｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１）となる。このように、一方のスケーラビリティＲ（解像度レベル）の階層ごとに、他方のスケーラビリティＬ（レイヤ）の階層性を保持して部分鍵を生成することで、解像度レベルにおいてもレイヤにおいても階層性が保持される。なお、出力手段４８０は、以上のように鍵生成手段４６３により生成された部分鍵Ｋｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２）を符号化手段４１０に出力する。また、符号化手段４１０は、パケットＰｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１）それぞれを、対応した部分鍵Ｋｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１）により符号化する。このように、ネットワーク３００を介して配信されるべき符号化データとして、暗号化されたＪＰＥＧ２０００のパケット符号化列が、マスター鍵Ｋ２，１とともにＰＣ２００へ配信される。
【００８５】
（第３実施例）
以下、この発明に係る暗号鍵生成装置の第３実施例において実行される暗号鍵生成動作を説明する。なお、第３実施例に係る暗号鍵生成装置も、第１実施例と同様に、図７に示された構造を有し、より具体的には図２の領域（ａ）に示されたハードウエア構成により実現される。この第３実施例では、アクセス制御対象となるスケーラビリティをスケーラビリティＬ（レイヤ）とスケーラビリティＲ（解像度レベル）とし、スケーラビリティＬの階層数ＮＬを４、スケーラビリティＲの階層数ＮＲを３とする。このとき、スケーラビリティＬ、Ｒにおける各階層のパケットは、４×３のマトリクス成分Ｐｉ，ｊ（ｉ＝０，１，２；ｊ＝０，１，２，３）として扱われる。なお、図１２は、この発明に係る暗号鍵生成装置の第３実施例において実行される暗号鍵生成動作（図７に示された演算手段４６０の動作）を説明するための概念図である。また、図１３は、第３実施例に係る暗号鍵生成装置のマトリクス生成手段４６２による鍵要素マトリクスの生成を説明するための概念図である。
【００８６】
マスター鍵は、入力手段４５０によりＤ／Ｂ１１０又はネットワーク３００を介して配信された部分鍵であり、一旦記録手段４７０に記録される。すなわち、マスター鍵は、記録手段４７０により予め管理されている最下位のパケットに対応する部分鍵であり、図１２の例では、スケーラビリティＬ、Ｒいずれにおいても最下位に位置する階層のパケットＰ３，２に対応する暗号鍵Ｋ３，２である。このマスター鍵Ｋ３，２は、鍵分割手段４６１により、スケーラビリティＬの階層数ＮＬとスケーラビリティＲの階層数ＮＲのうち小さい値（＝ｍｉｎ（ＮＬ，ＮＲ））に分割される。すなわち、鍵分割手段４６１がスケーラビリティＲの階層数（最小階層数３）でマスター鍵Ｋ３，２を分割することにより、分割鍵ｅＲ２、ｅＲ１、ｅＲ０が得られる。これら分割鍵ｅＲ２、ｅＲ１、ｅＲ０はスケーラビリティＲの各階層に対応したルート鍵であり、マトリクス生成手段４６２は、これらスケーラビリティＲの階層ごとに鍵要素マトリクスＭ１〜Ｍ３が生成される。
【００８７】
鍵要素マトリクスＭ１〜Ｍ３それぞれにおける各マトリクス成分は、対応するルート鍵である分割鍵ｅＲ２、ｅＲ１、ｅＲ０から、図１３に示されたように、順次生成される。
【００８８】
まず、鍵要素マトリクスＭ１では、スケーラビリティＲの階層レベル２（最下位階層）に対応したマトリクスとして、（３，２）成分に分割鍵ｅＲ２が割り当てられる。なお、図中、マトリクス成分ｅの上側添え字Ｒ２は、当該鍵要素マトリクスＭ１に対応するスケーラビリティＲ（基準スケーラビリティ）の階層レベルを示し、下側添え字は、鍵要素マトリクスＭ１の成分座標を示す。以下、この第３実施例では、鍵要素マトリクスＭ１の成分をｅＲ２（ｉ，ｊ）（ｉ＝０，１，２，３；ｊ＝０，１，２）と表記する。
【００８９】
分割鍵ｅＲ２に対応するスケーラビリティＲにおける階層（階層レベル＝２）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ２（２，２）、ｅＲ２（１，２）、ｅＲ２（０，２）には、一方向性ハッシュ関数Ｈ＊を利用した分割鍵ｅＲ２のハッシュ演算を繰り返すことにより順次得られた演算データを割り当てられる。すなわち、ｅＲ２（２，２）にはＨ＊（ｅＲ２（３，２））の演算データ、ｅＲ２（１，２）にはＨ＊２（ｅＲ２（３，２））の演算データ、成分ｅＲ２（０，２）にはＨ＊３（ｅＲ２（３，２））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル２について、スケーラビリティＬの階層性が保持される。
【００９０】
一方、鍵要素マトリクスＭ１において、スケーラビリティＲの階層レベル２よりも上位階層の成分ｅＲ２（ｉ，ｊ）（ｉ＝０，１，２，３；ｊ＝０，１）の全てには、成分ｅＲ２（０，２）をさらに一方向性ハッシュ関数Ｈ＊を利用してハッシュ演算することにより得られた演算データＨ＊（ｅＲ２（０，２））（＝Ｈ＊４（ｅＲ２（３，２）））が割り当てられる。このときの演算データは、スケーラビリティＬの階層数が−１（実際には存在しない）のパケットに対応する値である。
【００９１】
以上のように生成された鍵要素マトリクスＭ１は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，２（ｉ＝０，１，２，３）に対してアクセス制御を有効にしている。
【００９２】
鍵要素マトリクスＭ２では、スケーラビリティＲの階層レベル１に対応したマトリクスとして、（３，１）成分に分割鍵ｅＲ１が割り当てられる。以下、この第３実施例では、鍵要素マトリクスＭ２の成分をｅＲ１（ｉ，ｊ）（ｉ＝０，１，２，３；ｊ＝０，１，２）と表記する。
【００９３】
分割鍵ｅＲ１に対応するスケーラビリティＲにおける階層（階層レベル＝１）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ１（２，１）には、Ｈ＊（ｅＲ１（３，１））の演算データ、成分ｅＲ１（１，１）には、Ｈ＊２（ｅＲ１（３，１））の演算データ、成分ｅＲ１（０，１）にはＨ＊３（ｅＲ１（３，１））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル１について、スケーラビリティＬの階層性が保持される。
【００９４】
一方、鍵要素マトリクスＭ２において、スケーラビリティＲの階層レベル１よりも上位階層の成分ｅＲ１（ｉ，０）（ｉ＝０，１，２，３）の全てには、成分ｅＲ１（０，１）をさらに一方向性ハッシュ関数Ｈ＊を利用してハッシュ演算することにより得られた演算データＨ＊（ｅＲ１（０，１））（＝Ｈ＊４（ｅＲ１（３，１）））が割り当てられる。このときの演算データは、スケーラビリティＬの階層数が−１（実際には存在しない）のパケットに対応する値である。
【００９５】
他方、鍵要素マトリクスＭ２において、スケーラビリティＲの階層レベル１よりも下位階層の成分ｅＲ１（ｉ，２）（ｉ＝０，１、２，３）には、いずれも成分ｅＲ１（ｉ，１）（ｉ＝０，１、２，３）と同じ値がそれぞれ割り当てられる。なお、成分ｅＲ１（ｉ，２）（ｉ＝０，１，２）には、一旦、成分ｅＲ１（３，１）の値がコピーされた成分ｅＲ１（３，２）に対して一方向性ハッシュ関数を利用したハッシュ演算を順次行うことにより得られる値が割り当てられても同義である。なお、図１３等において、“ＣＰ”はコピーを意味する。
【００９６】
以上のように生成された鍵要素マトリクスＭ２は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，１（ｉ＝０，１，２，３）に対してアクセス制御を有効にしている。
【００９７】
同様に、鍵要素マトリクスＭ３では、スケーラビリティＲの階層レベル０（最上位階層）に対応したマトリクスとして、（３，０）成分に分割鍵ｅＲ０が割り当てられる。以下、この第３実施例では、鍵要素マトリクスＭ３の成分をｅＲ０（ｉ，ｊ）（ｉ＝０，１，２，３；ｊ＝０，１，２）と表記する。
【００９８】
分割鍵ｅＲ０に対応するスケーラビリティＲにおける階層（階層レベル＝０）であってスケーラビリティＬにおける残りの階層のそれぞれ対応する座標成分ｅＲ０（２，０）には、Ｈ＊（ｅＲ０（３，０））の演算データ、成分ｅＲ０（１，０）には、Ｈ＊２（ｅＲ０（３，０））の演算データ、成分ｅＲ０（０，０）にはＨ＊３（ｅＲ０（３，０））の演算データが割り当てられる。このようなマトリクス演算操作により、スケーラビリティＲの階層レベル０について、スケーラビリティＬの階層性が保持される。
【００９９】
一方、鍵要素マトリクスＭ３において、スケーラビリティＲの階層レベル０よりも上位階層は存在しないため、成分ｅＲ０（０，０）に対する更なるハッシュ演算は行われない。
【０１００】
他方、鍵要素マトリクスＭ３において、スケーラビリティＲの階層レベル０よりも下位階層の成分ｅＲ０（ｉ，ｊ）（ｉ＝０，１、２，３；ｊ＝１、２）には、いずれも成分ｅＲ０（ｉ，０）（ｉ＝０，１，２，３）と同じ値がそれぞれ割り当てられる。なお、成分ｅＲ０（ｉ，ｊ）（ｉ＝０，１、２，３；ｊ＝１，２）には、一旦、成分ｅＲ０（３，０）の値がコピーされた成分ｅＲ０（３，２）、ｅＲ０（３，１）それぞれに対して一方向性ハッシュ関数を利用したハッシュ演算を順次行うことにより得られる値が割り当てられても同義である。なお、図１３においてＣＰはコピー動作を示す。
【０１０１】
この場合も、マトリクス生成手段４６２により生成された鍵要素マトリクスＭ３は、スケーラビリティＬの階層性を保持したまま、パケットＰｉ，０（ｉ＝０，１，２，３）に対してアクセス制御を有効にしている。
【０１０２】
続いて、鍵生成手段４６３が、上述のようにマトリクス生成手段４６２により生成された鍵要素マトリクスＭ１〜Ｍ３間で座標一致している成分を結合することにより、部分鍵マトリクスＭＰ３を生成する。すなわち、部分鍵マトリクスＭＰ３の各成分が、パケットＰｉ，ｊ（ｉ＝０，１，２，３；ｊ＝０，１，２）それぞれに対応した部分鍵Ｋｉ，ｊ（ｉ＝０，１，２，３；ｊ＝０，１，２）となる。このように、一方のスケーラビリティＲ（解像度レベル）の階層ごとに、他方のスケーラビリティＬ（レイヤ）の階層性を保持して部分鍵を生成することで、解像度レベルにおいてもレイヤにおいても階層性が保持される。なお、出力手段４８０は、以上のように鍵生成手段４６３により生成された部分鍵Ｋｉ，ｊ（ｉ＝０，１，２，３；ｊ＝０，１，２）を符号化手段４１０に出力する。また、符号化手段４１０は、また、パケットＰｉ，ｊ（ｉ＝０，１，２，３；ｊ＝０，１，２）それぞれを、対応した部分鍵Ｋｉ，ｊ（ｉ＝０，１，２，３；ｊ＝０，１，２）により符号化する。このように、ネットワーク３００を介して配信されるべき符号化データとして、暗号化されたＪＰＥＧ２０００のパケット符号化列が、マスター鍵Ｋ３，２とともにＰＣ２００へ配信される。
【０１０３】
（結託攻撃耐性の評価）
続いて、上述のように構成された第１〜第３実施例に係る暗号鍵生成装置により生成された暗号鍵（各階層のパケットに対応した部分鍵）の結託攻撃に対する耐性について、評価する。
【０１０４】
まず、この評価では、階層数ＮＬのスケーラビリティＬと階層数ＮＲのスケーラビリティＲ（解像度レベル）を有するＪＰＥＧ２０００データを符号化する場合を前提とする。
【０１０５】
ＪＰＥＧ２０００のパケットＰｉ，ｊ（ｉ＝０，１，…，ＮＬ−１；ｊ＝０，１，…，ＮＲ−１）に対する部分鍵Ｋｉ，ｊは、最下位のパレットＰＮＬ−１，ＮＲ−１に対する部分鍵ＫＮＬ−１，ＮＲ−１をマスター鍵とし、一方向性ハッシュ関数Ｈ＊を従属的に生成される。なお、階層の上位及び下位の概念は図３と同じである。すなわち、部分鍵Ｋｉ，ｊは、スケーラビリティＬ、ＲのいずれにおいてもパケットＰｉ，ｊの階層より下位又は同位の全ての階層のパケットＰａ１，ｂ１（ａ１＝ｉ，ｉ＋１，…ＮＬ−１；ｂ１＝ｊ，ｊ＋１，…，ＮＲ−１）に対応した部分鍵Ｋａ１，ｂ１から従属的に生成されなければならない。この条件の下で、部分鍵Ｋｉ，ｊがスケーラビリティＬ、ＲのいずれにおいてもパケットＰｉ，ｊより上位に位置する階層のパケットＰａ２，ｂ２（ａ２＝０，１，…ｉ−１；ｂ２＝０，１，…，ｊ−１）に対応する部分鍵Ｋａ２，ｂ２から、結託攻撃により不正に生成されないためには、該部分鍵Ｋｉ，ｊを構成する少なくとも一部の要素が部分鍵Ｋａ２，ｂ２よりも下位階層のパケットに対応した要素である必要がある。
【０１０６】
例えば、ＮＲ＜ＮＬと仮定する。スケーラビリティＲの階層ｊ（０≦ｊ≦ＮＲ−１）である全てのパケットＰｉ，ｊ（ｉ＝０，１，…，ＮＬ−１）を対象とする部分鍵Ｋｉ，ｊの要素ｅＲｊｉ，ｊは、鍵要素マトリクスＭｊの要素演算において、ルート鍵としての要素ｅＲｊから、一方向性ハッシュ関数Ｈ＊を利用したハッシュ演算Ｈ＊（ＮＬ−１−ｉ）（ｅＲｊ）により従属的に生成される。このとき、スケーラビリティＲの下位階層ｂ１（＜ｊ）である全てのパケットＰｉ，ｂ１（ｉ＝０，１，…，ＮＬ−１）を対象とする部分鍵Ｋｉ，ｂ１の要素ｅＲｊｉ，ｂ１には、鍵要素マトリクスＭｊにおける上位階層のハッシュ演算値Ｈ＊（ＮＬ−１−ｉ）（ｅＲｊ）がそのまま反映される（コピーされる）。一方、スケーラビリティＲにおいて上位階層ｂ２（＞ｊ）である全てのパケットＰｉ，ｂ２（ｉ＝０，１，…，ＮＬ−１）を対象とする部分鍵Ｋｉ，ｂ２の要素ｅＲｊｉ，ｂ２には、ハッシュ演算値Ｈ＊ＮＬ（ｅＲｊ）が割り当てられる。
【０１０７】
そのため、下位階層の部分鍵を構成する要素の少なくとも一部には、上位階層の部分鍵が反映される一方、上位階層の部分鍵を構成する要素には、下位階層の部分鍵の要素が反映されない。すなわち、この発明に係る暗号鍵生成装置により生成される部分鍵では、上位階層の部分鍵からは下位階層の部分鍵は生成されず、よって、結託攻撃に対する耐性が得られる。
【０１０８】
（暗号解除における暗号鍵生成）
次に、暗号解除（復号化）において、この発明に係る暗号鍵生成装置による暗号鍵（許可された各パケットに対応した部分鍵）の生成について説明する。上述の暗号鍵生成動作（図７に示された演算手段４６０の動作）では、唯一管理されるマスター鍵から従属的により上位に位置する階層の部分鍵がそれぞれ生成された。暗号解除の際、すなわち図７におけるＰＣ２００における複合化処理においても、同様にマスター鍵から従属的に上位に位置する階層の部分鍵が生成されるが、開示を許諾されたパケット群のうち最下位のパケットに対する復号鍵（マスター鍵）のみがユーザ（ＰＣ２００）に配信される。
【０１０９】
具体的に、ＮＬ＝ＮＲ＝３場合、図３に示されたように、スケーラビリティＬ（レイヤ）及びスケーラビリティＲ（解像度レベル）までの濃淡画像ＱＬ，Ｒ（０≦Ｌ≦ＮＬ、０≦Ｒ≦ＮＲ）を要求したＰＣ２００側では、ＪＰＥＧ２０００のパケット符号列ＰＬ，Ｒを最下位パケット（スケーラビリティＬ、Ｒそれぞれにおいて最下位に位置する階層のパケット）として画像の開示を許諾されており、そのパケットに対する鍵ＫＬ，Ｒ（０≦Ｌ≦２、０≦Ｒ≦２）を入力手段４５０が受信する。なお、入力手段４５０により受信された鍵ＫＬ，Ｒ（０≦Ｌ≦２、０≦Ｒ≦２）は、一旦記録手段４７０に記録される。図３において、ユーザが符号化画像ＱＬ，Ｒの受信を許可された場合、当該暗号鍵生成装置４００は、マスター鍵として該符号化画像ＱＬ，Ｒに対応した鍵ＫＬ，Ｒを利用して、枠Ａ（（ＮＬ−Ｒ＋１）×（ＮＲ−Ｌ＋１））で囲まれた各パケットＰに対応した暗号解除鍵（復号鍵）を生成する。また、この場合、鍵ＫＬ，Ｒから生成される分割鍵ｅＲ２、ｅＲ１、ｅＲ０に対応した鍵要素マトリクスＭ１〜Ｍ３も（ＮＬ−Ｒ＋１）×（ＮＲ−Ｌ＋１）マトリクスとなる。
【０１１０】
以下の説明では、図３において、ユーザが符号化画像Ｑ１，１の受信を許可された場合について説明する。この場合、当該暗号鍵生成装置４００における鍵生成は図９の一部に相当しており、該符号化画像Ｑ１，１に対応した鍵Ｋ１，１を利用して、枠Ａで囲まれた各パケットＰ１，０、Ｐ０，１、Ｐ０，０に対応した暗号解除鍵（復号鍵）が生成される。
【０１１１】
そのため、ＰＣ２００側では、まず、記録手段４７０に記録された部分鍵Ｋ１，１をマスター鍵として、鍵分割手段４６１が、スケーラビリティＲの階層数で分割することにより（３分割）、３つの分割鍵ｅＲ２、ｅＲ１、ｅＲ０を生成する。
【０１１２】
続いて、マトリクス生成手段４６２がスケーラビリティＲの３つの階層ごとに鍵要素マトリクスを生成する。ここで、３つの分割鍵ｅＲ２、ｅＲ１、ｅＲ０のうち、対応するスケーラビリティＲの階層がマスター鍵Ｋ１，１の対応する階層よりも下位の分割鍵は、もう一つのスケーラビリティＬの階層レベルが−１となるハッシュ演算データである。したがって、この場合には、鍵要素マトリクスの全成分に対応する部分鍵と同じ値を予め割り当てておく。
【０１１３】
まず、スケーラビリティＲの階層２に対応する２×２の鍵要素マトリクスＭ１の生成において、部分鍵ｅＲ２は、スケーラビリティＬの階層−１に相当するハッシュ演算データである。すなわち、スケーラビリティＲの分割鍵ｅＲ２に対応する階層（階層レベル：２）は、マスター鍵Ｋ１，１に対応するスケーラビリティＲの階層（階層レベル：１）よりも下位にあるため、該分割鍵ｅＲ２の値はスケーラビリティＬの階層レベルが−１のときのハッシュ演算値である。この場合、分割鍵ｅＲ２に対応する２×２の鍵マトリクスＭ１の全マトリクス成分ｅＲ２（０，１）、ｅＲ２（１，１）、ｅＲ２（０，０）、ｅＲ２（１，０）には、分割鍵ｅＲ２と同じ値（スケーラビリティＬの階層レベルは−１）が割り当てられる。
【０１１４】
次に、スケーラビリティＲの階層１に対応する２×２の鍵要素マトリクスＭ２の生成では、まず、ｅＲ１（１，１）成分に分割鍵ｅＲ１の値が割り当てられる。スケーラビリティＬの階層が上位に位置する成分ｅＲ１（０，１）には、一方向性ハッシュ関数Ｈ＊を利用したハッシュ演算の演算データＨ＊（ｅＲ１（１，１））が割り当てられる。また、スケーラビリティＲの分割鍵ｅＲ１に対応した階層（階層レベル：１）よりも上位階層（階層レベル：０）に対応する成分ｅＲ１（１，０）、ｅＲ１（０，０）それぞれにはスケーラビリティＬの階層レベル：−１となるハッシュ演算データＨ＊２（ｅＲ２（１，１））が割り当てられる。逆に、スケーラビリティＲの分割鍵ｅＲ１に対応した階層（階層レベル：１）よりも下位階層（階層レベル：２）は、存在しないため、ハッシュ演算は行われない。
【０１１５】
一方、スケーラビリティＲの階層０に対応する２×２の鍵要素マトリクスＭ３の生成では、スケーラビリティＲの分割鍵ｅＲ０に対応した階層（階層レベル：０）よりも上位階層（階層レベル：−１）は存在しない。そこで、まず、ｅＲ０（１，０）成分に分割鍵ｅＲ０の値が割り当てられる。スケーラビリティＬの階層が上位に位置する成分ｅＲ０（０，０）には、一方向性ハッシュ関数Ｈ＊を利用したハッシュ演算の演算データＨ＊（ｅＲ１（１，０））が割り当てられる。逆に、スケーラビリティＲの分割鍵ｅＲ０に対応した階層（階層レベル：０）よりも下位階層（階層レベル：１）には、ｅＲ０（１，１）成分に成分ｅＲ０（１，０）値がコピーされ、このコピー値に基づいてハッシュ演算が順次行われる。すなわち、スケーラビリティＬの階層が上位に位置する成分ｅＲ０（０，１）には、一方向性ハッシュ関数Ｈ＊を利用したハッシュ演算の演算データＨ＊（ｅＲ０（１，１））が割り当てられる。
【０１１６】
鍵生成手段４６３は、以上のようにマトリクス生成手段４６２により生成された、スケーラビリティＲの各階層に対応した２×２の鍵要素マトリクスＭ１〜Ｍ３間で座標一致している成分を結合することにより、マスター鍵Ｋ１，１から、パケットＰ１，０、Ｐ０，１、Ｐ０，０に対応した復号鍵Ｋ１，０、Ｋ０，１、Ｋ０，０、を生成する。
【０１１７】
上述のように、あるパケットに対する部分鍵は、そのパケットより少なくとも一方のスケーラビリティにおいて上位にあるパケットからは生成されず、かつ、いずれのスケーラビリティにおいても同位又は下位にあるパケットからは生成可能である。そのため、結託攻撃に対して耐性を有する。
【０１１８】
（第４実施例）
図１４は、この発明に係る暗号鍵生成装置の第４実施例が実行する暗号鍵生成動作として、３種類以上の階層的スケーラビリティを有するディジタルデータについて、部分鍵の生成を説明するための概念図である。また、図１５は、図１４の部分鍵生成における階層テーブル１１ａと、部分鍵要素マトリクスＭＰａ〜ＭＰｃ及び部分鍵マトリクスＭＰ４の座標対応関係を示す図である。図１６は、図１４の部分鍵生成における部分鍵要素マトリクスＭＰａ〜ＭＰｃ及び部分鍵マトリクスＭＰ４の要素間対応関係を説明するための図である。この第４実施例に係る暗号鍵生成装置も、第１実施例と同様に、図７に示された構造を有し、より具体的には図２の領域（ａ）に示されたハードウエア構成により実現される。
【０１１９】
アクセス制御対象のスケーラビリティが３種類以上の場合、まず２種類のスケーラビリティの組合せに対して上述の鍵生成手順（鍵生成手段４６１、マトリクス生成手段４６２、鍵生成手段４６３の動作）を最小処理単位として繰返す方式が考えられる。このとき、アクセス制御対象のスケーラビリティ数をＮＳとすると、最小処理単位の繰り返し回数は、ＮＳＣ２（＝（ＮＳ（ＮＳ−１））／２）となる。
【０１２０】
図１４に示された例では、３種類のスケーラビリティとして、３階層のＬ（レイヤ）、２階層のＲ（解像度レベル）及び３階層のＣ（コンポーネント）を有するディジタルデータにおける各パケットに対応した暗号鍵が、当該第4実施例に係る暗号鍵生成装置４００により生成される。この場合、スケーラビリティＲ、Ｌの組について部分鍵要素マトリクスＭＰｂ（成分ＫＲＬ（０，０）〜成分ＫＲＬ（２，１））と、スケーラビリティＲ、Ｃの組について部分鍵要素マトリクスＭＰｃ（成分ＫＲＣ（０，０）〜成分ＫＲＣ（２，１））と、スケーラビリティＬ、Ｃの組について部分鍵要素マトリクスＭＰａ（成分ＫＬＣ（０，０）〜成分ＫＬＣ（２，２））が、上述の第１〜第３実施例と同様の演算工程を経て順次生成される。
【０１２１】
その際、図１５に示されたように、マトリクス生成手段４６２は、スケーラビリティＬ、Ｒ、Ｃにおける階層値の全組み合わせを示す階層テーブル１１ａも生成する。この階層テーブル１１ａは、各組み合わせの階層値群により、スケーラビリティＬ、Ｒ、Ｃにおける階層それぞれのデータ単位に対応した部分鍵を成分とする部分鍵マトリクスＭＰ４を座標表現している。また、この階層テーブル１１ａは、スケーラビリティの種類と階層値の関係を示しており、この関係からスケーラビリティの組み合わせ全てについて生成された部分鍵要素マトリクスＭＰａ〜ＭＰｃの成分を特定することができる。すなわち、マトリクス生成手段４６２は、階層テーブル１１ａにおける階層値の全組み合わせに対応した、部分鍵要素テーブル１１ｂを生成する。
【０１２２】
このように生成された部分鍵要素テーブル１１ｂに列挙された鍵組み合わせは、部分鍵マトリクスＭＰ４の各成分座標を示す階層テーブル１１ａの階層値組み合わせに対応している。部分鍵マトリクスＭＰ４の各成分ＫＬ、Ｒ，Ｃ（Ｌ＝０，１，２；Ｒ＝０，１；Ｃ＝０，１，２）は、図１６の領域（ａ）に示されたように、部分鍵要素テーブル１１ｂにおいて一の組み合わせを構成する鍵要素ＫＲＬＲ，Ｌ、ＫＲＣＲ，Ｃ、ＫＬＣＬ，Ｃを結合することにより得られる。したがって、部分鍵マトリクスＭＰ４の各成分座標を示す階層テーブル１１ａの全組み合わせについて、一の組み合わせに対応した部分鍵要素テーブル１１ｂにおける鍵要素それぞれを結合していくことにより（図１６の領域（ｂ）参照）、部分鍵マトリクスＭＰ４が得られる。
【０１２３】
このようにマトリクス生成手段４６２により生成された部分鍵マトリクスＭＰ４の各成分が、スケーラビリティとして、３階層のＬ（レイヤ）、２階層のＲ（解像度レベル）及び３階層のＣ（コンポーネント）を有するディジタルデータにおける各パケットに対応した暗号鍵となる。すなわち、部分鍵マトリクスＭＰ４の各成分が、その成分座標を表すスケーラビリティの階層値で特定されるパケットに対応した部分鍵である。
【０１２４】
なお、アクセス制御対象のスケーラビリティが３種類以上の場合であっても、２種類のスケーラビリティの場合と同様に、結託攻撃耐性を有している。
【０１２５】
上述の第４実施例に係る暗号鍵生成装置が実行する暗号鍵生成動作は、第１〜第３実施例と同様に、２次元マトリクス表現を用いて説明されたが、以下、３次元マトリクス表現を用いて立体化した状態で、第４実施例を一般化した暗号鍵生成動作を説明する。なお、以下の説明では、アクセス制御対象となるスケーラビリティＬ、Ｒ、Ｃについて、該スケーラビリティＬ（レイヤ）の階層数ＮＬを６、スケーラビリティＲ（解像度レベル）の階層数ＮＲを４、スケーラビリティＣ（コンポーネント）の階層数ＮＣを３とする。このとき、スケーラビリティＬ、Ｒ、Ｃにおける各階層のパケットは、図１７の領域（ａ）に示されたように、６×４×３のマトリクス成分Ｐｉ，ｊ，ｋ（ｉ＝０，１，２，３，４，５；ｊ＝０，１，２，３；ｋ＝０，１，２）として扱われる。なお、図１７の領域（ａ）は、３次元部分鍵マトリックスＱＭにおける各座標成分配置の立体表示である（３次元鍵要素マトリックスも同様）。
【０１２６】
図１７の領域（ａ）に示されたように、スケーラビリティＬ、Ｒ、Ｃそれぞれの最下位階層に対応した座標成分Ｋ５，３，２がマスター鍵となる。また、座標成分Ｋ０，０，０がスケーラビリティＬ、Ｒ、Ｃそれぞれの最上位階層に対応した座標成分である。
【０１２７】
上述の第４実施例に係る暗号鍵生成装置が実行する暗号鍵生成動作に従って、図１７の領域（ａ）のような６×４×３の３次元部分鍵マトリックスＱＭを生成する場合、まず、最下位部分鍵Ｋ５，３，２を２種類のスケーラビリティに関して行われる最小処理単位の繰り返し回数ＮＳＣ２だけ分割し、それぞれの最小処理単位用のマスター鍵ＫＲＬ、ＫＲＣ、ＫＬＣを生成する。ここで、マスター鍵ＫＲＬは、スケーラビリティＬ、Ｒに関する鍵要素生成用のマスター鍵である。マスター鍵ＫＲＣは、スケーラビリティＲ、Ｃに関する鍵要素生成用のマスター鍵である。また、マスター鍵ＫＬＣは、スケーラビリティＬ、Ｃに関する鍵要素生成用のマスター鍵である（図１７の領域（ｂ）参照）。
【０１２８】
図１８は、第４実施例が実行する動作を一般化した暗号鍵生成動作において、スケーラビリティＬ、Ｒの各階層に対応した鍵要素生成工程を立体表示された３次元マトリックスを用いて説明するための図である。なお、スケーラビリティＬ、Ｒに関する最小処理単位において、基準スケーラビリティはＲとし、該スケーラビリティＲの階層数４でマスター鍵ＫＲＬを分割することにより、４つの分割鍵ｅＲＬＲ３、ｅＲＬＲ２、ｅＲＬＲ１、ｅＲＬＲ０が得られる（図１７の領域（ｂ）参照）。
【０１２９】
まず、分割鍵ｅＲＬＲ３が３次元マトリックスの座標成分Ｐ５，３，２（図１８の領域（ａ）中の斜線部分）に割り当てられると、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ３のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図１８の領域（ａ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ３）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝３，Ｃ＝２以外の座標成分（図１８の領域（ａ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ３）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ３）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭＲＬ１が生成される。
【０１３０】
続いて、分割鍵ｅＲＬＲ２が３次元マトリックスの座標成分Ｐ５，２，２（図１８の領域（ｂ）中の斜線部分）に割り当てられると、この分割鍵ｅＲＬＲ２は一旦座標成分Ｐ５，３，２にコピー（ＣＰ）される。そして、スケーラビリティＲの階層３及び階層２それぞれについて、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ２のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図１８の領域（ｂ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ２）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝２〜３，Ｃ＝２以外の座標成分（図１８の領域（ｂ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ２）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ２）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭＲＬ２が生成される。
【０１３１】
上述と同様に、分割鍵ｅＲＬＲ１（斜線で示された座標成分Ｐ５，１，２として割り当てられる）のハッシュ演算により図１８の領域（ｃ）に示された３次元鍵要素マトリックスＱＭＲＬ３も生成される。なお、図１８の領域（ｃ）において、Ｈはハッシュ演算を示し、ＣＰは座標成分間における演算データのコピー動作を意味する。さらに、図１８の領域（ｄ）に示されたように、分割鍵ｅＲＬＲ０（斜線で示された座標成分Ｐ５，０，２として割り当てられる）のハッシュ演算により３次元鍵要素マトリックスＱＭＲＬ４も生成される。
【０１３２】
次に、図１９は、第４実施例が実行する動作を一般化した暗号鍵生成動作において、スケーラビリティＲ、Ｃの各階層に対応した鍵要素生成工程を立体表示された３次元マトリックスを用いて説明するための図である。なお、スケーラビリティＲ、Ｃに関する最小処理単位において、基準スケーラビリティはＲとし、該スケーラビリティＲの階層数４でマスター鍵ＫＲＣを分割することにより、４つの分割鍵ｅＲＣＲ３、ｅＲＣＲ２、ｅＲＣＲ１、ｅＲＣＲ０が得られる（図１７の領域（ｂ）参照）。
【０１３３】
分割鍵ｅＲＣＲ３が３次元マトリックスの座標成分Ｐ５，３，２（図１９の領域（ａ）中の斜線部分）に割り当てられると、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＣＲ３のハッシュ演算がスケーラビリティＣの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図１９の領域（ａ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＣの最上位階層に対応する座標成分には、演算データＨ＊２（ｅＲＣＲ３）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝５，Ｒ＝３，Ｃ＝０〜２以外の座標成分（図１９の領域（ａ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＣの最上位階層に対応する座標成分に割り当てられた演算データＨ＊２（ｅＲＣＲ３）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊３（ｅＲＣＲ３）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭＲＣ１が生成される。
【０１３４】
図１９の領域（ｂ）に示された３次元鍵要素マトリックスＱＭＲＣ２は、基準スケーラビリティＲの階層２よりも下位階層への分割鍵ｅＲＣＲ２（斜線で示された座標成分Ｐ５，２，２として割り当てられる）のコピー動作、及びスケーラビリティＣの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＣＲ２のハッシュ演算）を繰り返すことにより生成される。同様に、図１９の領域（ｃ）に示された３次元鍵要素マトリックスＱＭＲＣ３も、基準スケーラビリティＲの階層１よりも下位階層への分割鍵ｅＲＣＲ１（斜線で示された座標成分Ｐ５，１，２として割り当てられる）のコピー動作、及びスケーラビリティＣの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＣＲ１のハッシュ演算）を繰り返すことにより生成される。さらに、図１９の領域（ｄ）に示された３次元鍵要素マトリックスＱＭＲＣ４も、基準スケーラビリティＲの階層０（最上位階層）よりも下位階層への分割鍵ｅＲＣＲ０（斜線で示された座標成分Ｐ５，０，２として割り当てられる）のコピー動作、及びスケーラビリティＣの最下位階層から最下位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＣＲ０のハッシュ演算）を繰り返すことにより生成される。
【０１３５】
図２０は、第４実施例が実行する動作を一般化した暗号鍵生成動作において、スケーラビリティＬ、Ｃの各階層に対応した鍵要素生成工程を立体表示された３次元マトリックスを用いて説明するための図である。なお、スケーラビリティＬ、Ｃに関する最小処理単位において、基準スケーラビリティはＣとし、該スケーラビリティＣの階層数３でマスター鍵ＫＬＣを分割することにより、３つの分割鍵ｅＬＣＣ２、ｅＬＣＣ１、ｅＬＣＣ０が得られる（図１７の領域（ｂ）参照）。
【０１３６】
分割鍵ｅＬＣＣ２が３次元マトリックスの座標成分Ｐ５，３，２（図２０の領域（ａ）中の斜線部分）に割り当てられると、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＬＣＣ２のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図２０の領域（ａ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＬＣＣ２）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝３，Ｃ＝２以外の座標成分（図２０の領域（ａ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＬＣＣ２）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＬＣＣ２）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭＬＣ１が生成される。
【０１３７】
図２０の領域（ｂ）に示された３次元鍵要素マトリックスＱＭＬＣ２は、基準スケーラビリティＣの階層１よりも下位階層への分割鍵ｅＬＣＣ１（斜線で示された座標成分Ｐ５，３，１として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＬＣＣ１のハッシュ演算）を繰り返すことにより生成される。同様に、図２０の領域（ｃ）に示された３次元鍵要素マトリックスＱＭＬＣ３も、基準スケーラビリティＣの階層０（最上位階層）よりも下位階層への分割鍵ｅＬＣＣ０（斜線で示された座標成分Ｐ５，３，０として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＬＣＣ０のハッシュ演算）を繰り返すことにより生成される。
【０１３８】
以上のハッシュ演算が繰り返されることにより生成された、図１８〜図２０に示された３次元鍵要素マトリックスＱＭＲＬ１〜ＱＭＲＬ４、ＱＭＲＣ１〜ＱＭＲＣ４、ＱＭＬＣ１〜ＱＭＬＣ３について、それぞれの一致する座標成分同士を結合することにより、第４実施例が実行する動作を一般化した暗号鍵生成動作による３次元部分鍵マトリックスＱＭが得られる。
【０１３９】
（第５実施例）
上述の第４実施例に係る暗号鍵生成装置で実行される暗号鍵生成動作は、あくまでも２種類のスケーラビリティに関する部分鍵生成手中を最小処理単位としているため、各スケーラビリティの階層数が増加してくると得られた部分鍵では３人以上の結託攻撃は防げない（図１７の領域（ａ）の３次元部分鍵マトリックスＱＭのような多次元部分鍵マトリックスにおいて、同一部分鍵を有する複数の座標線分が存在する）。そこで、第５実施例に係る暗号鍵生成装置は、３人以上の結託攻撃に対しても十分な耐性を有するに暗号鍵を生成する。この第５実施例に係る暗号鍵生成装置も、図１７の領域（ａ）に示された３次元部分鍵マトリックスＱＭを参照しながら説明することとし、アクセス制御対象となるスケーラビリティＬ、Ｒ、Ｃについて、該スケーラビリティＬ（レイヤ）の階層数ＮＬを６、スケーラビリティＲ（解像度レベル）の階層数ＮＲを４、スケーラビリティＣ（コンポーネント）の階層数ＮＣを３とする。このとき、スケーラビリティＬ、Ｒ、Ｃにおける各階層のパケットは、６×４×３のマトリクス成分Ｐｉ，ｊ，ｋ（ｉ＝０，１，２，３，４，５；ｊ＝０，１，２，３；ｋ＝０，１，２）として扱われる。また、用意されるマスター鍵は、図１７の領域（ａ）に示されたように、スケーラビリティＬ、Ｒ、Ｃそれぞれの最下位階層に対応した座標成分Ｋ５，３，２がマスター鍵となる（座標成分Ｋ０，０，０は、スケーラビリティＬ、Ｒ、Ｃそれぞれの最上位階層に対応した座標成分）。なお、この第５実施例に係る暗号鍵生成装置も、第１実施例と同様に、図７に示された構造を有し、より具体的には図２の領域（ａ）に示されたハードウエア構成により実現される。また、容易さえれるマスター鍵は、予め入力手段４５０を介して記録手段４７０に記録されているものとする。
【０１４０】
まず、この第５実施例に係るに暗号鍵生成装置において実行される暗号鍵生成動作では、鍵分割手段４６１が、図２１に示されたように、３種類以上のスケーラビリティのうち２種類のスケーラビリティを予め基準スケーラビリティに設定する。図２１に示された例では、スケーラビリティＬ、Ｒが基準スケーラビリティに設定されている。特に、基準スケーラビリティＲ（第１基準スケーラビリティ）は、マスター鍵Ｋ５，３，２から分割鍵を生成するためのスケーラビリティである。鍵分割手段４６１は、この基準スケーラビリティＲの階層数４でマスター鍵を分割することにより、基準スケーラビリティＲの各階層に対応した４つの分割鍵ｅＲＬＲ３、ｅＲＬＲ２、ｅＲＬＲ１、ｅＲＬＲ０を生成する。一方、基準スケーラビリティＬは、上述のような一方向性ハッシュ関数を利用したハッシュ演算の演算方向を規定するためのスケーラビリティである。なお、図２１は、この発明に係る暗号鍵生成装置の第５実施例において実行される暗号鍵生成動作において、マスター鍵から分割鍵の生成動作（図７に示された鍵分割手段４６１の動作）の一例を説明するための図である。
【０１４１】
第５実施例に係る暗号鍵生成装置のマトリクス生成手段４６２は、３種類以上のスケーラビリティＬ、Ｒ、Ｃにおける階層値で座標表現された３次元鍵要素マトリクス（図１７の領域（ａ）参照）を、基準スケーラビリティＬ、Ｒを除く他のスケーラビリティＣの各階層について、基準スケーラビリティＲの各階層に対応した一連のハッシュ演算ごとに生成していく。そのため、この第５実施例では、３種類のスケーラビリティＬ、Ｒ、Ｃ（Ｌの階層数：６；Ｒの階層数：４；Ｃの階層数：３）について、上記数式（１）で与えられる総パケット数は７２であり、上記数式（２）で与えられる３次元鍵要素マトリックスの生成数は、１２となる。
【０１４２】
なお、図２２〜図２４は、第５実施例に係る暗号鍵生成装置のマトリクス生成手段４６２による３次元鍵要素マトリックスの生成工程を説明するための図である。特に、図２２は、基準スケーラビリティＬ、Ｒ以外の他のスケーラビリティＣの最下位階層（階層２）について、スケーラビリティＬの最下位階層から最上位階層に向かって順次ハッシュ演算された演算データが所定の座標成分に割り当てられることにより生成された３次元鍵要素マトリックスＱＭ１−１、ＱＭ２−１、ＱＭ３−１、ＱＭ４−１を示す。図２３は、基準スケーラビリティＬ、Ｒ以外の他のスケーラビリティＣの最下位階層よりも１階層だけ上位の階層（階層１）について、スケーラビリティＬの最下位階層から最上位階層に向かって順次ハッシュ演算された演算データが所定の座標成分に割り当てられることにより生成された３次元鍵要素マトリックスＱＭ１−２、ＱＭ２−２、ＱＭ３−２、ＱＭ４−２を示す。図２４は、基準スケーラビリティＬ、Ｒ以外の他のスケーラビリティＣの最上位階層（階層０）について、スケーラビリティＬの最下位階層から最上位階層に向かって順次ハッシュ演算された演算データが所定の座標成分に割り当てられることにより生成された３次元鍵要素マトリックスＱＭ１−３、ＱＭ２−３、ＱＭ３−３、ＱＭ４−３を示す。
【０１４３】
まず、図２２の領域（ａ）は、基準スケーラビリティＬ、Ｒ以外のスケーラビリティＣの最下位階層２について、基準スケーラビリティＲの最下位階層に対応する分割鍵ｅＲＬＲ３を用いて生成された３次元鍵要素マトリックスＱＭ１−１を示す。
【０１４４】
分割鍵ｅＲＬＲ３が３次元マトリックスの座標成分Ｐ５，３，２（図２２の領域（ａ）中の斜線部分）に割り当てられると、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ３のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図２２の領域（ａ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ３）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝３，Ｃ＝２以外の座標成分（図２２の領域（ａ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ３）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ３）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭ１−１が生成される。
【０１４５】
図２２の領域（ｂ）は、基準スケーラビリティＬ、Ｒ以外のスケーラビリティＣの最下位階層２について、基準スケーラビリティＲの階層２（最下位階層よりも１階層だけ上位の階層）に対応する分割鍵ｅＲＬＲ２を用いて生成された３次元鍵要素マトリックスＱＭ２−１を示す。
【０１４６】
この３次元鍵要素マトリックスＱＭ２−１の生成では、分割鍵ｅＲＬＲ２が３次元マトリックスの座標成分Ｐ５，２，２（図２２の領域（ｂ）中の斜線部分）に割り当てられる。このとき、分割鍵ｅＲＬＲ２は一旦座標成分Ｐ５，３，２にコピー（ＣＰ）される。そして、スケーラビリティＲの階層３及び階層２それぞれについて、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ２のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図２２の領域（ｂ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ２）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝２〜３，Ｃ＝２以外の座標成分（図２２の領域（ｂ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ２）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ２）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭ２−１が生成される。
【０１４７】
なお、図２２の領域（ｃ）に示された３次元鍵要素マトリックスＱＭ３−１も、上述の３次元鍵要素マトリックスＱＭ１−１、ＱＭ２−１の生成と同様に、基準スケーラビリティＲの階層１よりも下位階層への分割鍵ｅＲＬＲ１（斜線で示された座標成分Ｐ５，１，２として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ１のハッシュ演算）を繰り返すことにより生成される。同様に、図２２の領域（ｄ）に示された３次元鍵要素マトリックスＱＭ４−１も、基準スケーラビリティＣの階層０（最上位階層）よりも下位階層への分割鍵ｅＲＬＲ０（斜線で示された座標成分Ｐ５，０，２として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ０のハッシュ演算）を繰り返すことにより生成される。
【０１４８】
次に、図２３の領域（ａ）は、基準スケーラビリティＬ、Ｒ以外のスケーラビリティＣの階層１（最下位階層よりも１階層だけ上位の階層）について、基準スケーラビリティＲの最下位階層に対応する分割鍵ｅＲＬＲ３を用いて生成された３次元鍵要素マトリックスＱＭ１−２を示す。
【０１４９】
分割鍵ｅＲＬＲ３が３次元マトリックスの座標成分Ｐ５，３，２（図２３の領域（ａ）中の斜線部分）に割り当てられると、この分割鍵ｅＲＬＲ３は一旦座標成分Ｐ５，３，１にコピー（ＣＰ）される。そして、スケーラビリティＣの階層２（最下位階層）及び階層１（最下位階層よりも１階層だけ上位の階層）それぞれについて、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ３のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図２３の領域（ａ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ３）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝３，Ｃ＝２〜３以外の座標成分（図２３の領域（ａ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ３）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ３）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭ１−２が生成される。
【０１５０】
図２３の領域（ｂ）は、基準スケーラビリティＬ、Ｒ以外のスケーラビリティＣの階層１について、基準スケーラビリティＲの階層２（最下位階層よりも１階層だけ上位の階層）に対応する分割鍵ｅＲＬＲ２を用いて生成された３次元鍵要素マトリックスＱＭ２−２を示す。
【０１５１】
この３次元鍵要素マトリックスＱＭ２−２の生成では、分割鍵ｅＲＬＲ２が３次元マトリックスの座標成分Ｐ５，２，１（図２３の領域（ｂ）中の斜線部分）に割り当てられる。このとき、分割鍵ｅＲＬＲ２は一旦座標成分Ｐ５，２〜３，１〜２にコピー（ＣＰ）される。そして、スケーラビリティＣの階層２及び階層１であってスケーラビリティＲの階層３及び階層２それぞれについて、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ２のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図２３の領域（ｂ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ２）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝２〜３，Ｃ＝１〜２以外の座標成分（図２３の領域（ｂ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ２）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ２）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭ２−２が生成される。
【０１５２】
なお、図２３の領域（ｃ）に示された３次元鍵要素マトリックスＱＭ３−２も、上述の３次元鍵要素マトリックスＱＭ１−２、ＱＭ２−２の生成と同様に、スケーラビリティＣの階層１よりも下位階層であって基準スケーラビリティＲの階層１よりも下位階層それぞれへの分割鍵ｅＲＬＲ１（斜線で示された座標成分Ｐ５，１，１として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ１のハッシュ演算）を繰り返すことにより生成される。同様に、図２３の領域（ｄ）に示された３次元鍵要素マトリックスＱＭ４−２も、基準スケーラビリティＣの階層１よりも下位階層であって基準スケーラビリティＲの階層０（最上位階層）よりも下位階層への分割鍵ｅＲＬＲ０（斜線で示された座標成分Ｐ５，０，１として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ０のハッシュ演算）を繰り返すことにより生成される。
【０１５３】
さらに、図２４の領域（ａ）は、基準スケーラビリティＬ、Ｒ以外のスケーラビリティＣの階層０（最上位階層）について、基準スケーラビリティＲの階層３（最下位階層）に対応する分割鍵ｅＲＬＲ３を用いて生成された３次元鍵要素マトリックスＱＭ１−３を示す。
【０１５４】
分割鍵ｅＲＬＲ３が３次元マトリックスの座標成分Ｐ５，３，０（図２４の領域（ａ）中の斜線部分）に割り当てられると、この分割鍵ｅＲＬＲ３は一旦座標成分Ｐ５，３，Ｃ＝１，２にコピー（ＣＰ）される。そして、スケーラビリティＣの階層２（最下位階層）〜階層０（最上位階層）であって基準スケーラビリティＲの階層３（最上位階層）それぞれについて、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ３のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図２４の領域（ａ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ３）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝３，Ｃ＝０〜２以外の座標成分（図２４の領域（ａ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ３）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ３）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭ１−３が生成される。
【０１５５】
図２４の領域（ｂ）は、基準スケーラビリティＬ、Ｒ以外のスケーラビリティＣの階層０（最上位階層）について、基準スケーラビリティＲの階層２（最下位階層よりも１階層だけ上位の階層）に対応する分割鍵ｅＲＬＲ２を用いて生成された３次元鍵要素マトリックスＱＭ２−３を示す。
【０１５６】
この３次元鍵要素マトリックスＱＭ２−３の生成では、分割鍵ｅＲＬＲ２が３次元マトリックスの座標成分Ｐ５，２，０（図２４の領域（ｂ）中の斜線部分）に割り当てられる。このとき、分割鍵ｅＲＬＲ２は一旦座標成分Ｐ５，２〜３，０〜２にコピー（ＣＰ）される。そして、スケーラビリティＣの階層２（最上位階層）〜階層０（最下位階層）であってスケーラビリティＲの階層３及び階層２それぞれについて、一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ２のハッシュ演算がスケーラビリティＬの最下位階層から最上位階層に向かって順に行われる。すなわち、ハッシュ演算が行われるごとに対応する座標成分（図２４の領域（ｂ）において実線で囲まれた領域に位置する全成分）に得られた演算データが割り当てられる。このとき、スケーラビリティＬの最上位階層に対応する座標成分には、演算データＨ＊５（ｅＲＬＲ２）が割り当てられる。一方、演算データが割り当てられた座標成分ＰＬ＝０〜５，Ｒ＝２〜３，Ｃ＝０〜２以外の座標成分（図２４の領域（ｂ）において破線で囲まれた領域に位置する全成分）のそれぞれには、スケーラビリティＬの最上位階層に対応する座標成分に割り当てられた演算データＨ＊５（ｅＲＬＲ２）をさらに一方向性ハッシュ関数Ｈを利用してハッシュ演算することにより得られた演算データＨ＊６（ｅＲＬＲ２）が割り当てられる。以上の演算により、３次元鍵要素マトリックスＱＭ２−３が生成される。
【０１５７】
なお、図２４の領域（ｃ）に示された３次元鍵要素マトリックスＱＭ３−３も、上述の３次元鍵要素マトリックスＱＭ１−３、ＱＭ２−３の生成と同様に、スケーラビリティＣの階層０（最上位階層）よりも下位階層であって基準スケーラビリティＲの階層１よりも下位階層それぞれへの分割鍵ｅＲＬＲ１（斜線で示された座標成分Ｐ５，１，０として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ１のハッシュ演算）を繰り返すことにより生成される。同様に、図２４の領域（ｄ）に示された３次元鍵要素マトリックスＱＭ４−３も、基準スケーラビリティＣの階層０（最上位階層）よりも下位階層であって基準スケーラビリティＲの階層０（最上位階層）よりも下位階層への分割鍵ｅＲＬＲ０（斜線で示された座標成分Ｐ５，０，０として割り当てられる）のコピー動作、及びスケーラビリティＬの最下位階層から最上位階層へのハッシュ演算（一方向性ハッシュ関数Ｈを利用した分割鍵ｅＲＬＲ０のハッシュ演算）を繰り返すことにより生成される。
【０１５８】
以上のようにマトリクス生成手段４６２がハッシュ演算が繰り返されることにより生成した、図２２〜図２４に示された３次元鍵要素マトリックスＱＭ１−１〜ＱＭ４−１、ＱＭ１−２〜ＱＭ４−２、ＱＭ１−３〜ＱＭ４−３について、鍵生成手段４６３が、それぞれの一致する座標成分同士を結合することにより、３次元部分鍵マトリックスＱＭが得られる。出力手段４８０は、このように鍵生成手段４６３により生成された３次元部分鍵を符号化手段４１０へ出力する。
【０１５９】
以上の本発明の説明から、本発明を様々に変形しうることは明らかである。そのような変形は、本発明の思想および範囲から逸脱するものとは認めることはできず、すべての当業者にとって自明である改良は、以下の請求の範囲に含まれるものである。
【符号の説明】
【０１６０】
１００…配信用サーバ、２００…情報処理端末（ＰＣ）、３００…ネットワーク、４７０…記録手段、４６０…演算手段、４６１…鍵分割手段、４６２…マトリクス生成手段、４６３…鍵生成手段、Ｍ１〜Ｍ３…鍵要素マトリクス、ＭＰａ〜ＭＰｃ…部分鍵要素マトリクス、ＭＰ１〜ＭＰ４…部分鍵マトリクス、ＱＭ…多次元部分鍵マトリックス、ＱＭＲＬ１〜ＱＭＲＬ４、ＱＭＲＣ１〜ＱＭＲＣ４、ＱＭＬＣ１〜ＱＭＬＣ３、ＱＭ１−１〜ＱＭ４−１、ＱＭ１−２〜ＱＭ４−２、ＱＭ１−３〜ＱＭ４−３…多次元鍵要素マトリックス。
【図１】
2010125654.tif 000005
【図２】
2010125654.tif 000006
【図３】
2010125654.tif 000007
【図４】
2010125654.tif 000008
【図５】
2010125654.tif 000009
【図６】
2010125654.tif 000010
【図７】
2010125654.tif 000011
【図８】
2010125654.tif 000012
【図９】
2010125654.tif 000013
【図１０】
2010125654.tif 000014
【図１１】
2010125654.tif 000015
【図１２】
2010125654.tif 000016
【図１３】
2010125654.tif 000017
【図１４】
2010125654.tif 000018
【図１５】
2010125654.tif 000019
【図１６】
2010125654.tif 000020
【図１７】
2010125654.tif 000021
【図１８】
2010125654.tif 000022
【図１９】
2010125654.tif 000023
【図２０】
2010125654.tif 000024
【図２１】
2010125654.tif 000025
【図２２】
2010125654.tif 000026
【図２３】
2010125654.tif 000027
【図２４】
2010125654.tif 000028
【国際調査報告】
2010125654.tif 000029
2010125654.tif 000030
2010125654.tif 000031
2010125654.tif 000032