(57)【特許請求の範囲】
【請求項１】
ソフトウェアが保存された記憶装置において、前記ソフトウェアを特定のハードウェアのみで起動可能とし他のハードウェアでは起動不可とするソフトウェアの不正利用防止方法であって、
前記ソフトウェアを起動させるための第１のハードウェアに接続された前記記憶装置が起動ファイルを有するか否かを確認し、前記起動ファイルを有する場合に前記ソフトウェアが初回起動であると判定する初回起動判定ステップ、
前記初回起動判定ステップにおいて初回起動であると判定された場合に、前記第１のハードウェアの少なくとも１つの固有情報を用いて認証鍵を生成し前記記憶装置に保存する認証鍵生成ステップ、
前記認証鍵生成ステップにおいて認証鍵が生成された後、前記起動ファイルを削除する起動ファイル削除ステップ、
前記ソフトウェアを起動させるための第２のハードウェアに前記記憶装置が接続された時に、前記第２のハードウェアの少なくとも１つの固有情報を用いて前記認証鍵生成ステップと同手法で生成した比較鍵を、前記記憶装置に保存された認証鍵と比較し、これらが一致した場合に前記第２のハードウェアにおいて前記ソフトウェアを起動し、一致しない場合は起動不可とする認証鍵判定ステップを含み、
前記第２のハードウェアが前記第１のハードウェアと同一であった場合のみ、前記第２のハードウェアにおいて前記ソフトウェアが起動されるようにしたことを特徴とするソフトウェアの不正利用防止方法。
【請求項２】
前記初回起動判定ステップにおいて、前記記憶装置が前記起動ファイルを有していない場合、前記ソフトウェアは初回起動でないと判定され、前記認証鍵生成ステップと前記起動ファイル削除ステップは省略されて前記認証鍵判定ステップが行われ、前記認証鍵判定ステップでは、生成された比較鍵を、初回起動時に生成され前記記憶装置に保存されている認証鍵と比較することを特徴とする請求項１記載のソフトウェアの不正利用防止方法。
【請求項３】
前記第１のハードウェア及び前記第２のハードウェアの固有情報として、製造者、製造番号、製造日、製造場所、及びＭＡＣアドレスの少なくとも１つを用いることを特徴とする請求項１記載のソフトウェアの不正利用防止方法。
【請求項４】
前記初回起動判定ステップと前記認証鍵生成ステップの間に一般鍵判定ステップを含み、前記一般鍵判定ステップは、前記起動ファイルに保存された一般鍵と前記第１のハードウェアに予め登録された比較用一般鍵を比較し、これらが一致した場合に認証鍵生成ステップが行われることを特徴とする請求項１記載のソフトウェアの不正利用防止方法。
【請求項５】
保存されたソフトウェアを特定のハードウェアのみで起動可能とし他のハードウェアでは起動不可とする記憶装置であって、
前記ソフトウェアを起動させるための第１のハードウェアに接続された時に該記憶装置自身が起動ファイルを有するか否かを確認し、前記起動ファイルを有する場合に前記ソフトウェアが初回起動であると判定する初回起動判定手段と、
前記初回起動判定手段により初回起動であると判定された場合に、前記第１のハードウェアの少なくとも１つの固有情報を用いて認証鍵を生成し該記憶装置自身に保存する認証鍵生成手段と、
前記認証鍵生成手段により認証鍵が生成された後、前記起動ファイルを削除する起動ファイル削除手段と、
前記ソフトウェアを起動させるための第２のハードウェアに接続された時に前記第２のハードウェアの少なくとも１つの固有情報を用いて前記認証鍵生成手段と同手法で生成した比較鍵を、該記憶装置自身に保存された認証鍵と比較し、これらが一致した場合に前記第２のハードウェアにおいて前記ソフトウェアを起動し、一致しない場合は起動不可とする認証鍵判定手段を備え、前記第２のハードウェアが前記第１のハードウェアと同一であった場合のみ、前記第２のハードウェアにおいて前記ソフトウェアが起動されることを特徴とする記憶装置。
【請求項６】
前記初回起動判定手段は、該記憶装置自身が前記起動ファイルを有していない場合、前記ソフトウェアは初回起動でないと判定し、この判定を受けた前記認証鍵判定手段は、生成された比較鍵を、初回起動時に生成され該記憶装置自身に保存されている認証鍵と比較することを特徴とする請求項５記載の記憶装置。
【請求項７】
前記第１のハードウェア及び前記第２のハードウェアの固有情報として、製造者、製造番号、製造日、製造場所、及びＭＡＣアドレスの少なくとも１つを用いることを特徴とする請求項５記載の記憶装置。
【請求項８】
前記起動ファイル内部に一般鍵が保存されると共に、前記第１のハードウェアに比較用一般鍵が予め登録され、前記認証鍵生成手段は、前記起動ファイルに保存された一般鍵が前記第１のハードウェアに登録された比較用一般鍵と一致した場合に、前記第１のハードウェアの少なくとも１つの固有情報を用いて認証鍵を生成することを特徴とする請求項５記載の記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアが保存されたＣＤ−ＲＯＭ、ＵＳＢメモリ、及びコンパクトフラッシュ（登録商標）カード等の記憶装置と、それらの記憶装置に保存されたソフトウェアの不正利用防止方法に関する。
【背景技術】
【０００２】
近年、電子技術の向上に伴い、ＣＤ−ＲＯＭ、ＵＳＢメモリ、及びコンパクトフラッシュカード等、様々な記憶装置が開発され一般に普及されている。これらの記憶装置にソフトウェアを保存した製品が販売されているケースがあるが、ソフトウェアが不正コピーされて利用されることが問題となっている。
【０００３】
このような不正コピーを防止する方法としては、従来、製品固有のパラメータにより生成した認証鍵を記憶装置の予備領域に保存しておき、利用者が製品固有のパラメータから直接生成した認証鍵を、記憶装置に保存された認証鍵と比較し、一致した場合のみソフトウェアが起動するようにしたものがある。なお、予備領域とは、ＭＢＲ領域またはＰＢＲ領域等、通常ではコピーされないメモリ領域に該当する。
【０００４】
例えば特許文献１では、端末装置において、保存装置（記憶装置）に保存するファイルを暗号化するための認証鍵を、保存装置に対する特性パラメータ及びファイルに対する特性パラメータ等を組み合わせて生成し、保存装置は、この認証鍵を一般データ領域とは別の予備領域に保存する。保存装置に対する特性パラメータとは、保存装置の通し番号、生産者ＩＤ、製品名等のように保存装置を特定することができるパラメータであり、ファイルに対する特性パラメータとは、ファイルの生成された日付、時間情報等である。
【０００５】
この例では、利用者が端末装置において保存装置を利用する際には、保存装置に記録された認証鍵の情報から保存装置に記録されたファイル及び保存装置に対する特性パラメータを復元し、復元された特性パラメータを用いて保存装置を認証し、認証に成功すると、認証鍵の情報を用いてファイルを復号化して利用することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１２９４６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記のように、従来の記憶装置においては、ソフトウェアの不正コピーを防止するための認証鍵を、通常ではコピーされない予備領域に保存していた。しかし、この方法では、セクターコピー等、記憶装置ごとコピーを行うことにより複製が可能であり、複製された場合、製造側は重大な損失となる。一方、生産性を考慮した場合、製造過程でのコピーは有効としなければならないため、全てのコピーを禁止にすることは現実的ではない。
【０００８】
本発明は、上記のような課題を解決するためになされたものであり、製品としてのソフトウェアが保存された記憶装置において、製品の生産性を保持しながら、出荷後のソフトウェアの不正利用を防止することが可能なソフトウェアの不正利用防止方法を提供することを目的とする。
【０００９】
また、製品としてのソフトウェアの生産性を保持しながら、出荷後のソフトウェアの不正利用を防止することが可能な記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明に係るソフトウェアの不正利用防止方法は、ソフトウェアが保存された記憶装置において、ソフトウェアを特定のハードウェアのみで起動可能とし他のハードウェアでは起動不可とするソフトウェアの不正利用防止方法であって、ソフトウェアを起動させるための第１のハードウェアに接続された記憶装置が起動ファイルを有するか否かを確認し、起動ファイルを有する場合にソフトウェアが初回起動であると判定する初回起動判定ステップと、初回起動判定ステップにおいて初回起動であると判定された場合に、第１のハードウェアの少なくとも１つの固有情報を用いて認証鍵を生成し記憶装置に保存する認証鍵生成ステップと、認証鍵生成ステップにおいて認証鍵が生成された後、起動ファイルを削除する起動ファイル削除ステップと、ソフトウェアを起動させるための第２のハードウェアに記憶装置が接続された時に、第２のハードウェアの少なくとも１つの固有情報を用いて認証鍵生成ステップと同手法で生成した比較鍵を、記憶装置に保存された認証鍵と比較し、これらが一致した場合に第２のハードウェアにおいてソフトウェアを起動し、一致しない場合は起動不可とする認証鍵判定ステップを含み、第２のハードウェアが第１のハードウェアと同一であった場合のみ、第２のハードウェアにおいてソフトウェアが起動されるようにしたものである。
【００１１】
また、本発明に係る記憶装置は、保存されたソフトウェアを特定のハードウェアのみで起動可能とし他のハードウェアでは起動不可とする記憶装置であって、ソフトウェアを起動させるための第１のハードウェアに接続された時に該記憶装置自身が起動ファイルを有するか否かを確認し、起動ファイルを有する場合にソフトウェアが初回起動であると判定する初回起動判定手段と、初回起動判定手段により初回起動であると判定された場合に、第１のハードウェアの少なくとも１つの固有情報を用いて認証鍵を生成し該記憶装置自身に保存する認証鍵生成手段と、認証鍵生成手段により認証鍵が生成された後、起動ファイルを削除する起動ファイル削除手段と、ソフトウェアを起動させるための第２のハードウェアに接続された時に第２のハードウェアの少なくとも１つの固有情報を用いて認証鍵生成手段と同手法で生成した比較鍵を、該記憶装置自身に保存された認証鍵と比較し、これらが一致した場合に第２のハードウェアにおいてソフトウェアを起動し、一致しない場合は起動不可とする認証鍵判定手段を備え、第２のハードウェアが第１のハードウェアと同一であった場合のみ、第２のハードウェアにおいてソフトウェアが起動されるものである。
【発明の効果】
【００１２】
本発明に係るソフトウェアの不正利用防止方法によれば、第１のハードウェアに接続された記憶装置が起動ファイルを有する場合にソフトウェアが初回起動であると判定して第１のハードウェアの固有情報を用いて認証鍵を生成し、認証鍵を生成後、起動ファイルを削除するようにしたので、ソフトウェアを初回起動させた特定のハードウェア（第１のハードウェア）以外ではソフトウェアを起動不可とすることができ、製品の生産性を保持しながらソフトウェアの不正利用を防止することが可能である。
【００１３】
また、本発明に係る記憶装置によれば、第１のハードウェアに接続された記憶装置が起動ファイルを有する場合にソフトウェアが初回起動であると判定する初回起動判定手段と、初回起動と判定された場合のみ、第１のハードウェアの固有情報を用いて認証鍵を生成し該記憶装置自身に保存する認証鍵生成手段と、認証鍵が生成された後、起動ファイルを削除する起動ファイル削除手段を備えることにより、ソフトウェアを初回起動させた特定のハードウェア（第１のハードウェア）以外ではソフトウェアを起動不可とすることができ、製品の生産性を保持しながらソフトウェアの不正利用を防止することが可能である。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態１に係る記憶装置に保存されたソフトウェアを起動させるためのハードウェアの構成例を示す図である。
【図２】本発明の実施の形態１に係る記憶装置のソフトウェア不正利用防止機能による処理の流れを示す図である。
【図３】本発明の実施の形態１に係る記憶装置が製造段階においてコピーされた場合の処理の流れを説明する図である。
【図４】本発明の実施の形態１に係る記憶装置が不正コピーされた場合の処理の流れを説明する図である。
【図５】本発明の実施の形態２に係る記憶装置に保存されたソフトウェアを起動させるためのハードウェアの構成例を示す図である。
【図６】本発明の実施の形態２に係る記憶装置のソフトウェア不正利用防止機能による処理の流れを示す図である。
【図７】本発明の実施の形態２に係る記憶装置が製造段階においてコピーされた場合の処理の流れを説明する図である。
【発明を実施するための形態】
【００１５】
実施の形態１．
以下に、本発明の実施の形態１に係るソフトウェアの不正利用防止方法、並びにソフトウェア不正利用防止機能を備えた記憶装置について、図面に基づいて説明する。図１は、本実施の形態１に係る記憶装置に保存されたソフトウェアを起動させるためのハードウェアの構成を示している。図１において、ハードウェア１００は、ＣＰＵ１、ＲＡＭ３、ＲＯＭ４、イーサネット（Ｅｔｈｅｒｎｅｔ：登録商標）６、及び記憶装置１０が挿入される記録メディアスロット７を含んで構成され、これらはバス８によって接続されている。
【００１６】
なお、ハードウェア１００は、記憶装置１０に保存されたソフトウェアであるアプリケーションソフトウェア１１（以下アプリケーション１１と略す）を起動させるためのハードウェアの一例であるが、アプリケーション１１を起動させるためのハードウェアの構成はこれに限定されるものではない。
【００１７】
図１において、ＣＰＵ１の内部ＲＯＭ２は、固有情報Ａ１５１を有している。ＲＡＭ３は、ＣＰＵ１等で演算されたデータを一時的に保管するものである。ＲＯＭ４は、基本機能（例えばデータの読み書き等を行う各種ドライバ等）を提供するファームウェア５と、固有情報Ｂ１５２を有している。また、イーサネット６は、例えばバス型ＲＡＮであり、固有情報Ｃ１５３を有している。固有情報Ａ１５１、固有情報Ｂ１５２、及び固有情報Ｃ１５３はいずれも、ハードウェア１００を特定するための固有情報であり、製造者、製造番号、製造日、製造場所、ＭＡＣアドレス等である。
【００１８】
また、記録メディアスロット７を介してハードウェア１００と接続される記憶装置１０は、例えばＣＤ−ＲＯＭ、ＵＳＢメモリ、及びコンパクトフラッシュカード等であり、製品としてのアプリケーション１１が保存されている。また、アプリケーション１１を特定（正規）のハードウェアのみで起動可能とし、他のハードウェアでは起動不可とするソフトウェア不正利用防止機能を有している。ソフトウェア不正利用防止機能は、記憶装置１０のアプリケーション１１とは別の記憶領域に配置されており、初回起動判定手段、認証鍵生成手段、起動ファイル削除手段、及び認証鍵判定手段を備えている。
【００１９】
記憶装置１０のソフトウェア不正利用防止機能について簡単に説明する。初回起動判定手段は、アプリケーション１１を起動させるための第１のハードウェアにおいて、記憶装置１０自身の起動ファイルの有無を確認し、起動ファイルを有する場合にアプリケーション１１が初回起動であると判定する。この判定において初回起動であると判定された場合のみ、認証鍵生成手段は、第１のハードウェアの固有情報を用いて認証鍵を生成する。
【００２０】
図１に示すハードウェア１００が第１のハードウェアであるとすると、認証鍵１３０は、ハードウェア１００の固有情報Ａ１５１、固有情報Ｂ１５２、及び固有情報Ｃ１５３を用いて生成される。ただし、これらの固有情報Ａ〜Ｃのいずれか１つがあれば認証鍵を生成することができ、これら全てを用いる必要はない。また、３つ以上の固有情報を用いて生成しても良い。生成された認証鍵１３０は、記憶装置１０のＰＢＲ領域１２に保存される。その後、起動ファイル削除手段により起動ファイルは削除される。
【００２１】
その後、アプリケーション１１を起動させるための第２のハードウェアに記憶装置１０を接続した時、認証鍵判定手段は、第２のハードウェアの固有情報を用いて認証鍵生成手段と同手法で生成した比較鍵を認証鍵と比較し、一致した場合のみアプリケーション１１を起動可能とする。これにより、アプリケーション１１を初回起動した第１のハードウェアが特定（正規）のハードウェアとなり、それ以外のハードウェアでの利用（不正コピーによる利用を含む）を防止することができる。なお、認証鍵１３０は、アプリケーション１１の初回起動時に生成されるため、初回起動以前の記憶装置１０には、認証鍵１３０は保存されていない。
【００２２】
本実施の形態１に係る記憶装置１０におけるソフトウェアの不正利用防止方法について、図１及び図２を用いて説明する。図２は、記憶装置１０のソフトウェア不正利用防止機能による処理の流れを示すフローチャートである。図２において、Ｓで始まる数字はソフトウェア不正利用防止機能による処理ステップを示し、ステップ１（Ｓ１）は初回起動判定手段による初回起動判定ステップ、ステップ２（Ｓ２）は認証鍵生成手段による認証鍵生成ステップ、ステップ３（Ｓ３）は起動ファイル削除手段による起動ファイル削除ステップ、ステップ４（Ｓ４）は認証鍵判定手段による認証鍵判定ステップである。
【００２３】
アプリケーション１１を起動させるための第１のハードウェア（ここでは図１に示すハードウェア１００とする）に記憶装置１０を接続すると、処理が開始される。Ｓ１において初回起動判定手段は、記憶装置１０自身が起動ファイルを有するか否かを確認し、起動ファイルを有する場合にアプリケーション１１が初回起動であると判定する（初回起動判定ステップ）。
【００２４】
Ｓ１において起動ファイルがあった場合（Ｙｅｓ）、Ｓ２に進む。Ｓ２において、認証鍵生成手段は、ハードウェア１００の少なくとも１つの固有情報を用いて認証鍵を生成し、記憶装置１０自身に保存する（認証鍵生成ステップ）。
【００２５】
Ｓ２において認証鍵が生成された後、Ｓ３において、起動ファイル削除手段は、起動ファイルを削除する（起動ファイル削除ステップ）。
【００２６】
その後、アプリケーション１１を起動させるための第２のハードウェアに記憶装置１０を接続した時、Ｓ４において、認証鍵判定手段は、第２のハードウェアの少なくとも１つの固有情報を用いて認証鍵生成ステップと同手法で比較鍵を生成し、この比較鍵を、記憶装置１０自身に保存された認証鍵と比較する。
【００２７】
Ｓ４において、認証鍵と比較鍵が一致した場合（Ｙｅｓ）、ステップ５（Ｓ５）に進み、第２のハードウェアにおいてアプリケーション１１の通常機能を起動する。一方、Ｓ４において、認証鍵と比較鍵が一致しない場合（Ｎｏ）には、ステップ６（Ｓ６）に進み、第２のハードウェアにおけるアプリケーション１１の通常機能は起動不可とする（認証鍵判定ステップ）。起動不可の場合は、不正コピー表示を行い無限ループとなる。
【００２８】
一方、Ｓ１の初回起動判定ステップにおいて、記憶装置１０が起動ファイルを有していない場合（Ｎｏ）、アプリケーション１１は初回起動でないと判定され、Ｓ２の認証鍵生成ステップとＳ３の起動ファイル削除ステップは省略され、Ｓ４の認証鍵判定ステップが行われる。その際、Ｓ４の認証鍵判定ステップでは、生成された比較鍵を、初回起動時に生成され記憶装置１０に保存されている認証鍵と比較する。
【００２９】
以上のＳ１〜Ｓ６の処理ステップにより、第２のハードウェアが初回起動時の第１のハードウェアであるハードウェア１００と同一であった場合のみ、認証鍵と一致する比較鍵が生成され、第２のハードウェアにおいてアプリケーション１１が起動される。
【００３０】
なお、認証鍵及び比較鍵を生成するための第１のハードウェア及び第２のハードウェアの固有情報として、製造者、製造番号、製造日、製造場所、及びＭＡＣアドレスの少なくとも１つを用いるとよい。また、これらの固有情報を演算することにより、利用者が容易に想定できないように加工してもよい。
【００３１】
次に、本実施の形態１に係る記憶装置が製造段階においてコピーされ、製品として出荷された場合の処理の流れについて、図３を用いて説明する。製造段階においては、図３（ａ）に示すように、コピー元となる記憶装置（マスター）１０Ｍから記憶装置（正規品）１０Ａに、アプリケーション１１、起動ファイルである認証鍵生成機能起動ファイル１４、及びその他のデータがコピーされる。
【００３２】
認証鍵生成機能起動ファイル１４は、認証鍵生成手段と起動ファイル削除手段に該当するものである。なお、記憶装置（マスター）１０Ｍは、初回起動判定手段と認証鍵判定手段（いずれも図示せず）を有しており、これらは記憶装置（正規品）１０Ａにコピーされる。
【００３３】
図３（ｂ）は、製品として出荷された記憶装置（正規品）１０Ａを、正規のハードウェアＡ１０１に接続し、初回起動した際の動作（認証鍵生成ステップと起動ファイル削除ステップ）を示している。初回起動時、記憶装置（正規品）１０Ａには、認証鍵生成機能起動ファイル１４があるため、ハードウェアＡの固有情報１５Ａを用いて認証鍵Ａ１３１が生成される。認証鍵Ａ１３１は、ハードウェアＡの固有情報１５Ａである固有情報Ａ１５１、固有情報Ｂ１５２、及び固有情報Ｃ１５３から生成され、記憶装置（正規品）１０ＡのＰＢＲ領域に保存される。認証鍵生成機能起動ファイル１４は、認証鍵Ａ１３１を生成した後、自身を削除する。
【００３４】
図３（ｃ）は、図３（ｂ）に示す初回起動後に、再び正規のハードウェアＡ１０１に接続された記憶装置（正規品）１０Ａの動作（認証鍵判定ステップ）を示している。図３（ｃ）では、正規のハードウェアＡ１０１に記憶装置（正規品）１０Ａが接続され、ハードウェアＡの固有情報１５Ａである固有情報Ａ１５１、固有情報Ｂ１５２、及び固有情報Ｃ１５３を用い、認証鍵Ａ１３１と同手法で比較鍵Ａ１６１が生成される。
【００３５】
認証鍵判定ステップでは、生成された比較鍵Ａ１６１と、記憶装置（正規品）１０Ａに保存されている認証鍵Ａ１３１が比較される。ここでは、認証鍵Ａ１３１と比較鍵Ａ１６１は、同一の正規のハードウェアＡ１０１において、同一のハードウェアＡの固有情報１５Ａを用い、同手法で生成されているため一致する。これにより、アプリケーション１１の通常機能が起動される。
【００３６】
次に、図３における記憶装置（正規品）１０Ａが、不正にコピーされた場合の処理の流れについて、図４を用いて説明する。図４（ａ）に示すように、製品として出荷された記憶装置（正規品）１０Ａが不正コピーされた場合、記憶装置（不正コピー品）１０Ｂには、アプリケーション１１と共に、記憶装置（正規品）１０Ａが正規のハードウェアＡ１０１において初回起動された際に生成された認証鍵Ａ１３１がコピーされ、そのＰＢＲ領域に保存される。
【００３７】
さらに、不正コピーの場合のコピー元である記憶装置（正規品）１０Ａは、初回起動判定手段と認証鍵判定手段（いずれも図示せず）を有しており、これらは記憶装置（不正コピー品）１０Ｂにコピーされる。不正コピーの場合、記憶装置（正規品）１０Ａは初回起動ではないため、認証鍵生成機能起動ファイル１４（図３参照）は存在しない。
【００３８】
記憶装置（不正コピー品）１０Ｂを、正規のハードウェアＡ１０１（図３）とは別のハードウェアＢ１０２に接続し、起動させようとした場合、図４（ｂ）に示すように、記憶装置（不正コピー品）１０Ｂには認証鍵生成機能起動ファイル１４が存在しないため、認証鍵生成ステップと起動ファイル削除ステップは行われない。すなわち、ハードウェアＢの固有情報１５Ｂを用いた新たな認証鍵は生成されず、不正コピーの際にコピーされた認証鍵Ａ１３１が保存された状態となる。
【００３９】
その後、ハードウェアＢ１０２に接続された記憶装置（不正コピー品）１０Ｂは、認証鍵判定ステップを行う。認証鍵判定ステップでは、図４（ｃ）に示すように、ハードウェアＢの固有情報１５Ｂである固有情報Ｄ１５４、固有情報Ｅ１５５、及び固有情報Ｆ１５６を用い、認証鍵Ａ１３１と同手法で比較鍵Ｂ１６２が生成され、認証鍵Ａ１３１と比較される。ここでは、認証鍵Ａ１３１はハードウェアＡの固有情報１５Ａを用いて生成され、比較鍵Ｂ１６２はハードウェアＢの固有情報１５Ｂを用いて生成されているため、認証鍵Ａ１３１と比較鍵Ｂ１６２は一致しない。これにより、アプリケーション１１の通常機能は起動されない。
【００４０】
以上のように、本実施の形態１に係る記憶装置１０のソフトウェア不正利用防止機能によれば、アプリケーション１１を起動するための第１のハードウェアに接続された記憶装置１０が起動ファイルを有していた場合（初回起動の場合）のみ、第１のハードウェアの固有情報を用いて認証鍵を生成し、認証鍵を生成した後に起動ファイルを削除するようにしたので、アプリケーション１１を初回起動した第１のハードウェアを特定（正規）のハードウェアとし、正規のハードウェア以外ではアプリケーション１１を起動不可とすることができ、アプリケーション１１の不正利用を防止することが可能である。
【００４１】
また、製造段階においては、コピー元となる記憶装置（マスター）１０Ｍから記憶装置（正規品）１０Ａに、アプリケーション１１、認証鍵生成機能起動ファイル１４、その他のソフトウェア不正利用防止機能をコピーすることが可能であり、製品の生産性は保持されるため、生産性が低下することはない。
【００４２】
実施の形態２．
図５は、本発明の実施の形態２に係る記憶装置に保存されたソフトウェアを起動させるためのハードウェアの構成を示している。なお、図５において、図１と同一、相当部分には同一符号を付し、説明を省略する。図５に示すハードウェア１００ａは、ＲＯＭ４のファームウェア５１に、比較用の一般鍵１７０が登録されている以外は、図１のハードウェア１００と同じ構成である。また、本実施の形態２に係る記憶装置１０は、起動ファイル内部に一般鍵１７１（図７参照）が保存されている。
【００４３】
本実施の形態２に係る記憶装置１０におけるソフトウェアの不正利用防止方法について、図５及び図６を用いて説明する。なお、図６のフローチャートは、本実施の形態２に係る記憶装置のソフトウェア不正利用防止機能による処理の流れを示しているが、Ｓ１の初回起動判定ステップと、Ｓ２の認証鍵生成ステップの間に、ステップ１１（Ｓ１１）の一般鍵判定ステップを含んでいること以外は、図２（実施の形態１）と同様であるので説明を簡略化する。
【００４４】
アプリケーション１１を起動させるための第１のハードウェア（ここでは図５に示すハードウェア１００ａとする）に記憶装置１０を接続すると処理が開始され、Ｓ１の初回起動判定ステップにおいて、起動ファイルを有し初回起動であると判定された後、Ｓ１１において、起動ファイルに保存された一般鍵と、ハードウェア１００ａに予め登録された比較用の一般鍵１７０を比較し、これらが一致するか否かを判定する（一般鍵判定ステップ）。
【００４５】
Ｓ１１において、起動ファイルに保存された一般鍵が比較用の一般鍵１７０と一致した場合（Ｙｅｓ）、Ｓ２の認証鍵生成ステップ以降の処理ステップが行われる。一方、Ｓ１１において、起動ファイルに保存された一般鍵が比較用の一般鍵１７０と一致しない場合（Ｎｏ）には、Ｓ２の認証鍵生成ステップ、Ｓ３の起動ファイル削除ステップを省略して、Ｓ４の認証鍵判定ステップが行われる。
【００４６】
本実施の形態２では、Ｓ２の認証鍵生成ステップを行うために必要な処理ステップとして、Ｓ１の初回起動判定ステップに加え、Ｓ１１の一般鍵判定ステップを行うようにし、ソフトウェア不正利用防止機能をより強固にしたものである。なお、一般鍵判定ステップを追加するためには、記憶装置１０の起動ファイル内部に一般鍵を保存し、さらに、記憶装置１０のアプリケーション１１を初回起動させるハードウェア１００ａ（正規のハードウェア）にも、比較用の一般鍵を登録しておく必要がある。
【００４７】
本実施の形態２に係る記憶装置が製造段階においてコピーされ、製品として出荷された場合の処理の流れについて、図７を用いて説明する。製造段階においては、図７（ａ）に示すように、コピー元となる記憶装置（マスター）１０Ｍから記憶装置（正規品）１０Ａに、アプリケーション１１、認証鍵生成機能起動ファイル１４、及びその他のデータがコピーされる。また、記憶装置（マスター）１０Ｍは、初回起動判定手段と認証鍵判定手段（いずれも図示せず）を有しており、これらも記憶装置（正規品）１０Ａにコピーされる。さらに、本実施の形態２では、認証鍵生成機能起動ファイル１４の内部に一般鍵１７１が保存されており、これも記憶装置（正規品）１０Ａにコピーされる。
【００４８】
図７（ｂ）は、製品として出荷された記憶装置（正規品）１０Ａを、正規のハードウェアＡ１０１に接続し、初回起動した際の動作（認証鍵生成ステップと起動ファイル削除ステップ）を示している。初回起動時、記憶装置（正規品）１０Ａには認証鍵生成機能起動ファイル１４があり、さらに認証鍵生成機能起動ファイル１４に保存されている一般鍵１７１が、ハードウェアＡ１０１に保存されている比較用の一般鍵（図示せず）と一致するため、図７（ｂ）に示すようにハードウェアＡの固有情報１５Ａを用いて認証鍵Ａ１３１が生成される。認証鍵生成機能起動ファイル１４は、認証鍵Ａ１３１を生成した後、自身を削除する。この時、一般鍵１７１も削除される。その他の動作については、上記実施の形態１と同様であるので説明を省略する。
【００４９】
本実施の形態２によれば、記憶装置１０のソフトウェア不正利用防止機能が認証鍵生成ステップを行うために必要な処理ステップとして、初回起動判定ステップに加え、一般鍵判定ステップを行うようにし、ハードウェアに予め登録された比較用の一般鍵が、起動ファイルの一般鍵と一致した場合のみ、該ハードウェアで認証鍵生成ステップが行われるため、上記実施の形態１よりもさらにアプリケーション１１の不正利用防止効果が高くなる。
【産業上の利用可能性】
【００５０】
本発明は、製品としてのソフトウェアが保存されたＣＤ−ＲＯＭ、ＵＳＢメモリ、及びコンパクトフラッシュカード等の記憶装置に利用することができる。
【符号の説明】
【００５１】
１  ＣＰＵ、２  内部ＲＯＭ、３  ＲＡＭ、４  ＲＯＭ、５、５１  ファームウェア、
６  イーサネット、７  記録メディアスロット、８  バス、
１０  記憶装置、１０Ａ  記憶装置（正規品）、
１０Ｂ  記憶装置（不正コピー品）、１０Ｍ  記憶装置（マスター）、
１１  アプリケーションソフトウェア、１２  ＰＢＲ領域、
１４  認証鍵生成機能起動ファイル、
１５Ａ  ハードウェアＡの固有情報、１５Ｂ  ハードウェアＢの固有情報、
１００、１００ａ  ハードウェア、１０１  ハードウェアＡ、１０２  ハードウェアＢ、
１３０  認証鍵、１３１  認証鍵Ａ、
１５１  固有情報Ａ、１５２  固有情報Ｂ、１５３  固有情報Ｃ、１５４  固有情報Ｄ、１５５  固有情報Ｅ、１５６  固有情報Ｆ、
１６１  比較鍵Ａ、１６２  比較鍵Ｂ、
１７０  比較用一般鍵、１７１  一般鍵。
【図１】
0005602679.tif 000002
【図２】
0005602679.tif 000003
【図３】
0005602679.tif 000004
【図４】
0005602679.tif 000005
【図５】
0005602679.tif 000006
【図６】
0005602679.tif 000007
【図７】
0005602679.tif 000008