(57)【要約】【課題】ソフトウェアの出力情報に埋め込んだ透かしに基づき、不正コピーを検知する。【解決手段】情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。【選択図】図４
2010026685.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムであって、
前記情報出力装置が、
前記ソフトウェアを用いた出力情報を生成する生成手段と、
該生成した出力情報に不正検知情報を埋め込む不正検知情報付加手段と、
該不正検知情報を埋め込んだ出力情報を出力する出力手段と、
を備え、
前記出力情報検証装置が、
前記情報出力装置からの出力情報から不正検知情報を抽出する不正検知情報抽出手段と、
該抽出した不正検知情報からソフトウェアの不正コピーの有無を判断する不正コピー判断手段と、
を備えたことを特徴とするソフトウェアの不正コピー検知システム。
【請求項２】
前記不正検知情報が、前記ソフトウェアの実行日時と実行された端末の情報であることを特徴とする請求項１に記載のソフトウェアの不正コピー検知システム。
【請求項３】
前記情報出力装置が、さらに、
前記ソフトウェアの実行日時と実行された端末の情報とを署名付きファイルで保管する第１の保管手段と、
署名鍵を前記ソフトウェアの耐タンパ領域で保管する第２の保管手段と、
を備えたことを特徴とする請求項２に記載のソフトウェアの不正コピー検知システム。
【請求項４】
前記情報出力装置が、さらに、
前記ソフトウェアの実行日時と実行された端末の情報とを前記ソフトウェアの耐タンパ領域で保管する第３の保管手段を備えたことを特徴とする請求項２に記載のソフトウェアの不正コピー検知システム。
【請求項５】
前記不正検知情報が、利用者に紐付けられた個別のＩＤ情報であることを特徴とする請求項１に記載のソフトウェアの不正コピー検知システム。
【請求項６】
前記不正検知情報が、利用者に紐付けられた個別のＩＤ情報と実行された端末の情報とからなることを特徴とする請求項１に記載のソフトウェアの不正コピー検知システム。
【請求項７】
前記情報出力装置が、さらに、
前記不正検知情報を検証者の公開鍵で暗号化する暗号化手段をさらに備えたことを特徴とする請求項１、請求項２、請求項５、請求項６に記載のソフトウェアの不正コピー検知システム。
【請求項８】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法であって、
前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第１のステップと、
前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第２のステップと、
前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第３のステップと、
前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第４のステップと、
前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第５のステップと、
を備えたことを特徴とするソフトウェアの不正コピー検知方法。
【請求項９】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムであって、
前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第１のステップと、
前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第２のステップと、
前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第３のステップと、
前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第４のステップと、
前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第５のステップと、
をコンピュータに実行させるためのプログラム。
【請求項１０】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムを格納したプログラム記録媒体であって、
前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第１のステップと、
前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第２のステップと、
前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第３のステップと、
前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第４のステップと、
前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第５のステップと、
をコンピュータに実行させるためのプログラムを格納したプログラム記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアの不正コピーを検知するソフトウェアの不正コピー検知システム、ソフトウェアの不正コピー検知方法、プログラムおよびプログラム記録媒体に関する。
【背景技術】
【０００２】
従来、コンテンツ提供者とコンテンツ購入予定者との正式な売買を担保するために、電子透かし技術と暗号技術を用いたコンテンツ配信装置がある（例えば、特許文献１参照。）。
【０００３】
この発明は、コンテンツに不可視の電子透かし（コンテンツ購入者を特定する購入者ＩＤ等）と可視の電子透かし（例えば、「見本」と埋め込む）を電子透かし情報として電子透かしをコンテンツに埋め込む手法等の従来技術を利用して埋め込み、売買契約成立後に前記した可視の電子透かしを除去するための秘密鍵をコンテンツ提供者からコンテンツ購入者に送信してコンテンツから可視の電子透かしを除去するものである。
【０００４】
また、電子透かしをコンテンツに埋め込む手法について、登録意匠である原画像に権利情報を明示するための可視電子透かしを埋め込み、必要時には可視電子透かしを除去して原画像の意匠性を保つことができる除去可能電子透かしを提供するものがある。
【０００５】
その手法は、原画像に対して色空間変換を行い、輝度プレーンと色情報プレーンとに分割し、この輝度プレーンの特定領域に対し上位ビットから下位ビットへビットシフト処理を行い、最上位ビットを除去可能電子透かしとしての２値画像ビット値に書き換える。そして、色空間逆変換を行うことによって、可視電子透かしを埋め込む手法である（例えば、特許文献２参照。）。
【０００６】
上記は、コンテンツの売買に関するものであるが、ソフトウェアのコピー検知するための方式として、上記のように、ソフトウェア自体に、利用者ごとに異なるＩＤ
を透かしとして埋め込むことが考えられる。こうすることにより、ソフトウェアが不正に流通した場合には、このソフトウェアから透かしを抽出して、不正配布を行なった利用者を特定できる。
【特許文献１】特開２００２−２３６６６９号公報（段落番号００１７〜００１８、第２図）
【特許文献２】特開２０００−２１６９８２号公報（段落番号００１１〜００１３、第３図）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところが、オーサリングツール、ＣＡＤ ツールなどのソフトウェアに関しては、利用者数が限られているため、一般のソフトウェアと比較し、不正配布を行なった利用者を容易に特定できると考えられる。このため、不正者は、追跡されることを恐れ、インターネットを介した不正配布を行なう可能性は低いと考えられるが、その代わりに、不正者は、知人・友人に、直接、ツールのコピーを渡すことが考えられる。
【０００８】
この場合は、不正にコピーされたコンテンツは流通しないため、上記の透かしを埋め込む方法では、不正コピーを検知できない。一方で、不正コピーを受け取った利用者は、このソフトウェアを利用して作成したデータを作成し、公開、もしくは販売することが考えられる。
【０００９】
そこで、本発明は、上述の課題に鑑みてなされたものであり、ソフトウェアの出力情報に埋め込んだ透かしに基づき、不正コピーを検知するソフトウェアの不正コピー検知システム、ソフトウェアの不正コピー検知方法、プログラムおよびプログラム記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、上記の課題を解決するために、以下の事項を提案している。
【００１１】
（１）本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムであって、前記情報出力装置が、前記ソフトウェアを用いた出力情報を生成する生成手段と、該生成した出力情報に不正検知情報を埋め込む不正検知情報付加手段と、該不正検知情報を埋め込んだ出力情報を出力する出力手段と、を備え、前記出力情報検証装置が、前記情報出力装置からの出力情報から不正検知情報を抽出する不正検知情報抽出手段と、該抽出した不正検知情報に基づいて、ソフトウェアの不正コピーの有無を判断する不正コピー判断手段と、を備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【００１２】
この発明によれば、情報出力装置の生成手段が、ソフトウェアを用いた出力情報を生成し、不正検知情報付加手段が、その生成した出力情報に不正検知情報を埋め込む。そして、出力手段が、不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置の不正検知情報抽出手段は、情報出力装置からの出力情報から不正検知情報を抽出し、不正コピー判断手段が、抽出した不正検知情報に基づいて、ソフトウェアの不正コピーの有無を判断する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【００１３】
（２）本発明は、（１）のソフトウェアの不正コピー検知システムについて、前記不正検知情報が、前記ソフトウェアの実行日時と実行された端末の情報であることを特徴とするソフトウェアの不正コピー検知システムを提案している。
【００１４】
この発明によれば、不正検知情報が、前記ソフトウェアの実行日時と実行された端末の情報である。したがって、ある利用者が公開したコンテンツ（出力情報）から抽出された実行履歴に、複数のＰＣ
情報が含まれていれば、当該ソフトウェアが不正にコピーされたと検知できる。
【００１５】
（３）本発明は、（２）のソフトウェアの不正コピー検知システムについて、前記情報出力装置が、さらに、前記ソフトウェアの実行日時と実行された端末の情報とを署名付きファイルで保管する第１の保管手段と、署名鍵を前記ソフトウェアの耐タンパ領域で保管する第２の保管手段と、を備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【００１６】
この発明によれば、第１の保管手段は、ソフトウェアの実行日時と実行された端末の情報とを署名付きファイルで保管し、第２の保管手段は、署名鍵をソフトウェアの耐タンパ領域で保管する。したがって、不正検知情報の元となる情報をセキュアに保管することができる。
【００１７】
（４）本発明は、（２）のソフトウェアの不正コピー検知システムについて、前記情報出力装置が、さらに、前記ソフトウェアの実行日時と実行された端末の情報とを前記ソフトウェアの耐タンパ領域で保管する第３の保管手段を備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【００１８】
この発明によれば、第３の保管手段は、ソフトウェアの実行日時と実行された端末の情報とをソフトウェアの耐タンパ領域で保管する。したがって、不正検知情報の元となる情報をセキュアに保管することができる。
【００１９】
（５）本発明は、（１）のソフトウェアの不正コピー検知システムについて、前記不正検知情報が、利用者に紐付けられた個別のＩＤ情報であることを特徴とするソフトウェアの不正コピー検知用装置を提案している。
【００２０】
この発明によれば、不正検知情報が、利用者に紐付けられた個別のＩＤ情報である。したがって、ある利用者が公開したコンテンツ（出力情報）から抽出されたＩＤ
が、他の利用者に紐付けられていた場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【００２１】
（６）本発明は、（１）のソフトウェアの不正コピー検知システムについて、前記不正検知情報が、利用者に紐付けられた個別のＩＤ情報と実行された端末の情報とからなることを特徴とするソフトウェアの不正コピー検知システムを提案している。
【００２２】
この発明によれば、不正検知情報が、利用者に紐付けられた個別のＩＤ情報と実行された端末の情報とからなる。したがって、利用者が公開したコンテンツ（出力情報）のうち、ＩＤ
が同一で、ＰＣ 情報が異なるものが見つかった場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【００２３】
（７）本発明は、（１）、（２）、（５）、（６）のソフトウェアの不正コピー検知システムについて、前記情報出力装置が、さらに、前記不正検知情報を検証者の公開鍵で暗号化する暗号化手段をさらに備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【００２４】
この発明によれば、暗号化手段は、不正検知情報を検証者の公開鍵で暗号化する。したがって、この暗号化により、透かし情報の改ざんが検知できる。また、透かし情報が改ざんされた場合は、秘密鍵による復号が正しく行えないため、透かしに含まれる利用者名・ＰＣ情報などプライバシーに関する情報を秘匿できる。
【００２５】
（８）本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法であって、前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第１のステップと、前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第２のステップと、前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第３のステップと、前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第４のステップと、前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第５のステップと、を備えたことを特徴とするソフトウェアの不正コピー検知方法を提案している。
【００２６】
この発明によれば、情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【００２７】
（９）本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムであって、前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第１のステップと、前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第２のステップと、前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第３のステップと、前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第４のステップと、前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第５のステップと、をコンピュータに実行させるためのプログラムを提案している。
【００２８】
この発明によれば、情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【００２９】
（１０）本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムを格納したプログラム記録媒体であって、前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第１のステップと、前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第２のステップと、前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第３のステップと、前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第４のステップと、前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第５のステップと、をコンピュータに実行させるためのプログラムを格納したプログラム記録媒体を提案している。
【００３０】
この発明によれば、情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【発明の効果】
【００３１】
本発明によれば、不正コピーがインターネット上に流通する可能性の低いソフトウェアの不正コピーを、そのソフトウェアの出力情報から容易に検知することができるという効果がある。
【発明を実施するための最良の形態】
【００３２】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００３３】
＜第１の実施形態＞
図１から図４を用いて、本発明の第１の実施形態について説明する。
【００３４】
本実施形態に係るソフトウェアの不正コピー検知システムは、図１に示すように、ソフトウェアを正規に購入した利用者から譲り受けたソフトウェアを用いて、データ（出力情報）を作成する情報出力装置１００と、情報出力装置１００が作成したデータ（出力情報）の内容を検証して、ソフトウェアの不正コピーの有無を判定する出力情報検証装置２００とから構成されている。
【００３５】
さらに、情報出力装置１００は、コピーしたソフトウェアにデータを入力して、出力情報を生成する出力情報生成部１１と、出力情報生成部１１が生成した出力情報に不正検知情報を埋め込む不正検知情報付加部１２と、出力情報に不正検知情報が付加された情報を出力情報検証装置２００に出力する情報出力部１３とから構成されている。
【００３６】
ここで、出力情報としては、音楽や画像、動画、ソフトウェア等が考えられ、不正検知情報としては、電子透かし情報が考えられる。また、不正コピーの対象となるソフトウェアとしては、オーサリングツール、ＣＡＤツールなどの不正コピーがインターネット上に流通する可能性の低いソフトウェアに対して、好適である。
【００３７】
つまり、利用者数が限られているソフトウェアでは、一般のソフトウェアと比較し、不正配布を行なった利用者を容易に特定できるため、不正者は、追跡されることを恐れ、インターネットを介した不正配布を行なう可能性は低いと推定される。
【００３８】
しかしながら、不正配布の代わりに、不正者は、知人・友人に、直接、ツールのコピーを渡すことが想定される。この場合は、不正にコピーされたコンテンツは流通しないため、従来の透かしを埋め込む方法では、不正コピーを検知できないが、不正コピーを受け取った利用者は、このソフトウェアを利用して作成したデータを作成し、公開、もしくは販売することが想定されるため、出力情報に基づいて、不正コピーを検知することが有効な方法となる。
【００３９】
また、本実施形態においては、出力情報に透かしを埋め込む機能を、対象ソフトウェアに追加する必要がある。このため、対象ソフトウェアが解析され、透かし埋め込み機能が、改ざん、あるいはバイパスされ、方式が無効化されないように、対象ソフトウェアを耐タンパ化する必要がある。
【００４０】
一方、出力情報検証装置２００は、図３に示すように、情報出力装置１００からの出力情報を入力する出力情報入力部２１と、出力情報入力部２１において入力した出力情報の中から不正検知情報を抽出する不正検知情報抽出部２２と、不正検知情報抽出部２２が抽出した不正検知情報からソフトウェアの不正コピーの有無を判断する不正コピー判断部２３とから構成されている。
【００４１】
具体的な処理の流れを図４を用いて説明すると、まず、情報出力装置１００の出力情報生成部１１がソフトウェアを用いて出力情報を生成する（ステップＳ１０１）。出力情報が生成されると、出力情報が情報出力装置１００の不正検知情報付加部１２に送られ、出力情報に不正検知情報が埋め込まれる（ステップＳ１０２）。そして、情報出力部１３が不正検知情報を埋め込んだ出力情報を出力情報検証装置２００に出力する（ステップＳ１０３）。
【００４２】
一方、情報出力装置１００から出力情報検証装置２００の出力情報入力部２１が出力情報を入力すると、入力した出力情報を不正検知情報抽出部２２に送る。不正検知情報抽出部２２は、出力情報入力部２１において入力した出力情報の中から不正検知情報を抽出し、抽出した不正検知情報を不正コピー判断部２３に出力する（ステップＳ１０４）。そして、不正コピー判断部２３では、不正検知情報に基づいて、ソフトウェアの不正コピーの有無を判断する（ステップＳ１０５）。
【００４３】
したがって、本実施形態によれば、ソフトウェアの出力情報に不正検知情報を埋め込み、この出力情報に埋め込まれた不正検知情報により、出力情報検証装置が、不正コピーのソフトウェアに基づいて、生成された出力情報か否かを判断することによって、不正コピーがインターネット上に流通する可能性の低いソフトウェアの不正コピーについても、そのソフトウェアの出力情報から容易にソフトウェアの不正コピーの事実を検知することができる。
【００４４】
＜第１の実施例＞
図５および図６を用いて、本発明の第１の実施例について説明する。
【００４５】
本実施例に係るソフトウェアの不正コピー検知システムは、第１の実施形態と同様の構成であるが、情報出力装置１００の出力情報生成部１１がソフトウェアを用いて生成した出力情報に付加する不正検知情報に特徴がある。そのため、図５に示すように、付加する不正検知情報を格納する不正検知情報格納部１４が設けられている。
【００４６】
具体的には、本実施例では、不正検知情報として、出力情報に電子透かしとして実行履歴を埋め込む。ここで、実行履歴とは、当該ソフトウェアが実行された日時、および実行されたＰＣ
のＰＣ 情報の組の列を指す。そのため、ある利用者が公開したコンテンツ（出力情報）から抽出された実行履歴に、複数のＰＣ 情報が含まれていれば、当該ソフトウェアが不正にコピーされたと検知できる。
【００４７】
これを図６を用いて説明すると、例えば、Ｂさんが正規にソフトウェアを購入している場合には、図６（ａ）に示すようになる。つまり、正規にソフトウェアを購入しているＡさんの出力情報からは、実行履歴として、「１／１  １０時」という実行された日時と、「Ａ」という実行されたＰＣの情報、「１／２  １０時」という実行された日時と、「Ａ」という実行されたＰＣの情報、「１／３  １０時」という実行された日時と、「Ａ」という実行されたＰＣの情報が得られ、実行履歴の中には、単一の「Ａ」というＰＣの情報しか含まれていない。したがって、Ａさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【００４８】
同様に、Ｂさんの出力情報からは、実行履歴として、「１／１  １０時」という実行された日時と、「Ｂ」という実行されたＰＣの情報、「１／２  １０時」という実行された日時と、「Ｂ」という実行されたＰＣの情報、「１／３  １０時」という実行された日時と、「Ｂ」という実行されたＰＣの情報が得られ、実行履歴の中には、単一の「Ｂ」というＰＣの情報しか含まれていない。したがって、Ｂさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【００４９】
一方、ＢさんがＡさんから譲り受けた不正にコピーしたソフトウェアを使用している場合には、図６（ｂ）に示すようになる。つまり、正規にソフトウェアを購入しているＡさんの出力情報からは、実行履歴として、「１／１  １０時」という実行された日時と、「Ａ」という実行されたＰＣの情報、「１／２  １０時」という実行された日時と、「Ａ」という実行されたＰＣの情報が得られる。これは、図６（ａ）の場合と同様である。
【００５０】
ところが、Ｂさんの出力情報からは、実行履歴として、「１／１  １０時」という実行された日時と、「Ａ」という実行されたＰＣの情報、「１／２  １０時」という実行された日時と、「Ａ」という実行されたＰＣの情報、「１／３  １０時」という実行された日時と、「Ｂ」という実行されたＰＣの情報が得られる。したがって、Ｂさんの出力情報からは、「Ａ」という実行されたＰＣの情報と「Ｂ」という実行されたＰＣの情報の複数のＰＣ情報が含まれている。これにより、異なる端末上での実行が明らかとなり、Ｂさんの使用するソフトウェアは、不正にコピーされたものであることがわかる。
【００５１】
なお、本実施例では、実行履歴を保管しておく必要がある。実行履歴の保管方法としては、ハードディスク上に署名付きファイルとして保管し、署名鍵をソフトウェアの耐タンパ領域で保管するあるいは、ソフトウェアの耐タンパ領域に実行履歴を保管することが考えられる。
【００５２】
また、ＰＣ情報は、ＴＰＭが保管する鍵、あるいはマザーボードのＩＤなどに基づき生成することが考えられる。ここで、ＴＰＭは、暗号化や認証のための電子鍵を格納するストレージであるため、このセキュリティチップが保管する鍵から端末の情報を生成することにより、端末を一意に特定することができる。さらに、マザーボードは、ＰＣを構成する最も本質的な機器であることから、端末を一意に特定することができる。
【００５３】
以上、説明したように、第１の実施例によれば、不正検知情報として、出力情報に電子透かしとして実行履歴を埋め込むため、この実行履歴という単一の出力情報から不正コピーの有無を判断できる。そのため、低コストで不正コピーの有無の検知を行うことができる。
【００５４】
＜第２の実施例＞
図７および図８を用いて、本発明の第２の実施例について説明する。
【００５５】
本実施例に係るソフトウェアの不正コピー検知システムは、第１の実施形態と同様の構成であるが、情報出力装置１００の出力情報生成部１１がソフトウェアを用いて生成した出力情報に付加する不正検知情報に特徴がある。そのため、図７に示すように、付加する不正検知情報を格納する不正検知情報格納部１５が設けられている。
【００５６】
具体的には、本実施例では、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別のＩＤ を埋め込む。ここで、ＩＤ
は、ソフトウェア毎に異なり、各利用者に紐付けられている。したがって、ある利用者が公開したコンテンツ（出力情報）から抽出されたＩＤ が、他の利用者に紐付けられていた場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【００５７】
これを図８を用いて説明すると、例えば、Ｂさんが正規にソフトウェアを購入している場合には、図８（ａ）に示すようになる。つまり、正規にソフトウェアを購入しているＡさんの出力情報からは、「Ａ」というＡさんに紐つけられたＩＤが抽出される。これにより、Ａさんの使用したソフトウェアは、正規に購入されたものであることがわかる。同様に、Ｂさんの出力情報からも「Ｂ」というＢさんに紐つけられたＩＤが抽出される。これにより、Ｂさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【００５８】
一方、ＢさんがＡさんから譲り受けた不正にコピーしたソフトウェアを使用している場合には、図８（ｂ）に示すようになる。つまり、正規にソフトウェアを購入しているＡさんの出力情報からは、「Ａ」というＡさんに紐つけられたＩＤが抽出される。これは、図８（ａ）の場合と同様である。
【００５９】
ところが、Ｂさんの出力情報からは、本来、「Ｂ」というＢさんに紐つけられたＩＤが抽出されるべきであるのに、「Ａ」というＡさんに紐つけられたＩＤが抽出される。これにより、異なる端末上での実行が明らかとなり、Ｂさんの使用するソフトウェアは、不正にコピーされたものであることがわかる。
【００６０】
以上、説明したように、第２の実施例によれば、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別の利用者に紐付けられたＩＤ
を埋め込むため、この利用者に紐付けられたソフトウェア個別のＩＤという単一の出力情報から不正コピーの有無を判断することができる。また、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別の利用者に紐付けられたＩＤ
を用いることから、安全性が高いという特徴がある。
【００６１】
＜第３の実施例＞
図９および図１０を用いて、本発明の第２の実施例について説明する。
【００６２】
本実施例に係るソフトウェアの不正コピー検知システムは、第１の実施形態と同様の構成であるが、情報出力装置１００の出力情報生成部１１がソフトウェアを用いて生成した出力情報に付加する不正検知情報に特徴がある。そのため、図９に示すように、付加する不正検知情報を格納する不正検知情報格納部１６が設けられている。
【００６３】
具体的には、本実施例では、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別のＩＤ、および実行されたＰＣ
のＰＣ 情報の組を埋め込む。したがって、利用者が公開したコンテンツ（出力情報）のうち、ＩＤ が同一で、ＰＣ 情報が異なるものが見つかった場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【００６４】
これを図１０を用いて説明すると、例えば、Ｂさんが正規にソフトウェアを購入している場合には、図１０（ａ）に示すようになる。つまり、正規にソフトウェアを購入しているＡさんの出力情報からは、「Ａ」というＡさんに紐つけられたＩＤと「ＰＣＡ」という実行されたＰＣの情報が抽出される。これにより、Ａさんの使用したソフトウェアは、正規に購入されたものであることがわかる。同様に、Ｂさんの出力情報からも「Ｂ」というＢさんに紐つけられたＩＤと「ＰＣＢ」という実行されたＰＣの情報が抽出される。これにより、Ｂさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【００６５】
一方、ＢさんがＡさんから譲り受けた不正にコピーしたソフトウェアを使用している場合には、図１０（ｂ）に示すようになる。つまり、正規にソフトウェアを購入しているＡさんの出力情報からは、「Ａ」というＡさんに紐つけられたＩＤと「ＰＣＡ」という実行されたＰＣの情報が抽出される。これは、図１０（ａ）の場合と同様である。
【００６６】
ところが、Ｂさんの出力情報からは、本来、「Ｂ」というＢさんに紐つけられたＩＤが抽出されるべきであるのに、「Ａ」というＡさんに紐つけられたＩＤと「ＰＣＡ」という実行されたＰＣの情報が抽出される。これにより、異なる端末上での実行が明らかとなり、Ｂさんの使用するソフトウェアは、不正にコピーされたものであることがわかる。
【００６７】
以上、説明したように、第３の実施例によれば、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別のＩＤ、および実行されたＰＣ
のＰＣ 情報の組を埋め込むことから、第１および第２の実施例よりも安全性が高く、しかも、低コストで不正コピーの有無の検知を行うことができるという特徴がある。
【００６８】
＜応用例＞
上記、第１の実施形態、第１、第２、第３の実施例において、不正検知情報を電子透かしで出力情報に埋め込む様々な形態について説明したが、例えば、第１、第２、第３の実施例において説明した情報の透かしの安全性を高めるために、そのまま透かしとして埋め込むのではなく、暗号化した情報を出力情報に埋め込むことが望ましい。
【００６９】
具体的には、第１、第２、第３の実施例において説明した透かし情報を検証者の公開鍵で暗号化する方法が考えられる。これにより、透かし情報の改ざんが検知でき、また、仮に、透かし情報が改ざんされた場合でも、秘密鍵による復号が正しく行えないため、透かしに含まれる利用者名・ＰＣ情報などプライバシーに関する情報を秘匿できる。
【００７０】
なお、本発明のソフトウェアの不正コピー検知システムを構成する情報出力装置および出力情報検証装置の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを情報出力装置および出力情報検証装置に読み込ませ、実行することによって本発明のソフトウェアの不正コピー検知システムを実現することができる。ここでいうコンピュータシステムとは、ＯＳや周辺装置等のハードウェアを含む。
【００７１】
また、「コンピュータシステム」は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）システムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００７２】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００７３】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００７４】
【図１】第１の実施形態に係るシステムの構成図である。
【図２】第１の実施形態に係る情報出力装置の構成図である。
【図３】第１の実施形態に係る出力情報検証装置の構成図である。
【図４】第１の実施形態に係るシステムの処理フローである。
【図５】第１の実施例に係る情報出力装置の構成図である。
【図６】第１の実施例を具体的に説明するための図である。
【図７】第２の実施例に係る情報出力装置の構成図である。
【図８】第２の実施例を具体的に説明するための図である。
【図９】第３の実施例に係る情報出力装置の構成図である。
【図１０】第３の実施例を具体的に説明するための図である。
【符号の説明】
【００７５】
１１・・・出力情報生成部
１２・・・不正検知情報付加部
１３・・・情報出力部
１４、１５、１６・・・不正検知情報格納部
２１・・・出力情報入力部
２２・・・不正検知情報抽出部
２３・・・不正コピー判断部
１００・・・情報出力装置
２００・・・出力情報検証装置
【図１】
2010026685.tif 000003
【図２】
2010026685.tif 000004
【図３】
2010026685.tif 000005
【図４】
2010026685.tif 000006
【図５】
2010026685.tif 000007
【図６】
2010026685.tif 000008
【図７】
2010026685.tif 000009
【図８】
2010026685.tif 000010
【図９】
2010026685.tif 000011
【図１０】
2010026685.tif 000012