(57)【要約】      （修正有）【課題】  ソフトウェアＩＰを利用した実行形式ファイルの作成用ライセンスと、実行用ライセンスとを個別に発行し、個別に制限を加える。【解決手段】  作成ライセンスを有するユーザ端末において、作成用ライセンスファイルとライセンスチェックプログラムを用いて、ソフトウェアＩＰを含んだライブラリファイルを使用した実行形式ファイルに、前記第１のライセンスファイルから所定の情報を転写したライセンス証明情報を書き込む。実行ライセンスを有するユーザ端末において、予め実行形式ファイルに組み込まれた第２のライセンス管理手段が、前記ライセンス証明情報と実行用ライセンスファイルとを照合し、権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持する。各ソフトウェアＩＰの実行時に、組み込まれた個別ライセンス管理部が、第２のライセンス管理手段に保持された固有ＩＤに基づいてソフトウェアＩＰ毎の権限管理を行う。【選択図】            図５
2006350449.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ固有ＩＤが与えられたソフトウェアＩＰを含んだライブラリファイルを用いて生成される実行形式ファイルであって、
前記ソフトウェアＩＰ毎に付与される固有ＩＤを含む第１のライセンスファイルにより実行形式ファイルの作成権限を検証する第１のライセンスチェックを実行するライセンスチェックプログラムにより、前記第１のライセンスチェックが成功したことを条件に、前記ライブラリファイルを使用した前記第１のライセンスファイルから所定の情報を転写して書き込まれるライセンス証明情報と、
前記実行形式ファイルの実行時に起動され、予め配布された第２のライセンスファイルと、前記ライセンス証明情報とを照合する第２のライセンスチェックを実行し、ライセンス権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持するライセンス情報管理部と、
前記実行形式ファイルに含まれる各ソフトウェアＩＰの実行時に起動され、前記ライセンス情報管理部に、対応する固有ＩＤが保持されているか否かを確認する第３のライセンスチェックを実行し、ソフトウェアＩＰ毎の権限管理を行う個別ライセンス管理部と、を含み、コンピュータに、前記ライセンス情報管理部及び個別ライセンス管理部を構成し動作させること、
を特徴とする実行形式ファイル。
【請求項２】
前記第２のライセンスファイルは、実行形式ファイルの作成用のライセンスであるか、実行形式ファイルの実行用のライセンスであるかを示すライセンスフラグを含み、
前記第２のライセンスチェックにおいて、前記ライセンス情報管理部が、前記ライセンスフラグの値を参照して、該実行ファイルの実行権限を確認すること、
を特徴とする請求項１に記載の実行形式ファイル。
【請求項３】
前記ライセンス証明情報と、第２のライセンスファイルは、それぞれライセンスが与えられた期間情報を含み、
前記ライセンス情報管理部は、前記第２のライセンスチェックにおいて前記期間情報が重複する範囲で、保持対象のソフトウェアＩＰの固有ＩＤを選択すること、
を特徴とする請求項１又は２に記載の実行形式ファイル。
【請求項４】
前記ライセンス証明情報と、第２のライセンスファイルは、それぞれライセンスが与えられたマシン情報を含み、
前記ライセンス情報管理部は、前記マシン情報が重複する範囲で、保持対象のソフトウェアＩＰの固有ＩＤを選択すること、
を特徴とする請求項１乃至３いずれか一に記載の実行形式ファイル。
【請求項５】
ソフトウェアＩＰ毎に付与される固有ＩＤに基づいてライセンス管理を行う個別ライセンス管理部が組み込まれたソフトウェアＩＰと、コンピュータプログラムで構成されたライセンス情報管理部と、を含んだライブラリファイルであって、
前記ライセンス情報管理部を実行形式ファイルに組み込むことによって、前記実行形式ファイルの実行時に前記ライセンス情報管理部を起動させ、予め配布されたライセンスファイルと、第１のライセンスチェックを実行するライセンスチェックプログラムにより書き込まれるライセンス証明情報とを照合する第２のライセンスチェックを前記実行形式ファイルが起動されたコンピュータにおいて実行させ、ライセンス権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持させるとともに、
前記コンピュータにおける前記実行形式ファイルに含まれる各ソフトウェアＩＰの実行時に前記個別ライセンス管理部が起動され、前記ライセンス情報管理部に、対応する固有ＩＤが保持されているか否かを確認する第３のライセンスチェックを実行し、ソフトウェアＩＰ毎の権限管理を実行可能であること、
を特徴とするライブラリファイル。
【請求項６】
前記ライセンス証明情報と、第２のライセンスファイルは、それぞれライセンスが与えられた期間情報を含み、
前記ライセンス情報管理部は、前記第２のライセンスチェックにおいて前記期間情報が重複する範囲で、保持対象のソフトウェアＩＰの固有ＩＤを選択すること、
を特徴とする請求項５に記載のライブラリファイル。
【請求項７】
前記ライセンス証明情報と、第２のライセンスファイルは、それぞれライセンスが与えられたマシン情報を含み、
前記ライセンス情報管理部は、前記マシン情報が重複する範囲で、保持対象のソフトウェアＩＰの固有ＩＤを選択すること、
を特徴とする請求項５又は６に記載のライブラリファイル。
【請求項８】
実行形式ファイルの実行時に起動され、予め配布された第２のライセンスファイルと、前記ライセンス証明情報とを照合する第２のライセンスチェックを実行し、ライセンス権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持するライセンス情報管理部と、
前記実行形式ファイルに含まれる各ソフトウェアＩＰの実行時に起動され、前記ライセンス情報管理部に、対応する固有ＩＤが保持されているか否かを確認する第３のライセンスチェックを実行し、ソフトウェアＩＰ毎の権限管理を行う個別ライセンス管理部と、を含んだ実行形式ファイルを保持するコンピュータに実行させるコンピュータプログラムであって、
予め配布された第１のライセンスファイルの正当性を検証する第１のライセンスチェックを実行する処理と、
前記第１のライセンスチェックが成功したことを条件に、前記ライブラリファイルを使用した実行形式ファイルに、前記第１のライセンスファイルから所定の情報を転写したライセンス証明情報を書き込む処理と、
を実行させるライセンスチェックプログラム。
【請求項９】
前記第１のライセンスファイルは、実行形式ファイルの作成用のライセンスであるか、実行形式ファイルの実行用のライセンスであるかを示すライセンスフラグを含み、
前記第１のライセンスファイルの正当性の検証処理において、少なくとも前記ライセンスフラグの値を参照して、該実行形式ファイルの作成権限を確認するようコンピュータを動作させること、
を特徴とする請求項８に記載のライセンスチェックプログラム。
【請求項１０】
請求項１乃至３いずれか一に記載の実行形式ファイルに含まれるライセンス情報管理部を構成するコンピュータプログラムであって、
前記実行形式ファイルに書き込まれたライセンス証明情報と、各ソフトウェアＩＰに与えられた固有ＩＤを含む第２のライセンスファイルとを照合し、権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持する処理を、前記実行形式ファイルが実行されるコンピュータにおいて実行し、
前記実行形式ファイルに含まれるソフトウェアＩＰに組み込まれた個別ライセンス管理部による、前記保持した固有ＩＤに基づいたソフトウェアＩＰ毎の権限管理を実行可能としたこと、
を特徴とするライセンス情報管理プログラム。
【請求項１１】
前記第２のライセンスファイルは、実行形式ファイルの作成用のライセンスであるか、実行形式ファイルの実行用のライセンスであるかを示すライセンスフラグを含み、
前記ライセンスフラグの値を参照し、該実行ファイルの実行権限を確認してから、前記固有ＩＤの保持処理を実行すること、
を特徴とする請求項１０に記載のライセンス情報管理プログラム。
【請求項１２】
前記ライセンス証明情報と第２のライセンスファイルは、それぞれライセンスが与えられた期間情報を含み、
前記ライセンス証明情報と第２のライセンスファイルを照合した結果、前記期間情報が重複し、かつ、前記ライセンス証明情報と第２のライセンスファイルの双方に書き込まれた固有ＩＤを選択し、所定の場所に書き込むこと、
を特徴とする請求項１０又は１１に記載のライセンス情報管理プログラム。
【請求項１３】
前記ライセンス証明情報と第２のライセンスファイルは、それぞれライセンスが与えられたマシン情報を含み、
前記ライセンス証明情報と第２のライセンスファイルを照合した結果、前記マシン情報が重複し、かつ、前記ライセンス証明情報と第２のライセンスファイルの双方に書き込まれた固有ＩＤを選択し、所定の場所に書き込むこと、
を特徴とする請求項１０乃至１２いずれか一に記載のライセンス情報管理プログラム。
【請求項１４】
少なくとも２種以上のライセンスを用いて行うソフトウェアＩＰのライセンス管理方法であって、
ライセンス情報管理部が組み込まれてコンパイルされた実行形式ファイルを保持する端末が、予め配布された第１のライセンスファイルの正当性を検証する第１のライセンスチェックを実行し、前記第１のライセンスチェックに成功したことを条件に、前記実行形式ファイルに、前記第１のライセンスファイルから所定の情報を転写したライセンス証明情報を書き込む工程と、
前記実行形式ファイルの実行時に、前記ライセンス情報管理部が起動され、予め配布された第２のライセンスファイルと、前記ライセンス証明情報とを照合する第２のライセンスチェックを実行し、ライセンス権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持する工程と、
前記実行形式ファイルに含まれる各ソフトウェアＩＰの実行時に、前記ソフトウェアＩＰに予め組み込まれた個別ライセンス管理部が、前記ライセンス情報管理部に、対応する固有ＩＤが保持されているか否かを確認する第３のライセンスチェックを実行し、ソフトウェアＩＰ単位の権限管理を行う工程と、を含むこと、
を特徴とするソフトウェアＩＰのライセンス管理方法。
【請求項１５】
前記第１、第２のライセンスファイルは、実行形式ファイルの作成用のライセンスであるか、実行形式ファイルの実行用のライセンスであるかを示すライセンスフラグを含む共通フォームからなり、
前記端末は、前記第１のライセンスチェックにおいて、前記ライセンスフラグの値を参照して、該実行ファイルの作成権限を確認すること、
を特徴とする請求項１４に記載のソフトウェアＩＰのライセンス管理方法。
【請求項１６】
前記ライセンス証明情報と、第２のライセンスファイルは、それぞれライセンスが与えられた期間情報を含み、
前記ライセンス情報管理部は、前記第２のライセンスチェックにおいて前記期間情報が重複する範囲で、保持対象のソフトウェアＩＰの固有ＩＤを選択すること、
を特徴とする請求項１４又は１５に記載のソフトウェアＩＰのライセンス管理方法。
【請求項１７】
前記ライセンス証明情報と、第２のライセンスファイルは、それぞれライセンスが与えられたマシン情報を含み、
前記ライセンス情報管理部は、前記マシン情報が重複する範囲で、保持対象のソフトウェアＩＰの固有ＩＤを選択すること、
を特徴とする請求項１４乃至１６いずれか一に記載のソフトウェアＩＰのライセンス管理方法。
【請求項１８】
請求項５乃至７いずれか一に記載のライブラリファイルと、予め配布された第１のライセンスファイルの正当性を検証する第１のライセンスチェックを実行し、前記第１のライセンスチェックに成功したことを条件に、前記実行形式ファイルに、前記第１のライセンスファイルから所定の情報を転写したライセンス証明情報を書き込むライセンスチェックプログラムと、を用いて、
請求項１乃至４いずれか一に記載の実行形式ファイルを生成する手段を備えたこと、を特徴とするソフトウェア開発装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ライブラリファイルとして配布されたソフトウェア関連知的資産（以下、ソフトウェアＩＰといい、ソフトウェアを作成する上で有用な情報、機能、技術が含まれる資産を指す。）のライセンス管理方法、装置、及び、プログラムに関する。
【背景技術】
【０００２】
ソフトウェアＩＰをライブラリファイルとして作成、及び、ユーザに配布する際のライセンス管理システムとして、ＧＬＯＢＥｔｒｏｔｔｅｒ  Ｓｏｆｔｗａｒｅ社の提供するＦｌｅｘＬＭ（登録商標）が良く知られている。
【０００３】
また特許文献では、特開２０００−２９３３６３号公報記載のものがある。図１０は、同公報に記載されたロードモジュール生成装置の構成を表したブロック図である。同公報によれば、ソフトウェアＩＰ提供者は、各種ソフトウェアツールＡ〜Ｃとライセンス有無データベースＸ１０とを用意するものとし、ユーザは、各種ソフトウェアツールＡ〜Ｃからライブラリを選択してリンカＸ２０を用いて、ロードモジュールＸ３０を作成可能となっている。その際に、リンカＸ２０のライセンス有無判断部Ｘ２２がライセンス有無データベースＸ１０へ問い合わせを行い、その判断結果をメッセージ表示機能部Ｘ２３に表示する構成が開示されている。
【０００４】
【特許文献１】特開２０００−２９３３６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来の枠組みでは、ユーザが前記ソフトウェアＩＰを利用した実行形式ファイルを作成すること、あるいは、作成した実行ファイルを配布することに対して制限を加えることができないという問題点がある。特に、特定のソフトウェアＩＰの中には、各用途に使いまわしの効く関数やクラスといった機能ブロックが含まれており、これらを他の目的のために流用することに対して規制を行うことができないのが現状である。例えば、上述したＦｌｅｘＬＭ等では、指定したプログラムの実行時に、ライセンスのチェックが行われる方式であるため、ソフトウェアＩＰを含むライブラリ等を使用した実行形式ファイルの作成に対しては制限が及ばないこととなる。
【０００６】
また、特許文献１の方法では、専用のリンカを使用し、その内部でライセンスのチェックを行うものであるため、既存の開発環境（コンパイラ、リンカ）と連携を取ることが難しいという問題点がある（それ故に、上述したＦｌｅｘＬＭ等が広く普及しているとも考えられる。）。また、市販の開発環境（コンパイラ、リンカ）に組み込まれたリンカを入れ替えることは、一般に困難である。
【０００７】
また、特許文献１に記載されたような特殊な開発環境を用意せずとも、ソフトウェアＩＰを利用した開発行為について何らかの制限を加えることができれば、有用なソフトウェアＩＰの価値を一層高めることが可能となる。
【課題を解決するための手段】
【０００８】
本発明の第１の視点によれば、ライブラリ提供装置の提供するライブラリファイル及びライセンスチェックプログラムを用い、コンピュータに後記するライセンス情報管理部及び個別ライセンス管理部を構成し動作させることによって行うソフトウェアＩＰのライセンス管理方法が提供される。この方法によれば、まず、ライセンス情報管理部が組み込まれてコンパイルされた実行形式ファイルを保持する端末が、予め配布された第１のライセンスファイルの正当性を検証する第１のライセンスチェックを実行し、前記第１のライセンスチェックに成功したことを条件に、前記実行形式ファイルに、前記第１のライセンスファイルから所定の情報を転写したライセンス証明情報を書き込む工程が行われる。続く前記実行形式ファイルの実行時に、前記ライセンス情報管理部が起動され、予め配布された第２のライセンスファイルと、前記ライセンス証明情報とを照合する第２のライセンスチェックを実行し、ライセンス権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持する工程が行われる。更に、前記実行形式ファイルに含まれる各ソフトウェアＩＰの実行時に、前記ソフトウェアＩＰに予め組み込まれた個別ライセンス管理部が、前記ライセンス情報管理部に、対応する固有ＩＤが保持されているか否かを確認する第３のライセンスチェックを実行し、ソフトウェアＩＰ単位の権限管理を行う工程が行われる。
【０００９】
また、本発明の第２の視点によれば、前記ソフトウェアＩＰ毎に付与される固有ＩＤを含む第１のライセンスファイルにより実行形式ファイルの作成権限を検証する第１のライセンスチェックを実行するライセンスチェックプログラムにより、前記第１のライセンスチェックが成功したことを条件に、前記ライブラリファイルを使用した前記第１のライセンスファイルから所定の情報を転写して書き込まれるライセンス証明情報と、前記実行形式ファイルの実行時に起動され、予め配布された第２のライセンスファイルと、前記ライセンス証明情報とを照合する第２のライセンスチェックを実行し、ライセンス権限の重複する範囲で各ソフトウェアＩＰの固有ＩＤを保持するライセンス情報管理部と、前記実行形式ファイルに含まれる各ソフトウェアＩＰの実行時に起動され、前記ライセンス情報管理部に、対応する固有ＩＤが保持されているか否かを確認する第３のライセンスチェックを実行し、ソフトウェアＩＰ毎の権限管理を行う個別ライセンス管理部と、を含み、コンピュータに、前記ライセンス情報管理部及び個別ライセンス管理部を構成し動作させることによって、上記したライセンス管理方法を実施することのできる実行形式ファイルが提供される。
【００１０】
また、本発明の第３の視点によれば、上記した実行形式ファイルを作成するための装置及びコンピュータプログラムが提供される。
【発明の効果】
【００１１】
本発明によれば、ソフトウェアＩＰを利用した実行形式ファイルを使用するためのライセンスとは別の権限を持つライセンス、例えば、実行形式ファイルを作成するためのライセンスを発行し、各行為に対して個別に制限を加えることが可能となる。
【発明を実施するための最良の形態】
【００１２】
続いて、本発明を実施するための最良の形態について図面を参照して詳細に説明する。図１は、本発明の一実施形態のシステム構成を表したブロック図である。図１を参照すると、本実施形態に係るライセンス管理システム２１０と、複数のユーザ端末２２０、２３０とから構成されている。以下、ユーザ端末２２０は、実行形式ファイルを作成するライセンスを有し、他のユーザに対して実行ファイルを提供可能なユーザの端末であり、ユーザ端末２３０は、実行形式ファイルを使用（実行）するライセンスのみを有するユーザの端末であるものとして説明する。
【００１３】
ライセンス管理システム２１０は、ソフトウェアＩＰ２０、ライセンス情報管理部３０を含んだライブラリファイル（バイナリファイル）１０と、作成用ライセンスファイル４０と、実行用ライセンスファイル１００と、ライセンスチェックプログラム５０と、を含んで構成されている。
【００１４】
ライセンス情報管理部３０は、ライブラリファイルと共に配布され、コンパイル時に実行形式ファイルに埋め込まれ、作成用ライセンス情報（ライセンス証明情報）９０と実行用ライセンスファイル１００との照合処理や各ソフトウェアＩＰ２０に含まれるチェック手段（個別ライセンス管理部）からの固有ＩＤの問い合わせに応じる処理を行う処理手段である。このライセンス情報管理部３０としては、上述したＦｌｅｘＬＭ（登録商標）等の一般的なライセンス管理システムの技術を用いることができる。
【００１５】
作成用ライセンスファイル４０は、ソフトウェアＩＰ提供者から実行形式ファイルを作成するユーザに対して提供されるものであり、実行用ライセンスファイル１００は、ソフトウェアＩＰ提供者から実行形式ファイルを使用（実行）するユーザに対して提供されるものである。いずれのライセンスファイルも、通信回線による伝送、記録済み記録媒体の送付等任意の手段を介してユーザ端末２２０、２３０に提供される。
【００１６】
ライセンスチェックプログラム５０は、実行形式ファイルを作成したユーザ端末側２２０から起動されるプログラムであって、作成用ライセンスのチェック（第１のライセンスチェック）を行い、実行形式ファイルに作成用ライセンス情報を埋め込む処理を実行する。
【００１７】
ユーザ端末２２０は、実行形式ファイルを作成するコンパイラ、リンカ７０を備えている。ライセンス管理システム２１０から任意の手段により提供されるライブラリファイル１０と、ユーザが記述したソースファイル６０とを入力として、ライセンス情報管理部３０と作成用ライセンス情報（ライセンス証明情報）９０を含んだ実行形式ファイル８０を生成可能となっている。
【００１８】
ユーザ端末２３０は、ユーザ端末２２０から任意の手段により実行形式ファイル８０の提供を受ける。ユーザ端末２３０は、実行形式ファイル８０に書き込まれたライセンス情報管理部３０により、実行用ライセンスの正当性の確認を受けることが可能となっている。
【００１９】
図２は、ソフトウェアＩＰ２０の構成を表した図である。図２を参照すると、ソフトウェアＩＰ２０は、動作記述等があるソフトウェアＩＰ本体２３に加えて、ソフトウェアＩＰ２０毎に割り当てられる固有ＩＤ２１と、ソフトウェアＩＰの動作時に起動され、ライセンス情報管理部３０に対して自己の固有ＩＤ２１が正しくライセンスを受けたものであるか否かの問い合わせを行うチェック手段（個別ライセンス管理部）２２とを含んで構成される。
【００２０】
図３は、作成用及び実行用のライセンスファイルの構成を表した図である。ライセンスファイルは、ライセンスＩＤ２５、ライセンス期限２６、マシン固有情報２７、使用を許可するソフトウェアＩＰの固有ＩＤ２８、作成用／実行用ライセンスフラグ２９を含んで構成される。作成用ライセンスファイル４０と実行用ライセンスファイル１００は、作成用／実行用ライセンスフラグ２９の値で区別される。
【００２１】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図４は、ソフトウェアＩＰ提供者が、ライセンス管理システム２１０にライブラリファイル１０を登録する際の手順を表したフローチャートである。図４を参照すると、ソフトウェアＩＰ提供者からの要求に応じてライセンス管理システム２１０が、個々のソフトウェアＩＰ本体２３に固有ＩＤ２１を割り当てる（ステップＳ１０）。
【００２２】
続いて、ライセンス管理システム２１０は、ソフトウェアＩＰ本体２３の実行コード中に、ライセンス情報管理部３０に対し固有ＩＤ２１に対応するライセンスが付与されているか否かを確認するライセンス情報管理部へのチェック手段（個別ライセンス管理部）２２を追加する（ステップＳ１１）。また、その際に、前記チェックの結果、固有ＩＤ２１に対応するライセンスが付与されていないことを示す場合（ＮＧ）には、ソフトウェアＩＰ２０の動作に制限が掛かるようにコーディングが行われる。なお、このソフトウェアＩＰ２０の動作の制限（無効化）は、例えば、使用するアルゴリズムが動作しないように内部フラグを立てる、データを埋め込む等の手法により実現できる。
【００２３】
続いて、前記ステップＳ１０、Ｓ１１にて作成された配布用のソフトウェアＩＰ２０と、ライセンス情報管理部３０により、ライブラリファイル１０が作成・登録され、ユーザからの要求に応じて、提供が開始される（ステップＳ１２）。
【００２４】
図５は、実行形式ファイルを作成するライセンスを有するユーザが、ライブラリファイル１０を利用して実行形式ファイルを作成する際の手順を表したフローチャートである。図５を参照すると、まず、ユーザ端末２２０において、ライブラリファイル１０の中にあるソフトウェアＩＰ２０を選択し、ソフトウェアＩＰ２０を使用したユーザ記述ソースファイル６０のコーディングが行われる（ステップＳ２０）。
【００２５】
続いて、コンパイラ、リンカ７０を用いて、前記したユーザ記述ソースファイル６０とライブラリファイルとから実行形式ファイル８０ａが作成される（ステップＳ２１）。実行形式ファイル８０ａの作成が完了した段階で、ライセンスチェックプログラム５０を起動すると、以下の処理（第１のライセンスチェック）が実行される。
【００２６】
まず、ライセンスチェックプログラム５０は、当該ユーザの作成用ライセンスファイル４０ａの各情報（図３の２５〜２９）を参照し、作成用ライセンスであるフラグが立てられているか否か（作成用／実行用ライセンスフラグ２９）、ライセンスが有効期限内であるか（ライセンス期限２６）、更に、ノードロックタイプのライセンスである場合、マシンが妥当であるか否か（マシン固有情報２７）等をチェックする（ステップＳ２２）。
【００２７】
上記ライセンスチェックプログラム５０による、ライセンスチェックの結果、正しく作成用ライセンスが与えられていることを確認できた場合には（ステップＳ２３のＯＫ）、ライセンスチェックプログラム５０は、作成用ライセンスファイル４０ａの各情報（図３の２５〜２９）から、作成用ライセンス情報（ライセンス証明情報）９０を作成する（ステップＳ２４）。なお、この際に、上記ステップＳ２１で作成した実行形式ファイル８０ａのファイル情報（ファイルのＣＲＣ等）も取得され（ステップＳ２９）、作成用ライセンス情報（ライセンス証明情報）９０に組み込まれる。
【００２８】
このようにして、作成用ライセンスファイル４０のデータ（図３の２５〜２９）と、実行形式ファイルの情報を基に作成されたライセンス情報９０が埋め込まれて、実行形式ファイル８０ｂが生成される（ステップＳ２５）。
【００２９】
最後に、上記ステップＳ２２のライセンスチェックの結果がユーザ端末２２０の画面に表示される（ステップＳ２６）。上記第１のライセンスチェックの結果、正しく作成用ライセンスが与えられていることを確認できなかった場合には（ステップＳ２３のＮＧ）、エラー表示等がなされることになる。
【００３０】
図６は、上記した手順で作成された実行形式ファイル８０ｂの構成を表した図である。図６を参照すると、実行形式ファイル８０ｂは、ユーザ記述ソースファイル６０から生成されたオブジェクトコード６１、ソフトウェアＩＰ２０、ライセンス情報管理部３０、上記ステップＳ２５で埋め込まれた作成用ライセンス情報（ライセンス証明情報）９０とを含んで構成される。ライセンス情報管理部３０は、実行形式ファイル８０ｂの実行時に、実行用ライセンスファイル１００を参照するよう構成されている。
【００３１】
図７は、実行形式ファイルを使用（実行）するライセンスを有するユーザが、提供を受けた実行形式ファイルを実行した際に、実行形式ファイルのライセンス情報管理部３０にて行われる手順を表したフローチャートである。図７を参照すると、実行形式ファイル８０ｂが起動された後に、ライセンス情報管理部３０は、実行形式ファイル８０ｂ内部に埋め込まれた作成用ライセンス情報（ライセンス証明情報）９０を確認する処理を行う（ステップＳ３０）。
【００３２】
続いて、ライセンス情報管理部３０は、実行用ライセンスファイル１００を読み込み、ライセンス情報（図３の２５〜２９）をチェックする（ステップＳ３１）。続いて、ライセンス情報管理部３０は、作成用ライセンス情報（ライセンス証明情報）９０と実行用ライセンスファイル１００にそれぞれ含まれている、使用を許可するソフトウェアＩＰの固有ＩＤ２１を照合し、双方に含まれている固有ＩＤ２１のみをライセンス情報管理部３０内部に登録／保持する（第２のライセンスチェック；ステップＳ３２）。従って、各ソフトウェアＩＰを利用するには、実行用ライセンスファイル１００を有するだけでは足りず、適当な作成用ライセンスファイル４０を有するユーザが生成した実行形式ファイルを入手する必要がある。
【００３３】
図８、図９は、実行形式ファイルからソフトウェアＩＰ２０が実行された際に、各ソフトウェアＩＰ２０とライセンス情報管理部３０との間で行われる処理を表したフローチャートである。ソフトウェアＩＰ２０が実行されると、チェック手段（個別ライセンス管理部）２２が起動され、ライセンス情報管理部３０に対して、割り振られた固有ＩＤ２１が登録されているかを問い合わせる（図８のステップＳ４０）。
【００３４】
ライセンス情報管理部３０は、前記問い合わされた固有ＩＤ２１が上記ステップＳ３２にて登録／保持した情報の中に存在するか否かを調べ（図９のステップＳ５１）、その結果をソフトウェアＩＰ２０に対して応答する（図９のステップＳ５２）。
【００３５】
前記問い合わせの結果、固有ＩＤ２１がライセンス情報管理部３０に登録されていないとの応答を受け取った場合（ステップＳ４１の無効）には、チェック手段（個別ライセンス管理部）２２はソフトウェアＩＰ２０が動作しないように無効化を行う（図８のステップＳ４２）。
【００３６】
一方、固有ＩＤ２１がライセンス情報管理部３０に登録されている（該ソフトウェアＩＰへのライセンスが付与されている）との応答を受け取った場合（ステップＳ４１の有効）には、チェック手段（個別ライセンス管理部）２２はそのまま終了する。
【００３７】
このように、実行形式ファイルを作成する時に、作成された実行形式ファイルに対して、作成時のライセンス情報を埋め込み、実行時に埋め込まれた情報をチェックすることで、作成時と実行時のライセンスの区別が行えるようになる。より具体的には、ライセンス体系を作成乃至分配権限を有する高額なタイプと、実行権限しか有さない低廉なタイプとに大きく２分化することが可能になり、ソフトウェアＩＰの供給側、利用者側にメリットをもたらすことが可能となる。
【００３８】
また、本実施形態によれば、ソフトウェアＩＰ自体が実行時に割り当てられた固有ＩＤ２１に対するライセンスが存在するかをライセンス情報管理部３０に対して問い合わせを行うよう構成しているため、使用されているソフトウェアＩＰのみでのライセンスチェックが実現されている。従って、ライセンスファイルの内容により、ユーザにおける使用可能なソフトウェアＩＰの選択範囲をコントロールすることが可能となる。
【００３９】
以上本発明の好適な実施形態を説明したが、本発明の技術的範囲は、上述した各実施形態に限定されるものではなく、作成用のライセンスと実行用のライセンスを発行し、各ライセンスと実行可能な行為を一致させるという本発明の要旨を逸脱しない範囲で、各種の変形・置換をなしうることが可能であることはいうまでもない。
【００４０】
また、上記した実施形態では、作成用ライセンスファイル４０と実行用ライセンスファイルは、それぞれ、ライセンス期限２６、マシン固有情報２７、使用を許可するソフトウェアＩＰの固有ＩＤ２８、作成用／実行用ライセンスフラグ２９を含んで構成されるものとして説明したが、これらの項目の一部を省略乃至同種のものに置換することも可能である。また、反対に、上記ライセンスファイルに、その制限範囲を定める項目を追加することにより、より細かい制限を加えることも可能となる。
【図面の簡単な説明】
【００４１】
【図１】本発明の一実施形態のシステム構成を表したブロック図である。
【図２】本発明の一実施形態に係るライセンス管理システムにおいて管理されるソフトウェアＩＰの構成を表した図である。
【図３】本発明の一実施形態に係るライセンス管理システムにおいて管理される作成用及び実行用ライセンスファイルの構成を表した図である。
【図４】本発明の一実施形態に係るライセンス管理システムの動作（ライブラリファイルの登録時）を表したフローチャートである。
【図５】本発明の一実施形態に係るライセンス管理システムを使用した実行ファイル作成の手順を表したフローチャートである。
【図６】本発明の一実施形態に係るライセンス管理システムを使用して生成された実行ファイルの構成を表した図である。
【図７】本発明の一実施形態に係るライセンス管理システムを使用して生成された実行形式ファイルの起動時の動作を表したフローチャートである。
【図８】本発明の一実施形態に係るライセンス管理システムを使用して生成された実行形式ファイルに含まれるソフトウエアＩＰ実行時の動作（ユーザ端末側）を表したフローチャートである。
【図９】本発明の一実施形態に係るライセンス管理システムによって生成された実行形式ファイルに含まれるソフトウエアＩＰ実行時の動作（ライセンス管理システム側）を表したフローチャートである。
【図１０】従来のライセンス管理システムの構成を表したブロック図である。
【符号の説明】
【００４２】
１０  ライブラリファイル（バイナリファイル）
２０  ソフトウェアＩＰ
２１  （ソフトウェアＩＰの）固有ＩＤ
２２  ライセンス情報管理部へのチェック手段（個別ライセンス管理部）
２３  ソフトウェアＩＰ本体
２５  ライセンスＩＤ
２６  ライセンス期限
２７  マシン固有情報
２８  使用を許可するソフトウエアＩＰの固有ＩＤ
２９  作成用／実行用ライセンスフラグ
３０  ライセンス情報管理部
４０、４０ａ  作成用ライセンスファイル
５０  ライセンスチェックプログラム  
６０  ユーザ記述ソースファイル
６１  オブジェクトコード
７０  コンパイラ、リンカ
８０、８０ａ、８０ｂ  実行形式ファイル
９０  作成用ライセンス情報（ライセンス証明情報）
１００  実行用ライセンスファイル
２１０  ライセンス管理システム
２２０、２３０  ユーザ端末
【図１】
2006350449.tif 000003
【図２】
2006350449.tif 000004
【図３】
2006350449.tif 000005
【図４】
2006350449.tif 000006
【図５】
2006350449.tif 000007
【図６】
2006350449.tif 000008
【図７】
2006350449.tif 000009
【図８】
2006350449.tif 000010
【図９】
2006350449.tif 000011
【図１０】
2006350449.tif 000012