説明

ソフトウェアの不正コピー検知システム、ソフトウェアの不正コピー検知方法、プログラムおよびプログラム記録媒体

【課題】ソフトウェアの出力情報に埋め込んだ透かしに基づき、不正コピーを検知する。
【解決手段】情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアの不正コピーを検知するソフトウェアの不正コピー検知システム、ソフトウェアの不正コピー検知方法、プログラムおよびプログラム記録媒体に関する。
【背景技術】
【0002】
従来、コンテンツ提供者とコンテンツ購入予定者との正式な売買を担保するために、電子透かし技術と暗号技術を用いたコンテンツ配信装置がある(例えば、特許文献1参照。)。
【0003】
この発明は、コンテンツに不可視の電子透かし(コンテンツ購入者を特定する購入者ID等)と可視の電子透かし(例えば、「見本」と埋め込む)を電子透かし情報として電子透かしをコンテンツに埋め込む手法等の従来技術を利用して埋め込み、売買契約成立後に前記した可視の電子透かしを除去するための秘密鍵をコンテンツ提供者からコンテンツ購入者に送信してコンテンツから可視の電子透かしを除去するものである。
【0004】
また、電子透かしをコンテンツに埋め込む手法について、登録意匠である原画像に権利情報を明示するための可視電子透かしを埋め込み、必要時には可視電子透かしを除去して原画像の意匠性を保つことができる除去可能電子透かしを提供するものがある。
【0005】
その手法は、原画像に対して色空間変換を行い、輝度プレーンと色情報プレーンとに分割し、この輝度プレーンの特定領域に対し上位ビットから下位ビットへビットシフト処理を行い、最上位ビットを除去可能電子透かしとしての2値画像ビット値に書き換える。そして、色空間逆変換を行うことによって、可視電子透かしを埋め込む手法である(例えば、特許文献2参照。)。
【0006】
上記は、コンテンツの売買に関するものであるが、ソフトウェアのコピー検知するための方式として、上記のように、ソフトウェア自体に、利用者ごとに異なるID
を透かしとして埋め込むことが考えられる。こうすることにより、ソフトウェアが不正に流通した場合には、このソフトウェアから透かしを抽出して、不正配布を行なった利用者を特定できる。
【特許文献1】特開2002−236669号公報(段落番号0017〜0018、第2図)
【特許文献2】特開2000−216982号公報(段落番号0011〜0013、第3図)
【発明の開示】
【発明が解決しようとする課題】
【0007】
ところが、オーサリングツール、CAD ツールなどのソフトウェアに関しては、利用者数が限られているため、一般のソフトウェアと比較し、不正配布を行なった利用者を容易に特定できると考えられる。このため、不正者は、追跡されることを恐れ、インターネットを介した不正配布を行なう可能性は低いと考えられるが、その代わりに、不正者は、知人・友人に、直接、ツールのコピーを渡すことが考えられる。
【0008】
この場合は、不正にコピーされたコンテンツは流通しないため、上記の透かしを埋め込む方法では、不正コピーを検知できない。一方で、不正コピーを受け取った利用者は、このソフトウェアを利用して作成したデータを作成し、公開、もしくは販売することが考えられる。
【0009】
そこで、本発明は、上述の課題に鑑みてなされたものであり、ソフトウェアの出力情報に埋め込んだ透かしに基づき、不正コピーを検知するソフトウェアの不正コピー検知システム、ソフトウェアの不正コピー検知方法、プログラムおよびプログラム記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明は、上記の課題を解決するために、以下の事項を提案している。
【0011】
(1)本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムであって、前記情報出力装置が、前記ソフトウェアを用いた出力情報を生成する生成手段と、該生成した出力情報に不正検知情報を埋め込む不正検知情報付加手段と、該不正検知情報を埋め込んだ出力情報を出力する出力手段と、を備え、前記出力情報検証装置が、前記情報出力装置からの出力情報から不正検知情報を抽出する不正検知情報抽出手段と、該抽出した不正検知情報に基づいて、ソフトウェアの不正コピーの有無を判断する不正コピー判断手段と、を備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【0012】
この発明によれば、情報出力装置の生成手段が、ソフトウェアを用いた出力情報を生成し、不正検知情報付加手段が、その生成した出力情報に不正検知情報を埋め込む。そして、出力手段が、不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置の不正検知情報抽出手段は、情報出力装置からの出力情報から不正検知情報を抽出し、不正コピー判断手段が、抽出した不正検知情報に基づいて、ソフトウェアの不正コピーの有無を判断する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【0013】
(2)本発明は、(1)のソフトウェアの不正コピー検知システムについて、前記不正検知情報が、前記ソフトウェアの実行日時と実行された端末の情報であることを特徴とするソフトウェアの不正コピー検知システムを提案している。
【0014】
この発明によれば、不正検知情報が、前記ソフトウェアの実行日時と実行された端末の情報である。したがって、ある利用者が公開したコンテンツ(出力情報)から抽出された実行履歴に、複数のPC
情報が含まれていれば、当該ソフトウェアが不正にコピーされたと検知できる。
【0015】
(3)本発明は、(2)のソフトウェアの不正コピー検知システムについて、前記情報出力装置が、さらに、前記ソフトウェアの実行日時と実行された端末の情報とを署名付きファイルで保管する第1の保管手段と、署名鍵を前記ソフトウェアの耐タンパ領域で保管する第2の保管手段と、を備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【0016】
この発明によれば、第1の保管手段は、ソフトウェアの実行日時と実行された端末の情報とを署名付きファイルで保管し、第2の保管手段は、署名鍵をソフトウェアの耐タンパ領域で保管する。したがって、不正検知情報の元となる情報をセキュアに保管することができる。
【0017】
(4)本発明は、(2)のソフトウェアの不正コピー検知システムについて、前記情報出力装置が、さらに、前記ソフトウェアの実行日時と実行された端末の情報とを前記ソフトウェアの耐タンパ領域で保管する第3の保管手段を備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【0018】
この発明によれば、第3の保管手段は、ソフトウェアの実行日時と実行された端末の情報とをソフトウェアの耐タンパ領域で保管する。したがって、不正検知情報の元となる情報をセキュアに保管することができる。
【0019】
(5)本発明は、(1)のソフトウェアの不正コピー検知システムについて、前記不正検知情報が、利用者に紐付けられた個別のID情報であることを特徴とするソフトウェアの不正コピー検知用装置を提案している。
【0020】
この発明によれば、不正検知情報が、利用者に紐付けられた個別のID情報である。したがって、ある利用者が公開したコンテンツ(出力情報)から抽出されたID
が、他の利用者に紐付けられていた場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【0021】
(6)本発明は、(1)のソフトウェアの不正コピー検知システムについて、前記不正検知情報が、利用者に紐付けられた個別のID情報と実行された端末の情報とからなることを特徴とするソフトウェアの不正コピー検知システムを提案している。
【0022】
この発明によれば、不正検知情報が、利用者に紐付けられた個別のID情報と実行された端末の情報とからなる。したがって、利用者が公開したコンテンツ(出力情報)のうち、ID
が同一で、PC 情報が異なるものが見つかった場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【0023】
(7)本発明は、(1)、(2)、(5)、(6)のソフトウェアの不正コピー検知システムについて、前記情報出力装置が、さらに、前記不正検知情報を検証者の公開鍵で暗号化する暗号化手段をさらに備えたことを特徴とするソフトウェアの不正コピー検知システムを提案している。
【0024】
この発明によれば、暗号化手段は、不正検知情報を検証者の公開鍵で暗号化する。したがって、この暗号化により、透かし情報の改ざんが検知できる。また、透かし情報が改ざんされた場合は、秘密鍵による復号が正しく行えないため、透かしに含まれる利用者名・PC情報などプライバシーに関する情報を秘匿できる。
【0025】
(8)本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法であって、前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第1のステップと、前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第2のステップと、前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第3のステップと、前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第4のステップと、前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第5のステップと、を備えたことを特徴とするソフトウェアの不正コピー検知方法を提案している。
【0026】
この発明によれば、情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【0027】
(9)本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムであって、前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第1のステップと、前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第2のステップと、前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第3のステップと、前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第4のステップと、前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第5のステップと、をコンピュータに実行させるためのプログラムを提案している。
【0028】
この発明によれば、情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【0029】
(10)本発明は、ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムを格納したプログラム記録媒体であって、前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第1のステップと、前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第2のステップと、前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第3のステップと、前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第4のステップと、前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第5のステップと、をコンピュータに実行させるためのプログラムを格納したプログラム記録媒体を提案している。
【0030】
この発明によれば、情報出力装置が、ソフトウェアを用いた出力情報を生成し、該生成した出力情報に不正検知情報を埋め込み、そして、その不正検知情報を埋め込んだ出力情報を出力する。一方、出力情報検証装置は、情報出力装置からの出力情報から埋め込まれた不正検知情報を抽出し、その抽出した不正検知情報に基づいて、不正コピーの有無を検知する。したがって、検知者は、出力情報に埋め込まれた不正検知情報に基づき、不正コピーを検出することができる。
【発明の効果】
【0031】
本発明によれば、不正コピーがインターネット上に流通する可能性の低いソフトウェアの不正コピーを、そのソフトウェアの出力情報から容易に検知することができるという効果がある。
【発明を実施するための最良の形態】
【0032】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0033】
<第1の実施形態>
図1から図4を用いて、本発明の第1の実施形態について説明する。
【0034】
本実施形態に係るソフトウェアの不正コピー検知システムは、図1に示すように、ソフトウェアを正規に購入した利用者から譲り受けたソフトウェアを用いて、データ(出力情報)を作成する情報出力装置100と、情報出力装置100が作成したデータ(出力情報)の内容を検証して、ソフトウェアの不正コピーの有無を判定する出力情報検証装置200とから構成されている。
【0035】
さらに、情報出力装置100は、コピーしたソフトウェアにデータを入力して、出力情報を生成する出力情報生成部11と、出力情報生成部11が生成した出力情報に不正検知情報を埋め込む不正検知情報付加部12と、出力情報に不正検知情報が付加された情報を出力情報検証装置200に出力する情報出力部13とから構成されている。
【0036】
ここで、出力情報としては、音楽や画像、動画、ソフトウェア等が考えられ、不正検知情報としては、電子透かし情報が考えられる。また、不正コピーの対象となるソフトウェアとしては、オーサリングツール、CADツールなどの不正コピーがインターネット上に流通する可能性の低いソフトウェアに対して、好適である。
【0037】
つまり、利用者数が限られているソフトウェアでは、一般のソフトウェアと比較し、不正配布を行なった利用者を容易に特定できるため、不正者は、追跡されることを恐れ、インターネットを介した不正配布を行なう可能性は低いと推定される。
【0038】
しかしながら、不正配布の代わりに、不正者は、知人・友人に、直接、ツールのコピーを渡すことが想定される。この場合は、不正にコピーされたコンテンツは流通しないため、従来の透かしを埋め込む方法では、不正コピーを検知できないが、不正コピーを受け取った利用者は、このソフトウェアを利用して作成したデータを作成し、公開、もしくは販売することが想定されるため、出力情報に基づいて、不正コピーを検知することが有効な方法となる。
【0039】
また、本実施形態においては、出力情報に透かしを埋め込む機能を、対象ソフトウェアに追加する必要がある。このため、対象ソフトウェアが解析され、透かし埋め込み機能が、改ざん、あるいはバイパスされ、方式が無効化されないように、対象ソフトウェアを耐タンパ化する必要がある。
【0040】
一方、出力情報検証装置200は、図3に示すように、情報出力装置100からの出力情報を入力する出力情報入力部21と、出力情報入力部21において入力した出力情報の中から不正検知情報を抽出する不正検知情報抽出部22と、不正検知情報抽出部22が抽出した不正検知情報からソフトウェアの不正コピーの有無を判断する不正コピー判断部23とから構成されている。
【0041】
具体的な処理の流れを図4を用いて説明すると、まず、情報出力装置100の出力情報生成部11がソフトウェアを用いて出力情報を生成する(ステップS101)。出力情報が生成されると、出力情報が情報出力装置100の不正検知情報付加部12に送られ、出力情報に不正検知情報が埋め込まれる(ステップS102)。そして、情報出力部13が不正検知情報を埋め込んだ出力情報を出力情報検証装置200に出力する(ステップS103)。
【0042】
一方、情報出力装置100から出力情報検証装置200の出力情報入力部21が出力情報を入力すると、入力した出力情報を不正検知情報抽出部22に送る。不正検知情報抽出部22は、出力情報入力部21において入力した出力情報の中から不正検知情報を抽出し、抽出した不正検知情報を不正コピー判断部23に出力する(ステップS104)。そして、不正コピー判断部23では、不正検知情報に基づいて、ソフトウェアの不正コピーの有無を判断する(ステップS105)。
【0043】
したがって、本実施形態によれば、ソフトウェアの出力情報に不正検知情報を埋め込み、この出力情報に埋め込まれた不正検知情報により、出力情報検証装置が、不正コピーのソフトウェアに基づいて、生成された出力情報か否かを判断することによって、不正コピーがインターネット上に流通する可能性の低いソフトウェアの不正コピーについても、そのソフトウェアの出力情報から容易にソフトウェアの不正コピーの事実を検知することができる。
【0044】
<第1の実施例>
図5および図6を用いて、本発明の第1の実施例について説明する。
【0045】
本実施例に係るソフトウェアの不正コピー検知システムは、第1の実施形態と同様の構成であるが、情報出力装置100の出力情報生成部11がソフトウェアを用いて生成した出力情報に付加する不正検知情報に特徴がある。そのため、図5に示すように、付加する不正検知情報を格納する不正検知情報格納部14が設けられている。
【0046】
具体的には、本実施例では、不正検知情報として、出力情報に電子透かしとして実行履歴を埋め込む。ここで、実行履歴とは、当該ソフトウェアが実行された日時、および実行されたPC
のPC 情報の組の列を指す。そのため、ある利用者が公開したコンテンツ(出力情報)から抽出された実行履歴に、複数のPC 情報が含まれていれば、当該ソフトウェアが不正にコピーされたと検知できる。
【0047】
これを図6を用いて説明すると、例えば、Bさんが正規にソフトウェアを購入している場合には、図6(a)に示すようになる。つまり、正規にソフトウェアを購入しているAさんの出力情報からは、実行履歴として、「1/1 10時」という実行された日時と、「A」という実行されたPCの情報、「1/2 10時」という実行された日時と、「A」という実行されたPCの情報、「1/3 10時」という実行された日時と、「A」という実行されたPCの情報が得られ、実行履歴の中には、単一の「A」というPCの情報しか含まれていない。したがって、Aさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【0048】
同様に、Bさんの出力情報からは、実行履歴として、「1/1 10時」という実行された日時と、「B」という実行されたPCの情報、「1/2 10時」という実行された日時と、「B」という実行されたPCの情報、「1/3 10時」という実行された日時と、「B」という実行されたPCの情報が得られ、実行履歴の中には、単一の「B」というPCの情報しか含まれていない。したがって、Bさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【0049】
一方、BさんがAさんから譲り受けた不正にコピーしたソフトウェアを使用している場合には、図6(b)に示すようになる。つまり、正規にソフトウェアを購入しているAさんの出力情報からは、実行履歴として、「1/1 10時」という実行された日時と、「A」という実行されたPCの情報、「1/2 10時」という実行された日時と、「A」という実行されたPCの情報が得られる。これは、図6(a)の場合と同様である。
【0050】
ところが、Bさんの出力情報からは、実行履歴として、「1/1 10時」という実行された日時と、「A」という実行されたPCの情報、「1/2 10時」という実行された日時と、「A」という実行されたPCの情報、「1/3 10時」という実行された日時と、「B」という実行されたPCの情報が得られる。したがって、Bさんの出力情報からは、「A」という実行されたPCの情報と「B」という実行されたPCの情報の複数のPC情報が含まれている。これにより、異なる端末上での実行が明らかとなり、Bさんの使用するソフトウェアは、不正にコピーされたものであることがわかる。
【0051】
なお、本実施例では、実行履歴を保管しておく必要がある。実行履歴の保管方法としては、ハードディスク上に署名付きファイルとして保管し、署名鍵をソフトウェアの耐タンパ領域で保管するあるいは、ソフトウェアの耐タンパ領域に実行履歴を保管することが考えられる。
【0052】
また、PC情報は、TPMが保管する鍵、あるいはマザーボードのIDなどに基づき生成することが考えられる。ここで、TPMは、暗号化や認証のための電子鍵を格納するストレージであるため、このセキュリティチップが保管する鍵から端末の情報を生成することにより、端末を一意に特定することができる。さらに、マザーボードは、PCを構成する最も本質的な機器であることから、端末を一意に特定することができる。
【0053】
以上、説明したように、第1の実施例によれば、不正検知情報として、出力情報に電子透かしとして実行履歴を埋め込むため、この実行履歴という単一の出力情報から不正コピーの有無を判断できる。そのため、低コストで不正コピーの有無の検知を行うことができる。
【0054】
<第2の実施例>
図7および図8を用いて、本発明の第2の実施例について説明する。
【0055】
本実施例に係るソフトウェアの不正コピー検知システムは、第1の実施形態と同様の構成であるが、情報出力装置100の出力情報生成部11がソフトウェアを用いて生成した出力情報に付加する不正検知情報に特徴がある。そのため、図7に示すように、付加する不正検知情報を格納する不正検知情報格納部15が設けられている。
【0056】
具体的には、本実施例では、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別のID を埋め込む。ここで、ID
は、ソフトウェア毎に異なり、各利用者に紐付けられている。したがって、ある利用者が公開したコンテンツ(出力情報)から抽出されたID が、他の利用者に紐付けられていた場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【0057】
これを図8を用いて説明すると、例えば、Bさんが正規にソフトウェアを購入している場合には、図8(a)に示すようになる。つまり、正規にソフトウェアを購入しているAさんの出力情報からは、「A」というAさんに紐つけられたIDが抽出される。これにより、Aさんの使用したソフトウェアは、正規に購入されたものであることがわかる。同様に、Bさんの出力情報からも「B」というBさんに紐つけられたIDが抽出される。これにより、Bさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【0058】
一方、BさんがAさんから譲り受けた不正にコピーしたソフトウェアを使用している場合には、図8(b)に示すようになる。つまり、正規にソフトウェアを購入しているAさんの出力情報からは、「A」というAさんに紐つけられたIDが抽出される。これは、図8(a)の場合と同様である。
【0059】
ところが、Bさんの出力情報からは、本来、「B」というBさんに紐つけられたIDが抽出されるべきであるのに、「A」というAさんに紐つけられたIDが抽出される。これにより、異なる端末上での実行が明らかとなり、Bさんの使用するソフトウェアは、不正にコピーされたものであることがわかる。
【0060】
以上、説明したように、第2の実施例によれば、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別の利用者に紐付けられたID
を埋め込むため、この利用者に紐付けられたソフトウェア個別のIDという単一の出力情報から不正コピーの有無を判断することができる。また、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別の利用者に紐付けられたID
を用いることから、安全性が高いという特徴がある。
【0061】
<第3の実施例>
図9および図10を用いて、本発明の第2の実施例について説明する。
【0062】
本実施例に係るソフトウェアの不正コピー検知システムは、第1の実施形態と同様の構成であるが、情報出力装置100の出力情報生成部11がソフトウェアを用いて生成した出力情報に付加する不正検知情報に特徴がある。そのため、図9に示すように、付加する不正検知情報を格納する不正検知情報格納部16が設けられている。
【0063】
具体的には、本実施例では、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別のID、および実行されたPC
のPC 情報の組を埋め込む。したがって、利用者が公開したコンテンツ(出力情報)のうち、ID が同一で、PC 情報が異なるものが見つかった場合は、当該ソフトウェアが不正にコピーされたと検知できる。
【0064】
これを図10を用いて説明すると、例えば、Bさんが正規にソフトウェアを購入している場合には、図10(a)に示すようになる。つまり、正規にソフトウェアを購入しているAさんの出力情報からは、「A」というAさんに紐つけられたIDと「PC」という実行されたPCの情報が抽出される。これにより、Aさんの使用したソフトウェアは、正規に購入されたものであることがわかる。同様に、Bさんの出力情報からも「B」というBさんに紐つけられたIDと「PC」という実行されたPCの情報が抽出される。これにより、Bさんの使用したソフトウェアは、正規に購入されたものであることがわかる。
【0065】
一方、BさんがAさんから譲り受けた不正にコピーしたソフトウェアを使用している場合には、図10(b)に示すようになる。つまり、正規にソフトウェアを購入しているAさんの出力情報からは、「A」というAさんに紐つけられたIDと「PC」という実行されたPCの情報が抽出される。これは、図10(a)の場合と同様である。
【0066】
ところが、Bさんの出力情報からは、本来、「B」というBさんに紐つけられたIDが抽出されるべきであるのに、「A」というAさんに紐つけられたIDと「PC」という実行されたPCの情報が抽出される。これにより、異なる端末上での実行が明らかとなり、Bさんの使用するソフトウェアは、不正にコピーされたものであることがわかる。
【0067】
以上、説明したように、第3の実施例によれば、不正検知情報として、出力情報に電子透かしとしてソフトウェア個別のID、および実行されたPC
のPC 情報の組を埋め込むことから、第1および第2の実施例よりも安全性が高く、しかも、低コストで不正コピーの有無の検知を行うことができるという特徴がある。
【0068】
<応用例>
上記、第1の実施形態、第1、第2、第3の実施例において、不正検知情報を電子透かしで出力情報に埋め込む様々な形態について説明したが、例えば、第1、第2、第3の実施例において説明した情報の透かしの安全性を高めるために、そのまま透かしとして埋め込むのではなく、暗号化した情報を出力情報に埋め込むことが望ましい。
【0069】
具体的には、第1、第2、第3の実施例において説明した透かし情報を検証者の公開鍵で暗号化する方法が考えられる。これにより、透かし情報の改ざんが検知でき、また、仮に、透かし情報が改ざんされた場合でも、秘密鍵による復号が正しく行えないため、透かしに含まれる利用者名・PC情報などプライバシーに関する情報を秘匿できる。
【0070】
なお、本発明のソフトウェアの不正コピー検知システムを構成する情報出力装置および出力情報検証装置の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを情報出力装置および出力情報検証装置に読み込ませ、実行することによって本発明のソフトウェアの不正コピー検知システムを実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。
【0071】
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0072】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0073】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【0074】
【図1】第1の実施形態に係るシステムの構成図である。
【図2】第1の実施形態に係る情報出力装置の構成図である。
【図3】第1の実施形態に係る出力情報検証装置の構成図である。
【図4】第1の実施形態に係るシステムの処理フローである。
【図5】第1の実施例に係る情報出力装置の構成図である。
【図6】第1の実施例を具体的に説明するための図である。
【図7】第2の実施例に係る情報出力装置の構成図である。
【図8】第2の実施例を具体的に説明するための図である。
【図9】第3の実施例に係る情報出力装置の構成図である。
【図10】第3の実施例を具体的に説明するための図である。
【符号の説明】
【0075】
11・・・出力情報生成部
12・・・不正検知情報付加部
13・・・情報出力部
14、15、16・・・不正検知情報格納部
21・・・出力情報入力部
22・・・不正検知情報抽出部
23・・・不正コピー判断部
100・・・情報出力装置
200・・・出力情報検証装置

【特許請求の範囲】
【請求項1】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムであって、
前記情報出力装置が、
前記ソフトウェアを用いた出力情報を生成する生成手段と、
該生成した出力情報に不正検知情報を埋め込む不正検知情報付加手段と、
該不正検知情報を埋め込んだ出力情報を出力する出力手段と、
を備え、
前記出力情報検証装置が、
前記情報出力装置からの出力情報から不正検知情報を抽出する不正検知情報抽出手段と、
該抽出した不正検知情報からソフトウェアの不正コピーの有無を判断する不正コピー判断手段と、
を備えたことを特徴とするソフトウェアの不正コピー検知システム。
【請求項2】
前記不正検知情報が、前記ソフトウェアの実行日時と実行された端末の情報であることを特徴とする請求項1に記載のソフトウェアの不正コピー検知システム。
【請求項3】
前記情報出力装置が、さらに、
前記ソフトウェアの実行日時と実行された端末の情報とを署名付きファイルで保管する第1の保管手段と、
署名鍵を前記ソフトウェアの耐タンパ領域で保管する第2の保管手段と、
を備えたことを特徴とする請求項2に記載のソフトウェアの不正コピー検知システム。
【請求項4】
前記情報出力装置が、さらに、
前記ソフトウェアの実行日時と実行された端末の情報とを前記ソフトウェアの耐タンパ領域で保管する第3の保管手段を備えたことを特徴とする請求項2に記載のソフトウェアの不正コピー検知システム。
【請求項5】
前記不正検知情報が、利用者に紐付けられた個別のID情報であることを特徴とする請求項1に記載のソフトウェアの不正コピー検知システム。
【請求項6】
前記不正検知情報が、利用者に紐付けられた個別のID情報と実行された端末の情報とからなることを特徴とする請求項1に記載のソフトウェアの不正コピー検知システム。
【請求項7】
前記情報出力装置が、さらに、
前記不正検知情報を検証者の公開鍵で暗号化する暗号化手段をさらに備えたことを特徴とする請求項1、請求項2、請求項5、請求項6に記載のソフトウェアの不正コピー検知システム。
【請求項8】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法であって、
前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第1のステップと、
前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第2のステップと、
前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第3のステップと、
前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第4のステップと、
前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第5のステップと、
を備えたことを特徴とするソフトウェアの不正コピー検知方法。
【請求項9】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムであって、
前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第1のステップと、
前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第2のステップと、
前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第3のステップと、
前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第4のステップと、
前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第5のステップと、
をコンピュータに実行させるためのプログラム。
【請求項10】
ソフトウェアを用いて、情報を出力する情報出力装置と該情報出力装置から出力される情報を検証して、ソフトウェアの不正コピーの有無を判断する出力情報検証装置とからなるソフトウェアの不正コピー検知システムにおけるソフトウェアの不正コピー検知方法をコンピュータに、実行させるためのプログラムを格納したプログラム記録媒体であって、
前記情報出力装置が、ソフトウェアを用いた出力情報を生成する第1のステップと、
前記情報出力装置が、該生成した出力情報に不正検知情報を埋め込む第2のステップと、
前記情報出力装置が、該不正検知情報を埋め込んだ出力情報を出力する第3のステップと、
前記出力情報検証装置が、該出力情報から埋め込まれた不正検知情報を抽出する第4のステップと、
前記出力情報検証装置が、該抽出した不正検知情報に基づいて、不正コピーの有無を検知する第5のステップと、
をコンピュータに実行させるためのプログラムを格納したプログラム記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate