(57)【要約】【課題】不法な実行を防止するプログラム、及び該プログラムの実行が可能なプログラム実行装置を提供する。【解決手段】マザーボード１０に搭載してある電子部品であるＳＢ３が備えるメモリ３ａ、ＢＩＯＳ用フラッシュメモリ５、ＥＥＰＲＯＭ６、ＬＡＮボード８が備えるＥＥＰＲＯＭ８ａのいずれかに、コンピュータプログラム１３ａの実行を許可するための許可情報を記憶させる。また、許可情報に、該許可情報を記憶するメモリ３ａ，５，６，８ａを対応させる対応情報をコンピュータプログラム１３ａに埋め込み、ＣＰＵ１が、コンピュータプログラム１３ａの実行中に、各メモリ３ａ，５，６，８ａに実際に対応する許可情報が記憶してあるか否かをアクセスする。【選択図】        図１
2004362165.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを実行するプロセッサ及び電子部品を備えるプログラム実行装置において、
前記電子部品は、前記プログラムの実行を許可するための許可情報を有しており、
前記プロセッサは、
電子部品と許可情報との対応関係を特定する特定手段と、
該特定手段が特定した対応関係が示す電子部品から、該電子部品が有する許可情報を取得する取得手段と、
該取得手段が取得した許可情報が、前記特定手段が特定した対応関係が示す許可情報に一致するか否かを判断する判断手段とを備え、
該判断手段が一致すると判断した場合に、所定の処理を行なうように構成してあることを特徴とするプログラム実行装置。
【請求項２】
前記プログラムは、電子部品と許可情報とを対応させる対応情報を含んでおり、
前記特定手段は、前記対応情報に基づき、電子部品と許可情報との対応関係を特定するように構成してあることを特徴とする請求項１に記載のプログラム実行装置。
【請求項３】
前記電子部品は、ＢＩＯＳを記憶する記憶部及び／又はＭＡＣアドレスを記憶する記憶部を含むことを特徴とする請求項１又は２に記載のプログラム実行装置。
【請求項４】
許可情報を有する電子部品を備えるプログラム実行装置での実行が可能なプログラムにおいて、
前記プログラム実行装置に、
電子部品と許可情報との対応関係を特定させる手順と、
特定した前記対応関係が示す電子部品から、該電子部品が有する許可情報を取得させる手順と、
取得した前記許可情報が、特定した前記対応関係が示す許可情報に一致するか否かを判断させる手順と、
一致すると判断した場合に、所定の処理を行なわせる手順とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラムを実行するプログラム実行装置、及び該プログラム実行装置での実行が可能なプログラムに関するものである。
【０００２】
【従来の技術】
近年、パーソナルコンピュータ（以下、パソコンという）上で動作するアプリケーションプログラムの不正なコピーが増加している。このようなコピーを防止するために、パソコンに備えるＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）端子又はプリンタポート等に接続が可能なプロテクトキーが提供されている。
このようなプロテクトキーを利用する場合、ユーザは、自身のパソコンにインストールしてある所定のアプリケーションプログラムを実行する際に、自身のパソコンに備えるＵＳＢ端子又はプリンタポートに上述したプロテクトキーを接続させる。
【０００３】
一方、所定のアプリケーションプログラムは、所定のタイミングにてパソコンに接続されたプロテクトキーへアクセスする指示を含んでおり、この指示に従ってパソコンのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が、プロテクトキーへアクセスし、このプロテクトキーがパソコンに接続されていない場合には、当該アプリケーションプログラムの実行を中断するように記載されている。
従って、パソコンのＣＰＵは、アプリケーションプログラムに従った処理を順次実行していき、プロテクトキーへのアクセスが指示された場合に、プロテクトキーがパソコンに接続されていない場合には、当該アプリケーションプログラムの実行を中断する。
【０００４】
これにより、所定のアプリケーションプログラムを実行する際に、パソコンの所定の接続部分にプロテクトキーを接続してある場合にのみ、前記アプリケーションプログラムを実行することができ、不適切にコピーされたプログラムの実行を防止することができる。
尚、パソコンが、所定のプログラムの実行時においてアクセスするプロテクトキーを備える装置としては、以下の特許文献１及び非特許文献１で示すものがある。
【０００５】
【特許文献１】
特開２００２−３１２０５３号公報
【非特許文献１】
ハービーラボ株式会社、“Ｍｉｃｒｏ  Ｇｕａｒｄ”、［ｏｎｌｉｎｅ］、平成１５年３月２４日、［平成１５年６月３日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｈａｒｖｅｙ．ｃｏ．ｊｐ／ｍｇ／ｉｎｄｅｘｊ．ｈｔｍｌ＞
【０００６】
【発明が解決しようとする課題】
しかし、上述したプロテクトキーは、パソコンに対して外付けの機器となるため、プロテクトキーであることが明らかであり、このプロテクトキーを模倣された場合には、各種のプログラムの不法な使用を防止することができないという問題があった。
【０００７】
本発明は以上のような事情に鑑みてなされたものであり、電子部品が対応する許可情報を実際に有している場合にのみ、所定の処理を行なうことにより、前記許可情報を有しない電子部品からなる装置における所定のプログラムの実行を禁止することができ、プログラムの不法な使用を防止することができるプログラム実行装置を提供することを目的とする。
【０００８】
本発明の他の目的は、所定のプログラムの実行を許可するための許可情報と電子部品とを対応させる対応情報を所定のプログラムに含ませることにより、当該プログラムをインストールした場合に、電子部品と許可情報との対応関係を容易に特定することができ、前記プログラムの実行が可能であるかを判断する処理を簡略化することができるプログラム実行装置を提供することにある。
【０００９】
本発明の更に他の目的は、所定のプログラムの実行を許可するための許可情報を有する電子部品が、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ−Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）を記憶する記憶部及び／又はＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを記憶する記憶部を含むことにより、電源が遮断等された場合であっても、前記許可情報を失うことがなく、前記許可情報を記憶した記憶部を安定したプロテクトキーとして使用することができるプログラム実行装置を提供することにある。
【００１０】
本発明の更に他の目的は、許可情報を有する電子部品を備えるプログラム実行装置が、電子部品と許可情報との対応関係を特定し、特定した対応関係が示す電子部品が有する許可情報が、前記対応関係が示す許可情報に一致する場合に、所定の処理を実行することにより、前記プログラムに対応する許可情報を有する電子部品を備えた装置のみが実行することができるプログラムを提供することにある。
【００１１】
【課題を解決するための手段】
第１発明に係るプログラム実行装置は、プログラムを実行するプロセッサ及び電子部品を備えるプログラム実行装置において、前記電子部品は、前記プログラムの実行を許可するための許可情報を有しており、前記プロセッサは、電子部品と許可情報との対応関係を特定する特定手段と、該特定手段が特定した対応関係が示す電子部品から、該電子部品が有する許可情報を取得する取得手段と、該取得手段が取得した許可情報が、前記特定手段が特定した対応関係が示す許可情報に一致するか否かを判断する判断手段とを備え、該判断手段が一致すると判断した場合に、所定の処理を行なうように構成してあることを特徴とする。
【００１２】
第１発明による場合は、電子部品が、所定のプログラムの実行を許可するための許可情報を有しており、前記プログラムを実行するプロセッサが、電子部品と許可情報との対応関係を特定し、特定した対応関係が示す電子部品から、該電子部品が有する許可情報を取得する。また、取得した許可情報が、特定した前記対応関係が示す許可情報に一致する場合に、プロセッサが所定の処理を行なうことにより、許可情報に対応する電子部品が、実際に前記許可情報を有している場合にのみ、所定の処理を行なうことができ、前記許可情報を有しない電子部品からなる装置における前記プログラムの実行を禁止することができ、プログラムの不法な使用を防止することができる。
【００１３】
また、このような許可情報を、装置が備える電子部品の内部に備えることにより、当該装置の外部から前記許可情報の存在場所が不明となり、許可情報自体のコピーが不可能となる。従って、許可情報の不法なコピーを防止することができるとともに、所定のプログラムの不法な使用を禁止することができる。
更に、上述した許可情報を複数の電子部品に設定した場合には、所定のプログラムの不法な使用をより強力に防止することができる。
【００１４】
第２発明に係るプログラム実行装置は、前記プログラムは、電子部品と許可情報とを対応させる対応情報を含んでおり、前記特定手段は、前記対応情報に基づき、電子部品と許可情報との対応関係を特定するように構成してあることを特徴とする。
【００１５】
第２発明による場合は、所定のプログラムの実行を許可するための許可情報と電子部品とを対応させる対応情報を所定のプログラムに含ませることにより、このプログラムをインストールした装置において、前記対応情報に基づき、電子部品と許可情報との対応関係を容易に特定することができ、前記プログラムの実行が可能であるか否かの判断処理を簡略化することができる。また、このように特定した電子部品が、実際に対応する許可情報を有している場合にのみ、プロセッサが所定の処理を行なうことにより、プログラムの不適切な使用を防止することができる。
【００１６】
第３発明に係るプログラム実行装置は、前記電子部品は、ＢＩＯＳを記憶する記憶部及び／又はＭＡＣアドレスを記憶する記憶部を含むことを特徴とする。
【００１７】
第３発明による場合は、所定のプログラムの実行を許可するための許可情報を有する電子部品が、ＢＩＯＳを記憶する記憶部及び／又はＭＡＣアドレスを記憶する記憶部を含むことにより、電源が遮断等された場合であっても、前記許可情報を失うことがなく、前記許可情報を記憶した記憶部を安定したプロテクトキーとして使用することができる。
【００１８】
第４発明に係るプログラムは、許可情報を有する電子部品を備えるプログラム実行装置での実行が可能なプログラムにおいて、前記プログラム実行装置に、電子部品と許可情報との対応関係を特定させる手順と、特定した前記対応関係が示す電子部品から、該電子部品が有する許可情報を取得させる手順と、取得した前記許可情報が、特定した前記対応関係が示す許可情報に一致するか否かを判断させる手順と、一致すると判断した場合に、所定の処理を行なわせる手順とを実行させることを特徴とする。
【００１９】
第４発明による場合は、許可情報を有する電子部品を備えるプログラム実行装置が、電子部品と許可情報との対応関係を特定し、特定した対応関係が示す電子部品から許可情報を取得し、取得した許可情報が、前記対応関係が示す許可情報に一致する場合に、所定の処理を実行することにより、前記プログラムに対応する許可情報を有する電子部品を備えた装置のみが、当該プログラムを実行することができ、前記許可情報を有しない電子部品からなる装置に当該プログラムがコピーされた場合に、当該プログラムの実行を禁止することができる。
【００２０】
【発明の実施の形態】
以下に、本発明に係るプログラム実行装置を、パーソナルコンピュータ（以下、ＰＣという）による実施の形態を示す図面に基づいて詳述する。図１は本発明に係るプログラム実行装置としてのＰＣに搭載されるマザーボードの構成例を示すブロック図であり、図中１０はマザーボードを示している。
本実施の形態におけるマザーボード１０には、ＣＰＵ（プロセッサ）１、ノースブリッジ（Ｎｏｒｔｈ  Ｂｒｉｄｇｅ）（以下、ＮＢという）２、サウスブリッジ（Ｓｏｕｔｈ  Ｂｒｉｄｇｅ）（以下、ＳＢという）３、メモリ４、ＢＩＯＳ用フラッシュメモリ５、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）６、ハードウェアモニタ７等の電子部品が搭載してある。
【００２１】
ＮＢ２及びＳＢ３は、互いに接続してあり、このマザーボード１０によりなるＰＣ内部のデータ伝送を制御するチップセットを構成している。尚、ＮＢ２にはＣＰＵ１及びメインメモリとしてのメモリ４が接続してあり、ＳＢ３にはＢＩＯＳ用フラッシュメモリ５、ＳＭＢＵＳ（Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  ＢＵＳ）１０ａ、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス１０ｂ、マザーボード１０の外部の電子部品としてのハードディスクドライブ（以下、ＨＤＤという）１３及びＣＤ−ＲＯＭドライブ１４が接続してある。
また、ＳＭＢＵＳ１０ａには、ＥＥＰＲＯＭ６及びハードウェアモニタ７のほか、マザーボード１０に設けられた入力部１１及び出力部１２が接続してあり、ＰＣＩバス１０ｂには、例えば、ＩＥＥＥ８０２．３規格に準拠したイーサネット（登録商標）を構築するためのＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ボード８が接続してある。
【００２２】
ＢＩＯＳ用フラッシュメモリ５には、マザーボード１０によるＰＣに接続される入出力装置等の周辺機器を制御するためのコンピュータプログラムが記憶してあり、ＥＥＰＲＯＭ６には、このＰＣに関する種々の個別情報、例えば、ＨＤＤ１３のシリアルナンバー及びＣＤ−ＲＯＭドライブ１４のシリアルナンバー等が記憶してある。
ＨＤＤ１３には、当該ＰＣの動作に必要な種々のコンピュータプログラム等が記憶してあり、ＣＰＵ１は、必要に応じてＮＢ２及びＳＢ３を介して、ＢＩＯＳ用フラッシュメモリ５及びＥＥＰＲＯＭ６に記憶してある各種の情報に基づいてＨＤＤ１３に記憶してあるコンピュータプログラムを適宜メモリ４に読み出し、順次実行することにより、ＳＭＢＵＳ１０ａ及びＰＣＩバス１０ｂに夫々接続してある上述したようなハードウェア（電子部品）各部を制御する。
【００２３】
また、ＳＢ３は、ＣＭＯＳ構造等の半導体メモリからなるメモリ３ａを備えており、このメモリ３ａは、ＰＣの電源を切った場合であっても記憶内容が消去されないように電源が供給されるバッテリーバックアップ機構に構成してある。
このバッテリーバックアップ機構により、メモリ３ａはＰＣの電源が切られた場合においても、記憶内容を失うことがない。
【００２４】
ハードウェアモニタ７は、マザーボード１０上の電源電圧を計測するセンサや、ＣＰＵ１における温度を計測するセンサ等の各種のセンサを備えており、各センサによる計測結果に基づき、マザーボード１０上に搭載してあるハードウェア各部に発生した故障を検知するように構成されている。
ＬＡＮボード８は、例えば、ＥＥＰＲＯＭ８ａを備えており、このＥＥＰＲＯＭ８ａに、ＬＡＮボード８を識別するためのＭＡＣアドレスが記憶してある。
【００２５】
また、ＣＰＵ１は、入力部１１から入力されたデータ、及びマザーボード１０上に備える各種のメモリ３ａ，４，５，６，８ａに記憶してあるデータを取得し、各種の処理を行なって、出力部１２から出力し、又はメモリ３ａ，４，５，６，８ａに記憶させる。
【００２６】
ここで、本実施の形態におけるマザーボード１０においては、搭載してあるいずれかの電子部品に、所定のコンピュータプログラム１３ａの実行を許可するための許可情報が記憶させてあり、これにより、このマザーボード１０によるＰＣが、ＨＤＤ１３に記憶してあるコンピュータプログラム１３ａの実行が可能に構成されている。尚、この許可情報を複数の電子部品に記憶させることにより、コンピュータプログラム１３ａに対して、より強力なプロテクトキーとして動作することができる。
具体的には、マザーボード１０上のＢＩＯＳ用フラッシュメモリ５、ＳＢ３のメモリ３ａ、ＥＥＰＲＯＭ６、及びＬＡＮボード８のＥＥＰＲＯＭ８ａ等のうちのいずれかのメモリに、コンピュータプログラム１３ａの実行を許可するための許可情報が記憶してあり、この許可情報を記憶したメモリが、コンピュータプログラム１３ａにおけるプロテクトキーとして動作する。
【００２７】
また、コンピュータプログラム１３ａには、夫々の許可情報に、各許可情報を記憶してあるメモリを対応させた対応情報が埋め込まれており、ＣＰＵ１は、コンピュータプログラム１３ａを実行する際に、コンピュータプログラム１３ａから前記対応情報を読み出しこの読み出した対応情報に基づき、許可情報と、該許可情報を記憶しているメモリとの対応関係を特定する特定手段として動作する。更にＣＰＵ１は、前記対応情報に基づき特定した対応関係が示すメモリから、該メモリに記憶してある許可情報を取得する取得手段として動作しており、取得した許可情報が、前記対応関係が示す許可情報に一致するか否かを判断する判断手段として動作する。尚、ＣＰＵ１は、取得した許可情報が、前記対応関係が示す許可情報に一致する場合にのみ、コンピュータプログラム１３ａの実行を続行させ、一致しない場合にはコンピュータプログラム１３ａの実行を中断させる。
【００２８】
以下に、上述したマザーボード１０上のメモリ各部に許可情報を記憶させる許可情報設定処理について説明する。図２はマザーボード１０に許可情報を記憶させるコンピュータの構成例を示すブロック図であり、図中２０は、コンピュータを示している。
コンピュータ２０は、ＣＰＵ２１を制御中枢としてバス２７を介して接続される以下のハードウェア各部の動作を制御する。
【００２９】
バス２７には、ＣＰＵ２１の制御手順を示すコンピュータプログラム、及びマザーボード１０に許可情報を記憶させるための許可情報設定処理プログラム等を記憶したハードディスク（以下、ＨＤという）２２と、ＣＰＵ２１による制御動作中に発生する種々のデータを一時的に記憶するＲＡＭ２３と、コンピュータ２０を操作するための各種のボタンを備える操作部２４と、コンピュータ２０における処理状態等の表示を行なう表示部２５と、許可情報を設定すべき対象のマザーボード１０の入力部１１及び出力部１２を接続するためのマザーボード接続部２６等とが接続されている。
【００３０】
上述した構成のコンピュータ２０において、ＣＰＵ２１は、ＨＤ２２に記憶してある許可情報設定処理プログラムをＲＡＭ２３に一旦読み出して順次実行することにより、マザーボード接続部２６に接続されたマザーボード１０に搭載してある電子部品から、許可情報を記憶させるべき電子部品（メモリ）を選択し、また、選択した電子部品に対応する許可情報を生成して、対応する電子部品に設定する。
【００３１】
以下に、上述した構成のコンピュータ２０におけるマザーボード１０への許可情報の設定処理について説明する。図３はコンピュータ２０によるマザーボード１０への許可情報の設定処理手順を示すフローチャートである。
所定箇所に適宜の電子部品が搭載されたマザーボード１０に、コンピュータプログラム１３ａの実行を可能にするための許可情報を設定する場合、オペレータは、コンピュータ２０のマザーボード接続部２６の所定箇所に、許可情報の設定対象であるマザーボード１０の入力部１１及び出力部１２を接続させ、操作部２４の所定のボタンを操作する。
【００３２】
コンピュータ２０のＣＰＵ２１は、操作部２４の所定のボタンが操作された場合、ＨＤ２２に記憶してある許可情報設定処理プログラムをＲＡＭ２３に読み出して、順次実行する。
これにより、ＣＰＵ２１は、乱数の発生等を行ない、発生した乱数に基づいて許可情報を設定すべき設定エリア数を算出する（Ｓ１）。尚、本実施の形態におけるマザーボード１０については、ＢＩＯＳ用フラッシュメモリ５、ＳＢ３のメモリ３ａ、ＥＥＰＲＯＭ６、及びＬＡＮボード８のＥＥＰＲＯＭ８ａの４つのメモリが許可情報の設定エリアとすることが可能であるため、算出する設定エリア数は、１，２，３，４のいずれかとなる。
【００３３】
次にＣＰＵ２１は、算出した設定エリア数に基づき、許可情報を設定すべき設定エリアを決定する（Ｓ２）。具体的には、ＢＩＯＳ用フラッシュメモリ５、ＳＢ３のメモリ３ａ、ＥＥＰＲＯＭ６、及びＬＡＮボード８のＥＥＰＲＯＭ８ａの４つの設定エリアの候補から、ステップＳ１で算出した数のエリアを選択することにより、設定エリアを決定する。
また、ＣＰＵ２１は、決定した設定エリアの夫々に記憶させるべき、コンピュータプログラム１３ａの実行を許可するための許可情報を生成する（Ｓ３）。
【００３４】
次にＣＰＵ２１は、ステップＳ２で決定した設定エリアから１つの設定エリアを選択し、この設定エリアに、ステップＳ３で生成した当該設定エリアに対応する許可情報を記憶させる（Ｓ４）。
ＣＰＵ２１は、ステップＳ３で生成した全ての許可情報の、対応する設定エリアへの記憶が完了したか否かを判断しており（Ｓ５）、完了していない場合（Ｓ５：ＮＯ）、ステップＳ４に戻り、ステップＳ２で決定した別の設定エリアに対する許可情報の記憶処理を行なう。
【００３５】
ステップＳ５で、全ての許可情報の記憶が完了した場合（Ｓ５：ＹＥＳ）、ＣＰＵ２１は、各設定エリアと、各設定エリアに記憶させた許可情報とを対応させた対応情報を、ＨＤＤ１３に記憶してあるコンピュータプログラム１３ａに埋め込み（Ｓ６）、マザーボード１０への許可情報の設定処理を終了する。
尚、上述したような各許可情報と、各許可情報を設定した設定エリアとを対応させた対応情報は、例えばＥＥＰＲＯＭ６に記憶させておくことも可能であり、この場合、ＣＰＵ１は、コンピュータプログラム１３ａの実行中に適宜ＥＥＰＲＯＭ６に記憶された対応情報を読み出し、読み出した対応情報が示すメモリに、当該対応関係が示す許可情報が記憶してあるか否かの判断処理を行なうことにより、適切なＰＣによるコンピュータプログラム１３ａの実行であるか否かを判断することができる。
【００３６】
上述したように、マザーボード１０に搭載してある各種のメモリに、コンピュータプログラム１３ａの実行を許可するための許可情報を記憶させることにより、当該マザーボード１０によるＰＣによっては、コンピュータプログラム１３ａを実行することができるが、この許可情報を有しないＰＣにおいては、コンピュータプログラム１３ａを実行することができず、コンピュータプログラム１３ａの不適法な実行を防止することができる。
【００３７】
以下に、上述のように許可情報を設定されたマザーボード１０を備えたＰＣによるコンピュータプログラム１３ａの実行処理について説明する。図４は本発明に係るプログラム実行装置によるコンピュータプログラム１３ａの実行処理手順を示すフローチャートである。
図１に示すマザーボード１０を備えたＰＣにおいて、ＣＰＵ１は、ＨＤＤ１３に記憶してあるコンピュータプログラム１３ａを実行する場合、一旦メモリ４に読み出し、メモリ４にアクセスすることにより、メモリ４に記憶されたコンピュータプログラム１３ａに含まれるプログラムコードに従った所定の処理を順次行なう。
【００３８】
ＣＰＵ１は、メモリ４に記憶してあるコンピュータプログラム１３ａから１つのプログラムコードを読み出し（Ｓ１１）、読み出したプログラムコードが、許可情報と、該許可情報を記憶してある設定エリア（メモリ）とを対応させた対応情報であるか否かを判断する（Ｓ１２）。
ここで、読み出したプログラムコードが対応情報でない場合（Ｓ１２：ＮＯ）、ＣＰＵ１は、読み出したプログラムコードが示す処理を実行する（Ｓ１３）。
【００３９】
また、ＣＰＵ１は、メモリ４に記憶してある全てのプログラムコードの実行が終了したか否かを判断しており（Ｓ１４）、全てのプログラムコードの実行が終了していない場合（Ｓ１４：ＮＯ）、ステップＳ１１に戻り、順次メモリ４に記憶してあるプログラムコードを読み出して実行する。尚、全てのプログラムコードの実行が終了した場合には（Ｓ１４：ＹＥＳ）、コンピュータプログラム１３ａの実行を終了する（Ｓ１７）。
【００４０】
一方、ステップＳ１２で読み出したプログラムコードが対応情報である場合（Ｓ１２：ＹＥＳ）、ＣＰＵ１は、対応情報から、許可情報が記憶してある設定エリア（メモリ）を抽出し、抽出した設定エリアから、該設定エリアに記憶してある許可情報を読み出す（Ｓ１５）。
次にＣＰＵ１は、読み出した許可情報が、ステップＳ１１で読み出したプログラムコード（対応情報）が示す許可情報に一致するか否かを判断しており（Ｓ１６）、一致する場合（Ｓ１６：ＹＥＳ）、即ち、当該コンピュータプログラム１３ａを適切な許可情報が設定してあるＰＣにより実行している場合、ステップＳ１１に戻り、メモリ４に記憶してあるプログラムコードの実行を続行する。
【００４１】
一方、ステップＳ１６で、読み出した許可情報が、ステップＳ１１で読み出したプログラムコードが示す許可情報に一致しない場合（Ｓ１６：ＮＯ）、即ち、当該コンピュータプログラム１３ａを、実行を可能とする許可情報が設定されていない不適切なＰＣにより実行している場合、ＣＰＵ１は、コンピュータプログラム１３ａの実行を中断し、所定の処理の実行を終了する（Ｓ１７）。
【００４２】
上述したように、コンピュータプログラム１３ａが、コンピュータプログラム１３ａに埋め込まれた対応情報が示す許可情報が所定の設定エリアに記憶していないＰＣにより実行された場合に、前記許可情報が所定の設定エリアに記憶していないことが認識された時点で、処理を終了するように記載してあることにより、所定の設定エリアに対応する許可情報が設定されていないＰＣにおいては、コンピュータプログラム１３ａを実行することができず、コンピュータプログラム１３ａの不適法な実行を防止することができる。
【００４３】
【発明の効果】
第１発明による場合は、所定のプログラムの実行を許可するための許可情報に対応する電子部品が、実際に前記許可情報を有している場合にのみ、所定の処理を行なうことにより、前記許可情報を有しない電子部品からなる装置における前記プログラムの実行を禁止することができ、プログラムの不法な使用を防止することができる。
また、許可情報を、装置が備える電子部品の内部に備えることにより、当該装置の外部から前記許可情報の存在場所が不明となり、許可情報自体のコピーが不可能となり、許可情報の不法なコピーを防止することができるとともに、所定のプログラムの不法な使用を禁止することができる。
【００４４】
第２発明による場合は、所定のプログラムの実行を許可するための許可情報と電子部品とを対応させる対応情報を所定のプログラムに含ませることにより、このプログラムをインストールした装置において、前記対応情報に基づき、電子部品と許可情報との対応関係を容易に特定することができ、前記プログラムの実行が可能であるか否かの判断処理を簡略化することができる。
【００４５】
第３発明による場合は、所定のプログラムの実行を許可するための許可情報を有する電子部品が、ＢＩＯＳを記憶する記憶部及び／又はＭＡＣアドレスを記憶する記憶部を含むことにより、電源が遮断等された場合であっても、前記許可情報を失うことがなく、前記許可情報を記憶した記憶部を安定したプロテクトキーとして使用することができる。
【００４６】
第４発明による場合は、許可情報を有する電子部品を備えるプログラム実行装置が、電子部品と許可情報との対応関係を特定し、特定した対応関係が示す電子部品から許可情報を取得し、取得した許可情報が、前記対応関係が示す許可情報に一致する場合に、所定の処理を実行することにより、前記プログラムに対応する許可情報を有する電子部品を備えた装置のみが、当該プログラムを実行することができ、前記許可情報を有しない電子部品からなる装置に当該プログラムがコピーされた場合に、当該プログラムの実行を禁止することができる。
【図面の簡単な説明】
【図１】本発明に係るプログラム実行装置としてのＰＣに搭載されるマザーボードの構成例を示すブロック図である。
【図２】コンピュータの構成例を示すブロック図である。
【図３】コンピュータによるマザーボードへの許可情報の設定処理手順を示すフローチャートである。
【図４】本発明に係るプログラム実行装置によるコンピュータプログラムの実行処理手順を示すフローチャートである。
【符号の説明】
１  ＣＰＵ（プロセッサ、特定手段、取得手段、判断手段）
３  ＳＢ（電子部品）
５  ＢＩＯＳ用フラッシュメモリ
８  ＬＡＮボード（電子部品）
１０  マザーボード
【図１】
2004362165.tif 000003
【図２】
2004362165.tif 000004
【図３】
2004362165.tif 000005
【図４】
2004362165.tif 000006