(57)【特許請求の範囲】
【請求項１】
複数の情報を格納する電子ファイルに対して暗号化を施して提供する情報管理システムであって、
一つの暗号鍵で暗号化される前記情報数を前記電子ファイルを表示する情報端末の処理能力に依存させて決定する決定手段と、
前記暗号鍵の長さを前記情報端末の処理能力に依存させて決定する鍵長決定手段とを有し、
前記鍵長決定手段は、前記暗号鍵の長さを決定する際にヒルデブランド−テネンバーム推定式を用いることを特徴とする情報管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顧客情報を記載した電子ファイルを暗号化してセキュアに利用するための情報管理システムに関する。
【背景技術】
【０００２】
従来、顧客情報を記載したファイルの保護に利用される暗号の鍵長は、システムやセキュリティ・ポリシなどで予め設定されているものを利用するのが一般的であった。例えば、マイクロソフト（Microsoft）社のインターネットイクスプローラ（Internet Explorer） 4.xのインターナショナル（International） 版を用いて顧客情報の閲覧を実施する場合、公開鍵暗号としてRSA暗号の512、768、1024bitの３種類の固定されたものが利用される。
【０００３】
しかし、著作権者がデータに要求する保護強度は、データまたは著作権者毎に異なることから、過剰にデータを保護した場合、データを利用する手順が複雑になる。このため、特許文献１の技術では、データまたはデータの著作権者毎に、著作権者がデータに要求する保護強度でデータ保護を行ったコンテンツデータを配信することにより、コンテンツ毎に保護ポリシー情報を設定して著作権等の保護を実現している。
【特許文献１】特開２００３−７８７５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような固定的な方式では、例えば顧客情報を記載したファイルに大量のクレジットカード番号が包含される場合など、1024bit以上の強度が必要となる場合に支障が生じる。また、機密度が比較的低く簡易な保護でも十分な顧客情報管理の場合でも、512bitよりも簡便な暗号化を施して処理時間の短縮を図ることが出来ない。更に、上記方式では256bit毎の固定された鍵長を利用するため、過度な保護や過小な保護が顧客情報を記載したファイルに対して施され、暗号化ファイルの復号に必要以上の復号時間が要する、あるいは携帯電話等の低能力なデバイスを使用しての暗号化ファイルの閲覧に困難が生じる等の問題が生ずる。
【０００５】
また、特許文献１記載の技術のように、コンテンツ毎に保護ポリシー情報を設定して著作権等の保護を実現すると、受け取ったコンテンツを表示する端末の処理能力に応じて処理に時間がかかってしまい、コンテンツを閲覧するのに時間がかかるという問題がある。
【０００６】
そこで、本発明は、上記問題点に鑑みてなされたもので、暗号化・復号化に必要とされる計算時間・計算量を最適化できる情報管理システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、複数の情報を格納する電子ファイルに対して暗号化を施して提供する情報管理システムであって、一つの暗号鍵で暗号化される前記情報数を前記電子ファイルを表示する情報端末の処理能力に依存させて決定する決定手段と、前記暗号鍵の長さを前記情報端末の処理能力に依存させて決定する鍵長決定手段とを有し、前記鍵長決定手段は、前記暗号鍵の長さを決定する際にヒルデブランド−テネンバーム推定式を用いることを特徴とする。
【０００８】
本発明によれば、暗号化・復号化に必要とされる計算時間・計算量を最適化でき、暗号化ファイルの復号時間を短縮することができる。上記情報にはレコードが含まれる。また、顧客情報の機密保持等のために実施される暗・復号処理に必要な計算コストを削減できるため、携帯情報端末においてユーザ・フレンドリな保護機能付き顧客情報利用環境を提供できる。また、機密ファイルに与える保護強度を、機密ファイルに記載される顧客情報の数に基づいて設定することが可能になるため、適切な強度の保護を機密ファイルに施すことが可能になり、過大な保護による多大な処理時間の発生や、逆に過小な保護による機密情報の漏洩を防止することが出来る。さらに、暗号鍵の長さを決定する際にヒルデブランド−テネンバーム推定式を用いることで、計算の高速化を図ることができる。
【発明の効果】
【００１５】
本発明によれば、暗号化・復号化に必要とされる計算時間・計算量を最適化できる情報管理システムを提供することができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明を実施するための最良の形態について説明する。図１は顧客情報を記載した電子ファイルの配布・閲覧に関わる人物・サーバ等の関係を示す図である。図２はユーザ所有情報端末と顧客情報管理サーバのブロック構成図である。まず始めに、図１に従い本実施例の顧客情報管理システム１０の構成の詳細を説明する。複数のレコード（情報）を格納する電子ファイルに対して暗号化を施して提供する顧客情報管理システム１０は、ユーザ所有情報端末（以下、ユーザ端末）２０、顧客情報管理サーバ３０およびセキュリティ・サーバ４０を有する。本実施例では、会社Ａのセールス・パーソンであるユーザＢが顧客情報を記載した機密ファイルを社内ＬＡＮ（Local
Area Network）を通じてユーザＢの使用するユーザ所有情報端末２０にダウンロードし、営業活動のためにこの機密ファイルを閲覧する例を説明する。
【００１７】
図２に示すように、顧客情報管理サーバ３０は、ユーザ・デバイス認証手段３１、顧客レコード情報制限手段３２、鍵長決定手段３３、決定手段としての顧客レコード数設定手段３４、ファイル暗号化手段３５、電子チケット生成手段３６、暗号化ファイル・電子チケット送付手段３７、セキュリティ・ポリシ／ユーザ情報入力手段３８を有する。
【００１８】
上記機密ファイルは会社Ａが所有する顧客情報管理サーバ３０内のディスクに保存されており、顧客情報管理サーバ３０内の機密ファイル本体には数百万人の顧客情報が記載されている。顧客情報には、顧客の名前、生年月日、住所、電話番号、顧客による会社Ａの製品購入情報、会社Ａに対する支払い状況、顧客が所有するクレジットカードの番号が含まれている。これらの顧客情報が流出すれば、会社Ａの社会的信用を大きく失墜させる事態が生じる上に、多額の損害賠償問題が発生する懸念がある。このため、顧客情報管理サーバ３０内の顧客情報を記載した機密ファイル本体は、最高レベルの機密保護に使用されるＲＳＡ暗号2048bit鍵を用いて暗号化が施されているとする。
【００１９】
ユーザ・デバイス認証手段３１は、顧客情報管理サーバ３０へアクセスしてくるユーザを認証する。セキュリティ・ポリシ／ユーザ情報入力手段３８は、ユーザの利用可能範囲の特定に必要なユーザの資格情報と、機密情報の価値を決定するために用いられる顧客レコード推定単価等を含むセキュリティ・ガイドライン情報をＬＡＮ等の通信網を用いてセキュリティ・サーバ４０から取得する。顧客レコード情報制限手段３２は、ユーザが有する資格に基づき機密情報の利用範囲を制限する。鍵長決定手段３３は、電子ファイルを暗号化する暗号鍵の長さをユーザ端末２０の処理能力に依存させて決定する。以下では、ユーザ端末２０の処理能力として、単位時間に計算することができる計算量を示す単位時間計算量を用いて説明する。
【００２０】
顧客レコード数設定手段３４は、一つの暗号鍵で暗号化されるレコード数を電子ファイルを表示するユーザ端末２０の処理能力に依存させて決定する。また、この顧客レコード数設定手段３４は、ユーザ端末２０の一画面に表示する情報を顧客レコード数設定手段３４で決定されたレコード数分に限定することにより、携帯電話等の低能力なデバイスでの暗号化ファイルの閲覧に関する処理時間遅延の問題等を解決している。ファイル暗号化手段３５は、鍵長決定手段３３で決定された長さの暗号鍵を用いて顧客レコードを記載した電子ファイルを暗号化する。電子チケット生成手段３６は、ユーザ端末２０のデバイス固有情報を用いてユーザ端末２０に対する電子チケットを生成する。暗号化ファイル・電子チケット送付手段３７は、暗号化した電子ファイルと電子チケットをユーザ端末２０へ送付する。
【００２１】
またユーザ端末２０は、ユーザ資格証明・デバイスＩＤ送付手段２１、暗号化ファイル・電子チケット受取手段２２、機密ファイル復号手段２３およびファイル表示手段２４を有する。このユーザ端末２０は、例えば携帯電話、ＰＤＡ（Personal Digital Assistant）等により構成される。ユーザ端末２０では、例えば電子ファイルの利用資格の証明に電子証明書、スマートカードまたはＩＣカードを用いることができる。ユーザ資格証明・デバイスＩＤ送付手段２１は、ユーザ資格証明とデバイスに固有な情報であるデバイスＩＤを顧客情報管理サーバ３０へ送付する。暗号化ファイル・電子チケット受取手段２２は、暗号化ファイルと電子チケットを顧客情報管理サーバ３０から受け取る。機密ファイル復号手段２３は、暗号化されたファイルを平文に直すための復号化を行う。
【００２２】
更にユーザ端末２０には、平文と暗号鍵等の流出を防止するためのソフトウェア耐タンパー化機能（参考文献：「ソフトウェアの耐タンパー化技術」、情報処理 2003年6月号）が搭載されているとする。ユーザ端末２０にはソフトウェア耐タンパー化機能によりセキュリティが確保されたビューアとしてのファイル表示手段２４が搭載されており、ユーザＢはこれらのビューアを用いて暗号化ファイルの閲覧を行う。また本実施例では、電子チケット方式（参考：特開平10-164051、「ユーザ認証装置および方法」）の利用を想定する。
【００２３】
ここで想定する電子チケット方式では、ユーザは自身が所有するデバイスに固有な情報を顧客情報管理サーバ３０に登録し、顧客情報管理サーバ３０は上記デバイス固有情報と機密情報保護に利用する暗号鍵との差分情報を電子チケットとしてユーザに発行する。上記のデバイス固有情報の登録は、デバイスの耐タンパー化機能によって保護されたプログラムが、ユーザの指示に基づき顧客情報管理サーバ３０との間の通信のためにＶＰＮ（Virtual Private Network）等の安全な経路を作成した上で、ユーザ及び第三者にデバイス固有情報を漏洩することなしに実施する。更に、上記デバイス固有情報、復号化された機密ファイル、及び機密ファイルの暗号化に利用される共通鍵の３つは上記ソフトウェア耐タンパー化機能によって常に保護されており、ユーザ自身および第三者がこれらの情報をデバイスから取り出すことは阻止される。
【００２４】
また、上記電子チケット方式では素因数分解或いは離散対数問題等の計算量的困難さを利用することで、ユーザ自身および第三者が上記差分情報からユーザのデバイス固有情報或いは機密ファイル保護に利用されている暗号鍵情報を算出することは計算量的に困難であり、事実上機密ファイル及びそれに付随する秘密情報の流出は阻止される。
【００２５】
次に図３及び４に従って、顧客情報の利用の際に実施されるユーザ端末２０及び顧客情報管理サーバ３０の手順について説明する。図３は上記電子ファイルを利用するユーザが実施すべき手順を示す図である。図４は電子ファイルを暗号化し、ユーザに対して電子チケットと暗号化された電子ファイルの送付を行う顧客情報管理サーバ３０の実施手順を示す図である。
【００２６】
ユーザＢはユーザ端末２０のユーザ資格証明・デバイスＩＤ送付手段２１を介して顧客情報管理サーバ３０にアクセスし（ステップＳ１０１）、電子証明書等を用いて顧客情報の利用資格を有することを顧客情報管理サーバ３０に証明する（ステップＳ１０２）。同時に、ユーザ資格証明・デバイスＩＤ送付手段２１はユーザＢが顧客情報を利用しようとしているデバイスを特定するためのデバイスＩＤを顧客情報管理サーバ３０に送付する（ステップＳ１０３）。
【００２７】
顧客情報管理サーバ３０では、ユーザ・デバイス認証手段３１がユーザＢのユーザ認証を行う（ステップＳ２０１）。そして、ユーザ認証が完了した後、セキュリティ・ポリシ／ユーザ情報入力手段３８は、セキュリティ・サーバ４０にアクセスし、ユーザ情報、ユーザ端末２０の単位時間計算量Ｅと機密ファイルの価値を決定するために使用される顧客レコード推定単価vを含むセキュリティ・ガイドライン情報を取得する（ステップＳ２０２）。セキュリティ・サーバ４０から取得したセキュリティ・ガイドライン情報には上記単位時間計算量Ｅ以外に１円で購入できる計算量の推定値Ｇ、及び保護対象年数Ｙが記載されている。
【００２８】
顧客レコード情報制限手段３２は、上記ユーザ情報、及びデバイスＩＤを基に、ユーザＢの利用可能な顧客情報の範囲を決定する（ステップＳ２０３）。ここでは、ユーザＢの利用可能な顧客情報の対象人数をＭ人とおく。そして、ユーザＢに送付するためにＭ人分の顧客レコードを記載した機密ファイルを作成する（ステップＳ２０４）。
【００２９】
具体的には、顧客レコード情報制限手段３２は、暗号化された上で保存されている機密ファイル本体を2048bit鍵を利用して復号し、復号された機密ファイルからユーザＢが閲覧可能なＭ人分の顧客レコードを抽出する。更に顧客レコードを暗号化する際に使用する公開鍵暗号の鍵長、及び一つの公開鍵を割り当てる顧客レコード数Ｎを以下に述べる方法を用いて算出する（ステップＳ２０５）。まず、鍵長決定手段３３はユーザ端末２０の単位時間計算量Ｅを用いて式（１）より公開鍵暗号の鍵長ｋを算出する（ステップＳ２０６）。
（１）   k=(2E)^(1/3)
ユーザ端末２０の単位時間計算量Ｅは、ユーザ端末２０の演算処理能力により決定される。例えば、ユーザ端末２０のＣＰＵのクロック数がＣｕ（ビット/秒）の時、Ｅ＝１/ＣｕとするなどしてＥは算出される。
【００３０】
次に、顧客レコード数設定手段３４は顧客レコード推定単価ｖ及び1円で購入できる計算量の推定値Ｇを用いて一つの公開鍵を割り当てる顧客レコード数Ｎを以下の式に従って算出する。
N=[C(k)/(v・f(Y))], f(Y)=G*(2^(Y/1.5))
ただし、上記において[ｘ]はｘを超えない最大の整数、またＣ（ｋ）は以下の式で与えられる正の実数とする。
C(k) = min{w|Ψ(x,y)>=xy/log y, x=2d(k＾(2/d))(w＾((d+1)/2), y>0 )
ここで、Ψ(x,y)は、ｘ以下の正の整数で、その素因数がｙを超えない数の個数、dは、正の整数とする。
【００３１】
また、上記の式中でΨ（ｘ,ｙ）は、ｘ以下の正の整数で、その素因数がｙを超えないものの数を表す。Ψ(x,y)の計算方法は、例えば[1]Trans.AMS., 296, p265-290. [2] Math. Comp., 66, p.1729-1741,1997. [3] Math. Comp., 73, p.1013-1022, 2004等を参考にされたい。また、上記参考文献で示された計算方法はいずれもヒルデブランド−テネンバーム推定式を用いるが、この式の計算の中でニュートン−コーツ法を用いることにより、計算の高速化を図っても良い。
以下に、鍵長決定手段３３が暗号鍵の長さを決定する際に用いるヒルデブランド−テネンバーム推定式を示す。
【数１】
0004816025.tif 000002
特に、鍵長決定手段３３は、以下のニュートン−コーツ法を用いてヒルデブランド−テネンバーム推定式の推定値を計算するとよい。ここで、ｎ，εを任意の正の整数、及び任意の正の数とする。このとき、
（logx）^(1+ε)<y<=x
を満たすｘ，ｙに対して、以下が成立する。
【数２】
0004816025.tif 000003
【００３２】
次にファイル暗号化手段３５は鍵長ｋを持つＲＳＡ暗号の秘密鍵・公開鍵を［Ｍ／Ｎ］＋１個生成し、電子チケット生成手段３６はこれらの秘密鍵とユーザＢが所有するユーザ端末２０のデバイス固有情報を用いてユーザ端末２０へ送付する電子チケットを［Ｍ／Ｎ］＋１枚生成する。更に電子チケット生成手段３６は１６０ビットの乱数を［Ｍ／Ｎ］＋１個生成する。ここで、［Ｍ／Ｎ］＋１個の秘密鍵をd(1),d(2),...,d([M/N]+1)、[M/N]+1個の公開鍵をe(1),e(2),...,e([M/N]+1)、[M/N]+1個の乱数をr(1),r(2),...,r([M/N]+1)と表記する。
【００３３】
ファイル暗号化手段３５は、これらを用いて顧客レコードを記載した電子ファイルを以下の方法を用いて暗号化する（ステップＳ２０７）。まず、ファイル暗号化手段３５は、１番目からＮ番目までの顧客レコードを乱数ｒ（１）を共通鍵としてＡＥＳ（Advanced Encryption Standard）等の共通鍵暗号を用いて暗号化する。更に乱数ｒ（１）を公開鍵ｅ（１）を利用して暗号化し暗号化共通鍵ｒ’（１）を作成する。また、電子チケット生成手段３６は、この暗号化共通鍵ｒ’（１）と秘密鍵ｄ（１）、更にユーザ端末２０のデバイス固有情報とを用いて電子チケットｔ（１）を作成する。
【００３４】
同様に乱数ｒ（２）、公開鍵ｅ（２）、及び秘密鍵ｄ（２）を用いてＮ＋１番目から２Ｎ番目までの顧客レコードの暗号化と電子チケットｔ（２）の作成を行う。２Ｎ＋１番目以降の顧客レコードに対しても同様の作業を行い、Ｍ人分全ての顧客レコードを記載した暗号化顧客レコードファイルを作成する。暗号化ファイル・電子チケット送付手段３７は、この暗号化顧客レコードファイルに暗号化共通鍵r’(1),r’(2),...,r’([M/N]+1)及びt(1),t(2),...,t([M/N]+1)を付属させ、これをユーザ端末２０に送付する（ステップＳ２０８）。
【００３５】
次にユーザＢによる暗号化顧客レコードファイルの閲覧について説明する。ユーザ端末２０の暗号化ファイル・電子チケット受取手段２２は、暗号化ファイルと電子チケットを受け取ると（ステップＳ１０４）、先に述べたように、ユーザＢは暗号化顧客レコードファイルを耐タンパー化機能で保護されたビューアを用いて閲覧する。このため、ユーザＢは、取得した電子チケットと暗号化顧客レコードファイルをビューアに登録する（ステップＳ１０５）。ビューアは電子チケットt(1),t(2),...,t([M/N]+1)とデバイス固有情報を用いて、暗号化顧客レコードファイルに付随している暗号化共通鍵r’(1),r’(2),...,r’([M/N]+1)を復号して共通鍵r(1),r(2),...,r([M/N]+1)を得る。更に機密ファイル復号手段２３は、共通鍵r(1),r(2),...,r([M/N]+1)を用いて暗号化顧客レコードファイルを復号し、ファイル表示手段２４はユーザに表示する（ステップＳ１０６、Ｓ１０７）。ただし、これらの処理はビューアが有する耐タンパー化領域内に全ての機密情報を留めつつ実施される。
【００３６】
ユーザは共通鍵r(1),r(2),...,r([M/N]+1)あるいはデバイス固有情報等を知ることは計算量的に困難であるが、電子チケットを一度取得すればその有効期限の間は、例え顧客情報管理サーバ３０にアクセス不可能な社外のモバイル環境においても暗号化された顧客レコードファイル内の情報を、ユーザが利用するデバイスに搭載された専用ビューアを用いて閲覧することが可能である。
【００３７】
さて、上記方式において、仮に顧客レコード推定単価をv=10000、ユーザＢが利用可能な顧客情報の件数をＭ＝１０００（人）、保護対象年数をＹ＝１０（年）、１円で購入可能な計算量の推定値をG=1.00915×10^11（bit）とする。ここで、Ｇの値は３．２ＧＨｚのＰＣ（Personal Computer）の販売価格を２０万円と仮定して算出した（参考文献：Simson Garfinkel, “PGP:Pretty Good Privacy”, O’Reilly, 1994）。また、ＲＳＡ暗号の復号に必要な計算量を(1/2)k^3と仮定し、ユーザが使用する携帯電話のＣＰＵ（Central Processing Unit）のクロック数を１５０ＭＨｚと仮定する。このとき、上記の方法を用いると携帯電話用の鍵長は699bitとなり、一つの公開鍵が割り当てられる顧客レコード数はN=14となる。顧客情報管理サーバ３０側で利用されている2048bitのＲＳＡ暗号鍵に比較し、鍵長は0.32倍の長さになる。
【００３８】
ＲＳＡ暗号の復号時間は鍵長の３乗に比例するため、携帯電話で一画面で表示できる顧客レコードの数を１４人に制限する場合を仮定すると上記手法により実質的に約３０倍の高速化が得られる。これにより、機密ファイルの閲覧におけるユーザビリティの向上はもちろん、従来では困難であった携帯電話等の低速なデバイスを用いての強固な著作権保護・機密情報保護の実現が可能となる。
【００３９】
特に、電子チケット方式を用いて最高レベルに強固な保護システムを構築する場合には、ビューアでファイルを表示する際にファイル全体を復号することをしないで、ビューアで表示する１ページのみを耐タンパー化領域内で復号し、表示されない部分は暗号化したまま保持するようなシステム構成が想定される。この場合には、各ページを表示する度毎に公開鍵暗号による復号が実施されることになり、通常大幅な速度低下・ユーザビリティの低下が発生する。このため、携帯電話等の低速なデバイスを用いてこのような最高レベルに強固な保護システムに構築する場合には、上記の高速化の効果は絶大なものとなる。
【００４０】
上記実施例では、特に機密ファイル保護のためにＲＳＡ暗号を利用しているが、ElGamal暗号、あるいは楕円曲線暗号、ＮＴＲＵなどの他の公開鍵暗号を利用しても同様の効果を得ることが出来る。また、ユーザに閲覧が許可されるファイルのレコード数を設定する際、参考情報としてＰＣ等の想定デバイスを用いて解読に要する推定解読時間をユーザに提示し、ユーザが範囲設定を調整できるようにしても良い。
【００４１】
上記ユーザ端末２０、顧客情報管理サーバ３０およびセキュリティ・サーバ４０は、例えば、ＣＰＵ、ＲＯＭ(Read Only Memory)、ＲＡＭ(Random Access Memory)等を用いて実現される。本発明による情報管理方法は、顧客情報管理サーバ３０により実現される。また、本発明の情報管理方法は、コンピュータを制御して実行するプログラムとして実現することができる。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより、提供することができる。
【００４２】
以上本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。なお、本実施形態では情報のうち顧客情報を扱う例について説明したが本発明はこれに限定されない。
【図面の簡単な説明】
【００４３】
【図１】顧客情報を記載した電子ファイルの配布・閲覧に関わる人物・サーバ等の関係を示す図である。
【図２】ユーザ所有情報端末と顧客情報管理サーバのブロック構成図である。
【図３】電子ファイルを利用するユーザが実施すべき手順を示す図である。
【図４】電子ファイルを暗号化し、ユーザに対して電子チケットと暗号化された電子ファイルの送付を行う顧客情報管理サーバの実施手順を示す図である。
【符号の説明】
【００４４】
１０  顧客情報管理システム
２０  ユーザ端末
２１  ユーザ資格証明・デバイスＩＤ送付手段
２２  暗号化ファイル・電子チケット受取手段
２３  機密ファイル復号手段
２４  ファイル表示手段
３０  顧客情報管理サーバ
３１  ユーザ・デバイス認証手段
３２  顧客レコード情報制限手段
３３  鍵長決定手段
３４  顧客レコード数設定手段
３５  ファイル暗号化手段
３６  電子チケット生成手段
３７  暗号化ファイル・電子チケット送付手段
３８  セキュリティ・ポリシ／ユーザ情報入力手段
４０  セキュリティ・サーバ
【図１】
0004816025.tif 000004
【図２】
0004816025.tif 000005
【図３】
0004816025.tif 000006
【図４】
0004816025.tif 000007