(57)【要約】【課題】  ｎマルチリニアマップを適用したブロードキャスト暗号方式を構築し、効率的な処理の可能な暗号文提供構成を実現する。【解決手段】  複数の情報処理装置から選択した特定の暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文を送信する構成を、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすマルチリニアマップ（ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）に基づくブロードキャスト暗号方式に基づいて構築した。本構成により、送信暗号文数の削減、および各情報処理装置に格納する鍵数の削減が実現され、効率的な暗号文ブロードキャスト処理が実現可能となる。【選択図】  図２
2005123679.tif 000002
【特許請求の範囲】
【請求項１】
暗号文生成処理を実行する情報処理装置であり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理部を有し、
前記暗号処理部は、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して暗号鍵を生成するとともに、生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する構成であることを特徴とする情報処理装置。
【請求項２】
前記暗号処理部は、
前記ｎマルチリニアマップを適用して生成する鍵として、下記定義、
【数１】
2005123679.tif 000037
に基づくセッションキーＫｓを生成する構成である、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
暗号文の復号処理を実行する情報処理装置であり、
固有鍵を格納した記憶部と、
暗号文の暗号処理鍵であるｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成された暗号鍵の算出処理を、前記固有鍵を適用して実行するとともに、生成した暗号鍵に基づいて暗号文の復号処理を実行する暗号処理部とを有し、
前記暗号処理部は、
下記定義、
【数２】
2005123679.tif 000038
に基づくセッションキーＫｓによって暗号化された暗号文の復号処理を実行する構成であり、
セッションキーＫｓの算出処理として、下記処理１〜４、すなわち、
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと，ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば、その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．上記セッションキーＫｓを算出する、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
上記処理１〜３を実行してセッションキーＫｓの算出を実行する構成であることを特徴とする情報処理装置。
【請求項４】
暗号文を格納した情報記録媒体であり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文を格納し、
前記暗号文は、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成した暗号鍵によって暗号化のなされた暗号文であることを特徴とする情報記録媒体。
【請求項５】
前記暗号文は、
前記ｎマルチリニアマップを適用して生成される鍵、すなわち、下記定義、
【数３】
2005123679.tif 000039
に基づくセッションキーＫｓによって暗号化された暗号文、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
であることを特徴とする請求項４に記載の情報記録媒体。
【請求項６】
暗号文生成処理を実行する情報処理方法であり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して暗号鍵を生成する鍵生成ステップと、
前記鍵生成ステップにおいて生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行するステップと、
を含むことを特徴とする情報処理方法。
【請求項７】
前記暗号処理ステップは、
前記ｎマルチリニアマップを適用して生成する鍵として、下記定義、
【数４】
2005123679.tif 000040
に基づくセッションキーＫｓを生成する構成である、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
ことを特徴とする請求項６に記載の情報処理方法。
【請求項８】
暗号文の復号処理を実行する情報処理方法であり、
暗号文の暗号処理鍵であるｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成された暗号鍵の算出処理を情報処理装置に付与された固有鍵を適用して実行する暗号鍵算出ステップと、
前記暗号鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する復号処理ステップとを有し、
前記暗号鍵算出ステップは、
下記定義、
【数５】
2005123679.tif 000041
に基づくセッションキーＫｓの算出処理として、下記処理１〜４、すなわち、
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと，ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば、その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．上記セッションキーＫｓを算出する、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
上記処理１〜３を実行してセッションキーＫｓの算出を実行するステップであることを特徴とする情報処理方法。
【請求項９】
暗号文生成処理を実行するコンピュータ・プログラムであり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して暗号鍵を生成する鍵生成ステップと、
前記鍵生成ステップにおいて生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行するステップと、
を有することを特徴とするコンピュータ・プログラム。
【請求項１０】
暗号文の復号処理を実行するコンピュータ・プログラムであり、
暗号文の暗号処理鍵であるｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成された暗号鍵の算出処理を情報処理装置に付与された固有鍵を適用して実行する暗号鍵算出ステップと、
前記暗号鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する復号処理ステップとを有し、
前記暗号鍵算出ステップは、
下記定義、
【数６】
2005123679.tif 000042
に基づくセッションキーＫｓの算出処理として、下記処理１〜４、すなわち、
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと、ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば、その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．上記セッションキーＫｓを算出する、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
上記処理１〜３を実行してセッションキーＫｓの算出を実行するステップであることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎに基づいたブロードキャスト暗号方式により、効率的な暗号文送受信および解析を可能とし、生成する暗号文の削減、暗号文を受領し復号するユーザデバイス、受信機等の情報処理装置における計算量の削減を実現する情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００２】
昨今、音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ（以下、これらをコンテンツ（Content）と呼ぶ）が、インターネット等のネットワークを介して、あるいはＣＤ(Compact Disc)、ＤＶＤ(Digital Versatile Disk)、ＭＤ(Mini Disk)等の情報記録媒体（メディア）を介して流通している。これらの流通コンテンツは、ユーザの所有するＰＣ（Personal Computer）、ＣＤプレーヤ、ＤＶＤプレーヤ、ＭＤプレーヤ等の再生装置、あるいはゲーム機器等の様々な情報処理装置において再生され利用される。
【０００３】
音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
【０００４】
特に、近年においては、情報をデジタル的に記録する記録装置や記憶媒体が普及しつつある。このようなデジタル記録装置および記憶媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、ＣＤ−Ｒ等の記録媒体に対する不正コピーという問題が発生している。
【０００５】
このようなコンテンツの不正利用を防止する１つの方式として、コンテンツあるいは暗号化コンテンツを復号するための鍵を暗号化して提供するシステムがある。例えばブロードキャスト・エンクリプション（Broadcast Encryption）方式の一態様である階層型木構造を適用した暗号化データ提供構成は、提供する暗号化データに含まれる暗号文の設定を適宜変更することで、特定の選択された正規ユーザまたは正規デバイスのみにおいて復号可能な暗号文の提供を行うシステムである。
【０００６】
階層型木構造を適用した暗号鍵等の暗号データ提供処理については、例えば特許文献１に詳細が記述されている。
【０００７】
同報通信路を用いて、暗号文の提供者としての送信機（送信者）が任意に選択した暗号文の受領者、すなわち受信機（受信者）のグループに安全にコンテンツキーなどの秘密情報を送信する手法は、一般的にリボケーションスキーム（ｒｅｖｏｃａｔｉｏｎ  ｓｃｈｅｍｅ）や、ブロードキャスト・エンクリプション（ｂｒｏａｄｃａｓｔ  ｅｎｃｒｙｐｔｉｏｎ  ｓｃｈｅｍｅ）と呼ばれる。
【０００８】
リボケーションスキームや、ブロードキャスト・エンクリプションを実現する各方式の効率を評価する主要項目として、
（１）暗号文を受領して処理を行なうユーザデバイス、受信機等の情報処理装置が安全に保管しなければならない鍵の数（サイズ）
（２）同報通信されるメッセージの数（サイズ）、
（３）暗号文を受領して処理を行なうユーザデバイス、受信機等の情報処理装置が必要とする計算量
の３つの評価項目がある。
【０００９】
上記の３つの評価項目のすべてを小さくする方式、あるいは少なくとも上記項目中の１つまたは２つを小さくする方式が、より優れた方式であるとされるが、これまでに公知となっている各方式では、総受信機数Ｎや、暗号文の復号許容受信機以外の排除受信機（リボーク受信機）数ｒに依存していずれかの評価項目が大きくなってしまうという問題があった。
【００１０】
これまでに公知となっている方式のうち、非特許文献１に記載された方式では、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ｉｎｖｅｒｓｉｏｎ  ａｓｓｕｍｐｔｉｏｎを満たす暗号学的なｎマルチリニアマップ（ｎ−ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）が存在するという仮定のもとで、上記の（１）と（２）の評価項目をともに定数とするようなブロードキャスト・エンクリプション方式が提案されている。なお、マルチリニアマップ（ｎ−ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）については、本明細書の［発明を実施するための最良の形態］中において詳細を説明する。
【００１１】
しかしながら、この方式が前提としているＤｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ｉｎｖｅｒｓｉｏｎ  ａｓｓｕｍｐｔｉｏｎの妥当性はこれまであまり研究されておらず、近い将来にこの仮定を置くことは不適当であるようになる可能性もある。たとえば、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ｉｎｖｅｒｓｉｏｎ問題を現実的な時間で解くアルゴリズムが発見される可能性もある。このため、この仮定ではなく別の仮定に基づいた同程度もしくはそれ以上に効率のよいブロードキャスト暗号方式を構成することが課題となっている。
【特許文献１】特開２００１−３５２３２２号公報
【非特許文献１】Ｄ．Ｂｏｎｅｈ  ａｎｄ  Ａ．Ｓｉｌｖｅｒｂｅｒｇ著の論文"Ａｐｐｌｉｃａｔｉｏｎｓ  ｏｆ  Ｍｕｌｔｉｌｉｎｅａｒ  Ｆｏｒｍｓ  ｔｏ  Ｃｒｙｐｔｏｇｒａｐｈｙ"（この論文は、国際暗号研究協会が管理しているウェブサイトのテクニカルレポートとしてｈｔｔｐ：／／ｅｐｒｉｎｔ．ｉａｃｒ．ｏｒｇ／２００２／０８０／に掲載されているとともに、著者の一人であるＰｒｏｆ．Ｂｏｎｅｈが管理するウェブサイトにｈｔｔｐ：／／ｃｒｙｐｔｏ．ｓｔａｎｆｏｒｄ．ｅｄｕ／~ｄａｂｏ．／ｐａｐｅｒｓ／ｍｌｉｎｅａｒ．ｐｄｆとして掲載されている）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、このような状況に鑑みてなされたものであり、上記論文「Ｄ．Ｂｏｎｅｈ  ａｎｄ  Ａ．Ｓｉｌｖｅｒｂｅｒｇ著の論文"Ａｐｐｌｉｃａｔｉｏｎｓ  ｏｆ  Ｍｕｌｔｉｌｉｎｅａｒ  Ｆｏｒｍｓ  ｔｏ  Ｃｒｙｐｔｏｇｒａｐｈｙ」の方式と同程度に効率（受信機の鍵数，メッセージ量）のよい方式を実現する情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【００１３】
本発明においては、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ｉｎｖｅｒｓｉｏｎ  ａｓｓｕｍｐｔｉｏｎではなく、上記の論文で別の応用のために用いられているｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎに基づいたブロードキャスト暗号方式を提唱する。上記の論文においては、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎはユニークデジタル署名方式に用いられているが、本発明においてこれをブロードキャスト暗号方式に応用することにより、効率的な暗号文送受信および解析を可能とし、生成する暗号文の削減、暗号文を受領し復号するユーザデバイス、受信機等の情報処理装置における計算量の削減を実現した情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の第１の側面は、
暗号文生成処理を実行する情報処理装置であり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理部を有し、
前記暗号処理部は、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して暗号鍵を生成するとともに、生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する構成であることを特徴とする情報処理装置にある。
【００１５】
さらに、本発明の情報処理装置の一実施態様において、前記暗号処理部は、前記ｎマルチリニアマップを適用して生成する鍵として、下記定義、
【数７】
2005123679.tif 000003
に基づくセッションキーＫｓを生成する構成である、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
ことを特徴とする。
【００１６】
さらに、本発明の第２の側面は、
暗号文の復号処理を実行する情報処理装置であり、
固有鍵を格納した記憶部と、
暗号文の暗号処理鍵であるｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成された暗号鍵の算出処理を、前記固有鍵を適用して実行するとともに、生成した暗号鍵に基づいて暗号文の復号処理を実行する暗号処理部とを有し、
前記暗号処理部は、
下記定義、
【数８】
2005123679.tif 000004
に基づくセッションキーＫｓによって暗号化された暗号文の復号処理を実行する構成であり、
セッションキーＫｓの算出処理として、下記処理１〜４、すなわち、
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと、ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば、その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．上記セッションキーＫｓを算出する、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
上記処理１〜３を実行してセッションキーＫｓの算出を実行する構成であることを特徴とする情報処理装置にある。
【００１７】
さらに、本発明の第３の側面は、
暗号文を格納した情報記録媒体であり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文を格納し、
前記暗号文は、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成した暗号鍵によって暗号化のなされた暗号文であることを特徴とする情報記録媒体にある。
【００１８】
さらに、本発明の情報記録媒体の一実施態様において、前記暗号文は、前記ｎマルチリニアマップを適用して生成される鍵、すなわち、下記定義、
【数９】
2005123679.tif 000005
に基づくセッションキーＫｓによって暗号化された暗号文、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
であることを特徴とする。
【００１９】
さらに、本発明の第４の側面は、
暗号文生成処理を実行する情報処理方法であり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して暗号鍵を生成する鍵生成ステップと、
前記鍵生成ステップにおいて生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行するステップと、
を含むことを特徴とする情報処理方法にある。
【００２０】
さらに、本発明の情報処理方法の一実施態様において、前記暗号処理ステップは、
前記ｎマルチリニアマップを適用して生成する鍵として、下記定義、
【数１０】
2005123679.tif 000006
に基づくセッションキーＫｓを生成する構成である、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
ことを特徴とする。
【００２１】
さらに、本発明の第５の側面は、
暗号文の復号処理を実行する情報処理方法であり、
暗号文の暗号処理鍵であるｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成された暗号鍵の算出処理を情報処理装置に付与された固有鍵を適用して実行する暗号鍵算出ステップと、
前記暗号鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する復号処理ステップとを有し、
前記暗号鍵算出ステップは、
下記定義、
【数１１】
2005123679.tif 000007
に基づくセッションキーＫｓの算出処理として、下記処理１〜４、すなわち、
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと、ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば、その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．上記セッションキーＫｓを算出する、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
上記処理１〜３を実行してセッションキーＫｓの算出を実行するステップであることを特徴とする情報処理方法にある。
【００２２】
さらに、本発明の第６の側面は、
暗号文生成処理を実行するコンピュータ・プログラムであり、
複数の暗号文提供機器から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
ｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して暗号鍵を生成する鍵生成ステップと、
前記鍵生成ステップにおいて生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行するステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００２３】
さらに、本発明の第７の側面は、
暗号文の復号処理を実行するコンピュータ・プログラムであり、
暗号文の暗号処理鍵であるｎマルチリニアマップ（ただし、ｎは２以上の整数）を適用して生成された暗号鍵の算出処理を情報処理装置に付与された固有鍵を適用して実行する暗号鍵算出ステップと、
前記暗号鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する復号処理ステップとを有し、
前記暗号鍵算出ステップは、
下記定義、
【数１２】
2005123679.tif 000008
に基づくセッションキーＫｓの算出処理として、下記処理１〜４、すなわち、
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと，ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば、その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．上記セッションキーＫｓを算出する、
ただし、
Ｇ２は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２を定義する群であり、
Ｎは暗号文受領機器としての情報処理装置総数、
ｎは、ｎマルチリニアマップの規定数ｎであり２以上の整数、
｜Ｓ｜は、暗号文復号許容機器集合Ｓの要素数、
ｘｊは、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）であり、ｈｊ＝ｇｘｊが公開値、ｐは群Ｇ１，Ｇ２の位数、ｇは群Ｇ１の生成元、ｘｉは、各暗号文受領機器としての情報処理装置ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して付与される秘密鍵、
上記処理１〜３を実行してセッションキーＫｓの算出を実行するステップであることを特徴とするコンピュータ・プログラムにある。
【００２４】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００２５】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００２６】
本発明の構成によれば、複数の情報処理装置から選択した特定の暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文を送信する構成を、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすマルチリニアマップ（ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）に基づくブロードキャスト暗号方式に基づいて構築することにより、送信暗号文数の削減、および各情報処理装置に格納する鍵数の削減が実現され、効率的な暗号文ブロードキャスト処理が実現可能となる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を参照しながら本発明の情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。
【００２８】
本発明は、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすマルチリニアマップ（ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）を用いたブロードキャスト暗号方式であり、効率的な暗号文送受信および解析を可能とするものである。
【００２９】
まず、上記背景技術の欄で説明した非特許文献「Ｄ．Ｂｏｎｅｈ  ａｎｄ  Ａ．Ｓｉｌｖｅｒｂｅｒｇ著の論文"Ａｐｐｌｉｃａｔｉｏｎｓ  ｏｆ  Ｍｕｌｔｉｌｉｎｅａｒ  Ｆｏｒｍｓ  ｔｏ  Ｃｒｙｐｔｏｇｒａｐｈｙ」に基づいて、暗号学的なｎマルチリニアマップ（ｎ−ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）について説明する。
【００３０】
ｎマルチリニアマップｅ：Ｇ１ｎ→Ｇ２とは、下記の条件（１），（２），（３）を満たすものである。
（１）Ｇ１とＧ２は同じ素数の位数を持つ群である。
（２）下記条件を満足する。
【数１３】
2005123679.tif 000009
【００３１】
（３）もしｇ∈Ｇ１がＧ１の生成元であるならば、ｅ（ｇ，・・・ｇ）はＧ２の生成元である。
【００３２】
そして、暗号学的なｎマルチリニアマップ（ｎ−ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）とは、
（１）Ｇ１およびＧ２上の群の演算が効率的に行える。
（２）ｎマルチリニアマップｅが効率的に計算可能である。
（３）Ｇ１上の離散対数問題を解く効率的なアルゴリズムがない。
という３つの条件を満たすようなｎマルチリニアマップである。
【００３３】
後述するように、また、前述の非特許文献にも記載されているように、現在までに、ｎ＝２については、Ｔａｔｅ  ｐａｒｉｎｇまたはＷｅｉｌ  ｐａｒｉｎｇという技術を用いて暗号学的なｎマルチリニアマップを構成できると考えられている。
【００３４】
本実施例の説明においては、以下の（ａ）（ｂ）の態様順に具体的な暗号文配信構成について説明する。
（ａ）任意数ｎ（ｎ＞１）について暗号学的なｎマルチリニアマップが存在すると仮定し、そのようなマップであるｎマルチリニアマップｅを用いたブロードキャスト・エンクリプション方式
（ｂ）ｎ＝２とした暗号学的な２マルチリニアマップを用いたブロードキャスト・エンクリプション方式
【００３５】
なお、本実施例において、暗号文の配信処理を実行する送信者は、総受信機数Ｎから、特定の選択された暗号文復号許容受信機集合Ｓを選択し、その他の受信機をリボーク（排除）受信機として設定する。すなわち、暗号文提供者は、暗号文復号許容受信機においてのみ、解読可能な暗号文を生成して送信する。
【００３６】
暗号文は、ネットワークを介した通信、あるいはＣＤ，ＤＶＤ等の情報記録媒体に格納して提供される。この暗号文は、全ての受信機（ユーザ）が取得可能である。ただし、提供した暗号文は、リボークされた機器に格納された鍵を用いて復号することはできず、リボーク機器以外の機器、すなわち、暗号文復号許容機器に格納された鍵によってのみ復号できる。
【００３７】
（ａ）任意数ｎ（ｎ＞１）のｎマルチリニアマップｅを用いたブロードキャスト・エンクリプション方式
【００３８】
まず、任意数ｎ（ｎ＞１）のｎマルチリニアマップｅを用いたブロードキャスト・エンクリプション方式について説明する。
【００３９】
本実施例において説明するブロードキャスト・エンクリプション方式は、
（１）セットアップ、
（２）暗号化および送信、
（３）受信および復号、
の３つのフェーズに分かれている。セットアップフェーズは、システムの立ち上げ時に１度だけ行う。暗号化および送信、受信および復号の各フェーズは、情報の送信を行うたびに繰り返す。
【００４０】
ブロードキャスト・エンクリプション方式を構成するエンティティは、
（ａ）暗号文の生成および提供処理を行なう情報処理装置としての送信者（送信機）、
（ｂ）暗号文の受領および復号処理を行なう情報処理装置としてのユーザデバイス等の受信機あるいは受信者（ユーザ）
（ｃ）ブロードキャスト・エンクリプション・システムを管理する管理センタ
である。
【００４１】
暗号文の受領および復号処理を行なう情報処理装置またはユーザの総数をＮとする。また、システムを管理する管理センタを設ける。上記（１）セットアップ処理は、送信者あるいは管理センタが実行する。
【００４２】
（１）セットアップ
以下、暗号文の生成および提供処理を行なうエンティティまたは情報処理装置を送信者または送信機とし、暗号文を受領するエンティティまたは情報処理装置を受信者または受信機として説明する。セットアップ処理は、送信者側、あるいはシステム管理者によって実行されるが、以下では、送信者においてセットアップ処理を行うものとして説明する。
【００４３】
図１を参照して、暗号文を生成し提供する送信装置等の情報処理装置、暗号文を受領して、暗号文を選択し復号する処理を実行する受信装置等の情報処理装置の構成例について説明する。なお、本方式においてディスクなどの記録媒体に暗号文、鍵指定コードを格納して提供する場合は、送信装置はディスク書き込み装置もしくはディスク製造装置、受信機はディスク再生装置などの情報処理装置によって構成される。
【００４４】
一例としての情報処理装置は、図１に示すように、コントローラ１０１、演算ユニット１０２、入出力インタフェース１０３、セキュア記憶部１０４、メイン記憶部１０５、大容量記憶部１０６を備える。
【００４５】
コントローラ１０１は、例えばコンピュータ・プログラムに従ったデータ処理を実行する制御部としての機能を有するＣＰＵによって構成される。演算ユニット１０２は、例えば暗号鍵の生成、乱数生成、及び暗号処理のための専用の演算機能を提供する。入出力インタフェース１０３は、キーボード、マウス等の入力手段からのデータ入力や、外部出力装置に対するデータ出力、ネットワークを介したデータ送受信処理に対応するインタフェースである。
【００４６】
セキュア記憶部１０４は、例えば暗号鍵としての固有鍵、各種ＩＤなど、安全にまたは秘密に保持すべきデータを保存する記憶部である。メイン記憶部１０５は、例えばコントローラ１０１において実行するデータ処理プログラム、その他、一時記憶処理パラメータ、プログラム実行のためのワーク領域等に使用されるメモリ領域である。セキュア記憶部１０４及びメイン記憶部１０５は、例えばＲＡＭ、ＲＯＭ等によって構成されるメモリである。大容量記憶部１０６は、ハードディスク、ＣＤ、ＤＶＤ、ＭＤ等の大容量のデータ記録、読み出し可能な記憶部であり暗号化コンテンツなどを記録する。
【００４７】
なお、以下の説明においては、理解を容易にするため、暗号文を提供する情報処理装置を送信機、暗号文を受領する情報処理装置を受信機と称して説明する。ただし、ユーザに対する暗号文の提供は、前述したように、ネットワークを介して、あるいは情報記録媒体に格納して提供することができるものであり、暗号文提供側、受領側においてデータ送受信構成が必ずしも必要な構成ではない。
【００４８】
セットアップ処理について、詳細に説明する。送信者はｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップ（ｎ−ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）を定め、受信機に公開する。ただし、ｎは総受信機数Ｎに対し、ｎ＝Ｎ−１と定める。
【００４９】
ここで、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすとは、
【数１４】
2005123679.tif 000010
と、
ｎ個の受信機｛１，・・・，ｎ｝のうちの部分集合、情報復号許容受信機集合Ｓ⊂｛１，・・・，ｎ｝に対する
【数１５】
2005123679.tif 000011
が与えられたときに、
【数１６】
2005123679.tif 000012
を求めることが困難であることを言う。ここでｇは群Ｇ１の生成元である。
【００５０】
また、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，２Ｎ−１）を定め、
【数１７】
2005123679.tif 000013
を求める。
ここでｐは群Ｇ１，Ｇ２の位数であり、ｇはＧ１の生成元である。各ｈｊは、公開し、また、受信機ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して、ｘｉを秘密鍵として与える。受信機はｘｉを安全に保管する。ｘｉは、各受信機ｉの秘密鍵として設定される。
【００５１】
いま、送受信機数Ｎ＝４とすると、ｎ＝Ｎ−１＝３となる。
送信者は、ランダムな整数ｘ１，・・・，ｘ７およびｈ１，・・・，ｈ７を作成し、ｈ１，・・・，ｈ７を公開し、受信機１に対してｘ１を、受信機２に対してｘ２を、以下同様に受信機ｉに鍵ｘｉを秘密鍵として与える。
【００５２】
（２）暗号化および送信
送信者はＮ個の受信機のうち、その通信において情報を復号させる受信機の集合、すなわち、情報復号許容受信機集合Ｓ⊆｛１，・・・，ｎ｝を選択する。次に、セッションキーＫｓを下記のようにして導出し、このセッションキーＫｓを用いて送信情報を暗号化して、情報復号許容受信機集合Ｓ⊆｛１，・・・，ｎ｝を表す情報とともに同報送信する。
【００５３】
【数１８】
2005123679.tif 000014
【００５４】
ここで、排除すべき受信機、すなわち情報復号許容受信機集合Ｓに含まれないリボーク受信機がなく、｜Ｓ｜＝Ｎである場合は、上式のｘＮ＋１ｘＮ＋２・・・ｘ２Ｎ＋ｎ−｜Ｓ｜の部分は使用されない点に注意されたい。
【００５５】
また、情報復号許容受信機集合Ｓを表す情報は、たとえば、受信機番号のリストを用いて表すことが可能である。さらに、情報の暗号化は、セッションキーＫｓをそのまま使ってもよいし、たとえばセッションキーＫｓをＳＨＡ−１や、ＭＤ５等のハッシュ関数に入力して所望のサイズに変換した値を用いてもよい。
【００５６】
例えば、上記の設定、すなわち送受信機数Ｎ＝４、ｎ＝Ｎ−１＝３の場合に、情報復号許容受信機集合Ｓ＝｛１，２｝であるとすると、セッションキーＫｓは、
【数１９】
2005123679.tif 000015
となる。
【００５７】
たとえば放送アプリケーションの場合には、情報復号許容受信機集合Ｓを表す情報を送信した後に放送コンテンツをセッションキーＫｓで暗号化して送信してもよいし、情報復号許容受信機集合Ｓを表す情報と、セッションキーＫｓを用いてコンテンツキーＫｃを暗号化した暗号文を送信した後に、コンテンツキーＫｃで暗号化されたコンテンツを送信してもよい。ＣＤなどの記録メディアのアプリケーションの場合には、放送アプリケーションにおいて放送していた情報をディスクに記録して配布すればよい。
【００５８】
ところで、送信者がセッションキーＫｓを導出する際には、別の方法を用いてもよい。すなわち、ｊ∈Ｓである｜Ｓ｜個のｊをピックアップし、さらにＮから２Ｎ−｜Ｓ｜までのＮ−｜Ｓ｜個のｊをピックアップする。ピックアップされた全部でＮ個のｊのうちのｎ＝Ｎ−１個に対応するｈｊをそれぞれ入力としてマップｅの出力を求め、その出力に対し残ったひとつのｊに対するｘｊ乗（Ｇ２上で）を行うことにより上記と等しいセッションキーＫｓを求めることができる。なお、この求め方は、後述の、受信機ｉがセッションキーＫｓを求める方法と同様である。
【００５９】
（３）受信および復号
受信機ｉは、同報通信路から送信された情報を受信し、自分がその通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Ｓに含まれるかどうかを調べる。もし自分が情報復号許容受信機集合Ｓに含まれなければ、その通信を復号できないので処理を終了する。自分が情報復号許容受信機集合Ｓに含まれていれば、下記の処理によりセッションキーＫｓを求め、これを用いて送信された情報を復号する。
【００６０】
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと，ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば、その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．以下の式により、セッションキーＫｓを求める。
【数２０】
2005123679.tif 000016
【００６１】
たとえば、上記の設定、すなわち送受信機数Ｎ＝４、ｎ＝Ｎ−１＝３の場合に、情報復号許容受信機集合Ｓ＝｛１，２｝であるとした場合、受信記２は、セッションキーＫｓを、
【数２１】
2005123679.tif 000017
として求めることができる。
【００６２】
上記の構成とすることにより、受信機が安全に保管しなければならない鍵は１つ（ｘｉ）であり、また、鍵配信のために同報通信されるメッセージも１つのみとなる。すなわち、セッションキーＫｓを用いて送信情報、例えばコンテンツキーＫｃを暗号化した暗号文、
Ｅ（Ｋｓ，Ｋｃ）
のみとなる。Ｅ（Ａ，Ｂ）は鍵ＡによるＢの暗号化データを示す。
また、セッションキーＫｓを、直接コンテンツを暗号化する場合には、受信機は、セッションキーで暗号化された暗号化コンテンツの復号時に、自装置に格納された秘密情報を用いてセッションキーを算出することが可能であり、新たな送信情報は不要（ゼロ）となる。
【００６３】
上述した処理例、すなわち、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすマルチリニアマップ（ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）に基づくブロードキャスト暗号方式において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスと、暗号文を受領して復号処理を行なう例えば受信機等の情報処理装置における処理シーケンスについてフローチャートを参照して説明する。
【００６４】
まず、図２を参照して、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明する。
【００６５】
暗号文送信側の情報処理装置は、まず、ステップＳ１０１において、Ｎ個の受信機のうち、その通信において情報を復号させる受信機の集合Ｓ⊆｛１，・・・，ｎ｝を選択する。
【００６６】
ステップＳ１０２において、リボーク機器を除く情報を復号させる受信機の集合Ｓに基づいて、セッションキーＫｓを設定する。セッションキーＫｓは、
【数２２】
2005123679.tif 000018
として計算する。
【００６７】
ステップＳ１０３において、
セッションキーＫｓによってコンテンツキーＫｃを暗号化し、暗号化コンテンツキー
Ｅｎｃ（Ｋｓ，Ｋｃ）
を算出する。
【００６８】
ステップＳ１０４において、
ａ．情報復号許容受信機集合Ｓ（たとえば、受信機番号のリスト）
ｂ．暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）
ｃ．暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）
を通信路を介して送信する。あるいは情報記録媒体に書き込み、提供する。
【００６９】
情報記録媒体に格納した情報例を図３に示す。情報記録媒体２００は、例えばＣＤ、ＤＶＤ等の情報記録媒体である。ここに、
ａ．情報復号許容受信機集合Ｓ情報２０１、たとえば、受信機番号のリスト
ｂ．暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）２０２
ｃ．暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）２０３
を格納し、提供する。
【００７０】
ユーザ機器としての情報処理装置は、いずれも同報通信路あるいは情報記録媒体を介して、これらの情報を受領することが可能である。しかし、その通信において情報を復号させる受信機の集合Ｓに含まれる機器のみが暗号文Ｅｎｃ（Ｋｓ，Ｋｃ）２０２に適用したセッションキーＫｓを自己の保有鍵に基づいて算出可能であり、リボーク機器は、暗号文Ｅｎｃ（Ｋｓ，Ｋｃ）２０２に適用したセッションキーＫｓを算出することができないので、受信機の集合Ｓに含まれる機器のみが暗号文Ｅｎｃ（Ｋｓ，Ｋｃ）２０２を復号してコンテンツキーＫｃを取得し、取得したコンテンツキーＫｃに基づいて暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）２０３を復号してコンテンツ（Ｃｏｎ）を取得できる。
【００７１】
次に、図４を参照して、
ａ．情報復号許容受信機集合Ｓ情報２０１、たとえば、受信機番号のリスト
ｂ．暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）２０２
ｃ．暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）２０３
上記ａ〜ｃの各情報を受領したユーザ機器としての情報処理装置における処理手順について説明する。
【００７２】
まず、ステップＳ２０１において、情報復号許容受信機集合Ｓを示す情報（たとえば、受信機番号のリスト）を読み出す。
【００７３】
ステップＳ２０２において、自身の装置が、その通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Ｓに含まれるか否かを判定する。もし、情報復号許容受信機集合Ｓに含まれなければ、その通信を復号できないので処理を終了する。
【００７４】
自分が情報復号許容受信機集合Ｓに含まれていれば、ステップＳ２０３に進み、セッションキーＫｓを導出する。
【００７５】
セッションキーＫｓの具体的計算例を、図５に示す。この図５に示す処理は、前述したとおり、以下の処理である。
１．カウンタｊ，ｋを用意し、ｊ＝１，ｋ＝１とセットする。
２．カウンタｋがＮ以下の間、下記の処理を繰り返す
（ａ）ｋ＝ｉかと、ｋがＳに含まれるかを調べる。
ｉ．もし、ｋがＳに含まれ、かつｋ≠ｉならば、Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
ｉｉ．そうでなければ、ｋを１増やす。
３．もしカウンタｊがｎ以下であれば，その関係が成り立つ間、下記の処理を繰り返す
（ｂ）Ｈｊとしてｈｋをセットし、ｊとｋを１増やす。
４．以下の式により、セッションキーＫｓを求める。
【数２３】
2005123679.tif 000019
【００７６】
ステップＳ２０４において、セッションキーＫｓを適用して暗号文Ｅｎｃ（Ｋｓ，Ｋｃ）を復号してコンテンツキーＫｃを取得し、取得したコンテンツキーＫｃに基づいて暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）を復号してコンテンツ（Ｃｏｎ）を取得する。
【００７７】
（ｂ）ｎ＝２とした暗号学的な２マルチリニアマップを用いたブロードキャスト・エンクリプション方式
【００７８】
上述の実施例においては、任意のｎ（ｎ＞１）に対する暗号学的なｎマルチリニアマップ（ｎ−ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）が存在することを前提としているが、以下、既に実証されているｎ＝２とした暗号学的なｎマルチリニアマップ、すなわち２マルチリニアマップを適用した具体例を説明する。なお、ｎ＝２とした暗号学的なｎマルチリニアマップについては、Ｄ．Ｂｏｎｅｈ  ａｎｄ  Ｍ．Ｆｒａｎｋｌｉｎ著の論文"Ｉｄｅｎｔｉｔｙ−Ｂａｓｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  ｆｒｏｍ  ｔｈｅ  Ｗｅｉｌ  Ｐａｒｉｎｇ"（この論文は、著者の一人であるＰｒｏｆ．Ｂｏｎｅｈが管理するウェブサイトにｈｔｔｐ：／／ｃｒｙｐｔｏ．ｓｔａｎｆｏｒｄ．ｅｄｕ／~ｄａｂｏ．／ｐａｐｅｒｓ／ｉｂｅ．ｐｄｆとして掲載されている）
【００７９】
以下、ｎ＝２とした２マルチリニアマップを適用したブロードキャスト・エンクリプション方式について、上述の例と同様、
（１）セットアップ、
（２）暗号化および送信、
（３）受信および復号、
の３つのフェーズに区分して説明する。
【００８０】
セットアップフェーズは、システムの立ち上げ時に１度だけ行う。暗号化および送信、受信および復号の各フェーズは、情報の送信を行うたびに繰り返す。
【００８１】
ブロードキャスト・エンクリプション方式を構成するエンティティは、暗号文の生成および提供処理を行なう情報処理装置としての送信者（送信機）と、暗号文の受領および復号処理を行なう情報処理装置としてのユーザデバイス等の受信機あるいは受信者（ユーザ）であり、暗号文の受領および復号処理を行なう情報処理装置またはユーザの総数をＮとする。また、システムを管理する管理センタを設ける。上記（１）セットアップ処理は、送信者あるいは管理センタが実行する。
【００８２】
（１）セットアップ
以下、暗号文の生成および提供処理を行なうエンティティまたは情報処理装置を送信者または送信機とし、暗号文を受領するエンティティまたは情報処理装置を受信者または受信機として説明する。セットアップ処理は、送信者側、あるいはシステム管理者によって実行されるが、以下では、送信者においてセットアップ処理を行うものとして説明する。
【００８３】
送信者はｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすｎマルチリニアマップ（ｎ−ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）を定め、受信機に公開する。ただし、ｎ＝２である。
【００８４】
また、ランダムな整数ｘｊ∈［１，ｐ−１］（ただし、ｊ＝１，・・・，Ｎ＋２）を定め、
【数２４】
2005123679.tif 000020
を求める。ここでｐは群Ｇ１，Ｇ２の位数であり、ｇはＧ１の生成元である。また、Ｎは総受信機数である。各ｈｊは、公開し、また、受信機ｉ（ただし、ｉ＝１，・・・，Ｎ）に対して、ｘｉを秘密鍵として与える。受信機はｘｉを安全に保管する。ｘｉは、各受信機ｉの秘密鍵として設定される。また、実在しないダミーの受信機Ｎ＋１およびＮ＋２を仮想的に想定し、それぞれにｘＮ＋１およびｘＮ＋２が与えられているものと想定する。
【００８５】
いま、送受信機数Ｎ＝１０と仮定すると、
送信者は、ランダムな整数ｘ１，・・・，ｘ１２およびｈ１，・・・，ｈ１２を作成し、ｈ１，・・・，ｈ１２を公開し、受信機１に対してｘ１を、受信機２に対してｘ２を、以下同様に受信機ｉに鍵ｘｉを秘密鍵として与える。
【００８６】
（２）暗号化および送信
送信者はＮ個の受信機のうち、その通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Ｓ⊆｛１，・・・，ｎ｝を選択する。例えば、送受信機数Ｎ＝１０として、１０個の受信機１，・・・，１０のうち、２，６，７をリボーク受信機とした場合、情報復号許容受信機集合Ｓ⊆｛１，３，４，５，８，９，１０｝となる。
【００８７】
次に、Ｓの要素をその番号ｉの順に、３つずつ、
【数２５】
2005123679.tif 000021
個のサブグループＳＧｋに分割する。
【００８８】
ただし、
【数２６】
2005123679.tif 000022
である。
【００８９】
なお、
｜Ｓ｜は、情報復号許容受信機集合Ｓの要素数を示し、
【数２７】
2005123679.tif 000023
は、｜Ｓ｜／３以上である最小の整数を表す。
【００９０】
ただし、最後のサブグループ
【数２８】
2005123679.tif 000024
にＳの要素が１つしか入らない場合には、ダミー受信機Ｎ＋１とＮ＋２もサブグループの要素であるとし、また、
【数２９】
2005123679.tif 000025
に、Ｓの要素が２つだけ入る場合には、ダミーの受信機Ｎ＋１もこのサブグループの要素であるとする。
【００９１】
上述の例、すなわち、送受信機数Ｎ＝１０として、１０個の受信機１，・・・，１０のうち、２，６，７をリボーク受信機とした場合、情報復号許容受信機集合Ｓ⊆｛１，３，４，５，８，９，１０｝となり、サブグループは、
ＳＧ１＝｛１，３，４｝
ＳＧ２＝｛５，８，９｝
ＳＧ３＝｛１０，１１，１２｝
となる。ただし、受信機１１，１２，はダミー受信機である。
【００９２】
そして、その通信におけるサブグループＳＧｋ用のサブグループキーＫＳＧｋを、
【数３０】
2005123679.tif 000026
として定める。
【００９３】
上記の例では、サブグループＳＧ１とサブグループＳＧ２とサブグループＳＧ３のサブグループキーは以下のように示される。
【数３１】
2005123679.tif 000027
【００９４】
次に、その通信における全体のセッションキーＫｓをランダムに定める。セッションキーＫｓは通信の内容（たとえば映画などのコンテンツ）を暗号化するための鍵であり、たとえば暗号化アルゴリズムに米国標準のＡＥＳの１２８ｂｉｔ版を用いる際には、セッションキーＫｓは１２８ｂｉｔとなる。
【００９５】
次に、個々のサブグループキーを用いてセッションキーＫｓを暗号化した暗号文
【数３２】
2005123679.tif 000028
を、暗号文
ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）として設定する。
ただし、Ｅ（Ａ，Ｂ）は鍵Ａを用いた平文Ｂの暗号化を示す。
【００９６】
暗号化アルゴリズムとしてはたとえば米国標準のＡＥＳの１２８ｂｉｔ版を用いる。関数Ｈは、Ｇ２の任意の要素を、使用する暗号化アルゴリズムの鍵長（たとえば１２８ｂｉｔ）に縮約するハッシュ関数である。暗号化アルゴリズムＥとハッシュ関数Ｈはシステムであらかじめ定めてあり（送信者が定めてもよい）、公開されている。
【００９７】
送信者は、送信すべき情報をセッションキーＫｓを用いて暗号化して、情報復号許容受信機集合Ｓを表す情報（たとえば、受信機番号のリスト）と、上記の暗号文、
【数３３】
2005123679.tif 000029
とを、ともに同報通信路で受信機に送信する。
【００９８】
たとえば放送アプリケーションの場合には、情報復号許容受信機集合Ｓを表す情報を送信した後に、暗号文、
【数３４】
2005123679.tif 000030
を送信し、その後に放送コンテンツをセッションキーＫｓで暗号化して送信してもよいし、通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Ｓを表す情報と、暗号文
【数３５】
2005123679.tif 000031
と、セッションキーＫｓで暗号化したコンテンツキーＫｃを送信した後に、コンテンツキーＫｃで暗号化されたコンテンツを送信してもよい。ＣＤなどの記録メディアのアプリケーションの場合には、放送アプリケーションにおいて放送していた情報をディスクに記録して配布すればよい。
【００９９】
（３）受信および復号
受信機ｉは、同報通信路から送信された情報を受信し、自分がその通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Ｓに含まれるかどうかを調べる。
【０１００】
もし自分が情報復号許容受信機集合Ｓに含まれなければ、その通信を復号できないので処理を終了する。自分が情報復号許容受信機集合Ｓに含まれていれば、自分がどのサブグループの暗号文を復号すべきかを調べる。これは、情報復号許容受信機集合Ｓの要素を３つずつ区切ったときの何番目に、自分が入るかを探すことで求められる。そして、受信機ｉは、自分が所属するサブグループＳＧｋのサブグループキーを下記のようにして求める。
【０１０１】
【数３６】
2005123679.tif 000032
ここで、ｈｊ１、ｈｊ２は、サブグループＳＧｋのｉ以外の要素の受信機番号ｊ１，ｊ２に対応する公開情報であり、ｊ１＜ｊ２とする。
【０１０２】
たとえば上記の例で受信機５は、自己の所有する秘密情報ｘ５に基づいて、
ＫＳＧ２＝ｅ（ｈ８，ｈ９）ｘ５
としてサブグループＳＧ２のサブグループキーＫＳＧ２を求めることができる。
【０１０３】
次に、受信機ｉは、上で求めたサブグループキーＫＳＧｋからハッシュ値Ｈ（ＫＳＧｋ）を計算し、これを用いて暗号文ＣＴｋを復号してセッションキーＫｓを求め、これを用いて送信された情報を復号する。
【０１０４】
上記のような構成とすることにより、２マルチリニアマップを用いてＮ個の受信機に鍵（セッションキーＫｓ）を安全に配信できるシステムを構成することが可能となる。上記構成では受信機が安全に保管しなければならない鍵は１つ（ｘｉ）だけであり、たとえばセッションキーＫｓを直接コンテンツの暗号化に用いる場合などにおいて、鍵配信のために同報通信されるメッセージの個数は、
【数３７】
2005123679.tif 000033
となる。
【０１０５】
上記は２マルチリニアマップを用いる方法について詳しく述べたが、この方式は、前述したように、任意の整数ｎ＞１に対するｎマルチリニアマップを用いる方式にそのまま拡張可能である。ｎが大きくなると、受信機が保管する鍵数は１のままであるのに対し、同報通信されるメッセージ数が、
【数３８】
2005123679.tif 000034
となり、上記のｎ＝２の場合に比べてこの面での効率がよくなる。
【０１０６】
上述した処理例、すなわち、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たす２マルチリニアマップを用いたプロードキャストエンクリプション方式によって、各受信機が必要とする計算量を削減させることを可能とした構成例において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスと、暗号文を受領して復号処理を行なう例えば受信機等の情報処理装置における処理シーケンスについてフローチャートを参照して説明する。
【０１０７】
まず、図６を参照して、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明する。
【０１０８】
暗号文送信側の情報処理装置は、まず、ステップＳ３０１において、Ｎ個の受信機のうち、その通信において情報を復号させる受信機の集合Ｓ⊆｛１，・・・，ｎ｝を選択する。
【０１０９】
ステップＳ３０２において、Ｓの要素をその番号ｉの順に、３つずつ分割しサブグループを設定し、サブグループＳＧｋ用のサブグループキーＫＳＧｋを、
【数３９】
2005123679.tif 000035
として定める。
【０１１０】
ステップＳ３０３において、その通信における全体のセッションキーＫｓをランダムに定める。セッションキーＫｓは通信の内容（たとえば映画などのコンテンツ）を暗号化するための鍵であり、たとえば暗号化アルゴリズムに米国標準のＡＥＳの１２８ｂｉｔ版を用いる際には、セッションキーＫｓは１２８ｂｉｔとなる。
【０１１１】
次に、ステップＳ３０４において、個々のサブグループキーを用いてセッションキーＫｓを暗号化した暗号文
ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）を導出する。
【０１１２】
次にステップＳ３０５において、セッションキーＫｓによってコンテンツキーＫｃを暗号化し、暗号化コンテンツキー
Ｅｎｃ（Ｋｓ，Ｋｃ）
を算出する。
【０１１３】
ステップＳ３０６において、
ａ．情報復号許容受信機集合Ｓを表す情報（たとえば、受信機番号のリスト）
ｂ．個々のサブグループキーを用いてセッションキーＫｓを暗号化した暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）
ｃ．暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）
ｄ．暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）
を通信路を介して送信する。あるいは情報記録媒体に書き込み、提供する。
【０１１４】
情報記録媒体に格納した情報例を図７に示す。情報記録媒体３００は、例えばＣＤ、ＤＶＤ等の情報記録媒体である。ここに、
情報復号許容受信機集合Ｓを表す情報（たとえば、受信機番号のリスト）３０１
個々のサブグループキーを用いてセッションキーＫｓを暗号化した暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）３０２
暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）３０３
暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）３０４
を格納し、提供する。
【０１１５】
ユーザ機器としての情報処理装置は、いずれも同報通信路あるいは情報記録媒体を介して、これらの情報を受領することが可能である。しかし、その通信において情報を復号させる受信機の集合Ｓに含まれる機器のみが、個々のサブグループキーを用いてセッションキーＫｓを暗号化した暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）３０２に適用したサブグループキーを算出可能であり、リボーク機器は、暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）３５０２に適用したサブグループキーを算出できないので、情報復号許容受信機集合Ｓに含まれる機器のみが暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）３０２を復号してセッションキーＫｓを取得し、さらに、取得したセッションキーＫｓにより、暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）を復号してコンテンツキーＫｃを取得し、取得したコンテンツキーＫｃに基づいて暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）３０３を復号してコンテンツ（Ｃｏｎ）を取得できる。
【０１１６】
図８を参照して、
ａ．情報復号許容受信機集合Ｓを表す情報（たとえば、受信機番号のリスト）
ｂ．個々のサブグループキーを用いてセッションキーＫｓを暗号化した暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）
ｃ．暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）
ｄ．暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）
上記ａ〜ｄの各情報を受領したユーザ機器としての情報処理装置における処理手順について説明する。
【０１１７】
まず、ステップＳ４０１において、情報復号許容受信機集合Ｓを示す情報（たとえば、受信機番号のリスト）を読み出す。
【０１１８】
ステップＳ４０２において、自身の装置が、その通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Ｓに含まれるか否かを判定する。これは、情報復号許容受信機集合Ｓの要素を３つずつ区切ったときの何番目に、自分が入るかを探すことで求められる。もし、情報復号許容受信機集合Ｓに含まれなければ、その通信を復号できないので処理を終了する。
【０１１９】
自分が情報復号許容受信機集合Ｓに含まれていれば、ステップＳ４０３に進み、自分が所属するサブグループＳＧｋのサブグループキーを前述したように、下記のようにして求める。
【０１２０】
【数４０】
2005123679.tif 000036
【０１２１】
次に、ステップＳ４０４において、サブグループキーＫＳＧｋからハッシュ値Ｈ（ＫＳＧｋ）を計算し、これを用いてセッションキーの暗号化データである暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）を復号してセッションキーＫｓを求める。
【０１２２】
ステップＳ４０５において、セッションキーＫｓを適用して暗号文Ｅｎｃ（Ｋｓ，Ｋｃ）を復号してコンテンツキーＫｃを取得し、ステップＳ４０６において、取得したコンテンツキーＫｃに基づいて暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）を復号してコンテンツ（Ｃｏｎ）を取得する。
【０１２３】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【０１２４】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０１２５】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ（Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【０１２６】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１２７】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０１２８】
以上、説明したように、本発明の構成によれば、複数の情報処理装置から選択した特定の暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文を送信する構成を、ｇｅｎｅｒａｌｉｚｅｄ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ａｓｓｕｍｐｔｉｏｎを満たすマルチリニアマップ（ｍｕｌｔｉｌｉｎｅａｒ  ｍａｐ）に基づくブロードキャスト暗号方式に基づいて構築することにより、送信暗号文数の削減、および各情報処理装置に格納する鍵数の削減が実現され、効率的な暗号文ブロードキャスト処理が実現可能となる。従って、本発明は、利用権を制限した暗号文提供処理において利用可能であり、具体的には、暗号文生成、提供、送信を実行する情報処理装置、暗号文の復号、再生を実行するユーザデバイスとしての情報処理装置、暗号化コンテンツ等を格納した情報記録媒体において適用可能である。
【図面の簡単な説明】
【０１２９】
【図１】暗号文を生成し提供する送信装置等の情報処理装置、暗号文を受領して情報取得を行なう受信装置等の情報処理装置の構成例を示す図である。
【図２】暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。
【図３】暗号文を生成し、提供する情報処理装置において生成した情報の情報記録媒体格納例を示す図である。
【図４】暗号文を受領し、復号する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。
【図５】暗号文を受領し、復号する情報処理装置において実行するセッションキーＫｓの具体的計算例を説明する図である。
【図６】ｎ＝２のマルチリニアマップ適用時において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。
【図７】ｎ＝２のマルチリニアマップ適用時において、暗号文を生成し、提供する情報処理装置において生成した情報の情報記録媒体格納例を示す図である。
【図８】ｎ＝２のマルチリニアマップ適用時において、暗号文を受領し、復号する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。
【符号の説明】
【０１３０】
１０１  コントローラ
１０２  演算ユニット
１０３  入出力インタフェース
１０４  セキュア記憶部
１０５  メイン記憶部
１０６  大容量記憶部
２００  情報記録媒体
２０１  暗号文複合許容受信機集合Ｓ情報
２０２  暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）
２０３  暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）
３００  情報記録媒体
３０１  暗号文複合許容受信機集合Ｓ情報
３０２  暗号文ＣＴｋ＝Ｅ（Ｈ（ＫＳＧｋ），Ｋｓ）
３０３  暗号化コンテンツキーＥｎｃ（Ｋｓ，Ｋｃ）
３０４  暗号化コンテンツＥｎｃ（Ｋｃ，Ｃｏｎ）
【図１】
2005123679.tif 000043
【図２】
2005123679.tif 000044
【図３】
2005123679.tif 000045
【図４】
2005123679.tif 000046
【図５】
2005123679.tif 000047
【図６】
2005123679.tif 000048
【図７】
2005123679.tif 000049
【図８】
2005123679.tif 000050