説明

暗号管理装置、暗号管理方法、暗号管理プログラム

【課題】選定要求を満たすような暗号モジュールの組み合わせを選定することができ、また、暗号モジュールの選定要求を受けてから選定が完了するまでの負荷を低減できる暗号管理装置を提供する。
【解決手段】暗号モジュールに暗号モジュールのメタ情報を設け、暗号モジュールを組み合わせた場合の評価値について、これら組み合わせる暗号モジュールのメタ情報を利用して評価値を計算し、計算された評価値を比較し、比較結果に基づいて、暗号モジュールを選択する。これにより、組み合わせて実行される暗号モジュールに対しても、暗号モジュールを選定し、配信できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クライアントからの暗号モジュール配信要求に対して、暗号モジュールの評価情報に従って選定・配信する暗号管理装置、暗号管理方法、暗号管理プログラムに関するものである。
【背景技術】
【0002】
従来から、秘匿性のある情報を取り扱う際、一般に暗号処理が行われている。このような暗号処理を実行するためには、暗号モジュールが用いられる。この暗号モジュールとは、暗号処理を行う場合に実行されるプログラムであって、暗号処理を行う場合に実行されるプログラムの一部を構成する要素となるプログラム(例えば、ハッシュ関数の計算、疑似乱数生成処理等)も暗号モジュールとして含まれる。また、暗号モジュールは、プログラムとして単体で実行可能なものと、複数のモジュールを組み合わせることによって1つのプログラムとして実行可能なものがある。以下の実施形態においては、1つのプログラムとして実行可能な暗号モジュールであっても、複数を組み合わせなければ実行できないプログラムであっても、両方の場合を含めて暗号モジュールとして説明する。
【0003】
この場合、特定の暗号モジュールによっては複数の暗号処理で重複して用いられるものがある。例えば、ハッシュ関数(SHA−1など)は、電子署名生成(例えば、非特許文献1に記載のRSASSAなど)の際にも用いられるし、認証子(例えば、非特許文献2に記載のHMACなど)生成の際にも用いられるし、ハッシュ関数単体で用いられる場合もある。
【非特許文献1】M. Bellare and P. Rogaway, “The exact security of digital signatures - How to sign with RSA and Rabin, ” In Advances in Cryptology - Eurocrypt’96, pp. 399-416, Springer-Verlag, 1996.
【非特許文献2】M.Bellare, R.Canetti and H.Krawczyk, “Keying hash functions for message authentication,” In Advances in Cryptology - CRYPTO'96, pp.1-15, Springer-Verlag, 1996.
【発明の開示】
【発明が解決しようとする課題】
【0004】
ここで、例えばメモリ容量の少ない携帯端末などで暗号モジュールを管理・利用する場合などを考慮する。この場合、携帯端末内のメモリ使用量の効率の面から、暗号処理の構成要素毎にモジュール化し、同じ暗号モジュールであってもその組み合わせを変えることによって、各暗号処理で暗号モジュールを共通して用いることができるようにモジュール設計することが望ましい。しかしながら、このように暗号処理の構成要素毎にモジュール化された暗号モジュールを端末装置からの選定要求に応じて配信する場合、端末装置からの要求に対して、その要求を満たすような暗号モジュールの組み合わせを選定して端末装置に配信することが必要である。
また、暗号モジュールを選定する際に暗号モジュールを組み合わせた場合における評価を行うとすると、選定要求を受けてから選定が完了するまでの負荷が増大してしまうという問題があった。
【0005】
本発明は、このような事情に鑑みてなされたもので、その目的は、選定要求を受けた時点において自身が有する暗号モジュールのうち、当該暗号モジュールの適切な組み合わせを選定することができ、また、暗号モジュールの選定要求を受けてから選定が完了するまでの負荷を低減できる暗号管理装置、暗号管理方法、暗号管理プログラムを提供することにある。
【課題を解決するための手段】
【0006】
本発明は、複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力する暗号管理装置であって、複数の暗号モジュールを格納する暗号モジュール記憶部と、当該個々の暗号モジュールの属するカテゴリを表すカテゴリ情報と、当該個々の暗号モジュールに対する所定の評価結果を示す第1の評価情報と、当該個々の暗号モジュールの実行に他の関連暗号モジュールを必要とする場合に当該他の関連暗号モジュールが属するカテゴリを表すカテゴリ情報と、当該他の関連暗号モジュールに対する所定の評価結果を示す第2の評価情報と前記第1の評価情報とから当該暗号モジュールと当該他の関連暗号モジュールとを組み合わせて実行した場合に対する所定の評価情報を示す複合型暗号評価情報の導出方法を示す導出方法情報とを含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、要求される暗号モジュールのカテゴリ情報に基づき、前記暗号モジュールメタ情報記憶部を参照して前記暗号モジュールメタ情報を検索する暗号モジュールメタ情報検索部と、前記暗号モジュールメタ情報検索部によって検索された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して当該復号型暗号評価計算部を再帰的に呼び出すことによって得られる復号型暗号評価情報である前記第2の評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成する複合型暗号評価計算部と、前記複合型暗号評価計算部による計算結果を得て、この得た計算結果に基づき、暗号モジュールを選定する暗号モジュール選定部と、前記暗号モジュール選定部によって選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力する暗号モジュール取得部と、を有することを特徴とする。
また、本発明は、上述の暗号管理装置において、前記複合型暗号評価計算部は、指定された暗号モジュールメタ情報に前記第2のカテゴリ情報が含まれていない場合には、当該暗号モジュールに対する前記第1の評価情報を前記複合型暗号評価情報として生成することを特徴とする。
【0007】
このように、本発明では、外部から暗号モジュールの選定要求を受信した際に、その選定要求のカテゴリ情報に対応するカテゴリの暗号モジュールメタ情報が検索される。ここでは、組み合わせ可能な暗号モジュールについては、暗号モジュールメタ情報に関連暗号カテゴリ情報が設けられ、他の暗号モジュールメタ情報のカテゴリ情報と関連付けされていることから、選定要求のカテゴリ情報に対応するカテゴリの暗号モジュールメタ情報を起点として組み合わせ可能な暗号モジュールメタ情報を再帰的に呼び出して、暗号モジュールを組み合わせた場合の評価情報を生成することができる。この評価情報は、暗号モジュールメタ情報に記憶された評価情報と、当該暗号モジュールメタ情報の関連暗号モジュールである暗号モジュールメタ情報の評価情報とを用い、当該暗号モジュールメタ情報に記憶された導出方法情報を基に生成される。そして、生成された評価情報を基に、暗号モジュールが選定され、選定された暗号モジュールが出力される。
【0008】
また、本発明は、複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力する暗号管理装置であって、複数の暗号モジュールを格納する暗号モジュール記憶部と、組み合わされる暗号モジュールのうち最上位の暗号モジュールのカテゴリを表すカテゴリ情報と、当該暗号モジュールを組み合わせて実行した場合に対する所定の評価情報を示す複合型暗号評価情報と、当該暗号モジュールの組み合わせに含まれる各々の暗号モジュールを識別する暗号モジュール識別情報を含む組み合わせ暗号モジュール識別情報と、を含む複合型メタ情報を記憶する複合型メタ情報記憶部と、選定要求に対応する暗号モジュールのカテゴリ情報に基づき、前記複合型メタ情報記憶部を参照して複数の複合型メタ情報を検索し、得られる複合型メタ情報の複合型暗号評価情報に基づき、組み合わせに含まれる暗号モジュールを選定する暗号モジュール選定部と、前記暗号モジュール選定部によって選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力する暗号モジュール取得部と、を有し、前記複合型暗号評価情報は、組み合わされる暗号モジュールの各々の評価情報を基に所定の導出方法を用いて算出された、暗号モジュールを組み合わせて実行する場合の評価情報であることを特徴とする。
【0009】
このように、本発明では、暗号モジュールを組み合わせた場合の評価情報について計算した結果を複合型メタ情報として記憶しておくようした。ここでは、暗号モジュールを組み合わせて実行する場合の評価情報は、組み合わされる暗号モジュールの各々の評価情報を基に、所定の導出方法を用いて算出された結果が記憶されるものである。このように、所定の導出方法に従って暗号モジュールを組み合わせた場合の評価情報が生成されて記憶されているので、この評価情報を参照することによって、選定要求を受けた時点で評価情報を生成する処理を行うことなく、暗号モジュールが選定される。
【0010】
また、本発明は、上述の暗号管理装置において、当該暗号モジュールの属するカテゴリを表すカテゴリ情報と、当該暗号モジュールが評価された結果である評価情報と、当該暗号モジュールの実行に関連暗号モジュールを必要とする場合にその関連暗号モジュールが属するカテゴリを表す関連暗号モジュールカテゴリ情報と、当該暗号モジュールの実行に関連暗号モジュールを必要とする場合に前記暗号モジュールに設定された評価情報と前記関連暗号モジュールに設定された評価情報とから当該暗号モジュールと当該関連暗号モジュールとを組み合わせて実行した場合の評価情報である複合型暗号評価情報を導出する方法を表す導出方法情報と、を含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、指定された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合は、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して自身を再帰的に呼び出すことによって得られる前記関連暗号モジュールの評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成して評価結果とする複合型暗号評価計算部と、前記複合型暗号評価計算部によって計算された複合型暗号評価を前記複合型メタ情報記憶部に書き込む書き込み部と、を有することを特徴とする。
【0011】
このように、本発明では、暗号モジュールメタ情報が記憶されてあり、この記憶された暗号モジュールメタ情報を基に、暗号モジュールが組み合わされた場合の評価情報が生成されて複合型暗号メタ情報記憶部に書き込まれる。これにより、暗号管理装置が新たな暗号モジュールを管理する必要が発生したときに、その新たな暗号モジュールを組み合わせた場合における評価情報を生成して記憶しておくことが可能となる。
また、本発明は、上述の暗号管理装置において、前記複合型暗号評価計算部は、指定された暗号モジュールメタ情報に前記関連暗号モジュールカテゴリ情報が含まれていない場合には、当該暗号モジュールの評価情報を前記複合型暗号評価情報として生成することを特徴とする。
【0012】
また、本発明は、複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力する暗号管理装置における暗号管理方法であって、前記暗号管理装置は、複数の暗号モジュールを格納する暗号モジュール記憶部と、を含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、を有しており、暗号モジュールメタ情報検索部が、要求される暗号モジュールのカテゴリ情報に基づき、前記暗号モジュールメタ情報記憶部を参照して前記暗号モジュールメタ情報を検索し、複合型暗号評価計算部が、前記暗号モジュールメタ情報検索部によって検索された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合は、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して当該複合型暗号評価計算部を再帰的に呼び出すことによって得られる複合型暗号評価情報である前記第2の評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成して評価結果とし、暗号モジュール選定部が、前記選定要求に対応する暗号モジュールメタ情報を指定して前記複合型暗号評価計算部による計算結果を得て、この得た計算結果に基づき、暗号モジュールを選定し、暗号モジュール取得部が、前記暗号モジュール選定部によって選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力することを特徴とする暗号管理方法。
【0013】
また、本発明は、複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力するコンピュータであって、複数の暗号モジュールを格納する暗号モジュール記憶部と、当該個々の暗号モジュールの属するカテゴリを表すカテゴリ情報と、当該個々の暗号モジュールに対する所定の評価結果を示す第1の評価情報と、当該個々の暗号モジュールの実行に他の関連暗号モジュールを必要とする場合に当該他の関連暗号モジュールが属するカテゴリを表すカテゴリ情報と、当該他の関連暗号モジュールに対する所定の評価結果を示す第2の評価情報と前記第1の評価情報とから当該暗号モジュールと要害他の関連暗号モジュールとを組み合わせて実行した場合に対する所定の評価情報を示す複合型暗号評価情報の導出方法を示す導出方法情報と、を含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、を有するコンピュータに、要求される暗号モジュールのカテゴリ情報に基づき、前記暗号モジュールメタ情報記憶部を参照して前記暗号モジュールメタ情報を検索する手順、
前記暗号モジュールメタ情報検索部によって検索された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合は、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して当該複合型暗号評価計算部を再帰的に呼び出すことによって得られる複合型暗号評価情報である前記第2の評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成して評価結果とする手順、前記選定要求に対応する暗号モジュールメタ情報を指定して前記評価結果とする手順を呼び出し評価結果を得て、得られた評価結果に基づき、暗号モジュールを選定する手順、前記選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力する手順を実行させるためのプログラムである。
【発明の効果】
【0014】
以上説明したように、この発明によれば、暗号モジュールの実行に関連暗号モジュールを必要とする場合に、暗号モジュールと関連暗号モジュールとを組み合わせて評価を行うようにしたので、選定要求に応じた暗号モジュールの組み合わせの中から、評価結果を基に暗号モジュールを選定し、選定要求を行った要求元に対して出力することができる。
また、この発明によれば、暗号モジュールを組み合わせた場合における評価情報を計算して予め記憶しておくようにしたので、外部から選定要求を受信した時点で評価情報の計算を行う必要がなく、選定要求を受信した後に評価情報を計算する場合に比べて、選定要求を受信してから暗号モジュールを選定するまでの処理にかかる負荷を削減することができる。
【発明を実施するための最良の形態】
【0015】
以下、本発明の一実施形態による暗号モジュール配信システムについて図面を参照して説明する。
まず、本システムの概要について説明する。本システムにおいては、サーバとクライアント装置とが接続され、サーバとクライアント装置間において暗号モジュールを用いて暗号化された情報を送受信することが可能なシステムである。ここで、暗号モジュールを定期的に切り替えることも可能である。このような、暗号モジュールを切り替え可能な暗号システムとしては、暗号の手法ごとに暗号方式に依存しないインターフェースを規定し、各暗号ベンダが実装可能なフレームワークがいくつか存在する。例えば、Microsoft(登録商標)のCryptAPIやSun(登録商標)のJCA(Java(登録商標) Cryptographic Architecture)/JCE(Java(登録商標) Cryptographic Extensions)やOpen Group(登録商標)のCDSA(Common Data Security Architecture)などがある。
【0016】
これらのフレームワークでは、暗号化/復号、署名生成/検証、認証子生成/検証などの暗号の手法ごとに暗号モジュールにアクセスするインターフェースを規定し、インターフェースに従って、例えば、DES(Data Encryption Standard)、AES(Advanced Encryption Standard)などの暗号方式を実装することが可能になっている。そして、暗号やセキュリティの専門家がシステム構築時に、これらの実装された暗号方式の中から適切な暗号方式をあらかじめ選択し、いずれの暗号方式を利用するかを示す暗号方式パラメータをフレームワークに入力して、暗号方式を切り替えることが可能である。
【0017】
このようなフレームワークを利用する場合、アプリケーションシステムの運用上のセキュリティポリシが変更された場合、従来であれば暗号やセキュリティの専門家が、再度システムに適した暗号方式を選定する必要があり、暗号やセキュリティの専門家の人材リソースの問題やコストの問題に直面する。また、既存の暗号方式の不備が発見されたり、新しい暗号が発表されたりした際に、運用中のシステムに対して、暗号方式の変更をスムーズに適用するのが難しい。さらには、セキュリティを実施する環境に応じて、必要なセキュリティ強度や処理速度などが違う場合に、最適なセキュリティを実現することも、従来システムでは難しい問題である。
本システムにおいては、暗号方式の切り替えが可能な暗号システムでは、この問題についても解決することが可能である。
【0018】
<第1の実施形態>
図1は、本発明の第1の実施形態による暗号モジュール配信システムの構成を示す概略ブロック図である。
本暗号システムは、暗号モジュール308と暗号評価記述ファイル309とを含む暗号パッケージ307を送信する暗号管理サーバ装置350と、受信した暗号パッケージ307を用いて暗号処理を行う暗号クライアント装置150とから構成される。暗号評価記述ファイル309に記述される暗号の評価とは、対応する暗号モジュール308の暗号方式の信頼度等が数値化された情報であり、例えば、実装している暗号方式の安全性や暗号の処理速度、暗号に利用可能な鍵長などである。
【0019】
暗号管理サーバ装置350は、暗号モジュール308を蓄積した暗号モジュールDB353と、暗号評価記述ファイル309を蓄積した暗号評価DB354と、暗号モジュールDB353と暗号評価DB354との管理を行う暗号管理部351と、暗号モジュールDB353と暗号評価DB354とに新規の情報を登録する暗号登録部355と、暗号クライアント装置150の要求に応じて最適な暗号パッケージ307を暗号モジュールDB353と暗号評価DB354とから読み出して送信する暗号配信部352とを備える。
【0020】
暗号クライアント装置150は、暗号制御マネージャ部152を介して暗号実装部153が提供する暗号機能を呼び出して利用するアプリケーションやミドルウェアである上位システム部151と、暗号管理サーバ装置350から送信された暗号パッケージ307の受信や暗号実装部153から提供される暗号機能の切り替えを行う暗号制御マネージャ部152と、主要な暗号方式による暗号処理をハードウェアとして実現した耐タンパーな暗号ハードウェア部450と、暗号方式を実装した暗号モジュール308が実行可能・利用可能な状態にされて暗号機能を提供する暗号実装部153とから構成される。暗号管理サーバ装置350は、暗号クライアント装置150からの要求に基づき、暗号の初期登録・配信・更新の3つの手順を行うことで、適切な暗号パッケージ307を暗号クライアント装置150に送信する。
【0021】
ここで、暗号の初期登録とは、暗号クライアント装置150が暗号モジュール308を有せず、暗号実装部153が存在しない場合に、暗号クライアント装置150の暗号ハードウェア部450を利用して、利用上必要不可欠な暗号モジュール308を暗号管理サーバ装置350から暗号実装部153に安全に送信することである。
暗号の配信とは、暗号管理サーバ装置350が、暗号クライアント装置150から受信した暗号の選定要求に応じて、適切な暗号モジュール308または暗号パッケージ307を選定して暗号クライアント装置150に送信することである。暗号の選定要求は暗号に関する条件情報を含み、条件情報は、暗号化や署名生成などの暗号方式の分類(暗号のカテゴリ)、暗号モジュール308を作成したメーカ、暗号モジュール308が動作するハードウェアの情報、および、暗号の評価情報などがある。暗号の評価情報は、本実施形態例のように、暗号評価記述ファイル309として、暗号モジュール308とは独立したファイルとして扱われることとしても良い。
【0022】
暗号の更新とは、新規の暗号モジュール308を登録したり、危殆化した暗号方式を利用した該当する暗号モジュール308を削除したり、暗号モジュール308のバグを発見し既存の暗号モジュール308とその暗号モジュール308が実行されている暗号実装部153を更新したり、計算機の処理速度の高速化等に伴って暗号の評価を変更したりした際に、暗号管理サーバ装置350上の暗号モジュールDB353や暗号評価DB354に記憶された情報を更新し、この更新した暗号パッケージ307の情報を、暗号クライアント装置150に対して定期的に送信したり、暗号クライアント装置150からの要求に基づいて送信したりして、暗号管理サーバ装置350が新しい暗号モジュール308を送信することや既存の暗号実装部が使えなくなったことを通知することである。
【0023】
図2は、暗号クライアント装置150の詳細な構成図である。暗号制御マネージャ部152は、暗号処理情報DB157を持つ暗号処理制御部156と、暗号モジュールDB164と、暗号評価DB163と、暗号モジュール選定ポリシ158とハードウェアプロファイル160とを持つ暗号モジュール選定部159と、鍵情報DB165と、その鍵情報DB165へのアクセス制御ポリシが記述されたアクセス制御ポリシ161を持つ鍵情報管理部162と、暗号制御マネージャポリシ167を持つ暗号管理部166と、暗号ハードウェア部450と通信を行う暗号ハードウェア管理制御部170と、外部との通信を行う通信機能155と、通信機能155と連携するアルゴリズムネゴシエーション部168と、通信機能155と連携するセキュア通信管理部169とから構成される。
【0024】
暗号処理制御部156は、上位システム部151からの暗号処理呼び出しに基づき、鍵生成処理、鍵登録処理、暗号処理を行う。
鍵生成処理の場合、暗号処理制御部156は、上位システム部151から指定された暗号方式、鍵長、暗号方式パラメータを暗号処理情報DB157に登録した際の暗号処理の識別子により、指定された暗号方式に対する暗号モジュール308を暗号モジュール選定部159により選定する。
【0025】
暗号処理制御部156が、選定された暗号モジュール308をメモリ上にロードし暗号実装部153として実行状態にさせる。暗号処理制御部156が、指定された暗号処理の識別子に対応する鍵生成のための暗号方式パラメータを鍵情報管理部162経由で鍵情報DB165から引き出す。暗号処理制御部156が、指定された鍵長と引き出した暗号方式パラメータで暗号実装部153を呼び出すと、暗号実装部153は鍵情報を生成する。暗号処理制御部156は、生成された鍵情報を受け取る。暗号処理制御部156は、暗号実装部153が生成した鍵情報を鍵情報管理部162経由で鍵情報DB165に登録してその鍵情報に対応する鍵識別子を受け取り、処理結果として新しく発行した暗号処理の識別子と鍵識別子の関連付けを暗号処理情報DB157に保存し、暗号処理の識別子を上位システム部151に返す。
【0026】
鍵登録の場合、暗号処理制御部156は、上位システム部151から指定された鍵情報を、鍵情報管理部162を経由して鍵情報DB165に登録して鍵識別子を受け取り、処理結果として新しく発行した暗号処理の識別子と鍵識別子の関連付けを暗号処理情報DB157に保存し、暗号処理の識別子を上位システム部151に返す。
【0027】
暗号処理の場合、上位システム部151から指定された暗号に関する条件情報と暗号処理対象データ(平文)と鍵生成または鍵登録を行った際に受け取った暗号処理の識別子とを受け取り、暗号に関する条件情報を参照して適切な暗号モジュール308を暗号モジュール選定部159により選定し、選定された暗号モジュール308をメモリ上にロードして暗号実装部153として実行させ、指定された暗号処理の識別子に対応する鍵情報を鍵情報管理部162経由で鍵情報DB165から引き出し、指定された暗号処理対象データと引き出した鍵情報とを、呼び出した暗号実装部153に入力し、対応して処理された暗号データを受け取り、処理結果として新しく発行した暗号処理の識別子と鍵識別子の関連付けを暗号処理情報DB157に保存し、暗号処理の識別子を返す。暗号処理の際に利用した鍵情報などを暗号処理の識別子に結びつけることにより、暗号処理の再実行や復号を簡単に実施することができるようにする。
【0028】
暗号モジュールDB164は、暗号管理サーバ装置350から受信した暗号モジュール308を格納する記憶部である。
暗号評価DB354は、暗号管理サーバ装置350から受信した暗号評価記述ファイル309を格納する記憶部である。
暗号モジュール選定部159は、暗号化や署名生成などの暗号のカテゴリ、暗号モジュール308を作成したメーカ、暗号モジュール308が動作するハードウェアの情報、および、暗号の評価情報などの暗号に関する条件情報を、上位システム部151からの入力を元に、暗号モジュールDB164が記憶している暗号モジュール308の中から一番適切な暗号モジュール308を選定する。暗号モジュール308の選定にあたっては、暗号クライアント装置150のハードウェア情報を記述したハードウェアプロファイル160に適合するものの中から選び、かつ、暗号クライアント装置150を利用する利用者のポリシを記述した暗号モジュール選定ポリシ158にも従うようにする。
【0029】
ハードウェアプロファイル160とは、例えば、暗号クライアント装置150のCPUアーキテクチャ、CPUクロック、搭載メモリ量などの情報を含む情報である。暗号モジュール選定ポリシ158とは、例えば、入力条件により選定された暗号が複数ある場合に利用者が優先したい条件、利用者が優先的に利用したい暗号のメーカ、利用者が利用禁止にしたい暗号方式などを含む情報である。
【0030】
このように、暗号モジュール選定部159は、上位システム部151からの入力情報と、ハードウェアプロファイル160と、暗号モジュール選定ポリシ158とを参照して、入力情報に一致する暗号モジュール308を選定する。暗号モジュール選定部159が暗号モジュール308を一意に選定した場合には、選定した暗号モジュール308を暗号モジュールDB164から取り出す。暗号モジュール選定部159は、暗号モジュール308が一意に選定できなかった場合は、エラーを出力する。
【0031】
鍵情報管理部162は、暗号実装部153を呼び出す際に指定される鍵情報や暗号方式パラメータなどの情報を鍵情報DB165へデータを記憶させ、または読み出す。鍵情報管理部162は、指定される鍵情報や暗号方式パラメータの情報がひとつではない場合、複数の情報をひとつにまとめて引き出せるように関連付けを行って、鍵情報DB165に登録する。また、鍵情報管理部162は、鍵情報DB165から鍵情報や暗号方式パラメータを引き出す際には、暗号モジュール選定ポリシ158に従い、複数ある上位システム部151からの鍵情報へのアクセス制御を行う。
【0032】
鍵情報管理部162は、上位システム部151から指定されたクレデンシャル(アクセスのための鍵やパスワードなど)とアクセスしたい鍵識別子と鍵識別子に関連付けられた暗号処理の識別子とにより、そのクレデンシャルの正当性を検証する。鍵情報管理部162は、クレデンシャルの持ち主に対してアクセス可能な鍵情報DB165の鍵情報の規定を記述したアクセス制御ポリシ161に基づき、アクセス可否を判定し、アクセス可ならば、暗号処理の識別子に対応する鍵識別子を鍵情報DB165から引き出し、鍵識別子に対応する鍵情報や暗号方式パラメータを引き出し、上位システム部151にこれを返す。一方、アクセス不可ならば、上位システム部151にエラーを返す。
【0033】
暗号管理部166では、通信機能155を介して暗号管理サーバ装置350と通信を行い、暗号の初期登録・配信・更新の手順に従って、暗号パッケージ307等の受信を行う。暗号管理部166が暗号管理サーバ装置350から暗号パッケージ307等を受信する際には、暗号制御マネージャポリシ167の内容に従って処理する。暗号制御マネージャポリシ167の内容は、例えば、以下の5つである。1つめは、暗号管理サーバ装置350との通信におけるサーバ認証の実施可否である。2つめは、暗号管理サーバ装置350からの暗号パッケージ307等の受信時の暗号化可否である。3つめは、暗号管理サーバ装置350からの暗号パッケージ307等の受信時の改ざん検出子(MAC(Message Authentication Code))付加可否である。4つめは、受信した暗号パッケージ307等の認証子の検証実施可否である。5つめは、暗号評価DB163と暗号モジュールDB164とに記憶された暗号パッケージ307を定期的に更新可否や更新頻度などを示す定期更新に関する設定情報、などとする。
【0034】
暗号ハードウェア管理制御部170は、暗号ハードウェア部450と通信を行い、暗号管理サーバ装置350から、暗号の初期登録の手順に従って暗号パッケージ307の受信を行う。暗号パッケージ307の受信の際には、暗号パッケージ307自身が暗号化されている場合、暗号ハードウェア部450にて暗号パッケージ307を復号する。また、暗号モジュール308に改ざん検出子が付加されていることを検出すると、暗号ハードウェア部450が暗号モジュール308の改ざん検出を行う。
【0035】
アルゴリズムネゴシエーション部168は、通信機能155と連携し、2つの暗号クライアント装置間で安全な通信セッションを構築する事前に、通信セッションの構築で利用する暗号方式、通信セッションで利用する暗号方式の調停を行う。暗号方式の調停を行う際には、以下の4つの調停方法のいずれかで調停を行えるようにする。
【0036】
第1の調停方法は、自身の暗号モジュールDB164に記憶された暗号モジュール308が提供する暗号方式群のみからアルゴリズムネゴシエーション部168が一方的に暗号方式を決定する。自身のアルゴリズムネゴシエーション部168は、上位システム部151から指定された1つ以上の暗号方式の分類(暗号のカテゴリ)、暗号制御マネージャポリシ、ハードウェアプロファイル、暗号に関する条件情報から、暗号評価DB163と暗号モジュールDB164とを参照して適切な暗号モジュール308を選定し、暗号方式を決定する。暗号方式の分類が複数指定された場合は、個々の暗号方式の分類ごとに選定を行い、暗号方式を決定する。
【0037】
このとき、アルゴリズムネゴシエーション部168は、上位システム部151から暗号方式が未決定である暗号方式の分類が指定された場合は、指定された暗号に関する条件情報を参照して暗号の配信の手順を行い暗号管理サーバ装置350から暗号モジュール308を受信し、その暗号モジュール308の暗号方式を結果とする。それでも未決定の場合は、アルゴリズムネゴシエーション部168は、上位システム部151にエラーを返す。
【0038】
アルゴリズムネゴシエーション部168が暗号方式を決定すると、上位システム部151から指定された相手方の暗号制御マネージャ部152の宛先に対して、暗号方式調停方法番号と、結果として出力された暗号方式の分類と暗号方式の対応群と、暗号モジュール308が足りない場合の暗号管理サーバ装置350からの受信可否に関する情報を送信する。受信した相手方の暗号制御マネージャ部152は、指定された暗号方式の暗号モジュール308を所持しているかを暗号評価DB163および暗号モジュールDB164から検索し、すべての暗号方式に対して適切な暗号モジュール308が存在する場合には通信可能である返信を行う。
【0039】
相手方の暗号制御マネージャ部152は、存在しない暗号モジュール308があった場合、暗号管理サーバ装置350からの受信可否に関する情報に従って処理する。すなわち、受信可の場合は、暗号の配信の手順に従って、暗号方式に対する暗号モジュール308を受信し、受信完了後、通信可能である返信を行う。受信不可の場合や、受信可の場合でも適切な暗号モジュール308が受信できなかった場合、通信不可能である返信を行う。自身の暗号制御マネージャ部152は、相手方の暗号制御マネージャ部152からの返信を上位システム部151に転送する。
【0040】
第2の調停方法は、相手方の暗号制御マネージャ部152が保持する暗号方式群のみから相手の暗号制御マネージャ部152が一方的に暗号方式を決定する。これは上記第1の調停方法と対称の処理となり同様の手順である。
【0041】
第3の調停方法は、双方の暗号制御マネージャ部152が保持する暗号方式群から自身の暗号制御マネージャ部152が共通の暗号方式を決定する。
自身の暗号制御マネージャ部152のアルゴリズムネゴシエーション部168は、上位システム部151から指定された1つ以上の暗号方式の分類(暗号のカテゴリ)、相手方の暗号制御マネージャ部152の宛先から、相手方の暗号制御マネージャ部152に対して暗号方式調停方法番号、暗号方式の分類を送信する。相手方の暗号制御マネージャ部152は、受信した暗号方式の分類、ハードウェアプロファイルから、暗号評価DB163および暗号モジュールDB164を参照して該当するすべての暗号モジュール308を選び、選んだすべての暗号モジュール308が対応する暗号方式一覧を作成する。
【0042】
この際、相手方の暗号制御マネージャ部152は、暗号方式の分類が複数指定された場合は、個々の暗号方式の分類ごとに暗号モジュール308を選び、暗号方式一覧を作成する。相手方の暗号制御マネージャ部152は、暗号方式の分類ごとの暗号方式一覧を自身の暗号制御マネージャ部152に送信する。暗号方式の分類ごとの暗号方式一覧を受信した自身の暗号制御マネージャ部152は、上位システム部151から指定された1つ以上の暗号方式の分類(暗号のカテゴリ)、暗号制御マネージャポリシ、ハードウェアプロファイル、暗号に関する条件情報から、暗号評価DB163および暗号モジュールDB164を参照して適切な暗号モジュール308を選定し、選定した暗号モジュール308から暗号方式を決定する。
【0043】
この際、暗号制御マネージャ部152は、暗号方式の分類が複数指定された場合は、個々の暗号方式の分類ごとに選定を行い、暗号方式を決定する。例えば、次の場合、暗号方式の分類に対する暗号方式は決定されたとする。まず、自身の暗号制御マネージャ部152で選定した暗号方式が暗号方式一覧に存在する場合。次に、自身の暗号制御マネージャ部152が受信した暗号方式一覧のいずれかの暗号方式に対応する暗号モジュール308を所持している場合、それ以外の場合、暗号方式の分類に対する暗号方式は未決定とする。
【0044】
暗号制御マネージャ部152は、未決定の暗号方式の分類がある場合、受信した暗号方式一覧のいずれかを指定して、暗号の配信の手順に従い、暗号管理サーバ装置350から暗号モジュール308を受信する。暗号制御マネージャ部152は、対応する暗号モジュール308を受信できるまで暗号方式一覧のすべての暗号方式について同様の処理を繰り返す。それでも未決定の場合、該当の暗号方式の分類に関する暗号方式は未決定とする。すべての暗号方式の分類に対して、上記の処理が完了したら、相手方の暗号制御マネージャ部152に対して、すべての暗号方式の分類に対する暗号方式の決定/未決定を送信する。
【0045】
第4の調停方法は、双方の暗号制御マネージャ部の保持する暗号方式群から相手方の暗号制御マネージャ部152に共通の暗号方式を決定する。これは第3の調停方法の場合と対称の処理となり同様の手順である。
アルゴリズムネゴシエーション部168は、以上の4つの調停方法のいずれかで調停を行う。
【0046】
セキュア通信管理部169は、通信機能155と連携し、他の暗号クライアント装置150との間で安全な通信セッションを構築する。セキュア通信管理部169は、安全なセッションを構築する際には、アルゴリズムネゴシエーション部168により、通信セッション構築で利用するための暗号方式と通信セッションで利用するための暗号方式を決定した後に、セッション鍵共有を行う。安全な通信セッションの構築後は、決定した暗号方式に従い、セッション鍵を利用して、通信データの暗号化や通信データの改ざん防止のための認証子の付加を行うことができるようにする。また、セキュア通信管理部169は、一度、構築した通信セッションは、一定時間内は再利用できるように、通信セッションの保持を行うことができるようにする。
【0047】
セキュア通信管理部169は、上位システム部151から指定された通信相手の宛先にセキュア接続要求を送信し、セキュア接続の開始を通知する。次に、セキュア通信管理部169は、事前にアルゴリズムネゴシエーション部168が決定した暗号方式の分類に従ってセキュア接続を確立する。暗号方式の分類には、例えば、認証、鍵共有、共通鍵情報暗号化(ストリーム暗号あるいはブロック暗号)、公開鍵暗号、データ認証(MAC認証または署名認証)、擬似乱数生成(ストリーム暗号および公開鍵暗号の場合のみ)、セッション鍵導出、MAC鍵導出(MAC認証の場合のみ)、などの分類がある。セキュア通信管理部169は、セキュア接続に認証が必要な場合、認証処理を行う。
【0048】
次に、セキュア通信管理部169は、鍵共有処理により鍵の共有を行い、セキュアセッションを確立する。ただし、公開鍵暗号の暗号方式が調停されている場合、鍵共有処理は行わない。公開鍵暗号なしで暗号化通信を行う場合には、共有した鍵からセッション鍵導出方式により、セッション鍵を作成し、共通鍵情報暗号化方式に従って送信したいデータを暗号化し、暗号化データを相手に送信する。通信相手は、同様の方法でセッション鍵を作成し、共通鍵情報暗号化方式に従って受信したデータを復号する。
【0049】
セキュア通信管理部169は、公開鍵暗号ありで暗号化通信を行う場合には、擬似乱数生成方式に従ってランダムなセッション鍵を作成し、共通鍵情報暗号化方式に従ってセッション鍵で送信したいデータを暗号化し、信頼機関から通信相手の公開鍵を受信し、公開鍵暗号方式に従って通信相手の公開鍵でセッション鍵自体を暗号化し、暗号化データと暗号化セッション鍵を相手に送信する。通信相手は、自分の秘密鍵で暗号化セッション鍵を復号し、共通鍵情報暗号化方式に従ってセッション鍵で受信したデータを復号する。
【0050】
セキュア通信管理部169は、データ認証子付き通信を行う場合であってMAC認証の場合、共有した鍵からMAC鍵導出方式により、MAC鍵を作成し、MAC認証方式に従って送信したいデータにMACデータを付加し、MAC付きデータを相手に送信する。通信相手は、同様の方法でMAC鍵を作成し、MAC認証方式に従って受信したデータのMACを検証する。
【0051】
セキュア通信管理部169は、データ認証子付き通信を行う場合で署名認証の場合、自分の秘密鍵で署名を付加し、署名付きデータを相手に送信する。通信相手は、相手の公開鍵が登録されている信頼機関から通信相手の公開鍵を受信し、相手の公開鍵の正当性を検証し、検証が正しく終了した場合、署名認証方式に従って相手の公開鍵で受信した署名付きデータを検証する。
【0052】
図3は、暗号管理サーバ装置350の詳細な構成図である。暗号管理サーバ装置350は、暗号モジュールDB353と、暗号評価DB354と、暗号モジュールDB353と暗号評価DB354とに記憶された情報の読み出しや更新等の処理を行う暗号管理部351と、暗号モジュールDB353と暗号評価DB354とに情報の登録を行う暗号登録部355と、暗号クライアント装置150へ暗号の送信を行う暗号配信部352とから構成される。
【0053】
暗号モジュールDB353は、予め記憶するかユーザによって入力される暗号モジュール308を記憶するデータベースである。
暗号評価DB354は、予め記憶するかユーザに入力される暗号評価記述ファイル309を記憶するデータベースである。
【0054】
暗号管理部351は、暗号管理サーバ装置350のユーザに対して、暗号モジュールDB353と暗号評価DB354に格納された暗号モジュール308や暗号パッケージ307の検索、暗号評価部の内容表示、管理している暗号のリスト表示、既存の暗号の更新、既存の暗号の削除、新規の暗号の登録、暗号配信部の起動/終了を行うインターフェースを備える。暗号管理部351は、新規の暗号を登録する場合は、暗号登録部355へ登録依頼を行う。
【0055】
暗号登録部355は、暗号パッケージ登録部357と複合型記述生成部358とを備えている。
暗号配信部352は、暗号パッケージ配信制御部359と、配布ポリシ371を持つ暗号パッケージ配布構成部370と、配布ポリシ371を持つ配布暗号モジュール選定部360とを備える。暗号配信部352は、暗号クライアント装置150からの要求を解釈し、暗号の初期登録・配信・更新の3つの手順を実施する待ち受けサービスを実行する。また、この待ち受けサービスは、処理内容のログを記録する。
【0056】
配布暗号モジュール選定部360では、暗号の初期登録・配信・更新の3つの手順と暗号クライアント装置150からの要求に基づき、配信に適切な暗号モジュール308を選定する。暗号の初期登録の場合、配信する暗号モジュール308は、利用上必要不可欠であると規定し、配布ポリシ371に記述された暗号方式である。
暗号パッケージ配布構成部370では、配布暗号モジュール選定部360で選定された暗号モジュール308を基に、配布ポリシ371に従って、暗号モジュール308と、暗号モジュール308に対応する暗号評価記述ファイル309とを暗号パッケージ307として配布可能な形にするための構成処理を行う。配布ポリシ371は、例えば、以下の4つの項目が記述されている。
【0057】
第1の項目は、暗号パッケージ307の配布の際の暗号化の可否である。第2の項目は、暗号パッケージ307の暗号化の暗号方式である。第3の項目は、暗号パッケージ307の配布の際の改ざん検出子の付加の可否である。第4の項目は、暗号パッケージ307の改ざん検出子の暗号方式である。
暗号パッケージ配布構成部370が行う構成処理では、暗号評価DB354に格納された内容を暗号評価記述ファイル309として特定の形式で生成し、暗号パッケージ307に対して暗号管理サーバ装置350が配布認定する目的で認証子を付加し、暗号モジュール308と暗号評価記述ファイル309とをペアにして、暗号パッケージ307としてまとめる。
【0058】
また、暗号パッケージ配布構成部370は、複数の暗号モジュール308を組み合わせた暗号モジュール308を、複数の暗号モジュール308とそれぞれに対応する暗号評価記述ファイル309とをまとめて1つの暗号パッケージとしても良い。また、暗号パッケージ配布構成部370が行う構成処理では、暗号クライアント装置150の暗号制御マネージャポリシや暗号管理サーバ装置350の配布ポリシ371に従って、暗号パッケージ307の暗号化および改ざん検出子の付加、そのための鍵生成と鍵管理を行う。
【0059】
<第2の実施形態>
第1の実施形態では、最適な暗号方式の選定を、暗号クライアント装置が処理する場合について説明したが、第2の実施の形態は、暗号管理サーバ装置が最適な暗号方式の選定を主導で行う。すなわち、図4に示す暗号モジュール配信システムでは、暗号管理サーバ装置1350が選定した暗号方式の結果情報をモジュール選定ポリシ記憶部110が管理および利用するサーバ連携機構である。特に、モジュール選定ポリシ記憶部110の計算能力が乏しい場合、暗号管理サーバ装置1350が演算支援することで、暗号クライアント装置1100内の応答パフォーマンスを向上させることができる。
【0060】
具体的には、上位システム部1151からの要求に最適な暗号モジュール308の選定を暗号管理サーバ装置1350が実施し、暗号クライアント装置1100の暗号制御マネージャ部1152はその結果を受け取り、その要求条件と最適な暗号モジュール308との関係を当該装置内の暗号情報記憶部1600で管理する。暗号制御マネージャ部1152は、上位システム部151からの要求とこの要求に最適な暗号モジュール308との関係に基づき、上位システム部151からの暗号処理制御要求に応じた処理を行う。よって、第1の実施形態と異なり、暗号クライアント装置1100は、暗号モジュール308の全選定機能や暗号モジュール308の選定に必要となる暗号パッケージ307の管理および暗号管理サーバ装置1350らの受信を必ずしも必要としない。
【0061】
図4は、本発明の第2の実施形態による暗号モジュール配信システムの概略構成を示すブロック図である。本システムは、1個以上の暗号クライアント装置1100、1個以上の暗号ハードウェア1450及び暗号管理サーバ装置1350を備えている。暗号ハードウェア1450は、第1の実施形態と同様である。ここで、暗号ハードウェア1450は、1個の暗号クライアント装置1100につき、複数接続する形態でもよい。また暗号ハードウェア1450を暗号クライアント装置1100内部に実装する形態でもよい。
【0062】
図5は、暗号クライアント装置1100の構成を示すブロック図である。暗号クライアント装置1100は、上位システム部1151と、暗号制御マネージャ部1152と、暗号実装部1153と、通信機能1155とを備えている。また選定ポリシ1158は、安全性、処理速度、リソースに関する優先情報を設定したファイルである。上位システム部1151および暗号実装部1153は、第1の実施形態と同様の構成・機能である。
【0063】
暗号制御マネージャ部1152は、暗号処理制御部1156と、鍵管理部1162と、暗号情報記憶部1600と、暗号パッケージ管理部1166と、暗号ハードウェア管理制御部1170とを備えている。
暗号処理制御部1156は、上位システム部1151から暗号処理条件を含む暗号処理制御要求を受け付ける機能と、暗号情報記憶部1600を参照して暗号処理条件に紐づいた暗号モジュール1153を特定する機能と、暗号処理実行タイミングに従って暗号実装部1153へ暗号処理を要求する機能と、当該暗号処理に対する暗号処理IDを発行して当該暗号処理に関する情報と関連付けて暗号情報記憶部1600に記憶させる機能と、暗号実装部1153からの暗号処理結果および当該暗号処理に関する暗号処理IDとを上位システム部1151へ出力する機能と、をもっている。
【0064】
鍵管理部1162は、上位システム部1151からの要求に従い、暗号情報記憶部1600の鍵情報DB1165への鍵情報の登録、削除、取得、検索、更新処理を行う機能と、暗号鍵の登録が正常に実施された場合に鍵IDを発行して当該登録処理に関する情報と関連づけて暗号情報記憶部1600に記憶させる機能と、各処理結果を場合により暗号処理IDや鍵IDを含めて上位システム部1151へ出力する機能をもっている。
【0065】
暗号情報記憶部1600は、選定DB1601と、暗号モジュールリンクDB1602と、暗号モジュールDB1603と、鍵情報DB1165と、暗号処理DB1604とを記憶する機能を備えている。また、暗号情報記憶部1600は、鍵管理部1162や暗号処理制御部1156および暗号パッケージ管理部1166からの要求に従い、暗号情報記憶部1600が備える各DBを制御管理する機能をもっていることとしても良い。
【0066】
選定DB1601のデータ構造は、図6に示す通りである。暗号モジュールリンクDB1602のデータ構造は、図7に示す通りである。暗号モジュールDB1603のデータ構造は、図8に示す通りである。鍵情報DB1165のデータ構造は、図9に示す通りである。暗号処理DB1604のデータ構造は、図10に示す通りである。図11に、暗号情報記憶部1600が備える各データベースの論理関係を示す。
【0067】
暗号パッケージ管理部1166は、以下に説明する機能を有している。
まず、暗号パッケージ管理部1166は、上位システム部1151から入力された選定条件、選定ポリシ及びハードウェアプロファイルを含む情報を通信機能1155経由で暗号管理サーバ装置1350へ送信して得られる、選定された暗号パッケージ307のアルゴリズムID、暗号評価記述ID、暗号モジュールID及び推奨される鍵長情報を暗号情報記憶部1600に登録する機能を持っている。
【0068】
また、暗号パッケージ管理部1166は、上位システム部1151から入力された選定条件を基に選定DBを特定して暗号化アルゴリズムから対応される鍵生成エンジンのアルゴリズムIDを特定する機能を持っている。
また、暗号パッケージ管理部1166は、暗号管理サーバ装置1350にて選定された鍵生成エンジンのアルゴリズムID、暗号評価記述ID及び暗号モジュールIDを暗号情報記憶部1600に登録する機能を持っている。
【0069】
また、暗号パッケージ管理部1166は、上位システム部1151から入力された要求に基づき通信機能1155経由で暗号管理サーバ装置1350に対して最終初期登録日時および最終初期登録ドメインを入力として暗号パッケージ初期登録プロトコルを実行し、必要最低限の暗号パッケージ307を暗号管理サーバ装置1350からダウンロードして暗号情報記憶部1600に登録する機能を持っている。
【0070】
また、暗号パッケージ管理部1166は、上位システム部1151から入力された選定条件、選定ポリシ、ハードウェアプロファイル及び端末内に保持する暗号パッケージ307のリストを含む情報を通信機能1155経由で暗号管理サーバ装置1350へ送信し、当該暗号管理サーバ装置1350にて選定された暗号パッケージ307の実体及びその付帯情報(アルゴリズムID、暗号評価記述ID、暗号モジュールID)を入手して暗号情報記憶部1600に登録する機能を持っている。
【0071】
また、暗号パッケージ管理部1166は、暗号管理サーバ装置1350からの更新通知の通知先登録及び更新事象発生時に暗号制御マネージャ部1152が行うアクションのポリシ設定を行える機能を持っている。
また、暗号パッケージ管理部1166は、上位システム部1151から要求された内容と暗号制御マネージャ部1152に保持した最後の更新通知識別子に基づき通信機能1155経由で暗号管理サーバ装置1350と連携して暗号制御マネージャ部1152に保持している暗号パッケージ307の実体と暗号パッケージ307の選定ポリシと暗号パッケージ307の紐付けについて更新処理を実行する機能を持っている。
【0072】
また、暗号パッケージ管理部1166は、上位システム部1151から要求された暗号パッケージ307の実体を暗号情報記憶部1600から削除して当該暗号パッケージ307に紐付けられた暗号情報記憶部1600が備える各データベースの関連付けを解除する機能を持っている。
また、暗号パッケージ管理部1166は、上位システム部1151から入力された移行先ドメイン情報、ハードウェアプロファイル及び当該装置内に保持する暗号パッケージ307のリストを含む情報を通信機能1155経由で暗号管理サーバ装置1350へ送信し、暗号管理サーバ装置1350にて選定された持ち出し規制の対象となる暗号パッケージ情報を取得して暗号クライアント装置1100内に保持する対象の暗号パッケージ307を削除する機能とをもっている。
【0073】
暗号ハードウェア管理制御部1170は、暗号制御マネージャ部1152の各部からの要求に応じて通信機能1155経由で暗号ハードウェアへの通信制御を行う機能をもっている。
通信機能1155は、暗号パッケージ管理部1166や暗号ハードウェア管理制御部1170と相手通信装置または暗号ハードウェアとが相互に通信するための機能をもっている。
【0074】
図12は、暗号管理サーバ装置1350の構成を示す機能ブロック図である。暗号管理サーバ装置1350は、サーバ上位システム部1380と、通信機能1356と、暗号管理サーバ制御部1352と、暗号パッケージ記憶部1355と、サーバ暗号制御マネージャ部1390とを備えている。
【0075】
サーバ上位システム部1380は、暗号クライアント装置1100のサーバ上位システム部1380と同様の機能に加え、暗号管理に関するシステム管理者からの制御要求を暗号管理サーバ制御部1352に送信する機能とをもっている。
通信機能1356は、暗号管理サーバ制御部1352やサーバ暗号制御マネージャ部1390と相手通信装置、暗号ハードウェアまたは暗号ハードウェアの動作を模擬したシミュレータとが相互に通信するための機能をもっている。
【0076】
暗号管理サーバ制御部1352は、暗号パッケージ管制部1359と、暗号パッケージ管理部1351と、暗号パッケージ配布構成部1370と、配布暗号パッケージ選定部1373とを備えている。
暗号パッケージ管制部1359は、サーバ上位システム部1380からの要求により暗号パッケージ307を登録する機能と、サーバ上位システム部1380からの要求により既に登録済みの暗号パッケージを更新する機能と、ベンダからの暗号パッケージ提供時に該当する暗号パッケージの出所の確認を行うためのベンダ認定認証子を検証する機能と、複数の単体型暗号評価記述部または複数の複合型暗号評価記述部を組み合わせて複合型暗号評価記述部を生成する機能と、暗号モジュールDB1355に登録されている暗号パッケージ307を検索および一覧を取得する機能と、サーバ上位システム部1380からの要求により暗号モジュール308及び関連する暗号パッケージ307を暗号モジュールDB1355から削除する機能と、暗号パッケージ記憶部1355に対して行った登録・更新・削除処理に対するログを出力する機能とをもっている。
【0077】
暗号パッケージ管理部1351は、複数の暗号クライアント装置1100からの管制要求を同時に並行して処理する機能と、暗号パッケージ307の初期登録処理、配信処理、更新処理、選定処理、更新通知処理および暗号管理ドメイン移行処理を行う機能と、暗号クライアント装置1100と暗号管理サーバ装置1350との間でセキュリティ保護された通信路を確立するための機能と、当該暗号管理サーバ装置1350が管理するドメイン内に存在する暗号クライアント管理装置の状況を管理する機能と、暗号パッケージ307の初期登録処理、配信処理、更新処理、選定処理、更新通知処理および暗号管理ドメイン移行処理に対するログを生成する機能とをもっている。
【0078】
暗号パッケージ配布構成部1370は、配布暗号パッケージ選定部1373で選ばれた暗号パッケージ307を暗号モジュールDB1355から取得する機能と、暗号モジュールDB1355に格納された各記述項目のデータをXMLといった暗号評価記述形式で構成して出力する機能と、暗号パッケージ官制部1359のセキュリティ通信で使用する鍵に関して指定のセキュリティ方式に応じてサーバ暗号制御マネージャ部1390に処理を依頼して鍵生成を行う機能と、暗号クライアント装置1100のIDや鍵のセキュリティ方式を含む情報を元に鍵に関する情報の管理を行う機能と、暗号管理サーバ装置1350の配布ポリシで定義されたセキュリティレベル及びセキュリティ方式に応じて暗号管理サーバ装置1350から暗号クライアント装置1100に対して送信する情報に対するデータ秘匿やデータ認証のセキュリティ処理を行う機能とをもっている。
【0079】
配布暗号パッケージ選定部1373は、暗号パッケージ初期登録処理における初期登録判定、暗号方式の選択及び暗号パッケージ選択を行う機能と、暗号パッケージ配信処理における配信判定及び暗号パッケージの選択を行う機能と、暗号パッケージ更新処理における配信判定を行う機能と、暗号パッケージ更新処理における更新暗号リスト取得及び暗号パッケージの選択を行う機能と、暗号パッケージ選定処理における選択判定及び暗号パッケージ選択を行う機能と、暗号管理ドメイン移行処理のおける移動判定およびドメイン移動処理情報の生成を行う機能と、選定条件、選定ポリシ及びハードウェアポリシを満たす暗号パッケージを暗号パッケージ記憶部から検索する機能とをもっている。
【0080】
暗号モジュールDB1355は、登録されている暗号モジュール308を記録管理する暗号モジュールDB1353と暗号評価記述ファイル309を記録管理する暗号評価DB1354とを備えている。
サーバ暗号制御マネージャ部1390は、暗号クライアント装置1100の暗号制御マネージャ部1152と同様の機能に加え、暗号管理サーバ制御部1352と連携して暗号管理サーバ装置1350内の暗号資産管理制御や他通信装置との暗号認証通信を行う機能をもっている。
【0081】
次に、上述した暗号モジュール配信システムにおいて、暗号モジュールを組み合わせた複合暗号モジュールを用いる場合に、複合暗号モジュールの評価値を計算し、この計算結果を用いて、選定要求に応じた暗号モジュールを選定して出力する暗号管理装置について説明する。
【0082】
[第3の実施形態]
以下、第3の実施形態について図面を用いて説明する。
図13は、本発明の第3の実施形態における暗号管理装置の構成を示す概略ブロック図である。暗号管理装置1は、暗号モジュールメタ情報記憶部101、暗号モジュール記憶部102、暗号モジュールメタ情報検索部103、記憶部104、複合型暗号評価計算部105、暗号モジュール選定部106、暗号モジュール取得部107を有する。この暗号管理装置1は、例えば、無線または有線によって接続される端末装置からの選定要求に応じて暗号モジュールを選定し、選定した暗号モジュールを当該選定要求を行った端末装置に出力する。
端末装置からの選定要求は、例えば「安全な電子署名生成モジュールがほしい」、「高速な共通鍵暗号モジュールがほしい」、「メモリ使用量の小さいハッシュ関数モジュールがほしい」といった、暗号を用いる用途や、暗号処理を実行する環境に応じて発生する要求である。この選定要求には、少なくとも共通鍵暗号や電子署名などの暗号モジュールのカテゴリ情報を含み、更に安全性、速度、メモリ使用量などの条件や、実行可能なプラットフォームや最大入力長、最大鍵長などの制限情報や、暗号モジュールを作成したベンダの指定などの情報を含んでいても良い。
【0083】
暗号モジュールメタ情報記憶部101は、暗号モジュールに付帯される暗号モジュールメタ情報を記憶する。暗号モジュール記憶部102は、複数の暗号モジュールを格納する。暗号モジュールメタ情報検索部103は、端末装置からの選定要求に含まれる暗号モジュールのカテゴリ情報に基づき、暗号モジュールメタ情報記憶部101を参照して暗号モジュールメタ情報を検索し、得られた暗号モジュールメタ情報を記憶部104に書き込む。記憶部104は、暗号モジュールメタ情報検索部103によって検索された結果や、複合型暗号評価計算部105の計算結果を記憶する。
【0084】
複合型暗号評価計算部105は、暗号モジュール選定部106によって指定された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合は、暗号モジュールメタ情報検索部103を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して自身(複合型暗号評価計算部105)を再帰的に呼び出すことによって得られる関連暗号モジュールの評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる導出方法情報とに基づき、複合型暗号評価情報を生成する。
また、複合型暗号評価計算部105は、暗号モジュール選定部106によって指定された暗号モジュールの暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれていない場合は、当該暗号モジュールの評価情報を複合型暗号評価情報として生成する。
【0085】
暗号モジュール選定部106は、選定要求に対応して暗号モジュールメタ情報検索部103によって選定された暗号モジュールの暗号モジュールメタ情報に基づいて複合型暗号評価計算部105を呼び出し、複合型暗号評価情報を得る。暗号モジュール選定部106は、この得られた複合型暗号評価情報に基づき、暗号モジュールを選定する。この選定は、例えば、複合型暗号評価計算部105から出力される複合型暗号評価情報の評価点数が最も高い暗号モジュールを選ぶことによって行われる。
暗号モジュール取得部107は、暗号モジュール選定部106によって選定された暗号モジュールの暗号モジュール名を基に、暗号モジュール記憶部106から暗号モジュールを読み出して選定要求を行った要求元(例えば端末装置)へ出力する。
【0086】
図14は、暗号モジュールメタ情報の一例を示す図面である。この暗号モジュールメタ情報は、各々の暗号モジュールに付帯する情報であり、暗号モジュールを作成したベンダや暗号モジュールの評価機関などによって生成されるものである。そして、事前に暗号モジュールとともに暗号管理装置1の暗号モジュールメタ情報記憶部101に登録されることにより、暗号モジュールメタ情報は暗号モジュールメタ情報記憶部101に、暗号モジュールは暗号モジュール記憶部102にそれぞれ記憶されている。
この暗号モジュールメタ情報は、暗号モジュール名と、暗号モジュールカテゴリ(上述のカテゴリ情報に相当)と、暗号モジュール評価情報(上述の評価情報に相当)とを含む。暗号モジュール名(上述の暗号モジュール識別情報に相当)は、当該暗号モジュールを識別する情報である。暗号モジュールカテゴリは、当該暗号モジュールが実行可能な暗号処理のカテゴリを表す情報である。ここで、暗号モジュールカテゴリは、例えば、共通鍵暗号、公開鍵暗号、電子署名、ハッシュ関数、擬似乱数生成等がある。暗号モジュール評価情報は、当該暗号モジュールが評価された結果の情報であり、暗号モジュールの安全性、速度、メモリ使用量などを数値化、例えば点数化した情報である.さらに、その暗号モジュールが実行可能なプラットフォームや、最大入力長、最大鍵長などの使用制限に関する情報が記述されていても良い.
【0087】
図15は、暗号モジュール評価情報の一例を示す図である。この暗号モジュール評価情報は、暗号モジュールメタ情報毎に、評価項目とその評価項目において評価された結果である評価点数が対応付けされて予め記憶される。評価項目としては、例えば、安全性、速度、メモリ使用量等があり、これらの評価項目に対し、その評価項目に応じた点数(例えば60点、20点、30点)が対応付けされて記憶される。この評価点数は、予め決められた所定の計算式に従って計算されるものとする。
【0088】
また、暗号モジュールメタ情報は、当該暗号モジュールの実行に関連暗号モジュールを必要とする場合に、その関連暗号モジュールが属するカテゴリを表す関連暗号モジュールカテゴリ情報も含む。この「暗号モジュールの実行に関連暗号モジュールを必要とする場合」とは、言い換えると、暗号モジュールが単体では暗号処理を実行不可能な場合である。例えば、RSASSAなどの暗号モジュールは、ハッシュ関数および擬似乱数生成を行う暗号モジュール等と組み合わせなければ実行できない場合がある。このとき、暗号モジュールの関連暗号カテゴリ情報には、ハッシュ関数および擬似乱数生成、といった、組み合わせることが必要な暗号モジュールのカテゴリが関連暗号カテゴリ情報として記憶される。
【0089】
また、暗号モジュールメタ情報は、当該暗号モジュールの実行に関連暗号モジュールを必要とする場合に、当該暗号モジュールに設定された評価情報と当該関連暗号モジュールに設定された評価情報とから当該暗号モジュールと当該関連暗号モジュールとを組み合わせて実行した場合の評価情報である複合型暗号評価情報を導出する方法を表す複合型暗号評価計算式情報(上述の導出方法情報に相当)を含む。この複合型暗号評価計算式情報は、これらのモジュールを組み合わせた場合の評価情報を計算するための複合型暗号評価計算式を含む計算プログラムである。複合型暗号評価情報は、各々の暗号モジュール評価情報と同様に、当該暗号モジュールと当該関連暗号モジュールとを組み合わせて実行した場合の安全性、速度、メモリ使用量などを数値化、例えば点数化した情報であり、さらに、それらの暗号モジュールが実行可能なプラットフォームや、最大入力長、最大鍵長などの使用制限に関する情報を含んでいても良い.
【0090】
例えば、電子署名を行う暗号モジュールと、ハッシュ関数を計算するモジュールと、擬似乱数を生成する暗号モジュールとを組み合わせた場合の安全性に関する複合型暗号評価情報を計算する場合については、電子署名モジュールの複合型暗号評価計算式情報は、以下の情報を含む。すなわち、電子署名モジュールの安全性を表す評価値、およびハッシュ関数、擬似乱数生成のそれぞれのカテゴリの安全性を表す評価値に重み付け係数w1、w2、w3を用いて加算した値を組み合わせの安全性評価値とする場合、複合型暗号評価計算式情報には下記の計算式(1)が記述される。
【0091】
(電子署名の安全性評価値)
=w1×(電子署名モジュールの安全性評価値)
+w2×(ハッシュ関数の安全性評価値)
+w3×(擬似乱数生成の安全性評価値) ・・・(1)
【0092】
ここで、電子署名モジュールの安全性評価値は当該電子署名のモジュールの暗号モジュールメタ情報に記述された評価値が代入され、ハッシュ関数の安全性評価値および擬似乱数生成の安全性評価値は、組み合わせるハッシュ関数および擬似乱数生成モジュールの暗号モジュールメタ情報に記述された評価値、またはそれらの暗号モジュールの実行に更に関連暗号モジュールを必要とする場合には、それらの暗号モジュールメタ情報に記述された復号型暗号評価計算式情報により計算された評価値を代入するための変数である。
また、この複合型暗号評価計算式情報は、重み付け係数w1、w2、w3を含んでいる。
【0093】
図16は、関連暗号カテゴリ情報を用いた暗号モジュールメタ情報について説明するための図である。
暗号モジュールメタ情報Aに関連暗号カテゴリ情報が含まれており、この関連暗号カテゴリ情報に「擬似乱数生成」なるカテゴリが設定されている場合、暗号モジュールカテゴリとして「擬似乱数生成」に設定された暗号モジュールメタ情報(ここでは、例えば暗号モジュールメタ情報C)が付帯された暗号モジュールCが関連暗号モジュールの1つである。ここでは、暗号モジュールメタ情報Aが上位の暗号モジュールメタ情報であり、関連暗号カテゴリ情報に一致する暗号モジュールカテゴリ情報が設定された暗号モジュールメタ情報が下位の暗号モジュールメタ情報となる。
【0094】
また、ここでは、暗号モジュールメタ情報Cにも関連暗号カテゴリ情報が含まれており、この関連暗号カテゴリ情報が「ハッシュ関数」なるカテゴリである場合、暗号モジュールカテゴリとして「ハッシュ関数」に設定された暗号モジュールメタ情報(ここでは、暗号モジュールメタ情報D)が付帯された暗号モジュールDが関連暗号モジュールの1つである。なお、ここでは、暗号モジュールメタ情報Dには関連暗号カテゴリ情報が含まれていないので、この関連暗号カテゴリ情報Dが暗号モジュールメタ情報Aに対する最下位の暗号モジュールメタ情報となる。ここで、暗号モジュールメタ情報Cにも複合型暗号評価計算式情報が含まれており、例えば擬似乱数生成を計算するモジュールとハッシュ関数を計算するモジュールとを組み合わせた安全性に関する復号型暗号評価情報を計算するための計算式として下記の計算式(2)が記述されている。
【0095】
(擬似乱数生成の安全性評価値)
=w4×(擬似乱数生成モジュールの安全性評価値)
+w5×(ハッシュ関数の安全性評価値) ・・・(2)
【0096】
計算式(1)と同様に、擬似乱数生成の安全性評価値は当該電子署名のモジュールの暗号モジュールメタ情報に記述された評価値が代入され、ハッシュ関数の安全性評価値は組み合わせるハッシュ関数の暗号モジュールメタ情報に記述された評価値、またはハッシュ関数の暗号モジュールの実行に更に関連暗号モジュールを必要とする場合には、ハッシュ関数の暗号モジュールメタ情報に記述された複合型暗号評価計算式情報により計算された評価値を代入するための変数である。また、この複合型暗号評価計算式情報は、重み付け係数w4、w5を含んでいる。
【0097】
また、暗号モジュールメタ情報Aに更に「擬似乱数生成」とは異なる関連暗号カテゴリ情報が含まれており、この関連暗号カテゴリ情報に「ハッシュ関数」なるカテゴリが設定されている場合、暗号モジュールカテゴリとして「ハッシュ関数」に設定された暗号モジュールメタ情報(ここでは、例えば暗号モジュールメタ情報B)が付帯された暗号モジュールBが関連暗号モジュールの1つである。ここでは、暗号モジュールメタ情報Bには関連暗号カテゴリ情報が含まれていないので、更なる下位の暗号モジュールメタ情報はない。
【0098】
次に、複合型暗号評価計算部105の計算について図16を用いてさらに説明する。
例えば、端末装置側において「安全な電子署名生成モジュール」を必要とする場合、選択要求としてカテゴリ「電子署名」と評価項目「安全性」とを含む選択要求が端末装置から暗号管理装置1に送信され、暗号モジュールメタ情報検索部103において「電子署名」のカテゴリが設定された暗号モジュールとして暗号モジュールAの暗号モジュールメタ情報Aが検索結果として得られると、複合型暗号評価計算部105は、暗号モジュールメタ情報Aの関連暗号カテゴリ情報を読み出し、この関連暗号カテゴリ情報が暗号モジュールカテゴリとして記述された暗号モジュールメタ情報を暗号モジュールメタ情報検索部103によって検索する。ここで、暗号カテゴリ情報Aの関連暗号カテゴリ情報に「擬似乱数生成」なるカテゴリが記述されているため、暗号モジュールメタ情報検索部103は、この「擬似乱数生成」のカテゴリが暗号モジュールカテゴリとして記述された暗号モジュールメタ情報Cを検索結果として得る。
【0099】
暗号モジュールメタ情報Cが検索されると、複合型暗号評価計算部105は、この暗号モジュールメタ情報Cに関連暗号カテゴリ情報があるか否かを判定する。ここでは、関連暗号カテゴリ情報が記述されているので、複合型暗号評価計算部105は、暗号モジュールメタ情報Cの関連暗号カテゴリ情報を読み出し、この関連暗号カテゴリ情報が暗号モジュールカテゴリとして記述された暗号モジュールメタ情報を暗号モジュールメタ情報検索部103によって検索する。ここで、暗号カテゴリ情報Cの関連暗号カテゴリ情報に「ハッシュ関数」なるカテゴリが記述されているため、暗号モジュールメタ情報検索部103は、この「ハッシュ関数」のカテゴリが暗号モジュールカテゴリとして記述された暗号モジュールメタ情報Dを検索結果として得る。
暗号モジュールメタ情報Dが検索されると、複合型暗号評価計算部105は、この暗号モジュールメタ情報Dに関連暗号カテゴリ情報があるか否かを判定する。ここでは、関連暗号カテゴリ情報がないので、複合型暗号評価計算部105は上位に戻って暗号モジュールメタ情報Cの関連暗号カテゴリ情報に更にカテゴリが記述されているか否かを判定する。ここでは、暗号モジュールメタ情報Cの関連暗号カテゴリ情報には「ハッシュ関数」以外の更なるカテゴリは記述されていないため、複合型暗号評価計算部105は更に上位に戻って暗号モジュールメタ情報Aの関連暗号カテゴリ情報に更にカテゴリが記述されているか否かを判定する。ここで、暗号モジュールメタ情報Aの関連暗号カテゴリ情報には「擬似乱数生成」以外に「ハッシュ関数」なるカテゴリが記述されているため、暗号モジュールメタ情報検索部103によって暗号モジュールカテゴリとして「ハッシュ関数」が記述された暗号モジュールメタ情報を更に検索する。ここでは、その検索結果として暗号モジュールメタ情報Bを得る。ここで、既に擬似乱数生成の下位モジュールとして検索されたハッシュ関数の暗号モジュールメタ情報Dが得られても良い。暗号モジュールメタ情報Bが検索されると、複合型暗号評価計算部105は、この暗号モジュールメタ情報Bに関連暗号カテゴリ情報があるか否かを判定する。ここでは、関連暗号カテゴリ情報がないので、上位に戻って暗号モジュールメタ情報Aの関連暗号カテゴリ情報に更にカテゴリが記述されているか否かを判定する。ここでは、更なるカテゴリは記述されていないため、以上で暗号モジュールメタ情報の検索を終了する。
続いて、複合型暗号評価計算部105は、検索の結果得られた暗号モジュールメタ情報A、B、C、Dを用いて複合型暗号評価情報を生成する。
【0100】
複合型暗号評価計算部105は、まず、最下位の暗号モジュールメタ情報Dを含む暗号モジュールメタ情報C、Dを用いて、以下のようにして擬似乱数生成の複合型暗号評価情報を生成する。複合型暗号評価計算部105は、暗号モジュールメタ情報C、暗号モジュールメタ情報Dの暗号モジュール評価情報のうち、暗号モジュールメタ情報検索部103が受信した評価項目「安全性」に一致する評価項目の評価点数を読み出す。ここでは、例えば、暗号モジュールメタ情報Cの「安全性」の評価点数が「40点」であり、暗号モジュールメタ情報Dの「安全性」の評価項目の点数が「60点」である場合、複合型暗号評価計算部105は、これらの点数をそれぞれ読み出す。
次に、複合型暗号評価計算部105は、暗号モジュールメタ情報Cの複合型暗号評価計算式情報に記述された前記擬似乱数生成の安全性評価値の計算式(2)に従い、複合型暗号評価情報を計算する。ここで、W4が0.3、W5が0.5として複合型暗号評価計算式情報に含まれている場合、複合型暗号評価計算部105は、擬似乱数生成の安全性評価値として、これらの式と値に基づき、0.3×40+0.5×60を計算し、擬似乱数生成の安全性評価値の計算結果42を得る。なお、この計算結果は、暗号モジュールメタ情報Cと暗号モジュールメタ情報Dとを組み合わせた場合の安全性評価値であるので、例えば、暗号モジュールメタ情報Dとは異なるハッシュ関数のカテゴリの暗号モジュールメタ情報Eがあった場合には、この暗号モジュールメタ情報Eの安全性評価値が暗号モジュールメタ情報Cの複合型暗号評価計算式情報における計算に用いられるため、同じ「ハッシュ関数」のカテゴリに属する暗号モジュールメタ情報であっても、異なる評価結果が得られる場合もある。
【0101】
暗号モジュールメタ情報Cと暗号モジュールメタ情報Dとを組み合わせた擬似乱数生成の安全性評価結果が得られると、複合型暗号評価計算部105は、暗号モジュールメタ情報Cの上位である暗号モジュールメタ情報Aの組み合わせの安全性評価値である電子署名の安全性評価値を、上記の計算で得られた擬似乱数生成の安全性評価結果と、暗号モジュールメタ情報Aと、その直下の暗号モジュールメタ情報Bを用いて計算する。ここでは、複合型暗号評価計算部105は、暗号モジュールメタ情報Aの暗号モジュール評価情報(ここでは一例として60点とする)と、上記の計算で得られた擬似乱数生成の安全性評価値の計算結果42と、暗号モジュールメタ情報Bの暗号モジュール評価情報(ここでは一例として50点とする)と、これらの上位である暗号モジュールメタ情報Aの複合型暗号評価計算式情報である計算式(1)とを用いて計算する。ここで、W1が0.7、W2が0.4、W3が0.3として複合型暗号評価計算式情報に記述されている場合、複合型暗号評価計算部105は、電子署名の安全性評価値として、これらの式と値に基づき、0.7×60+0.4×50+0.3×42を計算し、電子署名の安全性評価値の計算結果74.6を得る。
【0102】
更に、複合型暗号評価計算部105は暗号モジュールメタ情報検索部103を用いて、暗号モジュールメタ情報A、B、C、D以外の全ての組み合わせについても同様に復号型暗号評価情報を計算する。例えば、暗号モジュールメタ情報Bの他に「ハッシュ関数」のカテゴリが暗号モジュールカテゴリとして記述された暗号モジュールメタ情報Fが暗号モジュールメタ情報検索部103によって検索された場合、複合型暗号評価計算部105は、暗号モジュールメタ情報A、F、C、Dとを組み合わせた場合における複合型暗号評価情報についても計算する。ここでは、複合型暗号評価計算部105は、暗号モジュールメタ情報Aの暗号モジュール評価情報と、暗号モジュールメタ情報Fの暗号モジュール評価情報(ここでは、例えば20点とする)と、暗号モジュールメタ情報CとDの組み合わせによって得られた擬似乱数生成の安全性評価結果と、これらの上位である暗号モジュールメタ情報Aの複合型暗号評価計算式情報である計算式(1)とを用いて計算する。つまり、ここでは0.7×60+0.4×20+0.3×42を計算し、組み合わせの安全性評価値の計算結果62.6を得る。
【0103】
このようにして検索された全ての暗号モジュールメタ情報の組み合わせについて複合型暗号評価情報が得られると、複合型暗号評価計算部105は、複合型暗号評価情報の算出に用いられた暗号モジュールメタ情報の組み合わせを示す情報と得られた復号型暗号評価情報の組を、全ての暗号モジュールメタ情報の組み合わせについて暗号モジュール選定部106に出力する。例えば、前述の組み合わせの場合は、暗号モジュールメタ情報の組み合わせが暗号モジュールメタ情報A、B、C、Dであることを示す情報と、暗号モジュールメタ情報A、B、C、Dを組み合わせた場合の複合型暗号評価情報が74.6であることを示す情報とを暗号モジュール選定部106に出力される。
【0104】
ここで、例えばメモリ使用量の評価値に関する復号型暗号評価情報を算出する場合で、暗号モジュールメタ情報Bの代わりに暗号モジュールメタ情報Dが検索された場合に、暗号モジュールメタ情報A、B、C、Dの組み合わせの復号型暗号評価情報を算出する場合、暗号モジュールメタ情報Aの複合型暗号評価計算式情報として前述の安全性に関する復号型復号型暗号評価情報と同様な複合型暗号評価計算式情報が記述されていると、暗号モジュールメタ情報Dのメモリ使用量の評価値を二重に加算してしまい、適切な複合型暗号評価値が得られない場合がある。この場合、複合型暗号評価計算式情報に、同じ暗号モジュールの評価情報を二重に加算しない旨の条件式が記述されていても良い。
【0105】
次に、上述した第3の実施形態における暗号管理装置1の動作について説明する。図17は、暗号管理装置1の動作について説明するためのフローチャートである。まず、端末装置側において「安全な電子署名生成モジュール」を必要とする場合、選択要求としてカテゴリ「電子署名」と評価項目「安全性」とを含む選択要求が端末装置から暗号管理装置1に送信される。
端末装置から暗号管理装置1に選択要求が送信されると、暗号管理装置1の暗号モジュールメタ情報検索部103は、この選択要求を受信する(ステップS101)。次に、暗号モジュールメタ情報検索部103は、受信した選択要求に含まれるカテゴリ「電子署名」を表すカテゴリの暗号モジュールメタ情報を暗号モジュールメタ情報記憶部101を参照して検索する(ステップS102)。そして、暗号モジュールメタ情報検索部103は、検索結果として得られた暗号モジュールメタ情報を記憶部104に書き込む(ステップS103)。ここでは、検索の結果、複数の暗号モジュールメタ情報が得られた場合には、この得られた各暗号モジュールメタ情報が記憶部104に書き込まれる。
【0106】
記憶部104に暗号モジュールメタ情報が書き込まれると、複合型暗号評価計算部105は、記憶部104に記憶された暗号モジュールメタ情報を起点とし、この暗号モジュールメタ情報に関連暗号カテゴリ情報が含まれているか否か判定する(ステップS104)。
暗号モジュールメタ情報に関連暗号カテゴリ情報が含まれていない場合(ステップS104−NO)、複合型暗号評価計算部105は、暗号モジュールメタ情報の暗号モジュール評価情報(ここでは、「安全性」の評価項目に対応する評価点数)を複合型評価情報として生成する(ステップS105)。
【0107】
一方、暗号モジュールメタ情報に関連暗号カテゴリ情報が含まれている場合(ステップS104−YES)、複合型暗号評価計算部105は、暗号モジュールメタ情報検索部103を用いて、この関連暗号カテゴリ情報のカテゴリに一致するカテゴリの暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して復号型暗号評価計算部105を再帰的に呼び出すことによって得られる関連暗号モジュールの評価情報(ここでは、「安全性」の評価項目に対応する評価点数)と、当該暗号モジュールの暗号モジュールメタ情報に含まれる複合型暗号評価計算式情報とを基に、暗号モジュールの複合型暗号評価情報を生成する(ステップS106)。
【0108】
複合型暗号評価情報が生成されると、暗号モジュール選定部106は、記憶部104に記憶された暗号モジュールメタ情報の全てについて複合型暗号評価情報の算出を行ったか否かを判定し(ステップS107)、記憶部104に記憶された暗号モジュールメタ情報のうち、複合型暗号評価情報の算出をしていない暗号モジュールメタ情報の組み合わせがある場合には、ステップS104に移行し(ステップS107−NO)、暗号モジュールメタ情報を指定して複合型暗号評価計算部105によって複合型暗号評価情報を計算させる。
【0109】
一方、記憶部104に記憶された暗号モジュールメタ情報の全てについて複合型暗号評価情報の算出が行われた場合(ステップS107−YES)、暗号モジュール選定部106は、複合型暗号評価計算部105によって算出した複合型暗号評価情報とその複合型暗号評価情報の算出に用いられた暗号モジュールメタ情報との組み合わせのうち、複合型暗号評価情報に基づいて、最も高い評価点である複合型暗号評価情報を選択し(ステップS108)、この複合型暗号評価情報の組み合わせとなる暗号モジュールメタ情報を暗号モジュール取得部107に出力する。
【0110】
暗号モジュール選定部106から暗号モジュールメタ情報が出力されると、暗号モジュール取得部107は、暗号モジュールメタ情報に含まれている暗号モジュール名に基づいて、暗号モジュール記憶部102に記憶された暗号モジュールを読み出し、読み出した暗号モジュールを、選定要求を行った端末装置に対して配信する(ステップS109)。
【0111】
次に、第3の実施形態における暗号管理装置1の変形例について図18のフローチャートを用いて説明する。
まず、端末装置側において「安全な電子署名生成モジュール」を必要とする場合、選択要求としてカテゴリ「電子署名」と評価項目「安全性」とを含む選択要求が端末装置から暗号管理装置1に送信される。
端末装置から暗号管理装置1に選択要求が送信されると、暗号管理装置1の暗号モジュールメタ情報検索部103は、この選択要求を受信する(ステップS201)。次に、暗号モジュールメタ情報検索部103は、受信した選択要求に含まれるカテゴリ「電子署名」を表すカテゴリの暗号モジュールメタ情報を暗号モジュールメタ情報記憶部101を参照して検索する(ステップS202)。そして、暗号モジュールメタ情報検索部103は、検索結果として得られた暗号モジュールメタ情報を記憶部104に書き込む(ステップS203)。ここでは、検索結果として複数の暗号モジュールメタ情報が得られた場合には、暗号モジュールメタ情報検索部103は、これらの得られた暗号モジュールメタ情報を全て記憶部104に書き込む。
【0112】
記憶部104に暗号モジュールメタ情報が書き込まれると、複合型暗号評価計算部105は、記憶部104に記憶された暗号モジュールメタ情報のうち、複合型暗号評価情報の計算がまだされていない暗号モジュールメタ情報を選択して読み出し(ステップS204)、この読み出した暗号モジュールメタ情報に関連暗号カテゴリ情報が含まれているか否か判定する(ステップS205)。
【0113】
暗号モジュールメタ情報に関連暗号カテゴリ情報が含まれていない場合(ステップS205−NO)、複合型暗号評価計算部105は、暗号モジュールメタ情報の暗号モジュール評価情報(ここでは、「安全性」の評価項目に対応する評価点数)を複合型評価情報として生成する(ステップS206)。
【0114】
一方、暗号モジュールメタ情報に関連暗号カテゴリ情報が含まれている場合(ステップS205−YES)、複合型暗号評価計算部105は、暗号モジュールメタ情報検索部103を用いて、この関連暗号カテゴリ情報のカテゴリに一致するカテゴリの暗号モジュールの暗号モジュールメタ情報を再帰的に検索する(ステップS206)。この検索は、関連暗号カテゴリ情報が含まれていない暗号モジュールメタ情報に到達するまで繰り返し行われ、検索して得られた結果は、暗号モジュールメタ情報検索部103によって記憶部104に記憶される。
そして、複合型暗号評価計算部105は、検索結果が記憶部104に記憶されると、この記憶部104に記憶された検索結果に基づいて、関連暗号カテゴリ情報が含まれていない暗号モジュールメタ情報を下位とし、記憶部104から読み出した暗号モジュールメタ情報を上位とし、下位から上位に向かって順に計算を行う(ステップS208)。この計算については、複合型暗号評価計算部105は、暗号モジュールメタ情報の暗号モジュール評価情報と、当該暗号モジュールメタ情報の関連暗号カテゴリ情報に属する関連暗号モジュールの暗号モジュール評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる複合型暗号評価計算式情報とに基づき、暗号モジュールの複合型暗号評価情報として生成する。
【0115】
複合型暗号評価情報が生成されると、複合型暗号評価計算部105は、記憶部104に記憶された暗号モジュールメタ情報の全てについて複合型暗号評価情報の算出を行ったか否かを判定し(ステップS209)、記憶部104に記憶された暗号モジュールメタ情報のうち複合型暗号評価情報の算出をしていない暗号モジュールメタ情報の組み合わせがある場合には、ステップS204に移行する(ステップS209−NO)。
【0116】
一方、記憶部104に記憶された暗号モジュールメタ情報の全てについて複合型暗号評価情報の算出が行われると(ステップS209−YES)、複合型暗号評価計算部105は、算出した複合型暗号評価情報とその複合型暗号評価情報の算出に用いられた暗号モジュールメタ情報との組み合わせを、暗号モジュール選定部106に出力する。複合型暗号評価情報が複数算出された場合には、複合型暗号評価情報とその複合型暗号評価情報の算出に用いられた暗号モジュールメタ情報との組み合わせが複数存在することになり、これら複数の組み合わせがそれぞれ暗号モジュール選定部106に出力される。
【0117】
複合型暗号評価計算部105から複合型暗号評価情報と暗号モジュールメタ情報の組み合わせが出力されると、暗号モジュール選定部106は、複合型暗号評価計算部105から出力された複合型暗号評価情報と暗号モジュールメタ情報の組み合わせのうち、複合型暗号評価情報に基づいて、最も高い評価点である複合型暗号評価情報を選択し(ステップS210)、この複合型暗号評価情報の組み合わせとなる暗号モジュールメタ情報とを暗号モジュール取得部107に出力する。
【0118】
暗号モジュール選定部106から暗号モジュールメタ情報が出力されると、暗号モジュール取得部107は、暗号モジュールメタ情報に含まれている暗号モジュール名に基づいて、暗号モジュール記憶部102に記憶された暗号モジュールを読み出し、読み出した暗号モジュールを、選定要求を行った端末装置に対して配信する(ステップS211)。
【0119】
以上説明した第3の実施形態によれば、暗号モジュールの実行に関連暗号モジュールを必要とする場合に、暗号モジュールと関連暗号モジュールとを組み合わせて評価を行うようにしたので、選定要求に応じた暗号モジュールの組み合わせの中から評価結果を基に暗号モジュールを選定し、選定要求を行った端末装置に対して配信することができる。
【0120】
なお、以上説明した第3の実施形態において、暗号モジュール評価情報として、評価項目と評価点数とを対応付けして記憶する場合について説明したが、暗号モジュールが実行可能なプラットフォームや、最大入力長、最大鍵長などの使用制限に関する情報である使用制限情報についても記憶するようにし、端末装置から送信される選択要求に、当該端末装置の使用環境を表す端末使用環境情報(例えば、端末装置が実行可能なプラットフォーム、最大入力長、最大鍵長など)を含めて端末装置から暗号管理装置に送信するようにしてもよい。
【0121】
この場合、暗号管理装置1の暗号モジュール選択部105は、複合型暗号評価情報を計算した後、計算の結果得られた複合型暗号評価情報が高い順に暗号モジュールをソートしたのち、さらに、この暗号モジュールに付帯された暗号モジュール評価情報の使用制限情報と、選定要求を行った端末装置の端末使用環境情報とについて、複合型暗号評価情報が高い順に比較を行い、端末装置の端末使用環境情報によって表された環境を満たす使用制限情報が付帯された暗号モジュールを選択するようにしてもよい。例えば、端末装置の実行可能なプラットフォームに一致する実行可能なプラットフォームを含む使用制限情報であって、かつ、端末使用環境情報の最大入力長及び最大鍵長と、暗号モジュールに付帯された暗号モジュール評価情報の使用制限情報の最大入力長及び最大鍵長とが一致する場合に、端末装置の端末使用環境情報によって表された環境を満たす使用制限情報として選択する。これにより、端末装置の使用条件を満たしつつ、評価が最も高い暗号モジュールを選定することが可能となる。
【0122】
[第4の実施形態]
次に、第4の実施形態について説明する。第3の実施形態においては、端末装置から選択要求を受信した時点で暗号モジュールの組み合わせた場合の評価を行い、評価結果を基に暗号モジュールを選定して端末装置に配信する場合について説明したが、この第4の実施形態においては、暗号モジュールを組み合わせた場合における評価を予め行って記憶しておく場合について説明する。
【0123】
以下、第4の実施形態について図面を用いて説明する。図19は、第4の実施形態における暗号管理装置の構成を示す図面である。この図において、暗号管理装置2は、メタ情報記憶部201、暗号モジュール登録装置202、メタ情報検索部203、暗号モジュール選定部204、暗号モジュール取得部205、暗号モジュール記憶部206を有する。暗号モジュール選定部204は第3の実施形態における暗号モジュール選定部106、暗号モジュール取得部205は第3の実施形態における暗号モジュール取得部107、暗号モジュール記憶部206は第3の実施形態における暗号モジュール記憶部102にそれぞれ対応し、同様の機能を有する。
【0124】
メタ情報記憶部201は、暗号モジュールメタ情報と、複合型メタ情報とを記憶する。この暗号モジュールメタ情報は、第3の実施形態において説明した暗号モジュールメタ情報と同様の情報である。暗号モジュール登録装置202は、関連暗号モジュール検索部210、複合型暗号評価計算部211、複合型メタ情報生成部212を有する。
関連暗号モジュール検索部210は、外部に無線または有線によって接続される登録要求装置から送信される暗号モジュールと当該暗号モジュールの暗号モジュールメタ情報とを受信する。そして、まず当該暗号モジュールメタ情報の関連暗号カテゴリ情報にカテゴリが記述されていた場合は、メタ情報記憶部201を検索して、複合型暗号カテゴリが当該カテゴリに一致する複合型メタ情報(下位モジュールの複合型メタ情報)を検索し、当該暗号モジュールメタ情報と検索の結果得られた複合型メタ情報の組を出力する。また当該暗号モジュールメタ情報の関連暗号カテゴリ情報にカテゴリが記述されていない場合には、まず当該暗号モジュールメタ情報のみを出力する。更に、当該暗号モジュールメタ情報の暗号モジュールカテゴリに従い、関連暗号カテゴリ情報に記載されたカテゴリが当該暗号モジュールカテゴリに一致する暗号モジュールメタ情報(上位モジュールの暗号モジュールメタ情報)を検索し、当該暗号モジュールメタ情報と下位の複合型メタ情報と検索の結果得られた上位の暗号モジュールメタ情報の組を出力する。このとき、検索された暗号モジュールメタ情報の関連暗号カテゴリ情報にカテゴリが記述されていた場合は、メタ情報記憶部201を更に検索して、複合型暗号カテゴリが当該関連暗号カテゴリ情報のカテゴリに一致する複合型メタ情報を検索し、その結果得られた複合型メタ情報もあわせて出力する。更に、再帰的にメタ情報記憶部201を検索して、前記得られた上位の暗号モジュールメタ情報の暗号モジュールカテゴリが関連暗号モジュールカテゴリ情報に一致する暗号モジュールメタ情報(更に上位の暗号モジュールメタ情報)を検索して、それらの組を出力する。これを更に上位の暗号モジュールメタ情報が検索されなくなるまで繰り返す。要するに、登録要求装置から送信された暗号モジュールを含んで実行可能な暗号モジュールの組み合わせに対応する暗号モジュールメタ情報および複合型メタ情報の組を全て検索して出力する。このとき、下位の暗号モジュールの組み合わせはいずれも複合型メタ情報を検索すれば十分であり、これにより検索の手間が削減できる。
【0125】
複合型暗号評価計算部211は、関連暗号モジュール検索部210により検索された暗号モジュールメタ情報および複合型メタ情報の組み合わせから、暗号モジュールメタ情報の暗号モジュール評価情報と、暗号モジュールメタ情報の関連暗号カテゴリ情報に記述された暗号モジュールカテゴリに属する暗号モジュール(下位モジュール)の暗号モジュールメタ情報に記述された暗号モジュール評価情報または複合型メタ情報に記載された複合型暗号評価情報とを用い、この下位モジュールが属するモジュールである上位モジュールの複合型暗号評価計算式情報に従い、これら組み合わせの評価値である複合型暗号評価情報を計算する。
【0126】
複合型メタ情報生成部212は、複合型暗号評価計算部211の計算結果を基に複合型メタ情報を生成し、メタ情報記憶部201に書き込む。ここでは、関連暗号モジュール検索部210が受信した暗号モジュールメタ情報についてもメタ情報記憶部201に書き込む。
【0127】
図20は、複合型メタ情報の一例を示す図である。複合型メタ情報は、複合型名、複合型暗号カテゴリ、複合型評価情報、関連暗号モジュール名を含む。
ここで、複合型名は、暗号モジュールの組み合わせを識別する情報である。複合型暗号カテゴリは、暗号モジュールの組み合わせのうち、最上位の暗号モジュールのカテゴリを表すカテゴリが記憶される。複合型暗号評価情報は、複合型暗号評価計算部211により生成された複合型暗号評価情報が記憶される。関連暗号モジュール名には、複合型暗号評価情報を計算した際に組み合わせされた暗号モジュールの暗号モジュール名が記憶される。
【0128】
次に、上述した構成における暗号管理装置2の動作について図21を用いて説明する。ここでは、暗号管理装置2に複数の暗号モジュール、暗号モジュールメタ情報、複合型暗号メタ情報が既に記憶されている場合において、まだ暗号管理装置2に記憶されていない暗号モジュールを暗号管理装置2に記憶する場合について説明する。図21は、第4の実施形態における暗号管理装置2の動作について説明するためのフローチャートである。
暗号管理装置2の外部に接続される登録要求装置から暗号モジュールと暗号モジュールメタ情報とが暗号管理装置2に登録要求とともに送信されると、関連暗号モジュール検索部210は、この暗号モジュールと暗号モジュールメタ情報とを受信する(ステップS301)。関連暗号モジュール検索部210は、前述の通りメタ情報記憶部201を検索して暗号モジュールメタ情報および複合型メタ情報の組を得る(ステップS302)。
関連暗号モジュール検索部210によって暗号モジュールメタ情報および複合型メタ情報の組が得られると、複合型暗号評価計算部211は、前述の通りこれら組み合わせに対する複合型暗号評価情報を生成する(ステップS303)。
【0129】
そして、複合型暗号評価情報が生成されると、複合型暗号メタ情報生成部212は、複合型暗号メタ情報を生成し(ステップS304)、生成した複合型暗号メタ情報と関連暗号モジュール検索部210が受信した暗号モジュールメタ情報とをメタ情報記憶部201に書き込む(ステップS305)。ここで、複合型暗号メタ情報生成部212は、複合型暗号評価計算部211によって複合型暗号評価情報を計算した暗号モジュールメタ情報および複合型メタ情報の組み合わせを基に、この組み合わせを識別する情報を生成して複合型暗号名としてメタ情報記憶部201の複合型メタ情報に書き込む。また、複合型暗号メタ情報生成部212は、複合型暗号評価計算部211によって複合型暗号評価情報を計算した暗号モジュールメタ情報の組み合わせのうち、最も上位の暗号モジュールの暗号モジュールメタ情報のカテゴリを当該生成した複合型暗号名に対応づけて、複合型暗号カテゴリとしてメタ情報記憶部201の複合型メタ情報に書き込む。さらに、複合型暗号メタ情報生成部212は、複合型暗号評価計算部211によって計算された複合型暗号評価情報を当該生成した複合型暗号名に対応づけて、メタ情報記憶部201の複合型暗号評価情報に書き込む。さらにまた、複合型暗号メタ情報生成部212は、複合型暗号評価計算部211によって複合型暗号評価情報を計算した際に、組み合わされた各々の暗号モジュールメタ情報の暗号モジュール名を当該生成した複合型暗号名に対応づけて、関連暗号モジュール名としてメタ情報記憶部201の複合型メタ情報に書き込む。
【0130】
そして、複合型メタ情報生成部212は、関連暗号モジュール検索部210で複数の組み合わせが検索された場合であって、複合型暗号メタ情報を生成していない暗号モジュールメタ情報の組み合わせがある場合には、ステップS303に移行し(ステップS306−NO)、ない場合には処理を終了する(ステップS306−YES)。以上のようにして、複合型メタ情報が生成され、メタ情報記憶部201に記憶される。
【0131】
このようにして複合型メタ情報がメタ情報記憶部201に登録された後、端末装置側において「安全な電子署名生成モジュール」を必要とする場合、選択要求としてカテゴリ「電子署名」と評価項目「安全性」とを含む選択要求が端末装置から暗号管理装置2に送信された場合は、メタ情報検索部203が、端末装置の選択要求に含まれるカテゴリに従い、メタ情報記憶部201を検索し、複合型メタ情報の複合型暗号カテゴリが一致する複合型メタ情報を得て、得られた複合型暗号メタ情報を暗号モジュール選定部204へ出力する。
【0132】
暗号モジュール選定部204は、第3の実施形態と同様に複合型メタ情報に記述された評価情報から、要求を満たす最適な複合型メタ情報を選定し、選定した複合型暗号メタ情報の関連暗号モジュール名を基に暗号モジュールを暗号モジュール記憶部206から読み出して端末装置に出力する。
【0133】
以上説明したように、暗号モジュール全ての組み合わせに対する暗号評価の計算を、暗号モジュールの登録要求を受けた時点で行ってメタ情報記憶部201に書き込むようにしたので、選定要求を受信した時点で評価情報を計算する必要が無くなる。これにより、選定要求を受信した後に評価情報を計算する場合に比べて、選定要求を受信してから暗号モジュールを選定するまでの処理において評価情報を計算する処理の分についての負荷を削減することができる。これにより、複数のクライアントからの暗号モジュールの選定要求に対応することも可能となる。
【0134】
[第5の実施形態]
次に、第5の実施形態について説明する。この第5の実施形態においては、暗号管理装置内に格納されている暗号モジュールが危殆化した場合に、危殆化した暗号モジュールを削除する場合について説明する。
【0135】
図22は、第5の実施形態における暗号管理装置3の構成を示す概略ブロック図である。この図において、メタ情報関連テーブル記憶部301は、暗号モジュールと当該暗号モジュールが必要とする関連暗号モジュールとの関係を記憶する。メタ情報記憶部302は、複合型メタ情報と暗号モジュールメタ情報とを記憶する。この複合型メタ情報と暗号モジュールメタ情報は、例えば、第4の実施形態における複合型メタ情報と暗号モジュールメタ情報と同様である。暗号モジュール記憶部303は、暗号モジュールを記憶する。
削除部304は、危殆化した暗号モジュールの暗号モジュール名と削除要求を暗号管理装置3の外部に接続される管理装置から受信し、受信した暗号モジュール名を基にメタ情報関連テーブル記憶部301を検索し、検索結果に基づいて、受信した暗号モジュール名に一致する暗号モジュールを削除する。
【0136】
図23は、メタ情報関連テーブル記憶部301に記憶されるメタ情報関連テーブルの一例を示す図である。この図において、メタ情報関連テーブルは、上位モジュール名と下位モジュール名とから構成される。ここでは、上位モジュール名の暗号モジュール名に対し、当該暗号モジュール名を含む暗号モジュールメタ情報の関連暗号カテゴリに一致するカテゴリが設定された暗号モジュールメタ情報の暗号モジュール名が下位モジュール名として対応付けされる。
また、下位モジュール名として記憶された暗号モジュール名の暗号モジュールに関連暗号モジュールがある場合には、この下位情報として記憶された暗号モジュール名を上位モジュール名とし、関連暗号モジュールの暗号モジュール名が下位モジュール名としてメタ情報関連テーブルに記憶される。
図23においては、暗号モジュール名aの下位として暗号モジュール名b、cがそれぞれ対応付けされて記憶されている。また、暗号モジュール名cの下位として暗号モジュール名dが対応付けされて記憶される。
【0137】
以上説明した構成における暗号管理装置3の動作について説明する。ここでは、メタ情報関連テーブル記憶部301に予め上位と下位の暗号モジュール名が対応付けされて記憶されているものとする。
外部の管理装置から暗号管理装置3に暗号モジュール名と削除要求が送信されると、削除部303は、メタ情報関連テーブル記憶部301の下位モジュール名を検索し、削除要求された暗号モジュール名と一致する暗号モジュール名があるか否かを判定する。削除部303は、削除要求された暗号モジュール名と一致する暗号モジュール名が下位モジュール名に無ければ処理を終了し、削除要求された暗号モジュール名と一致する暗号モジュール名が下位モジュール名にある場合に、その下位モジュール名と当該下位モジュール名に対応する上位モジュール名の暗号モジュール名をメタ情報関連テーブル記憶部301から削除するとともに、この削除した暗号モジュール名を基にメタ情報記憶部201から暗号モジュールメタ情報を削除し、さらに、削除した暗号モジュール名を基に暗号モジュールを暗号モジュール記憶部303から削除する。
【0138】
また、この第5の実施形態によれば、別の効果として、暗号モジュールが危殆化した場合のシステムへの影響度を知るために、その暗号モジュールがどれだけの上位モジュールから参照されているかを知りたい場合にも、このメタ情報管理テーブルを参照することにより、参照されている数を把握することができる。
【0139】
なお、以上説明した暗号管理装置1、2、3は、暗号配信システムにおいてサーバ装置側が備えていても良く、クライアント端末側が備えていても良い。例えば、予めクライアント端末側に複数の暗号モジュールを保持することが可能な場合には、クライアント端末内の当該暗号管理装置によってこれらの暗号モジュールを管理してもよい。これにより、アプリケーションからの暗号モジュール要求に対して、クライアント内のみで効率的に暗号の選定・管理が可能となる。
【0140】
また、図2、3、5、12、13、19、22における暗号クライアント装置、暗号管理サーバ、暗号管理装置の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより暗号モジュールの管理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
【0141】
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0142】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【0143】
【図1】本発明の第1の実施形態による暗号モジュール配信システムの構成を示すブロック図である。
【図2】本発明の第1の実施形態による暗号クライアント装置の構成を示すブロック図である。
【図3】本発明の第1の実施形態による暗号管理サーバ装置の構成を示すブロック図である。
【図4】本発明の第2の実施形態による暗号モジュール配信システムの構成を示すブロック図である。
【図5】本発明の第2の実施形態による暗号クライアント装置の構成を示すブロック図である。
【図6】本発明の第2の実施形態による選定DBのデータ構成例を示す図である。
【図7】本発明の第2の実施形態による暗号モジュールリンクDBのデータ構成例を示す図である。
【図8】本発明の第2の実施形態による暗号モジュールDBのデータ構成例を示す図である。
【図9】本発明の第2の実施形態による鍵情報DBのデータ構成例を示す図である。
【図10】本発明の第2の実施形態による暗号処理DBのデータ構成例を示す図である。
【図11】本発明の第2の実施形態によるデータベースの論理構成を示す図である。
【図12】本発明の第2の実施形態による暗号管理サーバ装置の構成を示すブロック図である。
【図13】本発明の第3の実施形態に係る暗号管理装置の機能ブロック図である。
【図14】本発明の第3の実施形態に係る暗号モジュールメタ情報の一例を示す図である。
【図15】本発明の第3の実施形態に係る暗号モジュール評価情報一例を示す図である。
【図16】関連暗号カテゴリ情報を用いた暗号モジュールメタ情報について説明するための図である。
【図17】本発明の第3の実施形態に係る暗号管理装置の動作について説明するためのフローチャートである。
【図18】本発明の第3の実施形態の変形例に係る暗号管理装置の動作について説明するためのフローチャートである。
【図19】第4の実施形態における暗号管理装置の構成を示す図面である。
【図20】複合型メタ情報について説明するための図である。
【図21】暗号管理装置2の動作について説明するためのフローチャートである。
【図22】第5の実施形態における暗号管理装置3の構成を示す概略ブロック図である。
【図23】本発明の第5の実施形態におけるメタ情報関連テーブルの一例を示す図である。
【符号の説明】
【0144】
1 暗号管理装置
2 暗号管理装置
3 暗号管理装置
101 暗号モジュールメタ情報記憶部
102 暗号モジュール記憶部
103 暗号モジュールメタ情報検索部
105 複合型暗号評価計算部
106 暗号モジュール選定部
107 暗号モジュール取得部
201 暗号モジュール登録装置
202 メタ情報記憶部
203 メタ情報検索部
204 暗号モジュール選定部
205 暗号モジュール取得部
206 暗号モジュール記憶部
210 関連暗号モジュール検索部
211 複合型暗号評価計算部
212 複合暗号メタ情報生成部

【特許請求の範囲】
【請求項1】
複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力する暗号管理装置であって、
複数の暗号モジュールを格納する暗号モジュール記憶部と、
当該個々の暗号モジュールの属するカテゴリを表すカテゴリ情報と、当該個々の暗号モジュールに対する所定の評価結果を示す第1の評価情報と、当該個々の暗号モジュールの実行に他の関連暗号モジュールを必要とする場合に当該他の関連暗号モジュールが属するカテゴリを表すカテゴリ情報と、当該他の関連暗号モジュールに対する所定の評価結果を示す第2の評価情報と前記第1の評価情報とから当該暗号モジュールと当該他の関連暗号モジュールとを組み合わせて実行した場合に対する所定の評価情報を示す複合型暗号評価情報の導出方法を示す導出方法情報とを含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、
要求される暗号モジュールのカテゴリ情報に基づき、前記暗号モジュールメタ情報記憶部を参照して前記暗号モジュールメタ情報を検索する暗号モジュールメタ情報検索部と、
前記暗号モジュールメタ情報検索部によって検索された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して当該復号型暗号評価計算部を再帰的に呼び出すことによって得られる復号型暗号評価情報である前記第2の評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成する複合型暗号評価計算部と、
前記複合型暗号評価計算部による計算結果を得て、この得た計算結果に基づき、暗号モジュールを選定する暗号モジュール選定部と、
前記暗号モジュール選定部によって選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力する暗号モジュール取得部と、
を有することを特徴とする暗号管理装置。
【請求項2】
前記複合型暗号評価計算部は、
指定された暗号モジュールメタ情報に前記第2のカテゴリ情報が含まれていない場合には、当該暗号モジュールに対する前記第1の評価情報を前記複合型暗号評価情報として生成することを特徴とする請求項1記載の暗号管理装置。
【請求項3】
複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力する暗号管理装置であって、
複数の暗号モジュールを格納する暗号モジュール記憶部と、
組み合わされる暗号モジュールのうち最上位の暗号モジュールのカテゴリを表すカテゴリ情報と、当該暗号モジュールを組み合わせて実行した場合に対する所定の評価情報を示す複合型暗号評価情報と、当該暗号モジュールの組み合わせに含まれる各々の暗号モジュールを識別する暗号モジュール識別情報を含む組み合わせ暗号モジュール識別情報と、を含む複合型メタ情報を記憶する複合型メタ情報記憶部と、
選定要求に対応する暗号モジュールのカテゴリ情報に基づき、前記複合型メタ情報記憶部を参照して複数の複合型メタ情報を検索し、得られる複合型メタ情報の複合型暗号評価情報に基づき、組み合わせに含まれる暗号モジュールを選定する暗号モジュール選定部と、
前記暗号モジュール選定部によって選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力する暗号モジュール取得部と、
を有し、
前記複合型暗号評価情報は、
組み合わされる暗号モジュールの各々の評価情報を基に所定の導出方法を用いて算出された、暗号モジュールを組み合わせて実行する場合の評価情報であること
を特徴とする暗号管理装置。
【請求項4】
当該暗号モジュールの属するカテゴリを表すカテゴリ情報と、当該暗号モジュールが評価された結果である評価情報と、当該暗号モジュールの実行に関連暗号モジュールを必要とする場合にその関連暗号モジュールが属するカテゴリを表す関連暗号モジュールカテゴリ情報と、当該暗号モジュールの実行に関連暗号モジュールを必要とする場合に前記暗号モジュールに設定された評価情報と前記関連暗号モジュールに設定された評価情報とから当該暗号モジュールと当該関連暗号モジュールとを組み合わせて実行した場合の評価情報である複合型暗号評価情報を導出する方法を表す導出方法情報と、を含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、
指定された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合は、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して自身を再帰的に呼び出すことによって得られる前記関連暗号モジュールの評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成して評価結果とする複合型暗号評価計算部と、
前記複合型暗号評価計算部によって計算された複合型暗号評価を前記複合型メタ情報記憶部に書き込む書き込み部と、
を有することを特徴とする請求項3記載の暗号管理装置。
【請求項5】
前記複合型暗号評価計算部は、
指定された暗号モジュールメタ情報に前記関連暗号モジュールカテゴリ情報が含まれていない場合には、当該暗号モジュールの評価情報を前記複合型暗号評価情報として生成することを特徴とする請求項4記載の暗号管理装置。
【請求項6】
複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力する暗号管理装置における暗号管理方法であって、
前記暗号管理装置は、
複数の暗号モジュールを格納する暗号モジュール記憶部と、
当該個々の暗号モジュールの属するカテゴリを表すカテゴリ情報と、当該個々の暗号モジュールに対する所定の評価結果を示す第1の評価情報と、当該個々の暗号モジュールの実行に他の関連暗号モジュールを必要とする場合に当該他の関連暗号モジュールが属するカテゴリを表すカテゴリ情報と、当該他の関連暗号モジュールに対する所定の評価結果を示す第2の評価情報と前記第1の評価情報とから当該暗号モジュールと当該他の関連暗号モジュールとを組み合わせて実行した場合に対する所定の評価情報を示す複合型暗号評価情報の導出方法を示す導出方法情報とを含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、
を有しており、
暗号モジュールメタ情報検索部が、要求される暗号モジュールのカテゴリ情報に基づき、前記暗号モジュールメタ情報記憶部を参照して前記暗号モジュールメタ情報を検索し、
複合型暗号評価計算部が、
前記暗号モジュールメタ情報検索部によって検索された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合は、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して当該複合型暗号評価計算部を再帰的に呼び出すことによって得られる複合型暗号評価情報である前記第2の評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成して評価結果とし、
暗号モジュール選定部が、前記選定要求に対応する暗号モジュールメタ情報を指定して前記複合型暗号評価計算部による計算結果を得て、この得た計算結果に基づき、暗号モジュールを選定し、
暗号モジュール取得部が、前記暗号モジュール選定部によって選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力する
ことを特徴とする暗号管理方法。
【請求項7】
複数の暗号モジュールを管理し、暗号モジュールの選定要求に応じて暗号モジュールを選定して出力するコンピュータであって、
複数の暗号モジュールを格納する暗号モジュール記憶部と、
当該個々の暗号モジュールの属するカテゴリを表すカテゴリ情報と、当該個々の暗号モジュールに対する所定の評価結果を示す第1の評価情報と、当該個々の暗号モジュールの実行に他の関連暗号モジュールを必要とする場合に当該他の関連暗号モジュールが属するカテゴリを表すカテゴリ情報と、当該他の関連暗号モジュールに対する所定の評価結果を示す第2の評価情報と前記第1の評価情報とから当該暗号モジュールと要害他の関連暗号モジュールとを組み合わせて実行した場合に対する所定の評価情報を示す複合型暗号評価情報の導出方法を示す導出方法情報と、
を含む暗号モジュールメタ情報を記憶する暗号モジュールメタ情報記憶部と、
を有するコンピュータに、
要求される暗号モジュールのカテゴリ情報に基づき、前記暗号モジュールメタ情報記憶部を参照して前記暗号モジュールメタ情報を検索する手順、
前記暗号モジュールメタ情報検索部によって検索された暗号モジュールメタ情報に関連暗号モジュールカテゴリ情報が含まれている場合は、前記暗号モジュールメタ情報検索部を用いて関連暗号モジュールの暗号モジュールメタ情報を検索し、検索の結果得られた各々の関連暗号モジュールの暗号モジュールメタ情報を指定して当該複合型暗号評価計算部を再帰的に呼び出すことによって得られる複合型暗号評価情報である前記第2の評価情報と、当該暗号モジュールの暗号モジュールメタ情報に含まれる前記導出方法情報とに基づき、複合型暗号評価情報を当該暗号モジュールの評価情報として生成して評価結果とする手順、
前記選定要求に対応する暗号モジュールメタ情報を指定して前記評価結果とする手順を呼び出し評価結果を得て、得られた評価結果に基づき、暗号モジュールを選定する手順、
前記選定された暗号モジュールを前記暗号モジュール記憶部から読み出して出力する手順
を実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate


【公開番号】特開2009−89044(P2009−89044A)
【公開日】平成21年4月23日(2009.4.23)
【国際特許分類】
【出願番号】特願2007−256316(P2007−256316)
【出願日】平成19年9月28日(2007.9.28)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成15年度から平成17年度、独立行政法人情報通信研究機構、高度通信・放送研究に関する委託事業、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【出願人】(397065136)株式会社横須賀テレコムリサーチパーク (28)
【Fターム(参考)】