(57)【要約】柔軟に運用可能な、述語暗号に依拠する暗号通信技術を提供する。属性指定情報を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している属性用変換規則情報と述語指定情報を述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している述語用変換規則情報とのペアである変換規則情報ペアが予め定められている。この変換規則情報ペアに含まれる一方の変換規則情報を用いて入力情報から第１属性情報または第１述語情報が得られる。この情報が暗号化処理に用いられる。復号処理では、他方の変換規則情報を用いて利用者情報から得られた第２属性情報または第２述語情報を用いて作られた復号鍵を使って、暗号情報の復号処理が行われる。
2010123122.tif 000002
【特許請求の範囲】
【請求項１】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含む、
暗号システム。
【請求項２】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含み、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【請求項３】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含む、
暗号システム。
【請求項４】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含み、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【請求項５】
請求項１に記載の暗号システムにおいて、
上記暗号化装置の上記暗号化部は、上記共通鍵で平文を暗号化した暗号文も求め、
上記復号装置の上記復号部は、上記復号処理で得られた上記共通鍵を用いる上記暗号文の第２復号処理、または、上記復号処理で得られた上記共通鍵の生成に用いる上記情報から生成された共通鍵を用いる上記暗号文の第２復号処理も行う、
暗号システム。
【請求項６】
請求項２に記載の暗号システムにおいて、
上記暗号化装置の上記暗号化部は、上記共通鍵で平文を暗号化した暗号文も求め、
上記復号装置の上記復号部は、上記復号処理で得られた上記共通鍵を用いる上記暗号文の第２復号処理、または、上記復号処理で得られた上記共通鍵の生成に用いる上記情報から生成された共通鍵を用いる上記暗号文の第２復号処理も行う、
暗号システム。
【請求項７】
請求項１から請求項６のいずれかに記載の暗号システムにおいて、
上記暗号システムは、複数の上記復号装置を含み、
複数の上記復号装置のうち少なくとも一つの上記復号装置は、当該復号装置以外の一つ以上の復号装置に上記暗号情報を転送する転送部をさらに含む
暗号システム。
【請求項８】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う、
暗号システム。
【請求項９】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、ブラウザ部と、中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行い、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【請求項１０】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う、
暗号システム。
【請求項１１】
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、ブラウザ部と、中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行い、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【請求項１２】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【請求項１３】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【請求項１４】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【請求項１５】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【請求項１６】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【請求項１７】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記第１の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記第１の復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第１の復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記第２の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記第２の復号装置の送信部が、上記第３属性情報または上記第３述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第２の復号装置から上記第３属性情報または上記第３述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
を有する暗号通信方法。
【請求項１８】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【請求項１９】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記第１の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記第１の復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第１の復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記第２の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記第２の復号装置の送信部が、上記第３属性情報または上記第３述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第２の復号装置から上記第３属性情報または上記第３述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
を有する暗号通信方法。
【請求項２０】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツとこれに対応する上記暗号情報を上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号情報と上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツと上記暗号情報を受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【請求項２１】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツとこれに対応する上記暗号情報を上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツと上記暗号情報を受信する受信ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【請求項２２】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツを上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツを受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【請求項２３】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツを上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツを受信する受信ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【請求項２４】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける暗号化装置であって、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部と
を含む暗号化装置。
【請求項２５】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける暗号化装置であって、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部と
を含む暗号化装置。
【請求項２６】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける鍵生成装置であって、
上記ポリシー情報で特定される一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部と
を含む鍵生成装置。
【請求項２７】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける鍵生成装置であって、
上記ポリシー情報で特定される一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から生成された属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部
を含む鍵生成装置。
【請求項２８】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
上記鍵生成装置が生成した復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号化装置が生成した暗号情報に対する復号処理を行う復号部
を含む復号装置。
【請求項２９】
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
上記ポリシー情報で特定される一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置が生成した復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号化装置が生成した暗号情報に対する復号処理を行う復号部
を含む復号装置。
【請求項３０】
請求項２８または請求項２９に記載の復号装置において、
上記暗号システムが複数の復号装置を含む場合に、
当該復号装置以外の一つ以上の復号装置に上記暗号情報を転送する転送部をさらに含む復号装置。
【請求項３１】
少なくとも、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵でコンテンツを暗号化した暗号化コンテンツとを求める、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、上記暗号化コンテンツと上記暗号情報を記憶している一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う、
復号装置。
【請求項３２】
少なくとも、述語暗号アルゴリズムに則り、述語暗号アルゴリズムに則り、コンテンツを暗号化した暗号化コンテンツを求める、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、上記暗号化コンテンツを記憶している一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う、
復号装置。
【請求項３３】
少なくとも、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵でコンテンツを暗号化した暗号化コンテンツとを求める一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおけるコンテンツサーバ装置であって、
各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信部と
を含むコンテンツサーバ装置。
【請求項３４】
少なくとも、述語暗号アルゴリズムに則り、述語暗号アルゴリズムに則り、コンテンツを暗号化した暗号化コンテンツを求める一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおけるコンテンツサーバ装置であって、
各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信部と
を含むコンテンツサーバ装置。
【請求項３５】
請求項２４または請求項２５に記載の暗号化装置としてコンピュータを機能させるためのプログラム。
【請求項３６】
請求項２６または請求項２７に記載の鍵生成装置としてコンピュータを機能させるためのプログラム。
【請求項３７】
請求項２８、２９、３１、３２のいずれかに記載の復号装置としてコンピュータを機能させるためのプログラム。
【請求項３８】
請求項３３または請求項３４に記載のコンテンツサーバ装置としてコンピュータを機能させるためのプログラム。
【請求項３９】
請求項３５に記載のプログラム、請求項３６に記載のプログラム、請求項３７に記載のプログラム、請求項３８に記載のプログラム、のうち少なくともいずれかを格納したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号通信技術に関し、より詳しくは、述語暗号に依拠する暗号通信技術に関する。
【背景技術】
【０００２】
これまで暗号技術として、例えば共通鍵暗号、公開鍵暗号などが知られている。【０００３】
共通鍵暗号は、メッセージの送信者が共通鍵でメッセージを暗号化して暗号化メッセージを求め、受信者が送信者と同じ共通鍵を使って暗号化メッセージを復号してメッセージを得る方式である。このため、送信者と受信者との間で安全に共通鍵を所有する手続きが必要になる。【０００４】
公開鍵暗号は、（１）受信者が一意の公開鍵とそれに対応する一意の秘密鍵を用意し、（２）送信者は受信者の公開鍵でメッセージを暗号化して暗号化メッセージを求め、（３）受信者がその秘密鍵で暗号化メッセージを復号してメッセージを得る方式である。このため、送信者がメッセージを暗号化する前に受信者の公開鍵を入手する必要がある。つまり、受信者が公開鍵を生成しないと暗号化できない。【０００５】
また、近年、述語暗号が提案されている。述語暗号は、送信者による暗号化の過程で暗号メッセージに或る情報Ｘが組み込まれ、当該情報Ｘと特定の関係を満たす情報Ｙを持つ受信者が、暗号メッセージの復号や、メッセージを知ることなくメッセージに関する情報を取得することができる方式である。送信者は、暗号化の際に、必ずしも受信者の持つ情報Ｙを知っている必要はない。また、送信者は、必ずしも、暗号化する前に受信者を特定している必要もない。送信者は、自由に、能動的に、主導権を持って、情報Ｘを決めることができる。講学的に、情報Ｘは属性Ｉ（変数）として、情報Ｙは述語ｆ（命題関数、ブール関数）として表される。復号に際し、情報Ｘと情報Ｙとが満たすべき特定の関係は、例えばｆ(Ｉ)＝Trueである。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】ＮＴＴ情報流通プラットフォーム研究所情報セキュリティプロジェクト、“ＮＴＴの暗号要素技術”、インターネット〈URL: http://info.isl.ntt.co.jp/crypt/〉［平成２１年４月１４日検索］
【非特許文献２】岡本龍明、山本博資著、「シリーズ／情報科学の数学  現代暗号」、第３版、産業図書株式会社、２０００年
【非特許文献３】J. Katz, A. Sahai and B. Waters, "Predicate Encryption Supporting Disjunction, Polynomial Equations, and Inner Products", EUROCRYPT 2008, 146-162.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、柔軟に運用可能な、述語暗号に依拠する暗号通信技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化処理を行う。
鍵生成装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
復号装置は、復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。【０００９】
あるいは、第１の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化処理を行う。
復号装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。
鍵生成装置は、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。【００１０】
あるいは、第１の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化処理を行う。
鍵生成装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
復号装置は、復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。【００１１】
あるいは、第１の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化処理を行う。
復号装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。
鍵生成装置は、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。【００１２】
第２の観点による本発明の概要は次のとおりである。
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおいて、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
そして、暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化処理を行う。
また、鍵生成装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
また、復号装置は、復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。そして、この復号装置は、暗号情報を別の復号装置に転送する転送処理も行う。転送する暗号情報は、暗号化装置から送られたものであってもよいし、別の復号装置から転送されたものであってもよい。暗号システムに含まれる復号装置のうち少なくとも一部の復号装置が転送処理を行う機能を持つが、全ての復号装置がこの転送機能を持つことは要求されない。転送された暗号情報を受信した復号装置は、必要に応じて鍵生成装置に復号鍵を生成して貰い、上記復号処理を行う。【００１３】
あるいは、第２の観点による本発明の概要は次のとおりである。
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおいて、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
そして、暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化処理を行う。
また、復号装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。
また、鍵生成装置は、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
上述の復号装置は、暗号情報を別の復号装置に転送する転送処理も行う。転送する暗号情報は、暗号化装置から送られたものであってもよいし、別の復号装置から転送されたものであってもよい。暗号システムに含まれる復号装置のうち少なくとも一部の復号装置が転送処理を行う機能を持つが、全ての復号装置がこの転送機能を持つことは要求されない。転送された暗号情報を受信した復号装置は、必要に応じて鍵生成装置に復号鍵を生成して貰い、上記復号処理を行う。【００１４】
あるいは、第２の観点による本発明の概要は次のとおりである。
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおいて、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
そして、暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化処理を行う。
また、鍵生成装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
また、復号装置は、復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。そして、この復号装置は、暗号情報を別の復号装置に転送する転送処理も行う。転送する暗号情報は、暗号化装置から送られたものであってもよいし、別の復号装置から転送されたものであってもよい。暗号システムに含まれる復号装置のうち少なくとも一部の復号装置が転送処理を行う機能を持つが、全ての復号装置がこの転送機能を持つことは要求されない。転送された暗号情報を受信した復号装置は、必要に応じて鍵生成装置に復号鍵を生成して貰い、上記復号処理を行う。【００１５】
あるいは、第２の観点による本発明の概要は次のとおりである。
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおいて、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
そして、暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化処理を行う。
また、復号装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、暗号情報に対する復号処理を行う。
また、鍵生成装置は、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
上述の復号装置は、暗号情報を別の復号装置に転送する転送処理も行う。転送する暗号情報は、暗号化装置から送られたものであってもよいし、別の復号装置から転送されたものであってもよい。暗号システムに含まれる復号装置のうち少なくとも一部の復号装置が転送処理を行う機能を持つが、全ての復号装置がこの転送機能を持つことは要求されない。転送された暗号情報を受信した復号装置は、必要に応じて鍵生成装置に復号鍵を生成して貰い、上記復号処理を行う。【００１６】
第３の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化処理を行う。
コンテンツサーバ装置は、各暗号化装置から送られた暗号情報および暗号化コンテンツを記憶する処理と、復号装置からの要求に応じて暗号化コンテンツとこれに対応する暗号情報を当該復号装置に送信する送信処理を行う。
鍵生成装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
復号装置は、コンテンツサーバ装置に対する暗号化コンテンツの取得要求処理と、復号鍵を用いて、述語暗号アルゴリズムに則り、コンテンツサーバ装置から取得した暗号情報に対する復号処理と、この復号処理で得られた共通鍵を用いて、コンテンツサーバ装置から取得した暗号化コンテンツを復号するコンテンツ取得処理と、暗号化コンテンツから復号されたコンテンツを表示する処理を行う。【００１７】
あるいは、第３の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化処理を行う。
コンテンツサーバ装置は、各暗号化装置から送られた暗号情報および暗号化コンテンツを記憶する処理と、復号装置からの要求に応じて暗号化コンテンツとこれに対応する暗号情報を当該復号装置に送信する送信処理を行う。
復号装置は、コンテンツサーバ装置に対する暗号化コンテンツの取得要求処理と、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、復号鍵を用いて、述語暗号アルゴリズムに則り、コンテンツサーバ装置から取得した暗号情報に対する復号処理と、この復号処理で得られた共通鍵を用いて、コンテンツサーバ装置から取得した暗号化コンテンツを復号するコンテンツ取得処理と、暗号化コンテンツから復号されたコンテンツを表示する処理を行う。
鍵生成装置は、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。【００１８】
あるいは、第３の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化処理を行う。
コンテンツサーバ装置は、各暗号化装置から送られた暗号化コンテンツを記憶する処理と、復号装置からの要求に応じて暗号化コンテンツを当該復号装置に送信する送信処理を行う。
鍵生成装置は、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成処理を行う。
復号装置は、コンテンツサーバ装置に対する暗号化コンテンツの取得要求処理と、復号鍵を用いて、述語暗号アルゴリズムに則り、コンテンツサーバ装置から取得した暗号化コンテンツを復号する復号処理と、暗号化コンテンツから復号されたコンテンツを表示する処理を行う。【００１９】
あるいは、第３の観点による本発明の概要は次のとおりである。
述語暗号を用いる暗号システムは、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含む。
そして、各鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められている。
また、属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められている。
また、属性用変換規則情報と述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている。
暗号化装置は、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得処理と、第１属性情報または第１述語情報と、鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化処理を行う。
コンテンツサーバ装置は、各暗号化装置から送られた暗号化コンテンツを記憶する処理と、復号装置からの要求に応じて暗号化コンテンツを当該復号装置に送信する送信処理を行う。
復号装置は、コンテンツサーバ装置に対する暗号化コンテンツの取得要求処理と、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得処理と、復号鍵を用いて、述語暗号アルゴリズムに則り、コンテンツサーバ装置から取得した暗号化コンテンツを復号する復号処理と、暗号化コンテンツから復号されたコンテンツを表示する処理を行う。
鍵生成装置は、第２属性情報または第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、暗号情報の復号に用いる復号鍵を生成する鍵生成処理を行う。
【発明の効果】
【００２０】
本発明に拠れば、変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる属性用変換規則情報と述語用変換規則情報のうち、暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報または述語情報を得ることから、述語暗号に依拠する暗号通信を柔軟に運用できる。
【図面の簡単な説明】
【００２１】
【図１】第１の観点による各実施形態に関る暗号システムの構成図。
【図２】第１の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その１）。
【図３】第１の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その２）。
【図４】第１の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その３）。
【図５】第１の観点による第１実施形態に関る暗号化装置の機能ブロック図。
【図６】第１の観点による第１実施形態に関る暗号化処理の処理手順の詳細を示す図。
【図７】第１の観点による第１実施形態に関る復号装置の機能ブロック図。
【図８】第１の観点による第１実施形態に関る復号処理の処理手順の詳細を示す図。
【図９】第１の観点による第１実施形態に関る鍵生成装置の機能ブロック図。
【図１０】第１の観点による第１実施形態に関る鍵生成処理の処理手順の詳細を示す図。
【図１１】入力情報または利用者情報からポリシーに対応するスキーマを用いて、属性情報または述語情報を得ることを図解した図。
【図１２】属性指定情報から属性用スキーマを用いて、属性情報を得ることを図解した図。
【図１３】述語指定情報から述語用スキーマを用いて、述語情報を得ることを図解した図。
【図１４】ポリシーの例を示す図。
【図１５】復号鍵テーブルの例を示す図。
【図１６】認証テーブルの例を示す図。
【図１７】利用者情報テーブルの例を示す図。
【図１８】第１の観点による第２実施形態に関る復号装置の機能ブロック図。
【図１９】第１の観点による第２実施形態に関る復号処理の処理手順の詳細を示す図。
【図２０】第１の観点による第２実施形態に関る鍵生成装置の機能ブロック図。
【図２１】第１の観点による第２実施形態に関る鍵生成処理の処理手順の詳細を示す図。
【図２２】第１の観点による第３実施形態に関る暗号化装置の機能ブロック図。
【図２３】第１の観点による第３実施形態に関る暗号化処理の処理手順の詳細を示す図。
【図２４】第１の観点による第３実施形態に関る復号装置の機能ブロック図。
【図２５】第１の観点による第３実施形態に関る復号処理の処理手順の詳細を示す図。
【図２６】第１の観点による第４実施形態に関る復号装置の機能ブロック図。
【図２７】第１の観点による第４実施形態に関る復号処理の処理手順の詳細を示す図。
【図２８】第２の観点による各実施形態に関る暗号システムの構成図。
【図２９】第２の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その１）。
【図３０】第２の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その２）。
【図３１】第２の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その３）。
【図３２】第２の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その４）。
【図３３】第２の観点による第１実施形態に関る暗号化装置の機能ブロック図。
【図３４】第２の観点による第１実施形態に関る暗号化処理の処理手順の詳細を示す図。
【図３５】第２の観点による第１実施形態に関る第１の復号装置の機能ブロック図。
【図３６】第２の観点による第１実施形態に関る第１の復号処理の処理手順の詳細を示す図。
【図３７】第２の観点による第１実施形態に関る第２の復号装置の機能ブロック図。
【図３８】第２の観点による第１実施形態に関る第２の復号処理の処理手順の詳細を示す図。
【図３９】第２の観点による第１実施形態に関る鍵生成装置の機能ブロック図。
【図４０】第２の観点による第１実施形態に関る鍵生成処理の処理手順（第１の復号装置に対応）の詳細を示す図。
【図４１】第２の観点による第１実施形態に関る鍵生成処理の処理手順（第２の復号装置に対応）の詳細を示す図。
【図４２】第２の観点による第２実施形態に関る第１の復号装置の機能ブロック図。
【図４３】第２の観点による第２実施形態に関る第１の復号処理の処理手順の詳細を示す図。
【図４４】第２の観点による第２実施形態に関る第２の復号装置の機能ブロック図。
【図４５】第２の観点による第２実施形態に関る第２の復号処理の処理手順の詳細を示す図。
【図４６】第２の観点による第２実施形態に関る鍵生成装置の機能ブロック図。
【図４７】第２の観点による第２実施形態に関る鍵生成処理の処理手順（第１の復号装置に対応）の詳細を示す図。
【図４８】第２の観点による第２実施形態に関る鍵生成処理の処理手順（第２の復号装置に対応）の詳細を示す図。
【図４９】第２の観点による第３実施形態に関る暗号化装置の機能ブロック図。
【図５０】第２の観点による第３実施形態に関る暗号化処理の処理手順の詳細を示す図。
【図５１】第２の観点による第３実施形態に関る第１の復号装置の機能ブロック図。
【図５２】第２の観点による第３実施形態に関る第１の復号処理の処理手順の詳細を示す図。
【図５３】第２の観点による第３実施形態に関る第２の復号装置の機能ブロック図。
【図５４】第２の観点による第３実施形態に関る第２の復号処理の処理手順の詳細を示す図。
【図５５】第２の観点による第４実施形態に関る第１の復号装置の機能ブロック図。
【図５６】第２の観点による第４実施形態に関る第１の復号処理の処理手順の詳細を示す図。
【図５７】第２の観点による第４実施形態に関る第２の復号装置の機能ブロック図。
【図５８】第２の観点による第４実施形態に関る第２の復号処理の処理手順の詳細を示す図。
【図５９】電子メールシステムやインスタントメッセージングシステムとして実施される場合における、送受信されるデータの構成の例を示す図。
【図６０】第３の観点による各実施形態に関る暗号システムの構成図。
【図６１】第３の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その１）。
【図６２】第３の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その２）。
【図６３】第３の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その３）。
【図６４】第３の観点による各実施形態に関る暗号通信方法の処理手順を示す図（その４）。
【図６５】第３の観点による第１実施形態に関る暗号化装置の機能ブロック図。
【図６６】第３の観点による第１実施形態に関る暗号化処理の処理手順の詳細を示す図。
【図６７】第３の観点による第１実施形態に関るコンテンツサーバ装置の機能ブロック図。
【図６８】第３の観点による第１実施形態に関る復号装置の機能ブロック図。
【図６９】第３の観点による第１実施形態に関る復号処理の処理手順の詳細を示す図。
【図７０】第３の観点による第１実施形態に関る鍵生成装置の機能ブロック図。
【図７１】第３の観点による第１実施形態に関る鍵生成処理の処理手順の詳細を示す図。
【図７２】第３の観点による第２実施形態に関る復号装置の機能ブロック図。
【図７３】第３の観点による第２実施形態に関る復号処理の処理手順の詳細を示す図。
【図７４】第３の観点による第２実施形態に関る鍵生成装置の機能ブロック図。
【図７５】第３の観点による第２実施形態に関る鍵生成処理の処理手順の詳細を示す図。
【図７６】第３の観点による第３実施形態に関る暗号化装置の機能ブロック図。
【図７７】第３の観点による第３実施形態に関る暗号化処理の処理手順の詳細を示す図。
【図７８】第３の観点による第３実施形態に関る復号装置の機能ブロック図。
【図７９】第３の観点による第３実施形態に関る復号処理の処理手順の詳細を示す図。
【図８０】第３の観点による第４実施形態に関る復号装置の機能ブロック図。
【図８１】第３の観点による第４実施形態に関る復号処理の処理手順の詳細を示す図。
【図８２】コンテンツ配信システムとして実施される場合における、送受信されるデータの構成の例を示す図。
【発明を実施するための形態】
【００２２】
まず、第１の観点から、柔軟に運用可能な、述語暗号に依拠する暗号通信技術に関する実施形態を説明する。
【００２３】
〔第１の観点による第１実施形態〕
図１から図１７を参照して、第１の観点による本発明の第１実施形態を説明する。
【００２４】
暗号システム１は、図１に示すように、複数のクライアント装置１０、３０と、一つまたは複数の鍵生成装置２０と、一つまたは複数のユーザ情報管理装置４０（以下、管理装置と言う）、変換規則情報ペア管理装置５０（以下、登録装置と言う）、一つまたは複数の保全装置８０、一つまたは複数の認証装置９０を含んでいる。これらの各装置は、例えばインターネットである通信網５を介して相互に通信可能とされている。
【００２５】
クライアント装置は、処理目的に応じて、暗号化装置として、あるいは復号装置として機能する。そこで、クライアント装置を機能の観点から、暗号化装置１０または復号装置３０と呼称する。なお、暗号システム１は、暗号化装置としてのみ機能するクライアント装置および／または復号装置としてのみ機能するクライアント装置を含んでもよい。
【００２６】
暗号システム１では述語暗号を用いた暗号化と復号が行われる。第１の観点による本発明では、使用する述語暗号アルゴリズムに限定は無く、例えば上記非特許文献３に開示される述語暗号アルゴリズムを用いることが許される。第１の観点による第１実施形態では、ＫＥＭ(Key Encapsulation Mechanisms)タイプの述語暗号アルゴリズムを用いた例を示す。
【００２７】
暗号システム１における暗号通信方法を、図２、３、４、６、８、１０を参照しながら叙述する。各装置の機能構成については、図５、７、９を参照されたい。
【００２８】
《準備プロセス》
鍵生成装置２０のパラメータ生成部（図示せず）が、述語暗号アルゴリズムで用いられる秘密鍵とエントリを生成する（ステップＳ１）。エントリには、述語暗号アルゴリズムで用いられる公開パラメータ（図面では公開Ｐと略記される）、鍵生成装置２０のアドレス、鍵生成装置２０が使用可能なポリシーリスト、鍵生成装置２０が使用可能なスキーマリストが含まれる。
【００２９】
公開パラメータは、例えば位数ｑの巡回群Ｇ1，Ｇ2，ＧTの生成元ｇ1，ｇ2，ｇT、非退化性を持つ双線形写像ｅ：Ｇ1×Ｇ2→ＧT（但し、e(g1,g2)=gT）、位数ｑ、（ｎ＋１）次元のベクトル空間Ｖの直交基底Ｂを含む。秘密鍵は、双対ベクトル空間Ｖ＊の直交基底Ｂ＊を含む。代数構造を有限体Ｆqとする場合、ｑは素数または素数の冪乗値である。双線形写像ｅは例えばTateペアリングやWeilペアリングである。
【００３０】
直交基底Ｂおよび直交基底Ｂ＊について説明を加える。（ｎ＋１）次元のベクトル空間Ｖの任意の元が、式（１）のように巡回群Ｇ1の（ｎ＋１）次元直積Ｇ1n+1の元として表されるとする。（ｎ＋１）次元のベクトル空間Ｖの任意の元は、（ｎ＋１）次元のベクトル空間Ｖの標準基底Ａを用いて式（２）のように表すこともできる。ただし、ａiは（ｎ＋１）次元直積Ｇ1n+1の元、ｚiは（ｎ＋１）次元直積Ｆqn+1の元とする。また、１は加法単位元とする。
【数１】
2010123122.tif 000003
【００３１】
直交基底Ｂは、式（３）のように、標準基底Ａに（ｎ＋１）次正方行列Ｘを作用させたものとして得られる。記号Ｔは転置を表す。なお、行列Ｘは秘密鍵と同様に秘密とされる。
【数２】
2010123122.tif 000004
【００３２】
同様に、ベクトル空間Ｖと双対な双対ベクトル空間Ｖ＊の任意の元が、式（４）のように巡回群Ｇ2の（ｎ＋１）次元直積Ｇ2n+1の元として表されるとする。双対ベクトル空間Ｖ＊の任意の元は、双対ベクトル空間Ｖ＊の標準基底Ａ＊を用いて式（５）のように表すこともできる。ただし、ａi＊は（ｎ＋１）次元直積Ｇ2n+1の元、ｙi＊は（ｎ＋１）次元直積Ｆqn+1の元とする。また、１は加法単位元とする。
【数３】
2010123122.tif 000005
【００３３】
直交基底Ｂ＊は、式（６）のように、標準基底Ａ＊に（ｎ＋１）次正方行列T(Ｘ-1)を作用させたものとして得られる。記号Ｅは単位行列を表す。
【数４】
2010123122.tif 000006
【００３４】
次に、スキーマリストについて説明を加える。属性を指定する情報（属性指定情報；つまり、例えば名前、生年月日などの属性を具体的に一意に特定する情報であり、属性値ともいう）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（属性用変換規則情報；属性用スキーマともいう）と、
述語を指定する情報（述語指定情報；つまり、例えば年齢、権限などの属性に関する条件を論理式などで具体的に設定する情報であり、命題関数ともいう）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（述語用変換規則情報；述語用スキーマともいう）と
のペアである変換規則情報ペアをスキーマペアと呼ぶ（図１１−図１３参照）。一つまたは複数のスキーマペアの集合体（データリスト）がスキーマリストである。各々の鍵生成装置２０はスキーマリストを自由に定めてよい。スキーマリストに含まれる各スキーマの各データ項目は、例えばＸＭＬ(eXtensible Markup Language)やＡＳＮ．１(Abstract Notation Number One)で記述される。
【００３５】
図１２に示す属性用スキーマの例について説明を加える。ユーザの属性指定情報（属性値）は、属性名およびデータ型に対応付けられている。図１２に示す例では、例えば、属性名‘email1’にデータ型‘文字列’が設定されており、属性名‘email1’およびデータ型‘文字列’に属性値‘XXX@XXX.ntt.co.jp’が対応付けられている。
【００３６】
属性用スキーマは、要素番号に属性名と型変換関数を対応付けた変換規則を規定している。図１２に示す例では、例えば、要素番号‘１’に属性名‘血液型’と型変換関数が対応付けられている。要素番号‘１’に対応する型変換関数は、属性値の血液型がＯ型であれば０に、属性値の血液型がA型であれば１に、属性値の血液型がB型であれば２に、属性値の血液型がAB型であれば３に変換することを規定している。また、要素番号‘２’および‘３’に属性名‘生年月日’と型変換関数が対応付けられている。要素番号‘２’および‘３’に対応する型変換関数は、要素番号２に対して属性値の生年月日の年を入力とするHash関数の値に、要素番号３に対して属性値の生年月日の月日を入力とするHash関数の値に変換することを規定している。
【００３７】
図１２に示すユーザの属性指定情報（属性値）の例に図１２に示す属性用スキーマの例を適用した結果が、図１２に示す属性情報（ベクトル情報）の例として示されている。属性用スキーマの要素番号をベクトルの要素番号と見なして型変換関数の出力値を並べることにより、この属性情報をベクトルと考えることができる。
【００３８】
なお、型変換関数の出力値は、この説明では整数値やHash関数の出力値として例示されたが、実際には述語暗号アルゴリズムに依拠し例えば有限体Ｆqの元である。
【００３９】
図１３に示す述語用スキーマの例について説明を加える。述語指定情報として属性に関する条件を論理式が与えられる。図１３に示す例では、例えば、属性名‘名前’の属性値を‘田中太郎’とし、属性名‘年齢’の属性値を‘２０歳以上’とする述語指定情報‘名前=田中太郎かつ年齢=20歳以上’が与えられている。
【００４０】
述語用スキーマは、要素番号に属性名と型変換関数を対応付けた変換規則を規定している。図１３に示す例では、例えば、要素番号‘１’に属性名‘血液型’と型変換関数が対応付けられている。要素番号‘１’に対応する型変換関数は、属性値の血液型がＯ型であれば０に、属性値の血液型がA型であれば１に、属性値の血液型がB型であれば２に、属性値の血液型がAB型であれば３に変換することを規定している。また、要素番号‘２’および‘３’に属性名‘生年月日’と型変換関数が対応付けられている。要素番号‘２’および‘３’に対応する型変換関数は、要素番号２に対して属性値の生年月日の年を入力とするHash関数の値に、要素番号３に対して属性値の生年月日の月日を入力とするHash関数の値に変換することを規定している。
【００４１】
図１３に示す述語指定情報の例に図１３に示す述語用スキーマの例を適用した結果が、図１３に示す述語情報（ベクトル情報）の例として示されている。具体的には、この例では、述語用スキーマを述語指定情報に適用することにより要素番号に応じた変数を持つ多変数多項式ｆが得られ、この多変数多項式ｆをベクトル情報に変換することにより、述語情報（ベクトル情報）が得られる。図１３に示す述語指定情報の例に則して説明する。述語指定情報‘名前=田中太郎かつ年齢=20歳以上’に述語用スキーマを適用することにより、要素番号‘０’に対応した型変換関数の出力値‘Hash(田中太郎)’および要素番号‘２３’に対応した型変換関数の出力値‘１’が得られる。そして、要素番号‘０’に対応した型変換関数の出力値‘Hash(田中太郎)’を零点とする要素番号‘０’に対応した変数X0の１次式と、要素番号‘２３’に対応した型変換関数の出力値‘１’を零点とする要素番号‘２３’に対応した変数X23の１次式との線形結合により、多変数多項式ｆ=r1(X0-H(田中太郎))+r2(X23-1)が得られる。ここでｒ１とｒ２は乱数である。さらに、この多変数多項式ｆを展開して各項の係数を並べることにより、多変数多項式ｆがベクトル情報に変換され、図１３に示す述語情報（ベクトル情報）の例が得られる。
【００４２】
なお、型変換関数の出力値は、この説明では整数値やHash関数の出力値として例示されたが、実際には述語暗号アルゴリズムに依拠し例えば有限体Ｆqの元である。
【００４３】
また、スキーマペアを構成する両スキーマの間では、属性名と型変換関数との組み合わせ、入力となる属性値のデータ型などが統一されていることが求められる。
【００４４】
次にポリシーリストについて図１４を参照して説明を加える。属性用スキーマと述語用スキーマのうちいずれであるかを特定するための情報をポリシー情報（以下、ポリシーと言う）と呼ぶ。このポリシーを記述したデータリストがポリシーリストである。鍵生成装置２０が属性用スキーマと述語用スキーマの両方を使用する場合には、ポリシーとして２種類のタイプが用意される。それはCipher_Text_PolicyとKey_Policyである。鍵生成装置２０が属性用スキーマのみを使用する場合には、ポリシーとして１種類のタイプが用意される。それは、Key_Policyである。鍵生成装置２０が述語用スキーマのみを使用する場合には、ポリシーとして１種類のタイプが用意される。それは、Cipher_Text_Policyである。ポリシーは、例えばＸＭＬ(eXtensible Markup Language)やASN.1(Abstract Notation Number One)で記述される。鍵生成装置２０は、ポリシーの特定対象が、属性用スキーマのみ、あるいは、述語用スキーマのみ、あるいは、属性用スキーマおよび述語用スキーマであることを自由に定めてよい。
【００４５】
ステップＳ１の処理に続いて、鍵生成装置２０の送信部はエントリを認証装置９０に送信し、認証装置９０の受信部がエントリを受信する（ステップＳ２）。認証装置９０の署名付与部（図示せず）がエントリに対して例えば従来的な手法で電子署名を付与して（ステップＳ３）、認証装置９０の送信部が署名付きエントリを鍵生成装置２０に送信し、鍵生成装置２０の受信部が署名付きエントリを受信する（ステップＳ４）。そして、鍵生成装置２０の送信部が署名付きエントリを保全装置８０に送信し、保全装置８０の受信部が署名付きエントリを受信する（ステップＳ５）。
【００４６】
保全装置８０の送信部は鍵生成装置２０を特定する情報（例えばアドレス）を含む検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ６）。登録装置５０の検索部（図示せず）は、鍵生成装置２０に関する登録内容（エントリ）を検索し（ステップＳ７）、登録装置５０の送信部が登録の有無や登録内容を含む検索結果を保全装置８０に送信し、保全装置８０の受信部が検索結果を受信する（ステップＳ８）。
【００４７】
保全装置８０の検査部（図示せず）は、ステップＳ５の処理で受信した署名付きエントリと、ステップＳ８の処理で受信した検索結果を比較し、重複の有無を検査する（ステップＳ９）。重複の無いことを確認できた場合、保全装置８０の送信部は、署名付きエントリを登録装置５０に送信し、登録装置５０の受信部が、署名付きエントリを受信する（ステップＳ１０）。登録装置５０の登録部（図示せず）は、署名付きエントリを鍵生成装置２０と対応付けて登録装置５０の記憶部に記憶する（ステップＳ１１）。登録装置５０の送信部は登録結果を保全装置８０に送信し、保全装置の受信部が登録結果を受信する（ステップＳ１２）。保全装置８０の送信部は、登録結果を鍵生成装置２０に送信し、鍵生成装置２０は登録結果を受信する（ステップＳ１３）。
【００４８】
複数の鍵生成装置２０が存在する場合、各鍵生成装置２０が独自に、ステップＳ１からステップＳ１３の各処理を行う。例えば、公開パラメータと秘密鍵は鍵生成装置ごとに定められる。但し、このことは、各鍵生成装置が共通の公開パラメータと秘密鍵を持つことを妨げるものではない。また、各鍵生成装置が同じ登録装置５０にエントリを登録してもよいし、各鍵生成装置が異なる登録装置５０にエントリを登録してもよい。
【００４９】
予め、秘密鍵、エントリ、登録装置５０へのエントリ登録などが設定されている場合には、ステップＳ１からステップＳ１３の各処理を省略することが許される。
【００５０】
また、認証装置９０と保全装置８０は同じハードウェアエンティティであってもよい。なお、エントリ登録に認証を要求しない場合や、登録装置５０に登録されるエントリの一意性が確保されている場合などでは、暗号システム１が保全装置８０および／または認証装置９０を備えないシステム構成も許容される。
【００５１】
これで《準備プロセス》は終了する。
【００５２】
《暗号化プロセス》
暗号化装置１０の送信部１４は、図示しない制御部の制御を受けて、検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ１４）。登録装置５０の検索部は、登録装置５０の記憶部に登録されているエントリの一部または全部を検索して一つのエントリを選び（ステップＳ１５）、登録装置５０の送信部は検索結果のエントリを暗号化装置１０に送信し、暗号化装置１０の受信部はエントリを受信する（ステップＳ１６）。このエントリには、鍵生成装置のアドレス、この鍵生成装置の公開パラメータ、この鍵生成装置が使用可能なポリシーリスト、この鍵生成装置が使用可能なスキーマリストが含まれている。受信したエントリは、暗号化装置１０のメモリ１１に記憶される。
【００５３】
なお、各鍵生成装置２０の公開パラメータ、スキーマリスト、ポリシーリスト、アドレスを予め暗号化装置１０が所有している場合には、ステップＳ１４−Ｓ１６の処理は省略される。つまり、暗号システム１が登録装置５０を含まない形態も許容されることに注意しなければならない。
【００５４】
暗号化装置１０の第１述語論理情報取得部１２が、メモリ１１から入力情報とポリシーとスキーマを読み込み、属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を求める（ステップＳ１７ａ）。この処理の詳細について説明を加える（図１２、図１３参照）。
【００５５】
まず、スキーマリストに複数のスキーマペアが記述されている場合、用途などに応じて一つのスキーマペアが選択される。暗号化装置１０の利用者によってスキーマペアが選択されてその指示情報が入力される場合や、所定の規則に従い、第１述語論理情報取得部１２がスキーマペアを選択してもよい。
【００５６】
そして、入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシーと共にいずれか一方のスキーマを選択する。暗号化装置１０の利用者によってポリシーといずれか一方のスキーマが選択されてその指示情報が入力される場合や、所定の規則に従い、第１述語論理情報取得部１２がポリシーといずれか一方のスキーマを選択する場合のいずれであってもよい。なお、鍵生成装置２０のポリシーが１種類のタイプのみ用意されている場合には、そのポリシーに従ってスキーマペアのうちの一方のスキーマが選択される。もし、選択されたスキーマが入力情報の種類に対応していない場合には、スキーマリストからスキーマペアを再選択するか、登録装置５０からエントリの提供を再度受ければよい。
【００５７】
入力情報は、暗号化装置１０の利用者によって入力された情報または、例えばＩＣカード３９のような記憶媒体から暗号化装置１０の取得部（図示せず）が取得した情報でもよい。
【００５８】
そして、第１述語論理情報取得部１２が、ポリシーに従ってスキーマペアの中から選択されたスキーマを用いて入力情報から第１属性情報または第１述語情報を得る。ポリシーがKey_Policyであり選択されたスキーマが属性用スキーマである場合には第１属性情報が得られる。ポリシーがCipher_Text_Policyであり選択されたスキーマが述語用スキーマである場合には第１述語情報が得られる。第１属性情報と第１述語情報は、第１の観点による第１実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。この際、スキーマを用いて入力情報から必要な属性値の抽出や整列化が行われる。
【００５９】
次に、暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる直交基底Ｂ（実質的な公開鍵）と平文Ｍを用いて、共通鍵Ｋと暗号情報Ｃ1と暗号文Ｃ2を求める（ステップＳ１７ｂ、Ｓ１７ｃ）。これらの処理の詳細について説明を加える。ただし、第１の観点による第１実施形態が共通鍵Ｋの配送に特化した実施形態である場合には暗号文Ｃ2の生成は不要である。
【００６０】
まず、第１暗号化部１３ａが、述語暗号アルゴリズムに則り、有限体Ｆqの元である乱数ｒ、ρを生成して、式（７）のように共通鍵Ｋを設定し、式（８）に従って暗号情報Ｃ1を求める（ステップＳ１７ｂ）。Ｈは例えばハッシュ関数である。この例では第１属性情報ｖを用いているが、第１述語情報を用いる場合は式（８）においてｖをｗに置き換えればよい。また、この例では、暗号情報Ｃ1は共通鍵Ｋの生成に用いる情報ρに対応する情報であるが、暗号情報Ｃ1を共通鍵Ｋに対応する情報としてもよい。
【数５】
2010123122.tif 000007
【００６１】
次に、第２暗号化部１３ｂが、共通鍵Ｋと平文Ｍを用いて、式（９）に従って暗号文Ｃ2を求める（ステップＳ１７ｃ）。共通鍵を用いた暗号化方法EncKは周知の方法でよく、例えば上記非特許文献１に開示される方法である。既述のとおり、第１の観点による第１実施形態が共通鍵Ｋの配送に特化した実施形態である場合には、ステップＳ１７ｃの処理は省略される。つまり、暗号化装置１０は、第２暗号化部１３ｂの機能を持つとしても、ステップＳ１７ｃの処理を行わない。
【数６】
2010123122.tif 000008
【００６２】
次に、暗号化装置１０の送信部１４は、制御部による制御を受けて、暗号情報Ｃ1と、（必要に応じて）暗号文Ｃ2と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。そして暗号化装置１０の送信部１４は、暗号メッセージを復号装置３０に送信し、復号装置３０の受信部が暗号メッセージを受信する（ステップＳ１８）。
【００６３】
これで《暗号化プロセス》は終了する。
【００６４】
《復号プロセス》
復号装置３０の送信部３４は、図示しない制御部の制御を受けて、暗号メッセージに含まれる鍵生成装置のアドレスを含む検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ１９）。登録装置５０の検索部は、アドレスで指定された鍵生成装置のエントリを検索してそれを選び（ステップＳ２０）、登録装置５０の送信部は検索結果のエントリを復号装置３０に送信し、復号装置３０の受信部はエントリを受信する（ステップＳ２１）。このエントリには、鍵生成装置のアドレス、この鍵生成装置の公開パラメータ、この鍵生成装置が使用可能なポリシーリスト、この鍵生成装置が使用可能なスキーマリストが含まれている。受信したエントリは、復号装置３０のメモリ３１に記憶される。
【００６５】
なお、各鍵生成装置２０の公開パラメータ、スキーマリスト、ポリシーリスト、アドレスを予め復号装置３０が所有している場合には、ステップＳ１９−Ｓ２１の処理は省略される。この場合、復号装置３０は、暗号メッセージに含まれるアドレスに対応する鍵生成装置のエントリを自身のメモリ３１から検索してこれを取得する。
【００６６】
復号装置３０の検証部（図示せず）は、制御部の制御を受けて、暗号メッセージに含まれるスキーマペアとポリシーが、登録装置５０から取得したエントリに含まれるポリシーリストとスキーマリストに含まれるか否かを検証する（ステップＳ２２ａ）。この検証に失敗した場合、復号処理の失敗として処理を終了する（ステップＳ２２ｇ）。
【００６７】
この検証に成功した場合、復号装置３０の取得部３２が、例えばＩＣカード３９のような記憶媒体から、当該復号装置３０の利用者に対応する属性指定情報または述語指定情報を読み取る（ステップＳ２２ｆ）。属性指定情報または述語指定情報のいずれを読み取るかは、暗号メッセージに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、取得部３２は記憶媒体から属性指定情報を読み取る。もしポリシーがKey_Policyである場合、取得部３２は記憶媒体から述語指定情報を読み取る。以下、読み取られた指定情報を利用者情報と呼ぶ。また、復号装置３０の取得部３２が、後述する鍵生成装置２０における処理《利用者情報取得プロセス》と同様に、管理装置４０から、当該復号装置３０の利用者に対応する属性指定情報または述語指定情報を読み取ることも許容される。なお、第１の観点による第１実施形態では、ステップＳ２２ｆの処理は任意に行われる。例えば、予め復号装置３０が利用者に対応する属性指定情報と述語指定情報を所有している場合、ポリシーに従って属性指定情報または述語指定情報のいずれかが利用者情報となる。
【００６８】
次に、復号装置３０の検証部が、暗号メッセージに含まれる暗号情報を復号するために使用する復号鍵を持っているか否かを検証する（ステップＳ２２ｂ）。
【００６９】
復号装置３０はメモリ３１に復号鍵テーブルを記憶している。復号鍵テーブルでは、例えば図１５に示すように、鍵生成装置の識別子に対して、公開パラメータと、スキーマペアと、復号鍵の対象と、述語指定情報と、復号鍵とが対応付けられている。そこで、検証部は、暗号メッセージに含まれるアドレスによって判別する鍵生成装置の識別子、公開パラメータと、スキーマペアと、復号鍵の対象（但し、これは、暗号メッセージに含まれるポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する）に対応する復号鍵の有無を検証する。もし復号鍵が存在すれば、ステップＳ２９の処理を行う。もし復号鍵が存在しなければ、ステップＳ２３の処理を行う。
【００７０】
ここで《復号プロセス》の説明を中断し、《鍵生成プロセス》の説明をする。
【００７１】
上述のように復号鍵が存在しない場合、復号装置３０の送信部３４は、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、（もし在れば）利用者情報、認証情報を纏めた鍵要求メッセージを生成する。認証情報は、例えば利用者のＩＤとパスワードを含む。そして、復号装置３０の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する（ステップＳ２３）。受信した鍵要求メッセージは、鍵生成装置２０のメモリ２１に記憶される。
【００７２】
鍵生成装置２０の検証部（図示せず）は、制御部の制御を受けて、鍵要求メッセージに含まれるスキーマペアとポリシーが、当該鍵生成装置２０が所有するエントリ（例えばステップＳ１で生成されたエントリである）に含まれるポリシーリストとスキーマリストに含まれるか否か、および、鍵要求メッセージに含まれる公開パラメータが当該鍵生成装置２０の公開パラメータであるか否かを検証する（ステップＳ２４ａ）。この検証に失敗した場合、鍵生成処理の失敗として処理を終了する（ステップＳ２４ｇ）。なお、ステップＳ２４ａの処理では、鍵要求メッセージに認証情報が含まれるならば、鍵要求メッセージに含まれる認証情報の検証も行われる。鍵生成装置２０は、メモリ２１に認証テーブルを記憶している。認証テーブルでは、例えば図１６に示すように、利用者のＩＤに対してパスワードが対応付けられている。そこで、検証部は、鍵要求メッセージに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。この検証に失敗した場合も、ステップＳ２４ｇの処理が行われる。
【００７３】
この検証に成功した場合、鍵生成装置２０の検証部が、鍵要求メッセージに利用者情報が含まれているか否かを検証する（ステップＳ２４ｂ）。鍵要求メッセージに利用者情報が含まれていればステップＳ２４ｃの処理を行い、鍵要求メッセージに利用者情報が含まれていなければステップＳ２５の処理を行う。なお、必ず鍵要求メッセージに利用者情報が含まれる方法を採用する場合には、ステップＳ２４ｂの処理および後述する《利用者情報取得プロセス》は不要である。
【００７４】
ここで《鍵生成プロセス》の説明を中断し、《利用者情報取得プロセス》の説明をする。
【００７５】
鍵生成装置２０の送信部は、鍵要求メッセージに含まれるポリシーと（もし在れば）認証情報を含むリクエストを管理装置４０に送信し、管理装置４０がリクエストを受信する（ステップＳ２５）。受信したリクエストは、管理装置４０のメモリに記憶される。
【００７６】
管理装置４０はメモリに認証テーブルを記憶している。この認証テーブルでは、上述の認証テーブルと同様に、利用者のＩＤに対してパスワードが対応付けられている（図１６参照）。そこで、管理装置４０の検証部（図示せず）は、リクエストに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。
【００７７】
この検証に成功すると、管理装置４０の検索部（図示せず）がリクエストに含まれるポリシーに従って、メモリに記憶されている利用者情報テーブルから属性指定情報または述語指定情報を検索する（ステップＳ２６）。利用者情報テーブルは、例えば利用者のＩＤとこれに対応付けられた属性名および属性指定情報で構成される第１テーブルと、利用者のＩＤとこれに対応付けられた述語指定情報で構成される第２テーブルとを含んでいる（図１７参照）。属性指定情報または述語指定情報のいずれを読み取るかは、リクエストに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、検索部は第１テーブルからリクエストに含まれる利用者のＩＤに対応する属性指定情報を取得する。もしポリシーがKey_Policyである場合、検索部は第２テーブルからリクエストに含まれる利用者のＩＤに対応する述語指定情報を取得する。読み取られた指定情報を利用者情報と呼ぶ。
【００７８】
管理装置４０の送信部は、制御部による制御を受けて、検索結果の利用者情報を鍵生成装置２０に送信し、鍵生成装置２０の受信部が利用者情報を受信する（ステップＳ２７）。受信した利用者情報は、鍵生成装置２０のメモリ２１に記憶される。
【００７９】
以上で《利用者情報取得プロセス》を終了し、再び《鍵生成プロセス》の説明に戻る。
【００８０】
利用者情報を既に所有している場合、あるいは、利用者情報取得プロセスによって利用者情報を受信した場合（ステップＳ２７）、鍵生成装置２０の第２述語論理情報取得部２３は、メモリ２１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２４ｃ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第１の観点による第１実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。この際、スキーマを用いて入力情報から必要な属性値の抽出や整列化が行われる。
【００８１】
次に、鍵生成装置２０の鍵生成部２５が、述語暗号アルゴリズムに則り、公開パラメータのｑに基づき有限体Ｆqの元である乱数αを生成して、メモリ２１からの第２属性情報ｖ(p)＝(ｖ(p)1，…，ｖ(p)n)または第２述語情報ｗ(p)＝(ｗ(p)1，…，ｗ(p)n)と、当該鍵生成装置の秘密鍵Ｂ＊を用いて、式（１０）に従って復号鍵Ｒを求める（ステップＳ２４ｄ）。暗号化処理で用いられた入力情報が属性指定情報である場合に対応して、この例では第２述語情報ｗ(p)を用いているが、入力情報が述語指定情報である場合には、第２属性情報ｖ(p)が対応するので、式（１０）においてｗ(p)をｖ(p)に置き換えればよい。
【数７】
2010123122.tif 000009
【００８２】
次に、鍵生成装置２０の送信部２４は、制御部による制御を受けて、復号鍵Ｒを復号装置３０に送信し、復号装置３０の受信部が復号鍵Ｒを受信する（ステップＳ２８）。受信した復号鍵Ｒは、復号装置３０のメモリ３１に記憶される。
【００８３】
以上で《鍵生成プロセス》を終了し、再び《復号プロセス》の説明に戻る。
【００８４】
復号鍵を既に所有している場合、あるいは、鍵生成プロセスによって復号鍵を受信した場合（ステップＳ２８）、復号装置３０の復号部３３が、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1と（必要に応じて）暗号文Ｃ2を読み込んで、共通鍵Ｋと（必要に応じて）平文Ｍを求める（ステップＳ２９）。
【００８５】
このステップＳ２９の処理の詳細について説明を加える。第１復号部３３ａは、メモリ３１から公開パラメータと暗号情報Ｃ1と復号鍵Ｒを読み込み、述語暗号アルゴリズムに則り、ｅ(Ｃ1,Ｒ)を求める。この演算結果は式（１１）に示すように、入力情報が属性指定情報である場合、双線形性に基づき暗号情報Ｃ1と復号鍵Ｒから取り出された第１属性情報ｖと第２述語情報ｗ(p)の標準内積の結果に依存する。入力情報が述語指定情報である場合、式（１１）においてｖをｖ(p)に、ｗ(p)をｗに置き換えればよく、演算結果は双線形性に基づき暗号情報Ｃ1と復号鍵Ｒから取り出された第１述語情報ｗと第２属性情報ｖ(p)の標準内積の結果に依存する。但し、ｅ(ｂi,ｂi*)は式（１２）のように定義される。δijは、クロネッカーのデルタ記号である。
【数８】
2010123122.tif 000010
【００８６】
従って、第１属性情報ｖと第２述語情報ｗ(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ(p)の標準内積が０）の場合、式（１１）の演算結果ｇＴρが得られる。この演算結果ｇＴρが得られた場合、復号装置３０の第１復号部３３ａは、式（７）に従って“正しい”共通鍵Ｋを得る（ステップＳ２２ｃ）。もし第１属性情報ｖと第２述語情報ｗ(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ(p)の標準内積が０）ではない場合、第１復号部３３ａは、式（７）に従って“正しくない”値を得る。この例では、ハッシュ関数Ｈはシステムに共通とするか公開パラメータに含まれるとする。この例では、暗号情報Ｃ1が共通鍵Ｋの生成に用いる情報ρに対応する情報であるが、暗号情報Ｃ1を共通鍵Ｋに対応すると情報する場合には、式（１１）の演算結果が共通鍵Ｋ（あるいは正しくない値）となる。つまり、復号装置３０の正当な利用者は、第１属性情報ｖとの標準内積が０となる第２述語情報ｗ(p)を与える述語指示情報、あるいは、第１述語情報ｗとの標準内積が０となる第２属性情報ｖ(p)を与える属性指示情報を持つ。
【００８７】
次に、第２復号部３３ｂが、共通鍵Ｋと暗号文Ｃ2を用いて、式（１３）に従って平文Ｍを求める（ステップＳ２２ｄ）。共通鍵を用いた復号方法DecKは暗号化方法EncKに対応する。既述のとおり、第１の観点による第１実施形態が共通鍵Ｋの配送に特化した実施形態である場合には、ステップＳ２２ｄの処理は省略される。つまり、復号装置３０は、第２復号部３３ｂの機能を持つとしても、ステップＳ２２ｄの処理を行わない。
【数９】
2010123122.tif 000011
【００８８】
もし、式（１１）に従った演算結果が正しくない値である場合には、式（１３）によっては正しい平文Ｍを得ることができない。
【００８９】
なお、復号装置３０は、復号鍵Ｒを復号鍵テーブルに記憶してもよい。また、共通鍵Ｋを復号鍵テーブルに付加して記憶してもよい。
【００９０】
これで《復号プロセス》は終了する。
【００９１】
〔第１の観点による第２実施形態〕
第１の観点による第２実施形態では、第１の観点による第１実施形態と異なり、復号装置３０が第２属性情報または第２述語情報を生成する。この差異に伴い、第１の観点による第２実施形態は、いくつかの事項で第１の観点による第１実施形態と異なる。そこで、第１の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図１８−図２１を参照しながら第１の観点による第１実施形態と異なる部分を説明する。
【００９２】
ステップＳ１からステップＳ２２ｂまでの処理は、第１の観点による第１実施形態と同じである。
【００９３】
ステップＳ２２ｂの処理で復号鍵を所有していない場合、復号装置３０の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２３ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第１の観点による第２実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【００９４】
ステップＳ２３ｇの処理の後、ステップＳ２３の処理が行われる。ただし、この処理では、復号装置３０の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、復号装置３０の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【００９５】
そして、ステップＳ２４ａの処理で検証に成功した場合、ステップＳ２４ｄの処理が行われる。鍵生成装置２０は復号装置３０から第２属性情報または第２述語情報を受信しているため、第１の観点による第１実施形態と異なり、この情報を生成するための機能と処理が不要である。
【００９６】
そして、ステップＳ２４ｄの処理の後のステップＳ２８とステップＳ２９の各処理は、第１の観点による第１実施形態と同じである。
【００９７】
〔第１の観点による第３実施形態〕
第１の観点による第３実施形態では、第１の観点による第１実施形態と異なり、暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める。つまり、第１の観点による第３実施形態では、例えば上記非特許文献３に示す述語暗号アルゴリズムが用いられる。この差異に伴い、第１の観点による第３実施形態は、いくつかの事項で第１の観点による第１実施形態と異なる。そこで、第１の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図２２−図２５を参照しながら第１の観点による第１実施形態と異なる部分を説明する。
【００９８】
ステップＳ１からステップＳ１７ａまでの処理は、第１の観点による第１実施形態と同じである。但し、公開パラメータなどの情報は第１の観点による第３実施形態の述語暗号アルゴリズムに必要な情報とされる。具体的な情報については、例えば上記非特許文献３などを参考されたい。
【００９９】
ステップＳ１７aの処理に続くステップＳ１７ｂ１の処理では、暗号化装置１０の暗号化部１３が、述語暗号アルゴリズムに則り、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める（ステップＳ１７ｂ１）。
【０１００】
次に、ステップＳ１７ｂ１の処理の後、ステップＳ１７ｄの処理が行われる。但し、この処理では、暗号化装置１０の送信部１４が、制御部による制御を受けて、暗号情報Ｃ1と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。
【０１０１】
ステップＳ１７ｄの処理に続くステップＳ１８からステップＳ２８までの処理は、第１の観点による第１実施形態と同じである。
【０１０２】
ステップＳ２８の処理に続くステップＳ２２ｃ１の処理では、復号装置３０の復号部３３が、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1を読み込んで、平文Ｍを求める（ステップＳ２２ｃ１）。
【０１０３】
〔第１の観点による第４実施形態〕
第１の観点による第４実施形態は、第１の観点による第２実施形態と第１の観点による第３実施形態の組み合わせ形態に相当する。つまり、第１の観点による第４実施形態は、第１の観点による第１実施形態と異なり、（１）復号装置３０が第２属性情報または第２述語情報を生成する、（２）暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める。この差異に伴い、第１の観点による第４実施形態は、いくつかの事項で第１の観点による第１実施形態と異なる。そこで、第１の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図２６と図２７も参照して第１の観点による第１実施形態と異なる部分を説明する。
【０１０４】
ステップＳ１からステップＳ１７ａまでの処理は、第１の観点による第１実施形態と同じである。但し、公開パラメータなどの情報は第１の観点による第４実施形態の述語暗号アルゴリズムに必要な情報とされる。具体的な情報については、例えば上記非特許文献３などを参考されたい。
【０１０５】
ステップＳ１７aの処理に続くステップＳ１７ｂ１の処理では、暗号化装置１０の暗号化部１３が、述語暗号アルゴリズムに則り、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める（ステップＳ１７ｂ１）。
【０１０６】
次に、ステップＳ１７ｂ１の処理の後、ステップＳ１７ｄの処理が行われる。但し、この処理では、暗号化装置１０の送信部１４が、制御部による制御を受けて、暗号情報Ｃ1と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。
【０１０７】
ステップＳ１７ｄの処理に続くステップＳ１８からステップＳ２２ｂの処理までは、第１の観点による第１実施形態と同じである。
【０１０８】
ステップＳ２２ｂの処理で復号鍵を所有していない場合、復号装置３０の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２３ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第１の観点による第４実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【０１０９】
ステップＳ２３ｇの処理の後、ステップＳ２３の処理が行われる。ただし、この処理では、復号装置３０の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、復号装置３０の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【０１１０】
そして、ステップＳ２４ａの処理で検証に成功した場合、ステップＳ２４ｄの処理が行われる。鍵生成装置２０は、復号装置３０から第２属性情報または第２述語情報を受信しているため、この情報を生成するための機能と処理が不要である。
【０１１１】
そして、ステップＳ２４ｄの処理の後のステップＳ２８の処理は、第１の観点による第１実施形態と同じである。
【０１１２】
ステップＳ２８の処理に続くステップＳ２２ｃ１の処理では、復号装置３０の復号部３３が、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1を読み込んで、平文Ｍを求める（ステップＳ２２ｃ１）。
【０１１３】
次に、上述の第１の観点による暗号通信技術に留意しつつ、第２の観点から、柔軟に運用可能であって述語暗号で暗号化された暗号情報を流通させることが可能な、述語暗号に依拠する暗号通信技術に関する実施形態を説明する。この技術によると、復号装置が転送機能を持っているため、述語暗号で暗号化された暗号情報を流通させることができる。
【０１１４】
第２の観点による暗号通信技術の説明は上述の第１の観点による暗号通信技術の説明と実質的に重複する部分を多く含むが、第１の観点による暗号通信技術の説明を参照しなくてもよいように、できるだけ重複説明と重複図面を省略せずに第２の観点による暗号通信技術を説明する。このため、数式の番号、機能部を表す参照番号、ステップを表す参照番号なども両者で重複するが、文脈から混乱の虞は無いであろう。
【０１１５】
〔第２の観点による第１実施形態〕
図２８から図４１を参照して第２の観点による本発明の第１実施形態を説明する。
【０１１６】
第２の観点による暗号システム１は、図２８に示すように、複数のクライアント装置１０、３０−１、３０−２と、一つまたは複数の鍵生成装置２０と、一つまたは複数のユーザ情報管理装置４０（以下、管理装置と言う）、変換規則情報ペア管理装置５０（以下、登録装置と言う）、一つまたは複数の保全装置８０、一つまたは複数の認証装置９０を含んでいる。これらの各装置は、例えばインターネットである通信網５を介して相互に通信可能とされている。
【０１１７】
クライアント装置は、処理目的に応じて、暗号化装置として、あるいは復号装置として機能する。そこで、クライアント装置を機能の観点から、暗号化装置１０または復号装置と呼称する。復号装置は、後述する暗号メッセージの授受について暗号化装置１０との関係で当事者である第１の復号装置３０−１と、当事者ではない第２の復号装置３０−２に類別される。なお、第２の観点による暗号システム１は、暗号化装置としてのみ機能するクライアント装置および／または復号装置としてのみ機能するクライアント装置を含んでもよい。
【０１１８】
第２の観点による暗号システム１では述語暗号を用いた暗号化と復号が行われる。第２の観点による本発明では、使用する述語暗号アルゴリズムに限定は無く、例えば上記非特許文献３に開示される述語暗号アルゴリズムを用いることが許される。第２の観点による第１実施形態では、ＫＥＭ(Key Encapsulation Mechanisms)タイプの述語暗号アルゴリズムを用いた例を示す。
【０１１９】
第２の観点による暗号システム１における暗号通信方法を、図２９、３０、３１、３２、３４、３６、３８、４０、４１を参照しながら叙述する。各装置の機能構成については、図３３、３５、３７、３９を参照されたい。
【０１２０】
《準備プロセス》
第１の観点による発明の第１実施形態における《準備プロセス》の説明の全てをここに援用し、重複説明を省略する。なお、この《準備プロセス》の説明に対応する図として図２９を、スキーマペアについては図１１−１３を、ポリシーリストについては図１４を参照されたい。これで《準備プロセス》は終了する。
【０１２１】
《暗号化プロセス》
暗号化装置１０の送信部１４は、図示しない制御部の制御を受けて、検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ１４）。登録装置５０の検索部は、登録装置５０の記憶部に登録されているエントリの一部または全部を検索して一つのエントリを選び（ステップＳ１５）、登録装置５０の送信部は検索結果のエントリを暗号化装置１０に送信し、暗号化装置１０の受信部はエントリを受信する（ステップＳ１６）。このエントリには、鍵生成装置のアドレス、この鍵生成装置の公開パラメータ、この鍵生成装置が使用可能なポリシーリスト、この鍵生成装置が使用可能なスキーマリストが含まれている。受信したエントリは、暗号化装置１０のメモリ１１に記憶される。
【０１２２】
なお、各鍵生成装置２０の公開パラメータ、スキーマリスト、ポリシーリスト、アドレスを予め暗号化装置１０が所有している場合には、ステップＳ１４−Ｓ１６の処理は省略される。つまり、暗号システム１が登録装置５０を含まない形態も許容されることに注意しなければならない。
【０１２３】
暗号化装置１０の第１述語論理情報取得部１２が、メモリ１１から入力情報とポリシーとスキーマを読み込み、属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を求める（ステップＳ１７ａ）。この処理の詳細について説明を加える（図１２、図１３参照）。
【０１２４】
まず、スキーマリストに複数のスキーマペアが記述されている場合、用途などに応じて一つのスキーマペアが選択される。暗号化装置１０の利用者によってスキーマペアが選択されてその指示情報が入力される場合や、所定の規則に従い、第１述語論理情報取得部１２がスキーマペアを選択してもよい。
【０１２５】
そして、入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシーと共にいずれか一方のスキーマを選択する。暗号化装置１０の利用者によってポリシーといずれか一方のスキーマが選択されてその指示情報が入力される場合や、所定の規則に従い、第１述語論理情報取得部１２がポリシーといずれか一方のスキーマを選択する場合のいずれであってもよい。なお、鍵生成装置２０のポリシーが１種類のタイプのみ用意されている場合には、そのポリシーに従ってスキーマペアのうちの一方のスキーマが選択される。もし、選択されたスキーマが入力情報の種類に対応していない場合には、スキーマリストからスキーマペアを再選択するか、登録装置５０からエントリの提供を再度受ければよい。
【０１２６】
入力情報は、暗号化装置１０の利用者によって入力された情報または、例えばＩＣカード３９のような記憶媒体から暗号化装置１０の取得部（図示せず）が取得した情報でもよい。
【０１２７】
そして、第１述語論理情報取得部１２が、ポリシーに従ってスキーマペアの中から選択されたスキーマを用いて入力情報から第１属性情報または第１述語情報を得る。ポリシーがKey_Policyであり選択されたスキーマが属性用スキーマである場合には第１属性情報が得られる。ポリシーがCipher_Text_Policyであり選択されたスキーマが述語用スキーマである場合には第１述語情報が得られる。第１属性情報と第１述語情報は、第２の観点による第１実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。この際、スキーマを用いて入力情報から必要な属性値の抽出や整列化が行われる。
【０１２８】
次に、暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる直交基底Ｂ（実質的な公開鍵）と平文Ｍを用いて、共通鍵Ｋと暗号情報Ｃ1と暗号文Ｃ2を求める（ステップＳ１７ｂ、Ｓ１７ｃ）。これらの処理の詳細について説明を加える。ただし、第２の観点による第１実施形態が共通鍵Ｋの配送に特化した実施形態である場合には暗号文Ｃ2の生成は不要である。
【０１２９】
まず、第１暗号化部１３ａが、述語暗号アルゴリズムに則り、有限体Ｆqの元である乱数ｒ、ρを生成して、上記式（７）のように共通鍵Ｋを設定し、上記式（８）に従って暗号情報Ｃ1を求める（ステップＳ１７ｂ）。Ｈは例えばハッシュ関数である。この例では第１属性情報ｖを用いているが、第１述語情報を用いる場合は上記式（８）においてｖをｗに置き換えればよい。また、この例では、暗号情報Ｃ1は共通鍵Ｋの生成に用いる情報ρに対応する情報であるが、暗号情報Ｃ1を共通鍵Ｋに対応する情報としてもよい。
【０１３０】
次に、第２暗号化部１３ｂが、共通鍵Ｋと平文Ｍを用いて、上記式（９）に従って暗号文Ｃ2を求める（ステップＳ１７ｃ）。共通鍵を用いた暗号化方法EncKは周知の方法でよく、例えば上記非特許文献１に開示される方法である。既述のとおり、第２の観点による第１実施形態が共通鍵Ｋの配送に特化した実施形態である場合には、ステップＳ１７ｃの処理は省略される。つまり、暗号化装置１０は、第２暗号化部１３ｂの機能を持つとしても、ステップＳ１７ｃの処理を行わない。
【０１３１】
次に、暗号化装置１０の送信部１４は、制御部による制御を受けて、暗号情報Ｃ1と、（必要に応じて）暗号文Ｃ2と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。そして暗号化装置１０の送信部１４は、暗号メッセージを第１の復号装置３０−１に送信し、第１の復号装置３０−１の受信部が暗号メッセージを受信する（ステップＳ１８）。なお、暗号化装置１０が複数の第１の復号装置３０−１に対して暗号メッセージを送信することが許容される。
【０１３２】
これで《暗号化プロセス》は終了する。
【０１３３】
《第１の復号プロセス》
第１の復号装置３０−１の送信部３４は、図示しない制御部の制御を受けて、暗号メッセージに含まれる鍵生成装置のアドレスを含む検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ１９）。登録装置５０の検索部は、アドレスで指定された鍵生成装置のエントリを検索してそれを選び（ステップＳ２０）、登録装置５０の送信部は検索結果のエントリを第１の復号装置３０−１に送信し、第１の復号装置３０−１の受信部はエントリを受信する（ステップＳ２１）。このエントリには、鍵生成装置のアドレス、この鍵生成装置の公開パラメータ、この鍵生成装置が使用可能なポリシーリスト、この鍵生成装置が使用可能なスキーマリストが含まれている。受信したエントリは、第１の復号装置３０−１のメモリ３１に記憶される。
【０１３４】
なお、各鍵生成装置２０の公開パラメータ、スキーマリスト、ポリシーリスト、アドレスを予め第１の復号装置３０−１が所有している場合には、ステップＳ１９−Ｓ２１の処理は省略される。この場合、第１の復号装置３０−１は、暗号メッセージに含まれるアドレスに対応する鍵生成装置のエントリを自身のメモリ３１から検索してこれを取得する。
【０１３５】
第１の復号装置３０−１の検証部（図示せず）は、制御部の制御を受けて、暗号メッセージに含まれるスキーマペアとポリシーが、登録装置５０から取得したエントリに含まれるポリシーリストとスキーマリストに含まれるか否かを検証する（ステップＳ２２ａ）。この検証に失敗した場合、復号処理の失敗として処理を終了する（ステップＳ２２ｇ）。
【０１３６】
この検証に成功した場合、第１の復号装置３０−１の取得部３２が、例えばＩＣカード３９のような記憶媒体から、当該第１の復号装置３０−１の利用者に対応する属性指定情報または述語指定情報を読み取る（ステップＳ２２ｆ）。属性指定情報または述語指定情報のいずれを読み取るかは、暗号メッセージに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、取得部３２は記憶媒体から属性指定情報を読み取る。もしポリシーがKey_Policyである場合、取得部３２は記憶媒体から述語指定情報を読み取る。以下、読み取られた指定情報を利用者情報と呼ぶ。また、第１の復号装置３０−１の取得部３２が、後述する鍵生成装置２０における処理《利用者情報取得プロセス》と同様に、管理装置４０から、当該第１の復号装置３０−１の利用者に対応する属性指定情報または述語指定情報を読み取ることも許容される。なお、第２の観点による第１実施形態では、ステップＳ２２ｆの処理は任意に行われる。例えば、予め第１の復号装置３０−１が利用者に対応する属性指定情報と述語指定情報を所有している場合、ポリシーに従って属性指定情報または述語指定情報のいずれかが利用者情報となる。
【０１３７】
次に、第１の復号装置３０−１の検証部が、暗号メッセージに含まれる暗号情報を復号するために使用する復号鍵を持っているか否かを検証する（ステップＳ２２ｂ）。
【０１３８】
第１の復号装置３０−１はメモリ３１に復号鍵テーブルを記憶している。復号鍵テーブルでは、例えば図１５に示すように、鍵生成装置の識別子に対して、公開パラメータと、スキーマペアと、復号鍵の対象と、述語指定情報と、復号鍵とが対応付けられている。そこで、検証部は、暗号メッセージに含まれるアドレスによって判別する鍵生成装置の識別子、公開パラメータと、スキーマペアと、復号鍵の対象（但し、これは、暗号メッセージに含まれるポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する）に対応する復号鍵の有無を検証する。もし復号鍵が存在すれば、ステップＳ２９の処理を行う。もし復号鍵が存在しなければ、ステップＳ２３の処理を行う。
【０１３９】
ここで《復号プロセス》の説明を中断し、《鍵生成プロセス》の説明をする。
【０１４０】
上述のように復号鍵が存在しない場合、第１の復号装置３０−１の送信部３４は、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、（もし在れば）利用者情報、認証情報を纏めた鍵要求メッセージを生成する。認証情報は、例えば利用者のＩＤとパスワードを含む。そして、第１の復号装置３０−１の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する（ステップＳ２３）。受信した鍵要求メッセージは、鍵生成装置２０のメモリ２１に記憶される。
【０１４１】
鍵生成装置２０の検証部（図示せず）は、制御部の制御を受けて、鍵要求メッセージに含まれるスキーマペアとポリシーが、当該鍵生成装置２０が所有するエントリ（例えばステップＳ１で生成されたエントリである）に含まれるポリシーリストとスキーマリストに含まれるか否か、および、鍵要求メッセージに含まれる公開パラメータが当該鍵生成装置２０の公開パラメータであるか否かを検証する（ステップＳ２４ａ）。この検証に失敗した場合、鍵生成処理の失敗として処理を終了する（ステップＳ２４ｇ）。なお、ステップＳ２４ａの処理では、鍵要求メッセージに認証情報が含まれるならば、鍵要求メッセージに含まれる認証情報の検証も行われる。鍵生成装置２０は、メモリ２１に認証テーブルを記憶している。認証テーブルでは、例えば図１６に示すように、利用者のＩＤに対してパスワードが対応付けられている。そこで、検証部は、鍵要求メッセージに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。この検証に失敗した場合も、ステップＳ２４ｇの処理が行われる。
【０１４２】
この検証に成功した場合、鍵生成装置２０の検証部が、鍵要求メッセージに利用者情報が含まれているか否かを検証する（ステップＳ２４ｂ）。鍵要求メッセージに利用者情報が含まれていればステップＳ２４ｃの処理を行い、鍵要求メッセージに利用者情報が含まれていなければステップＳ２５の処理を行う。なお、必ず鍵要求メッセージに利用者情報が含まれる方法を採用する場合には、ステップＳ２４ｂの処理および後述する《利用者情報取得プロセス》は不要である。
【０１４３】
ここで《鍵生成プロセス》の説明を中断し、《利用者情報取得プロセス》の説明をする。
【０１４４】
鍵生成装置２０の送信部は、鍵要求メッセージに含まれるポリシーと（もし在れば）認証情報を含むリクエストを管理装置４０に送信し、管理装置４０がリクエストを受信する（ステップＳ２５）。受信したリクエストは、管理装置４０のメモリに記憶される。
【０１４５】
管理装置４０はメモリに認証テーブルを記憶している。この認証テーブルでは、上述の認証テーブルと同様に、利用者のＩＤに対してパスワードが対応付けられている（図１６参照）。そこで、管理装置４０の検証部（図示せず）は、リクエストに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。
【０１４６】
この検証に成功すると、管理装置４０の検索部（図示せず）がリクエストに含まれるポリシーに従って、メモリに記憶されている利用者情報テーブルから属性指定情報または述語指定情報を検索する（ステップＳ２６）。利用者情報テーブルは、例えば利用者のＩＤとこれに対応付けられた属性名および属性指定情報で構成される第１テーブルと、利用者のＩＤとこれに対応付けられた述語指定情報で構成される第２テーブルとを含んでいる（図１７参照）。属性指定情報または述語指定情報のいずれを読み取るかは、リクエストに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、検索部は第１テーブルからリクエストに含まれる利用者のＩＤに対応する属性指定情報を取得する。もしポリシーがKey_Policyである場合、検索部は第２テーブルからリクエストに含まれる利用者のＩＤに対応する述語指定情報を取得する。読み取られた指定情報を利用者情報と呼ぶ。
【０１４７】
管理装置４０の送信部は、制御部による制御を受けて、検索結果の利用者情報を鍵生成装置２０に送信し、鍵生成装置２０の受信部が利用者情報を受信する（ステップＳ２７）。受信した利用者情報は、鍵生成装置２０のメモリ２１に記憶される。
【０１４８】
以上で《利用者情報取得プロセス》を終了し、再び《鍵生成プロセス》の説明に戻る。
【０１４９】
利用者情報を既に所有している場合、あるいは、利用者情報取得プロセスによって利用者情報を受信した場合（ステップＳ２７）、鍵生成装置２０の第２述語論理情報取得部２３は、メモリ２１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２４ｃ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第２の観点による第１実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。この際、スキーマを用いて入力情報から必要な属性値の抽出や整列化が行われる。
【０１５０】
次に、鍵生成装置２０の鍵生成部２５が、述語暗号アルゴリズムに則り、公開パラメータのｑに基づき有限体Ｆqの元である乱数αを生成して、メモリ２１からの第２属性情報ｖ(p)＝(ｖ(p)1，…，ｖ(p)n)または第２述語情報ｗ(p)＝(ｗ(p)1，…，ｗ(p)n)と、当該鍵生成装置の秘密鍵Ｂ＊を用いて、上記式（１０）に従って復号鍵Ｒを求める（ステップＳ２４ｄ）。暗号化処理で用いられた入力情報が属性指定情報である場合に対応して、この例では第２述語情報ｗ(p)を用いているが、入力情報が述語指定情報である場合には、第２属性情報ｖ(p)が対応するので、上記式（１０）においてｗ(p)をｖ(p)に置き換えればよい。
【０１５１】
次に、鍵生成装置２０の送信部２４は、制御部による制御を受けて、復号鍵Ｒを第１の復号装置３０−１に送信し、第１の復号装置３０−１の受信部が復号鍵Ｒを受信する（ステップＳ２８）。受信した復号鍵Ｒは、第１の復号装置３０−１のメモリ３１に記憶される。
【０１５２】
以上で《鍵生成プロセス》を終了し、再び《復号プロセス》の説明に戻る。
【０１５３】
復号鍵を既に所有している場合、あるいは、鍵生成プロセスによって復号鍵を受信した場合（ステップＳ２８）、第１の復号装置３０−１の復号部３３が、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1と（必要に応じて）暗号文Ｃ2を読み込んで、共通鍵Ｋと（必要に応じて）平文Ｍを求める（ステップＳ２９）。
【０１５４】
このステップＳ２９の処理の詳細について説明を加える。第１復号部３３ａは、メモリ３１から公開パラメータと暗号情報Ｃ1と復号鍵Ｒを読み込み、述語暗号アルゴリズムに則り、ｅ(Ｃ1,Ｒ)を求める。この演算結果は上記式（１１）に示すように、入力情報が属性指定情報である場合、双線形性に基づき暗号情報Ｃ1と復号鍵Ｒから取り出された第１属性情報ｖと第２述語情報ｗ(p)の標準内積の結果に依存する。入力情報が述語指定情報である場合、上記式（１１）においてｖをｖ(p)に、ｗ(p)をｗに置き換えればよく、演算結果は双線形性に基づき暗号情報Ｃ1と復号鍵Ｒから取り出された第１述語情報ｗと第２属性情報ｖ(p)の標準内積の結果に依存する。但し、ｅ(ｂi,ｂi*)は上記式（１２）のように定義される。δijは、クロネッカーのデルタ記号である。
【０１５５】
従って、第１属性情報ｖと第２述語情報ｗ(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ(p)の標準内積が０）の場合、上記式（１１）の演算結果ｇＴρが得られる。この演算結果ｇＴρが得られた場合、第１の復号装置３０−１の第１復号部３３ａは、上記式（７）に従って“正しい”共通鍵Ｋを得る（ステップＳ２２ｃ）。もし第１属性情報ｖと第２述語情報ｗ(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ(p)の標準内積が０）ではない場合、第１復号部３３ａは、上記式（７）に従って“正しくない”値を得る。この例では、ハッシュ関数Ｈはシステムに共通とするか公開パラメータに含まれるとする。この例では、暗号情報Ｃ1が共通鍵Ｋの生成に用いる情報ρに対応する情報であるが、暗号情報Ｃ1を共通鍵Ｋに対応する情報とする場合には、上記式（１１）の演算結果が共通鍵Ｋ（あるいは正しくない値）となる。つまり、第１の復号装置３０−１の正当な利用者は、第１属性情報ｖとの標準内積が０となる第２述語情報ｗ(p)を与える述語指示情報、あるいは、第１述語情報ｗとの標準内積が０となる第２属性情報ｖ(p)を与える属性指示情報を持つ。
【０１５６】
次に、第２復号部３３ｂが、共通鍵Ｋと暗号文Ｃ2を用いて、上記式（１３）に従って平文Ｍを求める（ステップＳ２２ｄ）。共通鍵を用いた復号方法DecKは暗号化方法EncKに対応する。既述のとおり、第２の観点による第１実施形態が共通鍵Ｋの配送に特化した実施形態である場合には、ステップＳ２２ｄの処理は省略される。つまり、第１の復号装置３０−１は、第２復号部３３ｂの機能を持つとしても、ステップＳ２２ｄの処理を行わない。
【０１５７】
もし、上記式（１１）に従った演算結果が正しくない値である場合には、上記式（１３）によっては正しい平文Ｍを得ることができない。
【０１５８】
なお、第１の復号装置３０−１は、復号鍵Ｒを復号鍵テーブルに記憶してもよい。また、共通鍵Ｋを復号鍵テーブルに付加して記憶してもよい。
【０１５９】
これで《第１の復号プロセス》は終了する。
【０１６０】
《転送プロセス》
第１の復号装置３０−１の転送部３７は、暗号化装置１０から受信した暗号メッセージを第２の復号装置３０−２に転送し、第２の復号装置３０−２の受信部が暗号メッセージを受信する（ステップ３０）。転送先の復号装置は、第２の復号装置（暗号メッセージの授受について暗号化装置と当事者の関係にない復号装置）に限らず、他の第１の復号装置（暗号メッセージの授受について暗号化装置と当事者の関係にある復号装置）であってもよい。また、ステップＳ３０の処理は、説明の都合、ステップＳ２９の処理に続く処理として説明するが、第１の復号装置３０−１が暗号化装置１０から暗号メッセージを受信した以降であれば何時でもよい。
【０１６１】
これで《転送プロセス》は終了する。
【０１６２】
第２の復号装置３０−２による第２の復号プロセス（鍵生成プロセスと必要に応じて利用者情報取得プロセスを含む）について説明する。この一連の処理は、第１の復号プロセスと実質的に同じである。また、第２の復号装置３０−２の機能構成は、転送部３７を必ずしも持たなくてよいという点を除いて、第１の復号装置３０−１と同じであるから、共通する機能構成要素については同一の参照番号を割り当てている。
【０１６３】
《第２の復号プロセス》
第２の復号装置３０−２の送信部３４は、図示しない制御部の制御を受けて、暗号メッセージに含まれる鍵生成装置のアドレスを含む検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ３１）。登録装置５０の検索部は、アドレスで指定された鍵生成装置のエントリを検索してそれを選び（ステップＳ３２）、登録装置５０の送信部は検索結果のエントリを第２の復号装置３０−２に送信し、第２の復号装置３０−２の受信部はエントリを受信する（ステップＳ３３）。このエントリには、鍵生成装置のアドレス、この鍵生成装置の公開パラメータ、この鍵生成装置が使用可能なポリシーリスト、この鍵生成装置が使用可能なスキーマリストが含まれている。受信したエントリは、第２の復号装置３０−２のメモリ３１に記憶される。
【０１６４】
なお、各鍵生成装置２０の公開パラメータ、スキーマリスト、ポリシーリスト、アドレスを予め第２の復号装置３０−２が所有している場合には、ステップＳ３１−Ｓ３３の処理は省略される。この場合、第２の復号装置３０−２は、暗号メッセージに含まれるアドレスに対応する鍵生成装置のエントリを自身のメモリ３１から検索してこれを取得する。
【０１６５】
第２の復号装置３０−２の検証部（図示せず）は、制御部の制御を受けて、暗号メッセージに含まれるスキーマペアとポリシーが、登録装置５０から取得したエントリに含まれるポリシーリストとスキーマリストに含まれるか否かを検証する（ステップＳ３４ａ）。この検証に失敗した場合、復号処理の失敗として処理を終了する（ステップＳ３４ｇ）。
【０１６６】
この検証に成功した場合、第２の復号装置３０−２の取得部３２が、例えばＩＣカード３９のような記憶媒体から、当該第２の復号装置３０−２の利用者に対応する属性指定情報または述語指定情報を読み取る（ステップＳ３４ｆ）。属性指定情報または述語指定情報のいずれを読み取るかは、暗号メッセージに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、取得部３２は記憶媒体から属性指定情報を読み取る。もしポリシーがKey_Policyである場合、取得部３２は記憶媒体から述語指定情報を読み取る。以下、読み取られた指定情報を利用者情報と呼ぶ。また、第２の復号装置３０−２の取得部３２が、後述する鍵生成装置２０における処理《利用者情報取得プロセス》と同様に、管理装置４０から、当該第２の復号装置３０−２の利用者に対応する属性指定情報または述語指定情報を読み取ることも許容される。なお、第２の観点による第１実施形態では、ステップＳ３４ｆの処理は任意に行われる。例えば、予め第２の復号装置３０−２が利用者に対応する属性指定情報と述語指定情報を所有している場合、ポリシーに従って属性指定情報または述語指定情報のいずれかが利用者情報となる。
【０１６７】
次に、第２の復号装置３０−２の検証部が、暗号メッセージに含まれる暗号情報を復号するために使用する復号鍵を持っているか否かを検証する（ステップＳ３４ｂ）。
【０１６８】
第２の復号装置３０−２はメモリ３１に復号鍵テーブルを記憶している。復号鍵テーブルでは、例えば図１５に示すように、鍵生成装置の識別子に対して、公開パラメータと、スキーマペアと、復号鍵の対象と、述語指定情報と、復号鍵とが対応付けられている。そこで、検証部は、暗号メッセージに含まれるアドレスによって判別する鍵生成装置の識別子、公開パラメータと、スキーマペアと、復号鍵の対象（但し、これは、暗号メッセージに含まれるポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する）に対応する復号鍵の有無を検証する。もし復号鍵が存在すれば、ステップＳ４１の処理を行う。もし復号鍵が存在しなければ、ステップＳ３５の処理を行う。
【０１６９】
ここで《復号プロセス》の説明を中断し、《鍵生成プロセス》の説明をする。
【０１７０】
上述のように復号鍵が存在しない場合、第２の復号装置３０−２の送信部３４は、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、（もし在れば）利用者情報、認証情報を纏めた鍵要求メッセージを生成する。認証情報は、例えば利用者のＩＤとパスワードを含む。そして、第２の復号装置３０−２の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する（ステップＳ３５）。受信した鍵要求メッセージは、鍵生成装置２０のメモリ２１に記憶される。この鍵生成装置２０は、第１の復号装置３０−１の相手方の鍵生成装置２０と同じである必要はない。
【０１７１】
鍵生成装置２０の検証部（図示せず）は、制御部の制御を受けて、鍵要求メッセージに含まれるスキーマペアとポリシーが、当該鍵生成装置２０が所有するエントリ（例えばステップＳ１で生成されたエントリである）に含まれるポリシーリストとスキーマリストに含まれるか否か、および、鍵要求メッセージに含まれる公開パラメータが当該鍵生成装置２０の公開パラメータであるか否かを検証する（ステップＳ３６ａ）。この検証に失敗した場合、鍵生成処理の失敗として処理を終了する（ステップＳ３６ｇ）。なお、ステップＳ３６ａの処理では、鍵要求メッセージに認証情報が含まれるならば、鍵要求メッセージに含まれる認証情報の検証も行われる。鍵生成装置２０は、メモリ２１に認証テーブルを記憶している。認証テーブルでは、例えば図１６に示すように、利用者のＩＤに対してパスワードが対応付けられている。そこで、検証部は、鍵要求メッセージに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。この検証に失敗した場合も、ステップＳ３６ｇの処理が行われる。
【０１７２】
この検証に成功した場合、鍵生成装置２０の検証部が、鍵要求メッセージに利用者情報が含まれているか否かを検証する（ステップＳ３６ｂ）。鍵要求メッセージに利用者情報が含まれていればステップＳ３６ｃの処理を行い、鍵要求メッセージに利用者情報が含まれていなければステップＳ３７の処理を行う。なお、必ず鍵要求メッセージに利用者情報が含まれる方法を採用する場合には、ステップＳ３６ｂの処理および後述する《利用者情報取得プロセス》は不要である。
【０１７３】
ここで《鍵生成プロセス》の説明を中断し、《利用者情報取得プロセス》の説明をする。
【０１７４】
鍵生成装置２０の送信部は、鍵要求メッセージに含まれるポリシーと（もし在れば）認証情報を含むリクエストを管理装置４０に送信し、管理装置４０がリクエストを受信する（ステップＳ３７）。受信したリクエストは、管理装置４０のメモリに記憶される。
【０１７５】
管理装置４０はメモリに認証テーブルを記憶している。この認証テーブルでは、上述の認証テーブルと同様に、利用者のＩＤに対してパスワードが対応付けられている（図１６参照）。そこで、管理装置４０の検証部（図示せず）は、リクエストに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。
【０１７６】
この検証に成功すると、管理装置４０の検索部（図示せず）がリクエストに含まれるポリシーに従って、メモリに記憶されている利用者情報テーブルから属性指定情報または述語指定情報を検索する（ステップＳ３８）。利用者情報テーブルは、例えば利用者のＩＤとこれに対応付けられた属性名および属性指定情報で構成される第１テーブルと、利用者のＩＤとこれに対応付けられた述語指定情報で構成される第２テーブルとを含んでいる（図１７参照）。属性指定情報または述語指定情報のいずれを読み取るかは、リクエストに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、検索部は第１テーブルからリクエストに含まれる利用者のＩＤに対応する属性指定情報を取得する。もしポリシーがKey_Policyである場合、検索部は第２テーブルからリクエストに含まれる利用者のＩＤに対応する述語指定情報を取得する。読み取られた指定情報を利用者情報と呼ぶ。
【０１７７】
管理装置４０の送信部は、制御部による制御を受けて、検索結果の利用者情報を鍵生成装置２０に送信し、鍵生成装置２０の受信部が利用者情報を受信する（ステップＳ３９）。受信した利用者情報は、鍵生成装置２０のメモリ２１に記憶される。
【０１７８】
以上で《利用者情報取得プロセス》を終了し、再び《鍵生成プロセス》の説明に戻る。
【０１７９】
利用者情報を既に所有している場合、あるいは、利用者情報取得プロセスによって利用者情報を受信した場合（ステップＳ３９）、鍵生成装置２０の第２述語論理情報取得部２３は、メモリ２１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ３６ｃ）。一般的に、第１の復号装置３０−１の利用者と第２の復号装置３０−２の利用者は異なるので、この処理で得られる第２属性情報または第２述語情報は、ステップＳ２４ｃの処理で得られる第２属性情報または第２述語情報と同じになる保証はない。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第２の観点による第１実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。この際、スキーマを用いて入力情報から必要な属性値の抽出や整列化が行われる。
【０１８０】
次に、鍵生成装置２０の鍵生成部２５が、述語暗号アルゴリズムに則り、公開パラメータのｑに基づき有限体Ｆqの元である乱数εを生成して、メモリ２１からの第２属性情報ｖ'(p)＝(ｖ'(p)1，…，ｖ'(p)n)または第２述語情報ｗ'(p)＝(ｗ'(p)1，…，ｗ'(p)n)と、当該鍵生成装置の秘密鍵Ｂ＊を用いて、式（１４）に従って復号鍵Ｒ'を求める（ステップＳ３６ｄ）。暗号化処理で用いられた入力情報が属性指定情報である場合に対応して、この例では第２述語情報ｗ'(p)を用いているが、入力情報が述語指定情報である場合には、第２属性情報ｖ'(p)が対応するので、式（１４）においてｗ'(p)をｖ'(p)に置き換えればよい。
【数１０】
2010123122.tif 000012
【０１８１】
次に、鍵生成装置２０の送信部２４は、制御部による制御を受けて、復号鍵Ｒ'を第２の復号装置３０−２に送信し、第２の復号装置３０−２の受信部が復号鍵Ｒを受信する（ステップＳ４０）。受信した復号鍵Ｒは、第２の復号装置３０−２のメモリ３１に記憶される。
【０１８２】
以上で《鍵生成プロセス》を終了し、再び《復号プロセス》の説明に戻る。
【０１８３】
復号鍵を既に所有している場合、あるいは、鍵生成プロセスによって復号鍵を受信した場合（ステップＳ４０）、第２の復号装置３０−２の復号部３３が、メモリ３１から公開パラメータと復号鍵Ｒ'と暗号情報Ｃ1と（必要に応じて）暗号文Ｃ2を読み込んで、共通鍵Ｋと（必要に応じて）平文Ｍを求める（ステップＳ４１）。
【０１８４】
このステップＳ４１の処理の詳細について説明を加える。第１復号部３３ａは、メモリ３１から公開パラメータと暗号情報Ｃ1と復号鍵Ｒ'を読み込み、述語暗号アルゴリズムに則り、ｅ(Ｃ1,Ｒ')を求める。この演算結果は式（１５）に示すように、入力情報が属性指定情報である場合、双線形性に基づき暗号情報Ｃ1と復号鍵Ｒ'から取り出された第１属性情報ｖと第２述語情報ｗ'(p)の標準内積の結果に依存する。入力情報が述語指定情報である場合、式（１５）においてｖをｖ'(p)に、ｗ'(p)をｗに置き換えればよく、演算結果は双線形性に基づき暗号情報Ｃ1と復号鍵Ｒ'から取り出された第１述語情報ｗと第２属性情報ｖ'(p)の標準内積の結果に依存する。但し、ｅ(ｂi,ｂi*)は上記式（１２）のように定義される。
【数１１】
2010123122.tif 000013
【０１８５】
従って、第１属性情報ｖと第２述語情報ｗ'(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ'(p)の標準内積が０）の場合、式（１５）の演算結果ｇＴρが得られる。この演算結果ｇＴρが得られた場合、第２の復号装置３０−２の第１復号部３３ａは、上記式（７）に従って“正しい”共通鍵Ｋを得る（ステップＳ３４ｃ）。もし第１属性情報ｖと第２述語情報ｗ'(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ'(p)の標準内積が０）ではない場合、第１復号部３３ａは、上記式（７）に従って“正しくない”値を得る。この例では、ハッシュ関数Ｈはシステムに共通とするか公開パラメータに含まれるとする。この例では、暗号情報Ｃ1が共通鍵Ｋの生成に用いる情報ρに対応する情報であるが、暗号情報Ｃ1を共通鍵Ｋに対応する情報とする場合には、式（１５）の演算結果が共通鍵Ｋ（あるいは正しくない値）となる。つまり、第２の復号装置３０−２の正当な利用者は、第１属性情報ｖとの標準内積が０となる第２述語情報ｗ'(p)を与える述語指示情報、あるいは、第１述語情報ｗとの標準内積が０となる第２属性情報ｖ'(p)を与える属性指示情報を持つ。
【０１８６】
次に、第２復号部３３ｂが、共通鍵Ｋと暗号文Ｃ2を用いて、上記式（１３）に従って平文Ｍを求める（ステップＳ３４ｄ）。共通鍵を用いた復号方法DecKは暗号化方法EncKに対応する。既述のとおり、第２の観点による第１実施形態が共通鍵Ｋの配送に特化した実施形態である場合には、ステップＳ３４ｄの処理は省略される。つまり、第２の復号装置３０−２は、第２復号部３３ｂの機能を持つとしても、ステップＳ３４ｄの処理を行わない。
【０１８７】
もし、式（１５）に従った演算結果が正しくない値である場合には、上記式（１３）によっては正しい平文Ｍを得ることができない。
【０１８８】
なお、第２の復号装置３０−２は、復号鍵Ｒを復号鍵テーブルに記憶してもよい。また、共通鍵Ｋを復号鍵テーブルに付加して記憶してもよい。
【０１８９】
これで《第２の復号プロセス》は終了する。
【０１９０】
第２の復号装置３０−２が転送部３７を持つ場合には、第２の復号装置３０−２は、第１の復号装置３０−１から受信した暗号メッセージを別の第２の復号装置（暗号メッセージの授受について暗号化装置と当事者の関係にない復号装置）に転送してもよいし、第１の復号装置（暗号メッセージの授受について暗号化装置と当事者の関係にある復号装置）に転送してもよい。この転送処理は、第２の復号装置３０−２が第１の復号装置３０−１から暗号メッセージを受信した以降であれば何時でもよい。
【０１９１】
〔第２の観点による第２実施形態〕
第２の観点による第２実施形態では、第２の観点による第１実施形態と異なり、第１の復号装置３０−１と第２の復号装置３０−２が第２属性情報または第２述語情報を生成する。この差異に伴い、第２の観点による第２実施形態は、いくつかの事項で第２の観点による第１実施形態と異なる。そこで、第２の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図４２−図４８を参照しながら第１実施形態と異なる部分を説明する。
【０１９２】
ステップＳ１からステップＳ２２ｂまでの処理は、第２の観点による第１実施形態と同じである。
【０１９３】
ステップＳ２２ｂの処理で復号鍵を所有していない場合、第１の復号装置３０−１の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２３ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第２の観点による第２実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【０１９４】
ステップＳ２３ｇの処理の後、ステップＳ２３の処理が行われる。ただし、この処理では、第１の復号装置３０−１の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、第１の復号装置３０−１の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【０１９５】
そして、ステップＳ２４ａの処理で検証に成功した場合、ステップＳ２４ｄの処理が行われる。鍵生成装置２０は第１の復号装置３０−１から第２属性情報または第２述語情報を受信しているため、第２の観点による第１実施形態と異なり、この情報を生成するための機能と処理が不要である。
【０１９６】
そして、ステップＳ２４ｄの処理の後のステップＳ２８からステップＳ３４ａまでの各処理は、第２の観点による第１実施形態と同じである。
【０１９７】
ステップＳ３４ｂの処理で復号鍵を所有していない場合、第２の復号装置３０−２の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ３５ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第２の観点による第２実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【０１９８】
ステップＳ３５ｇの処理の後、ステップＳ３５の処理が行われる。ただし、この処理では、第２の復号装置３０−２の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、第２の復号装置３０−２の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【０１９９】
そして、ステップＳ３６ａの処理で検証に成功した場合、ステップＳ３６ｄの処理が行われる。鍵生成装置２０は第２の復号装置３０−２から第２属性情報または第２述語情報を受信しているため、第２の観点による第１実施形態と異なり、この情報を生成するための機能と処理が不要である。
【０２００】
そして、ステップＳ３６ｄの処理の後のステップＳ４０とステップＳ４１の各処理は、第２の観点による第１実施形態と同じである。
【０２０１】
〔第２の観点による第３実施形態〕
第２の観点による第３実施形態では、第２の観点による第１実施形態と異なり、暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める。つまり、第２の観点による第３実施形態では、例えば上記非特許文献３に示す述語暗号アルゴリズムが用いられる。この差異に伴い、第２の観点による第３実施形態は、いくつかの事項で第２の観点による第１実施形態と異なる。そこで、第２の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図４９−図５４を参照しながら第２の観点による第１実施形態と異なる部分を説明する。
【０２０２】
ステップＳ１からステップＳ１７ａまでの処理は、第２の観点による第１実施形態と同じである。但し、公開パラメータなどの情報は第２の観点による第３実施形態の述語暗号アルゴリズムに必要な情報とされる。具体的な情報については、例えば上記非特許文献３などを参考されたい。
【０２０３】
ステップＳ１７aの処理に続くステップＳ１７ｂ１の処理では、暗号化装置１０の暗号化部１３が、述語暗号アルゴリズムに則り、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める（ステップＳ１７ｂ１）。
【０２０４】
次に、ステップＳ１７ｂ１の処理の後、ステップＳ１７ｄの処理が行われる。但し、この処理では、暗号化装置１０の送信部１４が、制御部による制御を受けて、暗号情報Ｃ1と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。
【０２０５】
ステップＳ１７ｄの処理に続くステップＳ１８からステップＳ２８までの処理は、第２の観点による第１実施形態と同じである。
【０２０６】
ステップＳ２８の処理に続くステップＳ２２ｃ１の処理では、第１の復号装置３０−１の復号部３３が、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1を読み込んで、平文Ｍを求める（ステップＳ２２ｃ１）。
【０２０７】
ステップＳ２２ｃ１の処理に続くステップＳ３０からステップＳ４０までの処理は、第２の観点による第１実施形態と同じである。
【０２０８】
ステップＳ４０の処理に続くステップＳ３４ｃ１の処理では、第２の復号装置３０−２の復号部３３が、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1を読み込んで、平文Ｍを求める（ステップＳ３４ｃ１）。
【０２０９】
〔第２の観点による第４実施形態〕
第２の観点による第４実施形態は、第２の観点による第２実施形態と第２の観点による第３実施形態の組み合わせ形態に相当する。つまり、第２の観点による第４実施形態は、第２の観点による第１実施形態と異なり、（１）第１の復号装置３０−１と第２の復号装置３０−２が第２属性情報または第２述語情報を生成する、（２）暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める。この差異に伴い、第２の観点による第４実施形態は、いくつかの事項で第２の観点による第１実施形態と異なる。そこで、第２の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図５５から図５８も参照して第１実施形態と異なる部分を説明する。
【０２１０】
ステップＳ１からステップＳ１７ａまでの処理は、第２の観点による第１実施形態と同じである。但し、公開パラメータなどの情報は第２の観点による第４実施形態の述語暗号アルゴリズムに必要な情報とされる。具体的な情報については、例えば上記非特許文献３などを参考されたい。
【０２１１】
ステップＳ１７aの処理に続くステップＳ１７ｂ１の処理では、暗号化装置１０の暗号化部１３が、述語暗号アルゴリズムに則り、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵と平文Ｍを用いて、暗号情報Ｃ1を求める（ステップＳ１７ｂ１）。
【０２１２】
次に、ステップＳ１７ｂ１の処理の後、ステップＳ１７ｄの処理が行われる。但し、この処理では、暗号化装置１０の送信部１４が、制御部による制御を受けて、暗号情報Ｃ1と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。
【０２１３】
ステップＳ１７ｄの処理に続くステップＳ１８からステップＳ２２ｂの処理までは、第２の観点による第１実施形態と同じである。
【０２１４】
ステップＳ２２ｂの処理で復号鍵を所有していない場合、第１の復号装置３０−１の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２３ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第２の観点による第４実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【０２１５】
ステップＳ２３ｇの処理の後、ステップＳ２３の処理が行われる。ただし、この処理では、第１の復号装置３０−１の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、第１の復号装置３０−１の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【０２１６】
そして、ステップＳ２４ａの処理で検証に成功した場合、ステップＳ２４ｄの処理が行われる。鍵生成装置２０は、第１の復号装置３０−１から第２属性情報または第２述語情報を受信しているため、この情報を生成するための機能と処理が不要である。
【０２１７】
そして、ステップＳ２４ｄの処理の後のステップＳ２８の処理は、第２の観点による第１実施形態と同じである。
【０２１８】
ステップＳ２８の処理に続くステップＳ２２ｃ１の処理では、第１の復号装置３０−１の復号部３３が、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1を読み込んで、平文Ｍを求める（ステップＳ２２ｃ１）。
【０２１９】
そして、ステップＳ２２ｃ１の処理の後のステップＳ３０からステップＳ３４ａまでの各処理は、第２の観点による第１実施形態と同じである。
【０２２０】
ステップＳ３４ｂの処理で復号鍵を所有していない場合、第２の復号装置３０−２の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ３５ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第２の観点による第４実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【０２２１】
ステップＳ３５ｇの処理の後、ステップＳ３５の処理が行われる。ただし、この処理では、第２の復号装置３０−２の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、第２の復号装置３０−２の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【０２２２】
そして、ステップＳ３６ａの処理で検証に成功した場合、ステップＳ３６ｄの処理が行われる。鍵生成装置２０は第２の復号装置３０−２から第２属性情報または第２述語情報を受信しているため、第１実施形態と異なり、この情報を生成するための機能と処理が不要である。
【０２２３】
そして、ステップＳ３６ｄの処理の後のステップＳ４０の処理は、第２の観点による第１実施形態と同じである。
【０２２４】
ステップＳ４０の処理に続くステップＳ３４ｃ１の処理では、第２の復号装置３０−２の復号部３３が、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1を読み込んで、平文Ｍを求める（ステップＳ３４ｃ１）。
【０２２５】
第２の観点による上述の各実施形態は、例えば電子メールシステムやインスタントメッセージングシステムとして実施される。図５９に、送受信されるデータの構成を例示する。メッセージ全体の基本的なフォーマットは例えばＳ／ＭＩＭＥ（Secure Multipurpose Internet Mail Extensions）に従うが、暗号メッセージ開始位置マーカから暗号メッセージ終了位置マーカまでのデータはＸＭＬ（eXtensible Markup Language）などで適切なデータ構成が与えられる。
【０２２６】
暗号メッセージ開始位置マーカから暗号メッセージ終了位置マーカまでが述語暗号に関する一連のデータを示す。
【０２２７】
アルゴリズム識別子ブロックには、共通鍵の暗号化に使用した述語暗号アルゴリズムとメッセージペイロードの暗号化に使用した共通鍵暗号アルゴリズムを特定するための情報が指定される。このように、アルゴリズムを表す識別子やアルゴリズムのバージョンなどを指定できる（PE/VersionX+Camellia［Camelliaは登録商標］など）。
【０２２８】
デジタル署名ブロックにはデジタル署名が記述される。署名アルゴリズムは既存の方式を使用できる。この項目は運用形態に応じて省略可能である。
【０２２９】
公開パラメータ情報ブロックには、使用した公開情報パラメータを特定する情報が指定される。公開情報パラメータを特定する識別子、もしくは公開情報パラメータのデータそのものを指定することもできる。
【０２３０】
ポリシーフィールドには、使用したポリシーを特定する識別子が指定される。
【０２３１】
スキーマフィールドには、使用したスキーマを特定する識別子が指定されるか、もしくはスキーマのデータが記述される。
【０２３２】
暗号情報フィールドにはメッセージペイロード（平文）の暗号化に使用した共通鍵を述語暗号で暗号化したデータ（暗号情報）が指定される。
【０２３３】
暗号文フィールドにはメッセージペイロード（平文）を暗号化して作成したデータ（暗号文）が記述される。
【０２３４】
属性フィールド／述語フィールドにはポリシーフィールドに対応して暗号化に使用した属性／述語を表す文字列表現を指定することができる。これらの項目は運用形態に応じては省略可能である。
【０２３５】
添付フィールドには例えばＲＳＡ暗号化した添付ファイルなどを添付することができる。この項目は運用形態に応じて省略可能である。
【０２３６】
また、例えばインストタントメッセージングに伴うセキュアな通信の場合には、共通鍵を暗号化した暗号情報を再送する必要はない。インスタントメッセージングでは通常、最初のインスタントメッセージで適切な共通鍵を取得できたならば、後続のインスタントメッセージの復号に用いるために共通鍵を受信者が保存しておいてもよい。このように後続のインスタントメッセージを送信者から受信者に送信する際には、暗号文は送るが、公開パラメータ情報、ポリシー、スキーマ、暗号情報を送らないようにしてもよい。同様に、使用される暗号アルゴリズムを変更しない運用の場合には、後続のインスタントメッセージ内の暗号アルゴリズム識別子を省略してもよい。
【０２３７】
述語暗号は、暗号化に際して、受信者に依存する情報に拘束されない方式であるから、送信者（装置）は、未知の受信者（装置）に対しても暗号メッセージを送信することができる。換言すると、送信者は、複数の受信者（装置）が存在する場合であっても暗号化処理を１回しか行わない（公開鍵暗号方式では、Ｎ回の暗号化処理が必要である）。このため、送信者（装置）は、低い処理コストで暗号メッセージを同報送信することができる。
【０２３８】
また、受信者（装置）が第三者（装置）に暗号メッセージを転送する際、暗号化装置から受信した暗号メッセージをそのまま第三者（装置）に転送することができる。公開鍵暗号方式では、受信者（装置）が一旦、暗号メッセージを復号し、第三者（装置）の公開鍵を用いて暗号化し、この暗号化された暗号メッセージを送信する処理が必要であり、処理コストの負担が大きい。しかし、上述の各実施形態では、暗号化装置から受信した暗号メッセージをそのまま第三者（装置）に転送するから、低い処理コストで暗号メッセージを転送することができる。
【０２３９】
次に、上述の第１の観点による暗号通信技術に留意しつつ、第３の観点から、柔軟に運用可能であって述語暗号で暗号化されたコンテンツ（暗号化コンテンツ）を配信することが可能な、述語暗号に依拠する暗号通信技術に関する実施形態を説明する。この技術によると、述語暗号で暗号化されたコンテンツ（暗号化コンテンツ）がコンテンツサーバ装置に蓄えられ、復号装置からの要求に応じて暗号化コンテンツを送信することによって、暗号化コンテンツを配信することができる。
【０２４０】
第３の観点による暗号通信技術の説明は上述の第１の観点による暗号通信技術の説明と実質的に重複する部分を多く含むが、第１の観点による暗号通信技術の説明を参照しなくてもよいように、できるだけ重複説明と重複図面を省略せずに第３の観点による暗号通信技術を説明する。このため、数式の番号、機能部を表す参照番号、ステップを表す参照番号なども両者で重複するが、文脈から混乱の虞は無いであろう。
【０２４１】
〔第３の観点による第１実施形態〕
図６０から図７１を参照して第３の観点による本発明の第１実施形態を説明する。
【０２４２】
第３の観点による暗号システム１は、図６０に示すように、複数のクライアント装置１０、３０と、一つまたは複数の鍵生成装置２０と、一つまたは複数のコンテンツサーバ装置６０と、一つまたは複数のユーザ情報管理装置４０（以下、管理装置と言う）、変換規則情報ペア管理装置５０（以下、登録装置と言う）、一つまたは複数の保全装置８０、一つまたは複数の認証装置９０を含んでいる。これらの各装置は、例えばインターネットである通信網５を介して相互に通信可能とされている。
【０２４３】
クライアント装置は、処理目的に応じて、コンテンツを暗号化して暗号化コンテンツを生成する暗号化装置として、あるいは暗号化コンテンツを復号する復号装置として機能する。そこで、クライアント装置を機能の観点から、暗号化装置１０または復号装置３０と呼称する。なお、第３の観点による暗号システム１は、暗号化装置としてのみ機能するクライアント装置および／または復号装置としてのみ機能するクライアント装置を含んでもよい。
【０２４４】
第３の観点による暗号システム１では述語暗号を用いた暗号化と復号が行われる。第３の観点による本発明では、使用する述語暗号アルゴリズムに限定は無く、例えば上記非特許文献３に開示される述語暗号アルゴリズムを用いることが許される。第３の観点による第１実施形態では、ＫＥＭ(Key Encapsulation Mechanisms)タイプの述語暗号アルゴリズムを用いた例を示す。
【０２４５】
暗号システム１における暗号通信方法を、図６１、６２、６３、６４、６６、６９、７１を参照しながら叙述する。各装置の機能構成については、図６５、６７、６８、７０を参照されたい。
【０２４６】
《準備プロセス》
第１の観点による発明の第１実施形態における《準備プロセス》の説明の全てをここに援用し、重複説明を省略する。なお、この《準備プロセス》の説明に対応する図として図６１を、スキーマペアについては図１１−１３を、ポリシーリストについては図１４を参照されたい。これで《準備プロセス》は終了する。
【０２４７】
《暗号化プロセス》
暗号化装置１０の送信部１４は、図示しない制御部の制御を受けて、検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ１４）。登録装置５０の検索部は、登録装置５０の記憶部に登録されているエントリの一部または全部を検索して一つのエントリを選び（ステップＳ１５）、登録装置５０の送信部は検索結果のエントリを暗号化装置１０に送信し、暗号化装置１０の受信部はエントリを受信する（ステップＳ１６）。このエントリには、鍵生成装置のアドレス、この鍵生成装置の公開パラメータ、この鍵生成装置が使用可能なポリシーリスト、この鍵生成装置が使用可能なスキーマリストが含まれている。受信したエントリは、暗号化装置１０のメモリ１１に記憶される。
【０２４８】
なお、各鍵生成装置２０の公開パラメータ、スキーマリスト、ポリシーリスト、アドレスを予め暗号化装置１０が所有している場合には、ステップＳ１４−Ｓ１６の処理は省略される。つまり、暗号システム１が登録装置５０を含まない形態も許容されることに注意しなければならない。
【０２４９】
暗号化装置１０の第１述語論理情報取得部１２が、メモリ１１から入力情報とポリシーとスキーマを読み込み、属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を求める（ステップＳ１７ａ）。この処理の詳細について説明を加える（図１２、図１３参照）。
【０２５０】
まず、スキーマリストに複数のスキーマペアが記述されている場合、用途などに応じて一つのスキーマペアが選択される。暗号化装置１０の利用者によってスキーマペアが選択されてその指示情報が入力される場合や、所定の規則に従い、第１述語論理情報取得部１２がスキーマペアを選択してもよい。
【０２５１】
そして、入力情報が属性指定情報または述語指定情報のいずれであるかに応じてポリシーと共にいずれか一方のスキーマを選択する。暗号化装置１０の利用者によってポリシーといずれか一方のスキーマが選択されてその指示情報が入力される場合や、所定の規則に従い、第１述語論理情報取得部１２がポリシーといずれか一方のスキーマを選択する場合のいずれであってもよい。なお、鍵生成装置２０のポリシーが１種類のタイプのみ用意されている場合には、そのポリシーに従ってスキーマペアのうちの一方のスキーマが選択される。もし、選択されたスキーマが入力情報の種類に対応していない場合には、スキーマリストからスキーマペアを再選択するか、登録装置５０からエントリの提供を再度受ければよい。
【０２５２】
入力情報は、暗号化装置１０の利用者によって入力された情報または、例えばＩＣカード３９のような記憶媒体から暗号化装置１０の取得部（図示せず）が取得した情報でもよい。
【０２５３】
そして、第１述語論理情報取得部１２が、ポリシーに従ってスキーマペアの中から選択されたスキーマを用いて入力情報から第１属性情報または第１述語情報を得る。ポリシーがKey_Policyであり選択されたスキーマが属性用スキーマである場合には第１属性情報が得られる。ポリシーがCipher_Text_Policyであり選択されたスキーマが述語用スキーマである場合には第１述語情報が得られる。第１属性情報と第１述語情報は、第３の観点による第１実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。この際、スキーマを用いて入力情報から必要な属性値の抽出や整列化が行われる。
【０２５４】
次に、暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる直交基底Ｂ（実質的な公開鍵）とコンテンツＭを用いて、共通鍵Ｋと暗号情報Ｃ1と暗号化コンテンツＣ2を求める（ステップＳ１７ｂ、Ｓ１７ｃ）。これらの処理の詳細について説明を加える。
【０２５５】
まず、第１暗号化部１３ａが、述語暗号アルゴリズムに則り、有限体Ｆqの元である乱数ｒ、ρを生成して、上記式（７）のように共通鍵Ｋを設定し、上記式（８）に従って暗号情報Ｃ1を求める（ステップＳ１７ｂ）。Ｈは例えばハッシュ関数である。この例では第１属性情報ｖを用いているが、第１述語情報を用いる場合は上記式（８）においてｖをｗに置き換えればよい。また、この例では、暗号情報Ｃ1は共通鍵Ｋの生成に用いる情報ρに対応する情報であるが、暗号情報Ｃ1を共通鍵Ｋに対応する情報としてもよい。
【０２５６】
次に、第２暗号化部１３ｂが、共通鍵ＫとコンテンツＭを用いて、上記式（９）に従って暗号化コンテンツＣ2を求める（ステップＳ１７ｃ）。共通鍵を用いた暗号化方法EncKは周知の方法でよく、例えば上記非特許文献１に開示される方法である。
【０２５７】
次に、暗号化装置１０の送信部１４は、制御部による制御を受けて、暗号情報Ｃ1と、暗号化コンテンツＣ2と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。そして暗号化装置１０の送信部１４は、暗号メッセージをコンテンツサーバ装置６０に送信し、コンテンツサーバ装置６０の受信部が暗号メッセージを受信する（ステップＳ１８）。暗号化コンテンツのアップロードは例えばＦＴＰ(File Transfer Protocol)やＷｅｂＤＡＶ(Distributed Authoring and Versioning protocol for the WWW)などの周知の方式を利用して行われる。
【０２５８】
これで《暗号化プロセス》は終了する。
【０２５９】
《コンテンツ配信プロセス》
コンテンツサーバ装置６０は、図示しない制御部の制御の下、そのメモリ６１に各暗号化装置１０から送られた暗号メッセージを記憶する。これによって、暗号メッセージに含まれる暗号情報と暗号化コンテンツがコンテンツサーバ装置６０に登録される。コンテンツサーバ装置６０にどのような暗号化コンテンツが登録されているかは、例えばＷｅｂページ上で公開される。
【０２６０】
上記Ｗｅｂページは、例えばインターネットプロトコルに従い、復号装置３０のブラウザ部３８によって、復号装置３０のディスプレイ（図示せず）に表示される。復号装置３０の利用者は、所望の暗号化コンテンツを選択する入力操作を行う。復号装置３０のブラウザ部３８は、利用者が入力した情報に基づき、選択された暗号化コンテンツをコンテンツサーバ装置６０から取得するための取得要求を復号装置３０の復号部３３（以下、中継部という）に伝える（ステップＳ１９）。そして、復号装置３０の中継部３３はこの取得要求をコンテンツサーバ装置６０に送信し、コンテンツサーバ装置６０の受信部はこの取得要求を受信する（ステップＳ２０）。このように、ブラウザ部３８とコンテンツサーバ装置６０との例えばＨＴＴＰ(Hiper Text Transfer Protocol)に従ったやりとりは中継部３３を経由して行われる（例えばＷＷＷブラウザのプロキシ設定を使用することが許される）。コンテンツサーバ装置６０の検索部６２は、取得要求で指定された暗号化コンテンツを含む暗号メッセージを検索してそれを選び（ステップＳ２１）、検索部６２からの指示に基づき、復号装置３０の送信部６４は暗号メッセージを復号装置３０に送信し、復号装置３０の受信部は暗号メッセージを受信する（ステップＳ２２）。
【０２６１】
これで《コンテンツ配信プロセス》は終了する。
【０２６２】
《復号プロセス》
復号装置３０の送信部３４は、図示しない制御部の制御を受けて、暗号メッセージに含まれる鍵生成装置のアドレスを含む検索クエリを登録装置５０に送信し、登録装置５０の受信部が検索クエリを受信する（ステップＳ２３）。登録装置５０の検索部は、アドレスで指定された鍵生成装置のエントリを検索してそれを選び（ステップＳ２４）、登録装置５０の送信部は検索結果のエントリを復号装置３０に送信し、復号装置３０の受信部はエントリを受信する（ステップＳ２５）。このエントリには、鍵生成装置のアドレス、この鍵生成装置の公開パラメータ、この鍵生成装置が使用可能なポリシーリスト、この鍵生成装置が使用可能なスキーマリストが含まれている。受信したエントリは、復号装置３０のメモリ３１に記憶される。
【０２６３】
なお、各鍵生成装置２０の公開パラメータ、スキーマリスト、ポリシーリスト、アドレスを予め復号装置３０が所有している場合には、ステップＳ１９−Ｓ２１の処理は省略される。この場合、復号装置３０は、暗号メッセージに含まれるアドレスに対応する鍵生成装置のエントリを自身のメモリ３１から検索してこれを取得する。
【０２６４】
復号装置３０の検証部（図示せず）は、制御部の制御を受けて、暗号メッセージに含まれるスキーマペアとポリシーが、登録装置５０から取得したエントリに含まれるポリシーリストとスキーマリストに含まれるか否かを検証する（ステップＳ２６ａ）。この検証に失敗した場合、復号処理の失敗として処理を終了する（ステップＳ２６ｇ）。
【０２６５】
この検証に成功した場合、復号装置３０の取得部３２が、例えばＩＣカード３９のような記憶媒体から、当該復号装置３０の利用者に対応する属性指定情報または述語指定情報を読み取る（ステップＳ２６ｆ）。属性指定情報または述語指定情報のいずれを読み取るかは、暗号メッセージに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、取得部３２は記憶媒体から属性指定情報を読み取る。もしポリシーがKey_Policyである場合、取得部３２は記憶媒体から述語指定情報を読み取る。以下、読み取られた指定情報を利用者情報と呼ぶ。また、復号装置３０の取得部３２が、後述する鍵生成装置２０における処理《利用者情報取得プロセス》と同様に、管理装置４０から、当該復号装置３０の利用者に対応する属性指定情報または述語指定情報を読み取ることも許容される。なお、第３の観点による第１実施形態では、ステップＳ２２ｆの処理は任意に行われる。例えば、予め復号装置３０が利用者に対応する属性指定情報と述語指定情報を所有している場合、ポリシーに従って属性指定情報または述語指定情報のいずれかが利用者情報となる。
【０２６６】
次に、復号装置３０の検証部が、暗号メッセージに含まれる暗号情報を復号するために使用する復号鍵を持っているか否かを検証する（ステップＳ２６ｂ）。
【０２６７】
復号装置３０はメモリ３１に復号鍵テーブルを記憶している。復号鍵テーブルでは、例えば図１５に示すように、鍵生成装置の識別子に対して、公開パラメータと、スキーマペアと、復号鍵の対象と、述語指定情報と、復号鍵とが対応付けられている。そこで、検証部は、暗号メッセージに含まれるアドレスによって判別する鍵生成装置の識別子、公開パラメータと、スキーマペアと、復号鍵の対象（但し、これは、暗号メッセージに含まれるポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する）に対応する復号鍵の有無を検証する。もし復号鍵が存在すれば、ステップＳ３３の処理を行う。もし復号鍵が存在しなければ、ステップＳ２７の処理を行う。
【０２６８】
ここで《復号プロセス》の説明を中断し、《鍵生成プロセス》の説明をする。
【０２６９】
上述のように復号鍵が存在しない場合、復号装置３０の送信部３４は、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、（もし在れば）利用者情報、認証情報を纏めた鍵要求メッセージを生成する。認証情報は、例えば利用者のＩＤとパスワードを含む。そして、復号装置３０の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する（ステップＳ２７）。受信した鍵要求メッセージは、鍵生成装置２０のメモリ２１に記憶される。
【０２７０】
鍵生成装置２０の検証部（図示せず）は、制御部の制御を受けて、鍵要求メッセージに含まれるスキーマペアとポリシーが、当該鍵生成装置２０が所有するエントリ（例えばステップＳ１で生成されたエントリである）に含まれるポリシーリストとスキーマリストに含まれるか否か、および、鍵要求メッセージに含まれる公開パラメータが当該鍵生成装置２０の公開パラメータであるか否かを検証する（ステップＳ２８ａ）。この検証に失敗した場合、鍵生成処理の失敗として処理を終了する（ステップＳ２８ｇ）。なお、ステップＳ２８ａの処理では、鍵要求メッセージに認証情報が含まれるならば、鍵要求メッセージに含まれる認証情報の検証も行われる。鍵生成装置２０は、メモリ２１に認証テーブルを記憶している。認証テーブルでは、例えば図１６に示すように、利用者のＩＤに対してパスワードが対応付けられている。そこで、検証部は、鍵要求メッセージに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。この検証に失敗した場合も、ステップＳ２８ｇの処理が行われる。
【０２７１】
この検証に成功した場合、鍵生成装置２０の検証部が、鍵要求メッセージに利用者情報が含まれているか否かを検証する（ステップＳ２８ｂ）。鍵要求メッセージに利用者情報が含まれていればステップＳ２８ｃの処理を行い、鍵要求メッセージに利用者情報が含まれていなければステップＳ２９の処理を行う。なお、必ず鍵要求メッセージに利用者情報が含まれる方法を採用する場合には、ステップＳ２８ｂの処理および後述する《利用者情報取得プロセス》は不要である。
【０２７２】
ここで《鍵生成プロセス》の説明を中断し、《利用者情報取得プロセス》の説明をする。
【０２７３】
鍵生成装置２０の送信部は、鍵要求メッセージに含まれるポリシーと（もし在れば）認証情報を含むリクエストを管理装置４０に送信し、管理装置４０がリクエストを受信する（ステップＳ２９）。受信したリクエストは、管理装置４０のメモリに記憶される。
【０２７４】
管理装置４０はメモリに認証テーブルを記憶している。この認証テーブルでは、上述の認証テーブルと同様に、利用者のＩＤに対してパスワードが対応付けられている（図１６参照）。そこで、管理装置４０の検証部（図示せず）は、リクエストに含まれる利用者のＩＤとパスワードと認証テーブルに含まれる利用者のＩＤとパスワードとの整合性を検証する。
【０２７５】
この検証に成功すると、管理装置４０の検索部（図示せず）がリクエストに含まれるポリシーに従って、メモリに記憶されている利用者情報テーブルから属性指定情報または述語指定情報を検索する（ステップＳ３０）。利用者情報テーブルは、例えば利用者のＩＤとこれに対応付けられた属性名および属性指定情報で構成される第１テーブルと、利用者のＩＤとこれに対応付けられた述語指定情報で構成される第２テーブルとを含んでいる（図１７参照）。属性指定情報または述語指定情報のいずれを読み取るかは、リクエストに含まれるポリシーによって決まる。つまり、読み取られる情報は、このポリシーで特定される一方のスキーマとペアになっている他方のスキーマを特定するポリシーの内容に対応する指定情報である。もしポリシーがCipher_Text_Policyである場合、検索部は第１テーブルからリクエストに含まれる利用者のＩＤに対応する属性指定情報を取得する。もしポリシーがKey_Policyである場合、検索部は第２テーブルからリクエストに含まれる利用者のＩＤに対応する述語指定情報を取得する。読み取られた指定情報を利用者情報と呼ぶ。
【０２７６】
管理装置４０の送信部は、制御部による制御を受けて、検索結果の利用者情報を鍵生成装置２０に送信し、鍵生成装置２０の受信部が利用者情報を受信する（ステップＳ３１）。受信した利用者情報は、鍵生成装置２０のメモリ２１に記憶される。
【０２７７】
以上で《利用者情報取得プロセス》を終了し、再び《鍵生成プロセス》の説明に戻る。
【０２７８】
利用者情報を既に所有している場合、あるいは、利用者情報取得プロセスによって利用者情報を受信した場合（ステップＳ３１）、鍵生成装置２０の第２述語論理情報取得部２３は、メモリ２１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２８ｃ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第３の観点による第１実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。この際、スキーマを用いて入力情報から必要な属性値の抽出や整列化が行われる。
【０２７９】
次に、鍵生成装置２０の鍵生成部２５が、述語暗号アルゴリズムに則り、公開パラメータのｑに基づき有限体Ｆqの元である乱数αを生成して、メモリ２１からの第２属性情報ｖ(p)＝(ｖ(p)1，…，ｖ(p)n)または第２述語情報ｗ(p)＝(ｗ(p)1，…，ｗ(p)n)と、当該鍵生成装置の秘密鍵Ｂ＊を用いて、上記式（１０）に従って復号鍵Ｒを求める（ステップＳ２８ｄ）。暗号化処理で用いられた入力情報が属性指定情報である場合に対応して、この例では第２述語情報ｗ(p)を用いているが、入力情報が述語指定情報である場合には、第２属性情報ｖ(p)が対応するので、上記式（１０）においてｗ(p)をｖ(p)に置き換えればよい。
【０２８０】
次に、鍵生成装置２０の送信部２４は、制御部による制御を受けて、復号鍵Ｒを復号装置３０に送信し、復号装置３０の受信部が復号鍵Ｒを受信する（ステップＳ３２）。受信した復号鍵Ｒは、復号装置３０のメモリ３１に記憶される。
【０２８１】
以上で《鍵生成プロセス》を終了し、再び《復号プロセス》の説明に戻る。
【０２８２】
復号鍵を既に所有している場合、あるいは、鍵生成プロセスによって復号鍵を受信した場合（ステップＳ３２）、復号装置３０の中継部３３が、メモリ３１から公開パラメータと復号鍵Ｒと暗号情報Ｃ1と（必要に応じて）暗号化コンテンツＣ2を読み込んで、共通鍵ＫとコンテンツＭを求める（ステップＳ３３）。
【０２８３】
このステップＳ３３の処理の詳細について説明を加える。中継部３３は、復号処理を担う第１復号部３３ａと第２復号部３３ｂを含む。
【０２８４】
第１復号部３３ａは、メモリ３１から公開パラメータと暗号情報Ｃ1と復号鍵Ｒを読み込み、述語暗号アルゴリズムに則り、ｅ(Ｃ1,Ｒ)を求める。この演算結果は上記式（１１）に示すように、入力情報が属性指定情報である場合、双線形性に基づき暗号情報Ｃ1と復号鍵Ｒから取り出された第１属性情報ｖと第２述語情報ｗ(p)の標準内積の結果に依存する。入力情報が述語指定情報である場合、上記式（１１）においてｖをｖ(p)に、ｗ(p)をｗに置き換えればよく、演算結果は双線形性に基づき暗号情報Ｃ1と復号鍵Ｒから取り出された第１述語情報ｗと第２属性情報ｖ(p)の標準内積の結果に依存する。但し、ｅ(ｂi,ｂi*)は上記式（１２）のように定義される。δijは、クロネッカーのデルタ記号である。
【０２８５】
従って、第１属性情報ｖと第２述語情報ｗ(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ(p)の標準内積が０）の場合、上記式（１１）の演算結果ｇＴρが得られる。この演算結果ｇＴρが得られた場合、復号装置３０の第１復号部３３ａは、上記式（７）に従って“正しい”共通鍵Ｋを得る（ステップＳ２６ｃ）。もし第１属性情報ｖと第２述語情報ｗ(p)の標準内積が０（あるいは第１述語情報ｗと第２属性情報ｖ(p)の標準内積が０）ではない場合、第１復号部３３ａは、上記式（７）に従って“正しくない”値を得る。この例では、ハッシュ関数Ｈはシステムに共通とするか公開パラメータに含まれるとする。この例では、暗号情報Ｃ1が共通鍵Ｋの生成に用いる情報ρに対応する情報であるが、暗号情報Ｃ1を共通鍵Ｋに対応する情報とする場合には、上記式（１１）の演算結果が共通鍵Ｋ（あるいは正しくない値）となる。つまり、復号装置３０の正当な利用者は、第１属性情報ｖとの標準内積が０となる第２述語情報ｗ(p)を与える述語指示情報、あるいは、第１述語情報ｗとの標準内積が０となる第２属性情報ｖ(p)を与える属性指示情報を持つ。
【０２８６】
次に、第２復号部３３ｂが、共通鍵Ｋと暗号化コンテンツＣ2を用いて、上記式（１３）に従ってコンテンツＭを求める（ステップＳ２６ｄ）。共通鍵を用いた復号方法DecKは暗号化方法EncKに対応する。
【０２８７】
もし、上記式（１１）に従った演算結果が正しくない値である場合には、上記式（１３）によっては正しいコンテンツＭを得ることができない。
【０２８８】
なお、復号装置３０は、復号鍵Ｒを復号鍵テーブルに記憶してもよい。また、共通鍵Ｋを復号鍵テーブルに付加して記憶してもよい。
【０２８９】
暗号化コンテンツを復号して得られたコンテンツＭは、中継部３３からブラウザ部３８に伝えられ（ステップＳ３４）、ブラウザ部３８によって、復号装置３０のディスプレイに表示される（ステップＳ３５）。
【０２９０】
これで《復号プロセス》は終了する。
【０２９１】
〔第３の観点による第２実施形態〕
第３の観点による第２実施形態では、第３の観点による第１実施形態と異なり、復号装置３０が第２属性情報または第２述語情報を生成する。この差異に伴い、第３の観点による第２実施形態は、いくつかの事項で第３の観点による第１実施形態と異なる。そこで、第３の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図７２−図７５を参照しながら第３の観点による第１実施形態と異なる部分を説明する。
【０２９２】
ステップＳ１からステップＳ２６ｂまでの処理は、第３の観点による第１実施形態と同じである。
ステップＳ２６ｂの処理で復号鍵を所有していない場合、復号装置３０の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２７ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第３の観点による第２実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【０２９３】
ステップＳ２７ｇの処理の後、ステップＳ２７の処理が行われる。ただし、この処理では、復号装置３０の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、復号装置３０の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【０２９４】
そして、ステップＳ２８ａの処理で検証に成功した場合、ステップＳ２８ｄの処理が行われる。鍵生成装置２０は復号装置３０から第２属性情報または第２述語情報を受信しているため、第３の観点による第１実施形態と異なり、この情報を生成するための機能と処理が不要である。
【０２９５】
そして、ステップＳ２８ｄの処理の後のステップＳ３２からステップＳ３５までの各処理は、第３の観点による第１実施形態と同じである。
【０２９６】
〔第３の観点による第３実施形態〕
第３の観点による第３実施形態では、第３の観点による第１実施形態と異なり、暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵とコンテンツＭを用いて、暗号化コンテンツＣ1を求める。つまり、第３の観点による第３実施形態では、例えば上記非特許文献３に示す述語暗号アルゴリズムが用いられる。この差異に伴い、第３の観点による第３実施形態は、いくつかの事項で第３の観点による第１実施形態と異なる。そこで、第３の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図７６−図７９を参照しながら第３の観点による第１実施形態と異なる部分を説明する。
【０２９７】
ステップＳ１からステップＳ１７ａまでの処理は、第３の観点による第１実施形態と同じである。但し、公開パラメータなどの情報は第３の観点による第３実施形態の述語暗号アルゴリズムに必要な情報とされる。具体的な情報については、例えば上記非特許文献３などを参考されたい。
【０２９８】
ステップＳ１７aの処理に続くステップＳ１７ｂ１の処理では、暗号化装置１０の暗号化部１３が、述語暗号アルゴリズムに則り、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵とコンテンツＭを用いて、暗号化コンテンツＣ1を求める（ステップＳ１７ｂ１）。
【０２９９】
次に、ステップＳ１７ｂ１の処理の後、ステップＳ１７ｄの処理が行われる。但し、この処理では、暗号化装置１０の送信部１４が、制御部による制御を受けて、暗号化コンテンツＣ1と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。
【０３００】
ステップＳ１７ｄの処理に続くステップＳ１８からステップＳ３２までの処理は、第３の観点による第１実施形態と同じである。
【０３０１】
ステップＳ３２の処理に続くステップＳ２６ｃ１の処理では、復号装置３０の中継部３３に含まれる復号部３３ｃが、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号化コンテンツＣ1を読み込んで、コンテンツＭを求める（ステップＳ２６ｃ１）。
【０３０２】
ステップＳ２６ｃ１の処理に続くステップＳ３４とステップＳ３５の各処理は、第３の観点による第１実施形態と同じである。
【０３０３】
〔第３の観点による第４実施形態〕
第３の観点による第４実施形態は、第３の観点による第２実施形態と第３の観点による第３実施形態の組み合わせ形態に相当する。つまり、第３の観点による第４実施形態は、第３の観点による第１実施形態と異なり、（１）復号装置３０が第２属性情報または第２述語情報を生成する、（２）暗号化装置１０の暗号化部１３が、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵とコンテンツＭを用いて、暗号化コンテンツＣ1を求める。この差異に伴い、第３の観点による第４実施形態は、いくつかの事項で第３の観点による第１実施形態と異なる。そこで、第３の観点による第１実施形態と重複する部分については重複説明を省略し（同一の構成要素に同じ参照番号を割り当てる）、図８０と図８１も参照して第３の観点による第１実施形態と異なる部分を説明する。
【０３０４】
ステップＳ１からステップＳ１７ａまでの処理は、第３の観点による第１実施形態と同じである。但し、公開パラメータなどの情報は第３の観点による第４実施形態の述語暗号アルゴリズムに必要な情報とされる。具体的な情報については、例えば上記非特許文献３などを参考されたい。
【０３０５】
ステップＳ１７aの処理に続くステップＳ１７ｂ１の処理では、暗号化装置１０の暗号化部１３が、述語暗号アルゴリズムに則り、第１属性情報ｖ＝(ｖ1，…，ｖn)または第１述語情報ｗ＝(ｗ1，…，ｗn)と、メモリ１１からの公開パラメータに含まれる公開鍵とコンテンツＭを用いて、暗号化コンテンツＣ1を求める（ステップＳ１７ｂ１）。
【０３０６】
次に、ステップＳ１７ｂ１の処理の後、ステップＳ１７ｄの処理が行われる。但し、この処理では、暗号化装置１０の送信部１４が、制御部による制御を受けて、暗号化コンテンツＣ1と、メモリ１１からのスキーマペア、ポリシー、公開パラメータ、鍵生成装置のアドレスを纏めた暗号メッセージを生成する（ステップＳ１７ｄ）。
【０３０７】
ステップＳ１７ｄの処理に続くステップＳ１８からステップＳ２６ｂの処理までは、第３の観点による第１実施形態と同じである。
【０３０８】
ステップＳ２６ｂの処理で復号鍵を所有していない場合、復号装置３０の第２述語論理情報取得部３５が、メモリ３１からポリシーと、スキーマペアと、公開パラメータと、利用者情報を読み込み、利用者情報から、属性情報（第２属性情報と言う）または述語情報（第２述語情報と言う）を得る（ステップＳ２７ｇ）。この処理において利用者情報に適用されるスキーマは、ポリシーで特定される一方のスキーマとペアになっている他方のスキーマである。ポリシーがCipher_Text_Policyである場合、Cipher_Text_Policyで特定される一方のスキーマ（述語用スキーマ）とペアになっている他方のスキーマ（属性用スキーマ）を用いて、利用者情報（属性指定情報）から第２属性情報を得る。ポリシーがKey_Policyである場合、Key_Policyで特定される一方のスキーマ（属性用スキーマ）とペアになっている他方のスキーマ（述語用スキーマ）を用いて、利用者情報（述語指定情報）から第２述語情報を得る。このように、この処理で用いられるスキーマは、ステップＳ１７ａで用いられたスキーマとペアになっているスキーマであることに注意しなければならない。第２属性情報と第２述語情報は、第３の観点による第４実施形態では、有限体Ｆqの元を成分とするベクトル情報とされる（図１１−１３参照）。
【０３０９】
ステップＳ２７ｇの処理の後、ステップＳ２７の処理が行われる。ただし、この処理では、復号装置３０の送信部３４が、制御部による制御を受けて、メモリ３１からの公開パラメータ、ポリシー、スキーマペア、認証情報、第２属性情報または第２述語情報を纏めた鍵要求メッセージを生成する。そして、復号装置３０の送信部３４は、メモリ３１からのアドレスを持つ鍵生成装置に鍵要求メッセージを送信し、この鍵生成装置２０の受信部が、鍵要求メッセージを受信する。
【０３１０】
そして、ステップＳ２８ａの処理で検証に成功した場合、ステップＳ２８ｄの処理が行われる。鍵生成装置２０は、復号装置３０から第２属性情報または第２述語情報を受信しているため、この情報を生成するための機能と処理が不要である。
【０３１１】
そして、ステップＳ２８ｄの処理の後のステップＳ３２の処理は、第３の観点による第１実施形態と同じである。
【０３１２】
ステップＳ３２の処理に続くステップＳ２６ｃ１の処理では、復号装置３０の復号部３３が、述語暗号アルゴリズムに則り、メモリ３１から公開パラメータと復号鍵Ｒと暗号化コンテンツＣ1を読み込んで、コンテンツＭを求める（ステップＳ２６ｃ１）。
【０３１３】
ステップＳ２６ｃ１の処理に続くステップＳ３４とステップＳ３５の各処理は、第３の観点による第１実施形態と同じである。
【０３１４】
第３の観点による上述の各実施形態から明らかなように、中継部が暗号化コンテンツの復号を行う。このため、復号処理を例えばＷＷＷサーバやＷＷＷブラウザの通常のプロトコルから切り離して実施でき、既存のＷＷＷシステムを流用することが容易になる。また、利用者が暗号化コンテンツの復号処理を行うための操作をせずとも、中継部が復号処理を行うので、利用者の利便性が高い。
【０３１５】
第３の観点による上述の各実施形態では、コンテンツサーバ装置６０と復号装置３０との間の通信路にキャッシュサーバ装置等が設置される運用も許容される（この場合、暗号化コンテンツがキャッシュされる）。
【０３１６】
また、クライアント端末装置を通信網５に常時接続させない運用での利便性を考慮して、中継部が復号前の暗号化コンテンツをキャッシュしてもよい。
【０３１７】
また、ＷＷＷブラウザへの復号済みコンテンツのキャッシュを回避するため、キャッシュを無効とさせるＨＴＴＰキャッシュコントロールヘッダをＷＷＷブラウザへのレスポンスに付与させてもよい。
【０３１８】
複数の利用者が同じクライアント端末装置を使用するようなケースを考慮して、中継部が認証機能を持つシステム構成を採用してもよい。この場合には、ＷＷＷブラウザに対してＨＴＴＰのBasic認証やDigest認証を利用し、また、認証のための認証情報（ユーザＩＤ／パスワード）のテーブル等および認証情報の追加・変更・削除に関する管理機能を中継部に追加してもよい。
【０３１９】
第３の観点による上述の各実施形態は、コンテンツ配信システムとして好適に実施される。述語暗号は、暗号化に際して受信者に依存する情報に拘束されない方式であるから、不特定の者が閲覧する可能性のあるコンテンツのアクセス制御として好適である。
【０３２０】
図８２に、送受信されるデータの構成を例示する。メッセージ全体の基本的なフォーマットは例えばＳ／ＭＩＭＥ（Secure Multipurpose Internet Mail Extensions）に従うが、暗号メッセージ開始位置マーカから暗号メッセージ終了位置マーカまでのデータはＸＭＬ（eXtensible Markup Language）などで適切なデータ構成が与えられる。
【０３２１】
暗号化コンテンツに関するデータを暗号ブロックとする。以下、暗号ブロックの構成要素を示す。
【０３２２】
アルゴリズム識別子ブロックには、共通鍵の暗号化に使用した述語暗号アルゴリズムとコンテンツの暗号化に使用した共通鍵暗号アルゴリズムを特定するための情報が指定される。このように、アルゴリズムを表す識別子やアルゴリズムのバージョンなどを指定できる（PE/VersionX+Camellia［Camelliaは登録商標］など）。
【０３２３】
デジタル署名ブロックにはデジタル署名が記述される。署名アルゴリズムは既存の方式を使用できる。この項目は運用形態に応じて省略可能である。
【０３２４】
公開パラメータ情報ブロックには、使用した公開情報パラメータを特定する情報が指定される。公開情報パラメータを特定する識別子、もしくは公開情報パラメータのデータそのものを指定することもできる。
【０３２５】
ポリシーフィールドには、使用したポリシーを特定する識別子が指定される。
【０３２６】
スキーマフィールドには、使用したスキーマを特定する識別子が指定されるか、もしくはスキーマのデータが記述される。
【０３２７】
暗号情報フィールドにはコンテンツの暗号化に使用した共通鍵を述語暗号で暗号化したデータ（暗号情報）が指定される。
【０３２８】
コンテンツファイル名、コンテンツタイプ、コンテンツファイルサイズには、それぞれ、コンテンツのファイル名、コンテンツのデータタイプ（例：text/htmlなど）、コンテンツのファイルサイズが記述される。
【０３２９】
属性フィールド／述語フィールドにはポリシーフィールドに対応して暗号化に使用した属性／述語を表す文字列表現を指定することができる。これらの項目は運用形態に応じては省略可能である。
【０３３０】
暗号データにはコンテンツを暗号化して生成した暗号化コンテンツが記述される。
【０３３１】
コンテンツの基本的なデータ構成はＨＴＭＬ(Hyper Text Markup Language)で記述され、暗号ブロックはＨＴＭＬ内部のコメント文で指定される。
【０３３２】
暗号ブロックはＸＭＬ(eXtensible Markup Language)などで適切なデータ構成が与えられる。
【０３３３】
ブラウザなどで直接閲覧しようとした場合には、コメント文は表示されず、残りのＨＴＭＬの文章が表示されるので、残りのＨＴＭＬ部分には暗号化コンテンツであることを示すメッセージや、復号に失敗した場合のエラーメッセージなどを記述してもよい。
【０３３４】
上述の説明では、代数構造Ｓを有限体としたが、有限環（整数剰余環）でもよい。述語暗号アルゴリズムが例えば内積を用いる述語暗号アルゴリズムである場合、第１、第２属性情報ならびに第１、第２述語情報は、Ｓの元を成分とするベクトルとされる。
【０３３５】
また、代数構造Ｓの体系に応じて、公開鍵ＢはＳ上の加群Ｖの元の集合であり、秘密鍵Ｂ＊は、加群Ｖの双対加群Ｖ＊の元の集合であり、復号鍵Ｒは、双対加群Ｖ＊の元とされる。なお、代数構造Ｓが有限体である場合、有限体上の加群Ｖは、いわゆる有限体上のベクトル空間のことである。このとき、暗号化部は、公開鍵Ｂの元に対して第１属性情報の成分を係数とするスカラー倍を行う演算または公開鍵Ｂの元に対して第１述語情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで暗号情報を求める。そして、鍵生成部は、秘密鍵Ｂ＊の元に対して第２述語情報の成分を係数とするスカラー倍を行う演算または秘密鍵Ｂ＊の元に対して第２属性情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで復号鍵Ｒを求める。
【０３３６】
暗号システムに含まれるハードウェアエンティティ（クライアント装置、鍵生成装置、登録装置、管理装置、保全装置、認証装置、コンテンツサーバ装置）は、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部、ＣＰＵ（Central Processing Unit）〔キャッシュメモリやレジスタなどを備えていてもよい。〕、メモリであるＲＡＭやＲＯＭ、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、ＣＰＵ、ＲＡＭ、ＲＯＭ、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、ＣＤ−ＲＯＭなどの記憶媒体を読み書きできる装置（ドライブ）などを設けるとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【０３３７】
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている（外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるＲＯＭに記憶させておくなどでもよい。）。また、これらのプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に記憶される。上述の説明では、演算結果やその格納領域のアドレスなどを記憶するＲＡＭやレジスタなどの記憶装置を単に「メモリ」とした。
【０３３８】
ハードウェアエンティティでは、外部記憶装置〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にＣＰＵで解釈実行・処理される。その結果、ＣＰＵが所定の機能（例えば、暗号化部、復号部、鍵生成部、第１述語論理情報取得部、第２述語論理情報取得部、制御部など）を実現する。
【０３３９】
各実施形態で説明したハードウェアエンティティの細部においては、整数論における数値計算処理が必要となる場合があるが、整数論における数値計算処理自体は、周知技術と同様にして達成されるので、その演算処理方法などの詳細な説明は省略した（この点の技術水準を示す整数論における数値計算処理が可能なソフトウェアとしては、例えばＰＡＲＩ／ＧＰ、ＫＡＮＴ／ＫＡＳＨなどが挙げられる。ＰＡＲＩ／ＧＰについては、例えばインターネット〈URL: http://pari.math.u-bordeaux.fr/〉［平成２１年４月１４日検索］を参照のこと。ＫＡＮＴ／ＫＡＳＨについては、例えばインターネット〈URL: http://www.math.tu-berlin.de/algebra/〉［平成２１年４月１４日検索］を参照のこと。）。また、この点に関する文献として、参考文献Ａを挙げることができる。
（参考文献Ａ）  H. Cohen, "A Course in Computational Algebraic Number Theory", GTM 138, Springer-Verlag, 1993.
【０３４０】
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【０３４１】
また、上記実施形態において説明したハードウェアエンティティにおける処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
【０３４２】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記憶媒体に記憶しておくことができる。コンピュータで読み取り可能な記憶媒体としては、例えば、磁気記憶装置、光ディスク、光磁気記憶媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記憶装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記憶媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【０３４３】
また、このプログラムの流通は、例えば、そのプログラムを記憶したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記憶媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【０３４４】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記憶媒体に記憶されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記憶媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【０３４５】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【０３４６】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
《補遺》
本節では、本発明に用いることのできる述語暗号の一例である内積を用いた述語暗号について詳述する。なお、数式の番号は本節で改めて付け直している。また、説明の都合、上述の説明で用いた文言や記号と同じ文言や記号であっても意味が異なる場合があるので注意されたい。
【０３４７】
〔定義〕
まず、本形態で使用する用語や記号を定義する。
行列：「行列」とは演算が定義された集合の元を矩形に並べたものを表す。環の元を要素とするものだけではなく、群の元を要素とするものも「行列」と表現する。
(・)T：(・)Tは・の転置行列を表す。
(・)-1：(・)-1は・の逆行列を表す。
∧：∧は論理積を表す。
∨：∨は論理和を表す。
Ｚ：Ｚは整数集合を表す。
ｋ：ｋはセキュリティパラメータ（k∈Z, k>0）を表す。
{0,1}*：{0,1}*は任意ビット長のバイナリ系列を表す。その一例は、整数0及び1からなる系列である。しかし、{0,1}*は整数0及び1からなる系列に限定されない。{0,1}*は位数2の有限体又はその拡大体と同義である。
{0,1}ζ：{0,1}ζはビット長ζ（ζ∈Z, ζ>0）のバイナリ系列を表す。その一例は、整数0及び1からなる系列である。しかし、{0,1}ζは整数0及び1からなる系列に限定されない。{0,1}ζは位数2の有限体（ζ=1の場合）又はそれをζ次拡大した拡大体（ζ>1の場合）と同義である。
(+):(+)はバイナリ系列間の排他的論理和演算子を表す。例えば、10110011(+)11100001=01010010を満たす。
Fq：Fqは位数qの有限体を表す。位数qは１以上の整数であり、例えば、素数や素数のべき乗値を位数qとする。すなわち、有限体Fqの例は素体やそれを基礎体とした拡大体である。なお、有限体Fqが素体である場合の演算は、例えば、位数qを法とする剰余演算によって容易に構成できる。また、有限体Fqが拡大体である場合の演算は、例えば、既約多項式を法とする剰余演算によって容易に構成できる。有限体Fqの具体的な構成方法は、例えば、参考文献１「ISO/IEC 18033-2: Information technology - Security techniques - Encryption algorithms - Part 2: Asymmetric ciphers」に開示されている。
0F：0Fは有限体Fqの加法単位元を表す。
1F：1Fは有限体Fqの乗法単位元を表す。
δ(i,j)：δ(i,j)はクロネッカーのデルタ関数を表す。i=jの場合にδ(i,j)=1Fを満たし、i≠jの場合にδ(i,j)=0 Fを満たす。
E：Eは有限体Fq上で定義された楕円曲線を表す。Eはアフィン（affine）座標版のWeierstrass方程式
y2+a1・x・y+a3・y=x3+a2・x2+a4・x+a6          …(1)
（ただし、a1,a2,a3,a4,a6∈Fq）を満たすx,y∈Fqからなる点(x,y)の集合に無限遠点と呼ばれる特別な点Ｏを付加したもので定義される。楕円曲線E上の任意の２点に対して楕円加算と呼ばれる二項演算＋及び楕円曲線E上の任意の１点に対して楕円逆元と呼ばれる単項演算−がそれぞれ定義できる。また、楕円曲線E上の有理点からなる有限集合が楕円加算に関して群をなすこと、楕円加算を用いて楕円スカラー倍算と呼ばれる演算が定義できること、及びコンピュータ上での楕円加算などの楕円演算の具体的な演算方法はよく知られている（例えば、参考文献１、参考文献２「RFC 5091: Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems」、参考文献３「イアン・Ｆ・ブラケ、ガディエル・セロッシ、ナイジェル・Ｐ・スマート＝著、「楕円曲線暗号」、出版＝ピアソン・エデュケーション、ISBN4-89471-431-0」等参照）。
また、楕円曲線E上の有理点からなる有限集合は位数p(p≧1)の部分群を持つ。例えば、楕円曲線E上の有理点からなる有限集合の要素数を＃Eとし、pを＃Eを割り切る大きい素数とした場合、楕円曲線Eのp等分点からなる有限集合E[p]は、楕円曲線E上の有理点からなる有限集合の部分群を構成する。なお、楕円曲線Eのp等分点とは、楕円曲線E上の点Aのうち、楕円曲線E上での楕円スカラー倍算値p・Aがp・A＝Ｏを満たす点を意味する。
G1, G2, GT：G1, G2,GTは位数qの巡回群を表す。巡回群G1, G2の具体例は、楕円曲線Eのp等分点からなる有限集合E[p]やその部分群である。G1=G2であってもよいしG1≠G2であってもよい。また、巡回群GTの具体例は、有限体Fqを基礎体とする拡大体を構成する有限集合である。その一例は、有限体Fqの代数閉包における１のｐ乗根からなる有限集合である。
なお、本形態では、巡回群G1, G2上で定義された演算を加法的に表現し、巡回群GT上で定義された演算を乗法的に表現する。すなわち、χ∈Fq及びΩ∈G1に対するχ・Ω∈G1は、Ω∈G1に対して巡回群G1で定義された演算をχ回施すことを意味し、Ω1, Ω2∈G1に対するΩ1+Ω2∈G1は、Ω1∈G1とΩ2∈G1とを被演算子として巡回群G1で定義された演算を行うことを意味する。同様に、χ∈Fq及びΩ∈G2に対するχ・Ω∈G2は、Ω∈G2に対して巡回群G2で定義された演算をχ回施すことを意味し、Ω1, Ω2∈G2に対するΩ1+Ω2∈G2は、Ω1∈G2とΩ2∈G2とを被演算子として巡回群G2で定義された演算を行うことを意味する。一方、χ∈Fq及びΩ∈GTに対するΩχ∈GTは、Ω∈GTに対して巡回群GTで定義された演算をχ回施すことを意味し、Ω1,Ω2∈GTに対するΩ1・Ω2∈GTは、Ω1∈GTとΩ2∈GTとを被演算子として巡回群GTで定義された演算を行うことを意味する。
G1n+1：G1n+1はn+1(n≧1)個の巡回群G1の直積を表す。
G2n+1：G2n+1はn+1個の巡回群G2の直積を表す。
g1, g2,gT：g1, g2, gTは巡回群G1, G2,GTの生成元を表す。
V：Vはn+1個の巡回群G1の直積からなるn+1次元のベクトル空間を表す。
V*：V*はn+1個の巡回群G2の直積からなるn+1次元のベクトル空間を表す。
e：eは直積G1n+1と直積G2n+1との直積G1n+1×G2n+1を巡回群GTに写す非退化な双線形写像（bilinear map）を計算するための関数（「双線形関数」と呼ぶ）を表す。双線形関数eは、巡回群G1のn+1個の元γL(L=1,...,n+1)(n≧1)と巡回群G2のn+1個の元γL*(L=1,...,n+1)とを入力とし、巡回群GTの１個の元を出力する。
e：G1n+1×G2n+1→GT            …(2)
双線形関数eは以下の性質を満たす。
［双線形性］すべてのΓ1∈G1n+1，Γ2∈G2n+1及びν，κ∈Fqについて以下の関係を満たす。
e(ν・Γ1,κ・Γ2)=e(Γ1,Γ2)ν・κ      …(3)
［非退化性］すべての
Γ1∈G1n+1，Γ2∈G2n+1          …(4)
を巡回群GTの単位元に写す関数ではない。
［計算可能性］あらゆるΓ1∈G1n+1，Γ2∈G2n+1についてe(Γ1,Γ2)を効率的に計算するアルゴリズムが存在する。
本形態では、巡回群G1と巡回群G2との直積G1×G2を巡回群GTに写す非退化な双線形写像を計算するための関数
Pair:G1×G2→GT            …(5)
を用いて双線形関数eを構成する。本形態の双線形関数eは、巡回群G1のn+1個の元γL(L=1,...,n+1)からなるn+1次元ベクトル(γ1,...,γn+1)と、巡回群G2のn+1個の元γL*(i=1,...,n+1)からなるn+1次元ベクトル(γ1*,...,γn+1*)との入力に対し、巡回群GTの１個の元
e=ΠL=1n+1 Pair(γL, γL*)          …(6)
を出力する関数である。
なお、双線形関数Pairは、巡回群G1の１個の元と巡回群G2の１個の元との組を入力とし、巡回群GTの１個の元を出力する関数であり、以下の性質を満たす。
［双線形性］すべてのΩ1∈G1，Ω2∈G2及びν，κ∈Fqについて以下の関係を満たす。
Pair(ν・Ω1,κ・Ω2)=Pair(Ω1,Ω2)ν・κ      …(7)
［非退化性］すべての
Ω1∈G1，Ω2∈G2          …(8)
を巡回群GTの単位元に写す関数ではない。
［計算可能性］あらゆるΩ1∈G1，Ω2∈G2についてPair(Ω1,Ω2)を効率的に計算するアルゴリズムが存在する。
なお、双線形関数Pairの具体例は、WeilペアリングやTateペアリングなどのペアリング演算を行うための関数である（例えば、参考文献４「Alfred. J. Menezes，ELLIPTIC CURVE PUBLIC KEY CRYPTOSYSTEMS， KLUWER ACADEMIC PUBLISHERS，ISBN0-7923-9368-6，pp. 61-81」等参照）。また、楕円曲線Eの種類に応じ、Tateペアリングなどのペアリング演算を行うための関数と所定の関数phiを組み合わせた変更ペアリング関数e(Ω1,phi(Ω2))（Ω1∈G1，Ω2∈G2）を双線形関数Pairとして用いてもよい（例えば、参考文献２等参照）。また、ペアリング演算をコンピュータ上で行うためのアルゴリズムとしては、周知のMiller のアルゴリズム（参考文献５「V. S. Miller, “Short Programs for functions on Curves,”1986，インターネット＜http://crypto.stanford.edu/miller/miller.pdf＞」などが存在する。また、ペアリング演算を効率的に行うための楕円曲線や巡回群の構成方法はよく知られている（例えば、参考文献２、参考文献６「A. Miyaji, M. Nakabayashi, S.Takano, "New explicit conditions of elliptic curve Traces for FR-Reduction," IEICE Trans. Fundamentals, vol. E84-A, no05, pp. 1234-1243, May 2001」、参考文献７「P.S.L.M. Barreto, B. Lynn, M. Scott, "Constructing elliptic curves with prescribed embedding degrees," Proc. SCN '2002, LNCS 2576, pp.257-267, Springer-Verlag. 2003」、参考文献８「R. Dupont, A. Enge, F. Morain, "Building curves with arbitrary small MOV degree over finite prime fields," http://eprint.iacr.org/2002/094/」等参照）。
ai(i=1,...,n+1)：巡回群G1のn+1個の元を要素とするn+1次元の基底ベクトルを表す。基底ベクトルaiの一例は、κ1・g1∈G1をi次元目の要素とし、残りのn個の要素を巡回群G1の単位元（加法的に「0」と表現）とするn+1次元の基底ベクトルである。この場合、n+1次元の基底ベクトルai(i=1,...,n+1)の各要素をそれぞれ列挙して表現すると、以下のようになる。
a1=(κ1・g1,0,0,...,0)
a2=(0,κ1・g1,0,...,0)           …(9)
...
an+1=(0,0,0,...,κ1・g1)
ここで、κ1は加法単位元0F以外の有限体Fqの元からなる定数であり、κ1∈Fqの具体例はκ1=1Fである。基底ベクトルaiは直交基底であり、巡回群G1のn+1個の元を要素とするすべてのn+1次元ベクトルは、n+1次元の基底ベクトルai(i=1,...,n+1)の線形和によって表される。すなわち、n+1次元の基底ベクトルaiは前述のベクトル空間Vを張る。
ai*(i=1,...,n+1)：ai*は巡回群G2のn+1個の元を要素とするn+1次元の基底ベクトルを表す。基底ベクトルai*の一例は、κ2・g2∈G2をi次元目の要素とし、残りのn個の要素を巡回群G2の単位元（加法的に「0」と表現）とするn+1次元の基底ベクトルである。この場合、基底ベクトルai*(i=1,...,n+1)の各要素をそれぞれ列挙して表現すると、以下のようになる。
a1*=(κ2・g2,0,0,...,0)
a2*=(0,κ2・g2,0,...,0)            …(10)
...
an+1*=(0,0,0,...,κ2・g2)
ここで、κ2は加法単位元0F以外の有限体Fqの元からなる定数であり、κ2∈Fqの具体例はκ2=1Fである。基底ベクトルai*は直交基底であり、巡回群G2のn+1個の元を要素とするすべてのn+1次元ベクトルは、n+1次元の基底ベクトルai*(i=1,...,n+1)の線形和によって表される。すなわち、n+1次元の基底ベクトルai*は前述のベクトル空間V*を張る。
なお、基底ベクトルaiと基底ベクトルai*とは、0Fを除く有限体Fqの元τ=κ1・κ2について
e(ai, aj*)=gTτ・δ(i,j)           …(11)
を満たす。すなわち、i=jの場合には、式(6)(7)の関係から、
e(ai, aj*)= Pair(κ1・g1,κ2・g2)・Pair(0, 0)・...・Pair(0, 0)
= Pair(g1, g2)κ1・κ2・Pair(g1, g2)0・0・...・Pair(g1, g2)0・0
= Pair(g1, g2)κ1・κ2=gTτ
を満たす。一方、i≠jの場合には、e(ai, aj*)は、Pair(κ1・g1,κ2・g2)を含まず、Pair(κ1・g1,0)と Pair(0,κ2・g2)とPair(0,0)との積になる。さらに、式(7)の関係からPair(g1, 0)=Pair(0, g2)=Pair(g1, g2)0を満たす。そのため、i≠jの場合には、
e(ai, aj*)=e(g1, g2)0=gT0
を満たす。
特に、τ=κ1・κ2=1Fである場合（例えば、κ1=κ2=1Fの場合）、
e(ai, aj*)=gTδ(i,j)           …(12)
を満たす。ここで、gT0=1は巡回群GTの単位元であり、gT1=gTは巡回群GTの生成元である。この場合、基底ベクトルaiと基底ベクトルai*とは双対正規直交基底であり、ベクトル空間Vとベクトル空間V*とは、双線形写像を構成可能な双対ベクトル空間〔双対ペアリングベクトル空間（DPVS:Dual Paring Vector space)〕である。
A：Aは基底ベクトルai(i=1,...,n+1)を要素とするn+1行n+1列の行列を表す。例えば、基底ベクトルai(i=1,...,n+1)が式(9)によって表現される場合、行列Aは、
【数１２】
2010123122.tif 000014
となる。
A*：A*は基底ベクトルai*(i=1,...,n+1)を要素とするn+1行n+1列の行列を表す。例えば、基底ベクトルai*(i=1,...,n+1)が式(10)によって表現される場合、行列A*は、
【数１３】
2010123122.tif 000015
となる。
X：Xは有限体Fqの元を要素とするn+1行n+1列の行列を表す。行列Xは基底ベクトルaiの座標変換に用いられる。行列Xのi行j列(i=1,...,n+1,j=1,...,n+1)の要素をχi,j∈Fqとすると、行列Xは、
【数１４】
2010123122.tif 000016
となる。なお、行列Ｘの各要素χi,jを変換係数と呼ぶ。
X *：X *は行列Xの逆行列の転置行列X*=( X-1)Tを表す。行列X *は基底ベクトルai*の座標変換に用いられる。行列X *のi行j列の要素をχi,j*∈Fqとすると、行列X*は、
【数１５】
2010123122.tif 000017
となる。なお、行列Ｘ*の各要素χi,j*を変換係数と呼ぶ。
この場合、n+1行n+1列の単位行列をIとするとＸ・(Ｘ*)T=Ｉを満たす。すなわち、単位行列
【数１６】
2010123122.tif 000018
に対し、
【数１７】
2010123122.tif 000019
を満たす。ここで、n+1次元ベクトル
χi→=(χi,1,...,χi,n+1)            …(19)
χj→*=(χj,1*,...,χj,n+1*)           …(20)
を定義する。すると、式(18)の関係から、n+1次元ベクトルχi→とχj→*との内積は、
χi→・χj→*=δ(i,j)          …(21)
となる。
bi：biは巡回群G1のn+1個の元を要素とするn+1次元の基底ベクトルを表す。基底ベクトルbiは行列Xを用いて基底ベクトルai(i=1,...,n+1)を座標変換することで得られる。具体的には、基底ベクトルbiは、
bi=Σj=1n+1χi,j・aj          …(22)
の演算によって得られる。例えば、基底ベクトルaj(j=1,...,n+1)が式(9)によって表現される場合、基底ベクトルbiの各要素をそれぞれ列挙して表現すると、以下のようになる。
bi=(χi,1・κ1・g1 ,χi,2・κ1・g1 ,...,χi,n+1・κ1・g1)   …(23)
巡回群G1のn+1個の元を要素とするすべてのn+1次元ベクトルは、n+1次元の基底ベクトルbi(i=1,...,n+1)の線形和によって表される。すなわち、n+1次元の基底ベクトルbiは前述のベクトル空間Vを張る。
bi*：bi*は巡回群G2のn+1個の元を要素とするn+1次元の基底ベクトルを表す。行列X*を用いて基底ベクトルai*(i=1,...,n+1)を座標変換することで得られる。具体的には、基底ベクトルbi*は、
bi*=Σj=1n+1χi,j*・aj*          …(24)
の演算によって得られる。例えば、基底ベクトルaj*(j=1,...,n+1)が式(10)によって表現される場合、基底ベクトルbi*の各要素をそれぞれ列挙して表現すると、以下のようになる。
bi*=(χi,1*・κ2・g2 ,χi,2*・κ2・g2 ,...,χi,n+1*・κ2・g2) …(25)
となる。巡回群G2のn+1個の元を要素とするすべてのn+1次元ベクトルは、n+1次元の基底ベクトルbi*(i=1,...,n+1)の線形和によって表される。すなわち、n+1次元の基底ベクトルbi*は前述のベクトル空間V*を張る。
なお、基底ベクトルbiと基底ベクトルbi*とは、0Fを除く有限体Fqの元τ=κ1・κ2について
e(bi, bj*)=gTτ・δ(i,j)           …(26)
を満たす。すなわち、式(6)(21)(23)(25)の関係から、
【数１８】
2010123122.tif 000020
を満たす。特に、τ=κ1・κ2=1Fである場合（例えば、κ1=κ2=1Fの場合）、
e(bi, bj*)=gTδ(i,j)           …(27)
を満たす。この場合、基底ベクトルbiと基底ベクトルbi*とは、双対ペアリングベクトル空間（ベクトル空間Vとベクトル空間V*）の双対正規直交基底である。
なお、式(26)の関係を満たすのであれば、式(9)(10)で例示したもの以外の基底ベクトルai及びai*や、式(22)(24)で例示したもの以外の基底ベクトルbi及びbi*を用いてもよい。
B：Bは基底ベクトルbi(i=1,...,n+1)を要素とするn+1行n+1列の行列を表す。B=X・Aを満たす。例えば、基底ベクトルbiが式(23)によって表現される場合、行列Bは、
【数１９】
2010123122.tif 000021
となる。
B*：B*は基底ベクトルbi*(i=1,...,n+1)を要素とするn+1行n+1列の行列を表す。B*=X*・A*を満たす。例えば、基底ベクトルbi*(i=1,...,n+1)が式(25)によって表現される場合、行列B*は、
【数２０】
2010123122.tif 000022
となる。
w→：w→は有限体Fqの元を要素とするn次元ベクトルを表す。
w→=(w1,...,wn)∈Fqn           …(30)
wμ：wμはn次元ベクトルのμ(μ=1,...,n)番目の要素を表す。
v→：v→は有限体Fqの元を要素とするn次元ベクトルを表す。
v→=(v1,...,vn)∈Fqn           …(31)
vμ：vμはn次元ベクトルのμ(μ=1,...,n)番目の要素を表す。
衝突困難な関数：「衝突困難な関数」とは、十分大きなセキュリティパラメータkに対して以下の条件を満たす関数h、又は、それとみなせる関数を表す。
Pr[A(h)=(x,y)|h(x)=h(y)∧x≠y]<ε(k)           …(32)
ただし、Pr[・]は事象[・]の確率であり、A(h)は関数hに対してh(x)=h(y)を満たす値x,y（x≠y）を算出する確率的多項式時間アルゴリズムであり、ε(k)はセキュリティパラメータkについての多項式である。衝突困難な関数の例は、参考文献１に開示された「cryptographic hash function」などのハッシュ関数である。
単射関数：「単射関数」とは、値域に属する元が何れもその定義域のただ一つの元の像として表される関数、又は、それとみなせる関数を表す。単射関数の例は、参考文献１に開示された「KDF(Key Derivation Function)」などのハッシュ関数である。
擬似的なランダム関数：「擬似的なランダム関数」とは、任意の確率的多項式時間アルゴリズムが集合Φζとその部分集合φζとを区別できない場合における、当該部分集合φζに属する関数、又は、それとみなせる関数を表す。ただし、集合Φζは集合{0,1}ζの元を集合{0,1}ζの元へ写すすべての関数の集合である。擬似的なランダム関数の例は、上述のようなハッシュ関数である。
H1：H1は２つのバイナリ系列（ω1,ω2）∈{0,1}k×{0,1}*を入力とし、有限体Fqの２つの元（ψ1,ψ2）∈Fq×Fqを出力する衝突困難な関数を表す。
H1：{0,1}k×{0,1}*→Fq×Fq           …(33)
このような関数H1の例は、ω1とω2とのビット連結値ω1||ω2を入力とし、参考文献１に開示された「cryptographic hash function」などのハッシュ関数と、「バイナリ系列から整数への変換関数（Octet string/integer conversion）」と、「バイナリ系列から有限体の元への変換関数（Octet string and integer/finite field conversion）」との演算を行い、有限体Fqの２つの元（ψ1,ψ2）∈Fq×Fqを出力する関数である。なお、関数H1は、擬似的なランダム関数であることが望ましい。
H2：H2は巡回群GTの元とバイナリ系列（ξ,ω2）∈GT ×{0,1}*を入力とし、有限体Fqの１つの元ψ∈Fqを出力する衝突困難な関数を表す。
H2：GT×{0,1}*→Fq          …(34)
このような関数H2の例は、巡回群GTの元ξ∈GTとバイナリ系列ω2∈{0,1}*とを入力とし、巡回群GTの元ξ∈GTを参考文献１に開示された「有限体の元からバイナリ系列への変換関数（Octet string and integer/finite field conversion）」に入力してバイナリ系列を求め、そのバイナリ系列とバイナリ系列ω2∈{0,1}*とのビット連結値に対して参考文献１に開示された「cryptographic hash function」などのハッシュ関数演算を行い、さらに「バイナリ系列から有限体の元への変換関数（Octet string and integer/finite field conversion）」の演算を行い、有限体Fqの１つの元ψ∈Fqを出力する関数である。なお、安全性の観点から、関数H2は擬似的なランダム関数であることがより望ましい。
R:Rは１つの巡回群GTの元ξ∈GTを入力とし、１つのバイナリ系列ω∈{0,1}kを出力する単射関数を表す。
R：GT→{0,1}k          …(35)
このような単射関数Rの例は、巡回群GTの元ξ∈GTを入力とし、参考文献１に開示された「有限体の元からバイナリ系列への変換関数（Octet string and integer/finite field conversion）」と、参考文献１に開示された「KDF(Key Derivation Function)」などのハッシュ関数との演算を行い、１つのバイナリ系列ω∈{0,1}kを出力する関数である。なお、安全性の観点から、関数Rは衝突困難な関数であることが望ましく、擬似的なランダム関数であることがより望ましい。
Enc：Encは共通鍵暗号方式の暗号化処理を示す共通鍵暗号関数を表す。共通鍵暗号方式の具体例は、カメリア（Camellia）やAESなどである。
Enck(M)：Enck(M)は、共通鍵Kを用い、共通鍵暗号関数Encに従って平文Mを暗号化して得られた暗号文を表す。
Dec：Decは、共通鍵暗号方式の復号処理を示す共通鍵復号関数を表す。
Deck(C)：Deck(C)は、共通鍵Kを用い、共通鍵復号関数Decに従って暗号文Cを復号して得られた復号結果を表す。
【０３４８】
〔内積述語暗号〕
次に、内積述語暗号の基本的な構成について説明する。
【０３４９】
＜述語暗号＞
述語暗号（「関数暗号」と呼ぶ場合もある）とは、「属性情報」と呼ばれる情報と「述語情報」と呼ばれる情報との組み合わせが所定の論理式を「真」にする場合に暗号文が復号できる方式である。「属性情報」と「述語情報」の一方が暗号文に埋め込まれ、他方が鍵情報に埋め込まれる。従来の述語暗号の構成は、例えば、参考文献９「"Predicate Encryption Supporting Disjunctions, Polynomial Equations, and Inner Products," with Amit Sahai and Brent Waters One of 4 papers from Eurocrypt 2008 invited to the Journal of Cryptology」等に開示されている。
【０３５０】
＜内積述語暗号＞
内積述語暗号は、属性情報や述語情報としてベクトルを用い、それらの内積が０となる場合に暗号文が復号される述語暗号である。内積述語暗号では、内積が０となることと論理式が「真」となることとが等価である。
【０３５１】
［論理式と多項式との関係］
内積述語暗号では、論理和や論理積からなる論理式を多項式で表現する。
まず、「xがη1である」という命題１と「xがη2である」という命題２との論理和 (x=η1)∨(x=η2)を
(x-η1)・(x-η2)          …(36)
という多項式で表現する。すると、各真理値と式(36)の関数値との関係は以下のようになる。
【表１】
2010123122.tif 000023
[表1]から分かるように、論理和(x=η1)∨(x=η2)が真である場合、式(36)の関数値は0になり、論理和(x=η1)∨(x=η2)が偽である場合、式(36)の関数値は0以外の値となる。すなわち、論理和(x=η1)∨(x=η2)が真であることと、式(36)の関数値が0となることとは等価である。よって、論理和は式(36)で表現できる。
また、「xがη1である」という命題１と「xがη2である」という命題２との論理積 (x=η1)∧(x=η2)を
ι1・(x-η1)+ι2・(x-η2)          …(37)
という多項式で表現する。ただし、ι1及びι2は乱数である。すると、真理値と式(37)の関数値とは以下の関係となる。
【表２】
2010123122.tif 000024
[表２]から分かるように、論理積 (x=η1)∧(x=η2)が真である場合、式(37)の関数値は0になり、論理積(x=η1)∧(x=η2)が偽である場合、式(37)の関数値は0以外の値となる。すなわち、論理積 (x=η1)∧(x=η2)が真であることと、式(37)の関数値が0となることとは等価である。よって、論理積は式(37)で表現できる。
以上のように、式(36)と式(37)とを用いることで論理和や論理積からなる論理式を多項式f(x)で表現できる。例えば、論理式{(x=η1)∨(x=η2)∨(x=η3)}∧(x=η4)∧(x=η5)は、多項式
f(x)=ι1・{(x-η1)・(x-η2)・(x-η3)}+ι2・(x=η4)+ι3・(x=η5)…(38)
で表現できる。
なお、式(36）では、１つの不定元xを用いて論理和を表現したが、複数の不定元を用いて論理和を表現することも可能である。例えば、２つの不定元x0及びx1を用い、「x0がη0である」という命題１と「x1がη1である」という命題２との論理和 (x0=η0)∨(x1=η1)を
(x0-η0)・(x1-η1)
という多項式で表現することも可能であり、３つ以上の不定元を用い、論理和を多項式で表現することも可能である。
また、式(37）では、１つの不定元xを用いて論理積を表現したが、複数の不定元を用いて論理積を表現することも可能である。例えば、また、「x0がη0である」という命題１と「x1がη1である」という命題２との論理積 (x0=η0)∧(x1=η1)を
ι0・(x0-η0)+ι1・(x1-η1)
という多項式で表現することも可能であり、３つ以上の不定元を用い、論理積を多項式で表現することも可能である。
論理和及び／又は論理積を含む論理式をH(H≧1)種類の不定元x0,...,xH-1を用いて表現した多項式をf(x0,...,xH-1)と表現する。また、各不定元x0,...,xH-1に対応する命題を「xhがηhである」とする。ただし、ηh（h=0,...H-1）は命題ごとに定まる定数である。この場合、当該論理式を示す多項式f(x0,...,xH-1)は、不定元xhと定数ηhとの差をとる多項式によって当該不定元xhが当該定数ηhであるという命題を表現し、命題をそれぞれ表現する多項式の積によって当該命題の論理和を表現し、命題又は命題の論理和をそれぞれ表現する多項式の線形和によって当該命題又は命題の論理和の論理積を表現し、それによって論理式を表現した多項式となる。例えば、５つの不定元x0,...,x4を用い、論理式{(x0=η0)∨(x1=η1)∨(x2=η2)}∧(x3=η3)∧(x4=η4)を多項式で表現すると、
f(x0,...,x4)
=ι0・{(x0-η0)・(x1-η1)・(x2-η2)}+ι1・(x3=η3)+ι2・(x4=η4)
となる。
【０３５２】
［多項式と内積の関係］
論理式を示す多項式f(x0,...,xH-1)は、２つのn次元ベクトルの内積で表現できる。すなわち、多項式f(x0,...,xH-1)は、当該多項式f(x0,...,xH-1)の各項の不定元成分を各要素とするベクトル
v→=(v1,...,vn)
と、当該多項式f(x0,...,xH-1)の各項の係数成分を各要素とするベクトル
w→=(w1,...,wn)
との内積
f(x0,...,xH-1)=w→・v→
に等しい。すなわち、論理式を示す多項式f(x0,...,xH-1)が0であるか否かと、多項式f(x0,...,xH-1)の各項の不定元成分を各要素とするベクトルv→と、多項式f(x0,...,xH-1)の各項の係数成分を各要素とするベクトルw→との内積が0であるか否かとは等価である。
f(x0,...,xH-1)=0  ←→  w→・v→=0
例えば、１つの不定元xで表現された多項式f(x)=θ0・x0+θ1・x+...+θn-1・xn-1は、２つのn次元ベクトル
w→=(w1,...,wn)=(θ0,...,θn-1)          …(39)
v→=(v1,...,vn)=(x0,...,xn-1)          …(40)
の内積
f(x)= w→・v→          …(41)
で表現できる。すなわち、論理式を示す多項式f(x)が0であるか否かと、式(41)の内積が0であるか否かとは等価である。
f(x)=0  ←→  w→・v→=0          …(42)
また、多項式f(x0,...,xH-1)の各項の不定元成分を各要素とするベクトルを
w→=(w1,...,wn)
とし、多項式f(x0,...,xH-1)の各項の係数成分を各要素とするベクトル
v→=(v1,...,vn)
としても、論理式を示す多項式f(x0,...,xH-1)が0であるか否かと、ベクトルw→とベクトルv→との内積が0であるか否かとは等価である。
例えば、式(39)(40)の代わりに
w→=(w1,...,wn)=(x0,...,xn)        …(43)
v→=(v1,...,vn)=(θ1,...,θn-1)          …(44)
としても、論理式を示す多項式f(x)が0であるか否かと、式(41)の内積が0であるか否かとは等価である。
内積述語暗号では、ベクトルv→=(v0,...,vn-1)及びw→=(w0,...,wn-1)の何れか一方を属性情報とし、他方を述語情報とし、属性情報と述語情報の一方が暗号文に埋め込まれ、他方が鍵情報に埋め込まれる。例えば、n次元ベクトル(θ0,...,θn-1)が述語情報とされ、n次元ベクトル(x0,...,xn-1)が属性情報とされ、属性情報と述語情報の一方が暗号文に埋め込まれ、他方が鍵情報に埋め込まれる。なお、以下では、鍵情報に埋め込まれるn次元ベクトルをw→=(w1,...,wn)とし、暗号文に埋め込まれるn次元ベクトルをv→=(v1,...,vn)とする。例えば、
述語情報：w→=(w1,...,wn)=(θ0,...,θn-1)
属性情報：v→=(v1,...,vn)=(x0,...,xn-1)
であるか、
述語情報：v→=(v1,...,vn)=(θ0,...,θn-1)
属性情報：w→=(w1,...,wn)=(x0,...,xn-1)
である。
【０３５３】
［内積述語暗号の基本構成］
以下では、内積述語暗号を用いて鍵カプセル化メカニズムKEM (Key Encapsulation Mechanisms)を構成する場合の基本構成を例示する。この構成はSetup(1k)，GenKey(MSK,w→)，Enc(PA,v→)，Dec(SKw,C2)を含む。
《Setup(1k)：セットアップ》
−入力：セキュリティパラメータk
−出力：マスター鍵情報MSK，公開パラメータPK
Setup(1k)の一例では、まず、セキュリティパラメータkをnとして、n+1次元の基底ベクトルai(i=1,...,n+1)を要素とするn+1行n+1列の行列Aと、基底ベクトルai*(i=1,...,n+1)を要素とするn+1行n+1列の行列A*と、座標変換のためのn+1行n+1列の行列X，X*とが選択される。次に、式(22)に従って座標変換されたn+1次元の基底ベクトルbi(i=1,...,n+1)が算出され、式(24)に従って座標変換されたn+1次元の基底ベクトルbi*(i=1,...,n+1)が算出される。そして、基底ベクトルbi*(i=1,...,n+1)を要素とするn+1行n+1列の行列B*がマスター鍵情報MSKとして出力され、ベクトル空間V, V*、基底ベクトルbi(i=1,...,n+1)を要素とするn+1行n+1列の行列B、セキュリティパラメータk、有限体Fq、楕円曲線E、巡回群G1, G2,GT、生成元g1, g2, gT、双線形関数eなどが公開パラメータPKとして出力される。
《GenKey(MSK,w→)：鍵情報生成》
−入力：マスター鍵情報MSK，ベクトルw→
−出力：ベクトルw→に対応する鍵情報D*
GenKey(MSK,w→)の一例では、まず、有限体Fqから元α∈Fqが選択される。そして、マスター鍵情報MSKである行列B*を用い、ベクトルw→に対応する鍵情報
D*=α・(Σμ=1nwμ・bμ*)+bn+1*∈G2n+1        …(45)
が生成され、出力される。なお、巡回群G2上での離散対数問題の求解が困難である場合、鍵情報D*からwμ・bμ*やbn+1*の成分を分離抽出することは困難である。
《Enc(PA,v→)：暗号化》
−入力：公開パラメータPK，ベクトルv→
−出力：暗号文C2，共通鍵K
Enc(PA,v→)の一例では、まず、共通鍵Kと有限体Fqの元である乱数υ1とが生成される。そして、行列Bなどの公開パラメータPKと、共通鍵Kを含む値に対応する有限体Fqの元υ2と、ベクトルv→と、乱数υ1とを用い、暗号文
C2=υ1・(Σμ=1nvμ・bμ)+υ2・bn+1∈G1n+1        …(46)
が生成される。そして、暗号文C2と共通鍵Kとが出力される。共通鍵Kの一例はK=gTτ・υ2∈GTである。ここで、添え字のυ2はυ2を意味する。また、前述のようにτの一例はτ=1Fである。なお、巡回群G1上での離散対数問題の求解が困難である場合、暗号文C2からvμ・bμやυ2・bn+1の成分を分離抽出することは困難である。
《Dec(SKw,C2)：復号・鍵共有》
−入力：ベクトルw→に対応する鍵情報D1*，暗号文C2
−出力：共通鍵K
Dec(SKw,C2)の一例では、まず、暗号文C2と鍵情報D1*とが式(2)の双線形関数eに入力される。すると、式(3)(26)の性質から、
【数２１】
2010123122.tif 000025
を満たす。
ここで、内積w→・v→=0であれば、式(47)は、
【数２２】
2010123122.tif 000026
と変形できる。この結果から共通鍵Kが生成され出力される。共通鍵Kの一例はK=gTτ・υ2∈GTである。
【０３５４】
ここではn+1次元の基底ベクトルを用いてアルゴリズムを構成する例を示したが、次元はn+1に限定されず、Ξを２以上の所定の整数としてn+Ξ次元の基底ベクトルbi*(i=1,...,n+Ξ)を用いてアルゴリズムを構成してもよい。このとき、例えば式(46)に替えて式(49)を、式(46)に替えて式(50)を用いることができる。ここでυιは定数や変数（乱数など）などである。
D*=α・(Σμ=1nwμ・bμ*)+Σι=n+1n+Ξυι・bι*∈G2n+Ξ    …(49)
C2=υ1・(Σμ=1nvμ・bμ)+Σι=2Ξ+1υι・bι+n-1∈G1n+Ξ   …(50)
【０３５５】
なお、式(45)は、
D*=α・(Σμ=1nwμ・bμ*)+υn+1・bn+1*∈G2n+1
であってもよい。さらに、入力情報を入れ換えて、つまり、式(45)にてwをvに置換し式(46)にてvをwに置換してもよい。
以上で《補遺》の説明を終わる。
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【０３５６】
なお、図面に記載した氏名などの情報は、架空のものであり、実際の人物とは全く関係ない。
【０３５７】
＜総括＞
第１の観点から本発明を総括すると、下記のとおりである。
【０３５８】
［アイテム１］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含む、
暗号システム。
【０３５９】
［アイテム２］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含み、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【０３６０】
［アイテム３］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含む、
暗号システム。
【０３６１】
［アイテム４］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部を含み、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【０３６２】
［アイテム５］
アイテム１またはアイテム２に記載の暗号システムにおいて、
上記暗号化装置の上記暗号化部は、上記共通鍵で平文を暗号化した暗号文も求め、
上記復号装置の上記復号部は、上記復号処理で得られた上記共通鍵を用いる上記暗号文の第２復号処理、または、上記復号処理で得られた上記共通鍵の生成に用いる上記情報から生成された共通鍵を用いる上記暗号文の第２復号処理も行う、
暗号システム。
【０３６３】
［アイテム６］
アイテム１からアイテム５のいずれかに記載の暗号システムにおいて、
上記利用者に対応する上記属性指定情報および／または上記述語指定情報は記憶媒体に記憶されており、
上記復号装置は、当該復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記記憶媒体から取得するユーザ情報取得部を含む、
暗号システム。
【０３６４】
［アイテム７］
アイテム１またはアイテム３に記載の暗号システムにおいて、
上記鍵生成装置が用いる、上記復号装置の利用者に対応する上記属性指定情報または上記述語指定情報は、上記復号装置から取得した情報である、
暗号システム。
【０３６５】
［アイテム８］
アイテム１からアイテム６のいずれかに記載の暗号システムにおいて、
上記暗号システムは、一つまたは複数のユーザ情報管理装置をさらに含み、
各上記ユーザ情報管理装置は、上記利用者に対応する上記属性指定情報および／または上記述語指定情報を記憶する記憶部を含み、
上記鍵生成装置は、上記復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記ユーザ情報管理装置から取得するユーザ情報取得部を含む、
暗号システム。
【０３６６】
［アイテム９］
アイテム１からアイテム８のいずれかに記載の暗号システムにおいて、
各上記鍵生成装置につき一つまたは複数の上記変換規則情報ペアが予め定められており、
上記暗号システムは、一つまたは複数の変換規則情報ペア管理装置をさらに含み、
各上記変換規則情報ペア管理装置は、各上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部を含み、
上記暗号化装置は、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得部を含み、
上記復号装置は、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得部を含む、
暗号システム。
【０３６７】
［アイテム１０］
アイテム１からアイテム８のいずれかに記載の暗号システムにおいて、
各上記鍵生成装置につき一つまたは複数の上記変換規則情報ペアが予め定められており、
各上記鍵生成装置は、当該鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部をさらに含み、
各上記暗号化装置は、少なくとも一つ以上の上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部をさらに含み、
各上記復号装置は、少なくとも一つ以上の上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部をさらに含む、
暗号システム。
【０３６８】
［アイテム１１］
アイテム１からアイテム１０のいずれかに記載の暗号システムにおいて、
上記ポリシー情報の特定対象が上記属性用変換規則情報のみ、あるいは、上記述語用変換規則情報のみ、あるいは、上記属性用変換規則情報および上記述語用変換規則情報であることが、上記鍵生成装置ごとに予め定められている、
暗号システム。
【０３６９】
［アイテム１２］
アイテム１からアイテム１１のいずれかに記載の暗号システムにおいて、
代数構造Ｋを有限環または有限体として、
上記第１、第２属性情報ならびに上記第１、第２述語情報は、上記Ｋの元を成分とするベクトルであり、
上記復号部の上記復号処理では、上記暗号情報と上記復号鍵を入力とし、上記第１述語情報と上記第２属性情報との標準内積または上記第１属性情報と上記第２述語情報との標準内積の結果に依存する演算が行われる、
暗号システム。
【０３７０】
［アイテム１３］
アイテム１２に記載の暗号システムにおいて、
上記公開鍵は、Ｋ上の加群Ｖの元の集合であり、
上記秘密鍵は、上記加群Ｖの双対加群Ｖ＊の元の集合であり、
上記復号鍵は、上記双対加群Ｖ＊の元であり、
上記暗号化部は、上記公開鍵の元に対して上記第１属性情報の成分を係数とするスカラー倍を行う演算または上記公開鍵の元に対して上記第１述語情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記暗号情報を求め、
上記鍵生成部は、上記秘密鍵の元に対して上記第２述語情報の成分を係数とするスカラー倍を行う演算または上記秘密鍵の元に対して上記第２属性情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記復号鍵を求め、
上記復号部の上記復号処理に用いられる上記演算は、双線形性を有し、上記演算の結果が、双線形性に基づき上記暗号情報と上記復号鍵から取り出された上記第１述語情報と上記第２属性情報あるいは上記第１属性情報と上記第２述語情報の標準内積の結果に依存するように構成されている、
暗号システム。
【０３７１】
［アイテム１４］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【０３７２】
［アイテム１５］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【０３７３】
［アイテム１６］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【０３７４】
［アイテム１７］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記復号装置の復号部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【０３７５】
［アイテム１８］
アイテム１４またはアイテム１５に記載の暗号通信方法において、
上記暗号化ステップは、上記暗号化部が上記共通鍵で平文を暗号化した暗号文も求める暗号文生成ステップを含み、
上記復号ステップは、上記復号部が、上記復号処理で得られた上記共通鍵を用いる上記暗号文の第２復号処理、または、上記復号処理で得られた上記共通鍵の生成に用いる上記情報から生成された共通鍵を用いる上記暗号文の第２復号処理を行う第２復号ステップを含む、
暗号通信方法。
【０３７６】
［アイテム１９］
アイテム１４からアイテム１８のいずれかに記載の暗号通信方法において、
上記復号装置の取得部が、上記利用者に対応する上記属性指定情報および／または上記述語指定情報を記憶する記憶媒体から、当該復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を取得する取得ステップ
を有する暗号通信方法。
【０３７７】
［アイテム２０］
アイテム１４またはアイテム１６に記載の暗号通信方法において、
上記復号装置の送信部が、当該復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記鍵生成装置に送信するユーザ情報送信ステップと、
上記鍵生成装置の受信部が、上記復号装置から上記利用者に対応する上記属性指定情報または上記述語指定情報を受信するユーザ情報受信ステップと
を有する暗号通信方法。
【０３７８】
［アイテム２１］
アイテム１４からアイテム１８のいずれかに記載の暗号通信方法において、
上記暗号システムは、上記利用者に対応する上記属性指定情報および／または上記述語指定情報を記憶する記憶部を備える、一つまたは複数のユーザ情報管理装置を含んでおり、
上記鍵生成装置のユーザ情報取得部が、上記復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記ユーザ情報管理装置から取得するユーザ情報取得ステップ
を有する暗号通信方法。
【０３７９】
［アイテム２２］
アイテム１４からアイテム２１のいずれかに記載の暗号通信方法において、
各上記鍵生成装置につき一つまたは複数の上記変換規則情報ペアが予め定められており、
上記暗号システムは、各上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部を備える、一つまたは複数の変換規則情報ペア管理装置を含んでおり、
上記暗号化装置の変換規則情報ペア取得部が、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得ステップと、
上記復号装置の変換規則情報ペア取得部が、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得ステップと
を有する暗号通信方法。
【０３８０】
［アイテム２３］
アイテム１４からアイテム２２のいずれかに記載の暗号通信方法において、
上記ポリシー情報の特定対象が上記属性用変換規則情報のみ、あるいは、上記述語用変換規則情報のみ、あるいは、上記属性用変換規則情報および上記述語用変換規則情報であることが、上記鍵生成装置ごとに予め定められている、
暗号通信方法。
【０３８１】
［アイテム２４］
アイテム１４からアイテム２３のいずれかに記載の暗号通信方法において、
代数構造Ｋを有限環または有限体として、
上記第１、第２属性情報ならびに上記第１、第２述語情報は、上記Ｋの元を成分とするベクトルであり、
上記復号ステップでは、上記復号部が、上記暗号情報と上記復号鍵を入力とし、上記第１述語情報と上記第２属性情報との標準内積または上記第１属性情報と上記第２述語情報との標準内積の結果に依存する演算を行う、
暗号通信方法。
【０３８２】
［アイテム２５］
アイテム２４に記載の暗号通信方法において、
上記公開鍵は、Ｋ上の加群Ｖの元の集合であり、
上記秘密鍵は、上記加群Ｖの双対加群Ｖ＊の元の集合であり、
上記復号鍵は、上記双対加群Ｖ＊の元であり、
上記暗号化ステップでは、上記暗号化部が、上記公開鍵の元に対して上記第１属性情報の成分を係数とするスカラー倍を行う演算または上記公開鍵の元に対して上記第１述語情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記暗号情報を求め、
上記鍵生成ステップでは、上記鍵生成部が、上記秘密鍵の元に対して上記第２述語情報の成分を係数とするスカラー倍を行う演算または上記秘密鍵の元に対して上記第２属性情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記復号鍵を求め、
上記復号部の上記復号処理に用いられる上記演算は、双線形性を有し、上記演算の結果が、双線形性に基づき上記暗号情報と上記復号鍵から取り出された上記第１述語情報と上記第２属性情報あるいは上記第１属性情報と上記第２述語情報の標準内積の結果に依存するように構成されている、
暗号通信方法。
【０３８３】
［アイテム２６］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける暗号化装置であって、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部と
を含む暗号化装置。
【０３８４】
［アイテム２７］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける暗号化装置であって、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部と
を含む暗号化装置。
【０３８５】
［アイテム２８］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける鍵生成装置であって、
上記ポリシー情報で特定される一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部と
を含む鍵生成装置。
【０３８６】
［アイテム２９］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける鍵生成装置であって、
上記ポリシー情報で特定される一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から生成された属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部
を含む鍵生成装置。
【０３８７】
［アイテム３０］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
上記鍵生成装置が生成した復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号化装置が生成した暗号情報に対する復号処理を行う復号部
を含む復号装置。
【０３８８】
［アイテム３１］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
上記ポリシー情報で特定される一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置が生成した復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号化装置が生成した暗号情報に対する復号処理を行う復号部
を含む復号装置。
【０３８９】
［アイテム３２］
アイテム２６またはアイテム２７に記載の暗号化装置としてコンピュータを機能させるためのプログラム。
【０３９０】
［アイテム３３］
アイテム２８またはアイテム２９に記載の鍵生成装置としてコンピュータを機能させるためのプログラム。
【０３９１】
［アイテム３４］
アイテム３０またはアイテム３１に記載の復号装置としてコンピュータを機能させるためのプログラム。
【０３９２】
［アイテム３５］
アイテム３２に記載のプログラム、アイテム３３に記載のプログラム、アイテム３４に記載のプログラムのうち少なくともいずれかを格納したコンピュータ読み取り可能な記憶媒体。
【０３９３】
第２の観点から本発明を総括すると、下記のとおりである。なお、アイテム番号をリセットして、１から順番にアイテム番号を割り当てる。
【０３９４】
［アイテム１］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【０３９５】
［アイテム２］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記第１の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記第１の復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第１の復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記第２の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記第２の復号装置の送信部が、上記第３属性情報または上記第３述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第２の復号装置から上記第３属性情報または上記第３述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
を有する暗号通信方法。
【０３９６】
［アイテム３］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと
を有する暗号通信方法。
【０３９７】
［アイテム４］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号情報を第１の復号装置に送信する暗号情報送信ステップと、
上記第１の復号装置の受信部が、上記暗号化装置から上記暗号情報を受信する暗号情報受信ステップと、
上記第１の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第１の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記第１の復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第１の復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第１の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第１の復号鍵を上記第１の復号装置に送信する復号鍵送信ステップと、
上記第１の復号装置の受信部が、上記鍵生成装置から上記第１の復号鍵を受信する復号鍵受信ステップと、
上記第１の復号装置の復号部が、上記第１の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
上記第１の復号装置の転送部が、上記暗号情報を当該第１の復号装置以外の第２の復号装置に転送する転送ステップと、
上記第２の復号装置の受信部が、上記暗号情報を上記第１の復号装置から受信する受信ステップと、
上記第２の復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該第２の復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第３属性情報と言う）または述語情報（以下、第３述語情報と言う）を得る第３述語論理情報取得ステップと、
上記第２の復号装置の送信部が、上記第３属性情報または上記第３述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記第２の復号装置から上記第３属性情報または上記第３述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第３属性情報または上記第３述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる第２の復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記第２の復号鍵を上記第２の復号装置に送信する復号鍵送信ステップと、
上記第２の復号装置の受信部が、上記鍵生成装置から上記第２の復号鍵を受信する復号鍵受信ステップと、
上記第２の復号装置の復号部が、上記第２の復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号ステップと、
を有する暗号通信方法。
【０３９８】
［アイテム５］
アイテム１またはアイテム２に記載の暗号通信方法において、
上記暗号化ステップは、上記暗号化部が上記共通鍵で平文を暗号化した暗号文も求める暗号文生成ステップを含み、
上記復号ステップは、上記復号部が、上記復号処理で得られた上記共通鍵を用いる上記暗号文の第２復号処理、または、上記復号処理で得られた上記共通鍵の生成に用いる上記情報から生成された共通鍵を用いる上記暗号文の第２復号処理を行う第２復号ステップを含む、
暗号通信方法。
【０３９９】
［アイテム６］
アイテム１からアイテム５のいずれかに記載の暗号通信方法において、
上記復号装置の取得部が、上記利用者に対応する上記属性指定情報および／または上記述語指定情報を記憶する記憶媒体から、当該復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を取得する取得ステップ
を有する暗号通信方法。
【０４００】
［アイテム７］
アイテム１またはアイテム３に記載の暗号通信方法において、
上記復号装置の送信部が、当該復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記鍵生成装置に送信するユーザ情報送信ステップと、
上記鍵生成装置の受信部が、上記復号装置から上記利用者に対応する上記属性指定情報または上記述語指定情報を受信するユーザ情報受信ステップと
を有する暗号通信方法。
【０４０１】
［アイテム８］
アイテム１からアイテム６のいずれかに記載の暗号通信方法において、
上記暗号システムは、上記利用者に対応する上記属性指定情報および／または上記述語指定情報を記憶する記憶部を備える、一つまたは複数のユーザ情報管理装置を含んでおり、
上記鍵生成装置のユーザ情報取得部が、上記復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記ユーザ情報管理装置から取得するユーザ情報取得ステップ
を有する暗号通信方法。
【０４０２】
［アイテム９］
アイテム１からアイテム８のいずれかに記載の暗号通信方法において、
各上記鍵生成装置につき一つまたは複数の上記変換規則情報ペアが予め定められており、
上記暗号システムは、各上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部を備える、一つまたは複数の変換規則情報ペア管理装置を含んでおり、
上記暗号化装置の変換規則情報ペア取得部が、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得ステップと、
上記復号装置の変換規則情報ペア取得部が、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得ステップと
を有する暗号通信方法。
【０４０３】
［アイテム１０］
アイテム１からアイテム９のいずれかに記載の暗号通信方法において、
上記ポリシー情報の特定対象が上記属性用変換規則情報のみ、あるいは、上記述語用変換規則情報のみ、あるいは、上記属性用変換規則情報および上記述語用変換規則情報であることが、上記鍵生成装置ごとに予め定められている、
暗号通信方法。
【０４０４】
［アイテム１１］
アイテム１からアイテム１０のいずれかに記載の暗号通信方法において、
代数構造Ｋを有限環または有限体として、
上記第１、第２属性情報ならびに上記第１、第２述語情報は、上記Ｋの元を成分とするベクトルであり、
上記復号ステップでは、上記復号部が、上記暗号情報と上記復号鍵を入力とし、上記第１述語情報と上記第２属性情報との標準内積または上記第１属性情報と上記第２述語情報との標準内積の結果に依存する演算を行う、
暗号通信方法。
【０４０５】
［アイテム１２］
アイテム１１に記載の暗号通信方法において、
上記公開鍵は、Ｋ上の加群Ｖの元の集合であり、
上記秘密鍵は、上記加群Ｖの双対加群Ｖ＊の元の集合であり、
上記復号鍵は、上記双対加群Ｖ＊の元であり、
上記暗号化ステップでは、上記暗号化部が、上記公開鍵の元に対して上記第１属性情報の成分を係数とするスカラー倍を行う演算または上記公開鍵の元に対して上記第１述語情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記暗号情報を求め、
上記鍵生成ステップでは、上記鍵生成部が、上記秘密鍵の元に対して上記第２述語情報の成分を係数とするスカラー倍を行う演算または上記秘密鍵の元に対して上記第２属性情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記復号鍵を求め、
上記復号部の上記復号処理に用いられる上記演算は、双線形性を有し、上記演算の結果が、双線形性に基づき上記暗号情報と上記復号鍵から取り出された上記第１述語情報と上記第２属性情報あるいは上記第１属性情報と上記第２述語情報の標準内積の結果に依存するように構成されている、
暗号通信方法。
【０４０６】
［アイテム１３］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部と、
上記暗号情報を当該復号装置以外の一つ以上の復号装置に転送する転送部とを含む、
暗号システム。
【０４０７】
［アイテム１４］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵とを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報とを求める暗号化部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部と、
上記暗号情報を当該復号装置以外の一つ以上の復号装置に転送する転送部とを含み、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【０４０８】
［アイテム１５］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部と、
上記暗号情報を当該復号装置以外の一つ以上の復号装置に転送する転送部とを含む、
暗号システム。
【０４０９】
［アイテム１６］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、平文とを用いて、述語暗号アルゴリズムに則り、当該平文に対応する暗号情報を求める暗号化部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号情報に対する復号処理を行う復号部と、
上記暗号情報を当該復号装置以外の一つ以上の復号装置に転送する転送部とを含み、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【０４１０】
［アイテム１７］
アイテム１３またはアイテム１４に記載の暗号システムにおいて、
上記暗号化装置の上記暗号化部は、上記共通鍵で平文を暗号化した暗号文も求め、
上記復号装置の上記復号部は、上記復号処理で得られた上記共通鍵を用いる上記暗号文の第２復号処理、または、上記復号処理で得られた上記共通鍵の生成に用いる上記情報から生成された共通鍵を用いる上記暗号文の第２復号処理も行う、
暗号システム。
【０４１１】
［アイテム１８］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
上記鍵生成装置が生成した復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号化装置が生成した暗号情報に対する復号処理を行う復号部と、
上記暗号情報を当該復号装置以外の一つ以上の復号装置に転送する転送部と
を含む復号装置。
【０４１２】
［アイテム１９］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、複数の復号装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
上記ポリシー情報で特定される一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記鍵生成装置が生成した復号鍵を用いて、述語暗号アルゴリズムに則り、上記暗号化装置が生成した暗号情報に対する復号処理を行う復号部と、
上記暗号情報を当該復号装置以外の一つ以上の復号装置に転送する転送部と
を含む復号装置。
【０４１３】
［アイテム２０］
アイテム１８またはアイテム１９に記載の復号装置としてコンピュータを機能させるためのプログラム。
【０４１４】
［アイテム２１］
アイテム２０に記載のプログラムを格納したコンピュータ読み取り可能な記憶媒体。
【０４１５】
第３の観点から本発明を総括すると、下記のとおりである。なお、アイテム番号をリセットして、１から順番にアイテム番号を割り当てる。
【０４１６】
［アイテム１］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う、
暗号システム。
【０４１７】
［アイテム２］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、ブラウザ部と、中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行い、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【０４１８】
［アイテム３］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信部とを含み、
上記鍵生成装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成部とを含み、
上記復号装置は、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う、
暗号システム。
【０４１９】
［アイテム４］
述語暗号を用いる暗号システムであって、少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置は、
上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得部と、
上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化部とを含み、
上記コンテンツサーバ装置は、
各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信部とを含み、
上記復号装置は、
上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得部と、ブラウザ部と、中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記鍵生成装置から送られた復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行い、
上記鍵生成装置は、
上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成部とを含む、
暗号システム。
【０４２０】
［アイテム５］
アイテム１からアイテム４のいずれかに記載の暗号システムにおいて、
上記利用者に対応する上記属性指定情報および／または上記述語指定情報は記憶媒体に記憶されており、
上記復号装置は、当該復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記記憶媒体から取得するユーザ情報取得部を含む、
暗号システム。
【０４２１】
［アイテム６］
アイテム１またはアイテム３に記載の暗号システムにおいて、
上記鍵生成装置が用いる、上記復号装置の利用者に対応する上記属性指定情報または上記述語指定情報は、上記復号装置から取得した情報である、
暗号システム。
【０４２２】
［アイテム７］
アイテム１からアイテム６のいずれかに記載の暗号システムにおいて、
上記暗号システムは、一つまたは複数のユーザ情報管理装置をさらに含み、
各上記ユーザ情報管理装置は、上記利用者に対応する上記属性指定情報および／または上記述語指定情報を記憶する記憶部を含み、
上記鍵生成装置は、上記復号装置の利用者に対応する上記属性指定情報または上記述語指定情報を上記ユーザ情報管理装置から取得するユーザ情報取得部を含む、
暗号システム。
【０４２３】
［アイテム８］
アイテム１からアイテム７のいずれかに記載の暗号システムにおいて、
各上記鍵生成装置につき一つまたは複数の上記変換規則情報ペアが予め定められており、
上記暗号システムは、一つまたは複数の変換規則情報ペア管理装置をさらに含み、
各上記変換規則情報ペア管理装置は、各上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部を含み、
上記暗号化装置は、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得部を含み、
上記復号装置は、上記変換規則情報ペア管理装置から上記変換規則情報ペアを取得する変換規則情報ペア取得部を含む、
暗号システム。
【０４２４】
［アイテム９］
アイテム１からアイテム７のいずれかに記載の暗号システムにおいて、
各上記鍵生成装置につき一つまたは複数の上記変換規則情報ペアが予め定められており、
各上記鍵生成装置は、当該鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部をさらに含み、
各上記暗号化装置は、少なくとも一つ以上の上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部をさらに含み、
各上記復号装置は、少なくとも一つ以上の上記鍵生成装置に対応する各上記変換規則情報ペアを記憶する記憶部をさらに含む、
暗号システム。
【０４２５】
［アイテム１０］
アイテム１からアイテム９のいずれかに記載の暗号システムにおいて、
上記ポリシー情報の特定対象が上記属性用変換規則情報のみ、あるいは、上記述語用変換規則情報のみ、あるいは、上記属性用変換規則情報および上記述語用変換規則情報であることが、上記鍵生成装置ごとに予め定められている、
暗号システム。
【０４２６】
［アイテム１１］
アイテム１からアイテム１０のいずれかに記載の暗号システムにおいて、
代数構造Ｋを有限環または有限体として、
上記第１、第２属性情報ならびに上記第１、第２述語情報は、上記Ｋの元を成分とするベクトルであり、
上記復号部の上記復号処理では、上記第１述語情報と上記第２属性情報との標準内積または上記第１属性情報と上記第２述語情報との標準内積の結果に依存する演算が行われる、
暗号システム。
【０４２７】
［アイテム１２］
アイテム１１に記載の暗号システムにおいて、
上記公開鍵は、Ｋ上の加群Ｖの元の集合であり、
上記秘密鍵は、上記加群Ｖの双対加群Ｖ＊の元の集合であり、
上記復号鍵は、上記双対加群Ｖ＊の元であり、
上記暗号化部は、上記公開鍵の元に対して上記第１属性情報の成分を係数とするスカラー倍を行う演算または上記公開鍵の元に対して上記第１述語情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記暗号情報を求め、
上記鍵生成部は、上記秘密鍵の元に対して上記第２述語情報の成分を係数とするスカラー倍を行う演算または上記秘密鍵の元に対して上記第２属性情報の成分を係数とするスカラー倍を行う演算を含む演算を行うことで上記復号鍵を求め、
上記復号部の上記復号処理に用いられる上記演算は、双線形性を有し、上記演算の結果が、双線形性に基づき上記暗号情報または上記暗号化コンテンツと上記復号鍵から取り出された上記第１述語情報と上記第２属性情報あるいは上記第１属性情報と上記第２述語情報の標準内積の結果に依存するように構成されている、
暗号システム。
【０４２８】
［アイテム１３］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツとこれに対応する上記暗号情報を上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号情報と上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツと上記暗号情報を受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【０４２９】
［アイテム１４］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵で当該コンテンツを暗号化した暗号化コンテンツとを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツとこれに対応する上記暗号情報を上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツと上記暗号情報を受信する受信ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号情報の復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【０４３０】
［アイテム１５］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツを上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツを受信する受信ステップと、
上記鍵生成装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、上記復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【０４３１】
［アイテム１６］
少なくとも、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、述語暗号を用いる暗号システムにおける暗号通信方法であって、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められており、
上記暗号化装置の第１述語論理情報取得部が、上記変換規則情報ペアの中から選択された一つの変換規則情報ペアに含まれる上記属性用変換規則情報と上記述語用変換規則情報のうち、当該暗号化装置の入力情報が属性指定情報または述語指定情報のいずれであるかに応じて上記ポリシー情報と共に選択されたいずれか一方の変換規則情報を用いて、当該入力情報から属性情報（以下、第１属性情報と言う）または述語情報（以下、第１述語情報と言う）を得る第１述語論理情報取得ステップと、
上記暗号化装置の暗号化部が、上記第１属性情報または上記第１述語情報と、上記鍵生成装置の公開鍵と、コンテンツとを用いて、述語暗号アルゴリズムに則り、当該コンテンツを暗号化した暗号化コンテンツを求める暗号化ステップと、
上記暗号化装置の送信部が、上記暗号化コンテンツを上記コンテンツサーバ装置に送信する送信ステップと、
上記コンテンツサーバ装置の記憶部が、各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶ステップと、
上記復号装置のブラウザ部が、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行う取得要求処理ステップと、
上記復号装置の中継部が、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信する送信ステップと、
上記コンテンツサーバ装置の送信部が、上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信ステップと、
上記復号装置の受信部が、上記コンテンツサーバ装置から上記暗号化コンテンツを受信する受信ステップと、
上記復号装置の第２述語論理情報取得部が、上記ポリシー情報で特定される上記一方の変換規則情報とペアになっている他方の変換規則情報を用いて、当該復号装置の利用者に対応する属性指定情報または述語指定情報から、属性情報（以下、第２属性情報と言う）または述語情報（以下、第２述語情報と言う）を得る第２述語論理情報取得ステップと、
上記復号装置の送信部が、上記第２属性情報または上記第２述語情報を上記鍵生成装置に送信する論理情報送信ステップと、
上記鍵生成装置の受信部が、上記復号装置から上記第２属性情報または上記第２述語情報を受信する論理情報受信ステップと、
上記鍵生成装置の鍵生成部が、上記第２属性情報または上記第２述語情報と、当該鍵生成装置の秘密鍵とを用いて、上記暗号化コンテンツの復号に用いる復号鍵を生成する鍵生成ステップと、
上記鍵生成装置の送信部が、上記復号鍵を上記復号装置に送信する復号鍵送信ステップと、
上記復号装置の受信部が、上記鍵生成装置から上記復号鍵を受信する復号鍵受信ステップと、
上記復号装置の中継部が、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う復号ステップと、
上記復号装置のブラウザ部が、上記暗号化コンテンツから復号されたコンテンツを表示する表示ステップと
を有する暗号通信方法。
【０４３２】
［アイテム１７］
少なくとも、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵でコンテンツを暗号化した暗号化コンテンツとを求める、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、上記暗号化コンテンツと上記暗号情報を記憶している一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号情報に対する復号処理と、当該復号処理で得られた上記共通鍵を用いて、上記コンテンツサーバ装置から取得した上記暗号化コンテンツを復号するコンテンツ取得処理を行う、
復号装置。
【０４３３】
［アイテム１８］
少なくとも、述語暗号アルゴリズムに則り、述語暗号アルゴリズムに則り、コンテンツを暗号化した暗号化コンテンツを求める、一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、上記暗号化コンテンツを記憶している一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおける復号装置であって、
ブラウザ部と中継部とを含み、
上記ブラウザ部は、上記コンテンツサーバ装置に対する上記暗号化コンテンツの取得要求処理を行い、上記暗号化コンテンツから復号されたコンテンツを表示し、
上記中継部は、上記ブラウザ部からの上記取得要求を上記コンテンツサーバ装置へ送信し、上記復号鍵を用いて、述語暗号アルゴリズムに則り、上記コンテンツサーバ装置から取得した上記暗号化コンテンツに対する復号処理を行う、
復号装置。
【０４３４】
［アイテム１９］
少なくとも、述語暗号アルゴリズムに則り、共通鍵と、当該共通鍵または当該共通鍵の生成に用いる情報に対応する暗号情報と、当該共通鍵でコンテンツを暗号化した暗号化コンテンツとを求める一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおけるコンテンツサーバ装置であって、
各上記暗号化装置から送られた上記暗号情報および上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツとこれに対応する上記暗号情報を当該復号装置に送信する送信部と
を含むコンテンツサーバ装置。
【０４３５】
［アイテム２０］
少なくとも、述語暗号アルゴリズムに則り、述語暗号アルゴリズムに則り、コンテンツを暗号化した暗号化コンテンツを求める一つまたは複数の暗号化装置と、一つまたは複数の鍵生成装置と、一つまたは複数の復号装置と、一つまたは複数のコンテンツサーバ装置とを含み、
各上記鍵生成装置につき秘密鍵とこの秘密鍵に対応する公開鍵が予め定められており、
属性を指定する情報（以下、属性指定情報と言う）を述語暗号アルゴリズムに用いられる属性情報に変換するための変換規則を規定している情報（以下、属性用変換規則情報と言う）と述語を指定する情報（以下、述語指定情報と言う）を当該述語暗号アルゴリズムに用いられる述語情報に変換するための変換規則を規定している情報（以下、述語用変換規則情報と言う）とのペアである変換規則情報ペアが予め一つまたは複数定められており、
上記属性用変換規則情報と上記述語用変換規則情報のうちいずれであるかを特定するためのポリシー情報が予め定められている、述語暗号を用いる暗号システムにおけるコンテンツサーバ装置であって、
各上記暗号化装置から送られた上記暗号化コンテンツを記憶する記憶部と、
上記復号装置からの要求に応じて上記暗号化コンテンツを当該復号装置に送信する送信部と
を含むコンテンツサーバ装置。
【０４３６】
［アイテム２１］
アイテム１７またはアイテム１８に記載の復号装置としてコンピュータを機能させるためのプログラム。
【０４３７】
［アイテム２２］
アイテム１９またはアイテム２０に記載のコンテンツサーバ装置としてコンピュータを機能させるためのプログラム。
【０４３８】
［アイテム２３］
アイテム２１に記載のプログラムおよび／またはアイテム２２に記載のプログラムを格納したコンピュータ読み取り可能な記憶媒体。
【図１】
2010123122.tif 000027
【図２】
2010123122.tif 000028
【図３】
2010123122.tif 000029
【図４】
2010123122.tif 000030
【図５】
2010123122.tif 000031
【図６】
2010123122.tif 000032
【図７】
2010123122.tif 000033
【図８】
2010123122.tif 000034
【図９】
2010123122.tif 000035
【図１０】
2010123122.tif 000036
【図１１】
2010123122.tif 000037
【図１２】
2010123122.tif 000038
【図１３】
2010123122.tif 000039
【図１４】
2010123122.tif 000040
【図１５】
2010123122.tif 000041
【図１６】
2010123122.tif 000042
【図１７】
2010123122.tif 000043
【図１８】
2010123122.tif 000044
【図１９】
2010123122.tif 000045
【図２０】
2010123122.tif 000046
【図２１】
2010123122.tif 000047
【図２２】
2010123122.tif 000048
【図２３】
2010123122.tif 000049
【図２４】
2010123122.tif 000050
【図２５】
2010123122.tif 000051
【図２６】
2010123122.tif 000052
【図２７】
2010123122.tif 000053
【図２８】
2010123122.tif 000054
【図２９】
2010123122.tif 000055
【図３０】
2010123122.tif 000056
【図３１】
2010123122.tif 000057
【図３２】
2010123122.tif 000058
【図３３】
2010123122.tif 000059
【図３４】
2010123122.tif 000060
【図３５】
2010123122.tif 000061
【図３６】
2010123122.tif 000062
【図３７】
2010123122.tif 000063
【図３８】
2010123122.tif 000064
【図３９】
2010123122.tif 000065
【図４０】
2010123122.tif 000066
【図４１】
2010123122.tif 000067
【図４２】
2010123122.tif 000068
【図４３】
2010123122.tif 000069
【図４４】
2010123122.tif 000070
【図４５】
2010123122.tif 000071
【図４６】
2010123122.tif 000072
【図４７】
2010123122.tif 000073
【図４８】
2010123122.tif 000074
【図４９】
2010123122.tif 000075
【図５０】
2010123122.tif 000076
【図５１】
2010123122.tif 000077
【図５２】
2010123122.tif 000078
【図５３】
2010123122.tif 000079
【図５４】
2010123122.tif 000080
【図５５】
2010123122.tif 000081
【図５６】
2010123122.tif 000082
【図５７】
2010123122.tif 000083
【図５８】
2010123122.tif 000084
【図５９】
2010123122.tif 000085
【図６０】
2010123122.tif 000086
【図６１】
2010123122.tif 000087
【図６２】
2010123122.tif 000088
【図６３】
2010123122.tif 000089
【図６４】
2010123122.tif 000090
【図６５】
2010123122.tif 000091
【図６６】
2010123122.tif 000092
【図６７】
2010123122.tif 000093
【図６８】
2010123122.tif 000094
【図６９】
2010123122.tif 000095
【図７０】
2010123122.tif 000096
【図７１】
2010123122.tif 000097
【図７２】
2010123122.tif 000098
【図７３】
2010123122.tif 000099
【図７４】
2010123122.tif 000100
【図７５】
2010123122.tif 000101
【図７６】
2010123122.tif 000102
【図７７】
2010123122.tif 000103
【図７８】
2010123122.tif 000104
【図７９】
2010123122.tif 000105
【図８０】
2010123122.tif 000106
【図８１】
2010123122.tif 000107
【図８２】
2010123122.tif 000108
【国際調査報告】
2010123122.tif 000109
2010123122.tif 000110
2010123122.tif 000111
2010123122.tif 000112