(57)【特許請求の範囲】
【請求項１】
用途に応じて電子機器を動作させるアプリケーションソフトウェアを組み込むことによって異なった機能を有する電子機器へのソフトウェアの不正な組み込みを防止するソフトウェアの保護方法であって、ソフトウェアおよび当該ソフトウェアが正当に組み込まれる電子機器に、互いに合致する識別手段をそれぞれ備え、電子機器に備えられた識別手段と、電子機器に組み込まれたソフトウェアの識別手段とを照合し、それぞれの識別手段が合致したときにのみ、組み込まれたソフトウェアに応じて電子機器を動作させ、ソフトウェアは、データからなる識別手段を有し、電子機器には、電子機器のハードウェアを制御するシステムプログラムが組み込まれるとともに、１乃至複数個の接点を具備する接点開閉装置が設けられており、接点の開閉状態に応じてデータからなる識別手段が設定され、システムプログラムが電子機器側の識別手段とアプリケーションソフトウェア側の識別手段とを照合し、接点開閉装置は封止されたチップで構成されていることを特徴とする電子機器組み込みソフトウェアの保護方法。
【請求項２】
ソフトウェアおよび当該ソフトウェアが正当に組み込まれる電子機器のそれぞれに備えられた互いに合致する識別手段のうち一方を、少なくとも一部変更し、照合するときには変更された前記一方の識別手段を所定の変更処理により元に戻した後に照合することを特徴とする請求項１記載の電子機器組み込みソフトウェアの保護方法。
【請求項３】
用途に応じて電子機器を動作させるアプリケーションソフトウェアを組み込むことによって異なった機能を有する電子機器であって、組み込まれたソフトウェアを実行し、当該ソフトウェアに応じて用途に則した処理を行う処理手段と、正当に組み込まれたソフトウェアに設けられたデータからなる識別手段と合致する機器側識別手段と、機器側識別手段と組み込まれたソフトウェアの識別手段とを照合し、合致したときにのみ組み込まれたソフトウェアの処理手段による実行を許可する照合手段と、１乃至複数の接点を具備して、接点の開閉状態に応じてデータからなる機器側識別手段が設定される接点開閉装置とを備え、照合手段は、電子機器のハードウェアを制御するシステムプログラムであって、接点開閉装置は封止されたチップで構成されていることを特徴とする電子機器。
【請求項４】
正当に組み込まれたソフトウェアの識別手段および前記識別手段と合致する機器側識別手段のうち一方は、少なくとも一部変更され、照合手段は、変更された前記一方の識別手段を所定の変更処理により元に戻して照合することを特徴とする請求項３記載の電子機器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、異品種のソフトウェアを組み込むことで、異なった機能を有する電子機器において、不正なソフトウェアの組み込みを防止する電子機器組み込みソフトウェアの保護方法及び電子機器に関するものである。
【０００２】
【従来の技術】
従来より、組み込まれるアプリケーションソフトウェアによって、用途に応じて動作する電子機器が提供されている。
【０００３】
電子機器は、例えば画像を撮影して処理するイメージチェッカなどの画像処理装置であって、用途に応じて電子機器を動作させるアプリケーションソフトウェアを記憶するメモリ、メモリからアプリケーションソフトウェアを読み込んで実行するＣＰＵを具備する機器本体と、ＣＰＵから制御されて画像を撮影するカメラと、カメラで撮影された映像を映し出すモニタと、操作することにより所望の動作を行うようにＣＰＵに指示するキーボードやマウスなどの操作入力装置とを備えている。
【０００４】
このような電子機器に例えばＩＣ外観検査用のアプリケーションソフトウェアを組み込むことによって、この電子機器は、ＩＣの微妙な傷・欠け・異物付着などの外観を検査する外観検査装置となり、或いは、プリント配線基板上に実装する電子部品を位置決めするための計測用のアプリケーションソフトウェアを組み込むことによって、この電子機器は、プリント配線基板にある裁断用の基準マークの絶対位置を検出し、電子部品が実装される位置データを出力する位置決め装置ともなる。
【０００５】
【発明が解決しようとする課題】
しかしながら、電子機器のメーカにより製作された上述のようなアプリケーションソフトウェアは、たとえこのアプリケーションソフトウェアのソースコードがメーカから公開されていなくても、ユーザが市販の開発装置を用いることによって、電子機器に不正に組み込まれるといった問題があった。
【０００６】
例えば、上述のようなＩＣ外観検査用のアプリケーションソフトウェアと、計測用のアプリケーションソフトウェアとにそれぞれ価格差があって、ＩＣ外観検査用アプリケーションソフトウェアが組み込まれた外観検査装置が、計測用アプリケーションソフトウェアが組み込まれた位置決め装置よりも高価な価格設定がされている場合、中間業者を含むユーザは、両装置を一台づつ購入した後、それ以降は低価格な位置決め装置のみを購入し、外観検査装置に組み込まれたＩＣ外観検査用のアプリケーションソフトウェアを開発装置を用いて不正にコピーして、この不正にコピーされたアプリケーションソフトウェアを位置決め装置に組み込むことによって、結果的に安価な外観検査装置の入手を可能としてしまうことがあった。これにより、メーカは正規の価格で外観検査装置を売ることができずに不利益を被ることとなってしまう。
【０００７】
本発明は上記問題点の解決を目的とするものであり、ソフトウェアの電子機器への不正な組み込みを防止する電子機器組み込みソフトウェアの保護方法及び電子機器を提供する。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、請求項１の発明は、用途に応じて電子機器を動作させるアプリケーションソフトウェアを組み込むことによって異なった機能を有する電子機器へのソフトウェアの不正な組み込みを防止するソフトウェアの保護方法であって、ソフトウェアおよび当該ソフトウェアが正当に組み込まれる電子機器に、互いに合致する識別手段をそれぞれ備え、電子機器に備えられた識別手段と、電子機器に組み込まれたソフトウェアの識別手段とを照合し、それぞれの識別手段が合致したときにのみ、組み込まれたソフトウェアに応じて電子機器を動作させ、ソフトウェアは、データからなる識別手段を有し、電子機器には、電子機器のハードウェアを制御するシステムプログラムが組み込まれるとともに、１乃至複数個の接点を具備する接点開閉装置が設けられており、接点の開閉状態に応じてデータからなる識別手段が設定され、システムプログラムが電子機器側の識別手段とアプリケーションソフトウェア側の識別手段とを照合し、接点開閉装置は封止されたチップで構成されていることを特徴とし、不正なソフトウェアが電子機器に組み込まれたときには、このソフトウェアの識別手段と電子機器の識別手段とが合致せずに、組み込まれたソフトウェアに応じて電子機器を動作させないことによって、ソフトウェアの電子機器への不正な組み込みを防止することができ、例えば、用途に応じて互いに異なって価格差のある２種類のソフトウェアがそれぞれ各別に組み込まれた安価な電子機器と高価な電子機器とがあって、ユーザが高価な電子機器からソフトウェアをコピーし、このソフトウェアを安価な電子機器に不正に組み替えることによって、結果的にユーザが高価な電子機器を低価格で得たことになるのを防ぐごとができる。また、ユーザによりシステムプログラムの全ての内容がコピーされた場合にも、電子機器の識別手段は接点の開閉状態に応じて設定されていることによってコピーされず、さらに、接点開閉装置を封止されたチップで構成したことにより、ソフトウェアの不正な組み込みを確実に防ぐことができる。
【０００９】
請求項２の発明は、請求項１の発明において、ソフトウェアおよび当該ソフトウェアが正当に組み込まれる電子機器のそれぞれに備えられた互いに合致する識別手段のうち一方を、少なくとも一部変更し、照合するときには変更された前記一方の識別手段を所定の変更処理により元に戻した後に照合することを特徴とし、ソフトウェア及び当該ソフトウェアが正当に組み込まれる電子機器のそれぞれに備えられた識別手段のうち何れか一方がユーザに把握された場合でも、何れか一方の識別手段が変更されて、照合するときに所定の変更処理により元に戻されることによって、ユーザに変更処理の内容が知られない限り、他方の識別手段が判明されることを難しくして、ソフトウェアの電子機器への不正な組み込みをさらに防止することができる。
【００１２】
請求項３の発明は、用途に応じて電子機器を動作させるアプリケーションソフトウェアを組み込むことによって異なった機能を有する電子機器であって、組み込まれたソフトウェアを実行し、当該ソフトウェアに応じて用途に則した処理を行う処理手段と、正当に組み込まれたソフトウェアに設けられたデータからなる識別手段と合致する機器側識別手段と、機器側識別手段と組み込まれたソフトウェアの識別手段とを照合し、合致したときにのみ組み込まれたソフトウェアの処理手段による実行を許可する照合手段と、１乃至複数の接点を具備して、接点の開閉状態に応じてデータからなる機器側識別手段が設定される接点開閉装置とを備え、照合手段は、電子機器のハードウェアを制御するシステムプログラムであって、接点開閉装置は封止されたチップで構成されていることを特徴とし、不正なソフトウェアが電子機器に組み込まれたときには、このソフトウェアの識別手段と機器側識別手段とが照合手段により照合され、それぞれが合致しない結果、処理手段によるソフトウェアの実行が許可されないことによって、ソフトウェアの電子機器への不正な組み込みを防止することができ、例えば、用途に応じて互いに異なって価格差のある２種類のソフトウェアがそれぞれ各別に組み込まれた安価な電子機器と高価な電子機器とがあって、ユーザが高価な電子機器からソフトウェアをコピーし、このソフトウェアを安価な電子機器に不正に組み替えることによって、結果的にユーザが高価な電子機器を低価格で得たことになるのを防ぐごとができる。また、ユーザによりシステムプログラムの全ての内容がコピーされた場合にも、電子機器の識別手段は接点の開閉状態に応じて設定されていることによってコピーされず、さらに、接点開閉装置を封止されたチップで構成したことにより、ソフトウェアの不正な組み込みを確実に防ぐことができる。
【００１３】
請求項４の発明は、請求項３の発明において、正当に組み込まれたソフトウェアの識別手段および前記識別手段と合致する機器側識別手段のうち一方は、少なくとも一部変更され、照合手段は、変更された前記一方の識別手段を所定の変更処理により元に戻して照合することを特徴とし、正当に組み込まれたソフトウェアの識別手段及び機器側識別手段のうち何れか一方がユーザに把握された場合でも、何れか一方の識別手段が変更されており、照合手段が照合するときには所定の変更処理により元に戻されることによって、ユーザに照合手段の変更処理の内容が知られない限り、他方の識別手段が判明されることを難くして、ソフトウェアの電子機器への不正な組み込みをさらに防止することができる。
【００１６】
【発明の実施の形態】
（参考例１）
本構成例の電子機器１０は、図１に示すように従来例と同様、用途に応じて電子機器１０を動作させるアプリケーションソフトウェア２０が組み込まれる機器本体１０ａと、機器本体１０ａに制御される複数個の周辺機器１０ｂ…とからなる。
【００１７】
機器本体１０ａは、組み込まれたアプリケーションソフトウェア２０を実行し、アプリケーションソフトウェア２０に応じて用途に則した処理を行う処理手段たるＣＰＵ１３と、正当に組み込まれたアプリケーションソフトウェア２０に設けられた識別手段１と合致する機器側識別手段２と、電子機器のハードウェアを制御するとともに、機器側識別手段２と組み込まれたアプリケーションソフトウェア２０の識別手段１とを照合し、合致したときにのみ組み込まれたアプリケーションソフトウェア２０のＣＰＵ１３による実行を許可する照合手段たるシステムプログラム１２と、各周辺機器１０ｂとのインターフェースを図る周辺機器インターフェース部１４とを備えている。また、上述の機器側識別手段２は、システムプログラム１２内に備えられている。
【００１８】
周辺機器インターフェース部１４…はそれぞれ、機器本体１０ａに接続される周辺機器１０ｂに応じて構成されている。例えば周辺機器１０ｂ…の各々が従来例のようなモニタ、キーボードやマウスなどの操作入力装置、さらにはフロッピーディスクドライブやＣＤ−ＲＯＭドライブなどの外部記憶装置であれば、周辺機器インターフェース部１４…の各々は、画像信号を出力するモニタ出力回路部、操作入力装置からの信号を入力する入力回路部、外部記憶装置に応じたデータの送受信を行うドライブ回路部となる。また、ＲＳ２３２Ｃなどのシリアルポートを介して接続される周辺機器１０ｂに対しては、周辺機器インターフェース部１４はＲＳ２３２Ｃに応じた信号の送受信を行うシリアル回路部となり、イーサネットを介して接続される周辺機器１０ｂに対しては、周辺機器インターフェース部１４は、イーサネット用のインターフェース回路部となる。
【００１９】
アプリケーションソフトウェア２０とシステムプログラム１２は、機器本体１０ａに備えられたメモリ１１のバックアップ領域１１ａに記憶され、電子機器１０の起動時にＣＰＵ１３からの制御によりメモリ１１の実行領域１１ｂに移されて、それぞれ実行される。また、バックアップ領域１１ａとしては例えばハードディスクやＲＯＭが用いられ、実行領域１１ｂとしては例えばＤＲＡＭなどが用いられる。
【００２０】
上述のようなシステムプログラム１２の機器側識別手段２とアプリケーションソフトウェア２０の識別手段１との照合は、例えば図２（ａ），（ｂ）に示すような概念図で表される。
【００２１】
図２（ａ）に示す電子機器１０に備えられたシステムプログラム１２Ａには、略三角状に突出する機器側識別手段２Ａが備えられ、この電子機器１０に正当に組み込まれるアプリケーションソフトウェア２０Ａには、システムプログラム１２Ａの機器側識別手段２Ａと嵌合するような略三角状に凹設された識別手段１Ａが設けられている。
【００２２】
システムプログラム１２Ａは、機器側識別手段２Ａをアプリケーションソフトウェア２０Ａの識別手段１Ａに突き合わすように照合し、嵌合すれば合致したものとして、アプリケーションソフトウェア２０Ａが正当に組み込まれたものであることを判断し、ＣＰＵ１３によるアプリケーションソフトウェア２０Ａの実行を許可する。
【００２３】
一方、図２（ｂ）に示す電子機器１０に備えられたシステムプログラム１２Ｂ及び、正当に組み込まれるアプリケーションソフトウェア２０Ｂについても、システムプログラム１２Ａ及びアプリケーションソフトウェア２０Ａと同様に、システムプログラム１２Ｂには略矩形状に突出する機器側識別手段２Ｂが備えられ、アプリケーションソフトウェア２０Ｂにはシステムプログラム１２Ｂの機器側識別手段２Ｂと嵌合する略矩形状に凹設された識別手段１Ｂが設けられている。
【００２４】
例えば図２（ａ）に示す電子機器１０に、アプリケーションソフトウェア２０Ｂを組み込んで、システムプログラム１２Ａにより機器側識別手段２Ａとアプリケーションソフトウェア２０Ｂの識別手段１Ｂとを照合させたときには、それそれの識別手段２Ａ，１Ｂを突き合わせても嵌合しないので、システムプログラム１２Ａは、それぞれの識別手段２Ａ，１Ｂが合致せず、アプリケーションソフトウェア２０Ｂが不正に組み込まれたものであると判断し、ＣＰＵ１３によるアプリケーションソフトウェア２０Ｂの実行を許可しないこととなる。
【００２５】
具体的には、システムプログラム１２の機器側識別手段２と、システムプログラム１２が備えられた電子機器１０に正当に組み込まれるアプリケーションソフトウェア２０の識別手段１とは、それぞれ例えば「１２３４５６」といった同一の識別データから構成される。
【００２６】
ここで、上述のようなアプリケーションソフトウェア２０が正当に組み込まれた電子機器１０に電源が投入され、アプリケーションソフトウェア２０が実行されるまでの電子機器１０の動作について、図３のフロー図に基づいて簡単に説明する。
【００２７】
電子機器１０に電源が投入されると（Ｓ１）、まず、ＣＰＵ１３はシステムプログラム１２をバックアップ領域１１ａから実行領域１１ｂに移して起動させ（Ｓ２）、システムプログラム１２は、周辺機器インターフェース部１４…を初期化するとともに（Ｓ３）、自己に備えられた機器側識別データ２（「１２３４５６」）とアプリケーションソフトウェア２０の識別データ１（「１２３４５６」）とを照合する（Ｓ４）。システムプログラム１２は、機器側識別データ２と識別データ１とが合致し、アプリケーションソフトウェア２０が正当に組み込まれたものであると判断すると、アプリケーションソフトウェア２０のＣＰＵ１３による実行を許可して、アプリケーションソフトウェア２０をバックアップ領域１１ａから実行領域１１ｂに移し（Ｓ５）、アプリケーションソフトウェア２０が実行される（Ｓ６）。
【００２８】
ところが、組み込まれたアプリケーションソフトウェア２０の識別データ２が例えば「４５６１２３」であった場合には、システムプログラム１２は、ステップＳ４にて機器側識別データ２（「１２３４５６」）とアプリケーションソフトウェア２０の識別データ１（「４５６１２３」）とを照合して、それぞれが合致せずにアプリケーションソフトウェア２０が不正に組み込まれたものであると判断する。その結果、システムプログラム１２は、このアプリケーションソフトウェア２０のＣＰＵ１３による実行を許可せずに、アプリケーションソフトウェア２０をバックアップ領域１１ａに留め（Ｓ７）、例えば組み込まれたアプリケーションソフトウェア２０が不正に組み込まれたものであることをユーザに知らせる警告メッセージをＣＰＵ１３から通知させる（Ｓ８）。
【００２９】
上述のように本構成例では、従来例と同様に、正当に組み込まれたアプリケーションソフトウェア２０のバージョンアップを、開発装置を所有するユーザに委託することを可能としながらも、アプリケーションソフトウェア２０及び当該アプリケーションソフトウェア２０が組み込まれる電子機器１０に、互いに合致する識別データ１，２をそれぞれ備え、電子機器１０に備えられた機器側識別データ２と、アプリケーションソフトウェア２０の識別データ１とを照合して合致したときにのみ、組み込まれたアプリケーションソフトウェア２０に応じて電子機器１０を動作させるようにしたことによって、不正なアプリケーションソフトウェア２０が電子機器１０に組み込まれたときには、識別データ１と機器側識別データ２とが合致せずに、アプリケーションソフトウェア２０に応じて電子機器１０を動作させないため、アプリケーションソフトウェア２０の電子機器１０への不正な組み込みを防止することができる。
【００３０】
これにより、例えば、用途に応じて互いに異なって価格差のある２種類のアプリケーションソフトウェア２０がそれぞれ各別に組み込まれた安価な電子機器１０と高価な電子機器１０とがあって、ユーザが高価な電子機器１０からアプリケーションソフトウェア２０をコピーし、このアプリケーションソフトウェア２０を安価な電子機器１０に不正に組み替えることによって、結果的にユーザが高価な電子機器１０を低価格で得たことになるのを防ぐごとができる。
【００３１】
また本構成例では、機器側識別データ２がシステムプログラム１２に備えられていることによって、電子機器１０のハードウェアは、正当に組み込まれるアプリケーションソフトウェア２０の種類に応じて個々に変更されることなく、電子機器１０のハードウェアの製造工程を一本化することができる。
【００３２】
（参考例２）
ところで、システムプログラム１２は非公開であり、製造時にメーカによってバックアップ領域１１ａに用いられるＲＯＭなどに記憶されて、ユーザによる変更が行えないように電子機器１０に備えられている。
【００３３】
しかし、アプリケーションソフトウェア２０は、ユーザによる変更を行えるようにして、ユーザは市販の開発装置を用いてアプリケーションソフトウェア２０の内容を変更し、アプリケーションソフトウェア２０をバージョンアップすることがある。
【００３４】
このときに、ユーザは、メーカ側からアプリケーションソフトウェア２０のソースコードが公開されていなくても、開発装置を用いてバックアップ領域１１ａに記憶されているアプリケーションソフトウェア２０の実行ファイルから識別データ１を見ることができる。
【００３５】
さらに、開発装置を用いればアプリケーションソフトウェア２０の識別データ１から同じくバックアップ領域１１ａに記憶されているシステムプログラム１２の機器側識別データ２を比較検索することが可能であり、その結果、識別データ１及び機器側識別データ２が判明されて、不正なアプリケーションソフト２０が電子機器１０に組み込まれることがある。
【００３６】
そこで本構成例では、正当に組み込まれるアプリケーションソフトウェア２０の識別データ１は予め変換されており、システムプログラム１２は、変換されたアプリケーションソフト２０の識別データ１を所定の変換処理により元に戻して照合する。
【００３７】
例えば、機器側識別データ２と、正当に組み込まれたアプリケーションソフトウェア２０の識別データ１とがそれぞれ「１２３４５６」のデータからなっている場合、アプリケーションソフトウェア２０には予め３桁ずらして変換された「４５６１２３」のデータからなる識別データ１が備えられている。
【００３８】
そして電子機器１０に電源が投入され、システムプログラム１２が実行領域１１ｂに移されて起動されると、システムプログラム１２は、図４のフロー図に示すように、バックアップ領域１１ａに記憶されているアプリケーションソフトウェア２０の変換された識別データ１（「４５６１２３」）を読み込み（Ｓ１）、所定の変換処理により「４５６１２３」を３桁ずらして元の識別データ１である「１２３４５６」に戻す（Ｓ２）。その後、システムプログラム１２は、自己の機器側識別データ２（「１２３４５６」）と、アプリケーションソフトウェア２０の元に戻された識別データ１（「１２３４５６」）とを照合し（Ｓ３）、それぞれが合致してアプリケーションソフトウェア２０が正当に組み込まれたものであると判断すると、上述のようにアプリケーションソフトウェア２０を実行領域１１ｂに移して、ＣＰＵ１３によるアプリケーションソフトウェア２０の実行を許可する（Ｓ４）。
【００３９】
ところが、アプリケーションソフトウェア２０に予め備えられている識別データ１が仮に「３４５６１２」であった場合、システムプログラム１２は、ステップＳ２にて「３４５６１２」を上述と同様の変換処理により３桁ずらして元の識別データ１である「６１２３４５」に戻し、この元に戻されたアプリケーションソフトウェア２０の識別データ１（「６１２３４５」）と自己の機器側識別データ２（「１２３４５６」）と照合する（Ｓ３）。
【００４０】
このときシステムプログラム１２は、照合した結果それぞれが合致しないため、アプリケーションソフトウェア２０が不正に組み込まれたものであると判断すると、アプリケーションソフトウェア２０をバックアップ領域１１ａに留め、ＣＰＵ１３によるアプリケーションソフトウェア２０の実行を禁止する（Ｓ５）。
【００４１】
上述のように本構成例では、ユーザが開発装置を用いて電子機器１０のバックアップ領域１１ａに記憶されているアプリケーションソフトウェア２０の識別データ１を知った場合でも、このアプリケーションソフトウェア２０の識別データ１は予め変換されており、システムプログラム１２が所定の変換処理により元に戻して照合していることによって、ユーザに変換処理の内容が知られない限り、識別データ１と比較検索することでシステムプログラム１２内の機器側識別データ２が判明されることを難しくして、アプリケーションソフトウェア２０の電子機器１０への不正な組み込めをさらに防ぐことができる。
【００４２】
例えばシステムプログラム１２Ａが備えられた一方の電子機器１０に正当に組み込まれるアプリケーションソフトウェア２０Ａの識別データ１Ａが「１２３４５６」であって、システムプログラム１２Ｂが備えられた他方の電子機器１０に正当に組み込まれるアプリケーションソフトウェア２０Ｂの識別データ１Ｂが「９８７６５４」である場合、ユーザは、これらの識別データ１Ａ，１Ｂを認知することができたとしても、これらの識別データ１Ａ，１Ｂがシステムプログラム１２Ａ，１２Ｂによってどのように変換されているのか分らないため、システムプログラム１２Ａ，１２Ｂが備えられた一方の電子機器１０に、他方の電子機器１０のアプリケーションソフトウェア２０Ｂ，２０Ａを組み込むことができないのである。
【００４３】
なお、本構成例では、バックアップ領域１１ａとして用いられるＲＯＭが取り出されて、ＲＯＭに記憶された全ての内容、つまりシステムプログラム１２の変換処理の内容及び機器側識別データ２がコピーされたときには、不正なアプリケーションソフトウェア２０の電子機器１０への組み込みを防ぐことができないので、ＲＯＭは機器本体１０ａから取り出されないように備えられるとともに、機器本体１０ａには、ＲＯＭに市販の開発装置を接続してアプリケーションソフトウェア２０のバージョンアップを行うためのコネクタが設けられ、ＲＯＭに記憶された全ての内容のコピーを防止している。またさらに、剥がされたり破られたりすることによりＲＯＭが取り出されたことを証拠として残すような封印シールを機器本体１０ａに貼り付けることによって、ＲＯＭが取り出されたとき、ユーザにより不正な行為が行われたことを明らかにすることができる。
【００４４】
ところで、本構成例ではアプリケーションソフトウェア２０の識別データ１を予め変換しておいたが、システムプログラム１２の機器側識別データ２を予め変更しておき、システムプログラム１２に、機器側識別データ２を元に戻してアプリケーションソフトウェア２０の識別データ１と照合させるようにしても良い。
【００４５】
（実施形態１）
本実施形態における基本構成は参考例１又は２と共通するために共通する部分については同一の符号を付して説明を省略し、本実施形態の特徴となる部分についてのみ詳細に説明する。
【００４６】
本実施形態の電子機器１０には、図５及び図６に示すように、ジャンパーピンやディップスイッチなどの複数個の接点１５ａ…を具備する接点開閉装置１５が備えられ、機器側識別データ２は、参考例１又は２のようにシステムプログラム１２に備えられず、接点開閉装置１５の接点１５ａ…の開閉状態に応じて設定されている。
【００４７】
このような接点開閉装置１５は、ＣＰＵ１３にバス１６を介して接続され、ＣＰＵ１３は、アドレス指定することにより接点開閉装置１５にアクセスして複数個の接点１５ａ…の開閉状態に応じて設定される「０」，「１」のデータ列からなる機器側識別データ２を認識する。
【００４８】
また本実施形態のシステムプログラム１２は、接点開閉装置１５に設定されＣＰＵ１３により認識された「０」，「１」のデータ列からなる機器識別データ２を、十進数のデータに変換して読み込む。
【００４９】
さらに、本実施形態においては参考例２とは逆に、正当に組み込まれたアプリケーションソフトウェア２０の識別データ１と合致する機器側識別データ２が、予め変換されて接点開閉装置１５に設定され、システムプログラム１２は、変換された機器側識別データ２を所定の変換処理により元に戻して照合する。
【００５０】
このシステムプログラム１２の動作は、図７のフロー図に示すように、図４のフロー図で示した参考例２のシステムプログラム１２と同様の動作であって、ステップＳ１のアプリケーションソフトウェア２０の識別データ１が読み込まれるときに、接点開閉装置１５の機器側識別データ２が十進数のデータとして読み込まれ、ステップＳ２にて行われる変換処理が、機器側識別データ２に対して行われる点のみ異なる。
【００５１】
例えば、システムソフトウェア１２は、正当に組み込まれたアプリケーションソフトウェア２０の識別データ１の「４５６１２３」と、接点開閉装置１５の予め３桁ずらして変換されて設定された機器側識別データ２の「１２３４５６」とを読み込む（Ｓ１）。そして、システムプログラム１２は、機器側識別データ２の「１２３４５６」を３桁ずらして元の機器側識別データ２の「４５６１２３」に戻し（Ｓ２）、その後に、アプリケーションソフトウェア２０の識別データ１の「４５６１２３」と、元に戻された機器側識別データ２の「４５６１２３」とを照合する（Ｓ３）。
【００５２】
上述のように本実施形態では、ユーザが市販の開発装置を用いてアプリケーションソフトウェア２０の識別データ１を知った場合でも、接点開閉装置１５には予め変換された機器側識別データ２が設定されて、システムプログラム１２が所定の変換処理により元に戻して照合していることによって、ユーザに変換処理の内容が知られない限り、機器側識別データ２が判明されることを難しくして、アプリケーションソフトウェア２０の電子機器１０への不正な組み込みをさらに防ぐことができる。
【００５３】
また、本実施形態では、バックアップ領域１１ａとして用いられるＲＯＭが取り出されて、記憶された全ての内容がコピーされても、機器側識別データ２は接点開閉装置１５により設定されているので、機器側識別データ２が知られることなく、アプリケーションソフトウェア２０の電子機器への不正な組み込みをまたさらに防ぐことができる。
【００５４】
さらに、接点開閉装置１５を封止されたチップで構成しても良く、この場合には、電子機器１０の製造時に、正当に組み込まれるアプリケーションソフトウェア２０の種類に応じた個々の接点開閉装置１５を製造して機器本体１０ａに備えなければならないが、アプリケーションソフトウェア２０の不正な組み込みを確実に防ぐことができる。
【００５５】
【発明の効果】
請求項１の発明は、用途に応じて電子機器を動作させるアプリケーションソフトウェアを組み込むことによって異なった機能を有する電子機器へのソフトウェアの不正な組み込みを防止するソフトウェアの保護方法であって、ソフトウェアおよび当該ソフトウェアが正当に組み込まれる電子機器に、互いに合致する識別手段をそれぞれ備え、電子機器に備えられた識別手段と、電子機器に組み込まれたソフトウェアの識別手段とを照合し、それぞれの識別手段が合致したときにのみ、組み込まれたソフトウェアに応じて電子機器を動作させ、ソフトウェアは、データからなる識別手段を有し、電子機器には、電子機器のハードウェアを制御するシステムプログラムが組み込まれるとともに、１乃至複数個の接点を具備する接点開閉装置が設けられており、接点の開閉状態に応じてデータからなる識別手段が設定され、システムプログラムが電子機器側の識別手段とアプリケーションソフトウェア側の識別手段とを照合し、接点開閉装置は封止されたチップで構成されているので、不正なソフトウェアが電子機器に組み込まれたときには、このソフトウェアの識別手段と電子機器の識別手段とが合致せずに、組み込まれたソフトウェアに応じて電子機器を動作させないことによって、ソフトウェアの電子機器への不正な組み込みを防止することができ、例えば、用途に応じて互いに異なって価格差のある２種類のソフトウェアがそれぞれ各別に組み込まれた安価な電子機器と高価な電子機器とがあって、ユーザが高価な電子機器からソフトウェアをコピーし、このソフトウェアを安価な電子機器に不正に組み替えることによって、結果的にユーザが高価な電子機器を低価格で得たことになるのを防ぐごとができるという効果がある。また、ユーザによりシステムプログラムの全ての内容がコピーされた場合にも、電子機器の識別手段は接点の開閉状態に応じて設定されていることによってコピーされず、さらに、接点開閉装置を封止されたチップで構成したことにより、ソフトウェアの不正な組み込みを確実に防ぐことができる。
【００５６】
請求項２の発明は、ソフトウェアおよび当該ソフトウェアが正当に組み込まれる電子機器のそれぞれに備えられた互いに合致する識別手段のうち一方を、少なくとも一部変更し、照合するときには変更された前記一方の識別手段を所定の変更処理により元に戻した後に照合するので、ソフトウェア及び当該ソフトウェアが正当に組み込まれる電子機器のそれぞれに備えられた識別手段のうち何れか一方がユーザに把握された場合でも、何れか一方の識別手段が変更されて、照合するときに所定の変更処理により元に戻されることによって、ユーザに変更処理の内容が知られない限り、他方の識別手段が判明されることを難しくして、ソフトウェアの電子機器への不正な組み込みをさらに防止することができるという効果がある。
【００５９】
請求項３の発明は、用途に応じて電子機器を動作させるアプリケーションソフトウェアを組み込むことによって異なった機能を有する電子機器であって、組み込まれたソフトウェアを実行し、当該ソフトウェアに応じて用途に則した処理を行う処理手段と、正当に組み込まれたソフトウェアに設けられたデータからなる識別手段と合致する機器側識別手段と、機器側識別手段と組み込まれたソフトウェアの識別手段とを照合し、合致したときにのみ組み込まれたソフトウェアの処理手段による実行を許可する照合手段と、１乃至複数の接点を具備して、接点の開閉状態に応じてデータからなる機器側識別手段が設定される接点開閉装置とを備え、照合手段は、電子機器のハードウェアを制御するシステムプログラムであって、接点開閉装置は封止されたチップで構成されているので、不正なソフトウェアが電子機器に組み込まれたときには、このソフトウェアの識別手段と機器側識別手段とが照合手段により照合され、それぞれが合致しない結果、処理手段によるソフトウェアの実行が許可されないことによって、ソフトウェアの電子機器への不正な組み込みを防止することができ、例えば、用途に応じて互いに異なって価格差のある２種類のソフトウェアがそれぞれ各別に組み込まれた安価な電子機器と高価な電子機器とがあって、ユーザが高価な電子機器からソフトウェアをコピーし、このソフトウェアを安価な電子機器に不正に組み替えることによって、結果的にユーザが高価な電子機器を低価格で得たことになるのを防ぐごとができるという効果がある。また、ユーザによりシステムプログラムの全ての内容がコピーされた場合にも、電子機器の識別手段は接点の開閉状態に応じて設定されていることによってコピーされず、さらに、接点開閉装置を封止されたチップで構成したことにより、ソフトウェアの不正な組み込みを確実に防ぐことができる。
【００６２】
請求項４の発明は、正当に組み込まれたソフトウェアの識別手段および前記識別手段と合致する機器側識別手段のうち一方は、少なくとも一部変更され、照合手段は、変更された前記一方の識別手段を所定の変更処理により元に戻して照合するので、正当に組み込まれたソフトウェアの識別手段及び機器側識別手段のうち何れか一方がユーザに把握された場合でも、何れか一方の識別手段が変更されて、照合手段が照合するときには所定の変更処理により元に戻されることによって、ユーザに照合手段の変更処理の内容が知られない限り、他方の識別手段が判明されることを難くして、ソフトウェアの電子機器への不正な組み込みをさらに防止することができるという効果がある。
【図面の簡単な説明】
【図１】  参考例１を示す電子機器の概略構成ブロック図である。
【図２】  （ａ），（ｂ）は同上の説明用概念図である。
【図３】  同上の動作説明用のフロー図である。
【図４】  参考例２のシステムプログラムの動作説明用のフロー図である。
【図５】  実施形態１を示す電子機器の概略構成ブロック図である。
【図６】  同上のＣＰＵと接点開閉装置を示す概略構成図である。
【図７】  同上のシステムプログラムの動作説明用のフロー図である。
【符号の説明】
１  識別データ
２  機器側識別データ
１０  電子機器
１０ａ  機器本体
１０ｂ  周辺機器
１１  メモリ
１１ａ  バックアップ領域
１１ｂ  実行領域
１２  システムプログラム
１３  ＣＰＵ
１４  周辺機器インターフェース部
２０  アプリケーションソフトウェア
【図１】
0004681105.tif 000002
【図２】
0004681105.tif 000003
【図３】
0004681105.tif 000004
【図４】
0004681105.tif 000005
【図５】
0004681105.tif 000006
【図６】
0004681105.tif 000007
【図７】
0004681105.tif 000008