(57)【特許請求の範囲】
【請求項１】
コンピュータと双方向でデータ交換するための入出力手段と，前記出力手段を介して前記コンピュータに伝達可能なデータファイルであって，コンピュータプログラムのコピーを識別するためのキーを含む前記データファイルを有する第１のメモリ装置とを有する，コンピュータプログラムの不当コピー阻止装置であって，
前記コンピュータプログラムの不当コピー阻止装置は，さらに，前記入力手段を介してコンピュータを識別するための識別子を含むデータを書き込み可能な第２のメモリ装置を有し，
前記データファイルを転送すると前記第１のメモリ装置から前記キーを消去することを特徴とするコンピュータプログラムの不当コピー阻止装置。
【請求項２】
前記第１のメモリ装置及び前記第２のメモリ装置は，メモリモジュール内に一体化されている，ことを特徴とする請求項１に記載のコンピュータプログラムの不当コピー阻止装置。
【請求項３】
前記メモリモジュールは，不揮発性半導体メモリである，ことを特徴とする請求項２に記載のコンピュータプログラムの不当コピー阻止装置。
【請求項４】
前記入出力手段は，前記コンピュータのモジュールポートと通信するように形成され，前記コンピュータのモジュールポートに差し込まれる，ことを特徴とする請求項１，２あるいは３項のうちいずれか１項に記載のコンピュータプログラムの不当コピー阻止装置。
【請求項５】
コンピュータプログラムの不当コピーを阻止する方法であって，
−コンピュータと双方向でデータ交換するための入出力手段と，前記出力手段を介して前記コンピュータに伝達可能なデータファイルであって，コンピュータプログラムのコピーを識別するためのキーを含む前記データファイルを有する第１のメモリ装置とを有する，コンピュータプログラムの不当コピー阻止装置であって，前記コンピュータプログラムの不当コピー阻止装置は，さらに，前記入力手段を介してコンピュータを識別するための識別子を含むデータを書き込み可能な第２のメモリ装置を有し，前記データファイルを転送すると前記第１のメモリ装置から前記キーを消去する前記不当コピー阻止装置を，双方向のデータ交換のためにコンピュータと接続する工程と；
−キーを有する第１のデータファイルを，前記不当コピー阻止装置からコンピュータに伝達する工程と；
−前記コンピュータの識別子を有する第２のデータファイルを，前記コンピュータから前記不当コピー阻止装置にコピーする工程と，
を有することを特徴とするコンピュータプログラムの不当コピー阻止方法。
【請求項６】
前記コンピュータには，さらに，キー及びライセンス番号により暗号化されたクリアリング番号が入力される，ことを特徴とする請求項５に記載のコンピュータプログラムの不当コピー阻止方法。
【請求項７】
前記コンピュータは，前記請求項１〜４に記載の装置にコピーされたデータファイル内に含まれる識別子の検査後に，前記キーを再び接続されている装置に返送する，ことを特徴とする請求項５に記載のコンピュータプログラムの不当コピー阻止方法。
【請求項８】
コンピュータで実行されるコンピュータプログラム格納されている記録媒体であって，
前記記録媒体は，キー及び識別子を有しており，
前記記録媒体の読み込みの際に，前記請求項５〜７項のいずれか１項に記載の方法が実施される，
ことを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，コンピュータプログラムの不当コピー阻止装置，不当コピー阻止方法及び記録媒体に関し，さらに詳細には，コンピュータと双方向でデータ交換するための入出力手段と，前記出力手段を介して前記コンピュータに伝達可能なデータファイルを有する第１のメモリ装置とを有する，コンピュータプログラムの不当コピー阻止装置，不当コピー阻止方法及び記録媒体に関する。
【０００２】
【従来の技術】
通常，記録媒体上に格納されたコンピュータプログラムは，自由にコピーすることができる。このため，商業的なコンピュータプログラムのメーカーは，製品の不当なコピーに対して保護したり，不当にコピーされたコンピュータプログラムを実行不能とするために尽力している。
【０００３】
コピーを防止するための特別な形態として，いわゆるドングル（Ｄｏｎｇｌｅ）の使用が挙げられる。かかるドングルはハードウェアモジュールであって，コンピュータのモジュールポートに挿入することによって初めて，付属のコンピュータプログラムを利用可能となる。したがって，かかるドングルが挿入されていない場合には，プログラムは実行されない。このように，モジュールポートにドングルが挿入されているコンピュータ上のみで，コンピュータプログラムをコピーすることができる。
【０００４】
しかしながら，プログラムを使用する場合には，常時，ドングルをコンピュータのモジュールポート（即ち，シリアルあるいはパラレルインターフェイス）に挿入していなけれならないという問題がある。このことは，コンピュータインターフェイスが使用されていることを意味する。また，ドングルを紛失した場合には，プログラムを利用できなくなるという問題もある。コンピュータ上に保護された複数のコンピュータプログラムがインストールされており，必要なポートを使用できない場合には，ユーザはドングルを交換しなければならない。
【０００５】
また，ＷＯ９１／１５８６により既知であるドングルは，プログラムをインストールする際に，データファイルをコンピュータに伝達し，最初は実行できないインストールプログラムを利用できるように修正する。ドングルの接続は必要なくなり，取り外すことができる。即ち，コンピュータプログラムは１つのコンピュータ上でしか利用できないことが保証される。
【０００６】
【発明が解決しようとする課題】
しかしながら，上記公報においては，ドングルを一度使用した後は，ドングルを使用することができないため，ユーザは後に，プログラムを他のコンピュータにインストールすることができないという問題がある
【０００７】
したがって，本発明の目的は，コンピュータプログラムを何時でも複数のコンピュータで使用することが可能な新規かつ改良されたコンピュータプログラムの不当コピー阻止装置，コンピュータプログラムの不当コピー阻止方法及び記録媒体を提供することにある。
【０００８】
【課題を解決するための手段】
上記課題を解決するため，請求項１に記載の発明では，コンピュータと双方向でデータ交換するための入出力手段と，前記出力手段を介して前記コンピュータに伝達可能なデータファイルを有する第１のメモリ装置とを有する，コンピュータプログラムの不当コピー阻止装置であって，前記コンピュータプログラムの不当コピー阻止装置は，さらに，前記入力手段を介して書き込み可能な第２のメモリ装置を有する，ことを特徴とするコンピュータプログラムの不当コピー阻止装置が提供される。
【０００９】
本項記載の発明では，コンピュータプログラムを常時，複数のコンピュータで利用することができる。
【００１０】
また，請求項２に記載の発明のように，前記第１のメモリ装置及び前記第２のメモリ装置は，メモリモジュール内に一体化されている，如く構成すれば，メモリ装置に一体化さるので好ましい。
【００１１】
また，請求項３に記載の発明のように，前記メモリモジュールは，不揮発性半導体メモリである，如く構成するのが好ましい。メモリ装置として，好ましくは例えばＲＯＭなどの不揮発性の半導体メモリが使用される。
【００１２】
また，請求項４に記載の発明ように，前記入出力手段は，前記コンピュータのモジュールポートと通信するように形成され，前記コンピュータのモジュールポートに差し込まれる，如く構成すれば，例えばプラグあるいはブッシュをコンピュータのインターフェイスへ差し込むことにより，占有されているインターフェイスを介して双方向のデータ交換を行なうことができる。
【００１３】
また，上記課題を解決するため，請求項５に記載の発明では，コンピュータプログラムの不当コピーを阻止する方法であって，−請求項１〜４に記載の装置を，双方向のデータ交換のためにコンピュータと接続する工程と；−キーを有する第１のデータファイルを，前記請求項１〜４に記載の装置からコンピュータに伝達する工程と；−前記コンピュータの識別子を有する第２のデータファイルを，前記コンピュータから前記請求項１〜４に記載の装置にコピーする工程と，を有することを特徴とするコンピュータプログラムの不当コピー阻止方法が提供される。
【００１４】
装置はコンピュータ識別子を有しているので，電子的なキーを再び返送し，その後ドングルを他のコンピュータに接続して，キーを伝達することにより，，コンピュータプログラムを常時，複数のコンピュータで利用することができる。
【００１５】
また，請求項６に記載の発明のように，前記コンピュータには，さらに，キーにより暗号化されたクリアリング番号が入力される，如く構成すれば，装置は格納されている一義的な識別子によりコンピュータを認識するので，ユーザが後に他のコンピュータでプログラムを利用しようとした場合であっても，装置を再びコンピュータに接続するだけでよい。即ち，例えばユーザがプログラムを購入する際に，装置内のキーによってコード化あるいは暗号化されたクリアリング番号を取得する。このクリアリング番号は，プログラムをインストールする際に入力しなければならない。プログラムを始動する際には，キーによりクリアリング番号が復号されて，所定のプログラムモジュールあるいは各種モードが作動される。このとき，販売者は，ユーザに対して期限付きの評価バージョンあるいは期限付きのデモバージョンを提供することができる。なお，ユーザが後に他のモジュール又は完全バージョンを望んだ場合には，新しいクリアリング番号を伝達するだけでよい。クリアリング番号は正しい装置でしか利用できないため，かかる伝達は特別な措置を必要としない。キーを伝達した後には，装置を再び取り外すことができる。このとき，ユーザが後に他のコンピュータでプログラムを利用しようとした場合には，装置を再びコンピュータに接続するだけでよい。装置は格納されている一義的な識別子を用いて，コンピュータを認識することができる。
【００１６】
また，請求項７に記載の発明のように，前記コンピュータは，前記請求項１〜４に記載の装置にコピーされたデータファイル内に含まれる識別子の検査後に，前記キーを再び接続されている装置に返送する，如く構成すれば，その後装置は，他のコンピュータで使用することができる。
【００１７】
また，上記課題を解決するため，請求項８に記載の発明のように，コンピュータで実行されるコンピュータプログラム格納されている記録媒体であって，前記記録媒体は，キー及び識別子を有しており，前記記録媒体の読み込みの際に，前記請求項５〜７項のいずれか１項に記載の方法が実施される，ことを特徴とする記録媒体が提供される。
【００１８】
【発明の実施の形態】
以下，本発明の好適な実施の形態について，添付図面を参照しながら詳細に説明する。尚，以下の説明及び添付図面において，同一の機能及び構成を有する構成要素については，同一符号を付することにより，重複説明を省略する。
【００１９】
（第１の実施の形態）
まず，図１〜図４を参照しながら，第１の実施の形態にかかるコンピュータプログラムの不当コピー阻止方法を説明する。なお，図１は，クリアリング番号（Ｆｒｅｉｓｃｈａｌｔｎｕｍｍｅｒ）を有するプログラムが，ディスケットからコンピュータのハードディスクにインストールされる工程を示すフローチャートである。
【００２０】
まず，図１に示すように，ステップＳ１０１で，インストールが開始される（ステップＳ１０１）。次いで，ステップＳ１０２で，ユーザがプログラムをインストールするか否かが照合される（ステップＳ１０２）。インストールしないと決定した場合には（例えば必要なプログラムモジュールは，既にインストールされている場合には），ステップＳ１０５に移行する。
【００２１】
一方，ユーザがプログラムをインストールする場合には，ステップＳ１０３に移行し，プログラム部分がディスケットからコンピュータのハードディスクにコピーされる（ステップＳ１０３）。
【００２２】
さらに，ステップＳ１０４で，ドライバ，アイコン及び他のモジュールがインストールされる（ステップＳ１０４）。その後，ステップＳ１０５で，ユーザは，暗号化されたクリアリング番号を入力する（ステップＳ１０５）。
【００２３】
次いで，ステップＳ１０６で，入力された，暗号化されたクリアリング番号が，データファイルに格納される（ステップＳ１０６）。その後，ステップＳ１０７で，インストールを終了する（ステップＳ１０７）。
【００２４】
次に，図２に基づいて，本実施形態にかかる装置（本実施形態ではドングル）により，コンピュータ（ＰＣ）でプログラムがクリアリングされる工程を説明する。
【００２５】
まず，図２に示すように，ステップＳ２０１で，プログラムが開始される（ステップＳ２０１）。次いで，ステップＳ２０２で，ドングルが接続されているか否かが判断される（ステップＳ２０２）。ドングルが接続されていないと判断される場合には，ステップＳ２０９に移行し，処理が中止される（ステップＳ２０９）。
【００２６】
一方，ドングルが接続されていると判断される場合には，ステップＳ２０３に移行し，ドングルが有効なキーを有しているか否かが判断される（ステップＳ２０３）。ドングルが有効なキーを有していないと判断される場合には，ステップＳ２０４で，ドングルが正しいＰＣ識別子を有しているか否かが判断される（ステップＳ２０４）。ドングルが正しいＰＣ識別子を有していないと判断される場合には，ステップＳ２０９に移行し，処理が中止される（ステップＳ２０９）。
【００２７】
一方，ステップＳ２０３で，ドングルが有効なキーを有していると判断される場合，あるいは，ステップＳ２０４で，正しいＰＣ識別子を有していると判断される場合には，ステップＳ２０５に移行する。ステップＳ２０５では，キーとコンピュータプログラムのライセンス番号がＰＣにコピーされる（ステップＳ２０５）。
【００２８】
次いで，ステップＳ２０６で，ドングル内のキーが消去される（ステップＳ２０６）。さらに，ステップＳ２０７で，ＰＣ識別子をドングルに格納する（ステップＳ２０７）。その後，ステップＳ２０８で，クリアリングが終了する（ステップＳ２０８）。
【００２９】
次に，図３に基づいて，本実施形態にかかる暗号化されたクリアリング番号により，プログラムモジュールがクリアリングされる工程を説明する。
【００３０】
まず，図３に示すように，ステップＳ３０１で，プログラムが開始される（ステップＳ３０１）。次いで，ステップＳ３０２で，キーがＰＣ内に存在するか否かが判断される（ステップＳ３０２）。キーが存在しないと判断される場合には，ステップＳ３０８に移行し，処理が中止される（ステップＳ３０８）。
【００３１】
一方，キーが存在すると判断される場合には，ステップＳ３０３に移行し，コンピュータプログラムのライセンス番号が読み出される（ステップＳ３０３）。次いで，ステップＳ３０４で，暗号化されたクリアリング番号がデータファイルから読み出される（ステップＳ３０４）。さらに，ステップＳ３０５で，ラインセンス番号とキーを用いて，クリアリング番号が復号される（ステップＳ３０５）。
【００３２】
その後，ステップＳ３０６で，復号されたクリアリング番号が該当するプログラムモジュールを作動させる（ステップＳ３０６）。最後に，ステップＳ３０７で，処理が終了する（ステップＳ３０７）。
【００３３】
次いで，図４に基づいて，プログラムの利用を阻止する工程について説明する。
【００３４】
まず，図４に示すように，ステップＳ４０１で，プログラムが開始される（ステップＳ４０１）。次いで，ステップＳ４０２で，ドングルが接続されているか否かが判断される（ステップＳ４０２）。ドングルが接続されていないと判断される場合，あるいは，異なるようにドングルが接続されていると判断される場合には，ステップＳ４０８に移行し，処理が中止される（ステップＳ４０８）。
【００３５】
一方，ドングルが接続されていると判断される場合には，ステップＳ４０３で，接続されているドングルが正しいＰＣ識別子を有しているか否かが判断される（ステップＳ４０３）。正しいＰＣ識別子を有していないと判断される場合には，ステップＳ４０８に移行し，処理が中止される（ステップＳ４０８）。
【００３６】
一方，正しいＰＣ識別子が含まれていると判断される場合には，ステップＳ４０４に移行し，キーがドングルにコピーされる（ステップＳ４０４）。次いで，ステップＳ４０５で，ＰＣ内のキーが消去される（ステップＳ４０５）。さらに，ステップＳ４０６で，ドングル内のＰＣ識別子が消去される（ステップＳ４０６）。その後，ステップＳ４０７で，処理が終了する（ステップＳ４０７）。
【００３７】
本実施形態においては，キーが再びドングル上に存在するので，プログラムを他のコンピュータ上でクリアリングすることができる。したがって，プログラムを，常時，１つのコンピュータ上で実行することができる。また，記録媒体上に個別の識別子を設ける必要がないので，ソフトウェアを安価に連続生産あるいは再生産することができる。
【００３８】
以上，本発明に係る好適な実施の形態について説明したが，本発明はかかる構成に限定されない。当業者であれば，特許請求の範囲に記載された技術思想の範囲内において，各種の修正例及び変更例を想定し得るものであり，それらの修正例及び変更例についても本発明の技術範囲に包含されるものと了解される。
【００３９】
例えば，上記実施形態においては，ドングルが１つのキーを有する例を挙げて説明したが，かかる例には限定されない。例えばドングルが２以上のキーを有することもできる。例えばユーザが２以上のライセンスを購入した場合には，購入した数に応じて各キーを具備するドングル，あるいは該当する数のキーを具備する１つのドングルを提供することもできる。また，複数のキーを具備する複数のドングルを提供することもできる。
【００４０】
また，上記実施形態においては，ドングルは，例えばインストールするコンピュータ（ＰＣ）に直接接続する構成を例に挙げて説明したが，同様に他の形態とすることもできる。例えばネットワーク接続を介して，例えば複数のキーを有する少なくとも１つの中央のドングルにアクセスすることができる。このように，大規模の（例えば企業規模の）中央のソフトウェア分配をおこなうことができる。
【００４１】
また，ドングル内のメモリが，各種ＰＣ識別子とキーのために十分でない場合には，データファイルに待避させることもできる。このとき，操作を阻止するために，データファイルを介してアクセス毎に検査識別子（特に検査合計）が形成され，かかる検査識別子あるいは検査合計のみをドングルに格納することができる。
【００４２】
【発明の効果】
本実施形態においては，キーが再びドングル上に存在するので，プログラムを他のコンピュータ上でクリアリングすることができる。したがって，プログラムを，常時，１つのコンピュータ上で実行することができる。また，記録媒体上に個別の識別子を設ける必要がないので，ソフトウェアを安価に連続生産あるいは再生産することができる。
【図面の簡単な説明】
【図１】第１の実施の形態にかかるクリアリング番号（Ｆｒｅｉｓｃｈａｌｔｎｕｍｍｅｒ）を有するプログラムが，ディスケットからコンピュータのハードディスクにインストールされる工程を示すフローチャートである。
【図２】第１の実施の形態にかかる装置（ドングル）により，コンピュータ（ＰＣ）でプログラムがクリアリングされる工程を説明するためのフローチャートである。
【図３】第１の実施の形態にかかる暗号化されたクリアリング番号により，プログラムモジュールがクリアリングされる工程を説明するためのフローチャートである。
【図４】第１の実施の形態にかかるプログラムの利用を阻止する工程について説明するためのフローチャートである。
【図１】
0004663874.tif 000002
【図２】
0004663874.tif 000003
【図３】
0004663874.tif 000004
【図４】
0004663874.tif 000005