(57)【要約】  【課題】  情報の暗号化に用いられる鍵の適切な長さを合理的に決定することのできる鍵長決定装置、鍵長決定処理方法及びプログラム、並びに該鍵長決定装置を用いた暗号装置を提供することである。  【解決手段】  暗号化により保護すべき情報の保護強度を表す保護強度情報を取得する保護強度取得手段（Ｓ４）と、前記保護強度情報に基づいて前記情報の暗号化にて使用される鍵の長さを演算する鍵長演算手段（１０３）とを有する構成となる。これにより、暗号化により保護すべき情報の保護強度に応じてその情報の暗号化に用いられる鍵の長さが決定される。【選択図】  図１
2006094244.tif 000002
【特許請求の範囲】
【請求項１】
暗号化により保護すべき情報の保護強度を表す保護強度情報を入力する入力手段と、
前記入力手段から入力された保護強度情報に基づいて、前記情報の暗号化にて使用する鍵の長さを演算する演算手段とを有することを特徴とする暗号化装置。
【請求項２】
前記保護強度情報は、保護強度を費用として表す費用情報及び保護強度を期間として表す期間情報の少なくとも一方を含むことを特徴とする請求項１記載の暗号化装置。
【請求項３】
前記演算手段は、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量と、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式とに基づいて前記鍵の長さを演算することを特徴とする請求項２記載の暗号化装置。
【請求項４】
前記暗号化装置は更に、前記演算手段により得られた長さの鍵を用いて前記情報を暗号化する暗号化処理手段を有することを特徴とする請求項１から請求項３のいずれか一項に記載の暗号化装置。
【請求項５】
前記暗号化装置は更に、前記情報のうちの暗号化する部分を指定する指定手段を有することを特徴とする請求項１から請求項４のいずれか一項に記載の暗号化装置。
【請求項６】
前記暗号化装置は更に、前記暗号化処理手段にて得られた暗号化情報に前記保護強度情報、前記情報の復号に要する推定処理時間および前記情報の解読に要する推定解読時間のうちの少なくとも一つをメタデータとして含める処理手段を有することを特徴とする請求項４記載の暗号化装置。
【請求項７】
暗号化により保護すべき情報の保護強度を表す保護強度情報を入力する入力ステップと、
前記入力ステップで入力された保護強度情報に基づいて、前記情報の暗号化にて使用する鍵の長さを演算する演算ステップとを有することを特徴とする暗号化方法。
【請求項８】
前記保護強度情報は、保護強度を費用として表す費用情報及び保護強度を期間として表す期間情報の少なくとも一方を含むことを特徴とする請求項７記載の暗号化方法。
【請求項９】
前記演算ステップは、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量と、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式とに基づいて前記鍵の長さを演算することを特徴とする請求項７または請求項８記載の暗号化方法。
【請求項１０】
入力された、暗号化により保護すべき情報の保護強度を表す保護強度情報を設定する設定ステップ、
前記設定ステップで設定された保護強度情報に基づいて、前記情報の暗号化にて使用する鍵の長さを演算する演算ステップをコンピュータに実行させるプログラム。
【請求項１１】
前記保護強度情報は、保護強度を費用として表す費用情報及び保護強度を期間として表す期間情報の少なくとも一方を含むことを特徴とする請求項１０記載のプログラム。
【請求項１２】
前記演算ステップは、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量と、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式とに基づいて前記鍵の長さを演算することを特徴とする請求項１１記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化装置、暗号化方法およびプログラムに関する。
【背景技術】
【０００２】
従来、コンテンツ保護に利用される鍵の長さは、システムやセキュリティ・ポリシなどで予め設定されているものを利用するのが一般的であった。例えば、Micorosoft社のInternet Explorer（登録商標） 4.xのInternational 版では、公開鍵暗号としてＲＳＡ（Rivest-Samir-Adleman）暗号の５１２、７６８、１０２４ビットの３種類の固定されたものが利用されている。この例にあるように、これまでユーザは予め決められた長さの鍵を機械的に用いて暗号化を施すことにより、コンテンツの保護を行ってきた（従来技術１）。
【０００３】
また、従来、コンテンツを暗号化し、その暗号化されたコンテンツを配信するコンテンツ配信システムが提案されている（例えば、特許文献１参照）。この従来のシステムでは、コンテンツの著作者が要求する保護強度に従って設定された保護の条件を表す保護ポリシー情報（例えば、暗号化に用いられる鍵の長さ等）がそのコンテンツに対応させてコンテンツ配信サーバのデータベースに蓄積されている。そして、クライアント端末からコンテンツの要求があった場合に、コンテンツ配信サーバは、その要求に係るコンテンツに対応してデータベースに蓄積された保護ポリシー情報を用いて当該コンテンツの暗号化を行い、その暗号化されたコンテンツを前記クライアント端末に宛ててネットワークを介して配信する。
【０００４】
このようなシステムによれば、各コンテンツに対してコンテンツ毎にその著作者が要求する保護強度に応じた暗号化がなされるようになり、コンテンツの画一的な保護ではなく、その著作者の要求に応じたコンテンツ保護が可能となる。
【０００５】
【特許文献１】特開平２００３−７８７５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術１では、例えば１０２４ビット以上の強度が必要なコンテンツの保護を実施しようとする際に支障が生じる。また、５１２ビットよりも簡便な暗号化を施し、処理時間の短縮を図ることも不可能である。また、特許文献１記載のシステムでは、保護したいコンテンツの価値と保護強度の関係がユーザにとって不明確であり、このため過度な保護や過小な保護がコンテンツに対して施される懸念がある。
【０００７】
そこで、本発明は、このような点に鑑みてなされたもので、暗号化における処理時間と保護強度の最適化を図ることができる暗号化装置、暗号化方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、暗号化により保護すべき情報の保護強度を表す保護強度情報を入力する入力手段と、前記入力手段から入力された保護強度情報に基づいて、前記情報の暗号化にて使用する鍵の長さを演算する演算手段とを有する暗号化装置である。本発明によれば、ユーザインターフェース等の入力手段から入力された暗号化により保護すべき情報の保護強度に応じてその情報の暗号化に用いられる鍵の長さが決定することで、保護強度が大きければ大きいほど鍵の長さを大きく決定することができる。これにより、暗号化における処理時間と保護強度の最適化を図ることができる。
【０００９】
前記保護強度情報は、保護強度を費用として表す費用情報及び保護強度を期間として表す期間情報の少なくとも一方を含む。本発明によれば、費用として表された保護強度及び期間として表された保護強度に応じて前記情報の暗号化に用いられる鍵の長さが決定される。例えば、暗号化情報の解読に必要と見込まれる費用によって保護強度を表しうる。この場合、暗号化情報の解読に必要と見込まれる費用が多いほど、その保護強度が大きい。また、例えば、暗号化情報の解読に必要と見込まれる期間によって保護強度を表しうる。この場合、暗号化情報の解読に必要と見込まれる期間が長いほど、その保護強度が大きい。
【００１０】
前記演算手段は、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量と、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式とに基づいて前記鍵の長さを演算する。本発明によれば、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量もまた保護強度を表すこととなり、その保護強度となる推定計算量を用いて、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式に従った逆演算により、鍵の長さが算出される。
【００１１】
前記保護強度情報は、前記情報の解読に必要な費用の推定値および前記情報の解読に要する推定時間のうちの少なくとも一方を含む。本発明によれば、情報の解読に必要な費用の推定値や情報の解読に要する推定時間に基づいて、情報の暗号化にて使用する鍵の長さを決定することができる。
【００１２】
前記演算手段は、前記情報の解読に必要とされる推定計算量から逆算して鍵の長さを演算する。本発明によれば、情報の解読に必要とされる推定計算量から逆算して鍵の長さを演算することができる。
【００１３】
本発明の暗号化装置は、更に、前記演算手段により得られた長さの鍵を用いて前記情報を暗号化する暗号化処理手段を有する。本発明によれば、処理時間と保護強度が最適化な暗号化情報を提供することができる。
【００１４】
本発明の暗号化装置は、更に、前記情報のうちの暗号化する部分を指定する指定手段を有する。本発明によれば、提供される情報のうち指定された部分が保護強度に応じて決定された長さの鍵を用いて暗号化される。また、提供される情報において指定される複数の部分に対して異なる保護強度それぞれに応じて決定された長さの鍵を用いて暗号化処理を施すことが可能となり、一連の情報の複数の部分について異なる長さの鍵にて暗号化することが可能となる。
【００１５】
本発明の暗号化装置は、更に、前記暗号化処理手段にて得られた暗号化情報から元の情報を復元するのに必要な処理時間を演算する第２演算手段を有する。本発明によれば、暗号化処理手段にて得られた暗号化情報から元の情報を復元するのに必要な処理時間を演算することで、ユーザはコンテンツの価値と保護強度の関係を明確に知ることができる。
【００１６】
本発明の暗号化装置は、更に、前記第２演算手段が演算した処理時間を表示する表示手段を有する。本発明によれば、元の情報を復元するのに必要な処理時間を表示することで、コンテンツの価値と保護強度の関係がユーザにとって明確にできる。
【００１７】
本発明の暗号化装置は、更に、前記暗号化処理手段にて得られた暗号化情報に前記保護強度情報、前記情報の復号に要する推定処理時間および前記情報の解読に要する推定解読時間のうちの少なくとも一つをメタデータとして含める処理手段を有する。本発明によれば、保護強度情報、情報の復号に要する推定処理時間および前記情報の解読に要する推定解読時間を提供することができる。
【００１８】
本発明の暗号化装置は、更に、前記情報の復号に要する推定処理時間を表示する表示手段を有する。本発明によれば、情報の復号に要する推定処理時間を表示することで、ユーザはコンテンツの価値と保護強度の関係を明確に知ることができる。
【００１９】
本発明の暗号化装置は、更に、前記情報の解読に要する推定解読時間を表示する表示手段を有する。本発明によれば、情報の解読に要する推定解読時間を表示することで、ユーザはコンテンツの価値と保護強度の関係を明確に知ることができる。
【００２０】
本発明は、暗号化により保護すべき情報の保護強度を表す保護強度情報を入力する入力ステップと、前記入力ステップで入力された保護強度情報に基づいて、前記情報の暗号化にて使用する鍵の長さを演算する演算ステップとを有する暗号化方法である。本発明によれば、ユーザインターフェース等から入力された暗号化により保護すべき情報の保護強度に応じてその情報の暗号化に用いられる鍵の長さが決定できるため、暗号化における処理時間と保護強度の最適化を図ることができる。
【００２１】
前記保護強度情報は、保護強度を費用として表す費用情報及び保護強度を期間として表す期間情報の少なくとも一方を含む。本発明によれば、費用として表された保護強度及び期間として表された保護強度に応じて前記情報の暗号化に用いられる鍵の長さが決定される。例えば、暗号化情報の解読に必要と見込まれる費用によって保護強度を表しうる。この場合、暗号化情報の解読に必要と見込まれる費用が多いほど、その保護強度が大きい。また、例えば、暗号化情報の解読に必要と見込まれる期間によって保護強度を表しうる。この場合、暗号化情報の解読に必要と見込まれる期間が長いほど、その保護強度が大きい。
【００２２】
前記演算ステップは、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量と、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式とに基づいて前記鍵の長さを演算する。本発明によれば、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量もまた保護強度を表すこととなり、その保護強度となる推定計算量を用いて、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式に従った逆演算により、鍵の長さが算出される。
【００２３】
本発明は、入力された、暗号化により保護すべき情報の保護強度を表す保護強度情報を設定する設定ステップ、前記設定ステップで設定された保護強度情報に基づいて、前記情報の暗号化にて使用する鍵の長さを演算する演算ステップをコンピュータに実行させるプログラムである。本発明によれば、ユーザインターフェース等から入力された暗号化により保護すべき情報の保護強度に応じてその情報の暗号化に用いられる鍵の長さが決定できるため、暗号化における処理時間と保護強度の最適化を図ることができる。
【００２４】
前記保護強度情報は、保護強度を費用として表す費用情報及び保護強度を期間として表す期間情報の少なくとも一方を含む。
【００２５】
前記演算ステップは、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量と、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式とに基づいて前記鍵の長さを演算する。本発明によれば、処理装置の価格と処理能力から求まる前記費用情報にて表される費用をかけて前記期間情報にて表される期間で暗号化情報を解読するのに要する推定計算量もまた保護強度を表すこととなり、その保護強度となる推定計算量を用いて、ある長さの鍵にて暗号化された情報を解読するのに必要な推定計算量を算出する推定演算式に従った逆演算により、鍵の長さが算出される。
【発明の効果】
【００２６】
本発明によれば、暗号化における処理時間と保護強度の最適化を図ることができる暗号化装置、暗号化方法およびプログラムを提供することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明に係る実施の形態について、図面を用いて説明する。本発明の実施の一形態に係るシステムは、図１に示すように構成される。
【００２８】
図１において、このシステムは、ユーザ端末１０、２０及び文書管理サーバ３０が、例えば、社内ＬＡＮ等に接続されている。ユーザ端末１０、２０は、PDA（Personal Digital Assistant）やパーソナルコンピュータ（PC）等で構成され、エディタ等の文書作成ツール（ソフトウエア）を備えると共に、コンテンツ暗号ツール（ソフトウエア）を備えている。文書管理サーバ３０は、ユーザ端末１０、２０で作成される文書を保存し、管理する。文書管理サーバ３０にて管理される文書には、経理情報等の機密性の高い情報にて構成された文書を含む。このシステムでは、文書の機密性を保持するためにRSA暗号が利用される。
【００２９】
なお、以下では、ユーザ端末１０にて作成された文書が文書管理サーバ３０に保存され、その文書がユーザ端末２０にて閲覧、加工されて、その加工された文書が再度文書管理サーバ３０に保存される場合について説明する。ユーザ端末１０におけるユーザインターフェースは、例えば、図２に示すように構成される。
【００３０】
図２において、このユーザインターフェースは、処理の対象となる文書の識別情報（ファイル名）を表示するための識別情報表示部１１、処理の対象となる文書の内容（コンテンツ）を表示する表示ウィンドウ１２、暗号化された情報の保護強度を表す保護強度情報を表示するための第1保護強度表示部１３ａ及び第２保護強度表示部１３ｂと、暗号化文書から所定の処理能力を有する処理装置（PDA、PC等）にて復元して元の文書を得るために必要な処理時間（推定処理時間）を表示するための時間表示部１４と、暗号化処理を指示するための暗号化ボタン１５と、文書を文書管理サーバ３０に登録するための登録ボタン１６とを備えている。また、図示はされていないが、ユーザ端末１０は、各種情報を入力するための情報入力インターフェース（キーボード、マウス、表示ウィンドウ１２と一体となるペン入力パッド等）を備えている。
【００３１】
第１保護強度表示部１３ａは、保護強度を費用として表す費用情報、具体的には、攻撃者が暗号化情報の解読に必要となる費用を表す解読費用（万円）を表示するために用いられる。第２保護強度表示部１３ｂは、保護強度を期間として表す期間情報、具体的には、文書の保護期間（年）を表示するために用いられる。
【００３２】
ユーザ端末１０、２０及び文書管理サーバ３０それぞれの機能構成は、図３に示すようになっている。図３において、ユーザ端末１０は、コンテンツ表示処理部１０１、保護部分指定処理部１０２、鍵長決定処理部１０３、コンテンツ暗号化処理部１０４及び情報送信処理部１０５を有している。コンテンツ表示処理部１０１は、処理すべき文書の内容を表示ウィンドウ１２に表示させる。保護部分指定処理部１０２は、表示ウィンドウ１２に表示された文書においてユーザによって指定された部分の文書データを抽出する等の処理を行なう。鍵長決定処理部１０３は、保護部分指定処理部１０２にて抽出された前記指定部分の文書データを暗号化する際に用いられる鍵の長さを決定する。コンテンツ暗号化処理部１０４は、鍵長決定処理部１０３にて決定された長さの鍵を用いて前記指定部分の文書データを暗号化する。情報送信処理部１０５は、コンテンツ暗号化処理部１０４にて得られた暗号化文書と、その暗号化文書を生成する際に用いられた鍵と、その鍵にて暗号化された前記暗号化文書の指定部分を特定する指定部分情報とを文書管理サーバ３０に送信するための処理を行なう。
【００３３】
前述した保護部分指定処理部１０２、鍵長決定処理部１０３及びコンテンツ暗号化処理部１０４は、コンテンツ暗号化ツールの機能として実現される。
【００３４】
文書管理サーバ３０は、情報受信処理部３０１、暗号化コンテンツ・暗号鍵蓄積処理部３０２、ユーザ認証処理部３０３及び情報送信処理部３０４を有している。情報受信処理部３０１は、ユーザ端末１０から送信される前記暗号化文書、前記鍵及び指定部分情報を受信するための処理を行なう。暗号化コンテンツ・暗号鍵蓄積処理部３０２は、受信した前記暗号化文書（暗号化コンテンツ）、前記鍵（暗号鍵）及び前記指定部分情報をそれぞれ対応するようにディスク装置（図示略）に格納する。ユーザ認証処理部３０３は、後述するようにユーザ端末２０からのユーザ証明情報に基づいてユーザ端末２のユーザの認証処理を行なう。情報送信処理部３０４は、ユーザ認証処理部３０３にてユーザ端末２０のユーザが適正なユーザとして認証された場合に、ユーザ端末２０からの要求に応じて、管理している暗号化文書、前記鍵及び前記指定部分情報をユーザ端末２０に送信するための処理を行なう。
【００３５】
文書管理サーバ３０から受信した暗号化文書を利用するユーザ端末２０は、ユーザ証明処理部２０１、情報受信処理部２０２、コンテンツ復号処理部２０３、コンテンツ復号処理部２０３及びコンテンツ表示処理部２０４を有している。ユーザ証明処理部２０１は、電子（署名）等のユーザ証明情報の取得、及び文書管理サーバ３０への送信等の処理を行なう。情報受信処理部２０２は、文書管理サーバ３０から送信される前記暗号化文書及び前記鍵を受信するための処理を行なう。コンテンツ復号処理部２０３は、受信された前記暗号化文書における前記指定部分情報にて特定される部分を前記鍵を用いて復号し、元の文書を復元する。コンテンツ表示処理部２０４は、復元された文書を表示部（例えば、表示ユニット１２）に表示させる。
【００３６】
なお、ユーザ端末１０とユーザ端末２０とは、同じ構成とすることができる。この場合、ユーザ端末２０は、図２に示すようなユーザインターフェースを有すると共に、図３に示す保護部分指定処理部１０２、鍵長決定処理部１０３、コンテンツ暗号化処理部１０４及び情報送信処理部１０５を有する。また、ユーザ端末１０は、図３に示すユーザ証明処理部２０１、受信処理部２０２及びコンテンツ復号処理部２０３を有する。
【００３７】
次に、図４に示すユーザ端末１０のユーザによる操作手順に従って、ユーザ端末１０の動作を説明する。ユーザの所定のスタート操作（Ｓ１）により、ユーザ端末１０での処理が開始される。ユーザはエディタを用いて経理情報等の文書ファイルの作成を行なう（Ｓ２）。この際、ユーザ端末１０のコンテンツ表示処理部１０１は、作成される文書の内容（コンテンツ）を表示ウィンドウ１２に表示させる。また、識別情報表示部１１には、ユーザが指定した文書ファイルのファイル名、例えば、「経理情報.txt」が表示される。
【００３８】
文書ファイルが完成すると、次いで、ユーザは、ユーザインターフェースを用いて表示ウィンドウ１２に表示される文書のうちの暗号化する部分（保護部分）、例えばDｓ1（図２参照）を指定するための操作（マーキング等の操作）を行なう（Ｓ３）。すると、保護部分指定処理部１０２が、表示ウィンドウ１２に表示された文書から前記操作にて指定された当該指定部分Ｄs1の文書データを抽出する。ユーザは、次いで、その指定した部分の保護強度の設定操作を行なう（Ｓ４）。具体的には、ユーザは、暗号化情報の解読に必要となる費用を表す解読費用（万円）の設定と、文書の保護期間（年）の設定とを行なう。この解読費用及び保護期間は、その解読費用を費やすことのできる攻撃者に対してその保護期間を保てるだけの保護強度を表す保護強度情報となる。ユーザによって設定された前記解読費用は、第１保護強度表示部１３ａに表示さえると共に、前記保護期間は、第２保護強度表示部１３ｂに表示される。
【００３９】
次いで、ユーザは暗号化ボタン１５の操作を行なう（Ｓ５）。すると、まず、鍵長決定処理部１０３が前記文書の指定部分Dｓ1を暗号化する際に用いられる鍵の長さを演算する。この鍵の長さＭは、
M = min{n|Exp(1.90・((log n)＾(1/3))・(log log n)＾(2/3)) > C}      （１）
C = cost・31536・10＾6)・(2＾(y/1.5))
cost：解読費用
y ：保護期間
に従って演算される。例えば、設定された解読費用が5,000万円で、設定された保護期間が５年の場合、cost＝5・10＾7、y=5が前記式（１）に代入されて、鍵の長さＭが演算される。
【００４０】
前記式（１）は、RSA暗号の解読に必要な計算量（Simson Garfinkel, “PGP: Pretty Good Privacy”, O’Reilly, 1994参照）から必要な鍵の長さを逆算するための算出式である。前記式（１）では、暗号化情報を解読する１ＧＨｚの処理能力のＣＰＵを備えた処理装置が１０万円で購入できるということが前提とされている。即ち、ある鍵の長さｎにて暗号化された情報を解読するのに要する推定計算量Exp(1.90・((log n)＾(1/3))・(log log n)＾(2/3))が、処理装置の価格（10万円）と処理能力（１ＧＨｚ）から決まる前記解読費用をかけて前期保護期間で暗号化情報を解読するのに要する推定計算量Ｃを超える条件を満足する最小の長さｎが鍵の長さＭとして算出される。
【００４１】
次に、コンテンツ暗号化処理部１０４が、前記長さＭのRSA暗号鍵を生成し、そのRSA暗号鍵を用いて前記文書の指定部分Dｓ1の文書データを暗号化する。この暗号化の処理は具遺体的に次のようになされる。
【００４２】
コンテンツ暗号化処理部１０４は、160ビットの乱数を生成し、この乱数を前記指定部分Ds1の文書データの暗号化に利用する慣用暗号鍵とする。即ち、この慣用暗号鍵によって前記文書データが暗号化される。そして、この慣用暗号鍵が前記長さＭのRSA暗号鍵にて暗号化される。前記暗号化の処理が終了すると、ユーザは、更に保護部分の指定を行なうか否かを判断し（Ｓ６）、行なう場合には（Ｓ６でＹＥＳ）、表示ウィンドウ１２に表示された文書の他の部分、例えば、図２に示す部分Ds2の指定操作を行なう（Ｓ３）。これにより、この指定部分Ｄs2の文書データが前述したのと同様の手順で暗号化される。
【００４３】
なお、このような暗号化を行なうための処理の過程で、例えば、ユーザが保護強度（解読費用、保護期間）の設定を行なわず暗号化ボタン１５の操作を行なった場合、セキュリティ・ポリシーによって予め決められた最低保護レベルに対応した長さの鍵を用いて暗号化処理がなされる。
【００４４】
また、コンテンツ暗号化処理部１０４は、前述したように各指定部分の文書データの暗号化処理を行なう毎に、PDA等の想定デバイスの処理能力に基づいてその暗号化文書データを復号して元の文書データを復元する際の推定処理時間を演算する。各指定部分の文書データについての前記推定処理時間の総計を時間表示部１４に表示させる。これにより、ユーザは、暗号化文書データから元の文書データを復元する際に必要な処理時間を大まかに知ることができる。
【００４５】
ユーザは、指定すべき保護部分が無いと判断すると（Ｓ６でＮＯ）、登録ボタン１６の操作を行なう。すると、情報送信処理部１０５が、前記文書ファイルのメタデータに前記RSA暗号鍵にて暗号化された慣用暗号鍵と、その慣用暗号鍵にて暗号化された文書データの文書中での位置を表す位置情報と共に埋め込む。そして、情報送信処理部１０５は、暗号化文書ファイルと各RSA暗号鍵とを文書管理サーバ３０に登録するために送信する。なお、前記各RSA暗号鍵は、IPsec（IP security protocol）等の通信路を保護する手段を用いて安全に送信され、不正な利用を行なう攻撃者への鍵の漏洩が阻止される。
【００４６】
暗号化文書ファイルと各RSA暗号鍵とをユーザ端末１０から受信した文書管理サーバ３０は、その暗号化ファイルと各RSA暗号鍵とをそれぞれ対応付けてディスク装置に格納し、管理する。ユーザ端末２０のユーザが前述したようにユーザ端末１０にて作成された文書を閲覧し、かつこれに加工を加えて再び文書管理サーバ３０に登録する場合について説明する。
【００４７】
ユーザ端末２０（ユーザ証明処理部２０１）は、文書管理サーバ３０にアクセスして当該ユーザが前記文書の正当な利用者であることを証明する電子証明書を文書管理サーバ３０に送る。文書管理サーバ３０は、ユーザ端末２０から受信した電子署名によって当該ユーザが正当な利用者であることの認証を行なうと、要求に係る文書ファイルを対応する各RSA暗号鍵と共にユーザ送信装置に送信する。この場合も、各RSA暗号鍵は、IPsec等の通信路を保護する手段を用いて安全に送信される。
【００４８】
暗号化された文書ファイル及び各RSA暗号鍵を受信したユーザ端末２０では、コンテンツ復号処理部２０３が、文書データのメタデータに含まれる暗号化された慣用暗号鍵を対応するRSA鍵にて復号し、得られた慣用暗号鍵を用いて暗号化された文書データを復号して元の文書データを復元する。そして、コンテンツ表示処理部２０４がその復元された文書データを表示部に表示させる。これにより、ユーザ端末２０のユーザは、文書の閲覧が可能となる。このように平文となった文書データは、各RSA鍵と共にコンテンツ暗号化ツールの耐タンパー領域に保持され、各RSA鍵が外部に漏洩することが防止されると共に、文書データの不正利用が阻止される。
【００４９】
また、更にユーザが文書に対して修正を施すことを要求する場合は、ユーザ端末２０におけるコンテンツ暗号化ツール上で文書を修正することが許可され、修正が施された文書に対して再び暗号化を実施する。暗号化処理は、前述したユーザ端末１０での処理と同じである。この際、ユーザによる慣用暗号鍵の解読を阻止するために、タンパープルーフな領域内にて１６０ビットの乱数が新たに生成され、この乱数がコンテンツを暗号化する際に利用される慣用暗号の鍵となる。更に、この慣用鍵をコンテンツ暗号化ツール内のタンパープルーフ領域に保持されているRSA暗号鍵で暗号化し、文書のメタデータ部に記載する。以上の処理は全てコンテンツ暗号化ツール内のタンパープルーフ領域において実施される。最後にユーザは文書を利用する権限を持つ他のユーザがこれを利用できるように、修正された文書を再び文書管理サーバに登録する。
【００５０】
前述したシステムでは、ユーザにより文書の保護期間がユーザ端末１０に対して５年と設定されているが、この期間を経過した後、コンテンツ暗号化ツールは文書の暗号化部分を復号して表示すること、及び暗号化部分の修正の両方を拒否する。これにより、コンテンツ暗号化ツールを利用した不正な解読が、保護期間を超えて実行されることを阻止する。
【００５１】
また、特にコンテンツの保護のためにRSA暗号を利用しているが、ElGamal暗号、あるいは楕円曲線暗号、NTRUなどの他の公開鍵暗号を利用しても同様の効果を得ることが出来る。また、前述した例では、保護期間を経過した後、コンテンツ暗号化ツールは文書の暗号化部分を復号して表示することを拒否するが、保護期間を経過した後は無条件に文書の暗号化部分を復号して表示するような構成にしても構わない。更に、鍵長を推定計算量から逆算して算出しているが、予めコンテンツ暗号化ツールに解読に必要な費用・時間と鍵長との対応を記載したリストを保持させ、このリストの値から鍵長を決定する方法を用いても同様の効果を得ることが可能である。なお、演算手段が鍵長決定処理部１０３に、暗号化処理手段がコンテンツ暗号化処理部１０４に、指定手段が保護部分指定処理部１０２にそれぞれ対応する。
【図面の簡単な説明】
【００５２】
【図１】本発明に係るシステムの基本構成を示すブロック図である。
【図２】図１に示すシステムにおけるユーザ端末のユーザインターフェースを示す図である。
【図３】図１に示すシステムにおける各ユーザ端末及び文書管理サーバの機能構成を示すブロック図である。
【図４】図１に示すシステムにおけるユーザ端末のユーザの操作手順を示すフローチャートである。
【符号の説明】
【００５３】
１０、２０  ユーザ端末
１１  識別情報表示部
１２  表示ウィンドウ
１３ａ  第１保護強度表示部
１３ｂ  第２保護強度表示部
１４  時間表示部
１５  暗号化ボタン
１６  登録ボタン
３０  文書管理サーバ
【図１】
2006094244.tif 000003
【図２】
2006094244.tif 000004
【図３】
2006094244.tif 000005
【図４】
2006094244.tif 000006