(57)【特許請求の範囲】
【請求項１】
譲渡人の識別に対応する公開鍵を用いて暗号化され譲渡人の装置から受取人の装置へ送られるべきオリジナルメッセージを、譲渡人の識別に対応する秘密鍵を受取人の装置に対して明らかにすることなく符号化するためのシステムであって、
該システムが、通信ネットワークを介して互いに接続され、プロセッサを有する１つまたは複数の計算装置から成り、前記プロセッサは、
譲渡人の識別に対応する公開鍵を用いて、著作者の装置のプロセッサでオリジナルメッセージを暗号化するステップと、
該暗号化されたオリジナルメッセージと、前記譲渡人の識別に対応する秘密鍵と、及び前記受取人の識別に対応する秘密鍵との離散対数に基いて、公開代理鍵を、  代理鍵発行者の装置のプロセッサで生成するステップであって、前記公開代理鍵は前記暗号化されたオリジナルメッセージを前記譲渡人の識別に対応する公開鍵に基づいて暗号化された状態から前記受取人の識別に対応する公開鍵に基づいて暗号化された状態へ変換可能な暗号化鍵であり、  前記公開代理鍵は前記譲渡人の識別に対応する秘密鍵を復号するために使用できず、かつ、前記受取人の識別に対応する秘密鍵を復号するためにも使用でしない、公開代理鍵を生成するステップと、
前記譲渡人の識別に対応する公開鍵に基づいて暗号化されたメッセージを、前記受取人の識別に対応する前記秘密鍵を用いてだけ復号可能であり前記受取人の識別に対応する公開鍵に基づいて暗号化された変換済み暗号化メッセージへ変換するために、前記公開代理鍵を代理変換装置のプロセッサで前記暗号化されたメッセージに適用するステップと、
を実行可能であって、
前記離散対数による公開代理鍵の生成は、エルガマル暗号化方式において、次の式
π＝ｒb-a（ｍｏｄ ｐ）
により行われる、前記オリジナルメッセージの符号化システム、
ここで、πは生成される公開代理鍵であり、ａは前記譲渡人の秘密鍵であり、ｂは前記受取人の秘密鍵であり、ｐは素数であり、ｇを巡回群Ｚp*の生成元、ｋをＺp-1*に含まれる乱数としたとき、ｒは式
ｒ＝ｇk（ｍｏｄ ｐ）
で求められる。
【請求項２】
前記公開代理鍵は前記譲渡人の装置のプロセッサにより生成される、請求項１に記載のシステム。
【請求項３】
前記公開代理鍵は前記譲渡人の装置のプロセッサにより適用される、請求項１に記載のシステム。
【請求項４】
前記公開代理鍵は前記受取人の装置のプロセッサにより適用される、請求項１に記載のシステム。
【請求項５】
前記変換済み暗号化メッセージを前記受取人の識別に対応する秘密鍵を用いて、受取人の装置のプロセッサで暗号解読するステップを実行可能なプロセッサを更に備える、請求項１に記載のシステム。
【請求項６】
前記公開代理鍵を生成するステップと前記公開代理鍵を適用するステップとは繰り返され、繰り返しの間に、前記受取人の装置は譲渡人の装置として働き、他の装置は受取人の装置として働く、請求項１に記載のシステム。
【請求項７】
譲渡人の識別に対応する公開鍵を用いて暗号化され譲渡人の装置から受取人の装置へ送られるべきオリジナルメッセージを、譲渡人の識別に対応する秘密鍵を受取人の装置に対して明らかにすることなく符号化するためのシステムであって、
該システムが、通信ネットワークを介して互いに接続され、プロセッサを有する１つまたは複数の計算装置から成り、前記プロセッサは、
譲渡人の識別に対応する公開鍵を用いて、著作者の装置のプロセッサでオリジナルメッセージを暗号化するステップと、
該暗号化されたオリジナルメッセージと、前記譲渡人の識別に対応する秘密鍵と、及び前記受取人の識別に対応する秘密鍵との離散対数に基いて、公開代理鍵を、  代理鍵発行者の装置のプロセッサで生成するステップであって、前記公開代理鍵は前記暗号化されたオリジナルメッセージを前記譲渡人の識別に対応する公開鍵に基づいて暗号化された状態から前記受取人の識別に対応する公開鍵に基づいて暗号化された状態へ変換可能な暗号化鍵であり、  前記公開代理鍵は前記譲渡人の識別に対応する秘密鍵を復号するために使用できず、かつ、前記受取人の識別に対応する秘密鍵を復号するためにも使用でしない、公開代理鍵を生成するステップと、
前記譲渡人の識別に対応する公開鍵に基づいて暗号化されたメッセージを、前記受取人の識別に対応する前記秘密鍵を用いてだけ復号可能であり前記受取人の識別に対応する公開鍵に基づいて暗号化された変換済み暗号化メッセージへ変換するために、前記公開代理鍵を代理変換装置のプロセッサで前記暗号化されたメッセージに適用するステップと、
を実行可能であって、
前記離散対数による公開代理鍵の生成は、エルガマル暗号化方式において、次の式
π＝（ｓa^(-1)）b-a（ｍｏｄ ｐ）
により行われる、前記オリジナルメッセージの符号化システム、
ここで、πは生成される公開代理鍵であり、ａは前記譲渡人の秘密鍵であり、ｂは前記受取人の秘密鍵であり、ｐは素数であり、αを前記譲渡人の識別に対応する公開鍵、ｋを巡回群Ｚp-1*に含まれる乱数としたとき、ｓは式
ｓ＝αk（ｍｏｄ ｐ）
で求められる。
【請求項８】
前記公開代理鍵は前記譲渡人の装置のプロセッサにより生成される、請求項７に記載のシステム。
【請求項９】
前記公開代理鍵は前記譲渡人の装置のプロセッサにより適用される、請求項７に記載のシステム。
【請求項１０】
前記公開代理鍵は前記受取人の装置のプロセッサにより適用される、請求項７に記載のシステム。
【請求項１１】
前記変換済み暗号化メッセージを前記受取人の識別に対応する秘密鍵を用いて、受取人の装置のプロセッサで暗号解読するステップを実行可能なプロセッサを更に備える、請求項７に記載のシステム。
【請求項１２】
前記公開代理鍵を生成するステップと前記公開代理鍵を適用するステップとは繰り返され、繰り返しの間に、前記受取人の装置は譲渡人の装置として働き、他の装置は受取人の装置として働く、請求項７に記載のシステム。
【請求項１３】
譲渡人の識別に対応する公開鍵を用いて暗号化され譲渡人の装置から受取人の装置へ送られるべきオリジナルメッセージを、譲渡人の識別に対応する秘密鍵を受取人の装置に対して明らかにすることなく符号化するためのシステムであって、
該システムが、通信ネットワークを介して互いに接続され、プロセッサを有する１つまたは複数の計算装置から成り、前記プロセッサは、
譲渡人の識別に対応する公開鍵を用いて、著作者の装置のプロセッサでオリジナルメッセージを暗号化するステップと、
該暗号化されたオリジナルメッセージと、前記譲渡人の識別に対応する秘密鍵と、及び前記受取人の識別に対応する秘密鍵との離散対数に基いて、公開代理鍵を、  代理鍵発行者の装置のプロセッサで生成するステップであって、前記公開代理鍵は前記暗号化されたオリジナルメッセージを前記譲渡人の識別に対応する公開鍵に基づいて暗号化された状態から前記受取人の識別に対応する公開鍵に基づいて暗号化された状態へ変換可能な暗号化鍵であり、  前記公開代理鍵は前記譲渡人の識別に対応する秘密鍵を復号するために使用できず、かつ、前記受取人の識別に対応する秘密鍵を復号するためにも使用でしない、公開代理鍵を生成するステップと、
前記譲渡人の識別に対応する公開鍵に基づいて暗号化されたメッセージを、前記受取人の識別に対応する前記秘密鍵を用いてだけ復号可能であり前記受取人の識別に対応する公開鍵に基づいて暗号化された変換済み暗号化メッセージへ変換するために、前記公開代理鍵を代理変換装置のプロセッサで前記暗号化されたメッセージに適用するステップと、
を実行可能であって、
前記離散対数による公開代理鍵の生成ステップは、Cramer-Shoup暗号化方式において、πを生成される公開代理鍵、aを前記譲渡人の秘密鍵、bを前記受取人の秘密鍵、u1，u2を前記暗号化されたオリジナルメッセージの要素、x1, x2, y11, y12, y21, y22, y31, y32, z、及びx1', x2', y11', y12', y21', y22', y31', y32', z'を素数ｐ＝２ｑ＋１に対する群Ｚp*の位数ｑからなる部分群のランダムな要素としたとき、次式
π = (ε, θ, δ1, δ2, δ3)
ε = u1z'-z
θ = u1x1'-x1 u2x2'-x2
δ1 = u1y11'-y11 u2y12'-y12
δ2 = u1y21'-y21 u2y22'-y22
δ3 = u1y31'ε -y31 u2y32'ε -y32 
a = (x1, x2, y11, y12, y21, y22, y31, y32, z)
b = (x1', x2', y11', y12', y21', y22', y31', y32', z')
により前記公開代理鍵を求める、前記オリジナルメッセージの符号化システム。
【請求項１４】
前記公開代理鍵は前記譲渡人の装置のプロセッサにより生成される、請求項１３に記載のシステム。
【請求項１５】
前記公開代理鍵は前記譲渡人の装置のプロセッサにより適用される、請求項１３に記載のシステム。
【請求項１６】
前記公開代理鍵は前記受取人の装置のプロセッサにより適用される、請求項１３に記載のシステム。
【請求項１７】
前記変換済み暗号化メッセージを前記受取人の識別に対応する秘密鍵を用いて、受取人の装置のプロセッサで暗号解読するステップを実行可能なプロセッサを更に備える、請求項１３に記載のシステム。
【請求項１８】
前記公開代理鍵を生成するステップと前記公開代理鍵を適用するステップとは繰り返され、繰り返しの間に、前記受取人の装置は譲渡人の装置として働き、他の装置は受取人の装置として働く、請求項１３に記載のシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、暗号化方法に関し、より詳細には、秘密鍵又はメッセージの内容を明かさずに暗号の復号権を委任するためのシステム及び方法に関する。
【０００２】
【従来の技術】
電子商取引を介してのデジタルドキュメントの配布の普及を妨げる最も重要な問題の１つは、配布中の配布物の内容の所有者の知的所有権の保護、並びにそれらのデジタルドキュメントの使用の保護が欠如しているという現状である。この問題を解決するための努力は、「知的所有権管理（ＩＰＲＭ：Intellectual Property Rights Management）」、「デジタル所有権管理（ＤＰＲＭ：Digital Property Rights Management）」、「知的所有物管理（ＩＰＭ：Intellectual Property Management）」、「権利管理（ＲＭ：Rights Management）」及び「電子著作権管理（ＥＣＭ：Electronic Copyright Management）」と呼ばれている。
【０００３】
ここで使用される「ドキュメント」は、限定はされないが、通信文、書籍、雑誌、定期刊行物、新聞、他の刊行文書、ソフトウェア、写真及び他の画像、オーディオ及びビデオ・クリップ、及び他のマルチメディア表現を含む、配布又は転送される情報の任意のユニットである。ドキュメントは、用紙上にプリントされた形式で、記憶媒体上のデジタルデータとして、又は様々な媒体上で他の任意の公知の形式で具体化され得る。
【０００４】
複写の低品質及び印刷物の配布のコストの高さが、多くのプリントドキュメントの不法な複写を阻止する役割を果たしている一方で、保護されていない電子ドキュメントをコピーし、変更し、再配布することはあまりに簡単である。従って、それらを不法にコピーすることを難しくするために、電子ドキュメントを保護する何らかの方法が必要である。例えば、プリントドキュメントのハードコピーを作成し、プリントドキュメントを旧式の方法で複製することが未だ可能であったとしても、これはコピーを抑止する役割を果たすであろう。
【０００５】
「保全コンテナ」（又は単に暗号化されたドキュメント）は、１組の権限認可条件が満たされ、幾つかの著作権の契約条件が果たされる（例えば、使用料の支払い）まで、ドキュメントのコンテンツを暗号化された状態に保つための方法を提供する。
【０００６】
暗号化メカニズムは一般にドキュメントを暗号化する（encrypt or encipher）ために使用され、その後ドキュメントは配布されて公的に格納される。最終的には、認可されたユーザにより、ドキュメントは復号される。これは、ドキュメントの配布者から意図されるユーザへの公衆網を介してのドキュメントの配布中、並びに安全でない媒体へのドキュメントの格納中の保護の基本形式を提供する。
【０００７】
「信頼されるシステム」のアプローチでは、システム全体が、ドキュメントの認可されていない使用及び配布を防止する責任を持つ。
【０００８】
従って、ある程度信頼される構成要素を配置することが可能であっても、人々は様々な未確認であり且つ信頼されていない構成要素及びシステムに頼り続けざるを得ない。このようなシステムでは、例え安全であると見込まれる場合でも、予期せぬバグ及び弱点がしばしば発見され、利用される。
【０００９】
【発明が解決しようとする課題】
従って、メッセージを復号するための権利を譲渡する機能をサポートする暗号化／復号化のフレームワークを有することが好ましい。このようなフレームワークは、オリジナルメッセージを先ず復号することなく、別の団体が使用するためにメッセージの再暗号化を代理人が本質的に認可することを可能にする。また、この代理人が暗号化されたメッセージを一切保有することなく、これが実行可能であると有用である。
【００１０】
【課題を解決するための手段】
本開示において、同様の一般的な問題が初めに提示されるが、それは符号化方式のより一般的なコンテキストにおいてである。本開示で検討される符号化方式は、セキュリティに関する要件を必ずしも持たなくてよいという点で、暗号化方式又は暗号システムと異なる。符号化方式が暗号化方式たるためには、符号化されたメッセージに気付いた際に、盗聴者がオリジナルメッセージとこのメッセージを復号するために使用される鍵との何れかを明らかにすることが不可能でなければならない。符号化方式を用いた対応は、効率的な大量ドキュメントの配布及び長期にわたり暗号化されたメッセージを保護するために新しい鍵により暗号文を更新する等、軽いセキュリティだが高実行効率を有するアプリケーションの構築を可能にする。本開示では、ある種類の符号化方式が定義され、方式の幾つかの例が提供される。既存の方法を用いて新たな方式が構成され得るプロセスもまた、本明細書で提供される。
【００１１】
幾つかのより本式の代理暗号化方式が次に提示される。代理暗号化方式は、指定された鍵保有者が別の鍵保有者に代わってメッセージを復号することを可能にする暗号化方式である。本開示は、公知のエルガマル（ElGamal）方式に基づき、且つ既存の代理暗号化方式に比べて改善された機能を有する２つの新たな代理暗号化方式を紹介する。これらは、代理に関する情報及び変換が安全に公開されることが可能である点で公開型であると同時に、関与する鍵保有者間の信頼関係の点で非可換性である。大量ドキュメントの配布及びファイル保護へのこれらの新たな方式の適用もまた提示される。
【００１２】
本開示で示される方法の基本概念は、次のとおりである。即ち、アリスが復号権をボブに譲渡するために、アリスはボブのための譲渡／転送鍵ｔを生成する。この譲渡鍵ｔにより、最初はアリスのために符号化されたメッセージをボブが再暗号化し、その後彼自身の鍵を用いることによりこれを復号することができる。代理暗号化の場合と同様に、この譲渡は、譲渡鍵がアリスとボブの両者の復号鍵、又はオリジナルメッセージを明かさずに実行される。
【００１３】
ある鍵保有者から別の保有者に復号権を安全且つ効率的な方法で委任する方法が、代理暗号化の主題である。極最近、ある鍵のために暗号化されたメッセージを、秘密の復号鍵及びオリジナルメッセージを公開せずに、別の鍵のために暗号化されたメッセージに変換するための幾つかの特殊代理暗号化方式が提案されている。
【００１４】
従って、公開型且つ非可換性である本発明の代理暗号化方式は、他の公知の暗号システムの欠点を排除する。
【００１５】
本開示では次に、２つの新たな代理暗号化方式が紹介される。これらは全てエルガマル公開鍵暗号化方式に基づき、それに匹敵する計算性能を有する。本質的にこれらの方式は、以下に示す既存の方式の好ましい特徴を保持している。（ｉ）公開性：代理情報が生成された後は、オリジナルの鍵保有者の介入は必要とされず、代理に関する情報及び演算は公的に通信され、処理される。（ii）非可換性：鍵保有者は、彼らの秘密の復号鍵に関して互いに信用する必要がない。及び、（iii）限定性：復号権が委任される鍵保有者は特定されており、代理情報（鍵）はメッセージに依存する。
【００１６】
最後に、メッセージの復号権の委任が、他のシステムに優る幾つかの利点を有するCramer-Shoup暗号システムのコンテキストで説明される。
【００１７】
【発明の実施の形態】
図１は、先に定義されたように通信文、書籍、雑誌、定期刊行物、新聞、他の刊行文書、ソフトウェア、オーディオ並びにビデオ・クリップ、及び他のマルチメディア表現を含み得るドキュメントの電子配布のためのシステムの上位の機能モデルを示している。
【００１８】
著作者（又は出版社）１１０は、ドキュメントのオリジナルのコンテンツ１１２を作成し、配布のためにこれを配布業者１１４に渡す。配布業者として第三者を介さずに、著作者がドキュメントを直接配布することも可能であるが、図１で説明される分業は著作者／出版社１１０がコンテンツの作成に集中するのを可能にし、配布業者１１４により代行される機械的及び単純な作業には注意を払わなくてよいことから、分業はより効率的である。更に、このような分業は、配布業者１１４が多数の著作者及び出版社（例示された著作者／出版社１１０を含む）と提携することにより規模の利益（economies of scale）の実現を可能にする。
【００１９】
配布業者１１４はその後、変更されたコンテンツ１１６をユーザ１１８に渡す。一般的な電子配布モデルにおいて、変更されたコンテンツ１１６はオリジナルの暗号化済みのコンテンツ１１２の再度暗号化されたバージョンを表わす。配布業者１１４は先ず、オリジナルのコンテンツ１１２を復号し、次にこれをユーザ１１８の公開鍵により再暗号化する。この変更されたコンテンツ１１６は、単一のユーザ１１８のためにのみカスタマイズされる。ユーザ１１８はその後、自身の専用鍵を使用して変更されたコンテンツ１１６を復号し、オリジナルのコンテンツ１１２を見ることができる。
【００２０】
コンテンツ１１２に対する支払い１２０は、ユーザ１１８から配布業者１１４へ清算所１２２を介して渡される。清算所１２２は、ユーザ１１８及び特定のドキュメントの閲覧を希望する他のユーザからの要求を集める。また、清算所１２２は、デビット取引、クレジットカード取引、又は他の公知の電子支払い方式等の支払い情報を収集し、収集したユーザの支払いを支払いバッチ１２４として配布業者１１４に転送する。当然ながら、清算所１２２はユーザの支払い１２０の一部を保持することが予想される。同様に、配布業者１１４は支払いバッチ１２４の一部を保持し、支払い１２６（使用料を含む）を著作者及び出版社１１０に転送する。この方式の実施の一形態において、配布業者１１４は送信する前に、ある１つのドキュメントに対する一群のユーザ要求を待ち受ける。一群のユーザ要求が集まると、変更されたコンテンツ１１６を有する単一のドキュメントを、要求しているユーザ全てによって復号されるように生成することが可能である。この技術は当該技術においては公知である。
【００２１】
一方、ユーザ１１８がドキュメントを要求（又は使用）する度に、会計メッセージ１２８が監査サーバ１３０に送信される。監査サーバ１３０は、ユーザ１１８による各要求が配布業者１１４により送られたドキュメントと一致するか否かを確かめる。会計情報１３１は配布業者１１４から直接、監査サーバ１３０により受信される。如何なる矛盾もレポート１３２を介して清算所１２２に送信され、清算所１２２はその後、配布業者１１４へ送られた支払いバッチ１２４を調整することが可能である。この会計方式は、この電子ドキュメント配布モデルでの詐欺行為の可能性を減じるため、並びに使用時間又は他の程度に応じて変化する使用料に帰結する任意の時間依存の使用許可を扱うために存在する。
【００２２】
図１に示されるドキュメントの電子商取引のための前述のモデルは、今日では一般に用いられている。このモデルは、以下で詳細に示されるように、本明細書で説明される自己防衛ドキュメントの配布のためのシステム及び方法に同様に適用可能である。
【００２３】
［代理符号化方式］
分り易さのために、次のタイプの符号化方式を先ず検討する。即ち、４つの要素から成る符号化システムであり、４つの要素は、（ｉ）可能なメッセージの集合であるメッセージ空間Ｘと、（ii）可能な鍵の集合である鍵空間Ｋと、（iii）計算処理上効率的な符号化変換であるＥ：Ｋ×Ｘ→Ｘと、（iv）計算処理上効率的な復号変換であるＤ：Ｋ×Ｘ→Ｘである。各ｋ∈Ｋである場合、符号化変換Ｅk：Ｘ→Ｘ及び復号変換Ｄk：Ｘ→Ｘは、Ｘへの単射（１対１）マッピングであり、各メッセージｘ∈Ｘである場合に、
Ｄk(Ｅk(ｘ))＝ｘ
が成り立つ。このように定義される符号化方式は確実に、より広い範囲を網羅するように個々の方式ごとに幾つかの点で異なり得る。ある方式では、符号化されたメッセージの空間とオリジナルメッセージの空間とが区別され、別の方式では符号化及び復号のために異なる鍵を使用することが検討される。暗号法の点から、以下で検討される符号化方式は、本質的に秘密鍵による（又は、より詳細には対称性の）自己準同形（endomorphic）の暗号システムである。
【００２４】
このように定義された符号化方式は、幾つかの有利な特性を有する。符号化方式（Ｘ、Ｋ、Ｅ、Ｄ）を与えられると、各符号化変換及びそれに対応する復号変換は、互いの逆変換である。即ち、各ｋ∈Ｋである場合、
Ｄk＝（Ｅk）-1  且つ  Ｅk＝（Ｄk）-1
である。Ｘが有限集合である場合、各符号化又は復号変換は単に、Ｘの順列である。
【００２５】
古典的な対称鍵暗号化方式は、符号化方式である。この内の幾つかを以下に示す。
【００２６】
●ＸＯＲ方式ＸＯ
この方式では、メッセージ空間Ｘは、ある整数ｎ＞０である場合に、全てｎビットのバイナリ・ストリング（２進文字列）から成る集合Ｂnであり、鍵空間Ｋも同様である。可能なメッセージ数及び可能な鍵の数は何れも２nである。各メッセージｘ及び各鍵ｋのための符号化は、次の式（１）で示され、メッセージｙの復号は次の式（２）で示される。
【数１】
0004010766.tif 000002
【００２７】
●乗法方式Ｍ
この方式におけるメッセージは、ある整数ｎ＞０である場合に、Ｘ＝Ｚn＝｛０，1，...，ｎ−１｝内の要素である。鍵もまた、集合Ｚn内の要素ａであるが、gcd(a,n)＝１を満たす。この式で「gcd」関数は２つの引き数の最大公約数を意味する。即ち、鍵空間Ｋは次の式で示される乗法群内の要素から成る。
【数２】
0004010766.tif 000003
【００２８】
鍵ａによるメッセージｘの符号化は、
y＝Ｅa(x)＝ax(mod n)
であり、鍵ａによるメッセージｙの復号は、
x＝Ｄa(y)＝a-1y(mod n)
である。これらの式において、ａ-1は、ａモジュロｎの乗法逆数である。即ち、ａ-1は、ａａ-1(mod n)＝ａ-1ａ(mod n)＝１であるような集合Ｚn内の要素である。ａの条件であるgcd(a,n)＝１は、ａが逆数ａ-1を有することを保証するために用いられることに留意されたい。このようなａの数は、次の式で示されるオイラーのφ関数の値に等しいことが知られている。
【数３】
0004010766.tif 000004
【００２９】
●シフト方式Ｓ
シフト方式のメッセージ及び鍵は、ある整数ｎ＞０である場合に、Ｚn＝｛０，1，...，ｎ−１｝内の全ての要素である。即ち、Ｘ＝Ｋ＝Ｚnである。従って、シフト方式におけるメッセージの数及び鍵の数は、どちらもｎに等しい。鍵ｂを用いてメッセージｘを符号化するには、
y＝Ｅb(x)＝x＋b(mod n)
が計算され、ｂを用いてメッセージｙを復号するには、
x＝Ｄb(y)＝y−b(mod n)
が計算される。
【００３０】
●代入方式Ｐ
この方式もまた、Ｘ＝Ｚnにわたって定義される。しかしながら、鍵空間Ｋ＝Πnは、集合Ｚn内の全ての順列により構成される。従って、鍵の総数はｎ!である。各順列がｐ∈Πnである場合に、符号化は、
y＝Ｅp(x)＝p(x)
であり、復号は、
x＝Ｄp(y)＝p-1(y)
である。この式において、ｐ-1はｐの逆順列である。
【００３１】
乗法方式及びシフト方式はそれぞれ、φ(ｎ)及びｎ個の要素のｎ!通りの可能な順列の内のｎのみを含む、代入方式の特殊な例であることに留意すべきである。
【００３２】
新たな符号化方式は、既存の方式を組み合わせることにより構成することができる。１つの方法は、それらの「積」を算出することである。Ｓ及びＳ'が同一のメッセージ空間Ｘを用いる２つの符号化方式であると仮定する。Ｓ×Ｓ'により示されるＳ及びＳ'の積は、同一のメッセージ空間Ｘを有する。積方式の鍵は、(ｋ,ｋ')を有し、ｋ及びｋ'はそれぞれＳ及びＳ'の鍵である。積方式の符号化及び復号変換は、各鍵(ｋ,ｋ')∈Ｋである場合に、
Ｅ(k,k')(x)＝Ｅk'(Ｅk(x))
及び、
Ｄ(k,k')(x)＝Ｄk(Ｄk'(x))
である。即ち、メッセージｘは先ずＥkを用いて符号化され、結果として得られるメッセージがその後、Ｅk'により「再符号化」される。復号も同様であるが、逆の順序で行われる。
【００３３】
積の構成が、常に結合性、即ち、（Ｓ×Ｓ'）×Ｓ"＝Ｓ×（Ｓ'×Ｓ"）であることを確認するのは簡単である。符号化方式Ｓが、それ自体の積を算出するために用いられる場合、Ｓ2により示される方式Ｓ×Ｓが取得される。ｎ倍の積が用いられる場合は、結果として得られるＳnにより示される方式は、繰り返し符号化方式と呼ばれる。
【００３４】
積符号化方式の定義を示す簡単な例は以下の通りである。
【００３５】
●擬似方式Ａ
この方式もまた、Ｘ＝Ｚnにわたって定義される。擬似方式の鍵は、集合Ｚn内の１対の整数(a,b)であり、gcd(a,n)＝１を満たす。符号化変換は、
y＝Ｅ(a,b)(x)＝(ax＋b)(mod n)
であり、復号変換は、
x＝Ｄ(a,b)(y)＝a-1(y−b)(mod n)
である。この式において、ａ-1は、ａモジュロｎのモジュラ逆数である。ａｘ＋ｂタイプのこれらの変換は通常、擬似変換と呼ばれるので、擬似方式と名付けられている。方式Ａは、ｂ＝０である場合に乗法方式Ｍに約され、ａ＝１である場合にはシフト方式Ｓに約される。従って、Ｍ及びＳ（方式）は、Ａ（方式）の特殊な例である。その一方で、Ａはそれらの積Ｍ×Ｓである。上述されたように、乗法方式Ｍにおける鍵は、要素ａ∈Ｚ*nであり、対応する符号化変換はＥa(x)＝ax(mod n)である。シフト方式における鍵は、要素ｂ∈Ｚnであり、対応する符号化変換はＥb(x)＝x＋b(mod n)である。このため、積方式Ｍ×Ｓにおける鍵は、(a,b)の形式を有し、(a,b)∈Ｚ*n×Ｚnであり、これの符号化は、
Ｅ(a,b)(x)＝Ｅb(Ｅa(x))＝ax＋b(mod n)
である。これは、まさに擬似方式における符号化変換の定義である。同様に、擬似方式における復号変換は、シフト方式及び乗法方式の復号変換の組み合わせである。
【００３６】
上述の符号化方式（Ｘ、Ｋ、Ｅ、Ｄ）の何れかにおいて、メッセージの復号権を譲渡する目的は、以下のように示され得る。即ち、任意の所定メッセージｘ∈Ｘ且つ鍵ｋ，ｋ'∈Ｋである場合に、鍵ｋを使用して符号化されたメッセージｙ＝Ｅk(ｘ)を、新たなメッセージｙ'が鍵ｋ'を使用して正しく復号され得るように、鍵ｋ'を使用して符号化されたメッセージｙ'＝Ｅk'(ｘ)へ、ある効率的な方法で変換することである。これを達成することができると、メッセージｙを復号する権利がｋの鍵保有者からｋ'の鍵保有者へ譲渡又は委任されたと言われる。
【００３７】
図２は、この目的を達成するために必要な変換π２１０を示している。Ｅk、π及びＤk'をそれぞれ示している太線２１２、２１４及び２１６は、１つの鍵ｋを用いてメッセージｘを符号化し、符号化されたメッセージを別の鍵ｋ'を用いて符号化された別のメッセージへ変換し、そして鍵ｋ'を使用してこのメッセージを復号するステップのシーケンスを形成している。変換Ｅk'及びＤkをそれぞれ示している細線２１８及び２２０は、実行され得る他の可能な符号化及び復号演算を示している。
【００３８】
多くの場合、符号化方式の鍵空間Ｋは単なる集合ではない。ある演算「・」を伴うと、Ｋはある数学的構造を有し得る。例えば、先の段落で挙げられた全ての方式の例の鍵空間は、数学的な群にするためにある演算を伴うことが可能である。下記の表１は、これらの演算の内の幾つかを示し、この中で、
*：(Ｚ*n×Ｚn)×(Ｚ*n×Ｚn)→Ｚ*n×Ｚn
は、
(a,b)*(a',b')＝(a'a(mod ｎ),a'b＋b'(mod ｎ))
と定義される。
【表１】
0004010766.tif 000005
【００３９】
符号化方式（Ｘ、Ｋ、Ｅ、Ｄ）の鍵空間Ｋが、ある演算「・」を有する群である場合、符号化及び復号変換は、この鍵により一意に決定され得る。これは、鍵空間Ｋが、メッセージ空間Ｘにおける符号化及び復号変換により形成された変換群Ｅ＝｛Ｅk｜ｋ∈Ｋ｝及びＤ＝｛Ｄk｜ｋ∈Ｋ｝と同型である場合に生じる。即ち、任意のｋ，ｋ'∈Ｋである場合に以下の式が成り立つ。
【数４】
0004010766.tif 000006
【００４０】
上記の表１に示される全ての方式が鍵により決定されることは、容易に確認することができる。鍵により決定される符号化方式は、ある鍵保有者から別の鍵保有者へメッセージの復号権を譲渡するための体系的な方法を可能にする。鍵空間と変換群との同型性により、１つの鍵ｋによる復号変換及び別の鍵ｋ'による符号化変換の結合は、その後、結合された鍵ｋ-1・ｋにより決定される符号化変換とみなされることが可能である。（Ｘ,Ｋ,Ｅ,Ｄ）を鍵により決定される符号化方式と仮定する。ｙ＝Ｅk(ｘ)は、メッセージｘ∈Ｘの鍵ｋ∈Ｋにより符号化されたバージョンであると仮定する。ｘの符号化済みメッセージの復号権は、ｋの鍵保有者からｋ'の鍵保有者へ、図３に示される２ステップのアルゴリズムで譲渡されることが可能である。
【００４１】
先ず、譲渡鍵ｔ＝ｋ-1・ｋを生成する（ステップ３１０）。次に、ｙ'＝Ｅt(ｙ)に従って、譲渡鍵ｔを用いてメッセージを符号化する（ステップ３１２）。
【００４２】
符号化及び復号変換群と同型である鍵空間の特性のために、このアルゴリズムは正確である。この正確さは、次のように証明することができる。
【数５】
0004010766.tif 000007
【００４３】
アルゴリズムの普遍性は、上述の方式の例の譲渡ステップを即座に導き出す。再度図３を参照すると、集合Ｂnに対するＸＯＲ方式ＸＯでは、ｙ＝Ｅk(ｘ)をｙ'＝Ｅk'(ｘ)に変換するために、先ず次の（３）で示される譲渡鍵ｔを生成し（ステップ３１０）、次に、この譲渡鍵ｔを用いてメッセージを次式（４）のように符号化する（ステップ３１２）。
【数６】
0004010766.tif 000008
【００４４】
Ｚ*nに対する乗法方式Ｍでは、ｙ＝Ｅa(ｘ)をｙ'＝Ｅa'(ｘ)に変換するために、先ず譲渡鍵t＝a'a-1(mod n)を生成する（ステップ３１０）。次に、この譲渡鍵ｔを用いてy'＝ty(mod n)に従ってメッセージを符号化する（ステップ３１２）。
【００４５】
Ｚnに対するシフト方式Ｓでは、ｙ＝Ｅb(ｘ)をｙ'＝Ｅb'(ｘ)に変換するために、先ず譲渡鍵t＝b'−b(mod n)を生成する（ステップ３１０）。次に、この譲渡鍵ｔを用いてy'＝y＋t(mod n)に従ってメッセージを符号化する（ステップ３１２）。
【００４６】
Πnに対する置換方式Ｐでは、ｙ＝Ｅp(ｘ)をｙ'＝Ｅp'(ｘ)に変換するために、先ず次式に示される譲渡鍵ｔを生成し（ステップ３１０）、次に、この譲渡鍵ｔを用いてy'＝t(y)に従ってメッセージを符号化する（ステップ３１２）。
【数７】
0004010766.tif 000009
【００４７】
以下で説明されるように、鍵により決定される符号化だけでなく、可換方式の積方式により復号権を譲渡することもまた可能である。可換方式を定義するために、本質的に同等である符号化方式を特徴付けることが必要である。Ｓ＝（Ｘ,Ｋ,Ｅ,Ｄ）及びＳ'＝（Ｘ,Ｋ',Ｅ',Ｄ'）が、同一のメッセージ空間Ｘを有する２つの符号化方式であると仮定する。各メッセージｘ∈Ｘ且つ各鍵ｋ∈Ｋである場合に、
Ｅk(ｘ)＝Ｅ'h(k)(ｘ)  且つ
Ｄk(ｘ)＝Ｄ'h(k)(ｘ)
であるような全単射（一対一及びそれ以上の）マッピングｈ：Ｋ→Ｋ'が存在する場合、ＳはＳ'と等価であるとされ、Ｓ≡Ｓ'で示される。明らかに、この方式の等価関係≡は、等価関係である。即ち、任意の符号化方式Ｓ、Ｓ'、Ｓ"にとって、（ｉ）Ｓ≡Ｓ、（ii）Ｓ≡Ｓ'はＳ'≡Ｓを暗示する、及び（iii）Ｓ≡Ｓ'及びＳ'≡Ｓ"は、Ｓ≡Ｓ"を暗示する、が成り立つ。従って、等価の符号化方式は、クラス内の各方式が、同クラス内の他の何れの方式よりも多い機能又は少ない機能を提供することはない点で等価クラスを形成する。
【００４８】
方式の等価関係は、符号化方式を複数の方法で特徴付けることを可能にする。符号化方式Ｓは、Ｓ2≡Ｓである場合に、ベキ等と言われる。ＸＯＲ、乗法、シフト、置換及び擬似方式を含む、多くの符号化方式は、ベキ等である。方式Ｓがベキ等である場合、積方式Ｓ2は特別な鍵を必要とするが、それ以上の機能を提供しないので、積方式Ｓ2を用いる意味はない。
【００４９】
方式の等価関係≡を用いる符号化方式の別の特徴付けは、可換方式の等価関係である。２つの符号化方式Ｓ及びＳ'は、Ｓ×Ｓ'≡Ｓ'×Ｓである場合に、可換と言われる。些細なことであるが、任意の方式は、それ自体と可換である。それよりも意味のある例は、乗法方式Ｍ及びシフト方式Ｓの可換である。それらが可換であること、即ちＭ×Ｓ≡Ｓ×Ｍ、を確かめるために、
Ｅb(Ｅa(x))＝ax＋b(mod n)と、
Ｅa(Ｅb(x))＝ax＋ab(mod n)と、
が比較され得、
ｈ(b,a)＝(a,a-1b(mod n)）
により定義されるマッピング
ｈ：ＫS×ＫM→ＫM×ＫS
が、積Ｓ×Ｍを積Ｍ×Ｓと同型にすることが確認される。
【００５０】
鍵により決定され且つ可換性である符号化方式の積方式は、メッセージの復号権を譲渡するための体系的な方法を享受する。仮にＳ1×Ｓ2を、鍵により決定され且つ可換性である２つの符号化方式の積方式とする。ｈ1：Ｋ2×Ｋ1→Ｋ1及びｈ2：Ｋ2×Ｋ1→Ｋ2である場合に、ｈ＝(ｈ1,ｈ2)：Ｋ2×Ｋ1→Ｋ1×Ｋ2は、Ｓ2×Ｓ1をＳ1×Ｓ2と同型にするマッピングであると仮定する。先ず、積方式もまた、鍵により決定されることを確認する。鍵空間の積Ｋ1×Ｋ2は、次の式（５）により定義される演算*に関する群である。何故なら、次式（６）のように証明されるからである。
【数８】
0004010766.tif 000010
【００５１】
ここで、ｘの符号化済みメッセージの復号権は、ｋの鍵保有者から別の鍵ｋ'の保有者へ、図３に示される２ステップのアルゴリズムで譲渡されることが可能である。先ず、次の式で示される譲渡鍵ｔを生成し（ステップ３１０）、その後、この鍵ｔを用いてy'＝Et(y)に従ってメッセージを符号化する（ステップ３１２）。
【数９】
0004010766.tif 000011
【００５２】
この譲渡アルゴリズムの正確さは、次の等式により証明される。
【数１０】
0004010766.tif 000012
【００５３】
この方法は、Ｚnに対して擬似暗号Ａを適用する以下の例により最もよく示される。Ａ＝Ｍ×Ｓであり、Ｍ及びＳは鍵により決定され且つ可換方式であるので、上述の方法は、擬似方式に適合する。上述のように、Ｓ×ＭをＭ×Ｓと同型にするのは、マッピングｈ(b,a)＝(a,ab)である。従って、h1(b,a)＝a及びh2(a,b)＝ab(mod n)が成り立つ。(a,b)から(a',b')への譲渡鍵ｔは、
0004010766.tif 000013
のように導くことができる。次に、第２の鍵(a',b')を用いてｙを復号するために、先ず次の式に示される譲渡鍵ｔを生成し（ステップ３１０）、その後、この譲渡鍵ｔを用いてy'＝t1y＋t2(mod n)に従ってメッセージを符号化する（ステップ３１２）。
【数１１】
0004010766.tif 000014
【００５４】
メッセージの復号権を譲渡するためのここで示される方法は、移行型である。これは、アリスからボブへ、そしてその後ボブからキャロルへの２つの連続して行われる譲渡が、アリスからキャロルへの直接的な譲渡と等価であることを意味する。各方式の例において、譲渡鍵は、その方式の鍵でもあることに留意することが重要である。
【００５５】
従って、２回の連続譲渡で用いられる２つの譲渡鍵は、直接譲渡のための譲渡鍵を形成するために組み合わせられることが可能である。擬似方式を例にとる。仮にk＝(a,b)、k'＝(a',b')、及びk"＝(a",b")をそれぞれ、アリス、ボブ、及びキャロルの鍵とする。すると、アリスからボブへの譲渡鍵はt＝(a'a-1,-a'a-1b+b')であり、ボブからキャロルへの譲渡鍵はt'＝(a"a'-1,-a"a'-1b'+b")であり、そしてアリスからキャロルへの譲渡鍵はt"＝(a"a-1,-a"a-1b+b")である。擬似方式における鍵として、ｔ及びｔ'の結合がｔ"をもたらすことは、次の式により容易に確認することができる。換言すると、メッセージの復号権の連続的な譲渡の結合は、メモリを必要とせず、全ての中間譲渡は、譲渡全体に反映されない。
【数１２】
0004010766.tif 000015
【００５６】
更に、方式ＸＯ、Ｍ、及びＳでは、譲渡鍵の生成ステップは、ｋによるｋ'の「復号」に等しいことに留意すべきである。従って、譲渡で必要とされる計算は、これらの方式の復号及び再符号化方法で用いられる計算と同一である。この新たな方法では、効率の面で、改善が見られないと考えるかもしれないが、この譲渡鍵はメッセージに依存していないので、計算は一度だけされればよい。譲渡に含まれるメッセージｍの数が増加すると、この特徴は、再符号化方法により必要とされる計算を半分まで減少させる。更に、この譲渡鍵ｔは、鍵ｋ及びｋ'に関する有効な情報を一切洩らさず、本明細書で説明されているこの方法に従って実行される譲渡は、メッセージｘを明らかにしない。これらの特性は、譲渡中のメッセージｘ及び復号鍵ｋ並びにｋ'のセキュリティが問題である場合に、魅力的である。
【００５７】
図３を参照して説明された（そして、以下で更に詳細に説明される）方法の実行を可能にする一般的なシステム構成が、図４に示される。多くの代理暗号化アプリケーションには、３つの関与パーティー（当事者）、即ち、エンクリプター（暗号化する人）４１０、譲渡人Ａ４１２、及び譲受人Ｂ４１４が介在する。理解されるように、暗号化、復号化、及び本発明で実行される他の処理演算は、各パーティーの管理下でプロセッサ（４１６、４１８、４２０）により容易に処理される。各プロセッサは、データ記憶用のメモリ（４２２、４２４、４２６）と、メッセージの送受信が可能な通信インターフェース（４２８、４３０、４３２）とを備えている。
【００５８】
［代理暗号化方式］
暗号化方式よりも寧ろ、より形式的な代理暗号化方式に関する、本開示の残りは、以下のように構成される。先ず、一般の代理暗号化方式が説明され、幾つかの判断基準に従って特徴付けられる。以下の数段落では、本開示全体を通して用いられ、エルガマル公開鍵暗号化方式を喚起する表記法を明確にする。比較のために、本開示は次に、２つの既存の代理暗号化方式を挙げ、それらの特性を本発明と比較して調べる。次に、２つの新たな代理暗号化方式に関する詳細が、それらのセキュリティ及び性能分析と共に、紹介される。その後、これらの新たな方式の、膨大なドキュメント配布及びファイル保護への適用が示される。
【００５９】
序論で示されたように、代理暗号化の目的は、ある人から別の人へ復号権を安全且つ効率的な方法で委任することである。後に続く議論のために、代理暗号化に関与し得るパーティーの役割を定義しておくと都合がよい。２つの最も重要な役割は、譲渡人及び譲受人の役割である。譲渡人は、暗号化されたメッセージのオリジナルの鍵保有者であり、復号権を誰か他の人に委任することを希望する人である。譲受人は、譲渡人の代わりに復号を実行するように指名される鍵保有者であり、従って、譲渡人の復号の代理を務める。序論の動機付けのための例において、アリスは譲渡人であり、ボブは譲受人である。他の役割には、元は譲渡人のためにメッセージを暗号化するエンクリプター、及び譲渡人のために暗号化されたメッセージを譲受人のために暗号化されたメッセージへ変換すること等の、あるメッセージ処理作業の実行を助けることができる促進者（ファシリテーター）が含まれ得る。当然ながら、これらの全ての役割が、異なるパーティーにより行われる必要はない。例えば、以下で説明されるMambo及びOkamotoの方式におけるように、１つのパーティーが、譲渡人及び促進者の役割を行ってもよい。
【００６０】
これらの役割が適切に割り当てられた場合、代理暗号化方式は単に、譲渡人が、場合によっては促進者からの援助を幾らか受けながら、エンクリプターにより元々譲渡人のために生成されたメッセージの復号権を譲受人に委任する方法の説明である。代理暗号化方式は、４つの一般的なステップ、即ち、メッセージの暗号化、代理鍵の生成、代理変換、及びメッセージの復号、から構成されることが可能である。これらのステップは、図５を参照して、以下で更に詳細に説明される。
１．メッセージの暗号化Ｅ：エンクリプターは、譲渡人の暗号化鍵を用いて暗号化済みメッセージを生成し、このメッセージを譲渡人に配信する（ステップ５１０）。
２．代理生成π：復号権を譲受人に委任するために、譲渡人は、譲渡人のために暗号化されたメッセージを譲受人が復号することを可能にするために委任トークンとして代理鍵πを生成する（ステップ５１２）。
３．代理変換Π：必要に応じて、促進者は、場合によっては代理鍵πを用いて、譲渡人のために暗号化されたメッセージを譲受人のために暗号化されたメッセージに変換するために、代理変換Πを実行する（ステップ５１４）。
４．メッセージの復号Ｄ：変換されたメッセージ、及び場合によっては代理鍵πを受取ると、譲受人はメッセージを復号する（ステップ５１６）。
【００６１】
従って、上述の一般的な方式は、序論で触れた代理暗号化への２つの単純な解決策を含有している。再暗号化方式は、譲渡人（アリス）が、メッセージを実際に復号し、その後譲受人（ボブ）のために暗号化する促進者でもある特殊なケースであり、代理（鍵）πは、譲受人にではなく、譲渡人によってのみ用いられる、譲渡人の復号鍵及び譲受人の暗号化鍵の集合と考えられることが可能である。譲渡人の復号鍵を譲受人へ渡す方式は、代理鍵が復号鍵であり、且つ代理変換が識別変換である、一般の方式のまた別の特殊なケースである。
【００６２】
しかしながら、上述の一般の方式から導かれることが可能な全ての方式が、代理暗号化方式として適切であるわけではない。直感的に、代理暗号化方式は、幾つかの基本要件、即ち、以下で説明されるような権利の委任、セキュリティ、移行性、及び性能を満たさなければならない。
【００６３】
権利の委任：メッセージ復号ステップの最後に、譲受人がオリジナルメッセージを正しく復元できることを保証するために、次の方程式が任意のメッセージｍに適合しなければならない。
Ｄ(Π(Ｅ(ｍ,ｅA),π),ｄB,π)＝ｍ
この式において、Ｅ(ｍ，ｅ)は、暗号化鍵ｅの下でのメッセージｍの暗号化関数であり、Ｄ(ｃ,ｄ,π)は、復号鍵ｄ及び場合によっては代理鍵πの下での暗号化済みメッセージｃに対応する復号関数であり、Π(ｃ,π)は、代理鍵πに従って、暗号化済みメッセージｃを変換する代理関数であり、ｅA、ｅB、ｄA、及びｄBはそれぞれ、譲渡人Ａ及び譲受人Ｂの暗号化鍵及び復号鍵である。
【００６４】
上述の正確さに加えて、権利の委任の機能が保証されなければならない。ある形式において、これは、代理鍵が発行され、代理変換が完了した後には、メッセージ復号ステップが譲渡人から一切の個人情報を要求しないこと、そして譲受人によってのみ実行されるべきことを意味する。別の形式においては、これは、譲渡人からの委任の拒否が不可能であることに等しい。即ち、一旦代理鍵が生成され、代理変換が実行されると、譲受人が代理鍵を取得し、変換済みのメッセージを受信することを妨げる等の他の手段を求めることなく、譲渡人はこの委任を否定することはできない。この機能の結果として、譲渡人の復号鍵は、譲受人の復号鍵及び場合によってはメッセージを復号するための能力を維持する代理鍵と共に破壊されることが可能である。（これは、後に説明されるファイル保護への適用に有用である。）
【００６５】
セキュリティ：本質的に、代理暗号化方式もまた、少なくとも譲受人の視点からの暗号化方式である。代理鍵及び変換の導入は、暗号化のセキュリティとプライバシー（守秘権）を決して危険にさらしてはならない。従って、任意の認可されていない第三者にとってオリジナルメッセージ及び公的に入手可能な情報から譲渡人及び譲受人の復号鍵を復元することは、少なくとも計算上困難でなければならない。
【００６６】
更に、任意の信用されていないパーティーによる有効な代理鍵の偽造は、非常に困難でなければならない。しかしながら、代理鍵πの生成は、少なくとも譲渡人の復号鍵に関する知識を必要とすることは明白であり、そうでないならば、根本の暗号化システムは安全ではない。
【００６７】
移行性：当然ながら、代理関係は移行性であるべきである。譲渡人が復号権を委任した後、譲受人は、単に同じ方式に従うことにより、更に別の譲受人に権利を委任するために新たな譲渡人の役を務めることが可能であるべきである。更に、ある人、例えば第１の譲渡人が、全ての中間代理鍵を１つの代理鍵に結合し、全ての一連の代理変換を１回の変換にまとめることにより、新たな譲受人に権利を直接委任することを可能にするべきである。
【００６８】
性能：再暗号化方式は、代理暗号化への直観的な単純な解決策であり、上述の権利の委任、セキュリティ及び移行性の要件を満たすので、任意の実践的に有用な代理暗号化方式が、再暗号化方式と比較した場合に、計算性能における劣化を有さないのは当然である。
【００６９】
代理暗号化方式は、それらの適用要件により異なり得る。それらは多くの観点から分類されることが可能である。明白な観点には、それらが公開鍵に基づいているか、又は秘密鍵に基づいているか、及びそれらのセキュリティの尺度が情報の理論上の意味で完全か、又は幾つかの計算上の問題の困難さに依存しているか、が含まれる。以下の観点は、代理鍵及び変換に関する観点である。
【００７０】
秘密性：メッセージ及び復号鍵の秘密性は厳守されなければならない一方で、代理鍵及び代理変換の秘密性は、必須要件でなくてもよい。生成される代理鍵が、そのセキュリティ及び信頼されていない環境で適用される代理変換を危険にさらすことなく発行される場合に、この方式は公開型と呼ばれる。非公開型の方式では、代理鍵が譲渡人から促進者及び譲受人へ譲渡されるときに、代理鍵が開示されるのを防ぐための配慮が成されなければならない。その結果、代理鍵を用いる代理変換もまた、非公開型で実行されなければならない。
【００７１】
可換性：メッセージに関すると、代理暗号化は、譲受人が譲渡人に代わって復号することをその定義により許可するので、譲受人は譲渡人により無条件で信用されなければならない。しかしながら、信用モデルは、彼らの個人情報ごとに異なり得る。代理暗号化方式は、譲渡人及び譲受人が彼らの秘密鍵に関して互いに信用しなければならない場合、可換性であり、そうでない場合は、可換性ではない。可換性である例は、代理鍵が、譲渡人及び譲受人の何れかがその鍵から他方の復号鍵を取得することが可能なように生成されている場合である。こうした例ではいつでも、代理暗号化メカニズムは、譲受人が暗号化されたメッセージを直接復号するために、譲渡人の復号鍵を使用することを可能にする鍵交換プロトコルにまで簡約され得る。
【００７２】
普遍性：多くの場合、譲渡人は、委任された復号権の範囲を制限することを望む。しばしば意図される制限には、代理鍵が指定された譲受人によってのみ使用されること、代理鍵が特定のメッセージにのみ適用可能であること、又は代理変換が特定の促進者によってのみ適用されることが可能であること、が含まれる。例えば、代理暗号化方式が鍵の条件付証書等のあるアプリケーションで用いられる場合、代理鍵は、それらが適用されるメッセージとは独立していることが理想的である。しかしながら、ある人の遺書に保護されて記載されている遺産等の特別な場合の委託のためには、代理鍵が、指名されたパーティー（例えば、孫）にのみ制限され、特定のメッセージ（例えば、遺書のある部分）にのみ適用可能であり、また特定のパーティー（弁護士）による代理変換で恐らく使用されることが可能であることが非常に好ましい。
【００７３】
縮退作用：譲渡人及び譲受人が同一人物であり、同一の復号鍵を用いるという極端な状況で用いられる場合、代理暗号化方式は、複雑さ（重要な代理鍵及び変換、及び更なる促進者の必要性等）を一切導入せずに、一般の暗号化方式へ約されるべきである。
【００７４】
以下で示されるように、Mambo及びOkamotoの方式は、非公開型であり、非可換性である。彼らの方式において代理鍵は、メッセージ非依存であっても、メッセージ依存であるが、指定された譲受人に制限されていなくてもよい。Blaze及びStraussの方式は、全くその反対であり、公開型であるが、可換性であり、その代理鍵はメッセージ非依存であるが、指定された譲受人に一意に関連付けられている。比較すると、本明細書で説明される本発明の方式は、公開型、且つ非可換性であり、それらの代理鍵はメッセージ依存であり、指定された譲受人に制限される。
【００７５】
［エルガマル暗号システムを用いた代理暗号化］
本開示で以下で議論される代理暗号化方式は全て、乗法群内の離散対数に基づいているので、これらの全ての暗号化方式に共通する形式的な設定がここで採用される。ここで用いられる表記法は、エルガマル暗号化方式の喚起である。離散対数に基づく暗号化方式は、ＲＳＡタイプの方式をしのぐ技術的長所及び有限体に対する楕円形状曲線群等の多数の有限群への自然な一般化のために、特に有利である。
【００７６】
上述のように、任意の自然数ｎに対して、Ｚn＝{０，1，...，ｎ−１}が整数モジュロｎの環を意味すると仮定し、Ｚ*n＝{ｍ∈Ｚn|ｇｃｄ(ｍ,ｎ)＝１}がＺnの乗法群を意味すると仮定する。ｎが素数である場合は、Ｚ*n＝{１，...，ｎ−１}であることに留意すべきである。モジュロｎ及びｎに対して相対的に素である数ａに対して、ａ-1はａモジュロｎの乗法型逆数を意味すると仮定する。即ち、ａ-1はａａ-1≡１(mod n)を満たす要素である。
【００７７】
Ｚ*pの要素ａは、べき乗モジュロｎの数がｍである場合、位数（order）ｍであると言われる。もし存在すれば、Ｚ*nの生成元ｇは、位数｜Ｚ*n｜（Ｚ*nのサイズ）の要素であり、この場合は、Ｚ*nは巡回群である。ｎが素数である場合、１以外のＺ*nの全ての要素は、Ｚ*nの生成元である。
【００７８】
Ｚ*nを生成元ｇとの巡回群であると仮定する。ｌｏｇgｘと表記される底ｇに対する要素ｘの離散対数は、ｘ＝ｇa(mod n)を満たす０≦ａ≦ｎ−１である一意の整数ａである。離散対数問題は、素数ｐ、Ｚ*pの生成元ｇ、及びｘ∈Ｚ*pを与えられて、ｇa≡ｘ(mod p)を満たす０≦ａ≦ｐ−２である整数ａを探し出すものである。
【００７９】
非常に緊密な相互関係をもった問題は、Diffie-Hellman問題である。これは、素数ｐ、Ｚ*pの生成元ｇ、及び要素ｇa(mod p)及びｇb(mod p)を与えられて、ｇab(mod p)を探し出す問題である。離散対数問題のあらゆる解がDiffie-Hellman問題を解くために用いられ得るので、離散対数問題は、少なくともDiffie-Hellman問題と同程度難しい。
【００８０】
図６に示されるエルガマル暗号化方式は、暗号化及びデジタル署名の両方のためにエルガマルにより提案された離散対数ベースの公開鍵暗号システムの一部である。T. ElGamalによる「離散対数に基づく公開鍵暗号システム及び署名方式(A public key cryptosystem and a signature scheme based on discrete logarithm)」（IEEE Trans. on Information Theory、Vol.31、465〜472頁、1985年）を参照のこと。
【００８１】
ここで図６を詳細に参照すると、エルガマル方式は、２つの公開パラメータｐ及びｇを確立することから開始される（ステップ６１０）。ｐはｐ−１が大きな（通常１６０ビットの）素因数ｑ（例えば、ｐ＝２ｑ＋１）を有するような素数（一般に５１２ビット長）であり、ｇはＺ*pの生成元である。あるユーザのための専用鍵は、乱数ａ∈Ｚ*p-1を一様に選択することにより設定される（ステップ６１２）。これに関する公開鍵は、α＝ｇa(mod p)として計算される（ステップ６１４）。ユーザはαを公表し、ａを秘密にする。
【００８２】
ユーザＡに送信されるはずであるメッセージｍを公開鍵αを用いて暗号化するために、乱数ｋ∈Ｚ*p-1が一様に選択され（ステップ６１６）、この乱数と共に、Ａに送信されるべき暗号化されたメッセージを表わす一対の数（ｒ,ｓ）が次のように計算される（ステップ６１８）。
ｒ＝ｇk(mod p）及びｓ＝ｍαk(mod p）
【００８３】
メッセージ（ｒ,ｓ）を復号するために、受信者Ａは、
ｍ＝ｓ(ｒa)-1(mod p)
を計算することにより、メッセージｍを復元する（ステップ６２０）。
【００８４】
公開パラメータの選択は、方程式ｇp-1(mod p)≡１（フェルマーの小定理）を成立させることを意図して行われることに留意すべきである。これらのパラメータは、確実に全てのユーザに知らされるべきである。これらのパラメータは、例えば、ある委任された当局者により選択されることが可能である。また、秘密鍵ａが選択されるこの方法は、ａモジュロp−１の逆数ａ-1が存在し、且つ一意であることを保証する。
【００８５】
ＲＳＡ公開鍵暗号化方式とは異なり、暗号化されたメッセージもまた乱数ｋに依存するので、エルガマル方式は非確定的である。実際に、Diffie-Hellmanの鍵交換プロトコルに本質的に類似している。メッセージｍを暗号化及び復号するための、送信者と受信者との間で確立される鍵は、ｒ＝ｇk(mod p)（暗号化済みメッセージの一部）及びα＝ｇa(mod p)（Ａの公開鍵）からｇak(mod p)である。しかしながら、エルガマル暗号化方式のセキュリティは、離散対数問題及びDiffie-Hellman問題の困難さに依存する。現在まで、離散対数問題のための最適なアルゴリズムの探求の実行は、効果的な（多項式時間の）解を一切見出していない。これは、ＲＳＡ方式のセキュリティの基となっている整数因数分解問題の状況に類似している。更に、ある素数ｐに対して、離散対数問題を解くことは、同サイズの因数分解問題を解くのと少なくとも同程度難しいこともまた示されている。これは、これらのｐに対して、エルガマル方式がＲＳＡ方式と少なくとも同程度安全であることを意味している。
【００８６】
ここで図７を参照すると、譲渡人Ａに送信される必要のあるメッセージｍを公開鍵αと共に与えられた場合、メッセージｍは、乱数ｋ∈Ｚ*p-1を一様に選択し（ステップ７１０）、
ｒ＝ｇk(mod p)  及び  ｓ＝ｍαk(mod p)
のように、暗号化済みメッセージを表わす一対の数（ｒ,ｓ）を計算する（ステップ７１２）ことにより、暗号化される。
【００８７】
復号権を譲受人Ｂに委任するために、譲渡人Ａは、乱数ａ'∈Ｚ*p-1を一様に選択し（ステップ７１４）、π＝aa'(mod(p-1))を計算する（ステップ７１６）ことにより、代理鍵πを生成する。その後、Ａはこの代理鍵πをＢへ安全な方法で（例えば、Ｂの公開鍵を用いて暗号化することにより）配信し（ステップ７１８）、ａ'の値を内密にしておく。
【００８８】
Ｂがメッセージを復号するのを可能にするために、Ａは次の式を計算する。なお、この式においてａ'-1は、ａ'モジュロp−１の乗法型逆数である（ステップ７２０）。一対の数（ｒ',ｓ）は、Ｂに送信されるべき変換された暗号化済みのメッセージである。
【数１３】
0004010766.tif 000016
【００８９】
変換されたメッセージ（ｒ',ｓ）及び代理鍵πを受信すると、Ｂは次の式を計算することによりメッセージｍを復号する（ステップ７２２）。
【数１４】
0004010766.tif 000017
【００９０】
この代理暗号化方式は、Ｂの秘密鍵が代理鍵πに置き換えられる以外は、エルガマル方式の暗号化及び復号要素を用いる。変換されたメッセージ（ｒ',ｓ）を復号するためにπを用いる場合、次の式が成立するので、この方式は正確である。
【数１５】
0004010766.tif 000018
【００９１】
この方式のセキュリティは、２つの観点から評価される。譲受人Ｂを含む全ての人にとって、入手可能な全ての情報に基づいて譲渡人Ａの秘密鍵を知ることの複雑さは、その人が離散対数問題を解くのと同程度である。代理鍵を用いてさえ、ある人が暗号化済みメッセージを変換する（即ち、（ｒ',ｓ）を生成する）ためにＡを装うことの難しさは、その人がDiffie-Hellman問題を解くのと同程度である。
【００９２】
この方式は幾つかの魅力的な特徴を有する。第１に、この方式のセキュリティは、ＢがＡの秘密鍵を復号することは困難であることを暗示する。この点で、ＡがＢを信用する必要はなく、従って、この方式は可換性ではない。第２に、生成される代理鍵πは、メッセージ非依存である。Ｂは、Ａにより変換された全てのメッセージを復号するために、この代理鍵πを用いることが可能である。第３に、この方式は、移行要件を満たす。代理鍵π及び変換されたメッセージ（ｒ',ｓ）の両方を受信すると、委任されたユーザＢは、πを秘密鍵ａとして、（ｒ',ｓ）を（ｒ,ｓ）として扱い、代理生成及び変換を繰返すことにより、更に別のユーザＣへ代理を委任することができる。第４に、この方式は、再暗号化方式に比べ、より少ない計算労力を必要とする。
【００９３】
しかしながら、代理暗号化をこの方式の方法で実施することは、幾つかの短所を有する。第１に、代理鍵は委任された譲受人Ｂに関する情報を一切含有せず、譲渡人Ａの秘密鍵単独から導かれる。更に、Ｂにより実行されるメッセージの復号は、Ｂの秘密復号鍵を必要ともしない。その結果、メッセージは、必ずしもＢでなくても、代理鍵及び暗号化済みメッセージを手に入れる如何なる人によっても復号されることが可能である。従って、Ｂは、代理情報を直接渡すことにより、誰かにメッセージの復号を依頼することが可能である。多くの場合、これは好ましくない。Ａは、Ａの代理として作業する鍵保有者を指定することが可能であるべきである。
【００９４】
第２に、代理鍵πは、ＡとＢとの間の秘密でなければならず、ＡからＢへ安全な方法で送信される必要がある。πがＢの情報を一切含有していないこと、及び（ｒ',ｓ）が公然と通信され得ることの結果として、πを明らかにすることは、メッセージの公表に本質的に等しい。
【００９５】
第３に、代理変換は、Ａにより行われなければならない。変換で用いられる値ａ'は、Ａだけの秘密であり、ＢがＡの復号鍵ａを知ることを防ぐことが重要である。
【００９６】
要するに、この方式は、可換性でなく、メッセージ非依存であるが、個人に属し、特定の譲受人を指定することができない。
【００９７】
Blaze及びStraussは、別の公開鍵代理暗号化方式について説明している。図８に示されるように、この方式はエルガマル暗号化に構造的に類似しているが、パラメータが違ったふうに用いられており、またメッセージを復号するために、秘密鍵の逆数が用いられている。
【００９８】
ここで図８をより詳細に参照すると、譲渡人Ａに送信される必要のあるメッセージｍを公開鍵αと共に与えられた場合、メッセージｍは、乱数ｋ∈Ｚ*p-1を一様に選択し（ステップ８１０）、
ｒ＝ｍｇk(mod p)  及び  ｓ＝αk(mod p)
のように、暗号化済みメッセージを表わす一対の数（ｒ,ｓ）を計算する（ステップ８１２）ことにより、暗号化される。
【００９９】
復号権を譲受人Ｂに委任するために、譲渡人Ａは、Ｂの秘密復号鍵ｂを取得し（ステップ８１４）、π＝a-1b(mod(p-1))を計算する（ステップ８１６）ことにより、代理鍵πを生成する。なお、この式においてａ-1はＡモジュロp−１の秘密鍵ａの逆数である。代理鍵πは、公表されることが可能である。
【０１００】
Ａのために暗号化されたメッセージ（ｒ,ｓ）をＢのために暗号化されたメッセージに変換するために代理鍵πを用いるために、促進者（代理鍵πは公開されているので、必ずしも（譲渡人）Ａでなくてもよい）は、ｓ'＝ｓπ(mod p)を計算する（ステップ８１８）。この一対の数（ｒ,ｓ')は、その後Ｂへ転送されることが可能な変換された暗号化済みのメッセージを表わす。
【０１０１】
変換されたメッセージを復号するために、Ｂは次の式を計算する（ステップ８２０）。なお、この式において、ｂはＢの秘密鍵であり、ｂ-1はｂモジュロp−１の逆数である。
【数１６】
0004010766.tif 000019
【０１０２】
メッセージの復号において、次の式が成り立つので、この方式は正しい。
【数１７】
0004010766.tif 000020
【０１０３】
この方式は、メッセージｍ及び秘密鍵ａ及びｂが暗号化済みメッセージ及び公開鍵から復元されることは不可能である点で、安全である。更に、代理鍵の発行は、メッセージｍ又は秘密鍵ａ及びｂを危険にさらすことはない。より詳細には、公開情報（α、β、ｒ、ｓ、π、ｓ'）からｍを復号する問題は、Diffie-Hellman問題と同様に難しい。
【０１０４】
以前の方式とは異なり、最後のセキュリティの特徴は、代理鍵πを個人に属するように維持することを不要にする。従って、譲渡人Ａは、代理変換を実行する誰にでも（促進者）πを公然と送信することが可能であり、又は単にそれを公表することが可能である。更に、この方式は、代理変換を実行するためにＡから一切秘密を必要としないので、信用の有無に関わらず誰でも変換を実行することができ、従って、変換処理においてＡ並びにＢが介在する必要性を排除する。
【０１０５】
また、以前の方式とは異なり、ユーザＢにとっては、一般の暗号化メッセージの復号と、代理変換されたメッセージの復号との差はない。この優れた特徴は、ユーザＢが全ての受信した暗号化済みメッセージを一様に取り扱うことを可能にする。実際に、信用されていない促進者又はサーバが代理変換を実行し、その後メッセージをユーザＢに転送することが可能である。
【０１０６】
これらの好ましい特徴にも関わらず、この方式は可換性であり、関与する鍵保有者Ａ及びＢは、双方向に互いを信用しなければならない。Ｂは、（代理鍵にｂ-1を掛けることにより）Ａの秘密鍵ａを知ることができる。更に、代理鍵はまた、先の方式においてと同様に、メッセージ非依存であり、これは、Ａの秘密鍵ａのために暗号化された全てのメッセージを復号する権利をＢに委任する。従って、この方式は公開型であり、メッセージ非依存であるが、可換性である。
【０１０７】
本発明の２つの暗号化方式がここで提示され、次にそれらのセキュリティ、可換性、及び性能に関して分析される。非公開型の代理方式と同様に、それらは非可換性であり、それと同時に、可換性代理方式がするように公開代理鍵及び変換をサポートする。しかしながら、これらの方式は、メッセージ依存という点で、非公開型及び可換性方式とは異なる。更に、これらの方式の総合的な性能は、エルガマルに基づく再暗号化方式よりも優れている。
【０１０８】
また、これらの方式は、エルガマル方式と同じ方式設定を共有し、譲渡人Ａが譲受人Ｂへ復号権を委任する様相を呈する。
【０１０９】
エルガマル方式を代理暗号化方式に適合する方法を理解するために、エルガマル方式の幾つかの詳細を調べることが有益である。暗号化済みメッセージｍの要素ｒは、受信者Ａの秘密鍵ａ及び公開鍵αとは独立していることに留意すべきである。ｓ＝ｍαk(mod p)＝ｍｇka(mod p)のように、αは要素ｓのみに用いられ、ａはｓの指数に暗に埋め込まれている。従って、このことは代理変換が、Ａの秘密鍵ａをｓから取り除き、それをＢの秘密鍵ｂに置き換えることにより、Ａのために暗号化されたメッセージをＢのために暗号化されたメッセージへ変換するには十分である。ＢがＡの秘密鍵ａを取得するのを防ぐために、代理鍵を生成する関数は、とにかく「一方向」でなければならない。実際に、これは、
π＝ｇk(b-a)(mod p)
のように、乱数ｋの助けにより達成されることが可能である。結果として、メッセージ変換を完了させる代理変換は、
ｓ'=ｓπ(mod p)=ｍｇkaｇk(b-a)(mod p)=ｍｇkb(mod p)
のように表わされる。
【０１１０】
上述の議論は、図９の方式を導く。この方式は、代理鍵及び変換が、セキュリティ要件を満たし、好ましい公開性及び非可換性特性を提供する結果をもたらす。
【０１１１】
ここで図９を参照すると、譲渡人Ａに送信される必要のあるメッセージｍを公開鍵αと共に与えられた場合、メッセージｍは、乱数ｋ∈Ｚ*p-1を一様に選択し（ステップ９１０）、
ｒ＝ｇk(mod p)  及び  ｓ＝ｍαk(mod p)
のように、暗号化済みメッセージを表わす一対の数（ｒ,ｓ）を計算する（ステップ９１２）ことにより、暗号化される。
【０１１２】
復号権を譲受人Ｂに委任するために、譲渡人Ａは、Ｂの認証復号鍵ｂを取得し（ステップ９１４）、π＝ｒb-a(mod p)を計算する（ステップ９１６）ことにより、代理鍵πを生成する。
【０１１３】
メッセージは、ｓ'＝ｓπ(mod p)を計算することにより、（ｒ,ｓ）から（ｒ,ｓ'）へ変換される（ステップ９１８）。このメッセージｍはその後、ｍ＝ｓ'(ｒb)-1(mod p)を計算することにより、（ｒ,ｓ'）からＢによって復号される（ステップ９２０）。
【０１１４】
明らかに、この方式は、エルガマル方式のメッセージ暗号化及び復号ステップを用いる。メッセージｍは、
s'(rb)-1(mod p)=sπ(rb)-1(mod p)=mgakgk(b-a)(gkb)-1(mod p)=m
から復元されることが可能であるので、この方式は正しい。
【０１１５】
この方式の優れた特徴は、一般の暗号化済みメッセージ及び代理暗号化済みメッセージが譲受人Ｂにとっては同じように見えるばかりでなく、この方式は、Ａ及びＢが同じ鍵を有する同じユーザである場合のエルガマル方式と一致する。この場合、代理値πは１に等しく、代理変換は識別変換である。
【０１１６】
この方式が移行性であることを理解するのは容易である。代理変換されたメッセージを受信すると、譲受人Ｂは、鍵ａ及びｂの代わりにｂ及びｃを用いて代理生成ステップを繰返すことにより、更に例えば別の譲受人Ｃへ復号権を委任するために、譲渡人Ａのように行動することが可能である。
【０１１７】
また、可換性方式と同様に、代理生成ステップは、代理鍵πを生成するためにＡ及びＢの秘密鍵の両方を必要とする。代替方法として、このステップは、Ａ及びＢの両方により信頼される任意の人により実行されてもよい。上述のように、Ａの秘密鍵が絶対に必要である。さもなければ、メッセージを復号するために誰でも代理鍵を発行でき、根底の暗号化方式が安全でなくなる。Ｂの秘密鍵ｂを確立し、これを伝達するために、Diffie-Hellman鍵交換等の多くの鍵交換プロトコルが使用され得る。以下で更に詳細に示されるように、ある実用的な適用においては、鍵ｂの必要性もまた、問題ではなく、即ち緩和されることが可能である。
【０１１８】
しかしながら、非公開型及び可換性の方式とは異なり、本方式は、Ａのために暗号化されたメッセージの意図されたメッセージ以外を、譲受人Ｂに容易に復号させない。明らかに、代理鍵πは、暗号化済みメッセージｍに特有の一片の情報、即ち乱数ｋを含有する。この点で、代理方式は、メッセージ依存である。更に、この方式は、ＢがＡの秘密鍵ａを見出すことが困難であるという点で、非可換性である。この事実は、この方式の性能と共に、次の方式を示した後に立証される。
【０１１９】
先の方式において、代理変換は、暗号化済みメッセージの要素ｓのみを変化させることに留意すべきである。ｓはメッセージｍに関する情報を実際に保有する部分であるので、ｍが非常に長いメッセージである場合に、この方式は効率的ではない。例えば、生成される代理鍵はメッセージと同程度長く、代理変換に費やされる労力は、メッセージ全体の長さに比例する。
【０１２０】
図１０に示される方式は、この状況を改善する傾向にある。この方式は、可換性方式のメッセージ暗号化ステップを用い、このステップでメッセージｍがｓからｒへシフトされる。その代理鍵及び変換は、ここでは、メッセージｍに直接依存しない。
【０１２１】
図１０に示されるように、譲渡人Ａに送信される必要のあるメッセージｍを公開鍵αと共に与えられた場合、メッセージｍは、乱数ｋ∈Ｚ*p-1を一様に選択し（ステップ１０１０）、
ｒ＝ｍｇk(mod p)  及び  ｓ＝αk(mod p)
のように、暗号化済みメッセージを表わす一対の数（ｒ,ｓ）を計算する（ステップ１０１２）ことにより、暗号化される。
【０１２２】
復号権を譲受人Ｂに委任するために、譲渡人Ａは、Ｂの認証復号鍵ｂを取得し（ステップ１０１４）、次の式を計算することにより代理鍵πを生成する。なお、この式においてａ-1はａモジュロp−１の逆数である。
【数１８】
0004010766.tif 000021
【０１２３】
メッセージは、ｓ'＝ｓπ(mod p)を計算することにより、（ｒ,ｓ）から（ｒ,ｓ'）へ変換される（ステップ１０１８）。このメッセージｍは次に、次の式を計算することにより（ｒ,ｓ'）からＢによって復号される（ステップ１０２０）。なお、この式においてｂ-1は、ｂモジュロp−１の逆数である。
【数１９】
0004010766.tif 000022
【０１２４】
この方式は、次の式が成り立つので、正しい。この方式の他の特性は、前述の方式と同様に証明されることが可能である。
【数２０】
0004010766.tif 000023
【０１２５】
それらの方式の性質上の類似性により、２つの新しい方式の内の第１の方式のみが、そのセキュリティ及び非可換性に関してここで分析される。第２の方式に関してもほぼ同様の議論が成され得る。更に、第１の方式（並びに第２の方式）は、移行型であり、そのセキュリティは２人を超える鍵保有者を関与させ得るが、ここで提供される分析は、２人の鍵保有者の場合のみを考える。一般例もまた同様である。提示のわかり易さのために、「（mod p）」はこの項では省略されるが、その発生はコンテキストから明らかである。
【０１２６】
この方式のパラメータ（ｐ,ｇ）以外の、方式から入手可能な公開情報には、
α＝ｇa、β＝ｇb、ｒ＝ｇk、ｓ＝ｍｇak、π＝ｇk(b-a)、ｓ'＝ｍｇbk
が含まれることを喚起されたい。
【０１２７】
以下に示す理由のために、この方式は計算上安全である。Diffie-Hellman及び離散対数問題を解くことが困難であると仮定すると、公開情報からメッセージｍ及び秘密鍵ａ並びにｂを復号することは困難である。代理鍵は公開情報の一部であるので、これはこの鍵を公表することがメッセージ又は秘密鍵を危うくしないことを暗に示している。この結果、誰かが体系的方法で有効な代理鍵を偽造することは困難である。更に、この方式は、例えＢの秘密鍵を用いてもなお、Ａの秘密鍵を復号することが困難である点で、非可換性であることが示される。代理鍵が実際に、Ａ及びＢの双方から信頼された第三者により生成される場合、この事実は、ＢがＡを信用する必要のないことを暗に示す。これは、可換性方式に対する重要な改善である。
【０１２８】
更に、上述のように、本発明の代理暗号化方式は、メッセージを再暗号化するよりも効率がよい。表２に示されるのは、本明細書で説明されている本発明の２つの代理暗号化方式が、それらが必要とする計算量に関して、エルガマルアルゴリズムを用いた再暗号化方式と比較された性能である。表２には、全てモジュロｐで計算される、乗法演算、べき乗演算、及びＮＯＴ演算の数が、方式ごとに列挙される。
【表２】
0004010766.tif 000024
【０１２９】
エルガマル方式を用いた再暗号化のための演算の総数は、メッセージが先ず暗号化され、その後復号され、次に再暗号化された後に再度復号されるので、１回のエルガマル暗号化及び復号のための演算数の２倍であることに留意すべきである。更に、第２の方式での計算は、(ｉ)方式の設定ステップで逆数ａ-1及びｂ-1を予め計算しておくこと、及び(ii)２つのべき乗を用いる代わりに、代理生成ステップで２つの指数要素(モジュロ(ｐ−１))を乗算すること、により最適化することが可能である。第２の方式の下に示される第２のセットの数値は、この最適化により得られた結果である。総合的には、ここで示されている本発明の代理暗号化方式は、単純なエルガマルベースの再暗号化方式よりも優れた性能を有する。
【０１３０】
［用途］
公開型、且つ非可換性の代理暗号化方式は、広範囲に及ぶ用途を実施するための重要なメカニズムを提供する。大量ドキュメントの配布及びファイル保護は、本開示の２つの重要な動機である。これらの用途は、代理暗号化のための２つの一般的な状況に対応する。前者は、譲渡人が最初にメッセージを暗号化する人である場合に関係し、後者は、譲渡人及び譲受人が同一の鍵保有者であるが、異なる鍵を有する場合の自動的な委任に関係する。
【０１３１】
再度述べるが、ドキュメントは、そのコンテンツがテキスト、グラフィックス、オーディオ、ビデオ、実行可能なプログラム又はマルチメディアであってもよい、任意のデジタルファイルを指すことに留意すべきである。ＤＥＳ、ＩＤＥＡ、及びＲＣ４等の従来の非公開鍵アルゴリズムと比較すると、公開鍵アルゴリズムは非常に（処理速度が）遅い傾向にあり、また非公開鍵アルゴリズムは最初に秘密鍵の確立を必要とするので、ネットワークを介してのドキュメントの大量且つ安全な配布のための最も実用的なアプローチは、非公開鍵及び公開鍵暗号化メカニズムを組合せることである。一般に、有効な非公開鍵アルゴリズムが、セッション鍵と呼ばれるランダムに生成される鍵を用いることによりドキュメントを暗号化するために用いられ、各ドキュメントの受信者ごとの公開鍵が、このセッション鍵を暗号化するために用いられる。受信者は、秘密のセッション鍵を復号するために受信者自身の専用鍵を用い、その後このドキュメントを復号するためにこのセッション鍵を用いる。
【０１３２】
実際に、上述のドキュメント配布アプローチは、代理暗号化の趣を有する。即ち、保有者が先ず非公開鍵方式を用いてドキュメントを暗号化し、その後要求に応じて、復号権を公開鍵方式を介してその受信者に与える。２つの新しい代理暗号化方式の両方を、アプローチの最も優れた特徴を組合せて１つの正規の暗号化方式にするように使用されることが可能であることになる。
【０１３３】
例として上述の第２の方式（図１０）を取り上げる。２つの観測結果が順に示される。第１に、暗号化済みメッセージの要素ｒは、秘密のセッション鍵としてＫ＝ｇk(mod p)と共に任意の非公開鍵暗号化方式を用いて生成されることが可能である。従って、メッセージｍは、次の式で示される秘密のセッション鍵を用いる、対応する秘密鍵による復号により、メッセージ復号ステップで復号されることが可能である。
【数２１】
0004010766.tif 000025
【０１３４】
実際に、この方式で用いられる秘密鍵による暗号化方式は、暗号化のためにはｒ＝ＥK(ｍ)＝ｍＫ(mod p)であり、復号のためにはｍ＝ＤK'(ｒ)＝ｒＫ'-1(mod p)である。別の簡単な例は、ビットのＸＯＲに基づく暗号化方式である。この例では、ｒ及びｍの計算が次の式により置換されることが可能である。
【数２２】
0004010766.tif 000026
【０１３５】
当然ながら、より強化されたセキュリティが必要な場合は、ＤＥＳ及びトリプルＤＥＳ等のより高度な非公開鍵暗号化方式を用いることが可能である。
【０１３６】
第２の観測結果は、譲渡人Ａがメッセージｍを暗号化する人である場合、Ａは乱数ｋを内密にし、
π＝(βα-1)k(mod p)
である代理鍵を生成するために、Ｂの秘密鍵ｂを用いる代わりに、Ｂの公開鍵β＝ｇb(mod p)を用いることが可能である。なお上記の式において、αはＡの公開鍵である。これは、Ｂの秘密鍵ｂ（又はＡとＢとの間での鍵の交換）を省き、ＢもまたＡを信用する必要はないことを示す。
【０１３７】
これらの２つの観測結果は、上述の（及び図１０に関連する）本発明の第２の代理暗号化方式に基づく図１１に示されるドキュメント配布方式を導く。この方式では、秘密鍵暗号化方式が、全ての受信者のために１回だけメッセージを暗号化するために用いられ、あまり得策ではない代理鍵部分は、各受信者ごとに１回ずつカスタマイズされる少量の情報（セッション鍵）を暗号化するために使用される。この方式の有利な特徴は、暗号化済みのドキュメントが公的にアクセス可能なリポジトリに格納されることが可能であること、及び代理変換が、実際のドキュメント管理及び配布システムの必要性に応じて、ドキュメントの所有者Ａ、受信者Ｂ、又はドキュメントが物理的に格納されているリポジトリにより実行されることが可能であることである。
【０１３８】
ここで図１１を参照すると、この方式は、標準のエルガマル方式（上述の図６参照）と同じ方法で設定される。更に、体系的な非公開鍵暗号化方式が選択される（ステップ１１１０）。その暗号化関数及び復号関数は、次の式で表わされ、これらの式においてＫはある秘密鍵である。
【数２３】
0004010766.tif 000027
【０１３９】
ドキュメントｍを暗号化するために、所有者Ａは先ず、乱数ｋ∈Ｚ*p-1を一様に選択し（ステップ１１１２）、セッション鍵Ｋ＝ｇk(mod p)を計算する（ステップ１１１４）。暗号化済みドキュメント（ｒ,ｓ）はその後、
r＝ＥK(ｍ)  及び  s＝Ｋa(mod p)
のように計算される（ステップ１１１６）。なお、この式においてａはＡの秘密鍵である。Ａは一対の数（ｓ,ｋ）を内密にする。
【０１４０】
受信者Ｂからの暗号化済みドキュメント（ｒ,ｓ）の要求に応じて、Ａは先ずＢの認証公開鍵βを取得し（ステップ１１１８）、一対の数（ｓ,ｋ）からｋを取り出す（ステップ１１２０）。Ａはその後、Ｂのための代理鍵としてπB＝βks-1(mod p)を計算する（ステップ１１２２）。なお、この式においてｓ-1はｓモジュロｐの逆数である。
【０１４１】
ドキュメントはその後、s'＝sπB(mod p)を計算することにより変換され（ステップ１１２４）、一対の（ｒ,ｓ'）は、Ｂのためにカスタマイズされた変換済みドキュメントを表わす。
【０１４２】
カスタマイズされたドキュメント（ｒ,ｓ'）を復号し、オリジナルドキュメントｍを取り出すために、Ｂは先ず、次の式（７）を計算することによりセッション鍵を復号する（ステップ１１２６）。なお、この式においてｂ-1はｂモジュロｐ−１の逆数である。その後、ドキュメント自体がｍ＝ＤK(ｒ)を計算することにより復号される（ステップ１１２８）。
【数２４】
0004010766.tif 000028
【０１４３】
上述のように、本発明の適応は、ファイル保護の用途にも適用可能である。通常、ラップトップ及びネットワーク化されたハードウェア等の安全でないシステムにおけるファイル保護は、ファイルの長期にわたる暗号化を含む。従って、ファイルの暗号化のために用いられる暗号化鍵は、通信のための暗号化鍵よりも長い寿命を有する。ユーザの基本の長期にわたる秘密鍵が、ユーザのネットワーク上の識別の基本表現であり得る一方で、それが長期にわたり多数のファイルで用いられる場合、その鍵が危険にさらされる可能性が存在する。基本の鍵を紛失するか又は盗まれた場合、その鍵により暗号化されたファイルのコンテンツが暴かれるのみならず、クレジットカード番号及び社会保障番号等の鍵の基になる個人情報をも失う、即ち盗まれることになる。従って、ファイルを暗号化する必要がある度に、新たな復号鍵が基本の鍵から導き出され、定期的に更新されるオンライン方法を用いることがしばしば好ましい。
【０１４４】
ここで説明される代理暗号化方式を用いることにより、新たな復号鍵が生成され、それらが新しくあり続けるように、自動的な委任を介して定期的に更新することが可能である。一旦新たな鍵が生成され、対応する代理鍵が生成されると、古い秘密鍵は破壊されることが可能であり、新たな鍵及び代理鍵がファイルを復号する能力を保持する。
【０１４５】
図１２は、復号鍵を格納及び更新するためにスマートカードを用いるファイル保護方式を示す。これもまた、図１０に示されるように、本明細書で提示される第２の代理暗号化方式に基づく。
【０１４６】
図１２に示されるように、ファイルｍを暗号化するために、スマートカードに埋設されたプロセッサは、乱数ｋ∈Ｚ*p-1を選択し（ステップ１２１０）、
r＝mgk(mod p)  及び  s＝(gk)a(mod p)
を計算する（ステップ１２１２）。なおこの式において、ａはスマートカードの秘密鍵である。一対の（ｒ,ｓ）は、暗号化済み形式のファイルｍを表わす。
【０１４７】
例えば、数週間ごと、又は予め定められた数のドキュメントに達した後等の必要な又は望まれる場合は常に、スマートカードは別の一様な乱数ａ'∈Ｚ*p-1を生成し（ステップ１２１４）、次の式を計算する（ステップ１２１６）。なお、この式においてａ-1はａモジュロｐ−１の乗法型逆数である。
【数２５】
0004010766.tif 000029
【０１４８】
暗号化されたファイル（ｒ,ｓ）はその後、（ｒ,ｓ'）により置換され（ステップ１２１８）、復号鍵ａは、復号鍵ａ'により置換される（ステップ１２２０）。これらのステップ１２１４から１２２０は、望まれる限り繰返されることが可能である。
【０１４９】
オリジナルファイルｍをその暗号化されたバージョン（ｒ,ｓ）から復号するために、スマートカード上のプロセッサは、最新の復号鍵ａを用いて、次の式を計算する（ステップ１２２２）。
【数２６】
0004010766.tif 000030
【０１５０】
ファイル暗号化ステップは、必ずしもスマートカードの秘密鍵からでなく、それが生成する任意の秘密鍵から開始されることが可能であることに留意すべきである。
【０１５１】
スマートカードが生成する一片の情報によって暗号データを更新することにより暗号化済みファイルを新しく保ち続けることは、保護されたファイルの単一の有効なコピーを維持するのを助ける。これは、ある意味では、コピー保護も提供する。更に、この方式の非可換性は、スマートカードに格納された対応する秘密情報は変更されている（そして好ましくは破壊されている）ので、ファイルの以前のコピーを無効にする。
【０１５２】
［Cramer-Shoup暗号システムを用いる代理暗号化］
前述の例及びアルゴリズムは全て、エルガマル暗号システムの様々な適応を用いているが、他の暗号システムもまた、本発明の方式により適合されることが可能であることが留意されるべきである。
【０１５３】
例えば、Cramer-Shoup公開鍵暗号システムは、適応型の選択暗号文攻撃の影響を受けないことを立証可能な初めての実用的な公開鍵システムである、最近提案された暗号システムである。R. Cramer及びV. Shoupによる「適応型の選択暗号文攻撃に対する安全性を立証可能な実用的な公開鍵暗号システム（A Practical Public Key Cryptosystem Provably Secure against Adaptive Chosen Ciphertext Attack）」（ＣＲＹＰＴＯ '９８の会報、Springer Verlag LNCS、vol.1462、13〜25頁(1998年)）を参照のこと。適応型の選択暗号文攻撃は、その攻撃者が目標の暗号文以外の任意の選択された暗号文の復号を達成することが可能である性質を呈する。例えば、平文が求められる、ターゲットとなる暗号文が「ｃ」である場合、攻撃者は例えばｃ＋１、４ｃ等を含むｃ以外の任意の暗号文を復号する「復号オラクル」へのアクセスを有すると推測される。ＲＳＡ及びエルガマルはこの種の攻撃を受け易い。アクティブ・アタックに対するセキュリティの、異なるが同等の観念は、非順応性と呼ばれる。しかしながら、公知の非順応性のシステムは実用的でない。
【０１５４】
以下で図１３に関連して説明されるのは、Cramer-Shoup暗号システムのハッシュのないバージョンであり、そのセキュリティは任意の群のためのDiffie-Hellman決定問題に完全に基づいている。その後、Cramer-Shoup方式で復号権を委任する方法を、２つの異なる状況で例示する。
【０１５５】
先ず図１３を参照すると、システムはＧを素数配列ｑから成る群として選択することにより設定される（ステップ１３１０）。なお、ｑは大きい数値である。システムは、平文メッセージはＧの要素であり（又は要素として符号化され得）、暗号文メッセージはＧ4＝Ｇ×Ｇ×Ｇ×Ｇであると推定する。即ち、暗号文メッセージはそれの対応する平文メッセージの４倍の長さである。
【０１５６】
群Ｇの好適な例は、ある大きな素数ｐ＝２ｑ＋１に対する乗法型集合Ｚ*pの位数ｑから成る部分群である。この場合、集合{１,...,ｑ}に属するメッセージｍは、そのモジュロｐを二乗することにより、結果としてＧの要素となる値に「符号化」されることが可能であり、メッセージｍは、集合{１,...,ｑ}内のその符号化モジュロｐの一意の平方根を計算することにより、その符号化から復号されることが可能である。
【０１５７】
鍵は以下のように生成される。第１に、ランダムな要素ｇ1,ｇ2∈Ｇが選択され（ステップ１３１２）、またランダムな要素ｘ1,ｘ2,ｙ11,ｙ12,ｙ21,ｙ22,ｙ31,ｙ32,ｚ∈Ｚqが選択される（ステップ１３１４）。次に、次の式で示される群要素ｃ、ｄ1、ｄ2、ｄ3、及びｈが計算される（ステップ１３１６）。
【数２７】
0004010766.tif 000031
【０１５８】
その後、公開鍵が（ｇ1,ｇ2,ｃ,ｄ1,ｄ2,ｄ3,ｈ）となるように計算され（ステップ１３１８）、秘密鍵は（ｘ1,ｘ2,ｙ11,ｙ12,ｙ21,ｙ22,ｙ31,ｙ32,ｚ）となるように計算される（ステップ１３２０）。
【０１５９】
メッセージｍ∈Ｇを与えられると、暗号化方法はランダムにｒ∈Ｚqを選択することにより開始される（ステップ１３２２）。その後、暗号文（ｕ1,ｕ2,ｅ,ｖ）が、次の式のように計算される（ステップ１３２４）。
【数２８】
0004010766.tif 000032
【０１６０】
暗号文（ｕ1,ｕ2,ｅ,ｖ）を与えられると、対応する復号アルゴリズムが先ず、次の式（８）で示されるテストを行い（ステップ１３２６）、一致しない場合は復号作業は拒否される（ステップ１３２８）。一致する場合は、メッセージｍが次式（９）により計算される（ステップ１３３０）。
【数２９】
0004010766.tif 000033
【０１６１】
暗号システムの正確さは、メッセージの暗号化の復号がメッセージをもたらすことを確認することにより証明することが可能である。この例では、次の式（１０）及び（１１）が成り立つので、（１２）が成り立つ。同様に、式（１３）及び（１４）が成り立つ。従って、有効な暗号文は、復号アルゴリズムで実行されるテストに合格する。
【数３０】
0004010766.tif 000034
【０１６２】
この暗号システムのセキュリティは、Diffie-Hellman決定問題を解く難しさに依存している。Diffie-Hellman決定問題を解くアルゴリズムは、以下の２つの分布、即ち（ａ）ランダム４重項（ｇ1,ｇ2,ｕ1,ｕ2）∈Ｇ4、及び（ｂ）ｇ1及びｇ2が乱数であり、ある乱数ｒ∈Ｚqに対して次の式が成り立つランダム４重項（ｇ1,ｇ2,ｕ1,ｕ2）∈Ｇ4、を効果的に区別することが可能な統計的検査である。
【数３１】
0004010766.tif 000035
【０１６３】
Diffie-Hellman問題（ｇ、ｇx、及びｇyを与えられてｇxyを計算する）、及び離散対数問題（ｇ及びｇxを与えられてｘを計算する）が、Diffie-Hellman決定問題に関連する。多項式時間の範囲内で、Diffie-Hellman決定問題はDiffie-Hellman問題に約されることが可能であり、Diffie-Hellman問題は離散対数問題に約されることが可能である。この３つの問題間の関係がCramer-Shoupシステムのための復号権の委任の可能性を導く。
【０１６４】
ある人が委託者（アリス、Ａ）から被委託者（ボブ、Ｂ）へ復号権を委任することを望むと仮定する。アリスが公開鍵（ｇ1,ｇ2,ｃ,ｄ1,ｄ2,ｄ3,ｈ）及び秘密鍵（ｘ1,ｘ2,ｙ11,ｙ12,ｙ21,ｙ22,ｙ31,ｙ32,ｚ）を有し、ボブが公開鍵（ｇ'1,ｇ'2,ｃ',ｄ'1,ｄ'2,ｄ'3,ｈ'）及び秘密鍵（ｘ'1,ｘ'2,ｙ'11,ｙ'12,ｙ'21,ｙ'22,ｙ'31,ｙ'32,ｚ'）を有すると仮定する。
【０１６５】
所定の平文メッセージｍ∈Ｇに関しては、委託者Ａのための暗号文メッセージは、Ｍ＝(ｕ1,ｕ2,ｅ,ｖ)であり、この式において次の式が成り立つことを喚起されたい。
【数３２】
0004010766.tif 000036
【０１６６】
同様に、メッセージｍが被委託者Ｂのために直接暗号化される場合、暗号文メッセージはＭ'＝(ｕ'1,ｕ'2,ｅ',ｖ')であり、この式において、次の式(１５)、(１６)、(１７)及び(１８)が成り立つ。なお、ｒ'もまた集合Ｚqからの乱数である。更に、次の式(１９)及び(２０)も成り立つことに留意されたい。
【数３３】
0004010766.tif 000037
【０１６７】
上述の概念に基づくと、ＡからＢへの復号権の委任には、ＭをＭ'に変換するために用いる譲渡鍵πを生成することが含まれる。以下では、Ｂの公開鍵の要素ｇ'1及びｇ'2は、（上述のエルガマルシステムパラメータに類似して）Ａの公開鍵の要素ｇ1及びｇ2と同一であると仮定される。また、乱数ｒ'は、ｒと同一であると仮定される。これらの２つの仮定の下で、Ｂの暗号文メッセージの要素ｕ'1及びｕ'2は、Ａの暗号文メッセージの要素ｕ1及びｕ2と同一である。
【０１６８】
ここで図１４を参照すると、システムはＧを素数配列ｑの群として選択することにより設定される（ステップ１４１０）。なお、ｑは大きい数値である。その後、上述と同様に、鍵が次のように生成される。先ず、ランダムな要素ｇ1,ｇ2∈Ｇが選択され（ステップ１４１２）、またランダムな要素ｘ1,ｘ2,ｙ11,ｙ12,ｙ21,ｙ22,ｙ31,ｙ32,ｚ∈Ｚqが選択される（ステップ１４１４）。次に、以下の式で示される群要素ｃ、ｄ1、ｄ2、ｄ3、及びｈが計算される（ステップ１４１６）。
【数３４】
0004010766.tif 000038
【０１６９】
その後、公開鍵が（ｇ1,ｇ2,ｃ,ｄ1,ｄ2,ｄ3,ｈ）となるように計算され（ステップ１４１８）、秘密鍵は（ｘ1,ｘ2,ｙ11,ｙ12,ｙ21,ｙ22,ｙ31,ｙ32,ｚ）となるように計算される（ステップ１４２０）。
【０１７０】
メッセージｍ∈Ｇを与えられると、暗号化方法はランダムにｒ∈Ｚqを選択することにより開始される（ステップ１４２２）。その後、暗号文（ｕ1,ｕ2,ｅ,ｖ）が、次の式のように計算される（ステップ１４２４）。
【数３５】
0004010766.tif 000039
【０１７１】
Ｂの秘密鍵が譲渡鍵πを生成するために利用可能である場合、この鍵が取得され（ステップ１４２６）、その後πが、
π＝（ε,θ,δ1,δ2,δ3）
のように計算されることが可能である（ステップ１４２８）。なお、この式においてε、θ、δ1、δ2、及びδ3は、次の式に示される通りである。
【数３６】
0004010766.tif 000040
【０１７２】
そして、暗号文変換は、次の式により表わされる。これは、暗号文（ｕ1,ｕ2,ｅ,ｖ）を（ｕ1,ｕ2,ｅ',ｖ'）に変換する（ステップ１４３０）。
【数３７】
0004010766.tif 000041
【０１７３】
受信者／被委託者はその後、変換された暗号文（ｕ1,ｕ2,ｅ',ｖ'）を復号することができる。上述のように、復号アルゴリズムは先ず、次の式（２１）で示されるテストを行い（ステップ１４３２）、一致しない場合は、復号作業は拒否される（ステップ１４３４）。一致する場合は、メッセージｍが次の式（２２）のように計算される（ステップ１４３６）。
【数３８】
0004010766.tif 000042
【０１７４】
委託者ＡからＢへメッセージの復号権を委任するために、被委託者Ｂの公開鍵のみを用いることが可能な例では、Ａのためのメッセージを最初に暗号化する際に用いられた乱数ｒを保存し用いる必要がある。これは、譲渡鍵を生成するのがＡでない場合に問題になり得、譲渡鍵を生成するのが実際にＡである場合には問題にならない。如何なる場合でも、利用可能であれば、譲渡鍵πはＢの公開鍵を用いて、
π＝(ε,θ,δ1,δ2,δ3)
として生成されることが可能である。なお、この式においてε、θ、δ1、δ2、及びδ3は、次の式に示される通りである。
【数３９】
0004010766.tif 000043
【０１７５】
そして、暗号文変換は、次の式により表わされる。
【数４０】
0004010766.tif 000044
【０１７６】
何れの例でも、被委託者Ｂが、上述の方法により変換された暗号文（ｕ'1,ｕ'2,ｅ',ｖ'）を復号するために自分自身の秘密鍵を用いることが可能であることを証明するのは簡単である。Cramer-Shoup暗号システムに関してここで用いられるメカニズムは、上述のエルガマルに類似の暗号システムで用いられるメカニズムと同じであるので、このメカニズムは公開型であり、且つDiffie-Hellman問題及び離散対数問題を解くのが困難であることを考えると、非可換性である。
【０１７７】
上述のように、代理暗号化能力により一般的な公開鍵暗号化方式を強化することを通して、指定がフレキシブルな復号をサポートすることが可能になる。本開示は、既存の方式の利点を受け継ぎ、それらの欠点を排した２つの公開型、且つ非可換性の代理暗号化方式を提示している。この新しい方式は、大量ドキュメントの配布及びファイル保護に直接適用されるように示された。これらの新しい方式の基本概念はまた、暗号システムを代理暗号化方式へと高度化するCramer-Shoup暗号システム等の他のタイプの暗号システムにも適用されている。
【図面の簡単な説明】
【図１】本発明の演算が可能な電子ドキュメント配布システムのブロック図である。
【図２】本発明の方法でメッセージを復号するための権限を委任する際に実行される符号化演算を示すブロック図である。
【図３】符号化済みメッセージを別の人による復号のために変換する際に実行される一般的なステップを示すフローチャートである。
【図４】メッセージの復号権限の委任に適応したシステムに関与するパーティーを概略的に示すブロック図である。
【図５】一般的な代理暗号化方式で実行されるステップを示すフローチャートである。
【図６】エルガマル暗号システムに従ってメッセージを暗号化及び復号する際に実行されるステップを示すフローチャートである。
【図７】  Mambo及びOkamotoにより提案された、公知のエルガマルに基づく代理暗号化及び復号方式で実行されるステップを示すフローチャートである。
【図８】  Blaze及びStraussにより提案された、公知のエルガマルに基づく代理暗号化及び復号方式で実行されるステップを示すフローチャートである。
【図９】本発明のエルガマルに基づく代理暗号化及び復号方式の第１の実施の形態で実行されるステップを示すフローチャートである。
【図１０】本発明のエルガマルに基づく代理暗号化及び復号方式の第２の実施の形態で実行されるステップを示すフローチャートである。
【図１１】本発明のドキュメント配布方式で実行されるステップを示すフローチャートである。
【図１２】本発明のファイル保護方式で実行されるステップを示すフローチャートである。
【図１３】  Cramer-Shoup暗号システムに従ってメッセージを暗号化及び復号する際に実行されるステップを示すフローチャートである。
【図１４】本発明のCramer-Shoupに基づく代理暗号化及び復号方式の実施の形態で実行されるステップを示すフローチャートである。
【符号の説明】
１１０    著作者／出版社
１１２、１１６    コンテンツ
１１４    配布業者
１１８    ユーザ
１２０    支払い
１２２    清算所
１２４    支払いバッチ
１２６    使用料の支払い
１２８    会計メッセージ
１３０    監査サーバ
１３１    会計情報
１３２    レポート
４１０    エンクリプター
４１２    譲渡人
４１４    譲受人
【図１】
0004010766.tif 000045
【図２】
0004010766.tif 000046
【図３】
0004010766.tif 000047
【図４】
0004010766.tif 000048
【図５】
0004010766.tif 000049
【図６】
0004010766.tif 000050
【図７】
0004010766.tif 000051
【図８】
0004010766.tif 000052
【図９】
0004010766.tif 000053
【図１０】
0004010766.tif 000054
【図１１】
0004010766.tif 000055
【図１２】
0004010766.tif 000056
【図１３】
0004010766.tif 000057
【図１４】
0004010766.tif 000058