(57)【要約】【課題】ツールキット、好ましくは暗号化ツールキットを選択する方法、ツールキットを選択するためのシステム、及びこのための試験フレームの使用に関する技術を提供する。【解決手段】試験フレームを設けることによって技術的コンピュータ環境で複数のツールキットからツールキット、好ましくは暗号化ツールキットを選択する方法。性能特性が、複数のツールキットに関して確立され、ツールキットは、性能特性の確立されたパラメータに基づいて判断される。【選択図】図１
2007213585.tif 000002
【特許請求の範囲】
【請求項１】
技術的コンピュータ環境において複数のツールキットからツールキット、好ましくは暗号化ツールキットを選択する方法であって、
ａ）複数のツールキットに対する性能特性を確立する試験フレームを設ける段階と、
ｂ）前記性能特性の確立されたパラメータに基づいて前記ツールキットを判断する段階と、
を有することを特徴とする方法。
【請求項２】
ハード及びソフトウエアが、前記技術的コンピュータ環境において確立されることを特徴とする請求項１に記載の方法。
【請求項３】
前記確立されたパラメータは、少なくとも１つのラッパー、好ましくはプラットホーム非依存型ラッパーによる前記複数のツールキットの機能に従って判断されることを特徴とする請求項１又は請求項２に記載の方法。
【請求項４】
前記ツールキットは、前記パラメータの統計的評価に基づいて判断されることを特徴とする請求項１から請求項３のいずれか１項に記載の方法。
【請求項５】
前記ツールキットは、前記パラメータのアルゴリズム的評価に基づいて判断されることを特徴とする請求項１から請求項３のいずれか１項に記載の方法。
【請求項６】
前記ツールキットは、自己学習的質問に基づいて判断されることを特徴とする請求項１から請求項３のいずれか１項に記載の方法。
【請求項７】
前記ツールキットは、動的に、好ましくは前記技術的コンピュータ環境の作動中に判断されることを特徴とする請求項１から請求項６のいずれか１項に記載の方法。
【請求項８】
前記技術的コンピュータ環境の作動中に導入される更に別のツールキットが、前記ツールキットを選択する時に考慮されることを特徴とする請求項１から請求項７のいずれか１項に記載の方法。
【請求項９】
性能特性が、対称暗号化、対称暗号解読、ハッシュ法、及び／又は乱数発生に対して確立されることを特徴とする請求項１から請求項８のいずれか１項に記載の方法。
【請求項１０】
非対称暗号化及び／又は署名に関する性能特性が確立されることを特徴とする請求項１から請求項８のいずれか１項に記載の方法。
【請求項１１】
前記試験フレームは、所定のインタフェース、好ましくはツールキット特定のインタフェースを通じて前記ラッパーと通信するだけであることを特徴とする請求項１から請求項１０のいずれか１項に記載の方法。
【請求項１２】
特に請求項１から請求項１１のいずれか１項に記載の方法を実施するために技術的コンピュータ環境において複数のツールキットからツールキット、好ましくは暗号化ツールキットを選択するためのシステムであって、
試験フレームが、複数のツールキットに対する性能特性を確立するために設けられ、
前記選択されたツールキットを使用するアプリケーションプログラムが準備される、
ことを特徴とするシステム。
【請求項１３】
少なくとも１つのラッパー、好ましくはプラットホーム非依存型ラッパーが、前記ツールキットに対して設けられることを特徴とする請求項１２に記載のシステム。
【請求項１４】
ツールキット非依存型インタフェースが設けられることを特徴とする請求項１２又は請求項１３のいずれか１項に記載のシステム。
【請求項１５】
前記複数のツールキットの機能に従って判断された確立されたパラメータを格納するための手段が設けられることを特徴とする請求項１２から請求項１４のいずれか１項に記載のシステム。
【請求項１６】
前記試験フレームは、前記プラットホームとは独立に前記技術的コンピュータ環境において実施されることを特徴とする請求項１２から請求項１５のいずれか１項に記載のシステム。
【請求項１７】
前記ラッパーは、前記プラットホームとは独立に実施されることを特徴とする請求項１２から請求項１６のいずれか１項に記載のシステム。
【請求項１８】
前記確立された性能特性を評価するための手段が設けられることを特徴とする請求項１２から請求項１７のいずれか１項に記載のシステム。
【請求項１９】
前記確立された性能特性の動的評価のための手段が設けられることを特徴とする請求項１２から請求項１７のいずれか１項に記載のシステム。
【請求項２０】
特に請求項１から請求項１１のいずれか１項に記載の方法を実施するための及び／又は請求項１２から請求項１９のいずれか１項に記載のシステムを使用するための試験フレームの使用であって、
技術的コンピュータ環境におけるツールキット、特に暗号化ツールキットの性能特性を確立する、
ことを特徴とする使用。
【請求項２１】
前記技術的コンピュータ環境の作動中に導入される更に別のツールキットが、前記ツールキットを選択する時に考慮されることを特徴とする請求項２０に記載の使用。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ツールキット、好ましくは暗号化ツールキットを選択する方法、ツールキットを選択するためのシステム、及びこのための試験フレームの使用に関する。
【背景技術】
【０００２】
多くのツールキット、特に暗号化ツールキットは、市販されているが、それらを互いに比較することは実際的には不可能であることが一般的に公知である。ツールキット製品説明書からは、これらの暗号化アルゴリズムが異なり、証明書管理及び楕円関数暗号化を部分的に可能にするだけであることが分かる。従来のツールキットはまた、異なるオペレーティングシステムに対しても提供されている。しかし、それぞれの製品説明書では、ツールキットによってどのいわゆる性能値が提供されるかを示すものは全く見出すことができない。この点については、例えば暗号化ツールキットがどのくらい速くデータを暗号化することができるか、それに必要とされるメモリ量はどのくらいか、又は暗号化のために利用されるメモリの容量がどのくらいかを知ることは興味深いことである。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従って、本発明の目的は、ツールキットを選択する方法及びシステム、そして、その使用を提供し、これによりそれぞれのツールキットの比較可能性を与えることにある。
【課題を解決するための手段】
【０００４】
この目的は、請求項１の特徴による方法、請求項１２の特徴による装置、及び請求項２０の特徴による使用によって解決される。
【０００５】
本出願によると、複数のツールキットに対して性能特性を確立する試験フレームが提供される。使用するツールキットの選択は、性能特性に対して確立されたパラメータに基づいて判断される。このようにして、複数のツールキットが利用可能であるそれぞれの技術的コンピュータ環境では、試験フレームを実施することにより、性能特性に対して確立されたパラメータを予め選択することに基づいてユーザに最も適するツールキットを選択するステップがとられる。それぞれのツールキットの性能特性を確立する試験フレームを実施することにより、たとえ、ツールキット（Ａ）が、例えば少量のデータを暗号化する時に最も速く、一方、ツールキット（Ｂ）が、逆に例えば多量のデータを暗号化する時の方が実質的に速い場合でもツールキット（Ａ）と（Ｂ）の間で選択することができる。比較可能性と、そしてこれに関連する複数のツールキットから一つのツールキットを選択する可能性により、技術的コンピュータ環境のシステム全体の性能が高められる。本出願によれば、複数のツールキットの性能特性を確立する時には、例えば、暗号化時間のみならず、例えば、メモリ要件又は利用される主メモリの容量も判断基準として使用される。
【０００６】
本出願の目的の更に別の有利な実施形態は、従属請求項の内容を形成している。
ハード及びソフトウエアの両方を確立する時に、ツールキットの本出願による選択は、有利な態様においては、技術的コンピュータ環境における特殊な構成だけでなく、システム全体の性能機能を考慮し、従ってそれを高めることができる。
【０００７】
有利な態様においては、確立されるパラメータは、少なくとも１つのラッパーにより、複数のツールキットの機能又は機能性に従って判断される。従って、ラッパーは、特定の機能性、例えばツールキットの機能を封入する構成要素と見なすものとする。また、有利な態様においては、各ツールキットに対して特定の機能性を封入することができるように特定のラッパーを各ツールキットに準備することができ、従って、必要であれば比較可能性を標準化することができるようになってきた。プラットホーム依存型ラッパーが付加的な導入された場合、本出願によれば、異なるプラットホームを作動させることができ、ここでのプラットホームは、設けられたハードウエアを含むオペレーティングシステムと見なすものとする。従って、適用可能性をこのようにして高めることができる。
【０００８】
有利な態様においては、ツールキットは、パラメータの統計的評価に基づいて判断される。このツールキット判断では、統計値を考察する時は、特に基本的事項を考察し、すなわち、反復計算法に基づいて、最大値、最小値、分散、及び算術平均を考察する。
【０００９】
ツールキットを判断する更に別の有利な可能性は、パラメータのアルゴリズム的評価に基づいて実施され、それによってそれぞれのツールキットの予測を生成することができ、統計的評価をシステム及び環境データに依然としてアルゴリズム的にリンクさせてこれらを用いて要約することが可能である。
【００１０】
更に、ツールキットが自己学習的質問に基づいて判断される場合、ツール選択法は、技術的コンピュータ環境の作動中に最適化されることになり、従って、絶えず異なる要件要素が考慮されることになる。
【００１１】
ツールキットが動的に判断された場合、すなわち、例えばツールキットが技術的コンピュータ環境において判断され、従って選択された場合に、例えばツールキットに変更を行って拡張し、及び／又は変更した時に、例えば判断又は選択されたツールキットを再度検査し、従って、そのために最初からシステム全体を考察し直すことなく再確立して選択することができることは有利であることも判明している。
【００１２】
対称暗号化、対称暗号解読、ハッシュ法及び／又は乱数発生に対する性能特性は、ツールキットに対する有利な暗号化法として確立されている。一方、同じく有利な態様においては、性能特性は、非対称暗号化及び／又は署名に対して確立されていた。
【００１３】
試験フレームが、所定のインタフェース又はツールキット非依存型インタフェースを通じてラッパーと通信するだけであり、一方、このラッパーが、所定のインタフェース又はツールキット非依存型インタフェースをツールキット特定のインタフェースに変換することは有利な更に別の展開であることが判明している。このようにして、ラッパーと試験フレームによる性能特性の確立との間の明確な分離も保証される。更に、ラッパーはまた、従って性能特性分析とは独立に使用することができる。
【００１４】
ここで、確立した性能特性がいつでも利用可能であるように、判断されたパラメータを格納するための手段が設けられることは有利であることが判明している。
更に別の有利な実施形態は、更に別の従属請求項の内容を形成している。
【発明を実施するための最良の形態】
【００１５】
本出願の内容を添付図面を使用して有利な実施形態によって説明する。
図１においては、複数のツールキット（Ａ）、（Ｂ）、（Ｃ）に対して性能特性を確立するための試験フレーム１と、アプリケーションプログラムに組み込むこともできるが別々に示すセレクタ５を有するアプリケーションプログラム３とを備えた技術的コンピュータ環境の本出願によるシステムのアーキテクチャが設けられている。セレクタを備えたアプリケーションプログラムは、性能特性又は確立された性能特性に対するパラメータに基づいてツールキットを選択し、選択されたツールキットを使用する。また、対応するインタフェース７ａ及び７ｂは、灰色区域で示されており、インタフェース７ｂは、必ずしも必要とは限らず、セレクタが別途にアプリケーションプログラムに設けられた場合に限られる。図１に示す実施形態では、インタフェース７ａを通じてアプリケーションプログラム又はアプリケーションプログラムと試験フレーム１に対するセレクタと通信する各ツールキットに対するいわゆるラッパーが示されている。明確に見ることができるように、試験フレーム１は、それが性能特性を確立するのみであり、しかし、いかなる評価も行わず、また、性能特性に基づいてツールキットを選択することもしないように設けられている。
【００１６】
例えば、以下の値、例えば、精度、処理速度、ＣＰＵ容量の利用度、統計的ＲＡＭ、動的ＲＡＭ、電力消費量、スレッド、ハンドル、及び処理の数は、ツールキット特定の性能特性の一部を成すことができる。統計的評価の枠組み内では、これらのツールキットデータは、ｎ回求められることが好ましく、これは、サイクルを使用してユーザが設定することができる。それによって最小値、最大値、算術平均、及び分散のようなその後の統計値が得られる。ツールキットを判断するために、次に、これらの値の結果は、性能特性に関する確立パラメータとして使用される。試験フレーム１は、ツールキット非依存型インタフェースを通じてラッパーと通信し、ラッパーは、この独立したインタフェースをツールキット特定のインタフェースに変換する。この段階により、性能特性の確立されたパラメータが、特定のアプリケーション関連で準備されることが可能になり、従って、それぞれのツールキット間の比較可能性も利用可能である。ツールキット非依存型インタフェースの存在は、実際に使用されているか又は選択された各ツールキットがアプリケーションプログラムに対して完全に透明状態に維持されることを意味する。ツールキット特定のデータは、ラッパーによって隠される。
【００１７】
図２は、「ハッシュ機能」に関する性能特性を確立する手順に対する応用例を示している。ここで、ラッパーとは独立に性能特性を計算することができることを明確にするために、指定されたツールキット特定のラッパーオブジェクトがないことに注意されたい。アプリケーションプログラムの主要部分でいくつの個々の値から性能特性の統計結果が計算されるかを判断した後に、性能特性を格納する更に別の手段が設けられる。図２によれば、「ＧｅｔＰｅｒｆｏｒｍａｎｃｅ」方法が試験フレーム内で選択され、それによって性能データを格納するための手段によって利用可能にされるファイル名とサイクル数とが与えられる。ここで示す方法及び質問では、第１の出力パラメータにおいて機械特定の性能特性が得られ、第２の出力パラメータにおいてツールキット特定の性能特性が得られる。
【００１８】
試験フレームにおいて、上述の方法は、「ラッパー」という分類の下で実施される。試験フレームにより、性能特性を確立するためのプラットホーム又はオペレーティングシステム依存型「ＷｉｎｄｏｗｓＰｅｒｆｏｒｍａｎｃｅ」オブジェクトが生成される。サイクル数、試験データファイル名、及び個々の値を格納するファイルの名前が、「ＷｉｎｄｏｗｓＰｅｒｆｏｒｍａｎｃｅ」によって与えられる。次に、機械特定の性能特性が確立される。次に、「ハッシュ機能」に関する性能特性を計算する「ハッシュ性能」方法が選択される。更に、暗号化、暗号解読、及び乱数発生に関する性能特性を確立する「ＥｎｃｒｙｐｔＰｅｒｆｏｒｍａｎｃｅ」、「ＤｅｃｒｙｐｔＰｅｒｆｏｒｍａｎｃｅ」、及び「ＲＮＤＰｅｒｆｏｒｍａｎｃｅ」方法が存在する。これらは、図２では示されていない。性能方法は、以下の方法によって構造化される。この実施形態に従って実施される作動の全てを通過するループが存在する。このループでは、最初に、暗号アルゴリズムの精度を検査する。精度試験が不合格となった場合、これらの作動に対して性能特性は計算されない。精度試験に合格となった場合、ツールキット特定の性能特性は正しく設定されている。この後、「ＨａｓｈＨａｎｄｌｅ」を生成する。「ＨａｓｈＨａｎｄｌｅ」は、このループ内のハッシュ機能の全てに対して使用される。これは、ループの終りでのみ削除される。この後、「Ｐｅｒｆｏｒｍａｎｃｅ−Ｓｔａｒｔ」方法を選択する。それによって性能特性の確立が開始される。「ＷｉｎｄｏｗｓＰｅｒｆｏｒｍａｎｃｅ」オブジェクトは、最初に、コンピュータが「Ａｃｃｕ」で実行されている時に、「ＣａｌｃＢａｔｔｅｒｙＰｏｗｅｒ」方法で例えばバッテリの現在の「Ａｃｃｕ」ステータスを質問する。次に、「ＴｉｍｅＳｔａｒｔ」方法の力を借りて時間測定を開始する。明確なスレッドである「ＷｉｎｄｏｗｓＰｅｒｆｏｒｍａｎｃｅＴｈｒｅａｄ」は、ハッシュ法と同時に主メモリ利用容量及びメモリ要件のような残りのツールキット特定の性能特性を確立する。これは、「Ｓｔａｒｔ」方法で生成される。多くの暗号機能は、それらが「ＰｅｒｆｏｒｍａｎｃｅＴｈｒｅａｄ」を開始する時間がないことを部分的に可能にするほど非常に速いので、その時に初めてハッシュ法が開始される。
【００１９】
これに対しては、適切な形でツールキットに渡される３つの方法選択が必要である。「ＨａｓｈＣｒｅａｔｅ」方法は、「ＨａｓｈＨａｎｄｌｅ」を初期化し、「ＨａｓｈＤａｔａ」方法は、ハッシュ法を実施し、「ＨａｓｈＦｉｎａｌｉｚｅ」方法は、ハッシュ法を終了してハッシュ値を提供する。「ＨａｓｈＦｉｎａｌｉｚｅ」方法が戻った直後に、「ＰｅｒｆｏｒｍａｎｃｅＴｈｒｅａｄ」が停止される。「ＰｅｒｆｏｒｍａｎｃｅＴｈｒｅａｄ」によってまだ全ての性能特性が確立されていない場合、主スレッドは、それを待たなければならない。時間測定も休止される。ループがサイクル数の回数を通じて実施され、かつ性能特性が全てのデータ値に対して外側ループで確立された時にのみ、「ＨａｓｈＨａｎｄｌｅ」が削除され、統計値が計算される。「ＣａｌｃＣｈａｒａｃｔＳｔａｔｉｓｔｉｃｓ」方法により、現在の作動の性能特性の最小値、最大値、平均値、及び分散が計算され、それらが初期パラメータとして格納される。「ＷｒｉｔｅＬｏｇＦｉｌｅ」方法により、現在の作動に対する個々の値の全てが指定されたファイルに書き込まれる。全ての作動に対して性能特性を確立することができる時にのみ、性能特性が試験フレームによって放出される。
【００２０】
要約すれば、本出願により、ツールキット、好ましくは暗号化ツールキットの性能特性を確立する試験フレームを提供することが提案されたことに留意すべきである。計算された性能特性に基づいて、暗号機能を最も良好に実施するツールキットを選択することが可能であるはずである。これに対しては、以下の手法が選択される。
１．ツールキットを分析する。
２．性能特性を定める。
３．「基本インフラストラクチャ」とツールキットの間のインタフェースを定める。
４．「ｃｒｙｐｔｌｉｂ」ツールキットに対してラッパーを実装する。
５．「ウィンドウズ」オペレーティングシステムに対して試験フレームを提供する。
６．試験フレーム及びラッパーを更に別のオペレーティングシステムに移植する。
【００２１】
第１の段階では、異なる製造業者によって作られた異なる暗号化ツールキットを分析する。ＡＥＳ、トリプルＤＥＳ、及びＲＳＡのような一般的に使用されるアルゴリズムは、全ての分析されるツールキットによって提供されている。証明書管理及び異なるオペレーティングシステム上で実行する機能は、全てのツールキットによって可能にされるわけではない。
【００２２】
この後で、ツールキットに対して性能特性が定められる。オペレーティングシステムの形式及びプロセッサの形式のような機械特定の性能特性は、アルゴリズム選択中は同じままである。しかし、ＣＰＵ利用容量のようなツールキット特定の性能特性は、毎回の選択で変化する。
【００２３】
次の段階では、「基本インフラストラクチャ」とラッパーの間にインタフェースが設けられる。次に、ツールキットに対するプラットホームとは独立にラッパーが作成され、それによってこのインタフェースの本質的な部分が実施される。
【００２４】
次に、暗号化ツールキットの性能特性を確立する「ウィンドウズ」オペレーティングシステムに対する試験フレームが作成される。試験フレームは、主としてプラットホームとは独立に実施される。性能特性に関するハードウエア特定の情報のみが、オペレーティングシステムに依存して確立される。
【００２５】
試験フレームは、性能特性を確立し、複数のツールキットに対して性能特性のパラメータを計算する。これらの性能特性及び性能特性のパラメータは、例えば、これに基づいて最高の性能を有する固定したモード、暗号化、及びブロック長を備えた特定アルゴリズムを提供するためにセレクタに対して利用可能にされる。ツールキット「ｙ」が、ツールキット「ｘ」よりもかなり高い性能で多量のデータを暗号化し、一方、少量のデータに対しては、ツールキット「ｘ」がツールキット「ｙ」よりも高い性能で暗号化することができることが勿論可能である。ここでは、暗号化時間ばかりでなく、メモリ要件又は主メモリの利用容量も判断基準である。ツールキット「ｚ」は、アルゴリズム「ａ」とモード「ｂ」で暗号化することによって最良に短くすることができ、一方、ツールキット「ｆ」は、同じアルゴリズム「（ａ）」であるが別のモード「ｃ」で暗号化した時により良好である。
【図面の簡単な説明】
【００２６】
【図１】本出願によるシステムのアーキテクチャの概略図である。
【図２】好ましい実施形態の性能特性を確立するための流れ図である。
【符号の説明】
【００２７】
１  試験フレーム
３  アプリケーションプログラム
５  セレクタ
７ａ、７ｂ  インタフェース
【図１】
2007213585.tif 000003
【図２】
2007213585.tif 000004