(57)【要約】【課題】必要な場合のみ、暗号システム特権者による復号化を許可する。【解決手段】暗号データ生成装置１は、セッションを特定する情報であるセッション鍵事前情報を生成し、生成したセッション鍵事前情報および特権者公開鍵Ｐｐｕｂに基づいて生成されたユーザ公開鍵の組に基づいて、セッション鍵を生成し、セッション鍵事前情報と特権者公開鍵とを使用し、特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、セッション鍵を生成するのに必要な情報である復号化情報を生成し、電子データをセッション鍵で暗号化し、暗号化した電子データに復号化情報を付与することにより、暗号データを生成する。【選択図】図１
2009188812.tif 000002
【特許請求の範囲】
【請求項１】
暗号化された電子データを送受信する暗号システムに具備された暗号データ生成装置であって、
セッションを特定する情報であるセッション鍵事前情報を生成するセッション鍵事前情報生成部と、
前記セッション鍵事前情報生成部が生成したセッション鍵事前情報と、前記暗号システムを管理するための特定の権限を有する暗号システム特権者により公開される鍵である特権者公開鍵に基づいて生成されたユーザ公開鍵との組に基づいて、セッション鍵を生成するセッション鍵生成部と、
前記暗号システム特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、前記セッション鍵事前情報と前記特権者公開鍵とを用いて、前記セッション鍵を生成するための情報である復号化情報を生成する復号化情報生成部と、
電子データを前記セッション鍵を用いて暗号化し、該暗号化した電子データに前記復号化情報を付与した暗号データを生成する暗号化部とを有する暗号データ生成装置。
【請求項２】
前記復号化情報生成部は、
前記復号可否情報が前記暗号システム特権者による復号化の不許可を示す場合、前記セッション鍵事前情報と前記特権者公開鍵との積であるユーザ用積情報を算出し、該ユーザ用積情報を前記復号化情報として生成することを特徴とする請求項1に記載の暗号データ生成装置。
【請求項３】
前記復号化情報生成部は、
前記復号可否情報が前記暗号システム特権者による復号化の許可を示す場合、前記セッション鍵事前情報と前記ユーザ公開鍵との積である特権者用積情報を算出し、
前記セッション鍵事前情報と前記特権者公開鍵との積であるユーザ用積情報を算出し、
前記ユーザ用積情報と前記特権者用積情報との組を前記復号化情報として生成することを特徴とする請求項1に記載の暗号データ生成装置。
【請求項４】
前記セッション鍵生成部は、バイリニアペアリングに従って、前記セッション鍵を生成することを特徴とする請求項1に記載の暗号データ生成装置。
【請求項５】
暗号化された電子データを送受信する暗号システムに具備された特権者装置であって、
外部から送信されてきた暗号データに含まれる復号化情報から、前記暗号システムを管理するための特定の権限を有する暗号システム特権者が暗号データを復号するための特権者用積情報を抽出する特権者用積情報抽出部と、
前記特権者用積情報抽出部が前記特権者用積情報を抽出できたか否かを判別する特権者用積情報判別部と、
前記特権者用積情報判別部が前記特権者用積情報を抽出できたと判別した場合に、前記特権者用積情報抽出部が抽出した特権者用積情報と、前記暗号システム特権者のみによって使用される特権者秘密鍵とに基づいて、前記暗号データを復号するための鍵である特権者用セッション鍵を生成するセッション鍵生成部と、
前記セッション鍵生成部が生成した特権者用セッション鍵を用いて、前記暗号データを復号する復号部とを有する特権者装置。
【請求項６】
暗号化された電子データを送受信する暗号システムに具備されたユーザ装置であって、
外部から送信されてきた暗号データに含まれる復号化情報から、前記暗号システムを利用する者である暗号システムユーザが暗号データを復号するためのユーザ用積情報を抽出するユーザ用積情報抽出部と、
前記ユーザ用積情報抽出部が抽出したユーザ用積情報と、前記暗号ユーザのみによって使用されるユーザ秘密鍵とに基づいて、前記暗号データを復号するための鍵であるユーザ用セッション鍵を生成するセッション鍵生成部と、
前記セッション鍵生成部が生成したユーザ用セッション鍵を用いて、前記暗号データを復号する復号部とを有するユーザ装置。
【請求項７】
請求項１に記載の暗号データ生成装置と、
請求項５に記載の特権者装置と、
請求項６に記載のユーザ装置と、
から構成される暗号システム。
【請求項８】
暗号化データを生成する暗号データ生成装置と前記生成された暗号化データを復号する特権者装置とを具備する暗号システムにおける暗号化データを生成および復号する方法であって、
前記暗号データ生成装置が、セッションを特定する情報であるセッション鍵事前情報を生成するセッション鍵事前情報生成処理と、
前記暗号データ生成装置が、前記セッション鍵事前情報生成処理にて生成したセッション鍵事前情報と、前記暗号システムを管理するための特定の権限を有する暗号システム特権者により公開される鍵である特権者公開鍵に基づいて生成されたユーザ公開鍵との組に基づいて、セッション鍵を生成するセッション鍵生成処理と、
前記暗号データ生成装置が、前記暗号システム特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、前記セッション鍵事前情報と前記特権者公開鍵とを用いて、前記セッション鍵を生成するための情報である復号化情報を生成する復号化情報生成処理と、
前記暗号データ生成装置が、電子データを前記セッション鍵を用いて暗号化し、該暗号化した電子データに前記復号化情報を付与した暗号データを生成する暗号化処理と、
前記特権者装置が、前記暗号化処理にて生成した暗号データに含まれる前記復号化情報から、前記暗号システムを管理するための特定の権限を有する暗号システム特権者が暗号データを復号するための特権者用積情報を抽出する特権者用積情報抽出処理と、
前記特権者装置が、前記特権者用積情報抽出処理にて前記特権者用積情報を抽出できたか否かを判別する特権者用積情報判別処理と、
前記特権者装置が、前記特権者用積情報判別処理にて前記特権者用積情報を抽出できたと判別した場合に、前記特権者用積情報抽出処理にて抽出した特権者用積情報と、前記暗号システム特権者のみによって使用される特権者秘密鍵とに基づいて、前記暗号データを復号するための鍵である特権者用セッション鍵を生成する特権者セッション鍵生成処理と、
前記特権者装置が、前記特権者セッション鍵生成処理にて生成した特権者用セッション鍵を用いて、前記暗号データを復号する復号処理とを有する方法。
【請求項９】
前記復号化情報生成処理では、
前記復号可否情報が特権者による復号化の不許可を示す場合、前記セッション鍵事前情報と前記特権者公開鍵との積であるユーザ用積情報を算出し、該ユーザ用積情報を前記復号化情報として生成することを特徴とする請求項８に記載の方法。
【請求項１０】
前記復号化情報生成処理では、
前記復号可否情報が特権者による復号化の許可を示す場合、前記セッション鍵事前情報と前記ユーザ公開鍵との積である特権者用積情報を算出し、
前記セッション鍵事前情報と前記特権者公開鍵との積であるユーザ用積情報を算出し、
前記ユーザ用積情報と前記特権者用積情報との組を前記復号化情報として生成することを特徴とする請求項８に記載の方法。
【請求項１１】
前記セッション鍵生成処理では、バイリニアペアリングに従って、前記セッション鍵を生成することを特徴とする請求項８に記載の方法。
【請求項１２】
セッションを特定する情報であるセッション鍵事前情報を生成するセッション鍵事前情報生成手順と、
前記セッション鍵事前情報生成手順にて生成したセッション鍵事前情報と、暗号化された電子データを送受信する暗号システムを管理するための特定の権限を有する暗号システム特権者により公開される鍵である特権者公開鍵に基づいて生成されたユーザ公開鍵との組に基づいて、セッション鍵を生成するセッション鍵生成手順と、
前記暗号システム特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、前記セッション鍵事前情報と前記特権者公開鍵とを用いて、前記セッション鍵を生成するための情報である復号化情報を生成する復号化情報生成手順と、
電子データを前記セッション鍵を用いて暗号化し、該暗号化した電子データに前記復号化情報を付与した暗号データを生成する暗号化手順と、
前記暗号化手順にて生成した暗号データに含まれる前記復号化情報から、前記暗号システムを管理するための特定の権限を有する暗号システム特権者が暗号データを復号するための特権者用積情報を抽出する特権者用積情報抽出手順と、
前記特権者用積情報抽出手順にて前記特権者用積情報を抽出できたか否かを判別する特権者用積情報判別手順と、
前記特権者用積情報判別手順にて前記特権者用積情報を抽出できたと判別した場合に、前記特権者用積情報抽出手順にて抽出した特権者用積情報と、前記暗号システム特権者のみによって使用される特権者秘密鍵とに基づいて、前記暗号データを復号するための鍵である特権者用セッション鍵を生成する特権者セッション鍵生成手順と、
前記特権者セッション鍵生成手順にて生成した特権者用セッション鍵を用いて、前記暗号データを復号する復号手順とをコンピュータに実行させるプログラム。
【請求項１３】
前記復号化情報生成手順では、
前記復号可否情報が特権者による復号化の不許可を示す場合、前記セッション鍵事前情報と前記特権者公開鍵との積であるユーザ用積情報を算出し、該ユーザ用積情報を前記復号化情報として生成することを特徴とする請求項１２に記載のプログラム。
【請求項１４】
前記復号化情報生成手順では、
前記復号可否情報が特権者による復号化の許可を示す場合、前記セッション鍵事前情報と前記ユーザ公開鍵との積である特権者用積情報を算出し、
前記セッション鍵事前情報と前記特権者公開鍵との積であるユーザ用積情報を算出し、
前記ユーザ用積情報と前記特権者用積情報との組を前記復号化情報として生成することを特徴とする請求項１２に記載のプログラム。
【請求項１５】
前記セッション鍵生成手順では、バイリニアペアリングに従って、前記セッション鍵を生成することを特徴とする請求項１２に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子データを暗号化または復号するための暗号データ生成装置、特権者装置、ユーザ装置、暗号システム、方法およびプログラムに関する。
【背景技術】
【０００２】
現在、電子データを伝送するために、対称暗号方式および非対称暗号方式の２つの基本的な暗号方式が使われる。対称暗号方式では、暗号化と復号とにおいて、共通の秘密鍵を使用する。一方、非対称暗号方式では、公開鍵暗号として、秘密鍵と公開鍵とからなる1対の鍵を使用する。公開鍵で暗号化されるデータは秘密鍵でのみ復号される。
【０００３】
一般的に、企業、官公庁などの組織は機密情報を保持しており、機密情報を管理する必要がある。しかし、組織の内部者によって、機密情報を暗号化し、他者に伝送されるおそれがある。この問題を回避するためには、組織の暗号システム特権者が暗号化されたデータを復号し、データ内容を確認可能とする必要がある。
【０００４】
暗号化された電子データを暗号システム特権者が復号するための様々な復号方法が提案されている。
【０００５】
例えば、暗号化された電子データに対し、暗号システム特権者が復号する鍵回復方法が考えられている（例えば、特許文献１参照。）。この鍵回復方法では、暗号システム特権者が、暗号システムユーザの秘密鍵に関する情報をすべて保持および管理する。
【０００６】
また、例えば、暗号システム特権者が暗号システムユーザの秘密鍵を管理することなく、暗号化された電子データを復号化できる鍵回復システムが考えられている（例えば、特許文献２参照。）。この鍵回復システムでは、暗号システム特権者は、自己の秘密鍵を管理する。また、暗号システムユーザは、２つの秘密鍵を管理するとともに、電子データの暗号化用の４つの公開鍵を入手する。
【０００７】
また、例えば、送信側にて、自己の秘密鍵と公開情報とから求めた共通鍵を暗号化データに付加して送信し、受信側にて、自己が有する２つの秘密情報と公開情報とから共通鍵を求め、その共通鍵により暗号化データを復号するグループ通信方法が考えられている（例えば、特許文献３参照。）。
【特許文献１】特開平１１−０５５２４４号公報
【特許文献２】特開平１１−０８５０１５号公報
【特許文献３】特開２００２−１６４８７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載された鍵回復方法によれば、暗号システム特権者が、暗号システムユーザの秘密鍵に関する情報をすべて保持および管理する必要がある。そのため、鍵の管理が煩雑になってしまうという問題点がある。
【０００９】
特許文献２に記載された鍵回復システムによれば、暗号システム特権者は、暗号化された電子データを復号化するために、自己の秘密鍵を管理しなければならないという問題点がある。また、暗号システムユーザは、秘密鍵を２つ管理しなければならないという問題点がある。さらに、暗号システムユーザは、電子データの暗号化用に4つの公開鍵を入手しなければならないという問題点がある。
【００１０】
また、特許文献１〜３に開示された技術では、暗号システムユーザが自ら管理する暗号化されたデータに、暗号システム特権者用の復号化する情報を付与している。そのため、暗号システムユーザが、暗号システム特権者による暗号化されたデータの参照を所望しない場合でも、暗号化されたデータを暗号システム特権者に復号化されてしまうおそれがあるという問題点がある。
【００１１】
本発明は、上述した課題を解決する暗号データ生成装置、特権者装置、ユーザ装置、暗号システム、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明の暗号データ生成装置は、暗号化された電子データを送受信する暗号システムに具備された暗号データ生成装置であって、セッションを特定する情報であるセッション鍵事前情報を生成するセッション鍵事前情報生成部と、前記セッション鍵事前情報生成部が生成したセッション鍵事前情報と、前記暗号システムを管理するための特定の権限を有する暗号システム特権者により公開される鍵である特権者公開鍵に基づいて生成されたユーザ公開鍵との組に基づいて、セッション鍵を生成するセッション鍵生成部と、前記暗号システム特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、前記セッション鍵事前情報と前記特権者公開鍵とを用いて、前記セッション鍵を生成するための情報である復号化情報を生成する復号化情報生成部と、電子データを前記セッション鍵を用いて暗号化し、該暗号化した電子データに前記復号化情報を付与した暗号データを生成する暗号化部とを有する。
【００１３】
上記課題を解決するために、本発明の特権者装置は、暗号化された電子データを送受信する暗号システムに具備された特権者装置であって、外部から送信されてきた暗号データに含まれる復号化情報から、前記暗号システムを管理するための特定の権限を有する暗号システム特権者が暗号データを復号するための特権者用積情報を抽出する特権者用積情報抽出部と、前記特権者用積情報抽出部が前記特権者用積情報を抽出できたか否かを判別する特権者用積情報判別部と、前記特権者用積情報判別部が前記特権者用積情報を抽出できたと判別した場合に、前記特権者用積情報抽出部が抽出した特権者用積情報と、前記暗号システム特権者のみによって使用される特権者秘密鍵とに基づいて、前記暗号データを復号するための鍵である特権者用セッション鍵を生成するセッション鍵生成部と、前記セッション鍵生成部が生成した特権者用セッション鍵を用いて、前記暗号データを復号する復号部とを有する。
【００１４】
上記課題を解決するために、本発明のユーザ装置は、暗号化された電子データを送受信する暗号システムに具備されたユーザ装置であって、外部から送信されてきた暗号データに含まれる復号化情報から、前記暗号システムを利用する者である暗号システムユーザが暗号データを復号するためのユーザ用積情報を抽出するユーザ用積情報抽出部と、前記ユーザ用積情報抽出部が抽出したユーザ用積情報と、前記暗号ユーザのみによって使用されるユーザ秘密鍵とに基づいて、前記暗号データを復号するための鍵であるユーザ用セッション鍵を生成するセッション鍵生成部と、前記セッション鍵生成部が生成したユーザ用セッション鍵を用いて、前記暗号データを復号する復号部とを有する。
【００１５】
上記課題を解決するために、本発明の暗号システムは、請求項１に記載の暗号データ生成装置と、請求項５に記載の特権者装置と、請求項６に記載のユーザ装置と、から構成される。
【００１６】
上記課題を解決するために、本発明の方法は、暗号データ生成装置と特権者装置とを具備し、暗号化された電子データを送受信する暗号システムにおける暗号化データの生成および復号方法であって、暗号データ生成装置が、セッションを特定する情報であるセッション鍵事前情報を生成するセッション鍵事前情報生成処理と、前記暗号データ生成装置が、前記セッション鍵事前情報生成処理にて生成したセッション鍵事前情報と、前記暗号システムを管理するための特定の権限を有する暗号システム特権者により公開される鍵である特権者公開鍵に基づいて生成されたユーザ公開鍵との組に基づいて、セッション鍵を生成するセッション鍵生成処理と、前記暗号データ生成装置が、前記暗号システム特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、前記セッション鍵事前情報と前記特権者公開鍵とを用いて、前記セッション鍵を生成するための情報である復号化情報を生成する復号化情報生成処理と、前記暗号データ生成装置が、電子データを前記セッション鍵を用いて暗号化し、該暗号化した電子データに前記復号化情報を付与した暗号データを生成する暗号化処理と、前記特権者装置が、前記暗号化処理にて生成した暗号データに含まれる前記復号化情報から、前記暗号システムを管理するための特定の権限を有する暗号システム特権者が暗号データを復号するための特権者用積情報を抽出する特権者用積情報抽出処理と、前記特権者装置が、前記特権者用積情報抽出処理にて前記特権者用積情報を抽出できたか否かを判別する特権者用積情報判別処理と、前記特権者装置が、前記特権者用積情報判別処理にて前記特権者用積情報を抽出できたと判別した場合に、前記特権者用積情報抽出処理にて抽出した特権者用積情報と、前記暗号システム特権者のみによって使用される特権者秘密鍵とに基づいて、前記暗号データを復号するための鍵である特権者用セッション鍵を生成する特権者セッション鍵生成処理と、前記特権者装置が、前記特権者セッション鍵生成処理にて生成した特権者用セッション鍵を用いて、前記暗号データを復号する復号処理とを有する。
【００１７】
また、コンピュータに実行させるプログラムであって、セッションを特定する情報であるセッション鍵事前情報を生成するセッション鍵事前情報生成手順と、前記セッション鍵事前情報生成手順にて生成したセッション鍵事前情報と、暗号化された電子データを送受信する暗号システムを管理するための特定の権限を有する暗号システム特権者により公開される鍵である特権者公開鍵に基づいて生成されたユーザ公開鍵との組に基づいて、セッション鍵を生成するセッション鍵生成手順と、前記暗号システム特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、前記セッション鍵事前情報と前記特権者公開鍵とを用いて、前記セッション鍵を生成するための情報である復号化情報を生成する復号化情報生成手順と、電子データを前記セッション鍵を用いて暗号化し、該暗号化した電子データに前記復号化情報を付与した暗号データを生成する暗号化手順と、前記暗号化手順にて生成した暗号データに含まれる前記復号化情報から、前記暗号システムを管理するための特定の権限を有する暗号システム特権者が暗号データを復号するための特権者用積情報を抽出する特権者用積情報抽出手順と、前記特権者用積情報抽出手順にて前記特権者用積情報を抽出できたか否かを判別する特権者用積情報判別手順と、前記特権者用積情報判別手順にて前記特権者用積情報を抽出できたと判別した場合に、前記特権者用積情報抽出手順にて抽出した特権者用積情報と、前記暗号システム特権者のみによって使用される特権者秘密鍵とに基づいて、前記暗号データを復号するための鍵である特権者用セッション鍵を生成する特権者セッション鍵生成手順と、前記特権者セッション鍵生成手順にて生成した特権者用セッション鍵を用いて、前記暗号データを復号する復号手順とをコンピュータに実行させる。
【発明の効果】
【００１８】
本発明によれば、暗号化された電子データを送受信する暗号システムに具備された暗号データ生成装置にて、セッションを特定する情報であるセッション鍵事前情報を生成し、生成したセッション鍵事前情報と、暗号システムを管理するための特定の権限を有する暗号システム特権者により公開される鍵である特権者公開鍵に基づいて生成されたユーザ公開鍵との組に基づいて、セッション鍵を生成し、暗号システム特権者による復号化の許可または不許可を示す指定信号である復号可否情報に基づいて、セッション鍵事前情報と特権者公開鍵とを用いて、セッション鍵を生成するための情報である復号化情報を生成し、電子データをセッション鍵を用いて暗号化し、暗号化した電子データに復号化情報を付与した暗号データを生成する構成としたため、復号化が必要な場合のみ、暗号システム特権者に対して復号化を許可することが可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態に従った暗号システム（暗号データ生成装置、特権者装置、ユーザ装置、方法およびプログラムを含む）を説明する。
【００２０】
まず、暗号システムの全体構成について説明する。図１に示すように、本実施形態の暗号システムは、暗号データ生成装置１と、暗号データ復号装置２（特権者装置）と、暗号データ復号装置３（ユーザ装置）とから構成され、暗号化された電子データを送受信するものである。
【００２１】
暗号データ生成装置１は、暗号データ復号装置２からの送信により公開された特権者公開鍵Ｐｐｕｂおよび暗号データ復号装置３からの送信により公開されたユーザ公開鍵Ｕｐｕｂとを受信する。また、暗号データ生成装置１は、受信した特権者公開鍵Ｐｐｕｂおよびユーザ公開鍵Ｕｐｕｂを格納する。
【００２２】
また、暗号データ生成装置１は、特権者公開鍵Ｐｐｕｂおよびユーザ公開鍵Ｕｐｕｂを用いて、暗号システムユーザに送信する電子データを暗号化し、暗号データＥＤを生成する。
【００２３】
なお、暗号データ生成装置１は、暗号データＥＤを生成する際に、外部から入力された暗号システム特権者による復号の可否を示す情報（後述する「復号可否情報ｙｎ」）に対応して、暗号データＥＤを生成する。復号可否情報ｙｎが暗号システム特権者の復号化を許可する状態において、暗号データ生成装置１が暗号データＥＤを生成した場合、暗号データ復号装置２は、特権者秘密鍵ｘを用いて暗号データＥＤを復号可能である。
【００２４】
暗号データ復号装置２は、暗号システムを管理するための特定の権限を有する者である「暗号システム特権者」によって使用される「特権者装置」である。暗号データ復号装置２は、「特権者秘密鍵ｘ」と「特権者公開鍵Ｐｐｕｂ」との一対の鍵（以下、「特権者鍵ペア」という）を格納しており、暗号データ生成装置１により生成された暗号データＥＤを、特権者秘密鍵ｘを用いて復号する。暗号データ復号装置２の構成については特に限定しないが、例えば、一般的なＰＣ（Personal Computer）でもよい。
【００２５】
暗号データ復号装置３は、暗号システムを利用する者である「暗号システムユーザ」によって使用される「ユーザ装置」である。暗号データ復号装置３は、「ユーザ秘密鍵ｒ」と「ユーザ公開鍵Ｕｐｕｂ」との一対の鍵（以下、「ユーザ鍵ペア」という）を格納しており、暗号データ生成装置１から送信されてきた暗号データＥＤを、ユーザ秘密鍵ｒを用いて復号する。暗号データ復号装置３の構成については特に限定しないが、例えば、一般的なＰＣ（Personal Computer）でもよい。
【００２６】
つぎに、暗号データ生成装置１の構成について、詳細に説明する。図２に示すように、本実施形態の暗号データ生成装置１は、入力部１１と、電子データ格納部１２と、特権者復号選択部１３と、鍵格納部１４と、セッション鍵事前情報生成部１５と、セッション鍵生成部１６と、暗号化部１７と、出力部１８とを備えている。
【００２７】
入力部１１は、キーボード、マウスまたはタッチパネルなどで構成され、利用者が外部から各種のデータを入力するためのものである。外部から入力部１１に入力されるデータとは、例えば、暗号化の対象となる電子データ、各種の公開鍵の入力および復号可否情報ｙｎなどである。
【００２８】
ここで、入力部１１から入力される公開鍵とは、例えば、暗号システム特権者の公開鍵Ｐｐｕｂ、暗号システムユーザの公開鍵Ｕｐｕｂなどである。また、「復号可否情報ｙｎ」とは、暗号システム特権者による暗号データＥＤの復号の可否（「許可」と「不許可」とのいずれか）を示す情報であって、「指定信号」である。
【００２９】
電子データ格納部１２は、「電子データ格納処理」を実行し、入力部１１にて入力された暗号化対象の電子データを格納する。また、電子データ格納部１２は、格納した電子データを暗号化部１７に出力する。
【００３０】
特権者復号選択部１３は、「特権者復号選択処理」を実行し、暗号システム特権者によって入力部１１に入力された復号可否情報ｙｎに基づいて、暗号システム特権者用の復号化情報Ｄと暗号システムユーザ用の復号化情報Ｄとのいずれかを生成する。
【００３１】
また、特権者復号選択部１３は、復号可否判別部１３１と、復号化情報生成部１３２とを有する。
【００３２】
復号可否判別部１３１は、「復号可否判別処理」を実行し、入力部１１にて入力された「復号可否情報ｙｎ」を参照し、暗号システム特権者による復号化が許可されているか否かを判別する。
【００３３】
「復号化情報生成部１３２」は、「復号化情報生成処理」を実行し、鍵格納部１４から送信されてきた特権者公開鍵Ｐｐｕｂとユーザ公開鍵Ｕｐｕｂとを用いて、「復号化情報Ｄ」を生成する。
【００３４】
なお、復号化情報生成部１３２は、復号可否判別部１３１が判別した暗号システム特権者による復号化の可否に応じて、それぞれ異なる復号化情報Dを生成する。また、復号化情報生成部１３２は、生成した復号化情報Dを暗号化部１７に出力する。
【００３５】
「特権者用積情報生成部」である復号化情報生成部１３２は、復号化が許可されていると判別した場合、「特権者用積情報生成処理」を実行する。この「特権者用積情報生成処理」において、復号化情報生成部１３２は、セッション鍵事前情報ｓ、ユーザ公開鍵Ｕｐｕｂおよび特権者公開鍵Ｐｐｕｂに基づいて、「特権者用積情報ＰＩ」と「ユーザ用積情報ＵＩ」との組である復号化情報Ｄを生成する。
【００３６】
ここに、「特権者用積情報ＰＩ」とは、セッション鍵事前情報ｓとユーザ公開鍵Ｕｐｕｂとに基づいて生成された復号化情報Ｄである。
【００３７】
また、「ユーザ用積情報ＵＩ」とは、セッション鍵事前情報ｓと特権者公開鍵Ｐｐｕｂとに基づいて生成された復号化情報Ｄである。
【００３８】
また、「ユーザ用積情報生成部」である復号化情報生成部１３２は、復号化が許可されていないと判別した場合、「ユーザ用積情報生成処理」を実行する。この「ユーザ用積情報生成処理」において、復号化情報生成部１３２は、セッション鍵事前情報ｓおよび特権者公開鍵Ｐｐｕｂに基づいて、「ユーザ用積情報」である復号化情報Ｄを生成する。
【００３９】
鍵格納部１４は、メモリなどで構成され、「鍵格納処理」を実行し、入力部１１に入力された特権者公開鍵Ｐｐｕｂとユーザ公開鍵Ｕｐｕｂとを格納する。また、鍵格納部１４は、ランダム点Ｑを格納する。ここに、ランダム点Ｑとは、巡回乗法群Ｇの１要素である。
【００４０】
セッション鍵事前情報生成部１５は、「セッション鍵事前情報生成処理」を実行し、後述のセッション鍵Ｋを生成する際に必要で、かつ、セッションを特定するための情報である「セッション鍵事前情報ｓ」を生成する。
【００４１】
ここでいう「セッション鍵事前情報s」とは、巡回乗法群Zqの１要素である。また、セッション鍵事前情報生成部１５は、生成したセッション鍵事前情報sをセッション鍵生成部１６に出力する。
【００４２】
セッション鍵生成部１６は、「セッション鍵生成処理」を実行し、セッション鍵事前情報生成部１５にて生成されたセッション鍵事前情報sと、鍵格納部１４に格納されている特権者公開鍵Ｐｐｕｂ、ユーザ公開鍵Ｕｐｕｂおよびランダム点Ｑとを用いて、「セッション鍵K」を生成する。
【００４３】
ここに、「セッション鍵Ｋ」とは、電子データを暗号化するための鍵である。また、セッション鍵生成部１６は、生成したセッション鍵Kを暗号化部１７に出力する。
【００４４】
暗号化部１７は、「暗号化処理」を実行し、セッション鍵生成部１６にて生成されたセッション鍵Kを用いて、電子データ格納部１２から出力された電子データを暗号化する。ここで、電子データの暗号化方法については、特に限定しない。例えば、ＭＤ（Message Digest Algorithm）、ＳＨＡ（Secure Hash Algorithm）などの所定のハッシュ関数を用いて暗号化する方法でもよい。
【００４５】
また、暗号化部１７は、特権者復号化選択部１３から出力された復号化情報Ｄを自ら暗号化した電子データに付与する。これにより、暗号化部１７は、暗号データＥＤを生成し、電子データの暗号化を完了する。なお、以下では、復号化情報Ｄの付与後の暗号化された電子データを「暗号データＥＤ」という。また、暗号化部１７は、暗号データＥＤを出力部１８に送信する。
【００４６】
出力部１８は、「出力処理」を実行し、電子データの出力、暗号データＥＤの出力、暗号システム特権者に対する復号の可否を示す復号可否情報ｙｎの出力などを行う。
【００４７】
つぎに、暗号システム特権者が使用する暗号データ復号装置２の構成について、詳細に説明する。図３に示すように、「特権者装置」である暗号データ復号装置２は、通信部２１と、特権者鍵ペア格納部２２と、特権者用積情報抽出部２３と、特権者用積情報判別部２４と、セッション鍵生成部２５と、復号部２６とを有する。
【００４８】
通信部２１は、「通信処理」を実行し、暗号データ生成装置１や暗号データ復号装置３との通信を実行する。例えば、通信部２１は、暗号データ生成装置１への特権者公開鍵Ｐｐｕｂの送信、暗号データ生成装置１から送信されてきた暗号データＥＤの受信などを行う。なお、通信部２１と、暗号データ生成装置１または暗号データ復号装置３との間の通信形態については特に限定しない。例えば、有線または無線のいずれのネットワークを介して、通信してもよい。
【００４９】
特権者鍵ペア格納部２２は、「特権者鍵ペア格納処理」を実行し、「特権者秘密鍵ｘ」と「特権者公開鍵Ｐｐｕｂ」とを格納する。特権者秘密鍵ｘおよび特権者公開鍵Ｐｐｕｂの詳細な説明については、後述する。
【００５０】
特権者用積情報抽出部２３は、「特権者用積情報抽出処理」を実行し、通信部２１が受信した暗号データＥＤのうちから後述の特権者用積情報ＰＩを抽出する。
【００５１】
特権者用積情報判別部２４は、「特権者用積情報判別処理」を実行し、特権者用積情報抽出部２３が暗号データＥＤから特権者用積情報ＰＩを抽出できたか否かを判別する。
【００５２】
セッション鍵生成部２５は、「特権者セッション鍵生成処理」を実行し、通信部２１が受信した暗号データＥＤを暗号システム特権者が復号するための鍵である「特権者用セッション鍵ＰＫ」を生成し、生成した特権者用セッション鍵ＰＫを復号部２６に出力する。
【００５３】
復号部２６は、「復号処理」を実行し、セッション鍵生成部２５が生成した特権者用セッション鍵ＰＫを用いて、通信部２１が受信した暗号データＥＤを復号する。
【００５４】
ここで、暗号データ復号装置２（特権者装置）に格納された「特権者秘密鍵ｘ」と「特権者公開鍵Ｐｐｕｂ」とについて、詳細に説明する。
【００５５】
特権者秘密鍵ｘは、位数qである巡回乗法群Zqに属する１要素から選ばれる。なお、「位数」とは、四則演算を自由に適用できる代数的構造を備えた集合である「体」における「元」の濃度である。
【００５６】
特権者公開鍵Ｐｐｕｂは、位数qである巡回乗法群Gに属する１要素である。ここでいう巡回乗法群Ｇは、楕円曲線ヤコビアンまたは超楕円曲線ヤコビアンであり、生成者Pで生成される。また、巡回乗法群Gはバイリニアペアリングe: 巡回乗法群G×巡回乗法群G→巡回乗法群Zqを有する。このように、バイリングペアリングでは、双線形写像を使用するものである。そして、この場合、特権者公開鍵Ｐｐｕｂは、Ｐｐｕｂ = x・Pとして生成される。また、演算子「・」は、楕円曲線上の点を使用した整数の積を示すものである。
【００５７】
セッション鍵Ｋによるセッション鍵事前情報ｓの解読を困難とするためのバイリニアペアリング（bilinear pairs）の１つの形態である代数曲線の「Ｗｅｉｌペアリング」および「Ｔａｔｅペアリング」は、代数幾何学研究において非常に重要である。Ｗｅｉｌペアリングは、暗号化されたデータを検証するために用いられる。
【００５８】
暗号システムにバイリニアペアリングを応用した場合、例えば、離散対数問題（Discrete Logarithm Problem）の評価が可能である。Ｗｅｉｌペアリングを用いた「ＭＯＶ攻撃」およびＴａｔｅペアリングを用いた「ＦＲ攻撃」は、特定楕円曲線や超楕円曲線での離散対数問題を有限体での離散対数問題に縮小させた。また、近年、バイリニアペアリングが暗号学で多様に応用できることが明らかになった。
【００５９】
また、バイリニアペアリングｅ：Ｇ×Ｇ→Zqは、以下の式１ａおよび式１ｂで表されるバイリニアの条件と、以下の式２ａおよび式２ｂで表されるバイリニアの条件とのいずれかを満たすペアリングである。
【００６０】
【数１】
2009188812.tif 000003
【００６１】
【数２】
2009188812.tif 000004
【００６２】
さらに、上述の式１ａ、１ｂ、２ａ、２ｂにおいては、ｅ（Ｐ， Ｑ） ≠１を満たす生成者Ｐ ∈ 巡回乗法群Ｇ， ランダム点Ｑ ∈巡回乗法群Ｇが存在することが必要とされる。
【００６３】
つぎに、暗号システムユーザが使用する暗号データ復号装置３の構成について、詳細に説明する。図４に示すように、「ユーザ装置」である暗号データ復号装置３は、通信部３１と、ユーザ鍵ペア格納部３２と、ユーザ用積情報抽出部３３と、セッション鍵生成部３４と、復号部３５とを有する。
【００６４】
通信部３１は、「通信処理」を実行し、暗号データ生成装置１や暗号データ復号装置２との通信を実行する。例えば、通信部３１は、暗号データ生成装置１へのユーザ公開鍵Ｕｐｕｂの送信、暗号データ生成装置１から送信されてきた暗号データＥＤの受信などを行う。なお、通信部３１と、暗号データ生成装置１または暗号データ復号装置２との間の通信形態については特に限定しない。例えば、有線または無線のいずれのネットワークを介して、通信してもよい。
【００６５】
ユーザ鍵ペア格納部３２は、「ユーザ鍵ペア格納処理」を実行し、「ユーザ秘密鍵ｒ」と「ユーザ公開鍵Ｕｐｕｂ」とを格納する。ユーザ秘密鍵ｒおよびユーザ公開鍵Ｕｐｕｂの詳細な説明については、後述する。
【００６６】
ユーザ用積情報抽出部３３は、「ユーザ用積情報抽出処理」を実行し、通信部３１にて受信した暗号データＥＤから、後述のユーザ用積情報UＩを抽出する。
【００６７】
セッション鍵生成部３４は、「セッション鍵生成処理」を実行し、通信部３１が受信した暗号データＥＤを暗号システムユーザが復号するための鍵である「ユーザ用セッション鍵ＵＫ」を生成し、生成したユーザ用セッション鍵ＵＫを復号部３５に出力する。なお、セッション鍵生成部３４は、ユーザ用積情報抽出部３３が抽出したユーザ用積情報ＵＩと、暗号データＥＤに格納されたランダム点Qと、ユーザ鍵ペア格納部３２に格納されている暗号システムユーザが保有するユーザ秘密鍵rとを用いて、ユーザ用セッション鍵ＵＫを生成する。
【００６８】
復号部３５は、「復号処理」を実行し、セッション鍵生成部３４が生成したユーザ用セッション鍵ＵＫを用いて、暗号データＥＤを復号する。
【００６９】
つぎに、暗号データ復号装置３（ユーザ装置）に格納された「ユーザ秘密鍵ｒ」と「ユーザ公開鍵Ｕｐｕｂ」とについて、詳細に説明する。
【００７０】
「ユーザ秘密鍵ｒ」は、巡回乗法群Zqに属する１要素から選択される。
【００７１】
「ユーザ公開鍵Ｕｐｕｂ」は、巡回乗法群Gに属する要素であり、ユーザ秘密鍵ｒと生成者Ｐとの積（r・P）およびユーザ秘密鍵ｒと特権者秘密鍵ｘと生成者Ｐとの積（rx・P）の組として生成される。
【００７２】
つぎに、上述した構成を有する暗号データ生成装置１にて、暗号化データを生成する動作を行う場合の処理内容を説明する。
【００７３】
図５に示すように、暗号化データ生成動作における処理は、「入力処理（ステップＳ１１）」と、「セッション鍵事前情報生成処理（ステップＳ１２）」と、「セッション鍵生成処理（ステップＳ１３）」と、「復号可否判別処理（ステップＳ１４）」と、「特権者用積情報生成処理（ステップＳ１５）」と、「ユーザ用積情報生成処理（ステップＳ１６）」と、「暗号化処理（ステップＳ１７）」とから構成される。
【００７４】
まず、入力部１１は、「入力処理（ステップＳ１１）」を実行する。この「入力処理」にて、入力部１１は、電子データの暗号化を行う者から入力された暗号化対象の電子データを受付け、受付けた電子データを電子データ格納部１２に出力する。電子データ格納部１２は、「電子データ格納処理」により、入力部１１から出力された電子データを格納する。
【００７５】
また、利用者が電子データの暗号化を所望する場合、「入力処理（ステップＳ１１）」において、暗号データ復号装置２からの特権者公開鍵Ｐｐｕｂが入力部１１に入力されるとともに、暗号データ復号装置３からのユーザ公開鍵Ｕｐｕｂが入力部１１に入力される。入力部１１は、入力された特権者公開鍵Ｐｐｕｂとユーザ公開鍵Ｕｐｕｂとを受付け、受付けた各鍵を鍵格納部１４に出力する。
【００７６】
さらに、入力部１１は、利用者により入力された復号可否情報ｙｎを受付け、受付けた復号可否情報ｙｎを特権者復号選択部１３に出力する。
【００７７】
鍵格納部１４は、「鍵格納処理」を実行し、入力部１１が出力した特権者公開鍵Ｐｐｕｂとユーザ公開鍵Ｕｐｕｂとを格納する。その後、鍵格納部１４は、特権者公開鍵Ｐｐｕｂとユーザ公開鍵Ｕｐｕｂとランダム点Qとを、セッション鍵生成部１６に出力する。
【００７８】
また、セッション鍵事前情報生成部１５は、「セッション鍵事前情報生成処理（ステップＳ１２）」を実行し、巡回乗法群Zqの１要素であるセッション鍵事前情報sを生成する。続いて、セッション鍵事前情報生成部１５は、生成したセッション鍵事前情報sをセッション鍵生成部１６に出力する。
【００７９】
セッション鍵生成部１６は、「セッション鍵生成処理（ステップＳ１３）」を実行し、セッション鍵事前情報生成部１５が出力した「セッション鍵事前情報s」と、鍵格納部１４が出力した「特権者公開鍵Ｐｐｕｂ」、「ユーザ公開鍵Ｕｐｕｂ」および「ランダム点Ｑ」とを用いて、以下の式３に従って、セッション鍵Kを生成する。なお、上述したように、ユーザ公開鍵Ｕｐｕｂは、ユーザ秘密鍵ｒと生成者Ｐとの積（r・P）、および、ユーザ秘密鍵ｒと特権者秘密鍵ｘと生成者Ｐとの積（rx・P）の組である。
【００８０】
【数３】
2009188812.tif 000005
【００８１】
セッション鍵生成部１６は、生成したセッション鍵Kを暗号化部１７に出力する。
【００８２】
また、セッション鍵生成部１６は、復号可否情報ｙｎの入力に応じて、セッション鍵事前情報sと特権者公開鍵Ｐｐｕｂとユーザ公開鍵Ｕｐｕｂとを、特権者復号選択部１３に出力する。
【００８３】
特権者復号選択部１３の復号可否判別部１３１は、「復号可否判別処理（ステップＳ１４）」を実行し、入力部１１から入力された復号可否情報ｙｎを参照し、暗号システム特権者による復号化が許可されているか否かを判別する。
【００８４】
復号可否判別部１３１は、復号可否情報ｙｎが「許可」を示す場合、暗号システム特権者による復号化が許可されていると判別する（ステップＳ１４；Ｙｅｓ）。
【００８５】
この場合、「特権者用積情報生成部」である復号化情報生成部１３２は、「特権者用積情報生成処理（ステップＳ１５）」を実行し、セッション鍵生成部１６から提供されたセッション鍵事前情報ｓ、特権者公開鍵Ｐｐｕｂおよびユーザ公開鍵Ｕｐｕｂとを用いて、sr・Pとsx・Pとを算出する。これにより、生成された復号化情報Dは、特権者用積情報ＰＩ（sr・P）とユーザ用積情報ＵＩ（sx・P）との組で構成される復号化情報Ｄである。復号化情報生成部１３２は、生成した復号化情報Dを暗号化部１７に出力する。
【００８６】
一方、復号可否判別部１３１は、復号可否情報ｙｎが「不許可」を示す場合、暗号システム特権者による復号化が許可されていないと判別する（ステップＳ１４；Ｎｏ）。
【００８７】
この場合、「ユーザ用積情報生成部」である復号化情報生成部１３２は、「ユーザ用積情報生成処理（ステップＳ１６）」を実行し、入力部１１にて入力された復号可否情報ｙｎと、セッション鍵生成部１６が出力したセッション鍵事前情報ｓと特権者公開鍵Ｐｐｕｂとを用いて、sx・Pを算出する。これにより、生成された復号化情報Dは、sx・Pで構成される「ユーザ用積情報ＵＩ」である。復号化情報生成部１３２は、生成した復号化情報Dを暗号化部１７に出力する。
【００８８】
暗号化部１７は、電子データ格納部１２から暗号化対象の電子データを取得する。また、暗号化部１７は、セッション鍵生成部１６からセッション鍵Kとランダム点Qとを取得する。さらに、暗号化部１７は、特権者復号選択部１３の復号化情報生成部１３２から復号化情報Dを取得する。
【００８９】
暗号化部１７は、「暗号化処理（ステップＳ１７）」を実行し、セッション鍵Kにより電子データを一旦暗号化し、さらに、暗号化した電子データに対して復号化情報Dとランダム点Qとを付加することにより「暗号データＥＤ」を生成する。暗号化部１７は、生成した暗号データＥＤを出力部１８に出力する。以上で、一連の暗号化データ生成動作が終了する。
【００９０】
つぎに、暗号データ生成装置１にて生成された暗号データを、「暗号システム特権者」が使用する暗号データ復号装置２（特権者装置）により復号する動作について詳細に説明する。
【００９１】
図６に示すように、特権者用積情報抽出部２３は、「特権者用積情報抽出処理（ステップＳ２１）」を実行し、暗号データＥＤに含まれる復号化情報Dから特権者用積情報ＰＩ（sr・P）を抽出する。
【００９２】
続いて、特権者用積情報判別部２４は、「特権者用積情報判別処理（ステップＳ２２）」を実行し、暗号データＥＤから特権者用積情報ＰＩ（sr・P）を抽出できたか否かを判別する。特権者用積情報判別部２４が、特権者用積情報ＰＩ（sr・P）を抽出できないと判別した場合（ステップＳ２２）、暗号データＥＤの復号は不可能である。そのため、暗号データ復号装置２は一連の復号動作を終了する。
【００９３】
一方、特権者用積情報判別部２４は、特権者用積情報ＰＩ（sr・P）を抽出できたと判別した場合（ステップＳ２２；Ｙｅｓ）、セッション鍵生成部２５は、「特権者セッション鍵生成処理（ステップＳ２３）」を実行し、特権者用セッション鍵ＰKを生成する。
【００９４】
なお、特権者セッション鍵生成処理（ステップＳ２３）にて、セッション鍵生成部２５は、特権者用積情報ＰＩ（sr・P）と、暗号データＥＤに格納されているランダム点Qと、特権者鍵ペア格納部２２に格納されている暗号システム特権者が保有する特権者秘密鍵xとを用いて、以下の式４に従って特権者用セッション鍵ＰK（式４中では、単に「Ｋ」と記述する）を生成する。
【００９５】
【数４】
2009188812.tif 000006
【００９６】
復号部２６は、「復号処理（ステップＳ２４）」を実行し、生成した特権者用セッション鍵ＰKを用いて、通信部２１が受信した暗号データＥＤを復号する。以上により、暗号システム特権者が使用する暗号データ復号装置２による一連の復号動作は終了する。
【００９７】
つぎに、暗号データ生成装置１にて生成された暗号データを、「暗号システムユーザ」が使用する暗号データ復号装置３（ユーザ装置）により復号動作について詳細に説明する。
【００９８】
図７に示すように、まず、ユーザ用積情報抽出部３３は、「ユーザ用積情報抽出処理（ステップＳ３１）」を実行し、暗号データの復号化情報Dからユーザ用積情報ＵＩ（sx・P）を抽出する。
【００９９】
続いて、セッション鍵生成部３４は、「セッション鍵生成処理（ステップＳ３２）」を実行し、ユーザ用積情報抽出部３３が抽出したユーザ用積情報ＵＩ（sx・P）と、暗号データＥＤに格納されたランダム点Qと、ユーザ鍵ペア格納部３２に格納されている暗号システムユーザが保有するユーザ秘密鍵rとを用いて、以下の式５に従ってユーザ用セッション鍵ＵK（式５中では、単に「Ｋ」と記述する）を生成する。
【０１００】
【数５】
2009188812.tif 000007
【０１０１】
復号部３５は、「復号処理（ステップＳ３３）」を実行し、ユーザ用セッション鍵ＵKを用いて、通信部３１が受信した暗号データＥＤを復号する。以上で、一連の暗号システムユーザが使用する暗号データ復号装置３による復号動作が終了する。
【０１０２】
以上説明したように、本発明の暗号データ生成装置１によれば、入力部１１が、暗号システム特権者が暗号データを復号するか否かを指定する復号可否情報ｙｎの入力を受付ける。そして、復号化情報生成部１３２は、復号可否情報ｙｎの指定内容に基づいて、復号化するための復号化情報Ｄを生成する。
【０１０３】
これにより、暗号データＥＤを生成する利用者が、暗号システム特権者による暗号データＥＤの復号の可否を所望するか否かに応じて、電子データを暗号化することが可能になる。また、暗号データ生成者が必要とする鍵の個数をなるべく少なくできる。
【０１０４】
本発明の暗号データ生成装置１によれば、電子データを暗号化するためのセッション鍵Ｋを生成する際に、バイリニアペアリングを用いてセッション鍵Ｋを生成する。
【０１０５】
これにより、セッション鍵Ｋによるセッション鍵事前情報ｓの解読をしにくくすることができる。
【０１０６】
なお、本発明の要旨を逸脱しない範囲で各種の変形が可能である。
【０１０７】
暗号データ生成装置１は、内部統制された企業内での暗号化通信に適用することが可能である。従業者が機密情報を暗号化し不正に伝送することを企業内で防止するために、暗号データの暗号システム特権者による暗号データの復号可能な一般的な暗号システムがある。しかし、暗号システムでは、従業者に関する個人的な機密情報（健康状態、家庭環境など）を暗号化して伝送する場合もある。このような場合、暗号データ生成装置１を用いることによって、従業者の判断で、暗号データＥＤの暗号システム特権者による復号の許可または不許可を選択することができる。
【０１０８】
なお、本発明においては、暗号データ生成装置１内の処理は上述の専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムを暗号データ生成装置１にて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを暗号データ生成装置１に読み込ませ、実行するものであってもよい。暗号データ生成装置１にて読取可能な記録媒体とは、フロッピーディスク（登録商標）、光磁気ディスク、ＤＶＤ、ＣＤなどの移設可能な記録媒体の他、暗号データ生成装置１に内蔵されたＨＤＤ等を指す。この記録媒体に記録されたプログラムは、例えば、暗号データ生成装置１が有する各構成要素１２〜１７にて読み込まれ、各構成要素１２〜１７の制御によって、上述したものと同様の処理が行われる。
【０１０９】
ここで、暗号データ生成装置１が有する各構成要素１２〜１７は、プログラムが記録された記録媒体から読み込まれたプログラムを実行するコンピュータとしてそれぞれ動作するものである。なお、上述したプログラムは、暗号データ復号装置２（特権者装置）や暗号データ復号装置３（ユーザ装置）についても同様に適用可能である。
【０１１０】
また、本発明の暗号データ生成装置の復号化情報生成部は、復号可否情報が特権者による復号化の不許可を示す場合、セッション鍵事前情報と特権者公開鍵との積であるユーザ用積情報を算出し、ユーザ用積情報を復号化情報として生成してもよい。
【０１１１】
また、本発明の暗号データ生成装置の復号化情報生成部は、復号可否情報が特権者による復号化の許可を示す場合、セッション鍵事前情報とユーザ公開鍵との積である特権者用積情報を算出し、セッション鍵事前情報と特権者公開鍵との積であるユーザ用積情報を算出し、ユーザ用積情報と特権者用積情報との組を復号化情報として生成してもよい。
【０１１２】
また、本発明の暗号データ生成装置のセッション鍵生成部は、バイリニアペアリングに従って、セッション鍵を生成してもよい。
【０１１３】
また、本発明の方法の復号化情報生成処理では、復号可否情報が特権者による復号化の不許可を示す場合、セッション鍵事前情報と特権者公開鍵との積であるユーザ用積情報を算出し、ユーザ用積情報を復号化情報として生成してもよい。
【０１１４】
また、本発明の方法の復号化情報生成処理では、復号可否情報が特権者による復号化の許可を示す場合、セッション鍵事前情報とユーザ公開鍵との積である特権者用積情報を算出し、セッション鍵事前情報と特権者公開鍵との積であるユーザ用積情報を算出し、ユーザ用積情報と特権者用積情報との組を復号化情報として生成してもよい。
【０１１５】
また、本発明の方法のセッション鍵生成処理では、バイリニアペアリングに従って、セッション鍵を生成してもよい。
【０１１６】
また、本発明のプログラムの復号化情報生成手順では、復号可否情報が特権者による復号化の不許可を示す場合、セッション鍵事前情報と特権者公開鍵との積であるユーザ用積情報を算出し、ユーザ用積情報を復号化情報として生成してもよい。
また、本発明のプログラムの復号化情報生成手順では、復号可否情報が特権者による復号化の許可を示す場合、セッション鍵事前情報とユーザ公開鍵との積である特権者用積情報を算出し、セッション鍵事前情報と特権者公開鍵との積であるユーザ用積情報を算出し、ユーザ用積情報と特権者用積情報との組を復号化情報として生成してもよい。
また、本発明のプログラムのセッション鍵生成手順では、バイリニアペアリングに従って、セッション鍵を生成してもよい。
【図面の簡単な説明】
【０１１７】
【図１】本発明の実施形態に従った暗号システムの全体構成を示す図である。
【図２】図１に示した暗号データ生成装置の構成を示す図である。
【図３】図１に示した暗号データ復号装置（特権者装置）の構成の第１の例を示す図である。
【図４】図１に示した暗号データ生成装置（ユーザ装置）の構成の第２の例を示す図である。
【図５】暗号データ生成動作を示すフローチャートである。
【図６】暗号データ復号動作の第１の例を示すフローチャートである。
【図７】暗号データ復号動作の第２の例を示すフローチャートである。
【符号の説明】
【０１１８】
１  暗号データ生成装置
２  暗号データ復号装置（特権者装置）
３  暗号データ復号装置（ユーザ装置）
１１  入力部
１２  電子データ格納部
１３  特権者復号選択部
１３１  復号可否判別部
１３２  復号化情報生成部
１４  鍵格納部
１５  セッション鍵事前情報生成部
１６  セッション鍵生成部
１７  暗号化部
１８  出力部
２１  通信部
２２  特権者鍵ペア格納部
２３  特権者用積情報抽出部
２４  特権者用積情報判別部
２５  セッション鍵生成部
２６  復号部
３１  通信部
３２  ユーザ鍵ペア格納部
３３  ユーザ用積情報抽出部
３４  セッション鍵生成部
３５  復号部
【図１】
2009188812.tif 000008
【図２】
2009188812.tif 000009
【図３】
2009188812.tif 000010
【図４】
2009188812.tif 000011
【図５】
2009188812.tif 000012
【図６】
2009188812.tif 000013
【図７】
2009188812.tif 000014